首页 > 其他 > 详细

ROS的重要概念:节点、消息、主题、服务

时间:2021-03-12 22:05:44      阅读:27      评论:0      收藏:0      [点我收藏+]

节点(Node)

节点:可认为是执行运算任务的进程或是正在执行的C++文件(需要编译catkin_make)、python文件(不需要编译)

消息(Message)

消息:节点之间传输的消息,建立联系。
每一个消息都是一种严格的数据结构,支持标准数据类型(整型、浮点型、布尔型等),也支持嵌套结构和数组(类似于C语言的结构体struct),还可以根据需求由开发者自主定义。

话题(Topic)

话题:ROS中节点之间传输消息最常见的方式,以发布/订阅(Publish/Subscribe)的方式传递。
特点:多对多,异步通信。
比喻:QQ群,每个用户都可以在这个群里发布和订阅消息,而不会发给其他群。不在群里的用户接收不到消息。

服务(Service)

服务:ROS中节点之间传输消息的方式,以客户端/服务器(Client/Server)的方式传递。
特点:一对一,同步通信。
比喻:QQ里A与B个人聊天,这种个人聊天框似与服务模型,是一对一,或者是服务器和客户端之间也类似于服务模型

节点管理器(ROS Master)

节点管理器:管理节点与节点之间的连接,ROS1中才有。
ROSMaster通过远程过程调用(RPC)提供登记列表和对其他计算图表的查找功能,帮助ROS节点之间相互查找、建立连接,同时还为系统提供参数服务器,管理全局参数。


总结为一句话就是:ROS中最小的进程单元就是节点(node),节点之间通过主题(topic)传递消息数据(message)。
技术分享图片


参考文献:【1】ROS机器人开发实践_胡春旭
【2】https://zhuanlan.zhihu.com/p/173430043?utm_source=wechat_session

ROS的重要概念:节点、消息、主题、服务

原文:https://www.cnblogs.com/OPBrother/p/14526110.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!