Skip to content

Motion commands

The moves a program queues: to joint angles or a pose, along straight lines, arcs, circles and smooth curves, and a timed pause between them.

All motion commands:

  • Are queued. A call returns once the robot has accepted the move, and the robot runs the moves in the order they were sent. Call robot.wait_idle() to wait until they have finished.
  • Need EXEC mode. Every move also needs the robot enabled and homed; a pause only needs EXEC mode.
  • Take per-move settings as keyword arguments, such as speed, profile or blend. They apply to that one move. Every setting is on the Per-move settings page.

Positions are in metres. Pose angles are in radians, or degrees with angle_unit="deg". Joint angles are in degrees.

Command What it does Runs
move_joints Move every joint to a target angle, in joint space. Queued
move_pose Move the tool to a pose, with the joints moving in joint space. Queued
move_linear Move the tool in a straight line to a pose. Queued
move_linear_rel_world Move the tool in a straight line by an offset along the base axes. Queued
move_linear_rel_tool Move the tool in a straight line by an offset along its own axes. Queued
move_arc Move the tool along a circular arc through a via pose to an end pose. Queued
move_arc_rel_world Move the tool along a circular arc given by offsets along the base axes. Queued
move_arc_rel_tool Move the tool along a circular arc given by offsets along its own axes. Queued
move_circle Move the tool around a circle about a centre point. Queued
move_circle_rel_world Move the tool around a circle given relative to the base axes. Queued
move_circle_rel_tool Move the tool around a circle given relative to its own axes. Queued
move_spline Move the tool along a smooth curve through a list of poses. Queued
move_spline_rel_world Move the tool along a smooth curve through offsets along the base axes. Queued
move_spline_rel_tool Move the tool along a smooth curve through offsets along its own axes. Queued
delay Wait a given time between two queued moves. Queued

The relative moves end in _world or _tool, for the frame their offsets are measured in:

  • _world: along axes parallel to the robot's base frame.
  • _tool: along the tool's own axes, as they are when the move starts.

Other names

Some commands have a second name from earlier versions of the library. Both names do exactly the same, in a program and in a raw protocol message, and programs that use the second name keep working. New programs use the names on these pages.

Other name Same as
move_linear_rel_wrf move_linear_rel_world
move_arc_rel_wrf move_arc_rel_world
move_circle_rel_wrf move_circle_rel_world
move_spline_rel_wrf move_spline_rel_world
move_linear_rel_trf move_linear_rel_tool
move_arc_rel_trf move_arc_rel_tool
move_circle_rel_trf move_circle_rel_tool
move_spline_rel_trf move_spline_rel_tool

Found a mistake on this page? Edit it on GitHub · Report it · Get help