You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Readme.md 1.5 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. ## SO101 Arm Control
  2. This example provides gamepad control and leader-follower functionality for the SO-101 robotic arm.
  3. ### Install Dependencies
  4. install the required Python packages for rerun visualization (optional):
  5. ```bash
  6. # Install the URDF loader for Rerun visualization
  7. pip install git+https://github.com/dora-rs/rerun-loader-python-urdf
  8. ```
  9. ### Hardware Setup
  10. 1. Connect your SO-101 arm(s) to your computer via USB/serial
  11. 2. Note the serial port names (e.g.,for linux `/dev/ttyACM0`, `/dev/ttyACM1`)
  12. 3. Connect your gamepad controller
  13. 4. Update the `PORT` environment variable in the YAML files
  14. #### Single Arm Control (arm_gamepad_control.yml)
  15. Control a single SO-101 arm with gamepad input and visualization:
  16. ```bash
  17. dora build arm.yml
  18. dora run arm.yml
  19. ```
  20. #### Leader-Follower Mode (leader_follower.yml)
  21. Use one arm as a leader to control another follower arm:
  22. ```bash
  23. dora build leader.yml
  24. dora run leader.yml
  25. ```
  26. #### Serial Port Configuration
  27. Update the `PORT` environment variable in the YAML files:
  28. ```yaml
  29. env:
  30. PORT: /dev/ttyACM0 # Change to your actual port
  31. ```
  32. ## Troubleshooting
  33. ### Serial Connection Issues
  34. - Check that the arm is powered on and connected
  35. - Verify the correct serial port in the YAML configuration
  36. - Ensure proper permissions: `sudo chmod +x PORT`
  37. ### Gamepad Not Detected
  38. - Verify gamepad is connected and recognized by the system
  39. - Test with `jstest /dev/input/js0` (Linux)
  40. ## Safety Notes
  41. - Always ensure the arm has sufficient clearance before operation