ROS 2

1. 机器人是一种高度复杂的系统性实现,在机器人上可能集成各种传感器(雷达,摄像头,GPS等)。ROS是进程分布式框架,从而分散计算压力,然而不同的进程之间需要通信(数据交换)

2. ROS中的基本通信机制主要有三种实现策略

a) 话题通信(发布订阅模式)

发布、订阅双方通过话题关联起来。发布方发布话题相关内容;订阅方接收话题相关内容

b) 服务通信(请求响应模式)

client发送请求,server做出响应
c) 参数服务器(参数共享模式)

data存储在参数服务器中,节点可以向其中存储或读取节点

3. 话题通信

使用频率最高;用于不断更新的,逻辑处理量少的数据传输场景

分为master,talker,listener

master可以根据话题建立发布者和订阅者之间的连接

a) talker在master中进行注册,提供远程调用地址及话题

b)listener在master中进行注册,提供关注的话题

c)master将talker以及listener的话题进行比对,一致则将talker的RPC地址发给listener

d)listener根据RPC地址远程访问talker

e)talker做出响应,返还TCP地址

f)listener根据TCP地址访问talker

g) talker传输数据

# 使用的协议为RCP及TCP(前5个为RCP,后两个为TCP)

a、b步骤可以互换

talker与listener都可以存在多个

talker与listener建立联系后,manager可以关闭

上述流程已经封装,可以直接调用,我们需要关注话题设置,listener实现以及信息载体

posted on 2022-06-09 14:42  Eleni  阅读(74)  评论(0编辑  收藏  举报

导航