You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-38Lines changed: 5 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,6 @@
4
4
5
5
ROS 2 package providing a hardware interface for controlling [Dynamixel](https://www.dynamixel.com/) motors via the [ros2_control framework](https://github.com/ros-controls/ros2_control). This repository includes the **dynamixel_hardware_interface plugin** for seamless integration with ROS 2 control, along with the [dynamixel_interfaces](https://github.com/ROBOTIS-GIT/dynamixel_interfaces) package containing custom message definitions used by the interface
6
6
7
-
---
8
7
9
8
## 2. **Prerequisites**
10
9
@@ -25,7 +24,6 @@ This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is p
25
24
- USB2 Dynamixel or U2D2 adapter
26
25
- Proper power supply for Dynamixel motors
27
26
28
-
---
29
27
30
28
## **3. Installation**
31
29
@@ -50,7 +48,6 @@ This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is p
50
48
source~/${WORKSPACE}/install/setup.bash
51
49
```
52
50
53
-
---
54
51
55
52
## 4. Currently Used Packages
56
53
@@ -62,9 +59,6 @@ This project integrates with the following ROS 2 packages to provide extended fu
A ROS-based package tailored for the **Open Manipulator-Y**, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.
64
61
65
-
----
66
-
67
-
68
62
69
63
## 5. Configuration
70
64
@@ -85,8 +79,6 @@ These parameters define how the interface communicates with the Dynamixel motors
85
79
86
80
- **`error_timeout_sec`**: Timeout for communication errors.
87
81
88
-
------
89
-
90
82
#### **2. Hardware Configuration**
91
83
92
84
These parameters define the hardware setup:
@@ -97,8 +89,6 @@ These parameters define the hardware setup:
Joints define the control and state interfaces for robot movement:
@@ -124,22 +114,19 @@ Joints define the control and state interfaces for robot movement:
124
114
<state_interface name="effort"/>
125
115
```
126
116
127
-
---
128
117
129
-
### **4. GPIO Configuration**
118
+
#### **4. GPIO Configuration**
130
119
131
120
The GPIO tag is used to define the configuration of Dynamixel motors in a robotics system. It serves as a declarative structure to set up motor-specific parameters, command interfaces, and state monitoring capabilities. This allows seamless integration of Dynamixel hardware with software frameworks.
132
121
133
-
------
134
122
135
-
#### **Key Attributes**
123
+
##### **Key Attributes**
136
124
137
125
- **`name`**: A unique identifier for the motor configuration (e.g., `dxl1`).
138
126
- **`ID`**: The unique ID assigned to the motor in the Dynamixel network (e.g., `11`).
139
127
140
-
------
141
128
142
-
#### **Sub-Elements**
129
+
##### **Sub-Elements**
143
130
144
131
1. **`<param>`**: Specifies motor-specific settings. These parameters correspond to the properties of the Dynamixel motor, such as its type, control mode, or PID gain values.
145
132
@@ -161,9 +148,7 @@ The GPIO tag is used to define the configuration of Dynamixel motors in a roboti
161
148
<state_interface name="Present Current"/>
162
149
```
163
150
164
-
------
165
-
166
-
#### **Example GPIO Configuration**
151
+
##### **Example GPIO Configuration**
167
152
168
153
Below is an example of a fully defined GPIO configuration for a Dynamixel motor. This example demonstrates how to configure a motor with ID `11`, define command interfaces, monitor state data, and set additional parameters such as PID gains and drive mode.
169
154
@@ -182,9 +167,7 @@ Below is an example of a fully defined GPIO configuration for a Dynamixel motor.
182
167
</gpio>
183
168
```
184
169
185
-
------
186
-
187
-
#### **Dynamixel Control Table Reference**
170
+
##### **Dynamixel Control Table Reference**
188
171
189
172
The Dynamixel hardware interface uses control tables, defined in model-specific files such as `xm430_w350.model`, to configure and interact with the motor's internal settings. These control tables map hardware parameters to specific memory addresses and data types, enabling fine-grained control and monitoring.
190
173
@@ -210,7 +193,6 @@ These settings can be defined within the GPIO configuration or dynamically updat
210
193
This professional explanation highlights the flexibility and precision of the Dynamixel hardware interface, empowering developers to fully utilize their motor's capabilities within a structured framework. For further details, refer to the [official Dynamixel e-Manual](https://emanual.robotis.com/docs/en/dxl/x/xm430-w350/#control-table-of-eeprom-area).
211
194
212
195
213
-
214
196
## **6. Usage**
215
197
216
198
Ensure the parameters are configured correctly in your `ros2_control` YAML file or XML launch file.
@@ -227,8 +209,6 @@ Ensure the parameters are configured correctly in your `ros2_control` YAML file
227
209
</ros2_control>
228
210
```
229
211
230
-
------
231
-
232
212
#### Topic and Service Descriptions
233
213
234
214
##### 1. **dynamixel_state_pub_msg_name**
@@ -237,50 +217,37 @@ Ensure the parameters are configured correctly in your `ros2_control` YAML file
0 commit comments