Содержание к диссертации
Введение 7
1. Объектно-ориентированный анализ при разработке сложных СУ 9
-
Выделение объектов и их связей 10
-
Определение желаемого поведения системы 14
2. Требования к инструментальным средствам моделирования сложных
СУ. 18
-
Требования к входному языку: 21
-
Требования к проведению вычислительного эксперимента: 22
-
Требования к интегрированной среде: 23
3. Общая характеристика работы 23
-
Актуальность темы 23
-
Цели исследования 24
-
Методы исследования 25
-
Научная новизна 25
-
Практическая значимость 26
-
Достоверность результатов 27
-
Реализация результатов работы 27
-
Апробация работы 27
-
Структура и объем работы 28
-
Положения, выносимые на защиту 28
Глава 1. Анализ существующих подходов к объектно-ориентированному
моделированию гибридных систем 29
1. Существующие подходы к моделированию гибридных систем 29
-
Гибридное поведение в модели сложной СУ 30
-
Гибридные модели в инструментальных средствах для «больших» ЭВМ 35
-
Гибридные модели в современных инструментах моделирования. 39
-
Гибридные модели на базе формализма «гибридный автомат»... 48
2. Существующие языки объектно-ориентированного моделирования.. 51
-
Simula-67 и НЕДИС 53
-
ObjectMath 53
-
Omola 54
-
Modelica 56
-
Объектно-ориентированное моделирование карт состояний 59
-
Инструменты «блочного моделирования» 59
-
Анализ существующих языков ООМ применительно к системно-аналитическому моделированию 60
3. Выводы 62
Глава 2. Математические модели гибридной системы 64
1. Математические модели непрерывной системы 65
-
Математические модели непрерывной изолированной системы. 65
-
Компонентные модели непрерывных систем 69
-
Пустая непрерывная система 75
-
Преобразование описания непрерывной системы к вычислимой форме.75
2. Математические модели гибридного автомата 84
-
Последовательный гибридный автомат 84
-
Обобщенный гибридный автомат 89
-
Гибридное время 93
-
Эквивалентный последовательный гибридный автомат 95
-
Иерархический гибридный автомат 97
-
Принцип синхронной композиции гибридных автоматов 98
-
Правила интерпретации синхронного параллельного гибридного автомата 102
2.8 Явная синхронизация гибридных автоматов с помощью сигналов.
104
3. Выводы 105
Глава 3. Язык объектно-ориентированного моделирования гибридных
систем 107
-
Объекты и классы 107
-
Пакеты и проект 114
-
Переменные 116
-
Типы данных 118
-
Скалярные типы 119
-
Регулярные типы 121
-
Комбинированный тип (запись) 123
-
Явно определяемые типы 123
-
Сигналы 124
-
Автоматическое приведение типов 125
-
Система уравнений 125
-
Карта поведений 125
-
Структурная схема 129
-
Объекты 129
-
Связи 130
-
Регулярная структура 131
-
Переменная структура 132
-
Правила видимости 134
-
Наследование классов 135
-
Добавление новых элементов описания 137
-
Переопределение унаследованных элементов 137
-
Полиморфизм 140
-
Язык управления экспериментом 141
-
Функциональный стиль моделирования 144
-
Использование пассивных объектов 149
-
Выводы 150
Глава 4. Архитектура программных средств автоматизации моделирования
гибридных систем 152
-
Общая структура 152
-
Средства редактирования математической модели 156
-
Средства генерации программы модели 160
-
Интегрированная среда 162
-
Исполняющая система 164
-
Определения базовых классов 164
-
Численные библиотеки 164
-
Блок продвижения модельного времени 166
-
Алгоритм продвижения гибридного модельного времени 168
-
Реализация условных уравнений 180
-
Реализация функции временной задержки в гибридной модели. 181
-
Процессы обновления диаграмм 184
-
Процесс синхронизации с реальным временем 187
-
Процесс останова по условию 189
-
Интерактивное взаимодействие с пользователем 190
-
Распределенные модели гибридных систем 191
-
Комплексный моделирующий стенд 193
-
Выводы 195
Глава 5. Применение результатов диссертации и направления дальнейших
исследований 197
-
Сравнение пакета Model Vision Studium с другими пакетами гибридного моделирования 197
-
Применение пакетов семейства Model Vision 198
-
Применение для научных исследований 198
-
Применение в учебном процессе 199
-
Применение при разработке систем управления 200
3. Основные направления дальнейших исследований 201
4. Выводы 205
Заключение 207
Литература 210
Приложение 1. Примеры гибридных систем 219
1. Пример 1: прыгающий мячик 219
-
Пример 1 в подсистеме Simulink пакета MATLAB 220
-
Прииер 1 на языке Modelica 221
-
Пример 1 в пакете Model Vision Stadium 222
2. Пример 2: мячик, падающий на пружину 222
-
Пример 2 в подсистеме Simulink пакета MATLAB 223
-
Пример 2 на языке Modelica 224
-
Пример 2 в пакете Model Vision Stadium 224
3. Пример 3: отрывающийся маятник 226
-
Пример 3 в подсистеме Simulink пакета MATLAB 228
-
Пример 3 на языке Modelica 230
-
Пример 3 в пакете Model Vision Stadium 232
4. Пример 4: выпрямитель 234
-
Пример 4 на языке Modelica 235
-
Пример 4 в пакете Model Vision Stadium 235
5. Пример 5. Синхронная и асинхронная композиция гибридных
автоматов 236
Приложение 2. Примеры моделей на языке MVL 240
-
Пример 1. Синхронизация с помощью сигнала: часы с боем 240
-
Пример 2. Компонентная модель отрывающегося маятника 242
-
Вариант 1. Использование локальных классов 242
-
Вариант 2. Использование независимых классов 244
3. Пример 3. Наследование. Двумерное движение в воздухе 246
Введение к работе
Во второй половине прошлого столетия в ряде областей техники (преимущественно военного направления) появились т.н. «сложные технические системы» [4,50,55], к которым относятся и сложные системы управления (СУ) динамическими объектами.
Можно выделить следующие характерные особенности сложных СУ [46,20,28]: имеется много объектов управления со сложной структурой связей между ними и с внешней средой; объекты управления имеют разнородные физические принципы действия (электрические, механические, гидравлические, оптические и др. системы); имеется много различных режимов работы, причем эти режимы не совпадают, то есть, один режим работы одной подсистемы может требовать переключений режимов работы других подсистем; имеется значительная неопределенность в поведении объектов управления и внешней среды; система имеет иерархическую многоуровневую структуру; устройства управления помимо задач обычного непрерывного управления решают также задачи логического управления, диагностики и др.; большая часть функций управления реализуется программно на встроенных ЭВМ и микропроцессорах; очень часто программное обеспечение и аппаратура разрабатываются одновременно; часто состав и структура системы изменяется в ходе ее функционирования.
К «традиционным» сложным СУ относятся системы управления ракетными и космическими комплексами, комплексами противовоздушной и противоракетной обороны, некоторые АСУ ТП и др. В последнее десятилетие роль сложных СУ резко возросла. Благодаря прогрессу микроэлектроники появились дешевые, надежные и быстродействующие встроенные микропроцессоры и ЭВМ. Это привело, во-первых, к усложнению алгоритмов управления и контроля в «традиционных» сложных СУ, а во-вторых, к появлению программной реализации функций управления и контроля во все большем числе технических объектов. Некоторые характерные черты сложных СУ появились даже в таких «бытовых» технических системах как автомобиль, стиральная машина, микроволновая печь и т.п. [17]. Соответственно расширился и круг инженеров-проектировщиков, занятых разработкой и сопровождением сложных СУ.
Одним из основных источников трудностей при разработке сложных СУ являются многочисленные ошибки в программном обеспечении (ПО) встроенных ЭВМ и микропроцессоров [11,62,,15,48]. Эти ошибки приводят к затягиванию этапов динамической комплексной отладки и испытаний, а также к неожиданным отказам системы во время эксплуатации. Эти ошибки обусловлены прежде всего логической сложностью комплекса программ. Не случайно число изменений в программных модулях, координирующих работу подсистем, на порядок превышает число изменений в модулях, реализующих отдельные функции [47,48].
С 1970-х гг. активно разрабатываются методологии структурного проектирования сложных программных комплексов, такие как SADT [111], IDEF [68], метод Йордана [125] и др. С конца 80-х годов начали также интенсивно развиваться объектно-ориентированные методологии разработки программного обеспечения. В настоящее время объектно-ориентированный подход считается наиболее современным и прогрессивным [17,11,62]. В 1997 г. OMG (Object Management Group) приняла язык UML [12,85], появившийся в результате слияния ряда известных методологий, в качестве стандарта языка объектно-ориентированного моделирования. В настоящее время уже существуют разработанные рядом компаний CASE-средства, поддерживающие язык UML, например, такой известный продукт как Rational Rose [7]. Существуют также и отличные от UML объектно-ориентированные методологии, например методология ROOM для разработки систем реального времени [123], а также различные комбинации структурного и объектного подходов [62]. В данной работе мы будем ориентироваться на понятийный аппарат языка UML.
Практикой показано, что при разработке сложного программного обеспечения самые принципиальные просчеты делаются на самых ранних этапах разработки и что обнаружение и устранение этих ошибок на ранних этапах в десятки и сотни раз быстрее и дешевле, чем на завершающих этапах разработки и испытаний [48]. Поэтому в объектно-ориентированной разработке сложных СУ особенно важен этап объектно-ориентированного анализа.