Взятие образцов грунта и поиск элементов, которые могли бы свидетельствовать в пользу возможности жизни на Марсе, — весьма ответственное мероприятие, и пока Mars Lander вполне успешно с этим справляется.
Непростая задача стоит и перед 30 инженерами и программистами NASA, которым ежедневно приходится выдавать от одной до полутора тысяч строк уже протестированного программного кода, после чего тот преодолевает расстояние почти в 270 млн километров. Ведущий инженер-программист лаборатории реактивного движения NASA Мэтью Робинсон принимает самое непосредственное участие в написании последовательностей кода, с помощью которых осуществляется управление различными компонентами космического аппарата Phoenix, включая роботизированную руку, предназначенную для взятия образцов, камеры съемки и аналитическое оборудование. Достаточно одной ошибки, и Lander будет простаивать, бесцельно тратя драгоценное время, вместо того чтобы использовать его для изучения планеты, возможно пригодной для жизни.
До сих пор весь программный код, отправленный на Марс, успешно работал.
«Нам постоянно приходится решать довольно сложные и очень срочные задачи, — отметил Робинсон в интервью Computerworld. — Сначала определяется стратегия действий на два-три дня, а затем этот план ежедневно уточняется. Окончательный его вариант утверждается накануне. В результате программистам поручается написать 20-30 последовательностей, каждая из которых включает в себя около 50 строк кода. Различные инструменты активно взаимодействуют друг с другом, потому необходимо убедиться в том, что последовательности кода не просто работают, а еще и хорошо сочетаются друг с другом. Для создания таких последовательностей нам ежедневно приходится прибегать к методам экстремального программирования (eXtremal Programming, XP)».
Задача зонда заключается в том, чтобы собрать образцы льда и почвы и проанализировать их состав. Для этого на борту аппарата размещены восемь термических печей, четыре инструмента для химического анализа растворенных образцов и микроскоп с блоком формирования цифровых изображений. Как пояснил Робинсон, исследователи не занимаются поисками признаков жизни. Они пытаются лишь найти элементы, которые могли бы способствовать поддержанию жизни на планете.
Важнейшим компонентом обеспечения исследований является роботизированная рука, весившая на Земле от 9 до 14 кг. На конце ее закреплен ковш, позволяющий забирать образцы льда и грунта и доставлять их аналитическим приборам. Ведь если нет образцов грунта, нечего и анализировать.
Поддержание ежедневного бесперебойного функционирования роботизированной руки, а также других элементов Lander требует выполнения огромного объема рутинной работы.
«Все наши сотрудники находятся в состоянии постоянного возбуждения, — заметил Робинсон. — Ведь к этому моменту мы готовились на протяжении пяти лет. Переход от испытаний к реальным действиям всегда сопровождается сильным волнением. Выразить это словами просто невозможно».
По словам Робинсона, при написании кода, управляющего перемещением руки и забором грунта использовалась трехмерная цифровая карта подъема. В процессе ее создания разработчикам пришлось подумать о том, какую точность должны обеспечивать подобные карты, насколько просто можно будет осуществить добычу грунта, и насколько хорошо им до сих пор удавалось управлять рукой.
«Это действительно был очень волнующий момент, — признался Робинсон. — Впервые с момента появления здесь в 70-е годы аппарата Viking ковш коснулся поверхности Марса. Механический зонд лишь сейчас в первый раз появился на полюсе планеты. Нам удалось наконец добраться и прикоснуться к северному полюсу Марса».