ROS1教程 6:ROS1通信机制简介


ROS1通信机制简介

ROS1教程 5:ROS1通信机制简介

经过前面章节的学习,我们算是买入了ROS1学习的大门,从这一节开始,我们将用连续的几节详细的介绍ROS1中的通信机制

1. ROS1通信机制介绍

机器人是一种高度复杂的系统性实现,在机器人上可能集成各种传感器(雷达、摄像头、GPS……)以及运动控制(直流电机、舵机……)实现。为了解耦合,在ROS1中每一个功能点都是一个单独的进程,每一个进程都是独立运行的。

更确切的讲,ROS1是进程(也称为Nodes)的分布式框架。 因为这些进程还可分布于不同主机,不同主机协同工作,从而分散计算压力。不过随之也有一个问题: 不同的进程是如何通信的?也即不同进程间如何实现数据交换的?因此,我们就需要介绍一下ROS1中的通信机制了。

ROS1中的基本通信机制主要有如下三种实现策略:

  • 话题通信:发布订阅模式
  • 服务通信:请求响应模式
  • 参数服务器:参数共享模式

我们接下来的几个教程,的主要内容就是是介绍各个通信机制的应用场景、理论模型、代码实现以及相关操作命令。预期达成学习目标如下:

  • 能够熟练介绍ROS1中常用的通信机制
  • 能够理解ROS1中每种通信机制的理论模型
  • 能够以代码的方式实现各种通信机制对应的案例
  • 能够熟练使用ROS1中的一些操作命令
  • 能够独立完成相关实操案例

2. 案例

最终,通过后续几个章节的学习,我们将实现下述案例:

2.1 话题通信

通过话题通信,控制小乌龟做圆周运动

话题通信案例一

通过话题通信,获取乌龟位姿

话题通信案例二

2.2 服务通信

通过服务通信,在指定位置生成乌龟

服务通信案例

2.3 参数服务器

改变乌龟窗口的背景颜色

参数服务器


文章作者: Jack Wang
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Jack Wang !
  目录