ROS2:
rm_moveit2控制示例功能包说明 rm_moveit2 是睿尔曼机械臂的 MoveIt2 控制示例功能包,目前提供 ECO63、RM75 和 RX75 双臂运动规划示例的启动入口。
这里将从以下两个方面整体介绍该功能包:
- 1.功能包使用:了解该功能包的使用方法。
- 2.功能包架构说明:熟悉功能包中的文件结构和功能。
1. rm_moveit2使用
1.1 基础功能包使用
运行 rm_moveit2 之前,需要先启动对应的 rm_driver、rm_description、rm_control 以及 MoveIt 配置功能包节点。
提醒
- 对于 ECO63 和 RM75,可通过对应的
rm_<arm_type>_config功能包启动 MoveIt 环境; - 如需启动其它机械臂的 MoveIt,可通过更改 launch 文件中的 moveit_config 参数实现。
- 启动机械臂示例前,需先启动对应的 MoveIt 环境,命令为
ros2 launch rm_<arm_type>_config demo_*.launch.py;
启动 ECO63 示例的命令为:
ros2 launch rm_moveit2 moveit_eco63.launch.py启动 RM75 示例的命令为:
ros2 launch rm_moveit2 moveit_rm75.launch.py启动 RX75 双臂示例的命令为:
ros2 launch rm_moveit2 moveit_rx75.launch.py
1.2 高级功能包使用
rm_moveit2 的通用参数在 launch 文件中配置。
| 参数 | 说明 |
|---|---|
planning_group | MoveIt 使用的规划组。 - ECO63 和 RM75 默认值为 rm_group; - RX75 默认值为 right_arm(可根据选择的臂侧将planning_group 设置为 left_arm 或 right_arm)。 |
current_state_wait_sec | 读取当前状态的等待时间。 |
velocity_scaling | 运动速度缩放系数。 |
acceleration_scaling | 运动加速度缩放系数。 |
planning_time | MoveIt 规划时间。 |
home_named_target | 运动到初始姿态时使用的命名目标。 |
enable_pose_target | 是否直接规划到 pose_target_csv 给定的位姿目标。 |
pose_target_csv | x,y,z,rx,ry,rz 格式的位姿目标。 |
pose_reference_frame | 位姿目标使用的参考坐标系。 |
prefer_named_start | 该参数仅用于 RX75 双臂 launch 文件,用于控制是否优先采用 SRDF/MoveIt 中配置好的命名起始姿态。 |
enable_cartesian_demo | 该参数仅用于RX75 双臂 launch 文件,用于控制是否执行笛卡尔示例。 |
2. rm_moveit2功能包架构说明
2.1 功能包文件概览
当前 rm_moveit2 功能包由以下文件组成。
├── CMakeLists.txt
├── launch
│ ├── moveit_eco63.launch.py # ECO63 启动文件
│ ├── moveit_rm75.launch.py # RM75 启动文件
│ └── moveit_rx75.launch.py # RX75 双臂启动文件
├── package.xml
├── README_CN.md
├── README.md
└── src
├── linear_motion_node.cpp # MoveIt 运动辅助文件
└── simple_moveit_node.cpp # 主节点文件
