ISSN 0236-235X (P)
ISSN 2311-2735 (E)

Journal influence

Higher Attestation Commission (VAK) - К1 quartile
Russian Science Citation Index (RSCI)

Bookmark

Next issue

4
Publication date:
09 September 2024

Building common information space for simulators and training complexes Using SOTA distributed network simulation environment

The article was published in issue no. № 3, 2013 [ pp. 10-16 ]
Abstract:The paper presents an alternative solution for the problem of association and cooperation arrangements of sim-ulators software, training systems and complexes in a common information space based on distributed network simulation environment. The principles of construction, architecture and capabilities of distributed network simulation environment SOTA are considered in detail. The steps to create trainingsystems and complexes based on the modeling environment SOTA are described. Using distributed modeling system while developing systems of different complexity will provide easy integration, modernization and further service. And accurate splitting into components (knots united in a local computer net-work) will help to separate functional capabilities. For example, for sea simulator the knot modeling tactical situation will model behavior of objects, the knot modeling object willmodel onboard systems and devices, the knot modeling meteorolog-ical situation will model weather and environment, the simulator controlling knot will control and manage trainingcourse. Every knot is a virtual server. It is located on the physical server and combined by SOTA transport through a localnetwork with a set of workplaces and contents of databases.
Аннотация:Представлен вариант решения задачи объединения и организации взаимодействия специализированного про-граммного обеспечения тренажеров, тренажерных систем и комплексов в едином информационном пространстве на основе разработанной распределенной сетевой среды моделирования. Подробно рассмотрены принципы построения, архитектура и возможности распределенной сетевой среды моделирования СОТА. Описаны этапы создания трена-жерных систем и комплексов на базе этой среды. Использование системы распределенного моделирования при раз-работке систем различной сложности обеспечит их легкую интеграцию, модернизацию и дальнейшее обслуживание, а четкое разбиение на составные части – узлы, объединенные в локальную вычислительную сеть, отделить функцио-нальные возможности. К примеру, в морском тренажере узел моделирования тактической обстановки будет модели-ровать поведение объектов, узел моделирования объекта-носителя – бортовые системы и устройства, узел моделиро-вания метеорологической обстановки – погоду и окружающую среду, а узел управления тренажером будет осущест-влять контроль и управление ходом тренировки. Каждый из узлов, являясь виртуальным сервером, расположен на физическом сервере и объединен посредством транспорта СОТА через локальную сеть с набором рабочих мест и со-держимым баз данных.
Authors: (egrif@rambler.ru) - , Russia, Yanyushkin V.V. (vadim21185@rambler.ru) - The Center for Space Simulator Development and Personnel Training (Deputy General Manager), Moscow, Russia, Ph.D
Keywords: formats, plugins, sota, hardware and software training systems and complexes, simulators, distributed network simulation environment
Page views: 9655
Print version
Full issue in PDF (13.63Mb)
Download the cover in PDF (1.39Мб)

Font size:       Font:

Разработка современных обучающих программно-аппаратных тренажеров и комплексов, предназначенных для подготовки персонала, подразумевает решение ряда технических проблем. В структуре тренажера конструктивно присутствует множество составных частей, при этом каждая из них решает свои задачи. Одна из основных технических задач, возникающих в процессе разработки современных тренажеров и программно-аппарат­ных тренажерных комплексов, – это обеспечение взаимодействия программных компонентов составных частей и объединение их в общее математическое информационное пространство [1].

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

Специально под задачи космического тренажеростроения была разработана программная система распределенного моделирования ТРИО (тренажная распределенная исполнительная оболочка) [2]. Согласно этой системе, тренажер состоит из двух частей: системы моделирования, представляющей собой программную реализацию моделей узлов, и вычислительной системы, на которой осуществляется моделирование. Система ТРИО разделена на две части: среду разработки и среду исполнения. Среда разработки предназначена для автоматизированной разработки ПО системы моделирования тренажера. ТРИО объединяет в одну систему программные объекты, которые делятся на модели и форматы. Структура ПО нескольких узлов вычислительной системы при использовании технологии ТРИО показана на рисунке 1. При организации процесса моделирования среда исполнения ТРИО манипулирует всей совокупностью моделей и форматов с учетом их размещения на физически разных узлах вычислительной системы тренажера. После запуска процесса моделирования на каждом такте происходит обмен переменными между узлами в соответствии с построенными списками. Анализ существующих внедрений в комплексные тренажеры (см. рис. 1) позволяет сделать вывод о ряде существенных недостатков.

В ТРИО модель данных в общей области резервирует переменные и массивы исходя из максимально возможной потребности. Таким образом, для проведения тренировки выделяется во много раз больше памяти, чем необходимо. Такое потребление памяти может негативно повлиять на скорость работы моделей, время выполнения операций записи и воспроизведения контрольных точек, обусловить завышенные требования к харакПодпись:  Рис. 1. Структура системы ТРИОтеристикам аппаратных средств тренажера. Описание одного физического объекта распределено по множеству массивов, а не сосредоточено в полях конкретного класса. Такое описание делает невозможным накопление отлаженных классов, реализующих моделирование и отображение различных объектов, а также их повторное использование и перенос в следующие проекты.

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

Другой реализацией является применение распределенной системы моделирования вычислительно-моделирующего комплекса (ВМК), функционирование которой строится по принципу клиент-сервер. Составными частями данной системы являются сервер, существующий в единственном экземпляре в тренажере, и набор клиентов, которые получают сведения о модельном времени, состоянии тренировки и задействованных моделях. Система моделирования предполагает максимальное отделение моделей от остальных компонентов системы и формализацию способов взаимодействия моделей. Исполнительная система располагает минимальным объемом информации о моделях, благодаря чему может работать с разнородным составом моделей. Данный подход позволяет произвольно масштабировать систему [3]. Сервис сетевого взаимодействия моделей, предоставляемый ВМК, также решает вопросы синхронизации данных моделируемых объектов на различных рабочих местах (рис. 2).

Подпись:  
Рис. 3. Архитектура среды моделирования СОТА
Подпись:  
Рис. 2. Структура системы с использованием ВМК
Система ВМК, используемая преимущественно в тренажерах для подготовки моряков, учитывает многие специализированные особенности проектирования, внедрения и комплексирования сложных распределенных систем данной тематики. Использование ее как универсальной распределенной среды моделирования для создания тренажеров других тематик, в том числе тренажеров подготовки специалистов пилотируемой космонавтики, функционально-моделирующих стендов специалистов центра управления полетами (ЦУП) и главной оперативной группы управления (ГОГУ) может быть затруднено вследствие ограничений системы и заложенных функциональных возможностей.

Еще одним вариантом решения задачи организации распределенного взаимодействия в сложном тренажерном комплексе является использование распределенной сетевой среды моделирования СОТА. Это комплекс взаимодействующих программных компонент, основанных на системе с объектно-ориентированной динамической БД с событийно-уведомительным управлением. Основное назначение среды СОТА – использование при разработке обучающих систем и программно-ап­паратных моделирующих комплексов в тренажеростроении в качестве базового системообразующего ПО, объединяющего программные компоненты составных частей в единое информационное пространство.

Основные возПодпись:  
Рис. 4. Структура программного модуля СОТА
можности СОТА: хранение моделируемых данных во внутренней динамической распределенной БД, доступ к моделируемым данным, модификация моделируемых данных, автоматическая синхронизация моделируемых данных, функции конфигурирования тренажера, обработка событий и уведомлений об изменении состояний системы и объектов БД, межсетевое программное событийное взаимодействие между узлами распределенной среды моделирования, функции контроля экранов узлов СОТА и удаленного управления компьютерами.

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

Основными программными компонентами среды СОТА являются программное ядро системы моделирования с внутренней БД типов, клиенты, плагины, форматы, программные модули регистрации узлов СОТА, программные модули конфигурирования, программные модули контроля объектов БД типов, текущего состояния и отладки системы моделирования. Совокупность этих программных компонентов и определяет среду моделирования СОТА. Ядро системы моделирования СОТА – это программный модуль, содержащий набор функций и классов, реализующих возможности и предоставляющих доступ к управлению и контролю за текущим состоянием системы, к чтению и модификации объектов встроенной динамической БД типов (рис. 4).

Подпись:  
Рис. 5. Структура клиента СОТА
Клиентом системы моделирования СОТА является приложение Windows, к которому подключен программный модуль и в исходный код которого встроен программный интерфейс взаимодействия СОТА (рис. 5). Другое название клиента – узел СОТА. Клиент определяет каркас програм- много компонента среды моделирования. Все узлы среды взаимодействуют между собой, используя сетевой протокол TCP-IP. Несколько клиентов СОТА могут быть запущены на одной рабочей станции (персональном компьютере) или сервере либо могут быть распределены по сети Ethernet и запускаться на разных рабочих станциях. В обоих случаях ядро системы моделирования СОТА обеспечит сетевое информационное взаимодействие и автоматически выполнит синхронизацию данных между клиентами.

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

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

Менеджер процессов системы моделирования СОТА – программный интерфейс, обеспечивающий удаленный запуск на рабочих станциях клиентов СОТА и различных приложений Windows и контроль за их состоянием (запущен/выгружен) с возможностью удаленного корректного завершения запущенных процессов. Основное назначение менеджера процессов – использование в качестве центра системы конфигурирования и реконфигурирования состояний сложных тренажеров и программно-аппаратных тренажерных комплексов, состоящих из множества компонентов, объединенных в локальную вычислительную сеть.

Каждый клиент СОТА, присоединенный к среде моделирования, проходит через несколько этапов: регистрацию, подключение, верификацию данных, процесс моделирования, отключение по завершении работы. Этап регистрации заключается в присоединении к программному модулю регистрации и в получении списка портов и IP-адресов зарегистрированных клиентов СОТА. Система верификации обеспечивает проверку целостности данных при подключении клиентов СОТА к среде моделирования. Сетевой транспорт среды моделирования СОТА построен на базе протоколов ТСP-IP и реализован на базе сокетов Windows, работающих в асинхронном режиме. После регистрации и успешной верификации устанавливается постоянное сетевое соединение между узлами для передачи данных. Каждому сетевому соединению по протоколу TCP-IP соответствует отдельный поток операционной системы Windows. Данные между узлами передаются посредством сообщений. Среда моделирования СОТА может создавать между узлами дополнительные каналы сетевого взаимодействия, предназначенные для параллельной передачи больших объемов информации между клиентами СОТА.

БД типов системы моделирования СОТА – это совокупность описаний типов данных на языке программирования С++. За каждым типом данных закреплен свой уникальный идентификатор и привязан определенный GUID [4]. Каждый тип данных привязан к определенному узлу-хозяину или плагину (формату)-хозяину, при этом только исходный код программного модуля хозяина имеет право создавать, удалять и модифицировать объекты своего типа данных. Объекты типов данных создаются, модифицируются и уничтожаются по мере необходимости в процессе работы системы моделирования. При отсутствии объектов на текущем узле система моделирования СОТА автоматически выполнит проецирование необходимых данных на текущий узел. Каждый клиент и плагин системы моделирования СОТА имеют в своем составе программный интерфейс, обеспечивающий обработку событий. Посредством обработчика событий в среде моделирования СОТА реализуется программное взаимодействие между клиентами, плагинами и форматами. Ответной реакцией среды моделирования СОТА на внешние и внутренние воздействия являются уведомительные со- бытия и события-команды. При компиляции программного ядра среды моделирования СОТА автоматически формируется программный инструментарий разработчика SOTA SDK. Наличие программного инструментария облегчает автоматизацию процесса проектирования и разработки ПО тренажерных комплексов.

Особенности реализации ПО среды моделирования СОТА:

–      легкость доступа: доступ к объектам БД СОТА, а также к программным интерфейсам СОТА можно получить практически из любого cpp- или h-файла;

–      автоматическая сборка мусора: при завершении работы среда моделирования корректно автоматически выгружает все объекты БД СОТА и освобождает занимаемую память;

–      корректное закрытие сетевых соединений: при завершении работы клиенты среды моделирования СОТА отрабатывают все необработанные входящие сетевые сообщения и отсылают все накопленные исходящие, после чего корректно закрывают сетевые подключения;

–      независимость расположения: плагины СОТА не привязаны жестко к определенному узлу и могут менять узел по необходимости без потери работоспособности, в то же время клиенты СОТА жестко не привязаны к IP-адресам рабочих станций и при необходимости могут изменить свое местоположение в ЛВС без потери работоспособности системы моделирования.

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

Шлюз такжеПодпись:  
Рис. 6. Вариант информационного взаимодействия тренажеров
может быть реализован как часть ПО другого тренажера, к примеру, один (или несколько) из программных компонентов тренажера В может стать полноценным клиентом СОТА, соответственно, при таком варианте взаимодействия в процессе разработки следует учитывать усиленную межтренажную программную и аппаратную зависимость (рис. 6).

Создание тренажерных комплексов с использованием среды моделирования СОТА можно разделить на следующие этапы.

1.     Разбиение решаемой задачи на подзадачи и распределение подзадач по узлам и плагинам (форматам) системы моделирования в зависимости от их специфики, определение структур типов данных и динамических массивов, необходимых для решения разработанных подзадач.

2.     Определение необходимых информационных потоков данных и взаимодействия узлов и плагинов (форматов), оптимальное распределение плагинов по узлам с целью достижения большей эффективности и производительности.

3.     Занесение разработанных структур типов данных в БД СОТА и проектирование дополнительных возможностей (конфигурирование, наблюдение) в рамках разрабатываемого тренажера.

Среда распределенного моделирования СОТА является гибким и эффективным программным инструментом для построения системы моделирования, позволяющим решать широкий круг задач при разработке сложных комплексных тренажеров. Использование данной среды дает возможность эффективно и в кратчайшие сроки не только создавать новые тренажеры, тренажерно-модели­рующие комплексы и обучающие системы, но и наращивать их функционал и интегрировать в единое информационное пространство ранее созданные тренажеры, что является актуальной задачей при наличии множества поколений созданных тренажерных систем. Реализации информационного взаимодействия тренажеров посредством набора шлюзов системы моделирования СОТА – это один из практических примеров решения задачи взаимодействия различных тренажеров и формирования единого информационного пространства, обладающего набором единообразных интерфейсов доступа и управления.

Литература

1.     Шукшунов В.Е., Янюшкин В.В. Проектирование тренажерно-моделирующих комплексов нового поколения // Программные продукты и системы. 2012. № 4. С. 192–200.

2.     Шукшунов В.Е., Циблиев В.В., Потоцкий С.И. Тренажерные комплексы и тренажеры. Технологии разработки и опыт эксплуатации. М.: Машиностроение, 2005. 384 с.

3.     Шорин А.Б., Новиков И.В. Варианты взаимодействия рабочих мест тактического тренажера // Программные продукты и системы. 2009. № 1. С. 111–113.

4.     Рихтер Д., Назарр К. Windows via C/C++. Программирование на языке Visual C++. СПб: Питер, Русская редакция, 2009. 896 с.

References

1.     Shukshunov V.E., Yanyushkin V.V., Programmnye pro­dukty i sistemy [Software and Systems], 2012, no. 4, pp. 192–200.

2.     Shukshunov V.E., Tsibliev V.V., Pototsky S.I., Trena­zhernye kompleksy i trenazhery. Tekhnologii razrabotki i opyt ekspluatatsii [Training complexes and simulators. Design technique and field experience], Moscow, Mashinostroenie, 2005.

3.     Shorin A.B., Novikov I.V., Programmnye produkty i sis­temy [Software and Systems], 2009, no.1, pp. 111–113.

4.     Richter J., Nazarre Ch., Windows via C/C++. Programmi­rovanie na yazyke Visual C++ [Windows via C/C++. Visual C++ programming], Piter, 2009.


Permanent link:
http://swsys.ru/index.php?page=article&id=3551&lang=en
Print version
Full issue in PDF (13.63Mb)
Download the cover in PDF (1.39Мб)
The article was published in issue no. № 3, 2013 [ pp. 10-16 ]

Perhaps, you might be interested in the following articles of similar topics: