在机器人操作系统中使用传输服务质量的方法技术方案

技术编号:14762432 阅读:92 留言:0更新日期:2017-03-03 16:26
本发明专利技术提供了一种在机器人操作系统中使用传输服务质量的方法,包括:步骤1:节点注册;步骤2:生成节点连接拓扑关系;步骤3:生成发送的数据包;步骤4:通讯能力协商;步骤5:配置QoS策略;步骤6:进行QoS匹配和数据传输。本发明专利技术在通讯框架中加入了保障服务质量的传输层机制,数据发布者和订阅者可根据双方的需要来动态的改变QoS策略;当机器人节点支持服务质量的传输机制时,即可根据需要在传输时增加实时性、可靠性等服务质量保障;兼容当前的ROS节点上的软件应用模块,已有的软件应用模块可不加修改的在通讯框架之上运行。

【技术实现步骤摘要】

本专利技术涉及机器人,具体地,涉及在机器人操作系统中使用传输服务质量的方法
技术介绍
随着科技发展,机器人已经走进了我们生活,它既可以接受人类指挥,又可以运行预先编排的程序,协助或取代人力工作。随着机器人的功能层次化要求的加深,计算平台的扩展,使用的硬件日益复杂,为机器人编写软件这一工作也变得越来越复杂繁重。为了简化编程工作,许多机器人软件开发平台应运而生。按照“平台化”的思想,在机器人领域引入操作系统软件的概念,促进了机器人硬件的标准化和软件的模块化,成为推动机器人技术和产业高速发展的催化剂,是机器人软件技术的未来主流的演化方向。机器人软件平台的初期研究主要集中于中间件和软件框架等层面,典型项目包括Player、OpenRTM、OROCOS、ROS等。其中当前最为活跃的是机器人操作系统ROS(RobotOperatingSystem)项目。ROS运行于Ubuntu等本地操作系统之上,由通信基础设施、机器人相关的软件包、开发和运行工具集等组成,能够为机器人应用开发提供驱动程序、硬件抽象、资源管理、通信管理、实用工具等类似操作系统的功能。ROS可看成使用ROS特定消息连接的多个软件节点组成的系统。目前,ROS包含了2000多个针对不同机器人平台的常用软件节点包,已经应用于上百种地面、空中、水面和水下无人系统,成为机器人应用软件平台的事实标准。ROS软件框架及其功节点能模块目前运行在多节点异构计算机上,如机器人的传感器节点、计算单元节点和执行器节点上。ROS的本质是一种分布式处理框架,其既支持面向服务的同步远程过程调用通信,也支持面向数据的异步数据流通信,这使执行节点能被单独设计,并且在运行时松散耦合,形成完整的机器人控制软件系统。但ROS的分布式通讯框架不注重传输的实时性、可靠性等,不能根据数据流类型来进行实时性和可靠性的折中选择,以支持不同速率、不同服务质量的通信。机器人系统节点间通讯需要满足实时性要求,很多处理和交互必须在一定时限内完成,有相对严格的时间要求,否则在真实环境中运行的机器人会有灾难性的后果。在保证信息实时传输的条件下,还需要保证信息传输的正确性和可靠性。另外需要机制能够描述分布系统中的计算资源和网络资源,动态的控制资源的分配和使用,以保证完整系统的实时性。节点也可以在运行时加入(如新增传感器)或退出(如能量耗尽或损坏),通讯需要能够自适应系统的动态性。而目前已有的ROS通讯框架仅基于节点间的TCP传输,不能满足机器人系统的实时性、可靠性、动态性的需求。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种在机器人操作系统中使用传输服务质量的方法。根据本专利技术提供的一种在机器人操作系统中使用传输服务质量的方法,包括:步骤1:节点注册:将分布式通讯框架中的每个通讯组件定义为一个节点,节点通过机器人操作系统ROS的节点管理功能与ROS主节点进行通信,动态的在分布式计算网络内进行注册、注销操作,并接收ROS主节点的启动通知和关闭通知;步骤2:生成节点连接拓扑关系:当一个新的节点加入分布式计算网络时,通过基于XMLRPC通信协议与ROS主节点通信,获得分布式计算网络已有节点的信息,以与已有节点间不通过ROS主节点直接进行通信;步骤3:生成发送的数据包:分布式通讯框架在进行消息发布订阅时,节点使用自定义的数据类型进行数据的传递;步骤4:通讯能力协商:节点发起使用消息的数据传输时,先进行通讯能力的协商;步骤5:配置QoS策略:通过配置服务质量QoS描述底层的通讯机制,包括带宽限制、可靠性、等待时间、资源限制。优选地,在所述步骤2中,分布式计算网络中的节点通过动态加入注册,实时改变拓扑结构,生成连接拓扑关系。优选地,在所述步骤3中,基于ROS原生的接口定义语言编译生成数据包管理模块,以提供对用户自定义数据包的序列化、反序列化、匹配、转换、校验功能。优选地,在所述步骤4中,当节点仅支持TCP传输时使用ROS的通讯传输方式;当节点的传输层具有支持服务质量的传输机制时,节点加入到支持服务质量的DDS节点集群中,使用ROS生成的节点间拓扑结构和消息数据类型,在传输层生成主题,注册消息数据类型,设置基于需求的传输服务质量属性。优选地,订阅者请求最低需求的QoS策略;若发布者向可能的订阅者提供的QoS策略与所述。最低需求的QoS策略之间能够匹配,则订阅者与发布者形成了关联,从而建立连接,否则提示异常;发布者和订阅者根据双方的需要来动态的改变QoS策略,以实现不同速率的数据传输来满足实时性或可靠性的需求;QoS策略包括多种策略形式关联描述服务行为;用QoS控制服务行为,将资源的可用情况、提供方对资源的占有程度及请求方对资源的期待程度分别标准化;QoS策略包括:-可靠性:确保所有的数据都按照顺序被接收到;-截止时间:发布者保证在每个周期的截止时间内发送数据,接收者表明在每个周期的截止时间内接收数据;-历史记录:用来设定如何使用发送和接收队列的策略:(a)保持全部,在可用资源的限制内,在缓冲区队列中保持所有的数据;(b)保持最后N个数据,缓冲区队列将最后N个数据保持,其余丢弃;N为正整数;-存在性:用来描述发送者在约定周期内发送数据包或存在性心跳包的约束策略;-基于时间的过滤:接收者设定期望得到新的数据的最小时间间隔,中间件框架在满足最小时间间隔条件时,传送最小量的数据。优选地,还包括:步骤6:进行QoS匹配和数据传输:根据QoS的配置,传输层进行消息的数据发布接收和服务质量的匹配,包括比较并设置QoS、预分配资源、根据订阅资源生成消息、通知监听接口;根据QoS要求,在规定的时间发送数据。优选地,在所述步骤6中,进行通信的过程步骤如下:传输层根据数据类型定义主题和设置QoS;订阅者从传输层查找主题,传输层返回要查找的主题;订阅者订阅主题,传输层比较主题和订阅者设定的QoS,检查是否满足订阅者需求,如满足则保存一个新的订阅信息并返回成功,否则拒绝订阅;发布者设置QoS并发布最新的数据;传输层接收到数据,比较QoS,将数据传递给订阅者。与现有技术相比,本专利技术具有如下的有益效果:1、为满足ROS分布式通讯框架中需要具有实时性、可靠性等传输服务质量机制的需求,本专利技术在通讯框架中加入了保障服务质量的传输层机制。参考OMG数据订阅分发技术(DDS)标准,定义了多种服务质量(QoS)策略,节点利用这些策略,指明描述了它们对于传输服务品质QoS的要求。数据发布者和订阅者可根据双方的需要来动态的改变QoS策略,以实现不同的数据传输方式来满足实时性或可靠性的需求。2、机器人分布式系统可以由具有不同通讯能力的任意节点组成,通过一种通讯能力发现和协商机制,当机器人节点仅支持TCP传输时可使用ROS原本的通讯方式,当机器人节点支持服务质量的传输机制时,即可根据需要在传输时增加实时性、可靠性等服务质量保障。3、本专利技术的方法兼容当前的ROS节点上的软件应用模块,已有的软件应用模块可不加修改的在通讯框架之上运行。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1为本专利技术提供的在机器人操作系统中使用传输服务质量的方法的步骤流程图。具体实施方式下面结合具体实施例对本专利技术进行详细说明。本文档来自技高网
...
在机器人操作系统中使用传输服务质量的方法

【技术保护点】
一种在机器人操作系统中使用传输服务质量的方法,其特征在于,包括:步骤1:节点注册:将分布式通讯框架中的每个通讯组件定义为一个节点,节点通过机器人操作系统ROS的节点管理功能与ROS主节点进行通信,动态的在分布式计算网络内进行注册、注销操作,并接收ROS主节点的启动通知和关闭通知;步骤2:生成节点连接拓扑关系:当一个新的节点加入分布式计算网络时,通过基于XMLRPC通信协议与ROS主节点通信,获得分布式计算网络已有节点的信息,以与已有节点间不通过ROS主节点直接进行通信;步骤3:生成发送的数据包:分布式通讯框架在进行消息发布订阅时,节点使用自定义的数据类型进行数据的传递;步骤4:通讯能力协商:节点发起使用消息的数据传输时,先进行通讯能力的协商;步骤5:配置QoS策略:通过配置服务质量QoS描述底层的通讯机制,包括带宽限制、可靠性、等待时间、资源限制。

【技术特征摘要】
1.一种在机器人操作系统中使用传输服务质量的方法,其特征在于,包括:步骤1:节点注册:将分布式通讯框架中的每个通讯组件定义为一个节点,节点通过机器人操作系统ROS的节点管理功能与ROS主节点进行通信,动态的在分布式计算网络内进行注册、注销操作,并接收ROS主节点的启动通知和关闭通知;步骤2:生成节点连接拓扑关系:当一个新的节点加入分布式计算网络时,通过基于XMLRPC通信协议与ROS主节点通信,获得分布式计算网络已有节点的信息,以与已有节点间不通过ROS主节点直接进行通信;步骤3:生成发送的数据包:分布式通讯框架在进行消息发布订阅时,节点使用自定义的数据类型进行数据的传递;步骤4:通讯能力协商:节点发起使用消息的数据传输时,先进行通讯能力的协商;步骤5:配置QoS策略:通过配置服务质量QoS描述底层的通讯机制,包括带宽限制、可靠性、等待时间、资源限制。2.根据权利要求1所述的在机器人操作系统中使用传输服务质量的方法,其特征在于,在所述步骤2中,分布式计算网络中的节点通过动态加入注册,实时改变拓扑结构,生成连接拓扑关系。3.根据权利要求1所述的在机器人操作系统中使用传输服务质量的方法,其特征在于,在所述步骤3中,基于ROS原生的接口定义语言编译生成数据包管理模块,以提供对用户自定义数据包的序列化、反序列化、匹配、转换、校验功能。4.根据权利要求1所述的在机器人操作系统中使用传输服务质量的方法,其特征在于,在所述步骤4中,当节点仅支持TCP传输时使用ROS的通讯传输方式;当节点的传输层具有支持服务质量的传输机制时,节点加入到支持服务质量的DDS节点集群中,使用ROS生成的节点间拓扑结构和消息数据类型,在传输层生成主题,注册消息数据类型,设置基于需求的传输服务质量属性。5.根据权利要求1所述的在机器人操作系统中使用传输服务质量的方法,其特征在于,订阅者请求最低需求的QoS策略;若发布者向可能...

【专利技术属性】
技术研发人员:邓畅左龙刘荣宽
申请(专利权)人:中国电子科技集团公司第三十二研究所
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1