LINUX.ORG.RU
ФорумTalks

Программирование космических аппаратов

 ,


0

1

На примере Луны-25. Без нацполов, чисто технически. Как известно, она разбилась из-за ошибки в работе двигателей.

Вот какое объяснение: https://www.ixbt.com/news/2023/08/21/pochemu-razbilas-luna25-glava-roskosmosa...

Основная причина крушения «Луны-25» — нештатная работа корректирующего двигателя, который при попытке аппарата перейти на предпосадочную орбиту проработал больше положенного времени.

«К сожалению, отключение двигателя произошло не штатно, в соответствии с циклограммой, а по временной отсечке, и вместо запланированных 84 секунд он отработал 127 секунд. Это явилось основной причиной аварии аппарата», — сказал Юрий Борисов.

Я вот вспоминаю, давно была у меня (вернее у родителей) старая советская стиральная машина еще 60-х годов. С ручным управлением. Вернее бы сказать, с полуавтоматическим. Там можно было задать таймером продолжительность работы.

Происходило это так: таймером (механическим) выставлялось время работы (например 30 минут), таймер начинал обратный отсчет, довольно громко тикая. Потом нажималась кнопка, двигатель включался и работал заданное время. По его истечению таймер разрывал соединение.

Важно, что без взведенного таймера двигатель просто не включался. И вот, что получается такой простой вещи не было на Луне-25? Ладно, допустим все управление от циклограммы, но тогда откуда взялась временная отсечка в 127 секунд? Страховка от сбоя? Но хреновая какая-то страховка получается.

Я может конечно слишком много возомнил о себе, делая вывод о том в чем совершенно не специалист, но чего-то такое ощущение, что каким-то говнокодом веет. Или в программной части или в конструкторской.

P.S. Интересно все же, сам сбой аппаратный или программный?

★★★★★

Последнее исправление: praseodim (всего исправлений: 1)

Ответ на: комментарий от vaddd

Это наверняка нерасчетная ситуация,

+1 Чтобы компенсировать, надо:

  1. развернуть аппарат примерно 180 градусов

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

  3. включить корректирующий двигатель на нужное время. А напрямую его, может, и невозможно включить. Т.е. надо задать параметры, передать бортовому компьютеру, он обработает, внештатно включит…

  4. а он правильно сработает? Фишка в том, что у Луны + 1 км/с - и всё, мы навсегда от неё улетаем.

tiinn ★★★★★
()
Ответ на: комментарий от shTigrits

Опять на лампы?

Причем тут лампы? Вы посмотрите на пуск любой ракеты, это же свечка. :)

anc ★★★★★
()
Ответ на: комментарий от alegz

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

ArtSh ★★★
()
Ответ на: комментарий от praseodim

Тут подоспели объяснения от Алксниса

Полковник не имеет отношения к технике и к космосу и строит всякие предположения еще более вольно чем мы.

Но тут что странно. Кто же в конце-концов выдает команду на торможение и его длительность? Земля по рассчетам или бортовой компьютер?

Опять же исходя из междустрочника. Земля рассчитывает длительность корректирующего импульса, исходя из текущих параметров орбиты. Параметры орбиты известны обычно из нескольких источников, включая упомянутый высотомер. На высотомер грешить вряд ли не стоит - есть достаточно времени и для перепроверки показаний, и для сравнений с рассчетами по акселерометрам.

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

Грешить на отсутствие РС микросхем не стоит - я уже давал ссылку на статью с толковым описанием способов борьбы с радиацией. Видимо стоит повторить:

https://habr.com/ru/articles/452128/

Как видите, есть множество способов «пристроить» в космос и обычные микросхемы. Можно многократно продублировать отвественные узлы (охотно верю, что на «фобосе» мог необратимо выйти из строя какой-нибудь силовой транзистор, но они тоже легко иненапряжно дублируются). РФ сама умеет делать какие-то чипы на сапфире, пусть не всю номенклатуру, но ответственную часть малой серией сделать реально. А уж схемно-алгоритмические способы борьбы со сбоями - поле непаханое. Про ту же ЕСС память знают все, упрощенно говоря, подобную коррекцию ошибок в космосе запихивают во всю электронику - даже в ту, что на РС микросхемах, потому что они тоже могут сбоить и сбоят, просто реже. Все равно все дублируется, вся логика - мажоритарная.

То есть версия полковника тоже имеет право на существование, но эта причина слишком уже банальна, чтобы не быть известной разработчикам, а способы ее учета слишком отработаны. Это давно классика. Можно конечно предположить, что за 50 лет старый персонал вымер, а новый настолько неопытен, что учиться борьбе с радиацией начал заново. Но это тоже не слишком вероятно.

Еще немного про РС микросхемы, хоть и послабее статья, чем по предущей ссылке: https://habr.com/ru/articles/156049/

vaddd ★☆
()
Последнее исправление: vaddd (всего исправлений: 1)
Ответ на: комментарий от ArtSh

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

Неправда ваша.

anc ★★★★★
()
Ответ на: комментарий от anc

я постоянно вынужден работать с продукцией подобных предприятий.

ArtSh ★★★
()
Ответ на: комментарий от anc

О чем и речь. А раз нет внешнего контроля качества, то хоть врезалась станция в луну, это ничего не меняет.

ArtSh ★★★
()
Ответ на: комментарий от U53R

. В таких системах все должно быть пятикратно продублировано.

Ой, какие все умные. Ой! Товарищ, дублирование управляющих систем только снижает надёжность кратно числу этих дублей + арбитража. Ну, подумай сам. Одна система говорит выключай двигатель, вторая - включай. И ч0? Поэтому, обычно, не смотря на наличие дублирующих систем, работает в момент времени только одна. Одновременная работа нескольких систем неплохо проявляет себя в системах аварийной защиты, в управлении это не работает.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от quickquest

. Выявляется многократным тестированием с параметрами, которые «даже не могут быть».

Товарищ, тестирование далеко не всегда возможно. Где ты Луну тут возьмёшь? А модели - это модели. В них самих багов и безумия жѣппой жуй.

lenin386 ★★★★
()
Ответ на: комментарий от lenin386

Где ты Луну тут возьмёшь?

Ша вечер настанет, посмотрю на неё, если облаков не будет :)

anc ★★★★★
()
Ответ на: комментарий от lenin386

Ой, какие все умные. Ой! Товарищ, дублирование управляющих систем только снижает надёжность кратно числу этих дублей + арбитража. Ну, подумай сам. Одна система говорит выключай двигатель, вторая - включай. И ч0?

Дублирование систем != одновременная работа этих систем для управления.

anc ★★★★★
()
Ответ на: комментарий от lenin386

Товарищ, дублирование управляющих систем только снижает надёжность кратно числу этих дублей + арбитража. Ну, подумай сам. Одна система говорит выключай двигатель, вторая - включай. И ч0?

Не понимайте слово «дублирование» буквально, Владимир Ильич ) Оно не всегда означает «два», на буране например их было 4 )

«В отличие от американцев, которые использовали ПРОГРАММНУЮ синхронизацию четырех БЦВМ (on-board computers AP-101), мы использовали АППАРАТНУЮ синхронизацию четырех БЦВМ типа Бисер-4. Для этого был разработан пятикратно резервированный кварцевый генератор, выдававший выходную частоту по схеме голосования ТРИ ИЗ ПЯТИ (3 из 5). Этот сверхнадежный кварцевый генератор (пять каналов которого, были, разумеется, синхронизированы между собой) выдавал частоту одновременно на все 4 БЦВМ типа Бисер-4. С самого начала в громадной этажерке, в которой размещалась аппаратура на борту Бурана были предусмотрены 8 посадочных мест, куда можно было «вдвинуть» 8 БЦВМ типа Бисер-4.»

vaddd ★☆
()
Последнее исправление: vaddd (всего исправлений: 1)
Ответ на: комментарий от anc

Товарищ, то, о чем ты говоришь, называется резервирование. А дублирование - это именно одновременная работа.

lenin386 ★★★★
()
Ответ на: комментарий от lenin386

Нет! Две одинаковые команды не прилетают на два одинаковых исполнительных механизма.

anc ★★★★★
()
Ответ на: комментарий от vaddd

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

lenin386 ★★★★
()
Ответ на: комментарий от lenin386

Это как обычно. Самые сложные, проблемные и капризные вещи дублируются, но где-то все равно есть узкие места, узлы, которые не продублируешь. Например, сколько компьютеров не используй, все равно все сходится на один главный двигатель )

vaddd ★☆
()
Ответ на: комментарий от vaddd

Товарищ, это ничем не лучше сверхнадёжной (на самом деле, нет) программно-аппаратной управляющей системы. Дискуссия, что надёжнее : программа или железка - она старая и всем всё понятно. Просто сверхнадёжную программу можно исправить, а сверхнадёжная железка, особенно, когда она улетела - навсегда. Сейчас и в Тесле пицук с Линуксом.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 5)

Сейчас и аппаратный сбой есть программный, просто автор программы - другой программист. Таково время и положение и вещей.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)

На лоре появился новый критерий для выявления соевых формошлëпов — у них всегда «клапан заклинило».

imul ★★★★★
()
Ответ на: комментарий от greenman

Так по циклограмме манёвр или бортовой компьютер решает?

По моему - это дезу включили, типа это не мы виноваты, это микросхемы плохие! А радиовысотомер используется только при самой посадке, но никак при коррекции орбиты. До этого «врали», что программу коррекции орбиты рассчитывают на Земле и загружают на аппарат, а теперь начали на искусственный интеллект кивать, который якобы сам по показаниям датчиков работает.

sigurd ★★★★★
()

Что-то мне подсказывает, что там были другие проблемы, а это просто версия для СМИ.

Zhbert ★★★★★
()

Ну и если уж на то пошло, то у меня закономерный вопрос: неужели вся программа полета забивается вплоть до секунд еще на земле? Ну в 1960х, может, так и было оправдано. А вот сейчас? В век всяких лидаров и автопилотов, разве не логичнее сделать какой-то комплекс, который будет расчитывать все эти временные отсечки прямо по месту, а не тупо следовать программе с земли?

Хотя о чем это я, там вся эта станция, небось, собрана по чертежам 1960 и на той же элементной базе.

Zhbert ★★★★★
()
Ответ на: комментарий от ArtSh

Особенность современного производства связанного с госзаказом заключается в отсутствии внешнего контроля качества, что приводит к таким печальным последствиям.

Не везде, но да.

Zhbert ★★★★★
()
Ответ на: комментарий от lenin386

Сейчас и аппаратный сбой есть программный, просто автор программы - другой программист.

Программисты не занимаются реальным миром. Для этого есть конструкторы и технологи

vaddd ★☆
()

Вот какое объяснение

https://pikabu.ru/story/vsyo_gorazdo_proshche_10580613

Это вакансии двух предприятий, непосредственно связанных с проектированием АМС (автоматических межпланетных станций): КБХМ - проектирование ДУ (Двигательной установки) и ДМП (Двигателей мягкой посадки); ну и собственно НПО им. Лавочкина.

Neuromagus
()
Последнее исправление: Neuromagus (всего исправлений: 1)
Ответ на: комментарий от Zhbert

Ну и если уж на то пошло, то у меня закономерный вопрос: неужели вся программа полета забивается вплоть до секунд еще на земле? Ну в 1960х, может, так и было оправдано. А вот сейчас? В век всяких лидаров и автопилотов, разве не логичнее сделать какой-то комплекс, который будет расчитывать все эти временные отсечки прямо по месту, а не тупо следовать программе с земли?

Вся - навряд ли. Например, по той же самой причине радиации. Сложная автоматика почти наверняка окажется ненадежнее, чем расчети и корректировка с земли.

А пересчитывать им явно приходится из-за каких-то нештатных вещей и неизбежных отклонений

vaddd ★☆
()
Ответ на: комментарий от lenin386

Сейчас железка - это по сути программа. Видеокарта - программа.

А двигатель - физика, химия и механика

vaddd ★☆
()
Ответ на: комментарий от Zhbert

В век всяких лидаров и автопилотов, разве не логичнее сделать какой-то комплекс, который будет расчитывать все эти временные отсечки прямо по месту, а не тупо следовать программе с земли?

Автопилот заточен на «знакомую трассу». Например собираете вы клюкву на незнакомом болоте, какой автопилот вам поможет не утонуть?

anc ★★★★★
()
Ответ на: комментарий от Bad_ptr

Думаю что «циклограмма» — это просто график/таблица, временная диаграмма работы.

чего гадать, когда есть справочная:

https://ru.wikipedia.org/wiki/%D0%A6%D0%B8%D0%BA%D0%BB%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0_%D0%BF%D1%83%D1%81%D0%BA%D0%B0

т.е. это просто отрасль-специфический термин для обозначения понятия «программа», в самом общем смысле слова, как последовательность действий, очевидно, привязанных к временным меткам.

seiken ★★★★★
()
Ответ на: комментарий от seiken

Ближайший аналог для понимания - «щелкунчик» на старой стиралке, ну или его электронный аналог на новой )

vaddd ★☆
()
Ответ на: комментарий от vaddd

Программисты не занимаются реальным миром

Это какая-то философия, причём дрянная. Программа так же реальна, как любая другая сущность в природе.

seiken ★★★★★
()
Ответ на: комментарий от seiken

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

vaddd ★☆
()
Ответ на: комментарий от vaddd

Это только неопытные программисты. Опытные знают, на кого валят вину всегда и в первую очередь. Поэтому, приходится вникать в ньюансы.

lenin386 ★★★★
()
Последнее исправление: lenin386 (всего исправлений: 1)
Ответ на: комментарий от lenin386

По-моему, на программистов валят больше всего на ЛОРе, «снаружи» народ обычно лучше ориентируется в материальности мира )

vaddd ★☆
()
Ответ на: комментарий от anc

Да может и так, вот только меня недавно приглашали на гос работу. Требования: 6 высших по направлению, 5 официальных лет стажа, лояльность к руководству и проверка на детекторе, зп - 40-50. В Москве. Начальник отдела - 60-70. До вычета налогов.

Neuromagus
()

Как известно, она разбилась из-за ошибки в работе двигателей.

Правда? А разве не из-за коррупции? Не из-за того что работникам предприятия ставят адские условия труда? Не из-за того что даже посредственный PHP-программист-макакенций сегодня получает в три раза больше чем инженер, тестирующий ракетные и маневровочные двигатели? Не из-за того что управленцы вставляют на главные странички предприятия свои песенки вместо достижения результатов?

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

А самое смешное с какой помпезностью в СМИ преподносили эту Луну-25, мол вот она переемественность поколений, Советский Союз смог, а мы то подавно сможем! Ну зато клоуны повеселили весь мир, что сказать.

EXL ★★★★★
()
Ответ на: комментарий от vaddd

А программа состоит из массы модулей и подпрограмм, каждые из которых - часть сложной реализации, протестированной по всем правилам программной инженерии, или даже верифицируемой на формальном языке. Железячникам и механоидам с химиками нет дела до того, что разработка ПО - это не просто бренчание по клавиатуре.

seiken ★★★★★
()
Ответ на: комментарий от Neuromagus

Требования: 6 высших по направлению, 5 официальных лет стажа

6+20(это доп. вышки)+17=43
В идеале от 43 трех лет из которых чел потратил 26 лет на обучение в вышках. Вас в ВУЗ приглашали?

anc ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)