MotionController Axis MultiAxis IO IOPoint NetworkNode RsiError
Sample Apps Changelog

RapidCode API

◆ MovePT()

void MovePT ( RSIMotionType  type,
double *  position,
double *  time,
int32  pointCount,
int32  emptyCount,
bool  retain,
bool  final 
)
pure virtual

A move commanded by a list of position and time points.

Description:
MovePT fits constant velocity profile segments through the points.
Parameters
typeThe Position/Time motion type (Spline, BSpline, etc)
*positionArray of positions.
*timeArray of times (seconds).
pointCountThe number of points.
emptyCountE-stop generated if there are this number or fewer frames loaded. Use the value “0” to trigger an E-stop when the buffer is empty, or “-1” to not trigger an E-stop. (Typically for PT motion there are two frames per PT point)
retainPoints kept, or not kept.
finalIf True, this is the final point. If False, more points expected.
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->MovePT(position, time, POINTS, -1, false, false);
See also
PVT, DifferentMotionTypes, MoveSCurve, MoveTrapezoidal, MovePVT
 
Examples
PTmotion.cpp, PTmotion.cs, PTmotionWhileStopping.cpp, PTmotionWhileStopping.cs, SingleAxisSyncOutputs.cpp, SingleAxisSyncOutputs.cs, SyncOutputWithMotion.cpp, and UpdateBufferPoints.cpp.