技术分享 | 12个基础ROS常用命令讲解
Posted 阿木实验室
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了技术分享 | 12个基础ROS常用命令讲解相关的知识,希望对你有一定的参考价值。
在上期内容中,我们讲解了ros的一些名词概念,本期,我们将讲解一些ROS当中一些常用的命令。
roscore:
启动ros主节点的命令,ros中所有节点启动的前提都是必须存在主节点。
rosrun:
启动ros节点的命令,使用方法为 rosrun 功能包名 可执行文件名;可执行文件名一般由两种途径产生,一种是cpp文件经编译后生成可执行文件(编译的cpp文件以及可执行文件名在功能包下的CMakeLists.txt文件中改写),另一种是编写的python文件名,但注意需要需要给文件添加可执行权限。
roslaunch:
启动launch文件的命令,使用方法为roslaunch 功能包名 launch文件名;和rosrun命令的使用方法是类似的,该命令也是启动ros节点。和rosrun的区别在于roslaunch可以启动多个节点,还可以设置参数变量、配置文件等内容,具体内容可以查阅launch文件编写的相关规则。
rostopic:
与ROS话题相关的指令,可查看所有话题列表,查看某个话题发布的数据,查看某个话题的消息,向某个话题发布数据等
rosmsg:
与ROS消息相关的指令,可查看所有消息列表,查看消息的数据类型,查看某个功能包内的自定义消息等。
rosservice:
与ROS服务相关的指令,可查看所有服务列表,查看服务的消息,调用某个服务等。
rossrv:
与ROS服务消息相关的指令,可查看所有消息列表,查看消息的数据类型,查看某个功能包内的自定义消息等。
rosnode:
与ROS节点相关的指令,可查看所有节点列表,查看某个节点运行的设备名,查看某个节点的信息,查看节点数据的延时,关闭某个节点等。
rosls:
查看本地位置下,某个功能包以及元功能包的内容。
roscd:
进入都某个功能包的文件夹位置,这个命令虽然是用于进入某个某个功能包的文件夹位置,但常常我们是利用这个命令做其他的用途,一是利用该命令检测系统是否能找到我们想要使用的功能包,如果我们使用该命令找到目标功能包位置,说明系统能够正常识别到,如果找不到,可能就是因为环境变量没有加载或设置存在问题导致的;二是利用该命令可以找到我们想要用的目标功能包的准确位置,由于ROS中工作空间存在覆盖的机制,也就是同名功能包会存在冲突,当这种情况发生时,使用roscd命令就能够清楚系统到底使用的是哪一个路径下的文件。
rosclean:
和ROS日志相关的命令,在ROS系统运行过程中会自动保存一些日志信息,可以查看保存的日志数据大小,也可以删除日志数据,一般情况下,超过1个G时,系统会报错提示日志数据量过大。
rviz:
ros系统中的可视化工具,可图形化显示各种数据,方便我们在使用过程中更形象地理解数据情况,也可以通过rosrun rviz rviz形式启动。
在这里,我们介绍了一些常用的ROS指令,有兴趣的朋友们可以了解ROS下的其他的命令,本期的内容就到此结束了,我们下期再见!
- End -
技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把无人机行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在无人机行业,就请关注我们的公众号,我们将持续发布无人机行业最有价值的信息和技术。
以上是关于技术分享 | 12个基础ROS常用命令讲解的主要内容,如果未能解决你的问题,请参考以下文章