文章目录

  • 1. 为什么会出现ROS机器人操作系统?
  • 2. ROS机器人操作系统的概念?
  • 3. ROS机器人操作系统的文件系统
  • 4. ROS机器人操作系统的通信架构
  • 4.1 运作方式
  • 4.2 通信方式
  • 4.2.1 Topic 话题
  • 4.2.2 Service 服务
  • 4.2.3 Parameter Service 参数服务器
  • 4.2.4 Actionlib 动作库
  • 5. ROS2与ROS的不同点


1. 为什么会出现ROS机器人操作系统?

机器人是一个系统科学,里面涵盖了很多知识领域,硬件集成、软件工程、定位、导航、建图等等。在社会中每一个模块都会有很多研究学者在做,各个部件的集成需要一个统一的平台,大家各司其职,贡献自己所擅长的领域。ROS就提供了这样的一个平台,供所有厂商在此平台上自己的模块,不用关心其他的模块是怎么运行的。那ROS起到了什么作用呢?可以先想一下,人有很多结构和器官,比如手、胳膊、腿、脚、五官等等,那么这些结构和器官是怎么协同运作的呢?每个组织是怎么产生联系的呢?答案就是人类有一个强大的指挥中心-大脑。大脑给各个组织传达信号协同运作达到想要的目的。ROS所产生的作用就和大脑差不多,ROS是一个适用于机器人编程的框架,这个框架把原本松散的零部件耦合在了一起,为他们提供了通信架构。

2. ROS机器人操作系统的概念?

ROS机器人操作系统虽然叫做操作系统,但是并非我们传统意义上的Windows、Linux操作系统。它只是连接了操作系统和各个负责人开发的ROS应用程序,只是一个中间架,为各个ROS应用程序搭建了沟通的桥梁。所以也是运行在Linux的运行时环境。

3. ROS机器人操作系统的文件系统

TODO

4. ROS机器人操作系统的通信架构

4.1 运作方式

TODO

4.2 通信方式

ROS通信方式是ROS最核心的概念,通信方式有如下四种:

4.2.1 Topic 话题

TODO

4.2.2 Service 服务

TODO

4.2.3 Parameter Service 参数服务器

TODO

4.2.4 Actionlib 动作库

TODO

5. ROS2与ROS的不同点

TODO