- The straight line is held at the point where the fingers close, 145 mm past the gripper mount. The tip doesn’t swing in an arc when the wrist turns.
- Each move starts and stops smoothly, with no jolt.
- The whole path is planned before the arms move. If a waypoint can’t be reached in a straight line, you find out while the robot is still.
- An arm you didn’t move holds still. An arm resting in gravity compensation drifts a millimetre or two between recordings. Below
--min_traveland--min_rotation, playback keeps that arm in place instead of chasing the drift.
--axol.left_stiffness and --axol.right_stiffness. A stiffer arm follows the path more closely. A softer one sags a little, but shakes less when bumped and gives way if the path meets an obstacle. Stiffness doesn’t affect hand-guiding.
This command is configured through draccus (see Command configuration). Arm gains and stiffness are on the nested axol config, and IK weights are on kinematics. They are the same fields as teleop’s Robot and Kinematics parameters, with the same --axol. and --kinematics. prefixes. The command’s own flags are listed below.
Driving a session
On the terminal, single keys on stdin:
The same actions are buttons in the control panel, so you can teach and replay a path without a terminal.
Grasping
A gripper is either open or closed. Press[ for the left gripper and ] for the right, so one arm can carry something while you guide the other. Both start open. Each waypoint stores the state both grippers are in when you record it:
torque_limit, the same setting every operation uses, and you can set it in the control panel. A closed waypoint always commands fully closed, not the point where the fingers stopped on the object, so the gripper keeps squeezing. Set the torque to suit the object.
Flags
Choosing a speed
At the default speed the gripper peaks at about 0.47 m/s mid-move. Lines stay straight at any speed. Acceleration grows with the square of the speed: about 2 m/s² at the default, 8 at--speed 0.5 and 16 at --speed 0.7. Above that, each move takes a fraction of a second and the pause at each waypoint takes most of the cycle.
Lowering --speed alone doesn’t slow a move that is mostly turning, because --ang_speed may set its pace. --speed_scale (the Speed scale slider in the control panel) slows both, and the moves to the first waypoint and back to rest. Use it to try a new path slowly.
The waypoint file
Waypoints are stored as the joint angles the arms reported, so a path is exact. You can edit the file or check it into a repository:SHOULDER_1 to WRIST_3, 0 = rest), then the gripper opening from 0 to 1. The joint angles are what the arm reported. The gripper value is the opening to command, such as 0.0 for a grasp, not where the fingers stopped. The gripper poses for planning are computed from the joint angles.
Playback starts with a collision-aware move to the first waypoint. When the path finishes or is stopped, the arms park at the rest pose. If you quit while teaching, the arms don’t park, since your hands are on them.
