据美国NASA国家航天局介绍,对火星进行的探测活动不仅是对凤凰号着陆器的一大挑战,对于负责控制机械臂、摄影机和分析设备运转的30名工程师和程序员来说,编写和测试控制程序也是一大挑战。
这些工程师和程序员每天要编写和测试1000至1500行软件代码,然后把它发送到距离地球9300万英里远的火星上去。这个小组的成员需要分别负责凤凰号航天器的机械臂、摄影机、生命分析设备等等,任何一个错误或是时间的浪费都有可能影响到探测器的发现结果。
到目前为止,该小组在过去一周中发送给火星的代码均可以正常工作。
机械臂软件工程师Matthew Robinson表示,“这是一个编程挑战,我们三分之二的时间制定战略计划,剩下的时间去付诸实施”,“这最后的时间,你需要建立20至30序列,每个序列有50行代码。它们之间有互相作用关系,你不仅需要确定它们可以独立运行,而且要确定它们之间协同无误”
要保证这种机械臂和着陆器的其他部分可以协同工作是一件庞大的苦差事,这些程序员在Linux操作系统下使用C进行编程,这种编程状态要持续3个月左右。Robinson表示“每天都是极限编程的挑战”。
程序员不仅需要发送一天的指令,而且另外的内容也会让他们苦恼,例如火星上的一天是24.5小时,这意味着工程师在每天需要改变半个小时,例如,他们当天晚上9点开始工作,取回火星发回的代码,第二天就需要晚上9点半,然后是10点。
不过Robinson表示,“这项工作真的令人振奋。”