русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Инструменты для визуального объектно-ориентированного моделирования сложных динамических систем.


Дата добавления: 2014-11-28; просмотров: 1248; Нарушение авторских прав


 

Подсистема Simulink пакета MatLab.

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

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

Подсистема Simulink:

а) предоставляет возможность моделирования непрерывных, дискретных и гибридных - как линейных, так и нелинейных – систем;

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

в) позволяет объединять блок-диаграммы в составные блоки, что обеспечивает иерархическое представление структуры модели;

г) содержит средства для создания блоков и библиотек, определяемых пользователем;

д) даёт возможность проектировать подсистемы, имеющие изменяемую во времени структуру, но эти возможности весьма ограничены.

Начиная с версии 3.0, в Simulink появились специализированные приложения, значительно расширившие её возможности, в частности:

а) подсистема StateFlow – даёт возможность моделировать поведение гибридных или сложных событийно-управляемых систем, базируясь на картах состояния Харела. Уже созданные пользователями пакета Simulink модели рассматриваются как объекты, закон управления которыми реализуется в StateFlow.



б) подсистема StateFlow Coder предназначена для генерации С-кода при реализации диаграмм StateFlow. Применяя StateFlow и StateFlow Coder? пользователь может генерировать нужный код на алгоритмическом языке С только для управляющих моделью блоков, реализованных с помощью StateFlow;

в) подсистема Real-Time WorkShop дополняет Simoink и StateFlow Coder? обеспечивая автоматическую генерацию кода С для моделей, разработанных в Simulink;

г) подсистема Simulink Report Generator позволяет создавать и настраивать отчеты из моделей Simulink и StateFlow в различных форматах, среди которых HTML? RTF? XML и SGML.[7]

Model Vision Studium

Model Vision Studium(MVS) – это интегрированная графическая оболочка для быстрого создания интерактивных визуальных моделей сложных динамических систем и проведения вычислительных экспериментов с ними. Пакет MVS 3.2 работает на Intel-совместимых компьютерах в среде MS Windows 95/98/2000. Пакет занимает примерно 15 Мбайт на жестком диске и не предъявляет к компьютеру никаких особых требований. Кроме наличия аппаратной поддержки операций с плавающей точкой.

Пакет MVS 3.2 разработан исследовательской группой «Экспериментальные объектные технологии» (XJ), созданной на кафедре «Распределенные вычислительные сети» факультета Технической Кибернетики Санкт-Петербургского Государственного Технического Университета.

Ключевыми проблемами при разработке MVS 3.2 являлись:

а) поддержка технологии объектно-ориентированного моделирования (ООМ);

б) удобное и адекватное описание гибридных (непрерывно-дискретных) систем;

в) обеспечение достоверности численного решения;

г) обеспечение моделирования и визуализации результатов без написания какого-либо программного кода.

Технология моделирования в MVS.

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

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

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

Предполагается, что каждой модели (проекту) соответствует определенная папка, в которой хранятся файл внутреннего представления проекта (mvb), файлы установок проекта и выполняемой модели (ini), а также картинки для анимации, DLL пользователя и т.п. Описание проекта и библиотек классов хранится виде дерева объектов в объектно-ориентированной базе данных MVBase (отдельный файл с расширением mvb на каждый проект и библиотеку классов). Библиотеки классов (за исключением стандартной библиотеки SysLib) являются обычными проектами, их могут создавать и редактировать пользователи.

Описание проекта пользователь может вводить и редактировать как в визуальном, так и в текстовом виде. При открытии в интегрированной среде какого-либо проекта его внутреннее представление автоматически разворачивается в визуальное представление. В любой момент с помощью специальной команды может быть получено текстовое описание проекта на специальном языке Model Vision Language (MVL), включающее в себя два текстовых файла: собственно функциональное описание (расширение mvl) и описание визуальных элементов (расширение pra). Импорт проекта из текстового представления осуществляется специальным MVL-компилятором.[4]

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

 

Рис. 3.1

 


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

При генерации выполняемой модели сначала проводится полный комплексный анализ контроль классов, используемых в TestBench, а затем для каждого класса генерируется соответствующий программный модуль на промежуточном языке программирования и в зависимости от типа модели генерируется соответствующий главный модуль программы. Затем полученная программа компилируется с помощью компилятора командной строки для промежуточного языка. На этом этапе к сгенерированным модулям присоединяются стандартные модули промежуточного языка и библиотека периода исполнения (RTL) пакета MVS для данного промежуточного языка.

В MVS 3.2 возможны три типа выполняемых моделей:

а) визуальная интерактивная модель в виде 32-разрядного приложения для MS Windows;

б) «скрытая» модель в виде 32-разрядной DLL для MS Windows;

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

При генерации моделей для Windows в качестве промежуточного языка используется Object Pascal 10.0 (Borland Delphi 3). Необходимые для компиляции модули устанавливаются автоматически при инсталляции пакета MVS.

При генерации Java-моделей пользователь должен предварительно установить на своём компьютере JDK 1.2.

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



<== предыдущая лекция | следующая лекция ==>
Выводы по ІІ разделу | Краткое руководство пользователя


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.