话题通信

话题通信是ROS中使用频率最高的一种通信模式,话题通信是基于发布订阅模式的,也即:一个节点发布消息,另一个节点订阅该消息。话题通信适用于不断更新的数据传输相关的应用场景。

概念

以发布订阅的方式实现不同节点之间数据交互的通信模式。

作用

用于不断更新的、少逻辑处理的数据传输场景。


理论模型

话题通信实现模型是比较复杂的,该模型如下图所示,该模型中涉及到三个角色:

ROS Master 负责保管 Talker 和 Listener 注册的信息,并匹配话题相同的 Talker 与 Listener,帮助 Talker 与 Listener 建立连接,连接建立后,Talker 可以发布消息,且发布的消息会被 Listener 订阅。

https://img.kai233.top/g-img/2022/08/06/19d9cbe8958c0.webp

注意,步骤0和1没有顺序关系。talker 和 listener 都可以存在多个,两者建立连节后,master即可关闭。上述实现流程已经封装,后期直接调用即可。

关注点: