当前位置:首页 期刊杂志

地面无人平台体系架构研究综述

时间:2024-07-28

余雪玮, 赵熙俊, 苏 波

(中国北方车辆研究所,北京 100072)

地面无人平台在军事、交通、物流等领域中应用前景广阔,随着无人平台技术的快速发展,传统的直接设计方法在不断涌现的新兴异构平台中已经不再适用,如何选择一个恰当的体系结构在无人平台系统设计与实现方面发挥着举足轻重的作用,是无人平台设计之初就应当考虑的关键问题[1-3].

1 体系架构的概念

1.1 易混淆的概念辨析

人们对体系架构的概念存在很多误解,易将其与结构、框架、控制结构等概念混淆,因此对这些概念进行辨析十分必要.结构(Structure)是通用词汇,泛指一个东西、系统、概念的组成元素及其关系;架构(Architecture)目前主要专用于计算机、软件工程等行业,机器人行业的发展逐步为其添加新的内涵,目前没有文献表明体系结构与架构的差别,只不过前者更强调方法论,后者更强调实践,可以认为架构与构架、体系结构、体系架构、总体结构等概念等价;框架(Framework)是基于架构的可重用设计,解决某一个问题的处理流程,是提供诸多服务的半成品,供开发人员二次开发,例如Spring框架;控制结构(Control Structure)指程序运行逻辑,C语言一共有顺序结构、选择结构、循环结构3种控制结构.

1.2 无人平台体系架构的内涵

“架构”一词最早来源于建筑学,在IT行业对传统行业的借鉴下,架构逐渐专指软件架构.随着无人平台技术的蓬勃发展,架构的内涵得到了新的拓展.由于软件架构的相关理论对于无人平台体系架构具有指导与借鉴意义,因此首先对软件架构的概念展开探讨.关于软件架构的定义有很多,至今未形成公认的定义,表1列出了几种典型的软件架构定义[4].

表1 几个典型的软件架构定义

在理解无人平台体系架构的内涵时,可以结合上述软件架构的定义,将无人平台体系架构看作软件架构在机器人领域的延伸,其不仅包含软件架构所涉及的内涵,而且针对无人平台的特性做了相对应的补充,将无人平台体系架构看作无人平台软硬件的组成部分的结构、相互间的关系以及原则和规范的集合.

2 地面无人平台体系架构研究现状

常见的地面无人平台体系架构主要有分层递阶式、反应式、混合式3类,如图1所示.

图1 常见的3种地面无人平台单体架构

分层递阶式架构是Saridis[9]于20 世纪 70年代末提出的,如图1(a)所示,其按照感知、规划、执行的顺序依次执行.分层递阶式架构具有规划器与世界模型,因此该架构具有人类的慎思、策略制定以及学习能力.此外该架构层次分明,具有任务分解的能力.但规划器与世界模型的存在使得预编程时任务量增大,系统的实时性差.S-P-A[10]是采用分层递阶式架构的典型的代表.

反应式架构是Brooks[11]于20世纪80年代提出的,如图1(b)所示,其基本特征是所有的动作都是通过行为来完成,行为是用来完成任务的一种从传感器输入到动作模式的直接映射[12],反应式剔除了分层递阶式架构的规划单元,因此可以通过简单的编程实现紧急复杂的行动,具有反应灵活迅速、编程规模小、实现成本低等优点.但随之而来的缺陷是其不具备学习、世界建模、计划、慎思的能力,从而缺少全局指导和协调.典型的反应式架构有Rodney Brooks的包容结构[13]、MIT subsumption architecture[14]等.

为了弥补以上两种架构的不足,20世纪90年代混合式架构被提出,如图1(c)所示,该架构融合了分层递阶式与反应式架构的优点,层次分明、实时性好、具有规划器和世界模型,因此其有慎思的能力,并且在合适的时候也会采取反应模型.较有代表性的混合式架构有NIST制定的4D Real-time Control Systems(4D/RCS)、NASA使用的the 3T Architecture[15]、NASA应用在移动机器人上的Task Control Architecture(TCA)[16]、移动机器人上使用的the Saphira Architecture[17]等.

目前,国际上针对地面无人平台应用较多的体系架构有 ROS、JAUS、4D/RCS、云机器人系统架构、无人地面车辆互操作性指导原则、自主协同和组队架构、具备指控以及与有人车辆互操作能力的架构、基于SAE AS5684协议的模块化架构、用于导航的智能架构等[18].本研究将对其中几个典型架构进行分析介绍,其中4D/RCS属于混合式架构,JAUS属于分层递阶式架构,在ROS架构与云机器人系统架构中单体平台架构的设计可以根据需求自行选择.

2.1 ROS

机器人操作系统(Robot Operating System,ROS)是美国 Willow Garage 公司[19-20]于2010年发布的一种机器人次级操作系统.ROS采用分布式处理架构,提供一种点对点的通信机制,以节点为基本单元,每一个节点是一个可执行文件,这些执行文件可以在不同的计算机上单独设计并在运行时松散耦合,节点之间通过传送消息进行通信,消息以发布/订阅的方式传递,从而实现基于ROS控制器调度的多进程或多机协作,该过程如图2所示.在ROS的通信机制下,较易实现反应式任务,但是也可以借助ROS本身丰富的工具包(如ROS-Behavior-Tree)实现无人系统的分层设计,即在ROS中单体平台可以根据需求采用分层递阶式、反应式、混合式等单体无人平台架构.

图2 ROS的点对点通信机制

2.2 JAUS

无人系统联合架构(Joint Architecture for Unmanned Systems,JAUS)是美国国防部于1998年提出的一种面向服务的开放式体系架构,它基于分层递阶式体系架构,提供了在无人系统间交换信息的标准,目的在于提高无人系统间的互操作能力.与ROS架构相比,JAUS架构更加强调了分层的概念,图3为其典型的拓扑架构,整个系统被划分为子系统、节点、组件3层.JAUS能力的具体体现在服务,其具有核心服务集、机动服务集、环境服务集、扩展服务集等,其中属于核心服务集的传输服务模型如图4所示[21-22],子系统中的组件通过注册传输服务实现基于传输总线的消息共享.佛罗里达大学参考该架构扩展出了NaviGATOR体系结构[23].

图3 JAUS典型拓扑结构

图4 JAUS传输模型

2.3 4D/RCS

4维实时控制系统(4D Real-time Control Systems,4D/RCS)是由美国国家标准与技术研究院(NIST)以DemoIII无人车辆计划为基础发展而来的[24].该架构提供了无人车辆系统软件定义与组织的参考模型,定义了无人车辆系统多任务分析、规划、执行与协调的方法,并逐渐成为无人车辆系统软件工程标准[25].4D/RCS参考架构是混合式体系架构,在较低层次生成面向目标搜索的反应式行为,即具有对紧急事件快速反应的能力,时间空间跨度小但分辨率高;在较高层次生成面向目标定义的递阶慎思式行为,即具有推理和规划等慎思能力,时间空间跨度大,但分辨率低[26].如果将JAUS架构对于系统、子系统、节点、组件、服务的划分认为是“弱分层”,RCS架构对分层概念的强调则更为突出,其不仅对系统的设计逻辑进行了分层,并且针对整个地面无人系统作战体系都做了层次上的划分与界定.

4D/RCS体系架构由若干个计算节点组成,每个节点相当于一个控制器,操作者可以进入各级节点的任意模块.这些节点构成了分层递阶结构,数据在各个层次间传输,在每一层上提供反馈.每一个节点由感知处理(Sensory Processing,SP)、环境建模(World Modeling,WM)、价值评判(Value Judgment,VJ)、行为生成(Behavior Generation,BG)4个模块与知识库(Knowledge Database,KD)、操控接口(Operator Interface,OI)等模块构成,它们的关系如图5所示[27].虽然4D/RCS架构在学术界应用普遍,但不是公认标准,且没有提供性能评估方法[28].

图5 RCS节点构造

2.4 云机器人系统架构

随着单体无人平台向集群无人平台发展,多机器人协作时服务器存储空间不足和计算速度不够的问题日益凸显,云计算的出现解决了这些问题.“云机器人(Cloud Robotics)”的概念是卡耐基梅隆大学KUFFNER J博士在Humanoids 2010 国际会议上提出的[29],它是云计算技术与机器人学的结合,即将机器人存储与计算的任务卸载到云端,并实现机器人单体间的学习与共享.

基于 M2M/M2C 模型的系统架构是目前比较主流的云机器人系统架构之一,该模型由Guoqiang Hu 等人提出[30],其整体系统架构如图6所示,其包括基础云和ad-hoc云两个互补的云结构,由M2M /M2C通信架构和弹性云计算架构两个子系统组成.其中M2M/M2C通信架构分为M2M与M2C两层,M2M层是在无线网络中的机器人群组成的协同计算群,M2C层是云端和机器人直接相连形成的计算群.ad-hoc云功能是与基础云结合弹性分配云端资源,其有如图6所示的对等模型、代理模型和克隆模型3种典型云计算架构,对等模型下每个机器人都是一个计算单元;代理模型下选择一个机器人作为连接云网络与机器人网络的代理;克隆模型下各机器人在云中均有一个克隆,任务可以在云端或机器人端进行[31].

云机器人系统架构是集群无人平台架构,规划了云机器人集群的组织模式,对于云机器人系统架构中的单体机器人平台,可以根据需求采用分层递阶式、反应式、混合式等单体无人平台架构进行设计.

图6 基于M2M/M2C模型的云机器人系统架构

3 地面无人平台体系架构发展趋势

1) 向多平台体系架构发展.

由地面无人平台体系架构研究现状可见,地面无人平台体系架构的研究早期主要是针对平台自身,如研究如何将单体无人平台系统模块化、如何组织各模块间的关系等问题[32].但在执行任务的过程中,单体平台的能力极为有限,多平台协同作业则可充分发挥每个单体平台的优势、弥补彼此的不足、提高任务完成效率,多地面无人平台系统以单体平台无法比拟的优越性已经引起普遍重视,多地面无人平台系统架构随之成为研究重点.

2) 向混合式体系架构发展.

反应式体系架构在处理简单任务方面比较实用,但随着作业任务的复杂化以及深度学习等技术的发展,学习能力成为地面无人平台系统向智能化发展的必备能力,融合反应式体系架构与分层递阶式体系架构的优点而形成的混合式体系架构已成为在地面无人平台设计中的优先选择,尤其是在位置环境的地面无人平台导航中采用该体系架构优势明显[33-34].但混合式体系架构仍存在一些关键问题需要解决,例如,如何实现基本模块的灵活组合,尤其是合理协调分层递阶式智能与反应式智能;如何处理各层次间信息与知识的交流;如何解决体系结构本身的自学习性以及易扩展性等问题[35-36].

3) 向模块化体系架构发展.

单体无人平台体系架构的发展趋势总体上可以用模块化概括.早期,无人平台采用集中式的设计方法,认为无人平台是硬件设备与控制软件的集合,设计时需要综合考虑软硬件各种因素,效率低下.随着无人平台复杂性的提高,这种各功能执行部件间呈紧密耦合的关系的平台架构已不再适用,随之诞生的模块化的设计思想将无人平台看作组件的集合,组件又包含部件与功能描述[37].基于这种思想的模块化体系架构中,不同的组件通过统一的软硬件接口呈松耦合状态,大大提高了架构的可复用性、可扩展性、可移植性、更新升级的简易性、设计的简明性等特性.地面无人平台的模块化主要借助地面无人平台的功能组成与结构分解,设定功能模块之间的组织关系,设定对各功能模块的功能性要求和性能要求等技术途径的实现.ROS便是践行模块化设计思想的典型代表,其首要设计目标是便于机器人研发过程中的代码复用[38].

4) 向标准化体系架构发展.

随着越来越多的异构无人系统的出现,为每一个平台建立体系架构并不现实.地面无人平台体系架构逐步从专用化向标准化转变,通过制定具备开放性、成熟性以及可用性的标准,形成通用的接口和服务、相关的数据模型、强大的数据总线和共享信息方法促进发展.标准化是开放式体系架构实现的基础.[39]

5) 互操作体系架构发展.

在复杂多变的环境下,为了实现异构的无人系统间的密切集成与合作,单一化的体系架构已经无法满足需求,增强各平台的互操作能力是多地面无人平台系统协作的基础.GJB/Z 144A-2015标准中定义互操作性为两个或两个以上的系统或应用之间交换信息并相互利用所交换信息的能力[40],该能力是无人系统、子系统、组件间交流协作的保障,未来所有的无人系统都将得益于互操作性的增强.因此,美国等先进国家均将无人系统的互操作性列为重点研究对象,例如为提高陆海空异构无人平台及有效载荷和外围设备间通用性,美国机器人系统联合项目办公室于2011年发布了第一版的无人地面车辆互操作性指导原则(Interoperability Profile,IOP).IOP定义了无人车互操作性接口和协议,包括总体规范、控制规范、有效载荷规范、通信规范等7个文件.美国地面无人系统路线图也将无人系统的互操作性研究列为重点,制定了如图7所示的无人系统的互操作性和模块化发展路线[41].

图7 美国无人系统的互操作性和模块化发展路线

6) 分布式体系架构发展.

在资源管理方面,集中式架构的思想是将所需的主机资源集中到少数的几台大型服务器上.服务器的高重量、大体积一方面无法满足地面无人系统对良好的移动性的需求;另一方面,移动需求势必带来服务器物理尺寸上的限制,从而造成服务器在处理大量数据与请求时能力受限;更重要的是,一旦核心服务器受损,整个系统便会瘫痪.而分布式架构则能很好解决这些问题,其思想是将轻量级服务器分布在每个无人平台上,从而使系统内的单体无人平台成为对等实体,该架构在提升平台移动性、系统处理效率、系统整体涌现性、系统可靠性与安全性以及防灾抗毁能力上优势明显.上文中例举的ROS架构便是分布式思想的典型体现,基于RCS以及JAUS架构的无人平台设计也都可以实现分布式软件架构.

7) 从单域向多域协作发展.

随着科研全球化的进程,世界各地的异构的无人平台层出不穷,建立统一的地面无人平台体系架构仅靠一个机构、地区是不够的,美国国防部已在世界各地的政府、工业界和学术界间展开广泛合作.协作开发的机制对地面无人系统体系架构的发展有巨大的促进作用.

此外,未来机器人将具有与环境共融、与人共融、与其他机器人共融的特征,机器人可能具有多模态传感,能够更加理解人类的需求[42],地面无人系统体系架构也随之向着能与作业环境、人和其它机器人自然交互、自主适应复杂动态环境的方向发展.并且,地面无人平台体系架构正逐步与云计算、大数据、机器学习等互联网技术融合,向着形成具有接入全球互联网能力的开放式体系架构发展,从而实现无人平台跨系统的预编程(即云操作)、结合机器学习的自主决策、人机智能融合、信息资源共享、相互学习等功能.云机器人架构便是传统的无人平台架构技术与云计算技术融合的实例.

4 地面无人平台体系架构关键技术

地面无人平台体系架构技术是为了促进地面无人平台与其它平台(包括有人平台与无人平台)之间、地面无人平台内部各组成部分之间的互操作,也为了促进技术重用和先进技术的及时插入,同时还为了对技术研究和产品研制提供规范性约束所需要加以研究的应用基础理论和核心关键技术的总称.其采用功能结构分解、控制流程分解、自主性能分解等方法,为地面无人单体平台与集群系统的设计提供基础与指导.为了适应上述的发展趋势,解决地面无人系统体系架构的开放性、模块化、标准化、互操作性等问题,需要以下关键技术作为支撑.

1) 互操作性技术.

在地面无人系统体系架构向具有互操作性的体系架构发展的趋势下,研究无人系统、有人系统、控制单元、载荷之间的数据传输方法,规范功能模块之间的信息交互协议、信息技术标准、交互数据帧的句法和语义,解决接口涉及到的信息传输、建模、处理、安全以及人机交互等问题是实现无缝跨域指挥控制无人系统、与之通信并利用和共享其传感器信息的关键.其中中间件技术是提高无人系统在控制、通信、数据、数据链等方面的互操作性的关键技术,中间件主要通过调整将来自不同传感器的数据标记和格式,从而实现异构无人平台间的无障碍通信和交互、提高无人系统的可维护性和发展速度、保证有人系统和无人系统安全运作和有效集成.中间件结构灵活,可以适应任意复杂的无人平台间的网络拓扑结构,其使得遵循相同的标准的任意第三方模块都可以融入原有的无人平台系统[43].CORBA和JAVARMI是目前极具代表性的两种中间件技术,但两者针对的都是整个计算机领域,开发属于我国的类似JAUS中间件这样针对无人系统的中间件十分必要.

2) 联合任务计算技术.

具备联合任务计算能力的无人平台体系架构能够满足各模块即插即用的需求,在不改变平台架构下能使多元异构传感器、执行单元的无缝接入与删减,实现集群的自动化部署、在线升级、扩容、缩容,为数据融合、满足任务时灵活多变的需求、整体架构的小体积、轻量化和模块化提供基础,有利于新技术的集成、提升架构的开放性.

3) 数据的发现、存储与处理技术.

地面无人系统架构需要支持无人平台获取、存储和处理及融合不同类型数据的能力.其中涉及到智能终端数据收集与指令下发、数据同步、分布式文件系统、分布式任务调度、远程过程调用、分布式协同服务、集群监控、资源管理等技术.

4) 针对无人平台领域的软件工程技术.

现有的关于软件架构的研究手段的讨论均是针对计算机领域的,如图8所示的5视图法和Philippe Kruchten提出的4+1视图法[44]等软件架构研究方法,基于架构描述语言的各类描述方法(ADL)和基于统一建模语言的描述方法(UML)[45]等软件架构描述方法,以及软件架构的评判指标、验证方法等.其实,软件架构与无人平台体系架构在解决系统模块化、可扩展性等方面具有一致性,在无人平台领域如何借鉴针对计算机领域的理论并作出适应性的改进与补充是当前无人平台体系架构技术发展急需做的基础工作[46].

图8 软件架构常用的研究方法

5) 信息安全技术.

系统的信息安全是一切的保障,如何抵御恶意攻击、防止信息泄露、软件的健康监控等问题、保障系统的信息安全、提高安全性与可靠性是无人平台体系架构设计时必须考虑的问题.

5 结束语

地面无人平台体系架构为地面无人平台的技术研究、产品研制提供规范性约束,保障系统模块化、可扩展性,是实现地面无人平台功能结构规范化、控制流程规范化、自主性能评估规范化的基础.构建合适的地面无人平台体系架构将促进平台之间、平台内部功能模块之间的互联、互通、互操作.本研究在阅读大量文献的基础上,对无人平台体系架构的概念进行了辨析,分析了ROS、JAUS、4D /RCS和云机器人系统架构等典型无人平台架构特点,提出了地面无人平台体系架构的发展趋势.最后从地面无人平台的需求出发,提出了和发展趋势相适应的基础理论关键技术.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!