Skip to content

pause

Runs at once EXEC mode Open to every client

Pause the running program: brake along its path and hold. The arm brakes along its planned path, at the same limits as stop(), and holds there in EXEC mode. Nothing is cancelled: moves queued later wait too, and resume() continues from exactly this point. Entering or leaving EXEC mode, or stop(), ends the pause. While a stop is braking, the robot ignores a pause.

Every client can pause a program; only the client that holds control can resume it.

Syntax

robot.pause(wait=None)

Arguments

Name Type Default Description
wait bool | None None Wait until the robot reports the program paused, up to 10 s: its planned motion has come to rest. None follows the client's sync setting.

Returns

Nothing.

Examples

robot.move_joints(90, -105, 165, 0, -30, 180)
robot.pause(wait=True)
robot.resume()
robot.wait_idle()
Usage restrictions 2 codes

This command runs at once; it is not queued. The robot accepts it only when it is in EXEC mode, from every client.

It answers with one of these codes when it does not carry the command out:

  • [6010] Command not allowed now — the message names the mode or state it needs
  • [6025] RTI not running or not answering — rTI did not answer within 1 s: it is not running or not responding. The command may still have taken effect

In Python, a code above raises CommandRejected; its number is the code. The call raises:

  • CommandRejected: The robot is not in EXEC mode. Or RTI refused it or did not answer within 1 s (Errors:).
  • RobotTimeout: The robot did not answer within 5 s, or, with wait, did not report the program paused within 10 s.
  • RobotConnectionError: The client is not connected.

If the connection drops while the call waits for the robot's answer, it raises CommandRejected with the code CONNECTION_LOST (DISCONNECTED after disconnect()); while it waits for the robot's status, RobotConnectionError.

Like every immediate command, it also answers BAD_ARGS when a raw client sends a value the robot cannot read at all, and INTERNAL when it fails inside the robot.

Protocol

A client that does not use robotclient sends this over the TCP command protocol (port 29000) for the example above:

{"id": "c1", "cmd": "pause", "args": []}

See also