ROS1&2常用命令对照
我在Ubuntu24.04上安装了ROS2 Jazzy,但由于现在存在大量由ROS1开发的机器人项目,学校课程和实验也都使用ROS1进行操作,因此我在Docker中安装了ROS1 Noetic来应对ROS1的需求。
本文将ROS1和ROS2的常用命令对照,方便快速切换使用ROS1和ROS2。
安装ROS 可以采用鱼香ROS(小鱼)的一键安装命令:
Bash | |
---|---|
注意
ROS1&2 命令支持Bash,Zsh,对Fish的适配很差,建议使用Bash。
一个bug
如果docker中的ROS环境中无法开启图形界面(报错是Qt相关的环境问题),只要在本地终端中运行sudo xhost +
命令,即可解决。
激活ROS环境
需要在终端中运行
为了方便,可以将上述命令写入.bashrc
文件中,以后打开终端就自动激活ROS环境。
启动ROS节点
示例:
查看系统结构
Bash | |
---|---|
查看当前话题
查看当前服务
如果要显示类型:
发布话题
限制发送一次:
按固定频率发送消息:
示例:
输出话题
调用服务
示例:
mimic输入输出重映射
在ROS2中,mimic
节点的输入输出话题名称和参数传递方式与ROS1不同,例如要对原本的输入输出 topic 做如下修改:
查看话题消息类型
查看消息接口说明
ROS2 将消息(msg)、服务(srv)和动作(action)统一归类为接口,因此相关命令从 rosmsg
改为 ros2 interface
。
录制运动过程
查看录制文件信息
播放录制文件
开启RViz可视化界面
创建/编译工具包
ROS1采用catkin,ROS2采用colcon。