电子神越女学 人 智能机器人原理与实践 机器人操作系统 骆德渊博士、教投 电子科技大学机械与电气工程学院副院长 电子科技大学机器人队总教练
1
德仓创机器人 Dechuang Robot 9.机器人操作系统(R0S) 主要内容 机器人操作系统ROS概述 ROS体系架构 ROS通信机制 ROS核心工具 5 ROS坐标变换(TF) 6 ROS开发接口 ROS机器人定位与建图SLAM ROS机器人导航与路径规划Navigation 3
9.机器人操作系统(ROS) 3 主要内容 2 ROS体系架构 1 机器人操作系统ROS概述 3 ROS通信机制 4 ROS核心工具 5 ROS坐标变换(TF) 6 ROS开发接口 7 ROS机器人定位与建图SLAM 8 ROS机器人导航与路径规划Navigation
德仓创机器人 Dechuang Robot 9.1机器人操作系统概述 ROS(ROBOT OPERATION SYSTEM)是一个适用于机器人的开源的次级操作系统。? 它提供类似操作系统所提供 的功能,包括硬件抽象、底层设备控制、常用函数的实现、进程间消息传递以及包管理;提供用于获取、编译、编 写、跨计算机运行代码所需的工具和库函数;采用的是松耦合点对点进程网络,目前支持Ubuntu.系统、MacOS X 、ROS2.0支持Windows。由框架、工具、功能和社区四个部分组成。 (1)框架(基础结构--通讯机制) (3)功能(package) 分布式 控制 ·节点:ROS中用节点表示进程,即Node 规划 硬件抽象 底层设 。 分布式架构优点扩展性好,软件复用率高 视觉 备控制 进程管理 建图 ·进程通信 进程间消 (2)工具(调试) 常用函 (4)社区 息传递 包管理 数实现 仿真 软件包管理 数据可视化 教程 ROS机器人操作系统 图形界面 文档 ·数据记录
9.1 机器人操作系统概述 4 硬件抽象 底层设 备控制 常用函 数实现 进程间消 息传递 包管理 ROS机器人操作系统 ROS(ROBOT OPERATION SYSTEM)是一个适用于机器人的开源的次级操作系统。它提供类似操作系统所提供 的功能,包括硬件抽象、底层设备控制、常用函数的实现、进程间消息传递以及包管理;提供用于获取、编译、编 写、跨计算机运行代码所需的工具和库函数;采用的是松耦合点对点进程网络,目前支持Ubuntu系统、MacOS X 、 ROS 2.0支持Windows。由框架、工具、功能和社区四个部分组成。 (1) 框架(基础结构---通讯机制) •分布式 • 节点: ROS中用节点表示进程,即Node • 分布式架构优点:扩展性好,软件复用率高 •进程管理 •进程通信 (2) 工具(调试) •仿真 •数据可视化 •图形界面 •数据记录 (3) 功能(package) •控制 •规划 •视觉 •建图 (4) 社区 •软件包管理 •教程 •文档
德仓创机器人 Dechuang Robot 9.1机器人操作系统概述 ROS的优势 ROS设计目标是在机器人研发领域提高代码复用率。ROS是 (1)松散耦合的机制方便机器人软件 一种分布式处理框架(又名Nodes)。可执行文件能被单独设计 框架的组织; (即节点),并且在运行时松散耦合。这些过程可以封装到数 (2)最丰富的机器人功能库,方便快 据包(Packages)和堆栈(Stacks)中,以便于共享和分发。ROS 速搭建原型; (3)非常便利的数据记录、分析、仿 还支持代码库的联合系统。使得协作亦能被分发。这种从文 真工具,方便调试; 件系统级别到社区一级的设计让独立地决定发展和实施工作 (4)学界和产业界的标准,方便学习 成为可能。 和交流; ROS运行架构是一种使用ROS通信模块实现模块间P2P的松耦 (5)R0S使用了BSD许可证,这是一个 合的网络连接的处理架构,它执行若干种类型的通讯,包括 非常宽松的开放许可证,允许在商业 基于服务的同步RPC(远程过程调用)通讯、基于Topic的异步 和闭源产品使用,这对于开发产品的 数据流通讯,还有参数服务器上的数据存储。ROS本身没有实 创业公司是比较重要的一点; 时性
9.1 机器人操作系统概述 5 ROS设计目标是在机器人研发领域提高代码复用率。ROS是 一种分布式处理框架(又名Nodes)。可执行文件能被单独设计 (即节点),并且在运行时松散耦合。这些过程可以封装到数 据包(Packages)和堆栈(Stacks)中,以便于共享和分发。ROS 还支持代码库的联合系统。使得协作亦能被分发。这种从文 件系统级别到社区一级的设计让独立地决定发展和实施工作 成为可能。 ROS运行架构是一种使用ROS通信模块实现模块间P2P的松耦 合的网络连接的处理架构,它执行若干种类型的通讯,包括 基于服务的同步RPC(远程过程调用)通讯、基于Topic的异步 数据流通讯,还有参数服务器上的数据存储。ROS本身没有实 时性。 ROS的优势 (1)松散耦合的机制方便机器人软件 框架的组织; (2)最丰富的机器人功能库,方便快 速搭建原型; (3)非常便利的数据记录、分析、仿 真工具,方便调试; (4)学界和产业界的标准,方便学习 和交流; (5)ROS使用了BSD许可证,这是一个 非常宽松的开放许可证,允许在商业 和闭源产品使用,这对于开发产品的 创业公司是比较重要的一点;
德仓创机器人 Dechuang Robot 9.1机器人操作系统概述 ROS的优势 ROS的四大特点 (6)R0S是最庞大的使用者群体,是事实上的机器人标 (1)点对点设计 准,2016年R0S大会数据显示,目前在使用操作系统做 开发的人员用户超过35万,其中活跃用户美国第一位, 中国第二位,ROS WIKI社区(http://wiki.ros.org)。 (7)在学术研究领域,基本上机器人算法都会给出ROS camera 版本的源程序; global map map vision (8)企业界:目前已经有很多机器人公司采用了0S系 统来开发一些应用于全新市场的产品,如ClearPath、 WIFI planning Rethink、Unbounded、Neurala、Blue River、Bigi; Server camera (9)Nvidia、博世、高通、英特尔、宝马以及大疆等 map vision 大公司也纷纷推出ROS接口
9.1 机器人操作系统概述 6 ROS的四大特点 (6)ROS是最庞大的使用者群体,是事实上的机器人标 准,2016年ROS大会数据显示,目前在使用操作系统做 开发的人员用户超过35万,其中活跃用户美国第一位, 中国第二位,ROS WIKI社区(http://wiki.ros.org/ )。 (7)在学术研究领域,基本上机器人算法都会给出ROS 版本的源程序; (8)企业界:目前已经有很多机器人公司采用了ROS系 统来开发一些应用于全新市场的产品,如ClearPath、 Rethink、Unbounded、Neurala、Blue River、Big-i; (9)Nvidia、博世、高通、英特尔、宝马以及大疆等 大公司也纷纷推出ROS接口。 ROS的优势 (1)点对点设计