您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Model Center   Code  
会员   
   
 
     
   
 订阅
  捐助
无人机软件架构知多少
 
作者:Fred Briggs,Wyle Aerospace Group 翻译:Top Liu
   次浏览      
 2020-9-27  
 
编辑推荐:
本文探讨无人机(UAV)系统的软件架构,对无人机系统设计已发表的软件架构方面文 献按时间进行综述与探讨。
来自于知乎,由火龙果软件Anna编辑、推荐。

本篇主要关注指挥和控制软件,并讨论情报、监视和侦察软件架构的 差异,其目的是为了呈现无人机软件架构是如何演变到目前状态。包括从技术软件架构规则 的早期发展到当前无人机软件在互操作性、通用性、视频压缩技术等方面问题,例如参考文献《软件架构:一门新兴学科的展望》,Garlan, D. and Shaw, M. (1996)1;《战场中的猛禽、 捕食者、掠食者及美国最新无人机》Yenne, W. (2010)2;《动态系统的软件使能控制和信息技 术》Samad, T. and Bala, G. (2003)3;《自主无人机实验的分布式架构》Doherty, P., Haslum P.,Heintz, F., Merz, T., Nyblom, P., Persson, T., and Wingman, B., (2004)4;《无人机智能系统软 件》Sinsley, G., Long, L., Niessner, A., and Horn, J.(2008)5以及《无人旋翼机系统》Cai, G., Chen, B., and Lee, T. (2011)6。研究比较了当前无人机开放式软件架构程序及其平台如捕食者、全球 鹰、飞马。完整的参考文献见附录A。

1 简介

“架构可定义为组件的结构及它们之间的关系,以及规范其设计和后续进化的原则和指南。简言之,架构是构造与集成软件密集型系统的深层次设计7“。也可称其为如何实施解决 方案的一个策略性设计(例如基于组件的工程标准、安全)和解决方案做什么的功能性设计(如算法、设计模式、底层实现)。

1996 年 Garlan 和 Shaw 在《软件架构:一门新兴学科的展望》1 中写到架构问题包括:系统组件构成的组织、全局控制结构、通信协议、同步和数据访问等。他们研究了软件开发者常用的系统组织模式,包括数据流系统、调用及返回系统、虚拟机、以数据为中心的系统(数据库)、分布式进程和特定领域的软件架构。针对给定问题或领域,确定最优秀的架构是一个永恒的挑战。Garlan 和 Shaw 展示了如何构造一个可变架构的设计空间,以及如何建立设计原则来根据功能需求选择应用系统。

Garlan 和 Shaw 列出了移动机器人的基本设计需求,如:(1)慎思规划和反应式行为;(2)容许不确定性;(3)考虑危险;(4)灵活性强。针对这些要求,他们评估了四种 用于移动机器人的架构,包括控制回路(control loop)、分层(layers)、隐式调用(implicit invocation)、黑板(blackboard),如图 1 所示。闭环控制解决方案推荐用于不处理复杂外部事件的简单机器人系统。分层构架能很好实现构件的组织,但是在实时环境中处理外部事件时其反应过慢。第三个 解决方案隐式调用围绕事件处理实现,用于任务控制架构(TCA)。

推荐 TCA 用于较复杂的机器人项目,并已在众多移动机器人上得到应用。TCA 为性能、容 错、安全性和并发性提供了一套完整的任务协调机制和规定。TCA 架构由位于同一层次的任务或任务树组成。在运行过程中任务树会作很多动态调整以适应环境条件和机器人状态的改变。第四种解决方案黑板构架由一个中心黑板或 数据库构成,负责接收和发送命令、共享数据和解决冲突。它支持并发性且有异常处理程序来处理不确定性。

图1 移动机器人架构类型

2 早期无人机

早 期无人机没有软件架构,是通过无线电(RC)控制技术发展起来的。在第二次世界大 战期间建造了数架实验无人飞机用于在远达 100 英里范围内测试航空鱼雷。二战后这些实验 飞机在 RC 飞机爱好者领域得到继续发展。RC 飞机是现代无人机的基石。1940 年前后,RC 飞机发展为 RC 空中靶机(后来作为侦察平台),服役于美国空军(USAAF)2。

第 一代军用无人机长度介于 8 英尺(ft)8 英寸(in)至 9 英尺 3 英寸之间,翼展长度介 于 12 英尺 3 英寸至 11 英尺 6 英寸之间。它们的速度从 85 英里每小时(mph)提升至 140mph, 且能续航 1 小时。如附录 A 表 1 所示,由无线电公司(1952 年被诺斯罗普公司收购)开发的 OQ-1 是第一架无线电控制的空中靶机(后改为侦察用),1940 年被美国空军收购。

20 世纪 60 年代,美国空军(USAF)开始使用“火蜂”和“闪电臭虫”,它们是美国侦察史上飞行时间最长的 RC 飞机。在 20 世纪,无人机主要用于空中靶机和侦察。AQM-34L“闪 电臭虫”在使用实时电视图像方面是 21 世纪无人机的先驱。它试用过电子雷达干扰器和 AN/ALE-38 箔条投放器。1995 年,美国空军在内华达州印第安泉辅助机场(克里奇空军基地(AFB) 成立第一个无人机中队——第 11 侦察中队 2。

20 世纪 70 年代至 80 年代冷战期间无人机被忽视。而卫星能力的显著增强,到 90 年代中期无人机已成为战场不可分割的一部分。

3 现代无人机

A.21 世纪第一代无人机 1

世纪之交,无人机发展得益于卫星能力的增强和计算机处理能力、算法发展、实时系统应用、机电飞控系统、视觉/雷达系统、导航系统、计算机集成武器系统方面的技术进步。第 一代的所有功能影响了软件架构的发展。

21 世纪第一代无人机起初由美国国防部用于空中靶机及执行侦察任务,后来无人机角色 拓展至远程战略性任务,最后是打击任务。由于任务的拓展,1997 年美国国防部重新采用“Q” 作为担负远程战略打击任务无人机的主用代号。

用 于长航时侦察的 Northrop Grumman 公司 RQ-4 全球鹰无人机是在本世纪初军方服役的 最大无人机。机身长 44 英尺,翼展 117 英尺,总重 25600 磅。General Atomics 公司的捕食者 也用于侦察任务,装备 Northrop Grumman 公司的 TESAR 合成孔径雷达(SAR),具有 1 英尺 分辨率和全天候侦察能力。2001 年捕食者加装了激光制导的 AGM-114“地狱火”空地反装甲 导弹成为第一架武装无人机,并在“持久自由行动中”由美国情报局(CIA)首次使用。美 国海军陆战队(USMC)的 RQ-2A 先锋(1980)和美国陆军 RQ-5A 猎人(1995)也同样在 战场上得到检验。21 世纪第一代无人机的技术细节见附录 A 中的表 2。

第一代的 Lockheed Martin 公司“星”和“全球鹰”借助全球定位系统具备完全可编程控 制系统,能实现从起飞到着陆的自主控制,也可使用通用地面控制站。

B.21世纪第二代无人机 2

21世纪第二代无人机得益于一代机的技术进步和载重、定位、侦察等任务能力的显著提升。“火力侦察兵”无人机是旋翼机,其飞行控制比固定翼机更复杂。“火力侦察兵”和X-47B设计定位是船上自主作业,这或许是软件架构的最大挑战。

2003 年4月,美国空军和美国海军启动“联合无人空战系统”(J-UCAS)计划。无人机提供激光目标指示,组织进行压制敌方空防(SEAD)任务,打击戒备严 密、高价值目标。“早在1997年,国防部机载侦察办公室架构集成总监空军上校Mike Francis曾对航空周刊的David Fulghum说,他的机构对武装无人机和能执行完整任务的武装侦察机及歼击机都有强烈兴趣。”2无人机并不是消耗品反而“减少消耗”——可以损失一架无人机而非一架满载机组人员的飞机。

如附录A中表3第一部分所示,一份波音X-45A技术说明书中显示其最大起飞重量为12190磅并于2004年3月24日在35000英尺高空以442mph的飞行速度成功投下一颗250磅的惰性炸弹。2后续的X45-C设计用于防守,最大起飞重量26500磅,可挂载两颗GBU-31联合直接攻击炸弹(JDAM)制导导弹。

美 国海军无人战斗机 - 海军(UCAV-N)计划的样机Northrop Grumman公司的X-47A飞马与美国空军无人战斗机(USAF UCAV)担负相的使命。这是一架隐形无人战斗机,执行监视、打击和压制敌方空防任务,但只部署在航母上。X-47A飞马无人机技术说明书显示其最大起飞 重量为5500磅。X-47B机身长38.2英尺,翼展62.1英尺,最大起飞重量为44567磅,载重为4500磅,可挂载两颗GBU-31 JDAM制导导弹。“X-47B与X-47A相比,续航时间更长、在航母上进行自主弹射起飞和降落过程中具有更强的生存能力和更好的低速空气动力学飞行性 能。”2

2003 年4月UCAV计划转变为联合无人空战系统(J-UCAS)计划,包括美国空军的X-45C和美国海军的X-47B。2006年X-45开发终止,联合计 划又改为美国海军UCAS-N计划。在官方2007情况简报中,美国空军声称:“所有无人机在指定的协调高度上执行任务时,必须有一套通用系统以实现便 捷、安全、无缝的操作”。2所指飞机包括美国空军MQ-1“捕食者”,RQ-4“全球鹰”,MQ-9“死神”和美国海军的广域海上监视(BAMS)系统2。

美 国海军陆战队的MQ-8BNorthrop Grumman公司“火力侦察兵”无人旋翼机于2002年开发,旨在遂行多种任务,具有自主着舰和舰上起飞能力,装备光电/红外系统、激光指示器,并为反 水雷装置增加了载荷。此型无人机任务包括战场管理、生化武器侦测、信号情报、电子战、战场搜救、通信和数据中继、信息战、反舰导弹防御和反潜。MQ-9B 是旋翼折叠时机长22.87英尺,旋翼直径27英尺6英寸,总重3150磅。这是第一架可在移动舰船上降落的无人直升机,于2009年首次作战部署2。

美国海军陆战队的Insitu/波音公司“扫描鹰”无人机是一架大航时战术侦察固定翼机。于2002年首次飞行,其24小时的续航能力远大于其他相似尺寸的无人机。最大起飞重量为44磅,拥有自主飞行(按照预定航线)和舰载执行任务能力2。

美 国海军的MQ-4C广域海上监视(BAMS)是一种多用途无人机系统(UAS),可用于攻击支援、信号情报以及通讯中继。MQ-4C BAMS UAS的任务包括海上监视、敌方战场信息收集、战场毁伤评估、港口监视、通信中继,以及支援以下任务:海上封锁、面上作战、战场管理、针对海上和滨海的打 击任务。在2008年的合同里,MQ-4C BAMS UAS采用一种Northrop Grumman的RQ-4全球鹰海军改进型,装备有360°多功能主动传感器(Multi-Function Active Sensor,MFAS),这种传感器是一种主动电扫描阵列雷达(active electronically scanned array ,AESA),以及海军特制的地面站2。

4 架构进化

2003年,在美国国防高级研究规划局(DARPA)的支持下——资助项目为软件使能控制(Software Enabled Control,SEC),Samad和Balas3编辑了一部学术专著。在当时,军用无人机只能靠预先编程或遥控操作。在SEC项目中,目标是使无人机“自动地执行高性能机动、动态调整路线、探测并规避威胁、辨识并校正故障、起飞降落、容忍极端环境变化…“。3在 SEC项目中,目的是将先进控制与一个由开放控制平台(Open Control Platform,OCP)实现的先进计算集成起来,OCP使用商用现货(COTS)组件和非专有接口。UAV控制应有一个在线优化引擎(问题求解算 法),由于飞机的实时快速动态特性,之前的此类算法在计算上是无法实现的。Samad和Balas指出“当前的计算资源足以实现复杂的状态和模型优化。”3

他 们同时观察到,一个严格定义的层级架构可以实现功能分割,如任务再规划、路线优化、威胁规避等,这些功能可以高效地集成但性能会有所损失。尽管如此,这些 层级结构仍会限制响应速度,因此他们建议寻找替代方案,如在生物学中所发现的那些。他们最坏的打算是——最终发现仅仅结合控制工程和计算机科学的研究将会 使UAV的操作方案变得复杂。

A. 开放控制平台

Paunicka等11作 为SEC项目组成员提供了一个开放控制平台(Open Control Platform,OCP),平台带有很多实时系统应用服务,可供控制工程师设计仿真。平台采用一种即插即用的设计,因此软件组件可以由不同单位在不同的 时间进行开发。此由波音公司领导开发,并基于波音Bold Stroke软件,中间件由华盛顿大学开发。

OCP是一种面向对象的软件基础构件,“提供一条将控制设计快速转换为桌面或嵌入式目标代码的路径,它使得控制设计师可以专注于控制设计而非集成、通信、发布、移植、执行、调度、系统配置和资源管理等软件设计问题。”11OCP 的内核采用了公共对象请求代理架构(Common Object Request Broker Architecture,COBRA),它基于一个用于任务航电系统的实时嵌入式中间平台及开放标准。

OCP包括:1)中间件基于实时CORBA (Copyright ? 2002, Object Management Group, Inc.),提供一个通信网络将对象按client/server关系连接至组件;2)仿真环境;3)工具集成支持;4)控制应用程序接口 (Application Programmer Interface ,API)。OCP中间件采用C++编写,并提供一个publish/subscribe环境,可在主机或其他分布式计算机运行而不必修改源代码。 CORBA也可以提供一个命名服务器检索并存储指向移动组件的引用。此服务及其他如图2所示11。波音使用了一个非常类似于CORBA的中间件在他们的F-15、F/A-18、AV-8B、T-45战斗机上,以及DARPA/USAF 无人作战飞机(UCAV)。

图2 OCP层级结构(2003)11

B. WITAS分布式UAV架构

Doherty等在2004年展示了“一种用于无人机实验的分布式架构”4, 以支持智能能力的开发。此分布式架构使用COBRA作为基础构建用于即插即用的软硬件环境,并且基于一种以反应为中心(reactive concentric)的软件控制方法。他们在瓦伦堡信息技术及自主系统实验室(WITAS)的无人机项目里使用了此分布式架构。WITAS是一个小型 -UAV直升机,用于监测和监视、紧急救援援助、摄影服务和测量。实验平台是一架Yamaha RMAX,长度为11.81 ft,最大起飞载荷为209 lbs。他们最大的设计挑战是控制系统有多个控制模式,可由架构激活以动态调用。此设计的软件架构包括一个慎思、反应和控制部分,因此不再是一个分层递阶 结构而是一个“以反应为中心”的架构。此反应中心的架构是一个高度分布、松散耦合、并发的架构,具有很多反应控制和并发运行的服务进程。CORBA是一个 将对象和组件连接起来的中间件,它通过一个通讯服务建立client/server关系。图3所示为WITAS架构的一些上层软件组件。

图 3 分布式UAV WITAS架构的软件组件(2004)4

C. ARL/PSU智能控制器

Sinsley、Long、Niessner和Horn 于20085探讨了一种UAV软件的既智能又自主的基于行为的架构,Long等人9发 表了多个可用于无人机应用软件架构的全面历史回顾(1986-2002)(这些架构都缺乏学习能力)。2008UAV智能系统软件研究采用了宾夕法尼亚州 立大学应用研究实验室的智能控制器(IC)架构。此IC架构是一种基于行为(相对于基于模型)的架构,设计采用层级控制,由于从下至上的模式增加了功能复 杂性。它经过改进,以满足协作能力的要求。图4所示IC架构包含感知和响应模块。感知模块通过接收传感器的输入数据建立一个外部真实世界的表示。响应模块 使用感知模块建立的真实世界的认知生成一个规划,来执行特定任务。

共分为三个层级,顶层为任务管理层,它响应中间层行为(如攻击规划实施)的控制请求。底 层行为层生成输出指令(例如给自动驾驶仪、传感器、发送信息)。只要不发生冲突,可执行多个行为。Long 等9指 出,IC架构的一些关键特性包括应对意外情况、自动实时动态规划、态势感知、常见的多机协作体系结构,以及列入新功能的灵活性和在任何层级可选的人机互 动。测试模型是一个固定翼的SIG Kadet Senior (总重14lbs),具有稳定的飞行特性和缓慢的飞行速度。

图4 ARL/PSU 智能控制器高层架构(2008)5

IC架构的深入讨论见Stover 和Kumar的“一种用于设计自主系统智能控制器的基于行为架构”10。

D. SheLion UAV系统

Cai, G、Chen,B.和Lee, T.在《无人旋翼系统》6介 绍了一种行为式的架构,并用于设计他们的小型SheLion UAV,也可推广用于更大的UAV。他们的软件实现了以下功能,如硬件驱动、输入/输出、控制律实施、设备操作管理、多任务调度以及事件调度。他们称使用 了一种新型软件系统/行为架构,为新的模块和控制功能提供了灵活性和可扩展性。他们指出此架构可以普遍应用到无人机,包括机载软件系统和地面控制站的软件 系统。

机上软件系统使用一个实时操作系统(RTOS),其中包括一个飞行控制和一个视觉处理模块,基于航电系统的硬件配置如图5所示。

图5 SheLion UAV系统的硬件配置 (2011)6

飞行控制模块使用多线程框架,用于操作导航传感器和伺服作动器、日志记录飞行数据、与地面站通信以及实施自动控制算法。自动控制采用基于行为的体系结构8。SheLion飞行控制系统的框架如图6所示。

图6 SheLion飞行控制软件系统框架(2011)6

一 个类似的框架用于板载视觉计算机的实时图像处理。图6飞行控制的软件框架将每个设备或任务画成框图形式。NAV块与GPS辅助姿态航向参考系统 (AHRS)进行交互,提供飞行测量数据并估计无法直接测量的飞行状态(自动控制所必需的)。CTL块实施自动飞行控制律。它由NAV块所生成的全局共享 数据得到飞行状态,根据飞行状态执行控制算法,并生成控制信号驱动伺服执行机构。任务管理使用多线程架构,在这种架构中,每个线程是一个单独的任务。任务 调度由MAIN线程执行,由高精度定时器(纳秒精度)发出一个脉冲信号,按照预定义的频率激活MAIN线程。根据功能的复杂性,分配给每个线程一个时间范围/槽。

Cai等16使 用基于行为的飞行调度块来区分不同的飞行模式。飞行计划可以存储在无人直升机的飞行调度块里或由地面站生成。任何无人机直升机的作业都被认为是带有特定参 数的特定行为(如控制信号和执行时间限制)。分层控制系统块(CTL)用于识别行为和实施相应的自动控制算法,驱动伺服执行机构。

SheLion的地面控制站是一个监控和指挥无人直升机的无线用户终端。在飞行测试中,数据由板载系统传输到地面站并显示。SheLion地面控制站框架如图7所示。

图7 SheLion地面控制站软件框架 (2011)7

5 未来无人机

根据2010年3月发布的“信息请求”(Request for Information ,RFI),美国海军请求额外信息用于一个无人舰载发射监视与攻击(UCLASS) UAV,以此作为诺斯罗普?格鲁曼 X-47B和飞马座(Pegasus)UCAS-D的后续。负责情报优势(N2/N6)的副海军作战部长(The Deputy Chief of Naval Operations,DCNO)已明确指出需要一种航母舰载机系统,以提供持续的情报、监视、侦查(ISR)以及精确打击能力。海军也对航母舰载作战无人机系统能够与有人机集成以加入航母航空联队的这一能力表示出兴趣。

6 结论

在1940早期,美国空军用作靶机后作为监视平台的遥控无人机并没有软件架构。21世纪无人机的先驱者,AQM-34L 萤火虫(1964-1975),装备有先进的技术装备,如电子雷达干扰器以及AN/ALE-38箔条投放器,可以能够实时电视图像传输。

世纪之交的无人机,得益于卫星通讯能力以及计算机速度、算法、实时操作系统、机电飞行控制、视觉/雷达系统、火控计算机等技术的发展。以上所有的第一代能力影响了软件架构的发展。General Atomics的捕食者以及Northrop Grumman 的RQ-4全球鹰是这一类无人机的主要代表。全球鹰设计为完全程序控制,利用GPS实现从起飞至降落的全程自主作业。他们同时设计有常规的地面控制站。

21世纪的第二代无人机得益于第一代的技术进步以及有效载荷、目标锁定、侦察和其他任务能力的显著增强。相比于固定翼飞机,火力侦察兵作为一种旋翼无人机,其飞行控制更为复杂。火力侦察兵和X-47B设计用于舰面自主作业,这或许是对软件架构的最大挑战。美海军的无人作战飞机(UCAV) Northrop Grumman的X-47B飞马座的设计用途为“长航时、高生存能力,和用于自主舰上起降的低速空气动力飞行品质”2。

美国海军的广域海上监视(BAMS) MQ-4C是一种多用途无人机系统,可用于攻击支援、信号情报以及通讯中继。这是一种Northrop Grumman的RQ-4海军改进型,装备有360°多功能主动传感器(Multi-Function Active Sensor,MFAS),这种传感器是一种主动电扫描阵列雷达(active electronically scanned array ,AESA),以及海军特制的地面站。

本文所研究的UAV采用了一种以下架构的组合方式,如图1Garlan and Shaw1所总结的软件架构所示——控制回路、层级、隐式调用以及黑板。具有层级结构的基于行为架构(vs.基于模型)即使不是最优的UAV软件架构,也是最为流行的。使用实时系统以及自主控制器是当前的尖端科技。Samad与Balas在2003时预测道“计算资源目前足够执行复杂的状态和模型优化(用于飞行器的实时快速动态)”3。Doherty等使用CORBA/client server/distributed “具有多个交互控制和同步发生服务进程的架构” Sinsley、Long等5使用ARL/PSU智能控制器开发了一个最接近于人工智能软件的飞行控制器,此控制器使用了基于行为的架构。一种形如Paunicka等人11的无人机CORBA/分层架构已经应用于舰载F/A-18飞机,应当也适合于未来的UCLASS自主舰上起降。以上为自1940年代的无线电(非软件)控制直至最近的进进展。

美国国防部计划在下个十年总计增加45%的UAV储备13,并且有一个无人控制系统(Unmanned Control Systems)的控制部分工作小组(Control Segment Working Group)来建立一个无人机地面站的共同架构和开放标准14。美国海军已经发布一个信息请求,需要在21世纪30年代用新的第六代战斗机来取代Boeing F/A-18E/F超黄蜂和EA-18G 咆哮者舰载机,取代者很有可能会是无人机。

 

   
次浏览       
相关文章

企业架构、TOGAF与ArchiMate概览
架构师之路-如何做好业务建模?
大型网站电商网站架构案例和技术架构的示例
完整的Archimate视点指南(包括示例)
相关文档

数据中台技术架构方法论与实践
适用ArchiMate、EA 和 iSpace进行企业架构建模
Zachman企业架构框架简介
企业架构让SOA落地
相关课程

云平台与微服务架构设计
中台战略、中台建设与数字商业
亿级用户高并发、高可用系统架构
高可用分布式架构设计与实践