ROS原理及其应用

 

ROS通信机制

ROS底层的通信是通过HTTP完成的,因此ROS内核本质上是一个HTTP服务器,它的地址一般是http://localhost:11311/

ROS的运行架构师一种使用ROS通信实现节点间点对点的松耦合网络连接的处理架构,提供多种类型通信机制,包括基于主题的异步数据流通信、基于服务的同步RPC通信及基于参数服务器的数据传递,支持实现不同需求的网络连接。

基于主题的异步数据流通信时ROS的主要通信方式,实现了节点间多对多的连接,并且采用单向数据流传送数据。

ROS针对实时性要求高的场景还提供了一种通信方式——actionlib,它为优先级任务提供了标准接口。

基于主题的异步数据通信

基于主题的数据流通信主要通过以下四步来完成。

  1. 通过XMLRPC,发布者与订阅者在Master上注册,订阅者与发布者协商共同支持的协议。
  2. 发布者与订阅者通过互相发送header,建立TCPROS/UDPROS连接。
  3. 经过以上两步,连接已经建立成功,可以进行数据传送。
  4. 最后调用回调函数队列中已经注册的回调函数来处理接收到的消息。

基于服务的同步RPC通信

基于参数服务器的数据传递

参数服务器运行在节点管理器上,主要实现了一些全局参数和配置文件的存储,实现过程比较简单。

ROS坐标变换体系及其实现

 

posted @ 2017-11-05 18:59  meczhang  阅读(2069)  评论(0)    收藏  举报