«Роскосмос» уточнил причину крушения «Луны-25» — «команды с разными приоритетами оказались в одном массиве данных» Статьи редакции
Аппарат перестал выходить на связь через восемь дней после запуска во время выхода на предпосадочную орбиту Луны.
- «Роскосмос» опубликовал заявление о причинах крушения российской станции «Луна-25».
- Из-за этого в комплекс управления приходили «нулевые сигналы», что помешало «зафиксировать момент набора требуемой скорости» и вовремя выключить двигатели.
- Россия запустила миссию к спутнику Земли 11 августа 2023 года — впервые с 1976-го. Космический аппарат «Луна-25» должен был отработать процесс мягкой посадки в околополярной области Луны и провести исследования лунного грунта на наличие льда.
- Посадка была запланирована на 21 августа, но за два дня до этого связь с аппаратом пропала. Тогда гендиректор «Роскосмоса» назвал основной причиной крушения сбой при отключении двигателя.
24K
показов
11K
открытий
приходили «нулевые сигналы»
То есть эти м**** в нацпроекте на миллиарды долларов тупо не провели для программного обеспечения Базовый(!) тест на ноль и конфликт приоритетов??? Это умеют делать даже самые примитивные программы для автоматического тестирования. Такие примитивные ошибки совершают ну максимум на первом курсе ВУЗа. Они кого туда набрали, выпускников Скиллбокса??
Не то что бы я был фанатом Роскосмоса, но возникает вопрос:
а когда ракета Ariane 5 при запуске в 1996-м разрушилась по причине «тупо скопипастили код от Ariane 4, в котором не обрабатывался правильно банальный integer overflow», это тоже были «выпускники скиллбокса»?
https://en.wikipedia.org/wiki/Ariane_flight_V88
Это был 1996 год, а разрабатывали это лет за 5-15 ранее, когда не было ни образования, ни литературы, ни наработанного миллионами людей опыта, ни интернета погуглить, ни программ автотестов. В то время даже проблему 2000 не смогли предвидеть, че вы от них хотите. Это сейчас уже каждый школьник знает, а тогда нет...
Я согласен, что год тут имеет значение (поэтому в своём комменте его сразу честно и указал),
однако думаю, люди к тому моменту уже вполне понимали, что такое integer overflow и как он может приводить к проблемам,
а кроме того, за все прошедшие годы никак не изменился важный фактор:
людям ощутимо сложнее тестировать софт, когда его продакшн-среда это блин КОСМОС, поэтому нет полноценного тестового окружения
Никакой разницы между космосом и например встраиваемыми устройствами. И те и те после ухода в продакшен сложно обновить, соотвественно надо протестировать edge кейсы по максимуму. Разница только в цене ошибки. И оные встраиваемые коммерческие устройства разрабатывают и тестируют инженеры с зп в 10+ раз выше, чем в Роскосмосе. Где риски при таком подходе выше? :)
Ариан по ссылке выше - тоже косяк тестирования. Consequently, the realignment function was not tested under simulated Ariane 5 flight conditions, and the design error was not discovered. Которое в 90х было еще достаточно зачаточным. Но сейчас на дворе 2023 уже
Эмм. Если делается софт для встраиваемого устройства, то до ухода в продакшен этот софт можно установить хотя бы на прототип, потестировать в условиях, максимально приближенных к реальным, и понаходить баги таким образом.
Если делается софт для космоса, там «реальные условия» — это, например, невесомость.
Правда «никакой разницы»?
Невесомость и прочие космические особенности сейчас отлично симулируются программно. Это всё уже максимально тщательно изучено, не зря же космонавты на станции 40 лет уже торчат
При разработке мобильных приложений тоже можно «симулировать смартфон программно», но почему-то крупные компании для тестирования создают целые мобильные фермы настоящих девайсов
И все равно выпускают багованное говно)
Да, даже с фермами полностью оттестировать непросто
А вы ждёте, что у людей без них с первого раза получится
Инженеры-конструкторы как-то же смогли сконструировать без отдела тестировщиков, почему программисты не могут?
По количеству неудачных запусков в мире несложно заметить, что у инженеров-конструкторов тоже не всё с первого раза получается.
Хорошо что оно оторвалось от земли.
Фермы тут причем?
Вы думаете БИУС этот существовал в единственном экземпляре, лол? Нет конечно, там тоже были тестовые образцы, на которых и гонялся софт (точнее должен был).
Кажется, вы не очень читаете то, на что отвечаете
Ещё раз: сложность вижу в воссоздании окружающих условий
На Земле можно сделать хоть сто марсоходов, но на Земле затруднительно сделать Марс (с его гравитацией, радиацией и всем остальным)
Тестировать марсоход без Марса — это как тестировать банкомат без денег
Слух, если ничего не понимаешь в теме, может не надо лезть? При чем тут марсоход к системе, где на вход подается группа сигналов, и на выходе результат обработки? В статье явно же указано где косяк, и он никак не связан с внешней средой.
Потому что группа сигналов зависит в числе прочего от внешней среды
В Ariane 4 тоже на вход подавалась группа сигналов, и всё хорошо работало
А потом в Ariane 5 внезапно перестало, потому что сигналы изменились