茫茫星海中,旅行者一号与人类文明《百分之一的长旅》【航天史填词】(历史替歌投稿祭
炙弹冰
2024年05月03日 14:15

自从去年的11月起,评论区中大家的情绪就开始不断地起伏“唉旅行者似了qaq,哎又活了( '▿ ' ),唉还是似了qaq...哎怎么又活了( '▿ ' )”

那么具体发生了什么事呢?正好我期末复习有点累了,

简单写个小科普( '▿ ' )

(资料来源主要是nasa和jpl以及民间爱好者的一些博客,因为我相关专业的知识并不成熟,而科普应当做到严谨,所以若有错误请各位务必指正)

我们要知道,旅行者的电脑系统由三个部分组成:

  1. CCS(Computer Command Subsystem 计算机指挥系统) 主要负责序列控制和功能控制。程序包括对于命令进行解码,运行故障保护程序高增益天线指向信息(HPOINT 那个3米7的大白盘子)以及航天器的序列控制信息 (在70年代时NASA的侧重点在阿波罗计划这些载人航天上,因此削减了这些无人探测器的预算,所以为了省钱,这个CCS和海盗1,2号上的是同款)

  2. AACS(Attitude and Articulation Control Subsystem 姿态控制系统) 负责控制航天器的定向,保持高增益天线(HGA)与地球之间的对准,并控制姿态的运动。

  3. FDS(Flight Data Subsystem 飞行数据系统) 负责配置和操作科学仪器,收集工程数据和科学数据然后把他们打包好,然后TMU(telemetry modulation unit 遥测调制单元)和天线才能把这些数据传回地球。

(CCS)

(FDS)

这次出问题的是FDS系统。从去年的11月份开始,工程师们就发现旅行者发回的科学工程信号变得不可读了,变成了一串串没有意义的0和1。这个时候大概就是评论区的朋友们开始第一波上香悼念的时候。不过我个人感觉在此刻将这种状态描述为“失联”其实是有些不准确的,因为旅行者其实一直能接收来自地球的通讯,甚至还能用自己的天线将数据发回来——虽然是损坏的数据。

怎么办呢?在今年三月份,工程团队对旅行者小姐下达了一个 “poke” 指令,使她回传了FDS的内存的读数,其中包括计算机的软件代码以及变量。通过这次读数,团队确认了大约3%的FDS内存出现了损坏。

草,不会是heap buffer overflow吧,我好像是为了从复习的阴影中走出才开始写这个小短文的。

——其实还真不一定是缓冲区溢出这种软件错误,更有可能是设备老化的原因导致的硬件损坏,毕竟旅行者小姐的设计寿命只有5年,但现在已经过去快50年了

——或者是某个高能粒子撞击芯片,导致了:

  1. 单事件翻转(Single Event Upset, SEU):这是最常见的一种效应,高能粒子通过撞击内存单元,导致其存储的数据位从1翻转为0,或者从0翻转为1,这样就会产生数据错误。

  2. 单事件击穿(Single Event Latchup, SEL):在某些情况下,粒子撞击可能导致芯片内部形成短路,这可能需要通过断电重启来恢复正常。

  3. 单事件功能中断(Single Event Functional Interrupt, SEFI):高能粒子撞击可能导致微处理器或其他复杂集成电路的功能暂时中断。

NASA 为了预防这类事件其实是做了很多预防的,比如用特殊材料制作芯片,还有双冗余设计:旅行者里CCS,AACS,FDS都有两个,一个坏了还能用另一个。我查了一圈没看见这次到底是不是两个FDS都坏了,不过结果是,就算有着层层保险,旅行者小姐的内存还是损坏了。

也就是说,放在这3%内存当中的代码因为某些物理原因跑不起来了。发出poke指令的这个时间点(三月末),大概是评论区朋友们开始第一波庆祝“旅行者复活”的时候。其实这个时候说复活也不太准确,因为当时只是接收了回传的错误代码,确认了出bug的原因。

这时的坏消息是内存有3%受损了,不过好消息是,只有3%受损了,而且旅行者还是能接受来自地球的指令。那么现在的解决方案也就很明确了:把这一部分代码挪一下位置,放到其他地址里就好了。

当然实际做起来其实是没这么容易的,本来旅行者的内存只有80kb左右,没有太多的空地儿让你挪代码,所以实际上JPL的工程师们把代码做了拆分,放到了不同的位置。代码结构也做了一些调整以确保在整体上能重新运行。FDS其他部分如果想调用这部分代码,那么也需要做出一些调整。

在4月18号,工程师们向旅行者小姐发送了更新过后的代码。

她已经走的太远太远,就算以电磁波的速度,也要22.5个小时才能抵达。

抵达之后,又要22.5个小时,我们才能听见她的回答。

终于,在4月20号,我们接到了旅行者小姐的回信。经过了漫长的五个月,她又一次地向我们报告自己地健康状况!

(yeaaaaaaah/好经典的工作餐)

本来只有5年设计寿命的她,即使电源输出逐年下降、科学设备一个个地关闭、时刻都在与宇宙射线和设备老化作斗争,但还是坚强的与我们一起,进行着激动人心的宇宙冒险!

Per aspera ad astra

继续走下去,几万年、几百万年后,再在深空相见吧,勇敢的旅行者!

(给自己画的贺图,本来说20w播放发的,但是好像忘了发了)