Как стать автором
Обновить

Комментарии 42

Интересно было бы увидеть diff

Потеряли '0х' перед значением таймера :)
последовательность команд завершилась досрочно из-за истечения сторожевого таймера
сторожевого таймера

Это, как я понимаю, watchdog?

Нужно было сначала позвонить марсоходу. И попросить его «выключить и включить снова» вертолёт.
Может местных аборегенов попросить )) роутер перезагрузить
Если даже для космоса багованное ПО стало обыденностью, то страшно подумать, на чем держатся земные технологии. в том числе критические.
На правильной обработке непредвиденных ситуаций, а не на «Unexpected error occurred».
НЛО прилетело и опубликовало эту надпись здесь
Это как раз пример «Unexpected error occurred».

Чем дороже железо, тем хуже софт к нему.

Вы же в курсе на чем собрана аппаратная часть коптера?
Т.е. в вертолёте софт лучше марсохода? Ведь там всё на потребительском железе и линуксе, в отличии от самого ровера…
В новом ПО был изменен процесс загрузки двух контроллеров вертолета, чтобы аппаратное и программное обеспечение аппарата могло безопасно переходить в режим полета.

Чинить на продакшене. Как это мило.

В настоящее время модификация ПО вертолета проходит независимую проверку и валидацию на испытательном стенде в лаборатории НАСА. Этот процесс займет некоторое время.

Обвинять не читая. Как это мило.

Я не говорил, что они чинят на самом аппарате, прилетевшем на Марс. Я про то, как эта ошибка вообще в продакшен попала.
Что там могло поменяться, если они на земле тестировали переход в полетный режим?
Поменялась значение гравитации? Атмосферное давление?

на земле тестировали переход в полетный режим?

Тестировали на Земле.
Поменялась значение гравитации?

Поменялось, примерно в 2 раза.
Атмосферное давление?

Поменялось, примерно в 170 раз.
А ещё поменялся газовый состав атмосферы, а ещё поменялось (почти пропало) магнитное поле. А ещё там снег из углекислоты бывает выпадает. А ещё этот аппарат летел полтора года в космосе. А ещё это первое устройство такого рода на другой планете. И они аккуратненько проверили, что там и как, и приняли решение поправить. Или в вашем понимании надо было обретя уверенность сразу фигануть на полную? Типа как тут? www.youtube.com/watch?v=Rb67WPmc5b4
Поменялась значение гравитации?
Поменялось, примерно в 2 раза.
Атмосферное давление?
Поменялось, примерно в 170 раз.

А они заранее знали, что аппарат на Марс полетит? Я думаю, большинство параметров были известны заранее. С другой стороны, это необязательный побочный квест, возможно, не уделили ему особого внимания. Будет особенно иронично, если его результаты будут интереснее основного сторилайна, как иногда бывает в играх.

Вы о миссии с вертолётиком в GTA vice city?

А ещё полтора года эту потребительскую технику вполне себе бомбили заряженные частицы, на который она вообще не рассчитана.
бомбили заряженные частицы, на который она вообще не рассчитана.

Но люди его создававшие могли и обязаны были об этом подумать? И насколько понимаю, дело не в поломке от чего-то сбоку прилетевшего, а именно в ошибке человечков. Будут изменять ПО, а не решать проблемы с железом. Цена запуска одного килограмма груза на соседнюю планету пока слишком большая, предусмотреть разные варианты запуска вертолётика были обязаны.
Интересно, да. Теория всегда отличается от практики — причиной может стать и втык, и случайность и крайне неочевидная особенность на самом Марсе.
НЛО прилетело и опубликовало эту надпись здесь
никакой ошибки и не было. Было штатное срабатывание watchdog, который штатно прервал процесс, не дождавшись сигнала за заданный таймаут.
Сигнала же не было, потому что в конкретных марсианских условиях на чисто физическом уровне какой-то процесс занял время больше предполагавшегося. Например, потому, что сопротивление атмосферы, где пыль является заметной составляющей, оказалось не равно предполагавшемуся. Точный уровень запылённости в «приземном» слое предсказать не удалось — но это ведь не удивляет? Или, скажем, трение в узле при данной температуре и данном уровне теплообмена изменилось против ожидавшегося. Трибология — во многом загадочная вещь до сих пор. Линейности там только в школьных учебниках.
И так далее…
Получив данные, корректируют параметры под лучшее соответствие условиям. Очень может быть, такое придётся делать не однажды — именно для того вообще создавали небесплатный интерфейс перезагрузки памяти для устройства, чей срок эксплуатации предполагался в один месяц.
Да, не умеют инженеры НАСА писать код. Надо было пригасить веб-разработчиков из какого-нибудь пригорода Детройта или другого мухосранска
«Для обновления прошивки коптера вставьте флешку с обновлённой прошивкой в USB-порт. Что значит — не могу вставить флешку? Ну попробуйте перевернуть и вставить другой стороной, что за бестолковые пользователи пошли...»
На перевёрнутом ноутбуке невоможно читать ничего и клавиатурой с тачпадом не получается пользоваться.
Всем, кто кричит про говёный код, предлагаю вспомнить, что это первый в истории человечества вертолёт на другой планете, с другой атмосферой и другой гравитацией. И на текущий момент для марсианских условий нет удобных фреймворков и готовых пактов, чтобы всё работало само.

Как будто на Земле не хватает неразберихи с единицами измерения (Mars Climate Orbiter, который промахнулся мимо Марса).


В ПО, созданном в Lockheed Martin, по старинке использовались британские единицы измерения (в частности, фунты — для измерения массы), а ПО, разработанное NASA, работало в метрической системе, в которой масса измеряется в килограммах.

Оффтоп: у меня на даче есть роутер, который запрятан под крышу в герметичную коробку. Дача в 300 км от столицы, работает все через gsm модем и когда надо что-то настроить (vpn для камер, проброс порта для термометра, обновление прошивки), я зову коллегу админа и мы подготавливаем операцию "обновление прошивки марсохода" — перечитываем правки друг-друга, смотрим диффы, прошиваем на локальное устройство, моделируем сбои. Ну и затем обновляем и ждём, пока устройство запустится, поднимет gsm связь и сообщит результат. За две зимы один раз пришлось таки заводить "ракету" и ехать на место установки. Весьма хороший тренинг для удаленной настройки вышел :)

Тут на хабре была статья про собранный «марсоход»: автономную коробочку за окном и моделирование недоступного для поддержки аппарата :)
У меня как то были упражнения по ликвидации бага и обновлению прошивки телеметрических контроллеров, которые стояли на «точках», выезд специалиста к которым обходился в час аренды вертолета на каждую, не считая авиабилета для перелета в регион расположения. ;) Вот там надо мной стояли все начальственно-причастные, с самыми тяжелыми предметами которые смогли найти, чтобы сразу прибить, если проколюсь. ;) Это несколько больше похоже на обновление прошивки КА. ;)
Устарелый, имхо, подход. Используйте оборудование которое пишет изменения в память, а не во flash — cisco, mikrotik, etc. Тогда после отвала консоли оборудование восстнавливает старый конфиг.
Тогда после отвала консоли оборудование восстнавливает старый конфиг.
Mikrotik да, есть такая функция. А Cisco всё равно нужно будет ребутнуть (хотя бы через выкл/вкл питания), чтобы загрузился startup config из flash.
Это уже частности. winbox'у mikrotik тоже нужно сказать, что «Safe mode». Так и на cisco можно написать скрипт, навроде watchdog, как вариант делающий reload по истечении таймаута пинга. Или, перед внесением критических изменений в конфиг, поднять reload in на время, в течении которого будет понятно прошли изменения или нет. Главное тут, что железка могёт такое делать, а не пишет изменения сразу во flash.
Будет неловко, если после обновления у вертолета появятся проблемы с печатью.

Там Линукс.

После настройки Canon LBP800 в CUPS (например) можно уже понять, что кривым рукам настоящему специалисту Linux не помеха.

— Сэр, наш вертолёт не взлетел!
— Почему? Как так?
— Сэр, кто-то забыл отключить от него принтер весом в 4 килограмма и теперь он не может оторваться от поверхности планеты.
— [звуки разбивающегося окна]
В далеком, далеком прошлом были решения о перезагрузки глючного хоста тыканием в кнопку Reset приводом СД-рома напротив стоящего системника. А тут цельный робот в наличии.

Для этого и нужен марсоход ;-)

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.