Архитектура и интерфейс
сетевого стенда для исследования управления классом
морских подводных
объектов[1]
Б.Д. Аминев,
А.Д. Лапицкий,
А.Е. Миненок,
К.М. Хримпач,
ст. инж.-прогр., аспиранты, lab45_1@ipu.ru,
ИПУ РАН, г. Москва
В данной работе рассматривается архитектура и
графический интерфейс пользователя сетевого стенда полномасштабного
имитационного моделирования (СИМ) «Нептун», призванного решать задачи
исследования движения морского подводного объекта (МПО) в нормальных, аварийных
и специальных режимах эксплуатации и выработки на основе этих исследований
рекомендаций по составу технических средств управления и алгоритмам управления
ими для рассматриваемого класса МПО. Научное руководство работой проводит
к.т.н. С.К. Данилова.
This
paper describes the architecture and the graphical user interface of network
full-scale imitational modeling stand (IMS) "Neptune", designed to
meet the challenges of a motion research of marine underwater object (MUO) in
normal, emergency and special modes of operation and to produce on the basis of
these researches recommendations on the composition of technical equipment
control and management algorithms for the class of MPO. Ph.D. S.K. Danilova is
the scientific leader of the research.
МПО является сложной динамической нелинейной
системой, описываемой системой дифференциальных уравнений высокого порядка, а
управление МПО осуществляется с использованием большого числа технических средств
управления (ТСУ). Поэтому для изучения свойств такого объекта, получения
возможности управления им возникает необходимость в разработке СИМ,
предоставляющего исследователю удобный в использовании интерфейс для
верификации моделей МПО, ТСУ и внешних возмущений, а также последующего их
изучения.
СИМ должен иметь модульную архитектуру, для
обеспечения возможности гибко модифицировать окружение исследуемой модели:
вносить дополнительные внешние возмущения и применять различные виды
управления. Управление объектом является сетевым и распределенным по постам. В
связи с этим необходимо спроектировать систему сетевого полномасштабного
имитационного моделирования, реализующую как взаимодействие между постами
управления, так и решающую сервисные задачи в помощь исследователю [1].
В данной работе рассматривается принципиальная
модульная архитектура СИМ «Нептун» и сетевые аспекты создания СИМ для
исследования и проектирования алгоритмов управления МПО. Также в статье
произведен обзор интерфейса разрабатываемой системы.
С использованием разрабатываемого интерфейса
исследователя, входящего в состав программного обеспечения СИМ проводятся
исследования по отработке существующих алгоритмов управления, и создается база
для разработки новых.
Пользовательский интерфейс стенда проектируется для
демонстрации ключевых для текущей ситуации или режима физических параметров МПО
(дифферента, глубины погружения, площади пробоины при аварии и т.д.). Интерфейс
призван обеспечить возможность как для отображения параметров МПО, так и для
динамического их изменения в ходе моделирования и должен позволить
исследователю-прикладнику погрузиться в проблемную область – иметь возможность
проводить мониторинг состояния и контроль всех ТСУ, подавать на МПО различные
возмущающие воздействия и следить за развитием ситуации.
Пользовательский интерфейс поддерживает функции
двустороннего обмена управляющими сигналами, что позволит запускать алгоритмы
управления в автоматическом, полуавтоматическом или дистанционном режиме.
Пользовательский интерфейс поддерживает общую сетевую архитектуру стенда,
основанную на продукте RabbitMQ компании VMware. Разработка стенда включает в
себя как распределение управления по постам управления, так и создание
сервисных функций для ускорения процессов разработки и отладки [2].
Следует заметить, что предшественником и идейной
основой СИМ «Нептун» является разработанный ранее в лаб. 45
стенд «ВЕСТ-85Д», функциональные возможности которого и призван расширить новый
стенд.
Для обеспечения масштабируемости и большей гибкости
СИМ разработан программный интерфейс для взаимодействия с вычислительным ядром
системы. Архитектура вычислительного модуля стенда представлена на рис. 1.
Под вычислительным ядром системы понимается реализованная на языке C++ модель
рассматриваемого класса МПО. В данный модуль входят программные реализации
имитационной модели движения МПО, моделей ТСУ (цистерн главного балласта (ЦГБ),
гидроприводов и энергетической установки (ЭУ)), а также модели затопления
отсека прочного корпуса при возникновении аварийной ситуации. Взаимодействие
сторонних подсистем осуществляется через модуль мультиплексирования времени,
позволяющий производить моделирование (применять управление) как в режиме
реального времени, так и в режиме ускоренного времени. Модуль мультиплексирования
времени имеет полный доступ к характеристикам МПО. При разработке программных
систем, использующих реализованное вычислительное ядро СИМ, имеется возможность
использовать только необходимые для конкретной задачи параметры МПО.
рис. 1.
Архитектура вычислительного модуля
Любая подсистема, взаимодействующая с
вычислительным ядром стенда должна получать на вход фазовые координаты МПО и, в
результате своей работы, может производить управляющее воздействие, которое
будет передано на работающую модель МПО. Разработка соответствующих подсистем
не затрагивает верифицированную реализацию модели МПО и может производиться
независимо от вычислительного ядра стенда [3].
Выделим основные черты и архитектурные особенности
подсистем аварийного управления, которые были спроектированы:
· функционирование в
нескольких режимах – реализована возможность управления с применением
мультиплексирования времени;
· наличие модуля управления –
модуля, основанного на алгоритмах, действующих в современных системах
управления. Данный модуль в качестве выходного сигнала передает управляющий
сигнал для ТСУ независимо от режима работы подсистемы;
· наличие пользовательского
интерфейсного модуля, который спроектирован для демонстрации ключевых для текущей
ситуации физических параметров МПО (дифферента, глубины и пр. при пробоине
прочного корпуса). Данный модуль должен обладать функциональными возможностями
по осуществлению управления, инициированного оператором.
Указанная архитектура стенда позволяет реализовать
как множество независимых приложений, осуществляющих исследование управления
МПО, так и единое сетевое информационное пространство, позволяющее исследовать
результаты моделирования на нескольких машинах одновременно [2].
Благодаря использованию модульной архитектуры
данное решение позволяет в достаточно короткие промежутки времени создавать все
новые и новые интерфейсы исследователя-прикладника, удобно оборудовать рабочее
место исследователя, а также синхронизировать процесс исследования, что может
быть полезно при проектировании нового комплекса систем управления техническими
средствами (КСУ ТС) МПО.
На рис. 2 показана схема необходимого
взаимодействия между различными модулями системы. Учитывая разработанную
архитектуру, необходимо наличие приложения, которое бы рассчитывало фазовые
координаты МПО в реальном и ускоренном масштабе времени. При этом может существовать
неограниченное количество клиентских приложений, которые собирают информацию
для исследователя.
Также необходим двусторонний обмен управляющими
сигналами, а именно: любой из исследователей по постам управления должен иметь
возможность запустить какой-либо из управляющих алгоритмов в автоматическом,
полуавтоматическом или дистанционном режиме [4].
рис. 2.
Принципиальная схема сетевого взаимодействия
Принимая во внимание опыт разработки в нашей
лаборатории СИМ и аппаратно-программных комплексов, были исследованы различные
новые технологии построения подобных систем. Анализ возможностей реализации
сетевого взаимодействия производился по таким параметрам, как:
1) скорость разработки программного обеспечения;
2) надёжность сетевого взаимодействия;
3) способность обеспечить моделирование в реальном и ускоренном
времени.
В результате было принято решение использовать продукт
RabbitMQ компании VMware. Данный продукт обеспечивает высокую надежность доставки
сетевых сообщений, а также высокую скоростью работы. Доказательством этого
утверждения служит его применение в таких высоконагруженных системах, как [5]:
- распределённые
вычислительные системы высоконагруженных ресурсов;
- сотовые операторы;
- обработка биржевых
транзакций.
В результате была сформирована окончательная
архитектура сетевого стенда, представленная на рис. 3.
рис. 3.
Используемая схема сетевого взаимодействия
Здесь сервер RabbitMQ выступает посредником между
приложениями исследователей, что обеспечивает достаточно простую конфигурацию
сети.
В совокупности с разработанной архитектурой СИМ,
данный подход приносит с собой такие существенные нововведения в процесс
разработки системы имитационного моделирования МПО, как:
1) ускорение процесса разработки интеллектуальных интерфейсов
исследователя – требуется фокусировка только на решении задачи построения интерфейса;
2) упрощение отладки программного обеспечения;
3) надёжность и гибкость сетевого взаимодействия;
4) возможность подключения различных приложений для анализа и
тестирования системы полномасштабного имитационного моделирования.
При разработке интерфейса исследователя было
принято решение реализовать его в виде набора окон отражающих состояние объекта
исследования в целом и специализированных окон, которые используются для
отработки специальных и аварийных ситуаций. Данная структура обусловлена тем,
что для наблюдения за параметрами МПО необходимо разделять параметры, которые
необходимо показать исследователю и параметры модели, описывающие полное
состояние МПО. Также в интерфейс включены модули по отображению МПО в
трехмерной среде, с целью предоставить визуальную информацию о движении
объекта, окружающем его пространстве и процессе его пространственного
маневрирования [3].
Окно
исследования управления (рис. 4) содержит ключевые параметры МПО, которые необходимо
показать исследователю МПО. Данное окно позволяет оператору вмешаться в процесс
движения МПО, используя предоставляемые интерфейсные возможности.
Пользовательский интерфейс разрабатываемого стенда позволяет гибко настраивать
множество параметров модели рассматриваемого класса МПО.
рис. 4.
Подсистема исследования модели МПО (Окно исследования управления) – слева. Окно
параметров рулевого управления – справа
В Окне исследования управления можно наблюдать
текущие значения отклонения большого, малого кормовых, носового, вертикального
и балансировочного рулей, наличие пробоины в отсеках, мощность энергетической
установки и фазовые координаты МПО. Также можно выполнять дистанционное
управление, задавая эти параметры, продувая и заполняя цистерны. В этом окне
располагаются элементы управления процессом моделирования – остановки процесса
моделирования, его сброса и запуска, ускорения процесса моделирования.
Окно
параметров рулевого управления (рис. 4) позволяет менять углы отклонения
всех рулей во время работы модели, позволяя тем самым осуществлять дистанционное
управление.
Окно
мониторинга состояний ГБ (главного балласта) и отсеков включает ключевые
параметры МПО связанные с текущим состоянием и параметрами моделируемых процессов
в отсеках и ЦГБ. Данное окно позволяет оператору наблюдать и изменять состояние
каждого отсека – смоделировать симулировать пробоину в отсеке и продуть или
заполнить каждую цистерну отдельно. В процессе реализации окна были приняты
следующие проектные решения:
1. Окно содержит группу элементов управления, в которой приведены
активные элементы, отвечающие за визуальное отображение отсеков, с возможностью
задать величину пробоины;
2. Окно содержит группу элементов управления, в которой приведены активные
элементы, отвечающие за визуальное отображение множества ЦГБ, с возможностью
задать продувание и заполнение каждой цистерны;
3. В элементах визуализации отсеков и ЦГБ, показывается в процентах
уровень затопления объема забортной водой.
Окно мониторинга состояний ГБ и отсеков
(рис. 5) отображает уровень воды в цистернах и отсеках (при наличии
пробоины), дает возможность создать аварию в том или ином отсеке для
исследования аварийной ситуации. В этом окне также отображается процесс
заполнения и продувания цистерн ГБ.
В интерфейсе предусмотрено задание начальных параметров цистерн (рис. 5), изменение
которых позволяет проводить исследования по составу ТСУ существующего класса
МПО и формировать, в случае необходимости, предложения по его изменению для
эффективного решения поставленных задач.
рис. 5.
Окно мониторинга состояний ГБ и отсеков – слева. Параметры цистерн – справа
Также имеется окно задания параметров отсеков МПО, с помощью которого можно как задать
признак наличия пробоины и ее физические параметры, так и объем, местоположение
отсеков относительно центра тяжести МПО. Все это позволяет проводить на
разрабатываемом стенде весь спектр экспериментов по исследованию управления в
аварийных ситуациях.
За создание 3D среды и ряда эффектов в
разрабатываемом стенде отвечают базы геометрических примитивов и
мультиплатформенный инструментарий Unity3D. Созданные с помощью
Unity3D приложения могут выполняться на операционных системами Windows, OS X
и Linux. Имеется возможность создавать интернет-приложения с помощью
специального подключаемого модуля к браузеру Unity, а также с помощью
экспериментальной реализации в рамках модуля Adobe Flash Player. Приложения,
созданные с помощью Unity, поддерживают DirectX и OpenGL. Также важно отметить
полностью настраиваемый интерфейс пользователя, с помощью которого создание
ландшафтов и настройка условий запусков возможна в режиме drag-and-drop.
Подсистема 3D-моделирования (рис. 6) призвана
предоставить визуальную информацию о движении объекта, окружающем его
пространстве и процессе его пространственного маневрирования, а также для
построения сложных многомерных графиков [2], [7].
рис. 6.
Инструментарий Unity3D
Архитектурно подсистема представляет собой модуль скриптов,
реализующих логику взаимодействия с вычислительным ядром системы, базу объектов,
из которых, как из структурных блоков, создаются различные 3D-сцены и
интерфейсы, и ядро подсистемы. Ядро состоит из высокооптимизированного
графического пакета работающего как для DirectX (в том числе имеется поддержка
DirectX 11), так и для OpenGL. Модуль скриптов включает
функциональный код взаимодействия с сокетом, через который передаются данные из
вычислительного ядра и логику работы с другими элементами сцен, таких как
камеры, освещение, системы частиц. База объектов представляет собой репозиторий
3D-примитивов, из которых собираются законченные сцены.
Сейчас подсистема 3D-моделирования реализует
создание сцен на основе базы объектов, создание ландшафтов на основе карты
высот. Подсистема через сокет получает данные из вычислительного ядра для
модели МПО и отображает полученные данные на 3D-модель, созданную на основе
класса реально существующих МПО, к которой прикреплены наборы камер,
реализующие различные перспективы для наблюдения за пространственным
маневрированием. На данный момент в разработке находятся модули, отвечающие за
моделирование технических средств МПО. Модули позволят получить визуальное
представление о работе технических средств внутри лодки и процессах управления
[4], [6].
В заключение представим результаты моделирования на
стенде «Нептун» процесса перехода МПО по дифференту для случаев набора дифферента
в 5, 10, 15, 20 и 25 градусов (рис. 7).
рис. 7.
Переходы по дифференту
1. Борисов В.Г., Данилова
С.К., Чинакал В.О. Применение средств виртуальной реальности при создании
комплексных тренажеров и систем управления. Труды международной конференции
«Системы проектирования, технологической подготовки производства и управления
этапами жизненного цикла промышленного продукта (CAD/CAM/PDM – 2009)». ИПУ РАН,
г. Москва, 2009.
2. Борисов В.Г., Данилова С.К.
Сетевой компьютерный стенд-тренажер для исследования задач управления и
обучения операторов для класса морских подводных объектов. Материалы конференции
«Управление в технических, эргатических, организационных и сетевых системах»
(УТЭОСС-2012). – СПб.: ГНЦ РФ ОАО «Концерн «ЦНИИ «Электроприбор», 2012. С.
1212-1215. ISBN 978-5-900780-92-4.
3. Борисов В. Г., Данилова С.
К. Среда моделирования для создания интеллектуальных средств поддержки
операторов управления морскими подводными объектами. Материалы Седьмой
Всероссийской научно-практической конференции «Перспективные системы и задачи
управления». Таганрог: Изд-во ТТИ ЮФУ, 2012. С. 254-259.
4. Лапицкий А.Д., Миненок
А.Е., Хримпач К.М. Построение интерфейса исследователя для изучения поведения
верифицированной модели МПО при различных внешних возмущениях. Известия ЮФУ.
Технические науки, № 3 (140) (2013). ISSN 1999-9429 (стр. 204-210).
5. Интернет ресурс.RabbitMQ– Messaging that just works.
http://www.rabbitmq.com/resources/RabbitMQ_Introduction.pdf.
6. Хримпач К.М., Кусков А.М.,
Кусков И.М. Современные технологии визуального моделирования в сложных
имитационных моделях. Системы проектирования, технологической подготовки
производства и управления этапами жизненного цикла промышленного продукта
(CAD/CAM/PDM – 2012). Труды 12-й международной конференции. Под ред. Е. И.
Артамонова, М.: ООО «Аналитик». – 2012. С. 133-136. ISBN 978-5-905675-33-1.
7. Борисов В. Г., Данилова С.К.,
Чинакал В.О. Разработка системы отображения виртуальной реальности с
использованием типовых объектов и конфигурирования. // Труды ХХХII
Всероссийской конференции «Управление движением морскими судами и специальными
аппаратами». ИПУ РАН, г. Адлер, 2005.