• Zero tolerance mode in effect!

Возвращаемые ступени ракет, SpaceX etc

Консерватизм однако...
На самом деле, это не есть хорошо и совсем не консерватизм. По феншую, система должна быть не просто троированной, а разработанной различными командами, на базе разных архитектур и конфигураций ПО. Особенно напрягает слово "Линукс". Конечно, сейчас есть куча ОС жёсткого РВ на базе Линукса, но есть-же и более традиционные юниксовые системы, типа QNX, отработавшие мультильярды лётных часов. Тем более, что особо экзотических требований там не должно быть. Так если только - повы**ываться в духе Маска и показать фак традиционалистам. Ну или силы команды были слишком ограничены - лепили всё по-индусски, крупными мазками. Главное, чтобы тот-же подход не сохранился, когда СпейсХы перейдут к освоению всяких там Титанов-Плутонов.
 
Врут что в 24м Но что-то верится с трудом...

Это как с Наукой-МЛМ. Обещают обещать. А по факту полный провал. Энергетический модуль- НЭМ уже зарубили...
А без него вся эта Отдельная Орбитальная Станция РФ невозможна в принципе- электроэнергии нет.
 
Конечно, сейчас есть куча ОС жёсткого РВ на базе Линукса, но есть-же и более традиционные юниксовые системы, типа QNX, отработавшие мультильярды лётных часов.
Скорее всего там и не Linux вовсе, а RTOS на базе линуксового ядра...
 
На самом деле, это не есть хорошо и совсем не консерватизм. По феншую, система должна быть не просто троированной, а разработанной различными командами, на базе разных архитектур и конфигураций ПО. Особенно напрягает слово "Линукс". Конечно, сейчас есть куча ОС жёсткого РВ на базе Линукса, но есть-же и более традиционные юниксовые системы, типа QNX, отработавшие мультильярды лётных часов. Тем более, что особо экзотических требований там не должно быть. Так если только - повы**ываться в духе Маска и показать фак традиционалистам. Ну или силы команды были слишком ограничены - лепили всё по-индусски, крупными мазками.
А может у Маска изначально позиция по исключению лишних издержек. Если все можно закодить на бесплатном - делают на нем. Нафиг им платный Юникс - что бы потом в случае чего зависить от автора?
 
Не забываем еще и силовой набор обеспечивающий продольную жесткость ступени, что бы все это не переломилось пополам при посадке.
Летать и садиться это конечно будет, но что там с полезной нагрузкой...
Но выглядит все равно красиво.
 
А может у Маска изначально позиция по исключению лишних издержек. Если все можно закодить на бесплатном - делают на нем. Нафиг им платный Юникс - что бы потом в случае чего зависить от автора?
Открытый Линукс, переделанный в ОСРВ ещё больше зависит от разработчика. В случае VxWorks, QNX и т.п. хоть понятно - кому бить морду и с кого требовать деньги. Как только начинается адаптация чего-то собственной "бесплатной" командой под конкретную задачу, опасность прогаживания полимеров увеличивается в разы. А тот-же исходный RTLinux, на основе которого многие лепят свои поделия - не вполне надёжен.
 
Открытый Линукс, переделанный в ОСРВ ещё больше зависит от разработчика. В случае VxWorks, QNX и т.п. хоть понятно - кому бить морду и с кого требовать деньги. Как только начинается адаптация чего-то собственной "бесплатной" командой под конкретную задачу, опасность прогаживания полимеров увеличивается в разы. А тот-же исходный RTLinux, на основе которого многие лепят свои поделия - не вполне надёжен.

Тут спорить можно бесконечно...
Но ОС - это всего-лишь ОС и ничего более.
 
А может у Маска изначально позиция по исключению лишних издержек. Если все можно закодить на бесплатном - делают на нем. Нафиг им платный Юникс - что бы потом в случае чего зависить от автора?
а на них MISRA не распространяется?
 
Тут спорить можно бесконечно...
Но ОС - это всего-лишь ОС и ничего более.
Я-бы вообще запретил ОС в системах жёсткого РФ. Максимум - ROMDOS. От лукавого они, от избыточной мощности процов, когда на один камень пытаются повесить написанное тысячью индусов. Операционка хороша для HMI, работы с базами - там без продуктов сторонних разработчиков и без охренильярда дисковых операций не обойдёшься. Или в каком-нибудь "Курьёзити" - один радиационно-стойкий комп занимается почти всем. Естественно, приходится переключать задачи, выделять память, безопасно подгружать модули, написанные криворукими профессорами. А уж в носителе-то какие сложные задачи? Там везде масочные ПЗУхи можно ставить и пару килобайт статического ОЗУ.
 
Я-бы вообще запретил ОС в системах жёсткого РФ. Максимум - ROMDOS. От лукавого они, от избыточной мощности процов, когда на один камень пытаются повесить написанное тысячью индусов. Операционка хороша для HMI, работы с базами - там без продуктов сторонних разработчиков и без охренильярда дисковых операций не обойдёшься. Или в каком-нибудь "Курьёзити" - один радиационно-стойкий комп занимается почти всем. Естественно, приходится переключать задачи, выделять память, безопасно подгружать модули, написанные криворукими профессорами. А уж в носителе-то какие сложные задачи? Там везде масочные ПЗУхи можно ставить и пару килобайт статического ОЗУ.
возможность менять все на ходу, а так год ждать и мульены платить за новую маску
 
На суд спецов форума, подлинник не даю он не на английском. Гуглперевод естественно... :)
"...сегодня мы рассмотрим компьютеры с ракетами Falcon 9 и капсулами Dragon. Мы отложим обсуждение компьютеров на Saturn V, Apollo CM, Apollo LM / LEM на потом. Представленная информация не очень актуальна, подробных и актуальных описаний нет, а многие аспекты противоречивы из-за ограничений, введенных ИТАР, и сохранения коммерческой тайны. Презентация является частью области наведения-навигации-контроля ( GNC - Guidance, Navigation and Control ), это область техники, которая занимается проектированием систем, используемых для управления движением транспортных средств - автомобилей, кораблей, самолетов, ракет, космических кораблей.
проблема
Прежде всего несколько общих аспектов, которые позволят нам понять проблему.
Направление ракеты от запуска к месту назначения (в нашем случае Falcon 9 + Dragon от Флориды до МКС) состоит из нескольких этапов, каждый со своими проблемами:
- в первой части траектории (от запуска до выхода из атмосферы) система управления должна учитывать прямое сопротивление, не должны быть превышены силы, которые могут выдержать транспортное средство и экипаж, она должна реагировать на внешние события (порывы ветра, аварии);
- затем следует выход из атмосферы и возможные маневры для изменения траектории;
- остановка двигателя первой ступени, отделение первой ступени и, возможно, ее восстановление;
- остановка двигателя второй передачи и любые исправления;
- остановка двигателя второй ступени и повторный запуск при необходимости;
- зажигание капсульных двигателей до места назначения;
- различные операции изменения ориентации (о отношение ) и движения.

Итак, вот лишь некоторые из многих операций, которые выполнялись системами наведения, навигации и управления с начала освоения космоса.

С экологической точки зрения электронное оборудование должно выдерживать несколько проблем - высокие или низкие температуры (от -150 до +150 градусов по Цельсию), излучение, ускорение, вибрация. Некоторые проблемы были подробно описаны в двух предыдущих статьях - Технологии (эпизод 2): враги технологий - ускорение и Технологии (эпизод 3): враги технологий - космос .
Как (аппаратное обеспечение)
SpaceX решил использовать имеющиеся в продаже стандартные компоненты ( COTS - Commercial Off-The-Shelf ). Основными условиями выбора систем расчета были:
быть достаточно эффективным, чтобы решать проблемы
набор программ, используемых для доступной разработки (англ. toolchain )
Во время этой презентации термины компьютер, система, компьютерная система будут использоваться в том же смысле.
Первая очень интересная информация заключается в том, что SpaceX использует системы с процессорами семейства Intel x86, по три системы для каждой операции, в которой задействованы вычислительные системы. Существует три варианта избыточности, но об этом мы поговорим позже, поскольку избыточность обеспечивается программным обеспечением. Существует информация об использовании для управления различными элементами (например, поверхностями управления, ножками и т. Д.) На первой и второй ступени микроконтроллеров Falcon 9 PowerPC.
Существует противоречивая информация о системах, которые управляют ядрами (на основе процессоров x86 или микроконтроллеров PowerPC) и количестве систем, которые используются на каждом ядре первого уровня Falcon 9. В некоторых источниках говорится о трех компьютерах для каждого движка Merlin (итого 27 с резервная конфигурация), другие об одном компьютере для каждого механизма (без указания того, относится ли это к набору из трех резервированных систем или к одной системе). Другие системы (например, поверхности управления) также имеют свои собственные управляющие компьютеры.
Кроме того, есть три другие системы, которые выполняют основные операции (навигация и навигация), а также контроль и управление другими компьютерами / микроконтроллерами. Таким образом, у нас есть разделение компьютерных функций - некоторые для контроля, в то время как последние будут отвечать за навигацию и принятие решений о полете - контроль траектории запуска и маневров, выполняемых для восстановления. В любом из вариантов мы достигаем не менее 15 систем только на первом этапе.
На втором этапе, придерживаясь тех же принципов построения, мы можем предположить, что он будет иметь три системы для двигателя Merlin Vacuum (англ. Origac MVAC ) или одну и еще 3 для навигации и навигации. Так что минимум 4 системы для второго этапа.
Капсула Дракона, используемая в программе пополнения запаса МКС, имела такой же тип компьютеров навигации и навигации в избыточной конфигурации из трех частей. Помимо навигационных компьютеров, существуют также компьютеры ввода-вывода (блок с 3 компьютерами), которые взаимодействуют с остальными компонентами капсулы (датчиками и управляемыми элементами) с помощью модулей (англ. RIO - дистанционный ввод / вывод ). Использование модульной системы обеспечивает гибкость при выборе плат сбора данных и управления. Эта архитектура была выбрана для максимально простого производственного процесса. В одном источнике говорится о количестве 18 вычислительных блоков в капсуле Dragon в 2012 году, что приведет к увеличению количества компьютеров до 54, только в капсуле.


Компьютер с модулями ввода / вывода ()
Другой источник утверждает, что в капсуле Dragon навигационные системы будут работать на процессорах ARM, а не на x86.
По мнению автора, везде, где был реализован вычислительный блок, он имел избыточную конфигурацию с тремя компьютерами. Итак, 27 компьютеров, по три штуки, для двигателей первой ступени. Хотя использование выделенных компьютеров для двигателей кажется странным, это не так. Эти компьютеры взаимодействуют напрямую с двигателями, получая информацию от датчиков и отправляя команды различным компонентам двигателя, которые непосредственно контролируются. В космическом шаттле также использовались компьютеры для управления двигателями RS-25 - это Honeywell HDC-601, который использовался ВВС США с 1972 года. Его выбор был также обусловлен совместимостью программного обеспечения с Honeywell DDP 516, поэтому была также доступна среда. развитие.
Как (программное обеспечение)
Компьютеры похожи на людей: без программного обеспечения они выглядят как жандармы - просто тупые объекты без реального использования; программное обеспечение заставляет их достичь своей цели. Итак, давайте посмотрим на программное обеспечение, работающее в системах Falcon 9 / Dragon, и посмотрим, как они работают.
Прежде всего, операционная система на лету: это, конечно же, Linux. Подробная информация несколько противоречива. Оригинальный текст, опубликованный в 2012 году на Aviation Week, гласит: На самом деле существует шесть компьютеров. Они работают в парах, так что есть три компьютерных блока, каждый из которых имеет два компьютера, проверяющих друг друга. что на самом деле переводится на шесть компьютеров. Они работают в парах, поэтому есть три вычислительных блока, каждый с двумя компьютерами, которые проверяют друг друга. ,
Что бы это могло значить? Что вычислительный блок на самом деле двухъядерный процессор или вычислительный блок на самом деле два разных компьютера?
Далее, некоторая информация говорит о запуске экземпляра Linux в ядре (таким образом, вычислительный блок фактически запускает две операционные системы Linux) и в каждом случае программное обеспечение SpaceX. Но могут быть и другие варианты. По сути, у нас есть следующие опции:
- одна операционная система работает на обоих ядрах, и у нее есть два экземпляра программного обеспечения SpaceX GNC, каждый из которых работает на одном ядре;
- два ядра Linux с крупными модификациями, каждое из которых работает на ядре, а каждое ядро Linux работает на программном обеспечении SpaceX GNC;
- две виртуальные машины Linux, каждая на процессорном ядре, в каждой виртуальной машине, на которой запущен экземпляр программного обеспечения SpaceX GNC;
- два отдельных компьютера, в одном модуле образуют единицу расчета; на каждом компьютере установлена система Linux и экземпляр программного обеспечения SpaceX GNC.
Как работает эта система? Два экземпляра программного обеспечения GNC производят вычисления на основе реализованных алгоритмов и результатов команды. Супервизор сравнивает два результата, и если они идентичны, команда отправляется на выполнение. Если два результата отличаются, команда не отправляется.
Чтобы выполнить команду (например, изменить ориентацию поверхностей управления), микроконтроллер, имеющий дело с этим действием (в нашем случае ориентация поверхностей управления), должен получить одну и ту же команду от всех трех систем. Если одна из полученных команд отличается, то микроконтроллер выполнит полученную команду от двух других. Если все они различны, будет сохранено последнее состояние или будет выбрано то из системы, которая считается самой безопасной. Если ошибки, полученные от одной из систем, не исчезнут, она будет переключена в неисправный режим. Эта модель резервирования (один и тот же заказ получен 3 раза) также используется Airbus для проводных систем на воздушном судне. Он был выбран компанией SpaceX, чтобы не тратить непомерные суммы на радиационно-стойкие процессоры и системы. Для капсулы Дракона может быть ситуация, когда компьютеры имеют ошибки из-за радиации. Если навигационный компьютер постоянно не возвращает правильные результаты, он перезагружается и копирует содержимое памяти (данные, используемые для расчетов) из одного из функциональных. Затем он присоединится к функциональным. В случае ошибки, которая может привести к тому, что все 3 навигационных компьютера будут давать неправильные команды, они могут быть остановлены, с земли посылаются команды через одну из систем связи (прямую или спутниковую), которые достигают управляющих компьютеров, они выполнение операций напрямую. С точки зрения количества, оценка в 2012 году составляла несколько сотен тысяч строк исходного кода (от 100 до 500 тысяч в соответствии с SpaceX) для каждого из транспортных средств. Стыковка «Дракона» с МКС была серьезной проблемой, требующей написания большого количества нового кода для капсулы «Дракона». Но оценивать усилия по написанию исходного кода только количественно по количеству строк неправильно. Слова Билла Гейтса: это все равно, что оценивать степень, в которой самолет был построен, строго исходя из его массы.

Программное обеспечение, написанное для Falcon 9 и Dragon, написано на C ++. Очевидно, что драйверы (и другие программные компоненты, близкие к операционной системе) написаны на языке C. В 2016 году появилась информация о том, что пользовательский интерфейс разработан с использованием браузера Chromium и JavaScript. Каждый дисплей независим, имеет свою собственную компьютерную систему и может быть перезагружен при необходимости. Существует также возможность использовать кнопки под дисплеями для управления в случае проблем с сенсорным экраном.
Как (разработка и тестирование)
Один источник говорит о том, что разработчики SpaceX проводят разработку и тестирование на настольном компьютере, непосредственно на реальных компьютерах, готовых к полету. Низкая стоимость этих систем позволяет им такой подход. Этим утром я просто гулял по фабрике, только в одном офисе, и у нас на рабочих столах более 40 летных компьютеров. И если бы они были труднодоступными предметами, у нас не было бы такого количества компьютеров.
Темпы развития были невероятными, пока не была достигнута текущая версия Falcon 9. В 2013 году уже было достигнуто третье поколение навигационных компьютеров.
В дополнение к этому способу разработки, существует практически целая система, которая имитирует ракету, доступную для разработчиков - ракета в комнате. Полное тестирование может быть выполнено следующим образом:
- если новые алгоритмы работают правильно
- если параметры миссии верны
- различные ошибки или непредвиденные ситуации (например: выключение двигателя, ошибки расчета, ошибки управления, выключение компьютеров во время работы)
Инженерам рекомендуется добавлять сбор данных там, где они думают, что это будет полезно. Журналы собираются и анализируются автоматически, и тревоги могут быть сгенерированы на основе этих значений. Они хранятся вместе с запущенными программами. Если у ракеты есть проблема, она может быть исследована, дублируя точно входные данные, чтобы решить ее. Более того, код автоматически тестируется на моделируемой ракете.
Автоматически сгенерированный код не используется (например, Matlab).
С точки зрения продолжительности работы программного обеспечения, Dragon предлагает гораздо больше возможностей для долгосрочной работы по сравнению с Falcon 9 (часы или дни против 10 минут). Очевидно, что существует также возможность устранения ошибок, когда транспортное средство находится в полете. Проблемная ситуация, с которой Дракон столкнулся в начале, была, когда он не мог состыковаться из-за освещения. Решением было обновить программное обеспечение капсул в полете.
Команда разработчиков систем программного обеспечения для транспортных средств в 2013 году насчитывала 35 разработчиков, а группа разработчиков систем поддержки миссий - 9 разработчиков. Выпускники инженерных факультетов (компьютеры, электроника), физики, математики или даже инженеры-самоучки.
Только сегодня я нашел на Glassdoor должность разработчика программного обеспечения для встраиваемых систем Linux в SpaceX (в Хоторне, Калифорния). Скорее всего, поддерживать это программное обеспечение и разрабатывать новые компоненты. Что это?

Старший инженер-программист
$ 88K- $ 149K
Как инженер по летному программному обеспечению в команде Embedded Linux Software, вы будете проектировать, разрабатывать и тестировать программное обеспечение, которое используется для запуска и эксплуатации полетных систем SpaceX. Вы будете взаимодействовать с другими инженерами SpaceX, чтобы выяснить потребности миссии и написать высоконадежное программное обеспечение, которое превратит миссию в реальность. Вы будете нести ответственность за полный жизненный цикл создаваемого вами программного обеспечения.
Аэрокосмический опыт не обязателен для достижения успеха - скорее мы ищем умных, мотивированных, совместных инженеров, которые любят решать проблемы и хотят оказать влияние на супер вдохновляющую миссию
 
Открытый Линукс, переделанный в ОСРВ ещё больше зависит от разработчика. В случае VxWorks, QNX и т.п. хоть понятно - кому бить морду и с кого требовать деньги. Как только начинается адаптация чего-то собственной "бесплатной" командой под конкретную задачу, опасность прогаживания полимеров увеличивается в разы. А тот-же исходный RTLinux, на основе которого многие лепят свои поделия - не вполне надёжен.
 
Мне использование Linux в авиации и космосе кажется странным с легальной точки зрения.
Я с этим имел дело последний разно лет 20 назад, но по моему легально како было тако есть.
Был и есть такой стандарт DO-178B. Может появилось и что-то новее. Это стандарт по поводу тестирования софта который используется в авиации. Типа тесты должны покрыть каждую линию кода и каждую комбинацию параметров к ней приводящую. Linux насколько я знаю в DO-178B не сертифицирован. Может конечно что-то изменилось, но мне кажется я бы слышал об этом. Я все время в Linux работаю, но к авиации сейчас отношения не имею
 
Назад
Сверху Снизу