理解ROS node和topic

Posted yaked19

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了理解ROS node和topic相关的知识,希望对你有一定的参考价值。

官网指南

理解ROS node

查看一下常用命令的帮助信息rosnode -h


roscore

 rosrun turtlesim turtlesim_node

rosnode list
rosrun turtlesim turtlesim_node __name:=yake_turtle //node改名字,单下划线为private name,两个单下划线表示系统保留的名字
Remapping Argument


rosrun turtlesim turtle_teleop_key

 rosrun rqt_graph rqt_graph

rostopic type /turtle1/cmd_vel //得到topic的类型

Usage:

rostopic pub [topic] [msg_type] [args]

rostopic pub -r 1 /turtle1/cmd_vel geometry_msgs/Twist '[2.0, 0.0, 0.0]' '[0.0, 0.0, 1.8]'  //最后直接TAB键可以补全格式



rosrun rqt_topic rqt_topic可以看到关于目前topic的信息基于qt图形界面来显示,它与rostopic list命令一样的效果,而且更加详细,包括了topic 的type信息和message的数据格式信息等,推荐。以下分别是rostopic list命令和rosrun rqt_topic rqt_topic的截图效果对比:


这里是rosnode listrosrun rqt_graph rqt_graph的对比结果,也是非常详细的:



在以上rqt_graph界面中,椭圆代表的是node,小矩形框代表topic名字,最大的矩形框是namespace的名字。

注意,改变node名字后,如这里turtle_sim改为yake_turtle,namespace的名字也变了。

另外的一个工具也是rqt中提供的,rosrun rqt_plot rqt_plot用来显示实时数据变化曲线。

注意,这里的显示并不是所有的topic都可以查看。例如这里仅能够查看pose和color sensor,而cmd_vel查看不了。

如果你想看看有关图形化工具,试试TAB补全(两次TAB键):


以上是关于理解ROS node和topic的主要内容,如果未能解决你的问题,请参考以下文章

理解ROS的Topics

ROS_tutorial03:ROS_Node_Topic_Message

了解ROS topics(主题)

ROS Node/Topic/Message/Service的一些问题

ros话题(topic)

ROS 多个传感器 publish 同一个Topic