当前位置:地图标注资讯马斯克招游戏工程师“造飞船”!详解龙飞船触
马斯克招游戏工程师“造飞船”!详解龙飞船触
2023-06-15

SpaceX 载人发射的成功被誉为全球商业航天领域的里程碑事件,龙飞船在太空遨游 19 个小时后与国际空间站完成“一键”对接,自动化程度之高就像是空间站专线“摆渡车”,像极了科幻小说里描绘的那般。

当宇航员们有说有笑地打开飞船舱门,飘进空间站的那一刻,不少观众大呼真牛的同时,可能还有种错觉,什么时候载人航天变得如此轻松简单?

这或许要拜马斯克激进的创新理念所赐,不断改写诸多不可能。过去几年,SpaceX 多次回收利用一级火箭的壮举让人惊叹,这直接将运载火箭发射成本降低了 30%,重复利用次数越多,越经济划算。

相对而言,这次龙飞船载人航天的另一大进步想必大家也有所注意:

整洁宽敞的飞船舱内,宇航员观测几块触控大屏,轻点几下,操作少许物理按钮,一次要与国际空间站对接的、复杂的载人飞行任务就这样被搞定了。

图|龙飞船对接国际空间站(来源:SpaceX)

在我们的以往印象中,载人航天是极其严肃的一件事。宇航员都是国家万里挑一的顶尖人才,他们要有着超强的身体机能应对恶劣的太空往返环境,经过周密的培训,操作着人类最复杂和昂贵的航天设备,面对超多的按钮和显示仪表,每一步操作都严苛不容差错,还得具备超强的心理素质应对各种突发情况,随时为最坏处境做好献身的觉悟。

而 SpaceX 龙飞船的设计,就像是一个大玩具和太空游戏操控室,不仅在商业载人航天飞船机动性和可靠性方面迈出了一大步,在操控方式和交互系统层面,也改变了航天设备的旧有形态。

图|历代航天器操控界面的变化(来源:NASA)

或许有一天,一个普通人经过“航天模拟器”的操作培训,掌握一些应急操作,就能驾驶这样的飞船进行太空飞行。

于是乎,不少充满好奇的网友针对这套操作系统和用户界面后的技术栈展开了有趣讨论。

JavaScript 上天了

SpaceX 龙飞船中的新触控交互操作系统意味着什么?

首先,这可能意味着编程语言不分高低,JavaScript 一样能上天!

TensorFlow.js 的资深 DA(负责开发者关系)Jason Mayes 在 Twitter 上表示,SpaceX 使用 Chromium+JavaScript 开发龙飞船的交互界面,与 C++ 一起用于航天计算机。JavaScript 不是“玩具语言”,是时候接受它了。

图|Jason Mayes 发帖透露出 SpaceX 相关信息(来源:Twitter)

而知乎网友 doodlewind 对此给出了更诙谐的评论,

经过此次太空任务,开放的 Web 技术就此成为了人类首个应用到载人航天领域的 GUI 技术栈,这对数百万前端开发者们来说是个更为历史性的时刻:

图|网友 doodlewind 的评论(来源:知乎)

SpaceX 的技术研发工作基本都处于保密状态,具体是怎样做的开发?

在国外的一个关于程序设计的问答网站 Stack Exchange 上,早在 2015 年就有关于猎鹰 9 火箭使用什么计算机和软件的话题讨论。开发者 TJ Tarazevits 发帖称,通过在 GDC 2015/2016 期间与多位 SpaceX 工程师的讨论,得到了一些详细信息。

SpaceX 使用一个 Actor-Judge 系统为其火箭和航天器提供三重冗余。猎鹰 9 火箭有 3 个双核 x86 处理器,每个核心都独立运行一个 linux 实例,飞行软件是用 C/C++ 编写的,在 x86 环境下运行。

对于每个计算/决策,“飞行字符串”都会比对不同核心的处理结果。如果存在不一致,则字符串不正确,不发送任何命令;如果内核返回相同的响应,字符串则会将命令发送到火箭上的各个微控制器,这些微控制器控制诸如发动机和栅格翼之类的部件。

三重冗余提供了系统辐射耐受性,无需昂贵的抗辐射部件。

SpaceX 对所有的飞行软件进行测试,可以称之为“

桌上火箭

地图标注    手机版    网站地图    QQ号:57780188