惊艳世人的NASA火星无人机,究竟是怎么设计出来的?

人工智能
「毅力号」火星车搭载的「机智号」火星无人机,在无需人为干预的情况下,灵活实现火星表面的降落、起飞与航行。

如果一切顺利,那么「机智号」将成为第一架翱翔在火星上空的飞行器。

这架名为「机智号」的无人直升机,被吊装在「毅力号」火星车的肚子下面,一路送往那颗红色星球。机智号本体只有 1.8 公斤重,一盒纸巾大小,四条机械腿上却装有两根长达 1.2 米的碳纤维旋翼。除了拍照它不执行科学任务,主要是验证在火星上自主飞行的能力。

为了完成这项艰巨的任务,「机智号」必须经受住一系列考验——严酷的温度、苛刻的功率限制,并在距离地球达10光分的火星上完成90秒的飞行任务。由于距离过远,实时通信或控制显然无法实现,它必须自主飞行。

那么NASA喷气推进实验室(JPL)是如何设计这架直升飞机的?我们采访到NASA JPL火星无人机行动负责人Tim Canham。

 

[[383000]]

 

整个设计过程最重要的策略,是权衡设计与火星无人机的任务背景,这也是本次技术演示的最大意义所在。「机智号」并不需要像「毅力号」火星车那样完成科学考察工作;相反,它只需要做好自己的本份,飞行一段距离。如果运气好,「机智号」还可以捕捉几张航拍图,仅此而已。这项任务的价值在于,我们要证明低空飞机器能够在火星表面飞行,并收集更多数据,以指导下一代火星旋翼飞机的设计与制造工作。一切只是开始,更令人兴奋的远景发展还在后头。

「机智号」不需要刻意完成任何复杂的任务,因为光是火星无人机这个概念就已经足够复杂了。在火星上放飞无人机极具挑战性,除了功率与通信限制之外,还有一项核心挑战——火星的大气密度仅为地球的1%。

考虑到上述情况,Tim Canham告诉我们,「机智号」只要能够在火星表面成功起降一次,对NASA来说就已经是场辉煌的胜利。Canham协助开发了指挥「机智号」运行的软件架构。作为「机智号」运营团队的负责人,Canham目前主要处理无人机计划与「毅力号」火星车团队之间的协调工作。通过交流,我们希望深入了解「机智号」无人机如何在火星表面自主实现起降飞行。

问:您能聊聊「机智号」无人机的硬件配备吗?

Tim Canham: 「机智号」无人机属于技术演示项目,所以JPL愿意为此承担更高的失败风险。这一点与火星车乃至深空探测器不同——后者属于B级任务,不少NASA员工已经在这部分硬件与软件开发工作中投入了多年时间。

对于纯技术演示,JPL倾向于尝试更多新的实现方式。因此,我们决定尽可能摆脱手工件的束缚,大量采用现成的消费类硬件。目前市面上已经存在很多坚实耐用且能够抵御辐射的航空电子元件,而且大部分技术属于普通商业级产品。

以处理器为例,我们使用的是高通公司提供的骁龙801芯片。它实际上就是一块手机处理器,而且体积非常小巧。不瞒您说,骁龙801实际上是此次任务中最先进的处理器,其性能反而比「毅力号」火星车上的处理器强大得多。事实上,这块无人机使用的芯片拥有比火星力高出几个数量级的算力,负责通过500 Hz主频在制导期间循环运行,以保持无人机在火星大气中的平衡飞行。更重要的是,我们还需要捕捉图像并分析特征,同时以30 Hz频率逐帧跟踪画面内容。总之,这些任务都对处理器性能提出了极高要求,而NASA目前使用的一切航空电子元件都达不到要求。实际上,我们已经开始从SparkFun上订购零件。我们的理念非常简单:虽然这些只是商用硬件,但我们会进行全面测试;只要效果良好,就应该可以直接使用。

[[383001]]

问:能否介绍一下「机智号」使用的导航传感器?

Tim Canham: 我们使用的手机级 IMU、激光测高仪(来自SparkFun)以及向下的 VGA 摄像机进行单眼特征跟踪。导航时,无人机逐帧比较几十个特征,以跟踪相对位置找出方向和速度。这一切功能都会通过位置估计来完成,而不需要记住特征或创建地图。

惊艳世人的NASA火星无人机,究竟是怎么设计出来的?

图:NASA机智号无人机底部图,可以看到其上搭载的激光测高仪和导航摄像机。

我们还装有一台倾角仪,用于在起飞时确定地面的倾斜度。另外,无人机上搭载一个1300万像素的手机级彩色摄像头——与导航无关,我们只是希望在飞行过程中拍摄几张精美的照片。我们将其称为RTE,以缩写方式称呼各类系统也是太空项目的传统。其实我们之前还考虑过在系统中加入危险检测功能,但时间有限最后只能作罢。

问:这架无人机是怎么自主飞行的?

Tim Canham: 其实你可以把这架无人机理解成某种传统的JPL航天器,其中安装一套排序引擎,我们为其编写了多条序列、相关命令,再将文件上传其中以供执行。

在模拟过程中,我们将低空飞行的制导部分划分成多个途经点,每个途经点都对应着我们在制导软件中设定的一条命令序列。在需要飞行时,我们会向无人机发出指令,之后即由制导软件接管并完成起飞、穿越各途经点、以及最后的着陆动作。

但这种方式中的每个途经点都经过特别设计,不能算是真正的自主飞行——我们并没有设定任何目标与规则,也没有做出任何高级推理,所以这只能算是半自主方案。更简单直接的方法就是,指定专人通过操纵杆远程指挥其飞行,但地球距离火星太远,即时遥控根本实现不了。面对紧张的项目时间表,我们只能提前制定出大体飞行计划,帮助无人机理解需要完成的预定飞行轨迹。在实际飞行中,无人机本身会根据风力、风向及其他实际环境因素调整飞行方式,保证始终沿既定航线前行。这同样是种半自主方案,用以顺利完成发射前制定的飞行路线。

就个人看来,我觉得这不能算是高级自主技术,而更多只是一种脚本式的飞行导引。只有直接要求无人机“给那块岩石拍张照片”、它就能照做,才算真正的自主飞行。但作为初始任务,我们这次只需要证明飞行器能在火星地表成功飞行。至于全自主飞行方案,我们会在后续任务中逐步尝试,这可能需要制作一架体量更大的无人机、搭载能够实现更强自主功能的先进硬件。

说起这个,我们不妨回顾火星上的第一位访客——探路者号。它的任务更简单:绕基地先进一圈,最好拍下岩石及其他样本的照片。因此作为初步技术演示,我们对火星上的第一架无人机也没必要苛求过多。

问:在某些极端情况下,无人机有没有可能偏离预定飞行路线?

Tim Canham: 制导软件会持续检测各传感器的运行状况,保证生成高质量数据。如果传感器发生故障,无人机确实会做出相应反应,即保持最后一条飞行指引信息、尝试着陆,而后向我们发送情况报告并等待处理意见。总之,在检测到传感器故障后,无人机将停止飞行。我们一共在机智号上安装了三个传感器,都与飞行过程紧密相关,三者的数据将融合起来共同为机智号提供导航指引。

惊艳世人的NASA火星无人机,究竟是怎么设计出来的?

图:一位艺术家为此次火星飞行任务绘制的想象图。(图片来源/NASA/JPL-Caltech)

问:初始飞行计划是怎么制定出来的?

Tim Canham: 我们经历了全面的选址过程,一切以「毅力号」火星车预计降落地点周边的环境为起点。根据实际情况,我们整理出轨道图像,并从中粗略识别出火星车将先后抵达的多个点位。结合周边岩石的坡度、高度乃至特定区域内的地表纹理,我们精心选取了适合无人机飞行的区域。

这里同样有不少权衡因素——最安全的地表应该没有任何纹理,代表这一块区域没有岩石;但这种缺少纹理的地面,也可能令无人机无法准确捕捉其特征、进而失去制导能力。为此,我们最好选择一片易于跟踪特征的碎石滩,同时保证这里没有任何可能威胁着陆过程的大石块。

问:这架无人机计划完成哪些飞行任务?

Tim Canham: 因为只是第一次尝试,所以我们只规划了三项主要任务,而且起降点全部选在同一位置。只有这样,才能保证无人机始终处于经过调查的安全飞行区域内。我们的时间窗口也非常有限,只有30天。如果时间再宽裕些,我们可能会尝试让其降落在其他看起来比较安全的新区域。但至少三项既定任务都是起飞、飞行、而后返航并降落在同一地点。

问:JPL拥有丰富的机器人制造经验,开发的机器人往往能够在主要任务完成后长时间保持正常运作。但这次只设定30天的任务执行周期,是否意味着除非发生意外事故,否则这架功能仍然完好的无人机将被直接遗弃在火星表面?

Tim Canham: 是的,计划就是这样,火星车会前往别处继续执行主要任务。毅力号团队已经为我们划拨了不少资源,留下了30天的时间窗口,我们对此深表感谢。在此之后,无论无人机状况是否良好,火星车本体都会继续前进。所以我们可以随意安排飞行任务,但绝对不能超过30天时限。

目前我们还没有规划好最后两轮飞行,但根据前三轮飞行任务的执行速度,我们可能会有一周左右时间做点新鲜的尝试。不过当下,我们还是要先认真把前三轮任务做好。

只要能成功完成一次飞行,我们的目标就算是基本实现。接下来我们会略微扩大飞行范围,如果仍然成功,那么最后两轮飞行就可以稍微冒点险了。比如我们可能会飞上一百米,或者做个大回环之类的动作。但最重要的是,理解无人机在火星表面的飞行方式,所以第一轮任务最重要,我们得认真观察无人机的飞行能力。

问:假如前四轮飞行一切顺利,那么在最后一轮尝试中,您打算设计怎样的飞行任务?是做点风险比较大、但成功后意义重大的尝试,还是风险较小、但重要性同样偏低的尝试?

Tim Canham: 这是个好问题,我们也在认真思考。如果只剩一轮飞行机会,再考虑到反正这架无人机终究要被遗弃,我们可能会做点大胆的探索。但现在我们还没到这一步,目前值得关注的只有前三轮飞行,之后的红利部分稍后再研究。

问:JPL的工程师们在探索中还有哪些特别的发现,能给我们讲讲吗?

Tim Canham: 这是我们第一次在火星环境下使用Linux。没错,我们的无人机用的是Linux系统,软件框架则是JPL内部开发的立方体卫星与仪器专用框架。

几年前,我们已经把项目开源,现在大家可以直接通过GitHub下载火星无人机上的飞行软件,把它用在自己的项目当中。这是开源领域的一场辉煌胜利,我们把开源系统与开源飞行软件框架,同商用零部件整合了起来。

如果你想亲自尝试,也完全没有问题。对JPL来说,这种结合还是新鲜事物,以往我们大多使用特别安全、特别可靠的部件。但这一次灵感碰撞让人们感到兴奋无比,我们也期待这种新思路能在未来迸发出更大的能量。

 

责任编辑:姜华 来源: 科技行者
相关推荐

2021-04-20 09:49:32

人工智能无人机技术

2019-04-26 13:55:02

Istio微服务架构

2021-02-19 20:38:01

互联网卫星系统

2019-07-22 15:29:53

JavaScriptGitHub语言

2019-06-04 14:15:08

JavaScript V8前端

2021-08-24 10:57:24

Linux文件系统内存

2021-06-11 11:34:37

脸书Facebook商业帝国

2011-02-28 09:51:43

内省

2021-04-19 16:39:59

无人机人工智能AI

2011-02-16 16:13:40

Debian

2023-11-24 17:20:41

无人机无人驾驶飞行器

2015-08-26 09:54:19

物联网

2021-08-17 09:29:32

人工智能设计AI

2017-06-30 15:45:33

消费

2011-08-04 13:24:28

IT运维

2012-05-28 22:49:50

PureView

2022-06-13 09:51:35

UWB超宽带无线载波通信技术

2020-06-11 09:18:34

动静分离架构架构设计开发

2010-08-24 09:19:59

2018-07-05 16:15:26

缓存数据cache miss
点赞
收藏

51CTO技术栈公众号