Real-Time Workshop Rapid Simulation Target (rsim) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Real-Time Workshop Rapid Simulation Target (rsim)



 

Содержит набор целевых файлов для nonreal-time создания и выполнения автономных моделей на HOST компьютере. Автономная модель создается путем компиляции из Simulink-модели. Rsim может быть использован для генерации более быстрой (по сравнению с Simulink) автономной модели, которая использует параметры настройки и загрузки новых данных моделирования из стандартного MAT-file'а без необходимости рекомпиляции вашей модели при изменении параметров. С код автономного модуля генерируется RTW оптимизировано к быстрому выполнению дискретных по времени систем или систем, которые используют фиксированный шаг решения. Скорость генерации кода становится идеальной для формирования результата при реализации метода Монте-Карло. При формировании запросов на целевую платформу, как и в обратном порядке, используется стандартный MAT-file, в который и из которого происходит считывание параметров настройки и запись полезной информации, сформированной на целевой платформе.

 

Процесс быстрого прототипирования можно представить следующей схемой:

Рис 3. Быстрое прототипирование.

The run-time interface for a rapid prototyping target includes:

Supervisory logic

- The main program

- Execution engine and integration solver

Supporting logic

- I/O drivers

- Code to handle timing, and interrupts

Monitoring, tuning, and debugging support

- Data logging code

- Signal monitoring

- Real-time parameter tuning

- External mode communications

 

Target Tornado for Real-Time Application

 

Операционная система VxWorks от компании Wind River Systems, Inc. – это Unix-подобная операционная система реального времени с интегрированными возможностями узлов связи и специальных приложений, средств разработки и сервисов.

Архитектуру взаимодействия автономных платформ можно показать так: рис 4. На этом рисунке явно видна структура подсистемы сбора и преобразования данных с объекта (VxWorks Target) и подсистема управления, отображения и обработки принятых с объекта данных.

Рис 4. Схема взаимодействия HOST – TARGET.

 

Блоки компонентов для построения моделей на основе VxWorks на платформах Tornado представлены в Simulink/Real-Time Workshop/VxWorks support.

На основе встроенных возможностей Matlab for VxWorks rеal-time можно:

· конфигурировать блоки драйверов устройств и исполняемых файлов

· создавать программы

· загружать объектные файлы на целевую платформу (Target) с установленной ОС VxWorks

· использовать Simulink External Mode для изменения параметров настройки созданных в RTW программ и моделей, предварительно загруженных и автономно работающих на VxWorks target

· использование StethoScope позволит использовать встроенные VxWorks сервисы для отображения входных данных

 

Таким образом, если HOST и TARGET платформы поддерживают возможность сетевого соединения, то посредством sockets network API можно реализовать программу реального временисо следующей архитектурой

Рис 5. Структура работы модели реального времени на основе платформы Tornado для операционной системы VxWorks.

 

Название программного модуля Примечания
Ext_comm. формирователь сообщений через транспортный уровень
tExtern блок приёма переменных управления
tBaseRate блок обработки данных
tScope блок формирования собранной информации

 

 

 

 

Targeting Real-Time System

 

Встроенные возможности Matlab для построения систем реального времени – это:

· огромное количество модулей поддержки устройств (плат), производимых компаниями, а также драйверов к ним

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

 

Благодаря такой программной поддержке разработчику предоставляется возможность:

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

 

Все перечисленные возможности при targeting'e систем реального времени выполняются посредством множества приложений Matlab and Simulink рассмотрение которых отдельная тематика, однако, некоторые из них выше изложены в этом документе.

Посмотреть возможности rtw, в частности блоки, предоставляемые для разработки можно тут: C:\matlab\toolbox\rtw\rtw\rtwlib.mdl

 


 

 

Подготовка к проектированию модели реального времени.

 

Пакет Matlab, разработанный для проектирования и исследования различного типа систем, содержит, в том числе, возможности создания программного обеспечения реального времени. для осуществления функций реального времени необходимо установить ядро реального времени для вашей системы (Unix, Windows, …). Пакет "Лаборатория реального времени" или Real-Time Workshop содержится в блоке Simulink. Если ядро реального времени на вашем ПК ещё не установлено, то необходимо это сделать следующим образом: в меню пуск, приложения Matlab(левый нижний угол экрана) выбрать пункт Simulink>Средства Windows реального времени>Установить ядро реального времени.

Рис 6. Вид меню пуск.

 

Для работы компилятора необходимо установить тип компилятора. Пакет Matlab поддерживает работу с 3 типами компиляторов. Для инициализации компилятора воспользуемся функцией " mex -setup ".

NOTE: Команда mex –setup, пишется с пробелом перед "-", после знака "-", пробела нет!

Наберите в поле окна команд, запущенyого пакета Matlab, команду mex –setup. далее система выведет запрос на тип компилятора, который вы хотели бы использовать:

Рис 7. Формирование запросов на инициализацию компилятора.

 

Далее система попросит вас выполнить 2 команды:

cd prefdir; // выводит наиболее предпочтительный путь папки, для оптимальной работы системы.

mccsavepath; // компилятор сохраняет путь.

 

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

Рис 8. Создание нового документа Simulink.

Для создания модели в приложении Simulink, пакета Matlab разработаны стандартные блоки. для создания модели, вам могут потребоваться как специализированные, так и общие типы блоков. Библиотеку блоков Real-Time Workshop можно загрузить через меню пуск: пуск>Simulink>Средства Windows реального времени>Библиотека блоков.

Рис 9. Библиотека блоков для Real-Time Workshop.

 

Так же, эту библиотеку и все остальные библиотеки можно найти в обозревателе библиотек. перейти к нему можно по кнопке: или из окна "Запустить редактор":

Рис 10. Запуск библиотеки компонентов.


 


 


4. Типовой пример разработки ПО реального времени в пакете Real-Time Workshop

 

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

 
 

 


Рис 11. Модель "Станция управления полётами".

 

Выберем модель "aero_ats.mdl". Для этого в строке адреса необходимо ввести путь " C:\matlab\toolbox\simulink\simdemos\aerospace\aero_atc.mdl ". После этого в окне откроется сама модель, окно аннотации и окно отображения графиков (если требуется для работы модели). для проверки работоспособности модели, нужно запустить её при помощи кнопки . При нормальной работоспособности модели, можно приступать к созданию автономного EXE файла.

Для создания автономной модели, необходимо задать параметры модели. Для этого в меню Simulation выберем SimulationParameters.. либо комбинацией клавиш Ctrl+E. На экране это выглядит так:

Рис 12. Изменение параметров моделирования.

 

После этого на экране появится окно параметров. Для задания параметров используем окно решателя (Solver) и окно лаборатории реального времени (Real-Time Workshop), которые выглядят так:

Рис 13. Окна параметров компилятора.

 

Для компилятора важными являются следующие параметры:

· время моделирования (старт и стоп)

· тип шага (выбираем фиксированный шаг)

подробнее: (Real-Time Windows Target: Preface: Simulink)

(Using Simulink: How Simulink Works: Determining Step Size for Discrete Systems)

· значение шага (задаём 0.01)

· режим работы модели (выбираем авто)

· алгоритм работы решателя (выбираем ade5)

 

Время моделирования – это время в течение которого работает модель. При этом можно задать значение шага при фиксированном типе шага. В данном случае выбираем шаг 0.01 с. Так же можно выбрать режим работы модели. Доступные режимы: автоматически выбирается моделью, однозадачный и многозадачный В зависимости от типа и сложности решаемой задачи выбирается алгоритм работы решателя. В данном случае алгоритм работы решателя выбираем ade5 это основной алгоритм для расширенного круга задач. Д анное меню предлагает 6 типов алгоритмов, основанных на различных формулах (на основе формулы Dormand-Prince, формулы Runge-Kutta и.т.д.)

 

NOTE:

 

 

 

 

Рис 14. Используемые типы шага при построении модели.

 

Второе, рассматриваемое окно, предлагает задать параметры Real-Time Workshop. В данном окне необходимо задать настраиваемую категорию и затем параметры этой категории.

В списке пользователю предлагается настроить 6 категорий:

· конфигурация модели

· TLC отладка

· общие параметры генерации кода объекта

· основные опции вида выходного кода

· опции генерации кода GRT

В разделе "конфигурация модели" задаются параметры:

· системный целевой файл

· шаблон исполняемого файла

· формат команды make

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

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

Шаблон исполняемого файла – это необходимый для компилятора параметр при построении рабочей директории и системных файлов. (выбирается системой автоматически)

Формат команды make - это стандартная команда, поставляемая вместе с пакетом Matlab для лаборатории реального времени она находится в одной из системных директорий Matlab с именем make_rtw.m.(выбирается системой автоматически)

подробнее: Real-Time Workshop: Code Generation and the Build Process: Target Configuration Options

 

После настройки, окно параметров выглядит так:

Рис 15. Окно настройки параметров конфигурации цели для RTW.

 

 

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

Требования к этому разделу: необходимо, что бы все флажки были сняты.

 

После настройки, окно параметров выглядит так:

Рис 16. Окно настройки параметров TLC отладки для RTW.

 

В разделе " Общие параметры генерации кода объекта " нужно поставить флажки в пунктах:

· подробные построения

· генерация отчёта

· локальный вывод блока

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

 

 

После настройки, окно параметров выглядит так:

Рис 17. Окно настройки общих параметров генерации кода для RTW.

 

Рис 18. Пример отчёта о выполненной работе.

 

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

После настройки, окно параметров выглядит так:

Рис 19. Окно настройки общих параметров генерации кода для RTW

 

В разделе "Основные опции вида выходного кода" флажки должны быть выставлены в пунктах "Ставить имя модели перед глобальными идентификаторами" и "Генерировать комментарии", как это показано ниже. Эти опции позволят прослеживать работу компилятора при построении кода.

 

После настройки, окно параметров выглядит так:

Рис 20. Окно настройки параметров выходного кода для RTW.

 

В последнем разделе "опции генерации кода GRT" указываются параметр MAT-файла (rt_, _rt, non), модель внешнего уровня и игнорировать хранение классов.

А так же необходимо указать External mode для внешнего исполнения нашей модели.

После настройки, окно параметров выглядит так:

Рис 21. Окно настройки генератора реального времени.

 

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

### Successful completion of Real-Time Workshop build procedure for model: aero_atc

>>

которое говорит о том, что процесс успешно завершён. Так как мы задали параметр вывода отчёта, то в окне "Help" должен быть сконфигурирован полный отчёт о проделанной работе, а заданной вами рабочей директории создан файл aero_atc.exe.

Данный файл при его запуске, входит в режим внешнего выполнения (выполняется автоматически без участия Matlab), как и ставилось целью данной работы. Однако, для представления результатов, необходим Matlab, который используется как редактор исходной модели и среда для вывода визуальной информации. Также существует дополнительная возможности настройки внешнего управления и представления результатов на другой рабочей станции, возможность настройки связи с Matlab по цифровым интерфейсам периферийных устройств или по протоколу TCP/IP. Для примера работы модели, воспользуемся протоколом TCP/IP в рамках вашего рабочего ПК.

Для этого необходимо запустить созданный вами файл aero_atc.exe в командной строке. Вызов командной строки может осуществляться следующим образом: Меню Пуск -> Выполнить -> набрать cmd -> нажать ОК. Для запуска модели в командной строке появившегося окна набрать: aero_atc.exe –tf inf –w. Для работы в команднойстроке смотрите ПАМЯТКУ ПО СЁРФИНГУ В DOS

Настройка параметров связи

После того, как вы запустите exe файл, программа начнёт выполняться. Для связи с TARGET платформой, необходимо создать и запустить соединение. Для настройки соединения, требуется вызвать окно канала связи в меню Tools/External mode control panel… (Рисунок 22)

Рис 22. Запуск меню настройки канала.

 

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

Рис 23. Запуск связи с объектом

 

Затем соседней кнопкой передадим команду «запуск» программе aero_atc.exe. В результате на экране начнётся отображение процессов, протекающих в модели. Напомню, что в данном случае используется протокол TCP/IP для реализации механизмов межпроцессного взаимодействия в пределах одной ЭВМ – HOST-компьютера. Однако, модель будет работать аналогично и в случае когда внешняя программ будет запущена на другом компьютере (TARGET платформе).


Задания на лабораторную работу.

 

Вариант № Задание
  В Simulink создать модель, состоящую из генератора синусоидального сигнала и 2х усилителей с коэффициентом усиления 2 и 4 соответственно. Выполнить визуализацию используя виртуальные приборы типа «Осциллоскоп». Настроить параметры компиляции и сгенерировать код для запуска в режиме внешнего исполнения Matlab для двух случаев: 1) запуск кода и визуализация в Simulink на одном компьютере; 2) запуск кода и визуализация в Simulink на разных компьютерах. Провести эксперимент. Проанализировать полученные результаты. Оформить отчет о проделанной работе.
  Используя блоки Simulink выполнить модель     Сгенерировать код для запуска модели в режиме внешнего исполнения в соответствии с порядком выполнения лабораторной работы.  
  Используя блоки Simulink выполнить модель Сгенерировать код для запуска модели в режиме внешнего исполнения в соответствии с порядком выполнения лабораторной работы.

 

6. Список контрольных вопросов


7. Порядок выполнения работы

 

1. В Simulink создать модель в соответствии с индивидуальным заданием.



Поделиться:


Последнее изменение этой страницы: 2016-06-19; просмотров: 518; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.12.34.178 (0.079 с.)