robot_arm_urdf/config/
內的控制參數檔案列表與說明
在 robot_arm_urdf/config/
目錄中,包含以下兩個機械臂控制相關的 YAML 設定檔案:
joint_names_robot_arm_urdf.yaml
- 這個檔案可能包含機械臂的關節名稱清單,這些名稱對應 URDF 檔案中定義的關節。
- 通常這種檔案用於控制器、運動規劃(MoveIt!)、或是 ROS 控制介面,以確保指令正確對應到機械臂的各個關節。
joint_trajectory_controller.yaml
- 這個檔案應該定義了 Joint Trajectory Controller(關節軌跡控制器) 的參數,負責機械臂的關節運動控制。
- 可能包含:
- 關節名稱(與
joint_names_robot_arm_urdf.yaml
相關) - PID 控制參數(用於精確控制每個關節的移動)
- 更新頻率(frequency)
- 控制模式(position, velocity, 或 effort control)
- 關節名稱(與
分析 joint_names_robot_arm_urdf.yaml
與 joint_trajectory_controller.yaml
內容
這兩個 YAML 檔案主要負責機械臂的 關節名稱 與 軌跡控制器設定,讓 ROS 可以正確管理機械臂的運動控制。
1. joint_names_robot_arm_urdf.yaml
內容:
yamlcontroller_joint_names:
- ''
- joint_1
- joint_2
- joint_3
- joint_4
- joint_5
- joint_6
- joint_7
解釋
- 這個檔案定義了控制器所需的 關節名稱 (
controller_joint_names
)。 - 這些名稱應該與機械臂的 URDF 檔案 中的關節名稱一致。
- 第一個名稱
''
可能是空值(可能是格式問題)。 - 其餘的
joint_1
~joint_7
代表機械臂的各個關節。
2. joint_trajectory_controller.yaml
內容:
yamlrobot_arm_controller:
type: position_controllers/JointTrajectoryController
joints:
- joint_1
- joint_2
- joint_3
- joint_4
- joint_5
hand_ee_controller:
type: position_controllers/JointTrajectoryController
joints:
- joint_6
- joint_7
joint_state_controller:
type: joint_state_controller/JointStateController
publish_rate: 50
解釋
這個檔案負責定義 關節軌跡控制器 (Joint Trajectory Controller),包含:
robot_arm_controller
(機械臂控制器)- 控制
joint_1
到joint_5
。 - 使用
position_controllers/JointTrajectoryController
,表示這個控制器透過 關節位置 進行控制。
- 控制
hand_ee_controller
(手部或末端執行器控制器)- 控制
joint_6
和joint_7
,應該與夾爪或其他末端工具有關。 - 也使用 位置控制 (
position_controllers/JointTrajectoryController
)。
- 控制
joint_state_controller
(關節狀態控制器)- 監測並發布機械臂的關節狀態資訊(位置、速度、力矩)。
publish_rate: 50
表示這個控制器 每秒發布 50 次 關節狀態資訊。
總結
檔案名稱 | 功能 | 主要參數 | 作用 |
---|---|---|---|
joint_names_robot_arm_urdf.yaml | 定義機械臂關節名稱 | controller_joint_names | 指定控制器應該控制哪些關節 |
joint_trajectory_controller.yaml | 設定關節軌跡控制器 | robot_arm_controller , hand_ee_controller , joint_state_controller | 負責關節軌跡運動與狀態發布 |
沒有留言:
張貼留言