常用ROS命令概述
ROS常用命令可以按照其使用场景分为ROSshell命令、ROS执行命令、ROS信息命令、ROS catkin命令与ROS功能包命令。虽然很难从一开始就很熟练地使用所有的命令,但是随着使用的次数增多,你会发现常用的几个ROS命令就大概18个左右,你也会用得更加得心应手。
参考链接: ros重要命令.
参考书籍:《ROS_Robot_Programming》作者:表允晳 赵汉哲 郑黎蝹 林泰勋
本文只供大家学习相关知识使用,不以任何商业盈利为目的,转载或分享请注明相关来源。如涉及到相关侵权,请联系我删除。
1 ROS shell命令
ROS shell命令又被称为rosbash。这使我们可以在ROS开发环境中使用Linux中常用的bash shell命令。主要使用前缀是ros且带有多种后缀的命令,例如cd、pd、d、ls、ed、cp和run。相关命令如下:
命令 |
重要度 |
命令释义 |
详细说明 |
参考模板 |
roscd |
★★★ |
ros+cd(changes directory) |
移动到指定的ROS功能包目录 |
roscd [功能包名称] |
rosls |
★☆☆ |
ros+ls(lists files) |
显示ROS功能包的文件和目录 |
rosls [功能包名称] |
rosed |
★☆☆ |
ros+ed(editor) |
编辑ROS功能包的文件 |
rosed [功能包名称] [文件名称] |
roscp |
★☆☆ |
ros+cp(copies files) |
复制ROS功能包的文件 |
— |
rospd |
☆☆☆ |
ros+pushd |
添加目录至ROS目录索引 |
— |
rosd |
☆☆☆ |
ros+directory |
显示ROS目录索引中的目录 |
— |
相对常见的为roscd、rosls和rosed命令。
说明:
ROS shell命令的使用环境
想要使用ROS shell命令,需要用以下命令安装rosbash,并且只能在设置了source /opt/ros/<ros distribution>/setup.bash的终端窗口中可以使用。可通过下面命令进行安装:
sudo apt-get install ros-<ros distribution>-rosbash
2 ROS 执行命令
ROS 执行命令管理ROS节点的运行。最重要的是,roscore被用作节点之间的名称服务器。执行命令是rosrun和roslaunch。rosrun运行一个节点,当运行多个节点或设置各种选项时使用roslaunch。rosclean是删除节点执行时记录的日志的命令。
命令 |
重要度 |
命令释义 |
详细说明 |
参考模板 |
roscore |
★★★ |
ros+core |
master(ROS名称服务) + rosout(日志记录) + parameter server(参数管理) |
roscore [选项] |
rosrun |
★★★ |
ros+run |
运行单个节点 |
rosrun [功能包名称] [节点名称] |
roslaunch |
★★★ |
ros+launch |
运行多个节点或设置运行选项 |
roslaunch [功能包名称] [launch文件名] |
rosclean |
★★☆ |
ros+clean |
检查或删除ROS日志文件 |
rosclean [选项] |
3 ROS 信息命令
ROS 信息命令ROS信息命令用于识别话题、服务、节点和参数等信息。尤其是rostopic、rosservice、rosnode和rosparam经常被使用,并且rosbag是ROS的主要特征之一,它具有记录数据和回放功能,大家一定要掌握。
命令 |
重要度 |
命令释义 |
详细说明 |
参考模板 |
rostopic |
★★★ |
ros+topic |
确认ROS话题信息 |
rostopic [选项]/[选项+话题/类型名称] 也可以通过pub指定话题发布消息 |
rosservice |
★★★ |
ros+service |
确认ROS服务信息 |
rosservice [选项]/[选项+服务/类型名称] 也可以通过call用输入的参数请求服务 |
rosnode |
★★★ |
ros+node |
确认ROS节点信息 |
rosnode [选项]/[选项+节点名称] |
rosparam |
★★★ |
ros+param(parameter) |
确认和修改ROS参数信息 |
rosparam [选项]/[选项+参数/文件名称] |
rosbag |
★★★ |
ros+bag |
记录和回放ROS消息 |
rosbag [选项]/[选项+文件名称] |
rosmsg |
★★☆ |
ros+msg |
显示ROS消息类型 |
rosmsg [选项]/[选项+消息/功能包名称] |
rossrv |
★★☆ |
ros+srv |
显示ROS服务类型 |
rossrv [选项]/[选项+服务/功能包名称] |
rosversion |
★☆☆ |
ros+version |
显示ROS功能包的版本信息 |
——— |
roswtf |
☆☆☆ |
ros+wtf |
检查ROS系统 |
——— |
4 ROS catkin命令
ROS catkin命令ROS的catkin命令用于使用catkin 构建系统来构建功能包。
命令 |
重要度 |
详细说明 |
参考模板 |
catkin_create_pkg |
★★★ |
自动生成功能包 |
catkin_create_pkg [功能包名称] [依赖性功能包1] [依赖性功能包2] … |
catkin_make |
★★★ |
基于catkin 构建系统的构建 |
catkin_make --[选项] |
catkin_eclipse |
★★☆ |
把用catkin 构建系统生成的功能包修改,使得可以在Eclipse 环境中使用 |
catkin_eclipse |
catkin_prepare_release |
★★☆ |
发布时用到的日志整理和版本标记 |
catkin_prepare_release |
catkin_generate_changelog |
★★☆ |
发布时生成或更新CHANGELOG.rst文件 |
catkin_generate_changelog |
catkin_init_workspace |
★★☆ |
初始化catkin 构建系统的工作目录 |
catkin_init_workspace |
catkin_find |
★☆☆ |
搜索catkin |
catkin_find [功能包名称] |
5 ROS 功能包命令
ROS 功能包命令用于操作ROS功能包,比如显示功能包信息、安装相关功能包等。
命令 |
重要度 |
命令释义 |
详细说明 |
参考模板 |
rospack |
★★★ |
ros+pack(age) |
显示与ROS功能包相关的信息 |
rospack [选项] [功能包名称] |
rosinstall |
★★☆ |
ros+install |
安装ROS附加功能包 |
—— |
rosdep |
★★☆ |
ros+dep(endencies) |
安装该功能包的依赖性文件 |
rosdep [选项] |
roslocate |
☆☆☆ |
ros+locate |
与ROS功能包信息有关的命令 |
roslocate [选项] [功能包名称] |
roscreate-pkg |
☆☆☆ |
ros+create-pkg |
自动生成ROS功能包 (用于旧的rosbuild系统) |
—— |
rosmake |
☆☆☆ |
ros+make |
构建ROS功能包(用于旧的rosbuild系统) |
—— |
更多精彩内容,可以关注我的个人微信公众号
也欢迎志同道合者互相交流学习,微信:Zhihua_Steven