GitHub分享阿波罗登月计划所用计算机开源项目

That's one small step for man, one giant leap for mankind.——Armstrong

这是一个人的一小步,确是人类的一大步。——阿姆斯特朗

阿波罗11号的宇航员阿姆斯特朗,在人类第一次踏上月球之后说的第一句话。

阿波罗计划,是美国1961年至1972年期间,实施的一系列的载人登月活动。


               在1960年代末和1970年代初用于月球任务的阿波罗飞船实际上是两种不同的航天器,即指挥舱(CM)和月球舱(LM)。

CM被用来把三名宇航员送上月球,然后再返回。CM带着一名宇航员在月球轨道上运行的时候,LM被用来将另外两名宇航员送上月球。

每一个航天器都需要能够在宇航员的帮助下在太空中航行,因此需要有一个“导航系统”。导航系统是由麻省理工学院的仪器实验室开发的,该实验室现在是一家名为查尔斯·斯塔克·德雷珀实验室的独立公司。

导航系统的一个重要组成部分是阿波罗导航计算机,简称“AGC”。在任何给定的阿波罗任务中,都有两个自动增益控制系统,一个用于指挥模块,另一个用于月球模块。

这两个自动增益控制系统是相同和可互换的,但它们运行不同的软件,因为航天器必须执行的任务是不同的。

此外,由AGC运行的软件随着时间的推移而不断发展,因此在阿波罗17号等后续任务中使用的AGC软件与阿波罗8号等早期任务略有不同。

AGC在现代标准下可以被视为一台严重低能的计算机。


 

偶尔会有人开玩笑,说AGC更像是一个计算器,而不是一台计算机。但要说这是严重低估了AGC的复杂性。例如,AGC是多任务的,因此它看起来可以同时运行多个程序。

导航系统的另一个重要部分是显示器/键盘单元,或者简称为“DSKY”。自动增益控制系统本身就是一个带有电气连接的盒子,没有任何内置方式供宇航员进入。DSKY为宇航员提供了一个接口,通过该接口可以访问AGC。

月球舱只有一个DSKY,位于两名宇航员之间,任何一名宇航员都可以操作它。命令模块实际上有两个DSKY。CM的一个DSKY只是主控制面板,而另一个则位于用于标记恒星或其他地标位置的光学设备附近。

GitHub项目与虚拟AGC项目的网站关联,项目提供一个虚拟机,用于模拟AGC、DSKY和导航系统的其他部分。换句话说,如果我们称之为yaAGC的虚拟机被赋予了最初由真实的AGC运行的相同软件,并且在阿波罗任务期间反馈真实的ACG遇到的相同输入信号,那么它将以与真实的ACG相同的方式响应。

当前版本的虚拟AGC软件设计用于Linux、Windows XP/Vista/7和Mac OS X 10.3或更高版本(但最好是10.5或更高版本)。它至少在一些版本的FreeBSD中也能工作。作者主要发力的是Linux版本,因此有感兴趣的小伙伴,可以尽量选择Linux版本。

运行起来大概是这样子的——

。。。。。。。。。。。。。。。。。

版权原因,完整文章,请参考如下:

GitHub分享阿波罗登月计划所用计算机开源项目


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值