第1章 ROS简介

1.1 ROS概述

ROS,全称Robot Operating System,是一个开源的机器人操作系统,能为异质计算机集群提供类似操作系统的功能(注意:ROS不是真正意义上的操作系统,它通常运行在Ubuntu系统上,且有固定的版本对应)。ROS提供了操作系统应有的服务,包括硬件抽象、底层设备控制、常用函数的实现、进程间消息传递,以及包管理。ROS也提供用于获取、编译、编写和跨计算机运行代码所需的工具和库函数。

ROS系统起源于2007年斯坦福大学人工智能实验室与机器人技术公司Willow Garage合作的个人机器人项目PR2(Personal Robots Program)。2009年初推出测试版的ROS0.4,该版本已初步具备现有的ROS系统框架。2010年正式推出ROS1.0版本,并开发出一系列机器人操作的基础软件包。之后不断进行版本迭代和功能完善,目前ROS的最新版本为Lunar。除此之外,支持包括Linux、Windows、macOS等操作系统的ROS2也已推出(本书只介绍ROS1的使用,对ROS2不作讨论)。ROS各版本及其发布时间如表1-1所示。

表1-1 ROS版本及发布时间