APIs, concepts, guides, and more

◆ MoveSCurve()

void MoveSCurve ( const double *const position,
const double *const vel,
const double *const accel,
const double *const decel,
const double *const jerkPct )
Description:
MoveSCurve calls a point-to-point S-Curve velocity profile move.
Parameters
*positionArray of target positions (in UserUnits for each Axis).
*velArray of velocities (UserUnits).
*accelArray of accelerations (UserUnits).
*decelArray of decelerations (UserUnits).
*jerkPctArray of jerk percents, which defines the percentage of acceleration time which is smoothed, 0.0 to 100.0
Note
Non-Blocking Execution Motion commands return instantly and do not pause code execution. Use MotionDoneWait() post-call to block execution until motion completes, or MotionDoneGet() to poll for completion.
Sample Code:
// Assume 2 axes.
double positions[2] = {1000.0, 2000.0};
double velocities[2] = {1000.0, 1000.0};
double accels[2] = {10000.0, 10000.0};
double decels[2] = {10000.0, 10000.0};
double jerkPcts[2] = {50.0, 25.0};
multiAxis->MoveSCurve(positions, velocities, accels, decels, jerkPcts);
See also
MotionAttributeMaskGet
Examples
MultiAxisMotion.cs, and MultiaxisMotion.cpp.