数据通信与网络技术 课件 第10章 智能机器人的操作系统_第1页
数据通信与网络技术 课件 第10章 智能机器人的操作系统_第2页
数据通信与网络技术 课件 第10章 智能机器人的操作系统_第3页
数据通信与网络技术 课件 第10章 智能机器人的操作系统_第4页
数据通信与网络技术 课件 第10章 智能机器人的操作系统_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第10章智能机器人的操作系统本章提要机器人操作系统ROS点对点通信系统基本模型ROS通信系统10.1机器人操作系统ROSROS起源于2007年斯坦福大学人工智能实验室的项目与机器人技术公司WillowGarage的个人机器人项目(PersonalRobotsProgram)之间的合作,2008年之后就由WillowGarage来进行推动。该项目研发的PR2机器人在ROS框架的基础上可以完成打台球、插插座、做早饭等惊人的功能,由此ROS引起了广泛的关注。2010年,WillowGarage正式开放ROS源代码,很快在机器人领域掀起了新的浪潮。图10-1PR2机器人10.1机器人操作系统ROSROS英文全称RobotOperatingSystem,即机器人操作系统。ROS由通信机制、开发工具、应用功能和生态系统四个部分组成。图10-2ROS基本构成10.2点对点通信系统基本模型ROS的核心功能是提供一种软件点对点的通信机制,其运行架构是一种基于Socket网络连接的松耦合架构,在这个运行架构中包括一系列进程,这些进程可以驻留在多个不同的主机上并且在运行的过程中通过点对点的拓扑结构实现通信。图10-3点对点通信系统基本模型10.2点对点通信系统基本模型各模块作用如下:(1)信源把待传输的消息转换成原始电信号;发送设备也称为变换器,它将信源发出的信息变换成适合在信道中传输的信号,使原始信号(基带信号)适应信道传输特性的要求。(2)信道是传递信息的通道及传递信号的设施。按传输介质(又称传输媒质)的不同,分为有线信道和无线信道(如微波通信、卫星通信、无线接入等);10.2点对点通信系统基本模型(3)接收设备的功能与发送设备相反,把从信道上接收的信号变换成信息接收者可以接收的信息,起着还原的作用;(4)受信者(信宿)是信息的接收者,将复原的原始信号转换成相应的消息;(5)噪声源是指系统内各种干扰影响的等效结果。为便于分析,一般将系统内所存在的干扰(环境噪声、电子器件噪声、外部电磁场干扰等)折合于信道中。10.3ROS通信系统通信系统智能机器个体以及群体机器人协调工作中的一个重要组成部分。ROS将每个工作进程都看作是一个节点,使用节点管理器进行统一管理,并提供了一套消息传递机制,包括基于主题的异步数据流通信、基于服务的同步RPC通信和基于参数服务器的数据传递。程序运行时,所有进程以及他们所进行的数据处理,将会通过一种点对点的网络形式表现出来。这一级主要包括几个重要概念:节点(node)、消息(message)、主题(topic)、服务(service)节点管理器(ROSMaster)。10.3ROS通信系统1、节点节点就是一些执行运算任务的进程。并能够通过主题、服务、或参数服务器与其他节点进行通信。节点也可以被称之为“软件模块”。使用“节点”使得基于ROS的机器人系统在运行的时候更加形象化:当许多节点同时运行时,可以很方便的将端对端的通讯绘制成一个图表。10.3ROS通信系统2、消息节点之间是通过传送消息进行通讯的。消息包含一个节点发送到其他节点的数据信息。消息有多种标准数据类型,例如整型,浮点型,布尔型等,同时用户页可以基于标准消息开发自定义消息类型。10.3ROS通信系统3、主题消息以一种发布/订阅的方式传递。一个节点可以在一个给定的主题中发布消息。一个节点针对某个主题关注与订阅特定类型的数据。可能同时有多个节点发布或者订阅同一个主题的消息。10.3ROS通信系统4、服务在Web服务中,使用客户端/服务器(C/S)模型,客户端发送请求数据,服务器完成处理后返回应答数据,是十分有效的同步传输模式。在ROS中,服务用于请求应答模型,必须拥有一个唯一的名称。当一个节点提供某个服务时,所有的节点都可以使用ROS客户端库编写的代码与之通信。10.3ROS通信系统5、节点管理器在上面概念的基础上,需要有一个控制器可以使所有节点有条不紊的执行,这就是一个ROS的控制器(ROSMaster)。ROSMaster通过RPC(RemoteProcedureCallProtocol,远程过程调用)提供了登记列表和对其他计算图表的查找。没有控制器,节点将无法找到其他节点,交换消息或调用服务。10.3.1基于主题的异步数据流通信ROS通过主题实现发布订阅模型的消息传递,在主题通信中,发布者发布的数据通过主题传递给订阅者,订阅者不需要反馈给发布者是否收到消息,一个主题上可以拥有多个发布者和订阅者,同时一个节点也可以发布或者订阅多个主题。主题的名称必须具有唯一性,否则在同名主题之间的消息路由就会发生错误。图10-4发布者、订阅者和主题之间的关系10.3.1基于主题的异步数据流通信为了确保正常的数据流交换,ROS通过节点管理器Master来管理发布者与订阅者,使得发布者的消息可以正确的发送给订阅者,因此每当有一个新的发布者或者订阅者产生时,都必须在Master上注册信息。当发布者在Master上注册时,Master会保存发布者的URI(统一资源标识符)和发布者发布的主题。图10-5基于主题的数据流通信过程10.3.1基于主题的异步数据流通信(1)Talker注册(2)Listener注册(3)Master进行信息匹配(4)Listener发送连接请求(5)Talker确认连接请求(6)Listener与Talker建立网络连接(7)Talker与Listener数据通信ROS的主题通信支持TCPR和UDPS两种通信协议,基于主题的数据流通信一般包含以下七个流程。10.3.2基于服务的同步RPC通信基于服务的同步RPC通信也需要通过XMLRPC在Master上注册服务,客户端节点通过XMLRPC在Master上寻找与服务对应的服务器端节点,然后与其建立TCP连接,进行数据流通信。图10-6基于服务的同步RPC通信流程10.3.3基于参数服务器的数据传递参数服务器是ROS上一种共享的多变量参数字典,一般用来存储一些静态的非二进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论