автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Система визуального конструирования временных диаграмм управляющих алгоритмов беспилотных ЛА

кандидата технических наук
Трусов, Виталий Сергеевич
город
Самара
год
2005
специальность ВАК РФ
05.13.12
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Система визуального конструирования временных диаграмм управляющих алгоритмов беспилотных ЛА»

Автореферат диссертации по теме "Система визуального конструирования временных диаграмм управляющих алгоритмов беспилотных ЛА"

На правах рукописи

ТРУСОВ Виталий Сергеевич

СИСТЕМА ВИЗУАЛЬНОГО КОНСТРУИРОВАНИЯ ВРЕМЕННЫХ ДИАГРАММ УПРАВЛЯЮЩИХ АЛГОРИТМОВ БЕСПИЛОТНЫХ ЛА

Специальность 05.13.12 Системы автоматизации проектирования (в машиностроении)

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

Самара 2005

Работа выполнена на кафедре компьютерных систем Государственного образовательного учреждения высшего профессионального образования «Самарский государственный аэрокосмический университет имени академика С.П. Королева»

Научный руководитель:

Официальные оппоненты:

Ведущая организация:

доктор технических наук, профессор АЛ. Калентьев

доктор технических наук, профессор А.Н. Коварцев

кандидат технических наук, В.И. Огарков

Волжское конструкторское бюро Ракетно-космической корпорации «Энергия»

Защита состоится 23 декабря 2005 года в часов на заседании диссертационного совета Д 212.215.05 при государственном образовательном учреждении высшего профессионального образования «Самарский государственный аэрокосмический университет имени академика С.П. Королева» по адресу: 443086, г. Самара, Московское шоссе, 34

С диссертацией можно ознакомиться в библиотеке государственного образовательного учреждения высшего профессионального образования «Самарский государственный аэрокосмический университет имени академика С.П. Королева»

Автореферат разослан 21 ноября 2005 года.

Ученый секретарь диссертационного совета д.т.н., профессор

А.А. Калентьев

^ 2 С

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

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

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

В данный момент для автоматизации процесса разработки УА разработана и используется на практике система ГРАФКОНТ. Данная система предоставляет средства автоматизированного описания требований, проектирования и отладки УА. Однако одним из главных недостатков системы является отсутствие средств разработки временных диаграмм, а также отсутствие моделей УА, адекватно описывающих временную диаграмму.

Таким образом, актуальной остается задача разработки модели временной диаграммы и на ее основе разработки системы, позволяющей строить

временные диаграммы УА из отдельных графических примитивов методом визуальной композиции. В диссертации предлагается подход к автоматизации проектирования УА с использованием средств визуального программирования, оперирующих на базе графического языка и разработанной математической модели алгоритма. В то же время предложенный подход реализуется в рамках комплекса программ ГРАФКОНТ, что позволяет дополнить визуальными средствами разработки существующую систему.

Целью работы является повышение эффективности разработки УА путем внедрения новых графических средств автоматизации.

Основные задачи. Определены следующие основные задачи диссертации:

1. Построить систему визуального конструирования временных диаграмм У А, дополняющую существующую систему разработки ГРАФКОНТ.

2. Построить математическую модель - УА таким образом, чтобы построенная модель позволяла легко описать алгоритм с использованием предопределенных графических компонентов и принимала во внимание ограничения, налагаемые на временную диаграмму.

3. Разработать языковые средства для графического описания УА.

4. Разработать алгоритмы, позволяющие преобразовывать построенную модель алгоритма в другие используемые на практике модели.

Научная новизна работы заключается в следующих положениях:

• Преобразована многовходовая модель УА. Сделанные модификации позволяют говорить о многовходовой модели, как об универсальном средстве описания УА.

• Предложена математическая модель графического представления УА - временной диаграммы, ориентированная на разработчика алгоритмов.

• Разработана система визуального конструирования, позволяющая строить временные диаграммы из отдельных элементов методом визуальной композиции.

• В рамках существующей системы разработан и внедрен новый подход к разработке УА основанный на технологии визуального программирования.

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

Положения, выносимые на защиту:

1. Преобразование многовходовой модели УА.

2. Математическая модель графического представления УА -временной диаграммы.

3. Графического язык описания временных диаграмм, построенный на базе математической модели.

4. Алгоритмы трансляции многовходовой модели в модель графического представления и обратного преобразования.

5. Программная реализация визуального конструктора и алгоритмов трансляции.

Внедрение результатов работы. Система визуального конструирования находилась в тестовой эксплуатации и была внедрена в ГНП РКЦ ЦСКБ «Прогресс» г. Самара.

Работа выполнялась в рамках областного гранта.

Апробация работы. Основные положения и результаты работы докладывались и обсуждались на X, XI и ХП Всероссийских научно-технических семинарах по управлению движением и навигации летательных аппаратов (г. Самара, 2001, 2003 и 2005 гг.), VI Международном симпозиуме «Интеллектуальные системы» (г. Саратов, 2004 г.), Всероссийской (с международным участием) конференции «Информация, инновации, инвестиции» (г. Пермь, 2004 г.), VII Всероссийской с международным участием научной конференции молодых ученых и аспирантов «Новые информационные технологии. Разработка и аспекты применения» (г Таганрог, 2004 г.).

Публикации. По теме диссертации опубликовано 8 печатных работ, из них 3 статьи и 5 тезисов докладов.

Объем и структура работы. Диссертационная работа состоит из введения, четырех глав и заключения. Список использованных источников включает 97 наименований. Общий объем диссертации 116 страниц машинописного текста, 35 рисунков.

СОДЕРЖАНИЕ РАБОТЫ

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

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

Выделяется объект исследования данной работы - управляющие алгоритмы режима. Рассматриваются основные принципы их работы. Вводится формальное определение УА режима:

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

УА = <Р, 2" Т, А, 1>,

где Б - базовое множество функциональных задач;

2" - множество логических условий. Здесь а - множество логических переменных, участвующих в алгоритме; Т с Б х Б - отношение связи функциональных задач по времени; АсРх2а-отношение связи функциональных задач по логике; I с Б х р - отношение связи функциональных задач по данным.

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

Проанализированы основные способы представления УА на разных этапах разработки, такие как описание требований на естественном языке, временная диаграмма, блок-схема, текст на языке ассемблера. Сделан вывод о

том, что наиболее подходящей формой представления алгоритма для задачи визуального конструирования является временная диаграмма.

Рассматривается жизненный цикл УА режима и анализируется процесс их разработки. Приводится существующая структура системы ГРАФКОНТ и определяется новый подход к разработке УА с применением системы визуального конструирования временных диаграмм. Формируются требования к математической модели графического представления УА. ^ Анализируются модели УА, используемые на практике. Рассматриваются

терминальное описание, многовариантная и многовходовая модели, » разработанные и описанные в трудах Калентьева A.A., Тюгашева A.A., Редина

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

Кроме того, в ходе анализа многовходовой модели определяются ее недостатки, которые не позволяют описать некоторые УА определенной структуры. В результате ставится задача преобразования многовходовой модели с последующим ее использованием для сохранения временных диаграмм, построенных в визуальном конструкторе.

Вторая глава диссертации посвящена математическим моделям управляющих алгоритмов.

В первой части производится преобразование многовходовой модели МВХ. Все функциональные задачи, входящие в модель, предложено . рассматривать в виде функции у = f(x), где х и у соответственно вектора

входных и выходных данных. При последовательном вызове двух функциональных задач возможны различные зависимости по данным между ними. Для описания этой зависимости вводится операция * следующим образом:

y = f(x) = f2(x2)*f,(x1),

где * - композиция (°) двух отображений, если х2 = уь В этом случае осуществляется композиция отображений: у = f(x) = f2(x2) ° fi(xi). При этом очевидно, х = хь у = у2.

* - последовательность двух отображений, если х2 \ yi * 0. В этом случае у = f(x) - (f2(x2); fi(xO) и х = xi u (х2 \ уО, у = yi \ х2 и у2. Таким образом, основной объект многовходовой модели - линейный участок, представляющий собой упорядоченную последовательность функциональных задач, может быть представлен в виде функции у = f(x). При

этом f(x) = fi(xO * f2(x2) * ... * f„(x„), где f^x,).....fn(xn) - функции,

соответствующие функциональным задачам, входящим в линейный участок.

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

/jWVifa).«^" <h

*/з(*в)'"/Ыесли (о, =1)л(а2 =0)

/ifc)*/3к)*/Ыеат Ц = 1^ =1) Предлагается использовать функциональную запись для описания входа многовходовой модели. Рассматриваются два варианта структуры УА, которые не мох ли быть описаны в ^модифицированной многовходовой модели. Для обоих случаев приводится функциональная запись, показывающая применимость модифицированной модели. При этом показывается, что модифицированная многовходовая модель является естественным расширением существующей модели.

Таким образом, модифицированная многовходовая модель представима в

виде:

МВХ' = <W, Т>,

где W - множество входов,

Т - бинарное отношение связи на W. Каждый вход модели представим в следующем виде: W; = < (LU', A')j >, j = 1 ..n,

где LU' = (Ш"ь..., ЫД) - упорядоченная последовательность линейных участков, связанных между собой операцией *, А' - вектор логических условий, при которых выполняется LU1. Во второй части второй главы рассматривается структура временной диаграммы УА. Выделяются и описываются основные элементы временной диаграммы. Анализируются способы связи элементов и вводятся дополнительные элементы, служащие для обеспечения ограничений целостности диаграммы. Формируется базовое множество, состоящее из 16 элементов (Рисунок 1).

Д2ВХ1 _

Рис. 1 - Базовые элементы временной диаграммы

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

На множестве элементов временной диаграммы Е = (еь е2,..., еп) вводятся следующие отношения:

1. е; —> ej — отношение смежности, определяющее соседние элементы временной диаграммы.

2. е; > e^ - отношение следования, определяющее связь по информации между функциональными задачами, которым соответствуют данные элементы.

3. е, «-» е; - отношение альтернативности, определяющее разные варианты выполнения алгоритма в зависимости от значений логических условий. Данное отношение определяет связи по логике между функциональными задачами.

Отношение следования является отношением строгого частичного порядка на множестве Е, а отношение альтернативности - отношением эквивалентности.

Вводится понятие дерева временной диаграммы как множества неразрывно связанных элементов Еп = (еь...,ет), удовлетворяющих ограничениям. Выделяется элемент еь называемый корнем дерева. Формулируются и доказываются следующие свойства дерева:

1. Любой элемент дерева является последующим для корня дерева, то есть Уе; е Ев: ^ * в! => в! > в1.

2. Для любых двух различных элементов е1 и е} дерева справедливо, по крайней мере, одно из следующих утверждений:

a. ei > е^

b. ерей

c. е-,**^.

3. Если для двух элементов е-, и не выполняется ни одно из утверждений е] > ej и е; > е-и то из этого следует, что е; <-> е^

Вводится понятие сквозной цепочки дерева, представляющей собой один из вариантов выполнения алгоритма. Доказывается утверждение о том, что объединение всех сквозных цепочек 0(Е0) образует множество элементов дерева.

Дерево элементов представляется в виде следующей модели: Б = <ЕС,">", "<->">,

где Еп - множество элементов дерева,

"->", ">", "<->" - отношения смежности, следования и альтернативности на Еп.

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

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

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

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

В результате временную диаграмму можно представить в виде:

ГВД = <0, Ор,Я>,

где Б = (Бь..., Вп) - множество деревьев временной диаграммы, Ор - набор операций на временной диаграмме, Я с: Б2 - отношение передачи управления на множестве деревьев.

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

Графический язык должен описывать множество элементов дерева и введенные на нем отношения. Кроме того, графический язык должен предоставлять средства для описания основного множества модели временной диаграммы - множества деревьев с отношением передачи управления на нем.

Алфавитом языка является базовое множество из 16 элементов. Эти элементы формируют множество Ут терминальных символов грамматики языка. В качестве основных нетерминальных символов выступают 6 смысловых групп элементов: <Вход>, <ОВ>, <ФЗ>, <УВИ>, <ЗЭ>, <Выход>.

Затем формируются правила вывода, позволяющие получить сквозную цепочку дерева элементов. Вводятся дополнительные нетерминалы <СЦ>, <Цепочка> и <ЛУ>, описывающие соответственно сквозную цепочку, цепочку и линейный участок.

Таким образом, формальная грамматика в форме Бэкуса-Наура выглядит следующим образом: О = <ут, У№ 8,

где Ут - множество 16 базовых элементов - терминалов;

= {<Вход>, <ОВ>, <ФЗ>, <УВИ>, <КВ>, <Выход>, <ЛУ>, <Цепочка>, <СЦ>} - множество нетерминалов;

S = <СЦ> - начальный символ. R= {<СЦ> ::= <ВходхЦепочкахВыход>;

<Цепочка> ::= <ЛУ> | <ЛУ><ОВ><Цепочка><КВ><ЛУ> | <ЛУ><ОВхЦепочка> | <ЛУхКВ><Ценочка>;

<ЛУ> ::= <ФЗ> | <ФЗ><ЛУ> | <УВИ> | <УВИхЛУ> | 0}

- совокупность всех введенных правил вывода.

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

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

Вторая часть третьей главы посвящена разработке алгоритмов трансляции многовходовой модели и модели графического представления. Отображение f2: МВХ' -> ГВД, реализуемое транслятором многовходовой модели, можно представить в виде пары отображений:

i? - <f2W, f2T>>

где f2W: W D - отображение множества входов в множество деревьев, f2T: Т R - отображение отношения связи входов в отношение передачи управления между деревьями.

Отображение f2\y ставит в соответствие каждой последовательности линейных участков с определенным условием сквозную цепочку дерева временной диаграммы. Таким образом, все множество последовательностей линейных участков входа переходит в множество сквозных цепочек дерева, образующее множество элементов дерева.

Ы (LU', А') -> 0(EDi), Vi = l..n,

где 0(ЕМ) - множество сквозных цепочек дерева D;, п - число входов в многовходовой модели.

При этом вектор условий переходит в соответствующие операторы ветвления.

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

Транслятор графического языка, осуществляющий обратное преобразование ГВД —> МВХ', может быть интерпретирован как часть компилятора управляющих программ. Действительно, транслятор переводит описание алгоритма на графическом языке в его внутреннее представление -многовходовую модель, на базе которой затем строится текст программы.

Так как отображение fз является обратным к отображению f2, можно записать:

Гз = < f2w') £хг1

где f2w"1:0 ->

При этом, так как ^ и {2т - биекции, то и обратные им отображения являются биективными.

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

В четвертой главе диссертации приводится структура системы визуального конструирования, отражающая взаимодействия между основными частями системы: визуальным конструктором, транслятором графического языка и транслятором многовходовой модели (Рисунок 2).

мвх

_iz_

Оболочка визуального конструктора

мвх

ту

Транслятор

мнсговходовой модели

Визуальный

конструктор

! 1 гад 1 1

Транслятор трафики

-ЩД—»

Транслятор графического языка

dxf

——► Передана данньк <| Передана управления

AutoCAD

Рис. 2 - Структура системы визуального конструирования

При вызове визуального конструктора управление передается ему от интегрированной оболочки системы ГРАФКОНТ. При этом конструктору может быть передана многовходовая модель УА. На ее основе пользователь строит временную диаграмму, которую можно сохранить как в виде многовходовой модели, так и в формате dxf для последующей обработки в сторонних программных средствах, таких как AutoCAD.

При редактировании временной диаграммы в визуальном конструкторе пользователю доступны два набора операций:

1. Операции с представлением временной диаграммы.

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

2. Операции на временной диаграмме.

Эти операции предназначены для редактирования или конструирования временной диаграммы УА. Они реализуют все операции, определенные на математической модели. Кроме того, для удобства пользователя реализованы операции копирования и вставки элементов через буфер обмена, что позволяет сократить объем действий при конструировании алгоритма из однотипных объектов.

При конструировании пользователем временной диаграммы автоматически обеспечивается соблюдение всех ограничений временной диаграммы. При этом осуществляется сдвиг и перенос деревьев на другие чертежные листы.

Кроме соблюдения перечисленных ограничений визуальный конструктор позволяет оптимизировать представление временной диаграммы на синтаксическом уровне. Так, в частности, реализовано автоматическое удаление пустых элементов диаграммы, а также комбинирование нескольких последовательных приемов управления в один. Эти операции позволяют автоматически привести временную диаграмму к оптимальному с точки зрения ее отображения виду.

В ходе своей работы в визуальном конструкторе пользователь может оперировать следующими объектами: временная диаграмма, чертежный лист, дерево, элемент. Все эти объекты реализованы в визуальном конструкторе как классы, экземпляры которых создаются при работе пользователя. При этом все классы визуального конструктора являются потомками стандартных элементов управления MS Windows, что позволяет унифицировать их представление и обработку событий. Кроме, того, использование элементов управления позволяет наиболее оптимально реализовать принцип визуального программирования. Трансляторы также реализованы в виде объектов, которые преобразуют объектную структуру визуального конструктора в структуру данных многовходовой модели.

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

визуальном конструкторе реализуются основные концепции визуального программирования.

Применение визуальных средств разработки временных диаграмм совместно с другими модулями системы ГРАФКОНТ является залогом повышения качества продукции. Общая структура системы ГРАФКОНТ с использованием визуального конструктора представима в следующем виде (Рисунок 3).

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

В заключении сформулированы основные выводы, перечислены полученные в работе результаты.

ОСНОВНЫЕ ВЫВОДЫ И РЕЗУЛЬТАТЫ

1. Преобразована многовходовая модель управляющего алгоритма и предложена новая форма ее записи. Модифицированная многовходовая модель является универсальным средством описания УА и может быть использована другими системами для описания алгоритмов любой структуры.

2. Разработана математическая модель временной диаграммы УА, отражающая связи по времени, логике и информации в управляющем алгоритме. Сформулированы и проанализированы основные свойства модели. Модель временной диаграммы наряду с использованием в визуальном конструкторе может служить базой для создания других систем автоматизации, оперирующих с временной диаграммой УА.

3. На базе модели реализован графический язык, позволяющий описать временную диаграмму управляющего алгоритма в виде сквозных цепочек.

4. Разработаны следующие алгоритмы:

a. трансляции многовходовой модели;

b. трансляции графического языка.

5. Реализована программная система визуального конструирования, входящая в систему разработки управляющих алгоритмов ГРАФКОНТ.

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

ОСНОВНЫЕ ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Трусов B.C., Калентьев A.A. Разработка системы визуального

конструирования бортовых алгоритмов управления / Управление движением и навигация летательных аппаратов // Сборник научных трудов. Самара: СГАУ, 2002.-с. 160-164.

2. Трусов B.C. Визуальпое конструирование управляющих алгоритмов / Управление движением и навигация летательных аппаратов // Сборник научных трудов. Самара: СГАУ, 2003. - с. 203-206.

3. Трусов B.C. Визуальное конструирование бортовых алгоритмов управления / Интеллектуальные системы // Труды Шестого международного симпозиума. М.: РУСАКИ, 2004. - с. 235-237.

4. Трусов B.C. Информационное обеспечение космического машиностроения / Информация, инновации, инвестиции // Материалы Всероссийской (с международным участием) конференции. Пермь: Пермский ЦНТИ, 2004. - с. 85-86.

5. Трусов B.C., Калентьев A.A. Визуальное программирование в проектировании управляющих алгоритмов / Объединенный научный журнал. 2005, №1.-с. 38-42.

6. Трусов B.C. Математическая модель управляющего алгоритма реального времени / Региональный вестник молодых ученых. 2004, №3, -с. 68-71.'

7. Трусов B.C. Моделирование и конструирование управляющих алгоритмов / Новые информационные технологии. Разработка и аспекты применения // Труды VI Всероссийской научной конференции с международным участием. - Таганрог. ТРТУ, 2004. - с. 257-259.

8. Калентьев A.A., Трусов B.C., Тюгашев A.A. CALS-система разработки бортовых управляющих алгоритмов/ Электронный журнал «Исследовано в России», 87, с. 920-925, 2005 г. http://zhurnal.ape.relam.ru/articles/2005/087.pdf

Подписано в печать 18.11.05 Объем 1 усл. печ. л. Тираж 100 экз. Отпечатано с готовых оригинал-макетов

В 2 5 1

РНБ Русский фонд

2006-4 28526

Оглавление автор диссертации — кандидата технических наук Трусов, Виталий Сергеевич

Введение.

1 Постановка задачи визуального конструирования управляющих алгоритмов.

1.1 Предметная область - бортовые управляющие алгоритмы.

1.1.1 Комплекс бортовой аппаратуры летательного аппарата

1.1.2 Бортовые управляющие алгоритмы.

1.2 Анализ способов представления управляющих алгоритмов режима

1.3 Система разработки управляющих алгоритмов ГРАФКОНТ.

1.4 Анализ существующих моделей управляющих алгоритмов.

1.4.1 Терминальное описание УА.

1.4.2 Многовариантная модель.

1.4.3 Многовходовая модель.

1.5 Постановка задачи разработки визуального конструктора.

2 Математические модели управляющих алгоритмов, используемые в визуальном конструкторе.

2.1 Модификация многовходовой модели.

2.1.1 Функциональная запись многовходовой модели.

2.1.2 Модифицированная многовходовая модель.

2.2 Структура временной диаграммы управляющего алгоритма.

2.3 Модель графического представления управляющих алгоритмов

2.3.1 Множество элементов временной диаграммы.

2.3.2 Отношения на множестве элементов.

2.3.3 Определение дерева элементов.

2.4 Набор операций визуального конструктора.

2.4.1 Операции на дереве элементов.

2.4.2 Определение временной диаграммы.

2.4.3 Операции на временной диаграмме.

3 Алгоритмические и языковые средства визуального конструктора 68 3.1 Графический язык описания временных диаграмм.

3.1.1 Алфавит языка.

3.1.2 Правила вывода.

3.1.3 Конструирование управляющих алгоритмов на графическом языке.

3.2 Алгоритмы транслятора многовходовой модели.

3.2.1 Отображение, реализуемое транслятором многовходовой модели

3.2.2 Алгоритм трансляции многовходовой модели.

3.3 Алгоритмы транслятора графического языка.

4 Программные средства визуального конструктора.

4.1 Структура визуального конструктора.

4.1.1 Объектная модель визуального конструктора.

4.1.2 Транслятор временных диаграмм.

4.1.3 Транслятор многовходовой модели.

4.2 Структура данных многовходовой модели.

4.3 Визуальный конструктор в системе разработки управляющих алгоритмов.

Введение 2005 год, диссертация по информатике, вычислительной технике и управлению, Трусов, Виталий Сергеевич

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

Внутренняя структура сложных систем обычно характеризуется многоуровневой иерархией и многообразием связей между различными элементами [78]. Кроме того, система целиком или определенные ее подсистемы могут изменять свое состояние во времени по определенному закону [66].

Любая сложная система служит для решения определенной комплексной задачи (или ряда задач). Так как каждый прибор или агрегат, входящий в систему, служит своей определенной цели и имеет ряд своих состояний, то для решения общей задачи системы необходима четкая синхронизация и согласованная работа всех приборов и подсистем на уровне смены состояний [27]. Обычно задача синхронизации возлагается на отдельно выделяемый прибор, который осуществляет все управляющие и диспетчерские функции. В последнее время все чаще в качестве такого прибора используется микропроцессор или электронно-вычислительная машина [17].

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

Диссертация посвящена разработке методов математического описания и средств визуального конструирования управляющих алгоритмов.

Предметом исследования данной работы являются бортовые управляющие алгоритмы, работающие в реальном времени, и их графическое представление - временные диаграммы.

Актуальность темы диссертации. Характерным примером сложных технических систем, состоящих из множества подсистем и приборов, являются современные летательные аппараты (JLA), несущие на себе комплекс бортовой аппаратуры (БА). Управление многими элементами БА в той или иной степени автоматизировано, что упрощает решение задачи управления JIA. Все управляющие элементы JIA объединяются в бортовой вычислительный комплекс (БВК), который должен обеспечить согласованную работу всех подсистем, приборов и датчиков БА в различных режимах функционирования [56].

Для управления работой некоторых подсистем пишутся специальные программы, размещаемые затем в памяти БВК и вызываемые им в определенные моменты времени. Управление другими подсистемами сводится лишь к посылке им управляющих воздействий и приему от них информации об их состоянии. В свете вышесказанного видно, что работа управляющей программы состоит в согласованных и синхронизированных по определенному закону вызовах подпрограмм, управляющих приборами БА, анализе показаний датчиков, выдаче команд управления. Все эти функции реализуются в соответствии с управляющим алгоритмом [48].

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

В настоящее время существует несколько основных подходов к автоматизации программирования:

• Системы, использующие универсальный текстовый редактор, транслятор, ориентированный на синтаксис, и компилятор.

• Системы с усовершенствованным, узкопрофильным текстовым редактором, ориентированным на синтаксис (а нередко и семантику) определенного языка программирования.

• Системы, позволяющие построить программу из отдельных готовых модулей, библиотек, классов, компонент и т.п.

• Системы с графическим интерфейсом, дополняющим текстовое описание.

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

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

Кроме того, в последнее время все большее распространение приобретают системы и комплексы программ, направленные на автоматизацию всех процессов жизненного цикла продукта. Такие программные комплексы, как правило, реализуют ту или иную CALS-технологию (Continuous Acquisition and Life cycle Support), охватывая весь жизненный цикл разработки от проектирования до реального использования [57]. В данный момент для автоматизации процесса разработки управляющих программ летательных аппаратов в ГНП РКЦ «ЦСКБ-Прогресс» используется на практике программная система ГРАФКОНТ, разработанная в Самарском государственном аэрокосмическом университете под руководством Калентьева А.А. Данная система предоставляет средства автоматизированного описания требований, проектирования и отладки управляющих алгоритмов. Однако одним из главных недостатков системы является отсутствие средств графического описания управляющих алгоритмов, что существенно осложняет работу с системой.

В диссертации предлагается подход к автоматизации разработки управляющих алгоритмов бортовой аппаратуры с использованием средств визуального программирования, оперирующих на базе графического языка и разработанной математической модели УА. В то же время предложенный подход реализуется в рамках комплекса программ ГРАФКОНТ, что позволяет дополнить визуальными средствами разработки реализованную систему.

Разработка такой технологии является актуальной в силу следующих причин:

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

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

• Повышение эффективности труда инженеров-конструкторов, занимающихся проектированием управляющих алгоритмов за счет применения визуальных средств разработки.

• Автоматизация всего процесса разработки позволит четче координировать действия участников процесса и обеспечит удобный доступ к информации обо всех стадиях, хранимой в электронном виде.

Цель работы. Целью данной работы является повышение эффективности разработки управляющих алгоритмов путем внедрения новых графических средств автоматизации.

Основные задачи. Определены следующие основные задачи диссертации:

1. Модифицировать используемую в системе ГРАФКОНТ многовходовую модель УА таким образом, чтобы данная модель позволяла описать алгоритмы любой структуры.

2. Разработать математическую модель временной диаграммы УА, которая позволила бы описать алгоритм с использованием предопределенных графических компонентов и принимала во внимание ограничения, налагаемые на временную диаграмму. Разработать графический язык описания временных диаграмм.

3. Разработать алгоритм, позволяющий преобразовывать математическую модель временной диаграммы в многовходовую модель, и алгоритм обратного преобразования.

4. Объединив разработки, построить систему визуального конструирования временных диаграмм УА, дополняющую существующую систему разработки ГРАФКОНТ.

Наиболее существенные результаты и научная новизна. В диссертации освещены следующие полученные в ходе исследований результаты:

• Модифицирована многовходовая модель УА. Сделанные модификации позволяют говорить о многовходовой модели, как об универсальном средстве описания УА.

• Предложена математическая модель УА, ориентированная на разработчика временных диаграмм.

• Разработана система визуального конструирования, позволяющая строить временные диаграммы из отдельных элементов методом визуальной композиции.

• В рамках существующей системы ГРАФКОНТ разработан и внедрен новый подход к разработке УА, основанный на технологии визуального программирования.

В диссертации разрабатывается новая технология автоматизированного проектирования управляющих алгоритмов. Анализ подобных систем показал, что они используют различные технологии, оперирующие с текстовым представлением алгоритмов. В диссертации же предлагается система, использующая технологию визуального программирования для конструирования УА в рамках CALS-технологии.

Теоретическая значимость исследования. Одними из основных теоретических результатов исследования являются модифицированная многовходовая модель УА и разработанная математическая модель графического представления алгоритмов. Эти модели могут быть использованы для описания различных управляющих алгоритмов и для создания на их базе других автоматизированных систем.

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

Апробация результатов исследования. Система визуального конструирования находилась в опытной эксплуатации и была внедрена в ГНП РКЦ «ЦСКБ-Прогресс» г. Самары.

Основные положения диссертации.

1. Модификация многовходовой модели УА.

2. Математическая модель графического представления временной диаграммы УА и графический язык описания временных диаграмм.

3. Алгоритмы преобразования модифицированной многовходовой модели в модель временной диаграммы и обратного преобразования.

Структура диссертации.

Диссертация состоит из введения, четырех глав и заключения.

Заключение диссертация на тему "Система визуального конструирования временных диаграмм управляющих алгоритмов беспилотных ЛА"

5 Заключение

В диссертации получены следующие результаты:

1. Произведена модификация многовходовой модели управляющего алгоритма, которая позволила сделать многовходовую модель универсальным средством описания УА. Модифицированная многовходовая модель позволяет описать временные диаграммы УА любой структуры.

2. Разработана математическая модель временной диаграммы УА, отражающая связи по времени, логике и информации в управляющем алгоритме. На базе модели реализован графический язык, позволяющий описать временную диаграмму управляющего алгоритма.

3. Разработаны следующие алгоритмы:

I. Алгоритм преобразования многовходовой модели в модель временной диаграммы;

II. Алгоритм преобразования модели временной диаграммы в многовходовую модель.

4. Реализована программная система визуального конструирования, входящая в систему разработки управляющих алгоритмов ГРАФКОНТ. Система визуального конструирования позволяет значительно сократить число пользовательских операций при создании УА. На базе системы разработан и внедрен новый подход к разработке УА, позволяющий повысить эффективность разработки за счет сокращения количества промежуточных этапов разработки и использования технологии визуального программирования.

Диссертационная работа имеет научное и практическое значение.

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

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

Результаты диссертационной работы докладывались и обсуждались на X, XI и XII Всероссийских научно-технических семинарах по управлению движением и навигации летательных аппаратов (г. Самара, 2001, 2003 и 2005 гг.), VI Международном симпозиуме «Интеллектуальные системы» (г. Саратов, 2004 г.), Всероссийской (с международным участием) конференции «Информация, инновации, инвестиции» (г. Пермь, 2004 г.), VII Всероссийской с международным участием научной конференции молодых ученых и аспирантов «Новые информационные технологии. Разработка и аспекты применения» (г. Таганрог, 2004 г.).

По теме диссертации опубликовано 8 печатных работ, из них три статьи [43, 79, 80].

Библиография Трусов, Виталий Сергеевич, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Абрамов Ю.А. Абстрактно-алгебраические модели дискретных систем. Калинин: КГУ, 1981. - 113 с.

2. Авдуевский B.C., Успенский Г.Р. Народнохозяйственные и научные космические комплексы М.: Машиностроение, 1985. -416 с.

3. Авербух B.JI. Метафоры визуализации // Программирование М. 2001.№5.-с. 6-8.

4. Автоматизация процессов проектирования / Под ред. О.И.Семенова Минск: ИГК, 1984. - 153 с.

5. Азаров В.Н., Леохин Ю.Л. Основы CALS-технологий / Учебное пособие. М.: Логос, 2000. - 96 с.

6. Афанасьева Т.В. Основы визуальной алгоритмизации. Учебное пособие Ульяновск, 2002. - 73 с.

7. Белоногов Г.Г., Кузнецов Б.А. Языковые средства автоматизированных информационных систем М.: Наука, 1983. -188 с.

8. Бениаминов Е.М., Ефимова Е.А. Элементы универсальной алгебры и ее приложений в информатике М.: Научный мир, 2004. - 168 с.

9. Бентли Дж. Жемчужины программирования. 2-е издание. СПб.: Питер, 2002. - 272 с.

10. Бетелин В.Б. Системы автоматизации труда программиста М.: Наука, 1990. - 174 с.

11. Борисов В.В., Бычков И.А., Дементьев А.В. Компьютерная поддержка сложных организационно-технических систем М.: Горячая линия - Телеком, 2002. - 154 с.

12. Бронштейн И.Н., Семендяев К.А. Справочник по математике для инженеров и учащихся втузов М.: Наука, 1980. - 976 с.

13. Буч Г. Объектно-ориентированное программирование с примерами применения. М.: Конкорд, 1992. - 519 с.

14. Ван дер Варден, Бертел Ландерт. Алгебра: Пер. с англ. М.: Наука, 1987. - 623 с.

15. Введение в математическое моделирование / Под ред. П.В. Трусова- М.: Логос, 2004. 440 с.16