RobWorkProject  23.9.11-
Public Member Functions | List of all members
SyncVelocityRamp Class Reference

Provides generation of synchronized velocity ramps for a device. More...

#include <SyncVelocityRamp.hpp>

Public Member Functions

 SyncVelocityRamp (rw::models::Device *device)
 Constructs a ramp generator a device. More...
 
 SyncVelocityRamp (const rw::math::Q &vellimits, const rw::math::Q &acclimits)
 Constructs a ramp generator with specified velocity and acceleration limits. More...
 
virtual ~SyncVelocityRamp ()
 Destructor.
 
void setTarget (const rw::math::Q &qstart, const rw::math::Q &qend)
 Specifies from and to where a ramp should be generated. More...
 
double duration ()
 Returns the time it takes to run the profile. More...
 
rw::math::Q getExtremumVelocities ()
 Returns the extremum of the velocities for the joints. More...
 
rw::math::Q getExtremumAccelerations ()
 Returns the extremum of the acceleration for the joints. More...
 
rw::math::Q x (double t)
 Returns the configuration for time t. More...
 
rw::math::Q dx (double t)
 Returns the velocities for time t. More...
 
rw::math::Q ddx (double t)
 Returns the accelerations for time t. More...
 

Detailed Description

Provides generation of synchronized velocity ramps for a device.

The synchronized velocity ramp calculates a profile for moving linearly between two configurations a quick as possible without violating the dynamic limitations specified.

Constructor & Destructor Documentation

◆ SyncVelocityRamp() [1/2]

Constructs a ramp generator a device.

Parameters
device[in] Device to construct ramp for

◆ SyncVelocityRamp() [2/2]

SyncVelocityRamp ( const rw::math::Q vellimits,
const rw::math::Q acclimits 
)

Constructs a ramp generator with specified velocity and acceleration limits.

The limits are assumed to be symmetric and specified with the positive bound

Parameters
vellimits[in] Velocity limits
acclimits[in] Acceleration limits

Member Function Documentation

◆ ddx()

rw::math::Q ddx ( double  t)

Returns the accelerations for time t.

If t<0 or t>duration() it returns accelerations corresponding to t=0 and t=duration(), respectively.

Parameters
t[in] time
Returns
Accelerations at time t

◆ duration()

double duration ( )

Returns the time it takes to run the profile.

Returns
The duration

◆ dx()

rw::math::Q dx ( double  t)

Returns the velocities for time t.

If t<0 or t>duration() it returns velocities corresponding to t=0 and t=duration(), respectively.

Parameters
t[in] time
Returns
Velocities at time t

◆ getExtremumAccelerations()

rw::math::Q getExtremumAccelerations ( )

Returns the extremum of the acceleration for the joints.

Returns
Joint extremum accelerations

◆ getExtremumVelocities()

rw::math::Q getExtremumVelocities ( )

Returns the extremum of the velocities for the joints.

Returns
Joint extremum velocities

◆ setTarget()

void setTarget ( const rw::math::Q qstart,
const rw::math::Q qend 
)

Specifies from and to where a ramp should be generated.

Parameters
qstart[in] The start configuration
qend[in] The end configuration

◆ x()

rw::math::Q x ( double  t)

Returns the configuration for time t.

If t<0 or t>duration() it returns the start and end configurations respectively.

Parameters
t[in] time
Returns
Configuration at time t

The documentation for this class was generated from the following file: