Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаб4_ПО_реального_времени.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
4 Мб
Скачать
☆

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

Пакет 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 выберем Simulation Parameters.. либо комбинацией клавиш 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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]