Найти в Дзене
Snout_News

Как мы участников ЦИПР обучали пилотированию МС-21

Для начала коротко о том, что включал в себя наш стенд. Стоит отметить, что за исключением HOTAS и ПК все части стенда отечественные. Кстати, интересно, что буквально каждый подходивший к нам иностранец специально уточнял: «Это полностью ваша разработка, российская?» и «Это реально работающий софт или прототип?». Прежде чем построить самолёт, его нужно спроектировать, а прежде чем управлять им, нужно моделировать взаимодействие системы управления и собственно объекта управления. Ниже показано, как выглядит модель движения самолёта, которую мы собрали. Краткая статистика: Вся система, как можно заметить, разделена на несколько функциональных частей: Часть систем представлена блоками со встроенным кодом на Си – как, например, подсистемы расчёта аэродинамических характеристик или координат ВС. Часть систем в модели – это блоки со встроенным кодом на языке Julia, как, например, блоки формирования последовательности байтов для передачи по UDP или блок расчёта параметров атмосферы. Некоторые
Оглавление

Стенд испытаний комплексной системы управления МС-21

Для начала коротко о том, что включал в себя наш стенд.

  1. Модель движения среднемагистрального самолёта МС-21, учитывающая:
    аэродинамику самолёта,
    силы и моменты от двигателей (в нашем случае ПД-14),
    параметры атмосферы и ветровые возмущения.
  2. Модель комплексной системы управления самолёта в Engee.
  3. Проект приборов авионики в ПрагмаСофтСтудия.
  4. Проект 3D-визуализации самолёта МС-21 и окружающей среды в Unigine.
  5. Локальный сервер от «Инферит», где развернута виртуальная машина с образом Engee.
  6. ПК с мощной видеокартой, на котором запущены:
    Sim SDK Unigine,
    САПР-интерфейсов авионики ПрагмаСофтСтудия,
    браузер с графическим интерфейсом Engee.
  7. Машина реального времени КПМ РИТМ, выполняющая расчёт модели с заданным временнЫм шагом.
  8. Ручка управления самолётом (РУС) и рычаг управления двигателями (РУД) на Thrustmaster HOTAS

Стоит отметить, что за исключением HOTAS и ПК все части стенда отечественные.

Кстати, интересно, что буквально каждый подходивший к нам иностранец специально уточнял: «Это полностью ваша разработка, российская?» и «Это реально работающий софт или прототип?».

Физика и математика: моделирвоание в Engee

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

Краткая статистика:

  • 3003 блока из библиотеки Engee,
  • 8 уровней вложенности,
  • 55 Си-файлов,
  • 6 специальных блоков РИТМ,
  • 137 настраиваемых параметров, занимающих память 5 816 байт.

Вся система, как можно заметить, разделена на несколько функциональных частей:

  • блок задания ветра – задаёт скорость ветра по осям;
  • блок начальных условий – определяет и задаёт начальные значения параметров полёта (положение в пространстве) и начальные отклонения аэродинамических поверхностей;
  • блок опроса джойстиков – считываются данные с HOTAS, масштабируются и определяются необходимые управляющие сигналы для модели;
  • блок расчёта уравнений движения – рассчитываются элементы объекта управления, а именно модели: инерции и динамики в пространстве воздушного судна (ВС), атмосферы, аэродинамических нагрузок, двигателей и некоторых других систем;
  • блок имитации бесплатформенной инерциальной навигационной системы (БИНС) – имитируются задержки при вычислении отклонений ВС в пространстве;
  • алгоритмы управления – объединяет системы управления механизацией крыла, рулями высоты и направления, элеронами, стабилизаторами, интерцепторами. Формирует управляющие воздействия для приводов ВС;
  • приводы аэродинамических поверхностей – собственно, сами органы регулирования динамики ВС и его положения в пространстве. Подсистема включает в себя приводы рулей, интерцепторов, элеронов и других элементов. Здесь же по итогу регулирования рассчитываются вектора отклонений аэродинамических поверхностей.
  • вывод графиков – включает в себя блоки периферии КПМ РИТМ для вывода графиков в GUI ОС реального времени (ОСРВ РИТМ.Реальное время), задействуются автоматически только при выполнении модели на машине реального времени КПМ РИТМ;
  • передача данных в ПрагмаСофт Студию – здесь происходит масштабирование получаемых данных, то есть состояния атмосферы и положения ВС. Затем формируются последовательности байтов, которые передаются в блок вызова функций для их отправки по UDP во внешнее приложение.
  • передача данных в Unigine – здесь происходит та же самая работа с UDP, но входными данными здесь служат координаты и угловое положение ВС, отклонения аэродинамических поверхностей.

Часть систем представлена блоками со встроенным кодом на Си – как, например, подсистемы расчёта аэродинамических характеристик или координат ВС.

Часть систем в модели – это блоки со встроенным кодом на языке Julia, как, например, блоки формирования последовательности байтов для передачи по UDP или блок расчёта параметров атмосферы.

Некоторые системы, как, например, приводы элеронов, интерцепторов и прочих аэродинамических поверхностей, собраны исключительно направленными блоками.

На этом примере видно, что моделирование в Engee позволяет разработчикам не ограничиваться в используемых подходах к модельной разработке: хотите собирать блоками – собирайте, хотите писать кодом – пишите. Приходится использовать legacy на C/C++/Python/Matlab/Fortran и т.д. – милости просим!

В этой модели, кстати, мы активно используем и именованные параметры. Так, для быстрого переконфигурирования и задания начальных значений достаточно запустить готовый скрипт на Julia или добавить 250 строк определений переменных в обратные вызовы модели. Последнее позволяет автоматически при открытии модели в Engee добавить все определения в рабочую область переменных.

Конечно, разработка такой модели – процесс длительный, с множеством итераций наращивания, отлаживания и тестирования. Но именно метод  модельно-ориентированного проектирования (MBD, model-based design) экономит нам время, средства и нервы. После сборки модели, её конфигурирования и тестирования в графиках Engee мы увидим нечто подобное:

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

Где начинается игра: поддержка внешнего оборудования в Engee

Лирическое отступлениеКажется, ещё совсем недавно, рассказывая о планах на взаимодействие с железом и разными САПР непосредственно из браузерного Engee, мы натыкались на необоснованный скепсис. Как здорово, что это в прошлом, благодаря одному из наших недавних релизов. Теперь Engee может общаться с устройствами, подключенными к PC по COM, CAN, Modbus TCP, Modbus RTU, может управлять устройствами по VISA и машиной реального времени КПМ РИТМ. Функциональности этого инструментария расширяются с каждой неделей, число поддерживаемых интерфейсов и протоколов постепенно увеличивается. Некоторые поразительные новшества появятся в  ближайшем релизе!Жаль, все фишки работы с оборудованием из Engee в этом посте не показать, и вряд ли у меня получится полноценно рассказать о них в комментариях. По такому важному случаю я подготовил специальный  вебинар. Подключайтесь 18 июня в 10:00!

Продолжим про HMI модели МС-21.

В библиотеке блоков Engee уже есть специализированные элементы, с помощью которых мы можем срастить модель с внешними устройствами и ПО.

В нашем случае это следующие элементы.

Устройства HID – игровые контроллеры Thrustmaster HOTAS. Они передают в модель сигналы тяги правого и левого двигателей, тангаж и крен.

С контроллеров можно было завести ещё пару десятков сигналов, но мы не будем запускать ракеты на пассажирском авиалайнере, да и чтение лекций по элементам управления ВС на ЦИПР – не моя компетенция.

Для тех, кто хочет пострелять, я подготовил пример со стрельбой по мишеням, не выходя из Engee: координаты целей определяются рандомайзером, а вам за время моделирования нужно поразить их как можно больше. Посмотрите, получилось интересно.\

САПР ПрагмаСофт Студия – это широко известный в узких кругах софт для отрисовки панели с приборами авионики. У него есть инструменты для моделирования сценария визуализации. На нашем стенде он читает данные из порта 7900 по IP 127.0.0.1.

Что мы отображаем в ПрагмаСофт: перегрузки – текущие и предельные, тангаж, крен, курс, давление за бортом, скорость, высоту. Все эти параметры рассчитываются в модели, а затем формируются в единый массив (вектор) длиной 64 элемента, каждый элемент которого имеет формат UInt8. Интерфейсному блоку PRAGMASOFT TX (UDP) остаётся сообщить только IP-адрес и порт назначения передачи, размер передачи, а затем в цикле передавать сами данные.

3D-движок Unigine – российская замена Unreal Engine. В плане механизма передачи данных из модели Engee в Unigine справедливо всё то, что выше я описал про взаимодействие с ПрагмаСофт. Отличие составляют лишь номер порта (5150 по тому же IP) и длина передаваемого массива данных (104).

Как уже упоминалось выше, из модели в Unigine передаются координаты и угловое положение ВС, отклонения аэродинамических поверхностей. Так на визуализации определяется положение самолёта относительно координатных плоскостей карты, наклоны фюзеляжа относительно осей, а также положения рулей, предкрылков и прочих элементов относительно фюзеляжа.

На что следует обратить внимание на этом этапе тестирования разработанной модели? Объясняю.

При моделировании в Engee и анализе графиков сигналов из модели инженер может определить соответствие наблюдаемых параметров техническому заданию. Но этап разработки модели с интеграцией в модель HMI это тестирование с приближением к реальным условиям работы. Здесь в идеале требуется участие опытного пользователя объекта управления – например, лётчика-испытателя. Он сможет задать для модели реальные управляющие воздействия и, опираясь на собственный опыт, визуально определить параметры работы модели и системы управления, недоступные разработчикам.

Что следует за этапом отладки HMI-модели? Дальнейшее её приближение к реальными условиям эксплуатации.

Engee во плоти: реальное время, изолированный контур

Ещё один шаг вверх по лестнице TRL (Technology Readiness Level, уровень готовности технологии, УГТ) – работа системы с жёстко контролируемым временем выполнения модели. Честно сказать, шаг дискретизации нашей модели не такой уж и маленький – он составляет целых 10 мс. Однако тестирование модели МС-21 в течение всей недели, пока длилась конференция ЦИПР, показало, что машине реального времени КПМ РИТМ для расчёта нашей модели в среднем достаточно и 100 мкс.

Это значит, что в такой системе мы учитываем влияние процессов, изменяющихся с частотой до 50 Гц, а при незначительной оптимизации модели – и до 5 кГц.

Как работает и как применяется КПМ РИТМ, здесь уже рассказывали мои коллеги. Я по этой теме должен лишь дополнить, что эта машина одинаково хорошо работает и с моделями Simulink, и с моделями Engee. В Engee для неё разработан пакет поддержки периферии, который позволяет быстро и без потерь заменить блоки HMI из предыдущего шага на аналогичные. Так мы подключаем оборудование не к PC с Engee в браузере, а непосредственно к машине реального времени. Можно вообще скомпилировать модель из Engee и загрузить на РИТМ, а на компьютере оставить только ПО для визуализации.

Вишенкой на этом торте будет развёртывание Engee в изолированном контуре. В одну стойку с PC и РИТМ мы смонтировали сервер от коллег из Инферит. Engee по умолчанию работает на нашем сервере. Однако для закрытых предприятий или для мест с плохой интернет-связью мы разворачиваем Engee на сервере заказчика с доступом в локальной сети предприятия.

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

Заключение

Этот проект продолжает развиваться и дальше. В качестве намёка сообщу, что для РИТМ доступно подключение устройств по МКИО, а также модулей ввода-вывода на базе ПЛИС. Кроме того, в Engee появляется всё больше блоков для моделирования специфических систем, не говоря уже о новшествах для работы с внешним оборудованием.

срочно продать авто

Срочно продать авто в Санкт-Петербурге - Точка Сбыта

Ломбард золота

Ломбарды и комиссионные магазины в СПб - Точка Сбыта

автоломбард

Автоломбард в Санкт-Петербурге - Точка Сбыта