https://github.com/interpause/dai-pds-arm
https://github.com/interpause/dai-pds-arm
Last synced: 12 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/interpause/dai-pds-arm
- Owner: Interpause
- Created: 2025-04-08T02:07:41.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-03T04:14:43.000Z (about 1 year ago)
- Last Synced: 2025-05-16T02:13:35.243Z (about 1 year ago)
- Language: Python
- Size: 2.68 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Arm Control Stuff
There are three sets of arms: arm, arm2 and arm3. arm2 is the arm we are using.
arm is the old nested link design, arm3 is the last-ditch effort as light as possible
arm that we didn't use cause it still was not light enough.
## Adding New Arms
1. Install any Fusion to URDF exporter, I used:
2. Ensure that the Fusion CAD model is well-organized, namely:
- Base component of robot must be named base_link and anchored.
- All joints must be such that component 1 is the child component, and component 2 is the parent.
- No nested components.
3. Use the exporter to export the Fusion CAD model as URDF.
4. Put the URDF into a ROS2 package, conventionally called `{some_name}_description`.
5. Use Moveit's Setup Assistant to configure the arm:
6. Perform manual adjustment to joints as needed if the angular range is incorrect.
```sh
# Launch the setup assistant
ros2 launch moveit_setup_assistant setup_assistant.launch.py
# Check arm was configured correctly by moveit
ros2 launch arm_moveit_config demo.launch.py
```
## Controlling the Arm
Remember to replace the mock arm controller with the topic-based arm controller, see below for example:
Lauch the control software (Rviz):
```sh
ros2 launch arm_arduino_bridge ctrl.launch.py
```
## For Directly Setting Servo Values
```sh
ros2 run arm_arduino_bridge bridge
ros2 run arm_arduino_bridge direct
```