关于ros通信机制的浅谈
来源:互联网 发布:笛子校音器软件 编辑:程序博客网 时间:2024/05/16 04:07
ROS会创建一个连接到所有进程的网络。在系统中任何节点都可以访问此网络,并且通过该网络与其他节点的交互,在获取其他节点发布的信息,并将自身数据发布到网络上。
1、节点:节点是主要的计算执行过程。如果你想要有一个可以与其他节点进行交互的进程,那么你需要创建一个节点,并将此节点链接到ROS网络。通常情况下,系统包含能够实现不同功能的节点。你最好让每个节点都具有特定的单一功能,而不是在系统中创建一个包罗万象的大节点。节点需要使用roscpp或rospy 的ROS的客户端进行编写。
2、节点管理器:用于节点的名称注册和查找,如果在你的整个ROS系统中没有节点管理器,就不会节点、服务、消息之间的通信。需要注意的是,由于ROS本身就是一个分布式网络系统,你可以在某一台计算机上运行节点管理器,在其他计算机上运行由该管理器管理的节点。
3、参数服务器:参数服务器能够使数据通过关键词存储在一个系统的核心位置。通过使用参数,就能够在运行时配置节点或者改变节点的工作任务。
4、消息:节点通过消息完成彼此的通信。消息包含一个节点发送到其他节点的数据消息。ROS中包含很多标准类型的消息,同时你也可以基于标准消息开放自定义类型的消息。
5、主题(topic):由ROS网络对消息进行路由和消息管理的数据总线。每一条消息都要到相应的主题。当一个节点发送数据时,我们就说该节点正在向主题发布消息。节点可以通过订阅某个主题,接受其他节点的消息。一个节点可以订阅一个主题,而不需要该节点同时发布该主题。这就保证了消息的发布者和订阅者之间相互解耦,完全无需知晓对方的存在。主题的名称必须是独一无二,否则在同名主题之间的消息路由就会发生错误。
6、在发布主题的时候,正在发送的数据能够以多对多的方式进行交互。但当你需要从某个节点获得一个请求或者应答时,就不能通过主题来实现。服务能够允许我们直接与某个节点进行交互。此外,服务必须有一个唯一的名称。当一个节点提供服务时候,所有的节点都可以通过使用ROS客户端库所编写的代码与它通信。
7、消息记录包:是一种用于保存和回放ROS消息数据的文件格式。消息记录包是一种用于存放数据的重要机制。它能够获取并且记录各种难以收集的传感器数据。我们可以通过消息记录包反复获取实验数据,进行必要的开发和算法的测试。在使用复杂机器人进行试验工作时,需要经常使用消息记录包。
创建节点图的工具是rxgraph.
- 关于ros通信机制的浅谈
- 关于ROS多机通信的总结 1.0
- 关于ROS多机通信的总结 1.1
- 一起学ROS之通信机制
- 关于UITableView的重用机制浅谈
- 安卓中关于Handler机制的浅谈
- 浅谈Android中的线程的通信及Handle机制
- 浅谈对象之间通信的解决方案——Event机制
- 关于fragment和activty的通信个人的总结浅谈
- 浅谈总线通信机制---I2C总线接口
- 关于ROS的个人见解
- 关于ros的节点问题
- ROS关于cv_brige的使用
- 关于ros的一些基础知识
- Linux ROS与嵌入式的串口通信
- 利用cv_bridge与ROS的SUB通信
- ROS和MATLAB通信的一个测试
- 关于android 下activity间通信的问题-广播机制
- poj3349
- 9、铺铜铺地说明
- exists子查询真的就比连接查询慢吗?
- Hello world终于可以显示了
- 2017 计蒜之道 初赛 第三场
- 关于ros通信机制的浅谈
- 10、整体检查开板
- Qt-QML-关于两个平级的qml文件中的函数调用问题
- 【B/S】系统登录
- Python爬虫爬取糗事百科段子
- 手把手教你如何加入到github的开源世界!
- RHCS集群luci--ricci高集群
- 【XML解析】(3)利用DOM解析技术在XML文档下实现一个《通讯录管理系统》
- 总结篇-mysql