APIs, concepts, guides, and more
Stopping Rates

Define the rate at which motors or axes stop in response to STOP or ESTOP commands, with adjustable time frames and deceleration rates to suit application needs.

🔹 What are Stopping Rates?

Stopping rates dictate how quickly your motor/axis stops spinning when a STOP or ESTOP command is issued.

Warning
The stopping time that is used will be from the object (Axis or MultiAxis) that started the active motion, NOT the object that commanded the stop.
For example:
If a MultiAxis motion is in progress, the stopping time will be determined by StopTimeSet() and the individual StopTimeSet() values will be ignored.

🔹 Stopping Rates

When a STOP or ESTOP command is issued, the motion controller will slow the axis to stop in the given time frame. This time frame can be adjusted to fit the needs of your application. You can change the STOP and ESTOP time through RapidCode (shown in the sample application below) or under the “Settling Criteria” tab in RapidSetup (shown directly below).

Image

🔹 Deceleration Rates

When a RSIAction "MODIFY" (RSIActionE_STOP_MODIFY_ABORT, RSIActionE_STOP_MODIFY, RSIActionTRIGGERED_MODIFY) the motion controller will slow the axis to a stop with a specified deceleration rate and percent jerk. You can change the EStopDecelerationSet(), TriggeredModifyDecelerationSet(), EStopJerkPercentSet(), and TriggeredModifyJerkPercentSet() through RapidCode.

RapidSetup Stopping Settings

📜 Sample Code

  • C#

    // Constants
    const double STOP_RATE_DEFAULT = 1.0; // Specify the default STOP rate in seconds.
    const double ESTOP_RATE_DEFAULT = 0.05; // Specify the default ESTOP rate in seconds.
    const double ESTOP_DECELERATION_RATE = 1000; // Specify the default ESTOP deceleration rate in seconds.
    // SET
    axis.StopTimeSet(STOP_RATE_DEFAULT); // Set the default STOP time to STOP_RATE_DEFAULT secs.
    axis.EStopTimeSet(ESTOP_RATE_DEFAULT); // Set the default ESTOP time to ESTOP_RATE_DEFAULT secs.
    axis.EStopDecelerationSet(ESTOP_DECELERATION_RATE); // Set the default ESTOP time to ESTOP_DECELERATION_RATE secs.

  • C++

    // Parameters
    const double STOP_RATE_DEFAULT = 1.0; // Specify the default STOP rate in seconds.
    const double ESTOP_RATE_DEFAULT = 0.05; // Specify the default ESTOP rate in seconds.
    const double ESTOP_DECELERATION_RATE = 1000; // Specify the default ESTOP deceleration rate in seconds.
    // SET
    axis->StopTimeSet(STOP_RATE_DEFAULT);
    axis->EStopTimeSet(ESTOP_RATE_DEFAULT);
    axis->EStopDecelerationSet(ESTOP_DECELERATION_RATE);
    // GET
    double stopRate = axis->StopTimeGet();
    double eStopRate = axis->EStopTimeGet();
    double eStopDeceleration = axis->EStopDecelerationGet();