![]() |
RobWorkProject
23.9.11-
|
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... | |
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.
SyncVelocityRamp | ( | rw::models::Device * | device | ) |
Constructs a ramp generator a device.
device | [in] Device to construct ramp for |
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
vellimits | [in] Velocity limits |
acclimits | [in] Acceleration limits |
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.
t | [in] time |
double duration | ( | ) |
Returns the time it takes to run the profile.
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.
t | [in] time |
rw::math::Q getExtremumAccelerations | ( | ) |
Returns the extremum of the acceleration for the joints.
rw::math::Q getExtremumVelocities | ( | ) |
Returns the extremum of the velocities for the joints.
void setTarget | ( | const rw::math::Q & | qstart, |
const rw::math::Q & | qend | ||
) |
Specifies from and to where a ramp should be generated.
qstart | [in] The start configuration |
qend | [in] The end configuration |
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.
t | [in] time |