Ros 小乌龟节点启动
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ros 小乌龟节点启动相关的知识,希望对你有一定的参考价值。
参考技术A 启动完成后,可以通过键盘输入操控小乌龟移动。小乌龟启动过程中,我们启动了两个可执行的程序: turtlesim_node 和 turtle_teleop_key 。可以通过命令查看当前的启动的节点:
可以查看到启动程序对应的节点 /turtlesim 和 /teleop_turtle
通过命令可以查看 /turtlesim 节点的详情
命令运行后,可以看到以下结果:
rosnode info 命令可以查看当前节点的一些信息:
同理,我们也可以通过 rosnode info 查询 /teleop_turtle 节点的信息,结果如下:
现在我们大致可以搞清楚一些通讯的关系:
rqt_graph 工具提供了可视化的工具方便我们查看这种节点间的关系:
1
图像显示, /teleop_turtle 通过主题 /turtle1/cmd_vel 给 /turtlesim 进行数据传递
启动 rqt_publisher 工具
通过图形化配置参数:
我们通过rostopic命令可以获得小乌龟的移动数据类型为 geometry_msgs/Twist
通过rosmsg命令可以查看数据的详细格式:
输出的格式为:
geometry_msgs/Vector3 linear 指的是线速度,小乌龟只用到了 float64 x ,代表着乌龟向前进的线速度
geometry_msgs/Vector3 angular 指的是角速度,小乌龟只用到了 float64 z ,代表着乌龟旋转的角速度
4.2 ROS节点运行管理launch文件
4.2 ROS节点运行管理launch文件
关于 launch 文件的使用我们已经不陌生了,在第一章内容中,就曾经介绍到:
一个程序中可能需要启动多个节点,比如:ROS 内置的小乌龟案例,如果要控制乌龟运动,要启动多个窗口,分别启动 roscore、乌龟界面节点、键盘控制节点。如果每次都调用 rosrun 逐一启动,显然效率低下,如何优化?
采用的优化策略便是使用roslaunch 命令集合 launch 文件启动管理节点,并且在后续教程中,也多次使用到了 launch 文件。
概念
launch 文件是一个 XML 格式的文件,可以启动本地和远程的多个节点,还可以在参数服务器中设置参数。
作用
简化节点的配置与启动,提高ROS程序的启动效率。
使用
以 turtlesim 为例演示
1.新建launch文件
在功能包下添加 launch目录, 目录下新建 xxxx.launch 文件,编辑 launch 文件
<launch> <node pkg="turtlesim" type="turtlesim_node" name="myTurtle" output="screen" /> <node pkg="turtlesim" type="turtle_teleop_key" name="myTurtleContro" output="screen" /> </launch>
2.调用 launch 文件
roslaunch 包名 xxx.launch
注意:roslaunch 命令执行launch文件时,首先会判断是否启动了 roscore,如果启动了,则不再启动,否则,会自动调用 roscore
PS:本节主要介绍launch文件的使用语法,launch 文件中的标签,以及不同标签的一些常用属性。
另请参考:
以上是关于Ros 小乌龟节点启动的主要内容,如果未能解决你的问题,请参考以下文章