MotionController Axis MultiAxis IO IOPoint NetworkNode RsiError
Sample Apps Changelog

RapidCode API

◆ MoveTrapezoidal() [2/3]

void MoveTrapezoidal ( double  position,
double  vel,
double  accel,
double  decel 
)
pure virtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Description:
MoveTrapezoidal commands a point-to-point motion with a trapezoidal velocity profile. This has a trapezoidal shape for the velocity with constant acceleration and deceleration phases.
Parameters
positionTarget Position in units.
velMaximum velocity, units/second.
accelMaximum accleration , units/second/second.
decelMaximum deceleration , units/second/second.
Note
In most cases, a servo motor has a feedback device mounted. Depending on feedback device resolution, one motor shaft rotation will produce fixed value of counts. Example: motor has a resolution of 8192 counts. This means if 8192 is entered as distance to move, motor will move single revolution. User can implement UserUnitsSet() to change to a different unit (ex: mm, inches, etc) from encoder counts.
Sample Code:
axis->MoveTrapezoidal(5000.0, 10000.0, 100000.0, 100000.0);
RapidSetup:
Go to Axis->Motion (default tab)
Axis_Motion_Profile_and_Parameters.jpg
Motion Scope:
Trapezoidal Move profile shown below:
Axis_Motion_Trapezoidal.jpg
See also
Different Motion Types, MoveSCurve, MoveRelative, MoveVelocity, MovePT, MovePVT