赞
踩
笔记3不涉及实际操作,主要是用自己的语言和思路简略整理了《ROS机器人开发实践》一书第2章内容。第一次看这一章的内容会有不知道在讲什么的感觉,但这一章的内容确实对后续实践操作章节的理解有非常大的帮助。
一、ROS架构:
ROS是一个优秀的机器人分布式框架。ROS架构的三个层次:基于Linux系统的OS层;实现ROS核心通信机制以及众多机器人开发库的中间层;在ROS Master的管理下保证功能节点的正常运行的应用层。
1.OS层:
ROS无法直接运行在计算机硬件上,需要依托于Linux、macOS等操作系统运行。
2.中间层:
Linux是一个通用系统,没有针对机器人开发提供的特殊中间件,因此在中间层,ROS封装了关于机器人开发的中间件,主要包括:
(1)基于TCP/UDP网络封装的TCPROS/UDPROS通信系统。
(2)一种用于进程内的通信方法Nodelet,为多进程通信提供一种更优化的数据传输方式。
(3)在通信机制上提供的大量机器人开发相关的库,如数据类型定义、坐标变换、运动控制等,可以提供给应用层使用。
3.应用层:
(1)ROS运行的管理者:Master(负责整个系统的正常运行)。
(2)功能包:ROS社区内共享了大量的机器人应用功能包,这些功能包内的模块以节点为单位运行。
二、重要概念:
从系统实现的角度来看:ROS可分为三个层次:计算图、文件系统、开源社区。
1.计算图:
从计算图的角度来看,ROS系统软件的功能模块以节点为单位独立运行,可以分布于多个相同或不同的主机中,在系统运行时通过端对端的拓扑结构进行连接。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。