Неотъемлемой частью научно-технической деятельности в современном мире становятся технологии системного анализа и компьютерного моделирования. Европейской кооперацией по стандартизации в области космической техники разработан ряд стандартов, рекомендующих применение технологии компьютерного моделирования для сопровождения всех этапов реализации космических проектов. Созданием моделей занимаются различные производители, каждый из которых представляет свое узкоспециализированное направление и не в состоянии создать актуальные модели всех взаимодействующих подсистем. Возникает необходимость их интеграции в единую комплексную модель, позволяющую проводить имитационные эксперименты и обладающую свойствами быстрой модифицируемости и расширяемости. Принципы накопления и использования моделей регламентирует стандарт Simulation Model Portability, в текущей редакции SMP2 [8], рекомендованный Европейской корпорацией по стандартизации. Он задает универсальные подходы к организации систем моделирования для обеспечения интегрируемости отдельных моделей в комплексные решения, их переносимости между средами моделирования и операционными системами. Стандарт определяет правила обеспечения совместимости и переносимости имитационных моделей между гетерогенными системами моделирования.
Авторы имеют опыт построения имитационных моделей функционирования командно-измерительной системы космического аппарата. Цель настоящего исследования – разработка общих принципов построения и унификации имитационных моделей, которые позволят представлять созданные авторами модели бортовой аппаратуры в соответствии со стандартом SMP2. Для решения указанной задачи требуется выполнить формальное представление структуры модели и методов, описание логики ее функционирования, а также определить компоненты унификации, предназначенные для автоматической трансляции моделей в программные элементы, работающие по стандарту SMP2.
Обзор инфраструктур имитационного моделирования
Стандарт SMP2 задает требования к основным программным элементам и свойствам, способы описания моделей, их интеграции, независимости и переносимости. Программные среды, реализующие стандарт, представляют собой инфраструктуры имитационного моделирования. Инфраструктура имитационного моделирования является комплексным решением: она охватывает сразу несколько этапов реализации космических проектов и сопутствующих задач, обеспечивает одновременное использование и модификацию модели под различные задачи, способствуя детальному отражению аспектов функционирования объекта моделирования.
В литературе описан целый ряд инфраструктур имитационного моделирования, построенных на основе стандарта SMP2 для космической отрасли. Инфраструктура SimTG используется в Astrium Satellites. Этой инфраструктуре посвящены работы Claude Cazenave, William Arrouy [3]. Еще одна инфраструктура – SimSAT, которая используется в Европейском космическом агентстве, авторы работ N. Lindman, J. Eggleston, H. Boyer и др. [5]. По технологии SMP2 строятся симуляторы центров управления полетами SWARMSIM, авторы Peter Fritzen, Daniele Segneri, Max Pignede [7]. Кроме европейских исследователей можно отметить работы южнокорейских ученых Cheol-Hea Koo, Hoon-Hee Lee, Sung-Tae Moon, Sang-Hyuck Han, Gwang-Hyeok Ju [4] из корейского института аэрокосмических разработок, которые применяют стандарт SMP2 для создания собственной среды имитационного моделирования. Как показал анализ существующих инфраструктур, применение в них стандарта SMP2 открывает широкие возможности для построения и управления моделями. Открытость и фиксированность интерфейсов взаимодействия модели и имитационной платформы позволяют создавать имитационные модели путем их интеграции между собой. Регламентирование механизмов взаимодействия моделей закладывает основу для построения комплексных решений на основе моделей различного назначения, каждая из которых отражает какой-либо аспект функционирования моделируемого объекта.
Несмотря на то, что разработка инфраструктур выполняется по заданным в стандарте принципам, в основе каждой из них лежит собственное представление о реализации модели, способах ее формирования и внутренней логике имитационного моделирования. Стандарт регламентирует верхний уровень моделируемого объекта – метамодель. Для ее описания в инфраструктурах применяется язык SMDL [8]. В метамодели определяется архитектура, иерархия и конфигурация связей отдельных моделей в единое целое. На основе метамодели инфраструктура имитационного моделирования определяет взаимодействие отдельных компонент модели и правила вызова имитационных процедур. Для моделей, используемых в метамодели, разрабатываются уникальные механизмы их внутренней реализации, методы управления отдельными элементами моделей и задания переходов между моделируемыми состояниями, не регламентируемые стандартом SMP2.
Кроме того, анализ показал, что для работы с существующими инфраструктурами пользователь должен сочетать в себе квалификацию конструктора-разработчика бортовых систем и программиста, так как для создания имитационных моделей необходимо использовать высокоуровневые языки программирования. Указанные особенности затрудняют построение или внесение изменений в разработанные модели. Авторы в своей работе предлагают использовать интеллектуальные методы представления логики функционирования модели. Для реализации предложенного подхода разработано формальное описание модели бортовой аппаратуры и предложены компоненты унификации модели.
Структура модели и компоненты унификации
Для создания модели бортовой аппаратуры были рассмотрены особенности ее функционирования в режиме штатной работы, а также при выполнении внешнего командно-программного управления. Рассматривались различные аспекты моделируемых систем, которые бы позволили решать задачи поддержки конструирования и проведения испытаний бортовой аппаратуры. Выделены основные компоненты, позволяющие описать модели работы бортовой аппаратуры, имитируя логическую структуру и функции реальных систем.
Структура модели М = <S, R> включает структурно-параметрическое описание S = <D, G, I, C, P, T> и функциональное описание R, содержащее правила выполнения модели. В структурно-параметрическом описании D – представляет множество структур данных; G – набор подсистем (элементов) модели; I – множество коммуникационных интерфейсов, соответствующих точкам входов и выходов элементов модели; С – множество связей между коммуникационными интерфейсами, определяющих направления потоков данных; P – переменные и T – таймеры. На основе структурно-параметрического описания модели формируется ее функциональное описание. Функциональное описание R = {A>B} определяет алгоритмы поведения подсистем модели и представляет собой базу знаний, которая состоит из совокупности правил. Каждое правило задается символьной конструкцией вида A>B, где A – условие, B – действие [1]. Условие A определяет, при каком состоянии элементов модели данное правило может быть применено. Правая часть правила B задает действия, определяющие шаг решения задачи или способ изменения состояния модели. Условия или действия представляют собой выражения над переменными, заданными в структурно-параметрическом описании модели, либо функции, осуществляющие изменение её состояния.
Рис. 1. Компоненты унифицированной модели
Представленная структура модели разработана в соответствии с требованиями предметной области – конструирования бортовой аппаратуры космических аппаратов. Она может быть использована для имитационного моделирования процессов функционирования бортовых систем. Для расширения сферы использования имитационных моделей и интеграции их в единую инфраструктуру на основе стандарта SMP2 требуется дополнить модель компонентами унификации, позволяющими описывать управляющие элементы, связи и возможные воздействия на модель. Унифицированное представление модели позволит реализовать подсистемы инфраструктуры моделирования, такие как графический построитель модели, планировщик, модуль протоколирования событий, визуализатор данных и имитатор действий моделей. А также задавать параметры управления имитацией и моделирования внешних воздействий и нештатных ситуаций.
В рассмотренных авторами примерах инфраструктур применяются различные подходы к построению модели. Так, в проекте SWARMSIM [6] модель является единственным источником производства для всей системы. Графическое представление модели реализуется на языке UML. Программные компоненты позволяют проводить управляемую интеграцию частей бизнес-логики с частью генерации модели. Все последующие проектные изменения выполняются на графическом представлении модели. В своей работе авторы планируют использовать информационно-графическое представление модели, отражающее действительную структуру бортовой аппаратуры, ее состав и свойства, как для этапа построения модели, так и в процессе имитационного моделирования. При симуляции модель будет визуализировать протекающие в ней процессы, передачу и отработку команд, изменение параметров и пакетов данных. Для встраивания такой модели в инфраструктуру и поддержки требований стандарта SMP2 по переносимости выполнена унификация элементов модели.
Стандарт SMP предполагает пять подходов к построению и интеграции моделей: на основе классов (class-based design), на основе интерфейсов (interface-based design), на основе компонентов (component-based design), на основе событий (event-based design), на основе потоков данных (dataflow-based design). В связи с ориентацией на потребности конструкторов бортовой аппаратуры космического аппарата и максимальным приближением модели к моделируемому объекту, как в части функционального, так и в части структурного описания, унифицированная модель ориентирована на интеграцию на основе интерфейсов.
Метамодель на языке SMDL содержит описание отдельных моделей, их точек входа и коммуникационных интерфейсов. Структура метамодели регламентируется синтаксисом языка. При реализации метамодели будут проработаны механизмы автоматической генерации регламентируемых стандартом структур данных, каталогов и сборок. Интеграционный модуль служит промежуточным звеном и обеспечивает вызов декларированных в метамодели функций путем передачи управления в библиотеку моделей. Интеграционный модуль собирается автоматически на основе построенной модели, путем генерации и компиляции кода на языке С++. Требование реализации модели на С++ заложено в стандарте SMP2. Это является одним из факторов, обеспечивающих переносимость моделей между разными инфраструктурами. Для использования моделей, написанных на других программных языках, в модель закладывается модуль окружения, позволяющий интерпретировать обращения к библиотеке на C++ в вызовы методов модели.
Библиотека моделей реализует механизмы, обеспечивающие функционирование модели. В нее входят механизмы логического вывода и взаимодействия между элементами модели через коммуникационные интерфейсы. Модели в библиотеке настраиваются в соответствии с конфигурацией, которая содержит структурно-параметрическое описание модели в виде блоков и коммуникационных интерфейсов и функциональное описание в виде базы правил.
Представленные компоненты унификации позволяют создавать, интегрировать и совместно использовать имитационные модели разного назначения. Инфраструктура моделирования станет основой для накопления и обобщения результатов экспериментов и баз знаний, консолидирующих опыт экспертов по созданию бортовой аппаратуры спутниковых систем.
Пример модели функционирования бортовой аппаратуры
Рассмотрим пример построения модели бортовой аппаратуры космического аппарата. При проектировании функций и свойств бортовых систем, а также для анализа их работы в процессе проведения испытаний, требуется моделировать действия систем по выполнению команд от наземного комплекса управления. Для решения этой задачи требуется построить модель, имитирующую командно-программное управление бортовой аппаратурой. С помощью разработанных авторами инструментов графического моделирования выполняется конфигурация и настройка модели: задание коммутационных интерфейсов передачи данных, связей и параметров моделируемого оборудования [2]. Фрагмент структуры модели показан на рис. 2.
Использованы следующие обозначения: БУ БКУ – бортовой комплекс управления, МИ КИС – интерфейсный модуль командно-измерительной системы, БАТС – бортовая аппаратура телесигнализации, НКУ – наземный комплекс управления. Дуги между графическими элементами модели обозначают направления информационного обмена при передаче данных. Примеры правил приведены далее.
Правило 1: Если интерфейс «Вход» принял команду И тип команды = «Команда БУ БКУ» То выдать команду «На БУ БКУ» |
Правило 2: Если интерфейс «Вход» принял команду И тип команды = «Команда МИ КИС» И команда = «Включить ПРД» То выдать импульс на «Управление ПРД» |
Рис. 2. Фрагмент структуры модели функционирования бортовой аппаратуры
Логика функционирования модели описана в базе знаний и включает правила приема, передачи, отработки команд, поступающих от наземного комплекса управления в бортовые системы. Модель имеет набор параметров и характеристик, изменение которых позволяет задавать различные варианты конфигурации бортовой аппаратуры космического аппарата.
Заключение
Разработанная модель бортовой аппаратуры и компоненты унификации позволят интегрировать имитационные модели в рамках инфраструктуры имитационного моделирования. Возможность задания логики функционирования модели в виде правил расширит возможности инфраструктур. Такой подход позволит инженеру-конструктору, обладающему специальными знаниями о способах работы бортовых систем космического аппарата, легко строить и в дальнейшем модифицировать имитационные модели. Использование структурного представления модели и правил в терминах предметной области позволяет легко разбираться в устройстве как создаваемых конструктором собственных моделей, так и моделей, созданных другими специалистами, а также представлять моделируемую систему в целом.
Использование унифицированных моделей в производстве бортовой аппаратуры командно-измерительных систем космических аппаратов послужит основой для развития наукоемких технологий отечественного производства бортовой аппаратуры космических аппаратов.
Исследование выполнено при финансовой поддержке РФФИ и Правительства Красноярского края в рамках научного проекта № 16-41-242042.