DesignSpark Electrical Logolinkedin
菜单 搜寻
提问问题

土星:阿波罗计划中的智能火箭

图片版权:NASA

电影“登月第一人”于本月在英国上映,纪念尼尔•阿姆斯特朗的一生。阿姆斯特朗是第一位踏上月球的人。阿姆斯特朗和奥尔德林驾驶着外形像蜘蛛一样的登月舱,在燃料所剩无几的情况下安全着陆,这个戏剧性故事已家喻户晓。就公众而言,阿波罗的硬件包括指挥舱和登月舱。工程师们对这两个舱安装的阿波罗导航计算机的技术惊叹不已。所有人都忘记了将宇航员送上太空的另一个飞行器:工程奇迹土星五号运载火箭。一飞冲天,但它的任务只持续了几分钟——没有什么复杂的:只是一个非常大的烟花,对吧?

阿波罗 6 号:最后一次无人试飞

错了。阿波罗 6 号本应是阿波罗 7 号首次载人飞行前的最后一次无人试飞。但是,当严重的纵向振荡(Pogo 效应)开始出现时,第一级助推器 (S-IC) 在即将分离前出现了问题。这可能会导致结构破坏,特别是随着火箭不断升空,碎片开始脱落。幸运的是,一切仍然结合在一起,第二级 (S-II) 在第一级分离后点燃。但是在任务控制中心内,人们刚刚放下来的心,马上又提了起来:五个引擎中的一个几乎立即开始失去动力。它是自动关闭的,随后在火箭同一侧的另一个引擎也完全失效。阿波罗 6 号现在遇到了真正的麻烦:在它的设计中,没人预计到在第二阶段会有两个引擎发生故障,这两个引擎导致了严重的不对称推力。然而,不知何故,这台命运多舛的火箭继续沿着正确的轨道飞行,尽管有些不规律,最终到达了地球轨道。这本应是一次灾难性的失败。但是相反,阿波罗 7 号按计划使用较小的土星 1B 火箭,阿波罗 8 号也使用土星五号火箭。阿波罗 6 号的故障很快就被发现并修复了。Pogo 效应源于燃油系统的不稳定,摩擦生热造成密闭空间内的水分和空气膨胀,从而冲破外壳——钻一些通风孔就解决了这个问题,而且经追踪,第一个引擎故障归因于燃油管路设计错误,而接线错误导致了第二个引擎关闭。尽管存在这些问题,土星仍有能力完成任务,这给了 NASA 启动载人飞行计划的信心。烟花怎会有如此高的容错性呢?

土星仪器舱 (IU)

IU 由一个直径约 6.5 米、高 1 米的圆环构成,位于第三极 (S-IVB) 上面,其内表面周围分布有土星的电子设备。

土星五号运载火箭在将三名宇航员安全送入地球轨道的任务中从未失败过。这是一项现代化技术,一架智能火箭,由名为运载火箭数字计算机 (LVDC) 的“嵌入式”容错数字计算机控制。土星是名副其实的自主运行:原则上,当火箭载满燃料并在发射台上时,只需要将目的地的 3D 坐标输入 LVDC 并按下发射按钮。宇航员和任务控制中心只需要监测遥测,直到 S-IVB 引擎在轨道的预定点关闭。发射火箭进入轨道需要三个阶段:

  • 从发射开始,S-1C 助推器将 3000 吨重的飞船送入高层大气,仅运行两分钟,然后将飞船加速到 8500 公里/小时。LVDC 通过按照预先设定的时间顺序给发动机喷嘴“装上万向架”来控制火箭。由于担心可能会应用较大的修正,对结构造成过大的压力,因此无法从机载陀螺仪平台得到反馈。正是在这段时间,在大气阻力的作用下,达到最大应力点“Max-Q”。与 LVDC 并行工作的是紧急探测系统 (EDS),它监控关键系统,包括自身独立运行的加速计和陀螺仪。EDS 可以感应到是否发生了灾难性事件,并能指挥中止运行,发射逃生火箭运载太空舱到安全的地方。EDS 一直处于自动运行状态,直到超出 Max-Q,因为宇航员可能无法及时对警告做出反应。达到 Max-Q 之后,EDS 仅在指挥官面前亮起指示灯,由他决定是否转动手中的中止手柄。
  • LVDC 执行“分离”并启动 S-II 引擎。到目前为止,在开环控制下,飞行轨迹已能接近垂直。现在,控制回路通过使飞行控制系统及其陀螺平台结合来关闭,以引导火箭进入预定的轨道。自动驾驶仪可以有效地补偿风力和发动机性能的变化。
  • 最后发射第二级助推器,并由 S-IVB 接管,同样使用自动驾驶仪,直到以 28000 公里/小时的速度到达指定的轨道位置。

以上所有操作只需 11 分钟,尽管如此,IU 仍有两项任务:为月球设定轨道,在登月舱被取出后,将 S-IVB 送到月球表面另一处的迫降地。

阿波罗 12 号的考验

除了阿波罗 12 号引起过巨大恐慌外,其余的登月飞行,至少就 IU 而言,在很大程度上都是平安无事的。仅这一事件就证明了为火箭配备独立于指挥模块的自有控制系统 (IU) 这个设计决定是明智的。发射后不久,驾驶舱就出现一道眩目的闪光——飞船被闪电击中。立刻,控制面板失灵,警告灯全部亮起。在任务控制中心内,火箭传回的遥测数据全部是乱码。土星 EDS 是自动运行的,但它并没有触发中止,因为在所有相关人员看来,S-IC 仍在轨道上正常运行。指挥官皮特·康拉德紧握着中止手柄,当无线电断断续续传来指令舱宇航通讯员那句著名的“尝试将 SCE 转为辅助”时,他犹豫了一下。宇航员艾伦·比恩按下了开关,所有驾驶舱显示器和遥测设备都恢复了正常,EECOM 飞行管制员约翰·亚伦成为了民族英雄。其他“英雄”、IU 和 LVDC 的光环在很大程度上被掩盖了。

我们学到了一个惨痛的教训:不要把火箭发射到风暴云中。尾气中的离子化气体在火箭和竖架之间形成极佳的导电连接,很容易引起雷击!

土星运载火箭数字计算机 (LVDC)

如今的计算机工程师对 LVDC 的基本功能绝不陌生:时钟生成器和时序逻辑、算术逻辑单元、程序计数器、程序 RAM 等等。如今,所有这些功能都包含在一个名为微处理器的封装硅芯片上。为了与现代微处理器比较,下面列出一些 LVDC 的重要统计数据:

  • 时钟频率:2.048 MHz
  • 字长:13 位+ 1 奇偶校验位
  • 总线系统:串行
  • 每条指令的时钟周期:168(对于乘法/除法,时钟周期更多)
  • 处理速度:12190 条指令/秒
  • 内存:磁芯,多达 3.2 万字,双工单位校正

请看 2,这是一个拆除了前盖板的 LVDC。里面有许多小插件模块,每个模块由两个背对背的印刷电路板组成。每个印刷电路板包含多达 35 个看起来像现代集成电路的东西。事实上,它们本身就是微小的印刷电路板,在陶瓷外壳下包含一些二极管或晶体管芯片和电阻,连接起来提供四输入逻辑或非门。除了“芯片”的末端形成一个夹子,抓住微型印刷电路板边缘的衬垫外,他们看起来就像现代的 14 针表面安装 (SMT) IC。这意味着可以通过滑动来拆卸它们,留下引脚。我猜测之所以使用这个快速更换系统,是因为这些微型手动焊接模块在最初的测试中不能正常工作,或者未能通过后续的压力测试。一个有效的飞行板上面将覆盖环氧树脂,将所有电子元件固定到位。关于 LVDC 的详细文档仍然很少,这些信息来自于最近的一次“拆卸”,详情请见此处

从这里开始事情变得复杂得多。LVDC 实际上由三个并行运行的相同处理器组成,从而提供三重模块冗余 (TMR)。这在三重电路中没有太大的意义,除非有某种方法来识别有故障的组件并减轻其影响。LVDC 使用表决逻辑( 3)监控每个处理器各功能部分之间的串行总线。

每个数据位都要经过表决电路逻辑才能进入下一部分。通常,每个表决电路的三个输入都是一样的,不是 000,就是 111,所以三个输出都是 000 或者 111。但是,如果反转一个数位,使输入变成 100 或 110,您可以从真值表中看到输出仍然是 000 或 111。永久或瞬时错误会被自动检测和纠正。多余的副作用是,在进行飞行前检查时这些缺陷可能会被掩盖。通过添加如图所示的 3 输入异或门来避免这种情况。当所有输入都相同(000 或 111)时,异或门输出为 0。其他任何输入都会得到逻辑 1 输出,发出错误信号。错误检测信号只在发射前进行检查时被监控,避免任务从已有缺陷的硬件开始!

内存可以分为两个冗余块(双工模式)。每个块包含相同的数据或程序代码。从一个块读取一个字,然后校验奇偶校验位。如果出现错误,则从另一个块读取相应的字,然后将其写入第一个块以纠正错误。

事无大小

LVDC 程序代码控制的系统操作不仅复杂,而且功能强大且危险。五台大型一级发动机提供 60 千兆瓦电力,以每秒 2.5 公吨的速度燃烧五台 53,000 马力的泵输送的燃料。一个小小的程序错误,尼尔·阿姆斯特朗在发射期间就将性命不保,更不用说登陆月球。当您下次调试一些程序代码时,请慎重考虑……

后记

自 20 世纪 60 年代以来,使用冗余部件进行高可靠性计算一直是军用和商用飞机设计的重要组成部分。目前,这对于电子辅助驾驶 (ADAS) 汽车的安全运行至关重要,当然也包括完全自主驾驶汽车。设计人员越来越多地使用多个“软”处理器内核来编写 FPGA。可以使用一些工具来扫描 FPGA 布局并确定在何处插入表决逻辑以达到期望的可靠性水平。LVDC 沿用下来的功能可能是防止某天您的汽车系统出现故障而引发事故。土星的任务很短,TMR 为 LVDC 带来了 99.6% 成功运行 250 小时的可能性。未来的汽车需要做得更好。

如果您暂时想不出做什么,可以关注我在 Twitter 上发布的文章。我会贴出关于新的电子产品和相关技术的文章链接,也会转发我读到的关于机器人、空间探索以及其它话题的文章。

Engineer, PhD, lecturer, freelance technical writer, blogger & tweeter interested in robots, AI, planetary explorers and all things electronic. STEM ambassador. Designed, built and programmed my first microcomputer in 1976. Still learning, still building, still coding today.

21 Nov 2018, 8:52