void MovePVAJT | ( | const double *const | position, |
const double *const | velocity, | ||
const double *const | acceleration, | ||
const double *const | jerk, | ||
const double *const | time, | ||
int32_t | pointCount, | ||
int32_t | emptyCount, | ||
bool | retain, | ||
bool | final ) |
Part of the Streaming Motion method group. Move using positions, velocities, accelerations, jerks and times.
*position | Array of positions (p) to move through. (positions are in the UserUnits for each Axis) |
*velocity | Array of velocities (v). (velocities are in UserUnits/second for each Axis) |
*acceleration | Array of accelerations (a). (accelerations are in UserUnits/second2 for each Axis) |
*jerk | Array of jerks (j). (jerks are in UserUnits/second3 for each Axis) |
*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. |