[发明专利]机器人系统及其任务规划方法有效
申请号: | 201310613292.1 | 申请日: | 2013-11-27 |
公开(公告)号: | CN104049573B | 公开(公告)日: | 2017-06-16 |
发明(设计)人: | S.W.哈特;J.D.亚莫科斯基;B.J.怀特曼;D.P.戴恩;D.R.古丁 | 申请(专利权)人: | 通用汽车环球科技运作有限责任公司;美国国家航空和宇宙航行局 |
主分类号: | G05B19/418 | 分类号: | G05B19/418 |
代理公司: | 北京市柳沈律师事务所11105 | 代理人: | 王景刚 |
地址: | 美国密*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 具有 扩展 编程 环境 机器人 任务 指挥 | ||
关于联邦政府资助的研究或开发的声明
本发明在美国航空航天局太空行动协议第SAA-AT-07-003号下由政府支持进行。美国政府可能拥有本发明的某些权利。
技术领域
本公开涉及用于自动机器人的任务规划的系统和方法,尤其涉及一种可用于这种任务规划的具有可扩展的编程环境的机器人任务指挥器(commander)。
背景技术
机器人是能够使用一系列机械链接来操纵物件的自动化装置。这些链接经由电机/致动器驱动的机器人关节而互相连接。典型机器人中的每个关节代表一种独立的控制变量,即自由度。末端执行器是位于机器人机械手末端的特殊装置,机械手用于执行手边的任务,比如抓住工作工具或捕捉物件的3D图像。因此,对机器人的精确控制可由任务规格的级别统筹:物件级控制(即控制由机器人的单个或协作抓握而保持的物件的行为的能力)、末端执行器控制和关节级控制。总的来说,各种控制级别协作以获得机器人移动性、灵活性和与工作任务相关的功能性的所需水平。
机器人的复杂性从常规的3轴或6轴机器人手臂变化至高度复杂的仿人机器人,即具有类人结构或外形的机器人,不论是否作为完整本体、躯干和/或附属物。仿人机器人的结构复杂性主要取决于所执行的工作任务的性质。通常,每个机器人具有其自身专用的编程环境,其中,专家用户根据特殊的任务序列对必须执行的各种任务编程。然后编译程序码,每当新的外围装置和其它硬件元件添加到机器人时,重写通信协议。结果,某些任务编程效率底下可能存在于本领域中,尤其存在于利用不同设计和/或相对复杂性差异悬殊的机器人的大网络环境中。
发明内容
本文公开了一种系统,其包括机器人任务指挥器(RTC)。RTC旨在用于开发分布式机器人应用级软件,即并非实时关键的软件,如在本领域中众所周知的那样。RTC可体现为在一个或多个计算机装置上运行的一组程序,包括具有图形用户界面(GUI)的集成开发环境(IDE)和构造成充当相应脚本引擎的一个或多个程序。GUI用作RTC的图形“前端”,允许专家或非专家用户以直观的方式与脚本引擎配合。GUI还使用户能够观察运行时间诊断信息,以构成可存储在存储器中并经由图形文件浏览器可访问的新脚本,以及将作为“代码库块”的这种存储的脚本“拖放”进新序列中。任务序列同样存储在存储器中,用于在附加序列中作为“任务序列块”分等级地再次使用。
GUI允许用户将作为“应用”的任务序列块配置给脚本引擎。反过来,脚本引擎充当RTC的计算“后端”。应用内的子块可分配给特定的脚本引擎,该特定的脚本引擎必须随后以指定的顺序解译和执行这些特定块。因此,脚本引擎在系统内用于将程序序列数据传输给其它脚本引擎,以及用于将诊断反馈传送给GUI。如本文中使用的诊断反馈可采取两种形式:GUI中的文字窗口和“块高亮”,使得当应用被配置给脚本引擎时,GUI中的相应块可变成不同的颜色,例如,绿色指示正常执行,红色指示错误或故障等。
使用如本文所公开的RTC便于在网络环境中进行自动化机器人任务规划,其中,一个或多个机器人通过网络传输层(NTL)由多个计算装置控制。RTC设计成支持多个网络协议,例如机器人操作系统(ROS)、ZeroMQ、TCP/IP、UDP等,以实施不同脚本引擎、RTC GUI和一个或多个机器人/外围装置之间的网络通信,而不会独属于任何特定协议。因为应用可包括通过使用这些协议而分布在多个脚本引擎的宽网络上的多个块的任务序列,所以可能存在网络延迟。然而,这种延迟在RTC的预期应用级软件开发作用的范围内是完全可以接受的。
RTC所使用的脚本引擎可位于网络上的不同计算机上。每个脚本引擎可发送“触发命令”给其它脚本引擎,例如作为并行执行的一组协调的状态机器。在这种环境中,GUI允许用户立刻精确地理解各分布式脚本引擎内正在发生什么。此外,例如在传感器/图像熔合或图像处理算法的情况下,如果特定库脚本或序列块(下文中统称为“代码库块”)特别密集,则分布式方法允许在整个网络上的计算负载平衡。
在可能的方法中,给定的脚本引擎可专用于网络上相应的机器人。类似地,每个任务序列和代码库块可在不同计算机上的不同脚本引擎上运行。总的来说,每个块的配置在配置之前可由用户在GUI中设定,或者通过标准调度算法(比如“循环”等)自动地分配给网络上的脚本引擎,如本领域中众所周知的那样。连接各个块的特定触发事件通过NTL发送,从而允许RTC恰当地发挥作用,即使在宽广分布式的网络环境中也如此。任务序列本身不需要是线性的。即,单个触发命令可同时触发执行代码的多个块,从而开始并发或并行处理管线等等。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于通用汽车环球科技运作有限责任公司;美国国家航空和宇宙航行局,未经通用汽车环球科技运作有限责任公司;美国国家航空和宇宙航行局许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310613292.1/2.html,转载请声明来源钻瓜专利网。