APIs, concepts, guides, and more
|
void MovePVT | ( | const double *const | position, |
const double *const | velocity, | ||
const double *const | time, | ||
int32_t | pointCount, | ||
int32_t | emptyCount, | ||
bool | retain, | ||
bool | final ) |
*position | Array of positions (p) to move through. (positions are in the UserUnits for each Axis) Axis: [p0, p1, p2, ..., pn] MultiAxis, assuming the Axis mapping is J0, J1, J2: [J0p0, J1p0, J2p0, ..., J0pn, J1pn, J2pn] |
*velocity | Array of velocities (v). (velocities are in UserUnits/second for each Axis) Axis: [v0, v1, v2, ..., vn] MultiAxis, assuming the Axis mapping is J0, J1, J2: [J0v0, J1v0, J2v0, ..., J0vn, J1vn, J2vn] |
*time | Array of time durations for each point in seconds. Minimum value is your MotionController sample period. Values must be a multiple of the sample period. If each point should take one millisecond, your array would be: [0.001, 0.001, 0.001, etc.] |
pointCount | The number of position/time points. |
emptyCount | The number of motion frames (2 per point) that must be in the RMP firmware's buffer, below which triggers an OUT_OF_FRAMES E-Stop action. The RapidCode library will load frames to the RMP firmware automatically, when the buffer gets low (1/4 of the MotionController::AxisFrameBufferSizeSet() value). Set emptyCount high enough such that the duration of frames (2 per point) are greater than the value of EStopTimeGet/Set(). emptyCount must also be smaller than 20% of the MotionController::AxisFrameBufferSizeSet() value. Using a value of 0 or -1 will result in undefined motion behavior if the firmware frame buffer is starved. |
retain | Points kept, or not kept (must be True if you attempt a negative feedrate to back up on path). |
final | True if this is the final streaming motion call, False if more streaming motion calls will occur before this call's points are finishes. |
Part of the Streaming Motion method group.