Part III: Running a trained policy · §34 of 43

Do these every time, in order. The first run has extra steps (§35).

  1. Base clamped, area clear, a person at the motor power switch. A policy can do anything the arm can do, including things it never did in training.
  2. Nothing else owns the buses: no safe_teleop.py, lerobot-teleoperate, lerobot-record or ROS launch running (§25). Quick check: candump -n 20 -T 500 can0 and … can1 print nothing.
  3. bash ~/Documents/openarm_lerobot/setup_openarm_lerobot.sh: CAN up, 16/16 motors answer, follower calibration files present. A motor that doesn’t answer reads as 0° in LeRobot (§26 item 6), and that would also corrupt the stored “initial position”.
  4. Scene as in training: cameras plugged in, at the same positions and angles, same lighting, the objects in a typical start position.
  5. Arms at the training start pose (§31.3), torque off. Check with the follower columns of python ~/Documents/openarm_lerobot/compare_mini_follower.py --once.
  6. Command checked: --robot.id=my_bimanual_follower, can0 = left / can1 = right, both sides, max_relative_target set, the same --robot.cameras as recording, --duration set, --display_data=false.
  7. Hands and heads out of the workspace. Run.