Архитектура интегрированной системы для проведения механического анализа бортовой радиоаппаратуры космических аппаратов | Вестник Томского государственного университета. Математика и механика. 2011. № 4(16).

Архитектура интегрированной системы для проведения механического анализа бортовой радиоаппаратуры космических аппаратов

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

Architecture of the integrated systemfor mechanical analysis of spacecraft on-board electronic equipment.pdf На сегодняшний день существует множество систем проектирования и инже-нерного анализа (так называемых CAD/CAE-систем) в той или иной области раз-работки изделий и симуляции проходящих физических процессов. Бортовая ра-диоэлектронная аппаратура (РЭА) космических аппаратов (КА) в этом смысле яв-ляется неким эталоном, демонстрирующим самые передовые возможности широ-кого применения данных систем. Ее конструктивная сложность, многоплановостьсхемотехнических решений, обилие применяемой специальной элементной базы,необходимость противостоять большому спектру внешних воздействующих фак-торов в земных условиях и условиях космического пространства делают необхо-димым применение разноплановых систем автоматизированного проектирования(САПР) [1]. Эти системы отличаются спектром решаемых задач и дополнитель-ным функционалом подготовки исходных данных и обработки результатов. Кро-ме того, требуется дополнительная адаптация функционала этих систем к специ-фике того или иного производства, организация взаимодействия, автоматизациярешения типичных задач и выполнения типовых процедур. Возникающие приэтом трудности удается частично решить за счет встроенных в системы средствавтоматизации и обмена данными, но возникает и целый ряд важных проблем:а) высокая стоимость итогового программного комплекса;б) сложность или невозможность использования собственных методических итеоретических наработок;в) ограниченная или отсутствующая возможность гибкой настройки комплексадля решения новых специфичных задач.В данной статье рассматривается архитектура интегрированной системы (ИС)для проведения специализированных инженерных расчетов, в которой могут бытьрешены обозначенные проблемы.Гибкая настройка, расширение и изменение функционала ИС под различныезадачи естественным образом может быть обеспечена применением модульнойархитектуры. Её использование подразумевает выделение определенного функ-ционала (комплекса смежных функций) в отдельные программные модули, длякоторых возможна независимая разработка, интеграция и поддержка. Модули мо-гут быть выполнены как в виде программных библиотек, динамически загружае-мых в процессе работы (DLL-модулей), так и в виде независимых исполняемыхпрограмм (EXE-модулей).Явные признаки применения модульной архитектуры можно встретить и уCAD/CAE-систем от ведущих мировых производителей в этой области. В такихпрограммных комплексах, как ANSYS и NASTRAN инструментарий разработки ианализа изделий разделен на три функциональных класса: так называемые «пре-процессор», «решатель» и «постпроцессор». К первому классу можно отнестиподготовку и обработку геометрических данных, построение расчетной модели,задание начальных и граничных условий. Ко второму классу относятся реализа-ции различных методик (разностных, конечно-элементных и т.д.) по решению за-дач моделирования определенных физических процессов. К третьему классу от-носятся построители графиков и отчетов, анализаторы критических значений рас-считанных параметров.Опыт использования различных CAD/CAE-систем показывает, что хранениеисходных данных и результатов анализа в «нейтральных» форматах обеспечиваетзначительно большую свободу в выборе сторонних программных комплексов дляработы в единой ИС. Например, для хранения и обмена геометрических данныхудобно использование форматов IGES и STEP, а для сеточного разбиения конеч-но-элементной модели удобно использовать формат SAT. Наконец, в качествеважного связующего звена ИС удобно использовать единую базу данных, котораяхранит исходные сведения для проведения расчетов (в том числе геометрическиемодели), данные самих расчетов и результаты их обработки. Оптимальной фор-мой организации такой базы является сочетание реляционной базы данных таб-личного типа и файловой библиотеки дополнительных материалов.Для осуществления поставленных задач предлагается построить ИС по сле-дующим принципам:а) использовать модульную архитектуру, где комплексы функций схожего на-значения выделены в отдельные программные модули;б) обозначить три класса модулей: «препроцессоры», «решатели», «постпро-цессоры»;в) взаимную связь между модулями ИС организовать на основе унифициро-ванных программных интерфейсов (API).Для обеспечения работы составных частей препроцессора и постпроцессора ведином информационном (адресном) пространстве ИС данные классы модулейпредлагается выполнять в виде DLL-модулей, поддерживающих унифицирован-ные API. Такой подход позволяет избежать процедур дополнительного копирова-ния и преобразования данных, используемых различными программными компо-нентами, а также открывает широкие перспективы гибкой настройки ИС к новымспецифичным задачам путем выпуска и интеграции дополнительных модулей ав-томатизации подготовки и анализа данных.Модули из класса решателей предлагается разрабатывать в виде таких жеDLL-модулей, но имеющих определенную специфику. В случае реализации соб-ственных методик моделирования физических процессов такой модуль можетвключать в себя полный функционал решателя, а в случае использования рас-четного EXE-модуля стороннего производителя - быть, фактически, лишь над-стройкой над ним и автоматизировать его запуск/остановку с заданными пара-метрами командной строки. В частности, задействование ядра CAE-системыANSYS может быть организовано запуском соответствующего EXE-модуля суказанием входного и выходного файла, а в качестве входного файла средства-ми препроцессора ИС может быть подготовлен (сверстан) набор команд по-строения или загрузки модели, запуска расчета, динамической корректировкипараметров [2]. Использование потенциала расчетных модулей стороннихCAD/CAE-систем во многих случаях имеет преимущество перед разработкойсобственных аналогичных средств как по времени разработки, так и по скоростии качеству самих расчетов.Изложенные принципы построения ИС нашли применение при проектирова-нии аппаратно-программного комплекса для проведения механического анализаунифицированных электронных модулей бортовой радиоаппаратуры космическихаппаратов. В качестве основного решателя используется ядро CAE-системыANSYS, графическая оболочка комплекса разработана с использованием кросс-платформных библиотек QT и OpenCascade, а связь с реляционной базой данныхв операционной системе Windows организована через драйвер ODBC.Загрузка и работа с DLL-модулями комплекса производится по единой схеме иотчасти напоминает технологию Microsoft Component Object Model (COM):1) загружается DLL-файл, в котором определяется адрес функции «фабрики»объектов;2) запуск указанной функции создает экземпляр функционального объекта мо-дуля и возвращает ссылку на его основной программный интерфейс;3) через основной программный интерфейс приложение получает доступ ковсем дополнительным интерфейсам, поддерживаемым модулем.4) удаление объекта производится вызовом соответствующей функции основ-ного программного интерфейса.Для связывания составных частей комплекса разработаны два программныхинтерфейса: IAppHook и его наследник ISubModule. При проектировании DLL-модулей комплекса в каждый из них закладывается поддержка ISubModule в ка-честве основного интерфейса, тогда как основное приложение (оболочка ком-плекса) поддерживает только IAppHook. Функциональный состав данных интер-фейсов приведен в табл. 1 и 2 соответственно.Интерфейс IAppHook имеет две пары симметричных функций и обслуживаетмежмодульный обмен ссылками на объекты графической оболочки на базе QTи на программные интерфейсы. Таким образом, разработчик модуля можетТ а б л и ц а 1Функциональный состав интерфейса IAppHookФункции API Описаниеlong GetObject (long objID,QObject **ppObj)Посредством данной функции основное приложение запраши-вает у модуля ссылки на объекты платформы QT, которые мож-но встроить в общий графический интерфейс комплекса (глав-ное меню, панели инструментов, окна). За каждым из объектовзакреплен уникальный числовой идентификаторlong SetObject (long objID,QObject *pObj)Посредством данной функции основное приложение передаетмодулю ссылку на основное графическое окно. Эта ссылка ис-пользуется при создании дочерних окон модуля, которые впо-следствии запрашиваются командой GetObject()long GetInterface (long IID,void **ppObj)Посредством данной функции основное приложение запраши-вает у модуля ссылку на программный интерфейс. Также и мо-дуль может воспользоваться этой функцией основного прило-жения для получения ссылки на интерфейс смежного модуля.За каждым из интерфейсов закреплен уникальный числовойидентификаторlong SetInterface (long IID,void *pObj)Посредством данной функции основное приложение передаетмодулю ссылку на собственный интерфейс IAppHook. Впослед-ствии эта ссылка используется модулем для ретрансляции запро-са дополнительных интерфейсов у смежных модулейинтегрировать в оболочку основного приложения полный спектр необходимыхэлементов управления (пункты главного меню, панели инструментов, окна и др.).Кроме того, любой из модулей через основное приложение может запрашиватьнепосредственные ссылки на интерфейсы смежных модулей для доступа к необ-ходимому функционалу. При этом основное приложение играет роль ретрансля-тора запроса и опрашивает модули по очереди, пока какой-либо из них не предос-тавит требуемый интерфейс.Интерфейс ISubModule расширяет IAppHook функциями, специфичнымитолько для DLL-модулей комплекса. Среди них можно выделить два набора: пер-вые 4 функции позволяют получить описание модуля, а вторые 4 - управлять егожизнедеятельностью. Важной особенностью является управление состоянием ак-тивности модуля. В активном состоянии DLL-модуль может получать уведомле-ния о действиях пользователя или о готовности результатов работы других моду-лей (при условии, что он поддерживает интерфейсы работы с уведомлениями).Таким образом, активные модули могут динамически отслеживать и реагироватьна изменения в рабочей области (вставка дополнительных команд при вызовеконтекстных меню, автоматический пересчет параметров при изменении свойствмоделируемого объекта и др.). В неактивном состоянии модуль не реагирует науведомления и делает свои элементы управления недоступными пользователю.Для обеспечения непосредственного взаимодействия между модулями потре-бовалась разработка дополнительных программных интерфейсов (приводятся бездетализации функционального состава): IDbUser - функции доступа к таблицам, записям и полям базы данных; IChangesTrack - функции отслеживания изменений в параметрах расчетноймодели; IContextTrack - функции отслеживания вызова контекстного меню для эле-ментов расчетной модели; ISettingsManager - функции работы с настройками модулей, хранимыми в ба-зе данных; IProgressHook - функции отслеживания и управления процессом расчета.Базовый функционал комплекса для проведения механического анализа можетбыть обеспечен следующим набором модулей: База Данных - модуль связи с реляционной базой данных и файловой биб-лиотекой; Импорт-Экспорт - модуль автоматизации импорта и экспорта геометрии ипрочей информации из сторонних CAD/CAE-систем и баз данных; 3D-модель - модуль визуализации пространственной геометрии расчетноймодели; Механализ - модуль автоматизации работы с ядром CAE-системы ANSYS; Отчет - модуль автоматизации обработки данных расчета.Дополнительной спецификой аппаратно-программного комплекса для прове-дения механического анализа унифицированных электронных модулей бортовойрадиоаппаратуры космических аппаратов являются организация связи сCAD/CAM/CAE-системами и базой данных, используемой на предприятии, а так-же методика построения конечно-элементных моделей для проведения различныхвидов анализа. Все это реализуется средствами вспомогательных модулей пре-процессора и постпроцессора ИС.

Ключевые слова

program complex, module architecture, mechanical analysis, CAD/САЕ-system, механический анализ, модульная архитектура, программный комплекс, CAD/САЕ-система

Авторы

ФИООрганизацияДополнительноE-mail
Бовсуновский Александр БорисовичНациональный исследовательский Томский государственный университетнаучный сотрудник НИИ прикладной математики и механикиAlexander.Bovsunovsky@niipmm.tsu.ru
Бутов Владимир ГригорьевичНациональный исследовательский Томский государственный университетдоктор физико-математических наук, профессор, заведующий отделом НИИ прикладной математики и механикиbvg@niipmm.tsu.ru
Хвалько Александр АлександровичОАО «Информационные спутниковые системы» имени академика М. Ф. Решетневаинженер-конструкторhvalko@iss-reshetnev.ru
Всего: 3

Ссылки

Каплун А.Б., Морозов Е.М., Олферьева М.А. ANSYS в руках инженера. Практическое руководство. М.: Едиториал УРСС, 2003. С. 194-269.
Руководство по системному инжинирингу NASA. NASA SYSTEMS ENGINEERING HANDBOOK (REV. 1). NASA/SP-2007-6105. URL: http://education.ksc.nasa.gov/esmdspa cegrant/Documents/NASA%20SP-2007-6105%20Rev%201%20Final%2031Dec2007.pdf
 Архитектура интегрированной системы для проведения механического анализа бортовой радиоаппаратуры космических аппаратов | Вестник Томского государственного университета. Математика и механика. 2011. № 4(16).

Архитектура интегрированной системы для проведения механического анализа бортовой радиоаппаратуры космических аппаратов | Вестник Томского государственного университета. Математика и механика. 2011. № 4(16).

Полнотекстовая версия