Что такое simulink
Перейти к содержимому

Что такое simulink

Simulink

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

Запуск

Изучите основы Simulink

Приложения

Модели в качестве примера, иллюстрирующие определенную функциональность и приложения

Основы окружения Simulink

Создайте блок-схемы в интерактивном режиме или программно, выберите блоки из библиотек блоков

Моделирование

Проектирование моделей динамических систем

Симуляция

Запустите модели, рассмотрите результаты, подтвердите поведение системы

Управление проектами

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

Авторские блоки и интеграция в симуляцию

Расширьте существующий Simulink, моделируя функциональность с помощью кода C/C++ и MATLAB

Simulink Поддерживаемые аппаратные средства

Поддержка стороннего оборудования, такого как Arduino ® и Raspberry Pi™

Документация Simulink

Поддержка

© 1994-2021 The MathWorks, Inc.

1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.

2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.

3. Сохраняйте структуру оригинального текста — например, не разбивайте одно предложение на два.

4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.

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

Школа MATLAB. Урок 1. Моделирование устройств силовой электроники. Основные инструментарии Simulink

Система MATLAB (от слов Matrix Laboratory — матричная лаборатория) создана специалистами фирмы Math Works Inc. с привлечением большого количества партнеров. Существует она около двадцати лет. Это лицензионный программный продукт высочайшего уровня, который постоянно совершенствуется, что проявляется в появлении новых более совершенных версий. Так, в 2001 году фирма Math Works выпустила в свет версию MATLAB 6.1, ставшую явным лидером в классе подобных систем и получившую развитие в последующей версии MATLAB 6.5 (Release 13). Летом 2004 года фирмой Math Works объявлено о начале поставок MATLAB 7.0 (Release 14), но эта версия пока еще не получила должного распространения.

Размещается система MATLAB 6.5 (Release 13) на трех компакт-дисках и ее рекомендуется устанавливать на персональный компьютер на базе процессоров типа Pentium II, Pentium III, Pentium IV, Xeon, AMD Athlon, Athlon XP при условии, что оперативная память имеет объем не менее 128 Mбайт (предпочтительнее 256 Mбайт). Полная версия системы занимает объем памяти на жестком диске свыше 1,1 Гбайт. Совмещается с Microsoft Word 8.0 (Office 97), Office 2000 или Office XP. В то же время, Office 95 не имеет полной поддержки. Установка системы MATLAB осуществляется в соответствии с инструкцией, расположенной на первом компакт-диске в файле install_guide.pdf (книга Installation Guide for Windows). Отметим, что вся документация системы MATLAB выполнена на английском языке.

Уроки школы MATLAB в журнале «Силовая электроника» рассчитаны на специалистов в области проектирования устройств силовой электроники, электропривода, систем автоматического управления, а также на аспирантов и студентов, обучающихся указанным специальностям. Предполагается, что читатель в достаточной мере знаком с персональным компьютером, пакетами Windows, Microsoft Office, имеет навыки работы с РС с помощью мыши. Желательно знание технического английского языка.

Введение

Система MATLAB представляет собой язык программирования высокого уровня, предназначенный для инженерных и научных вычислений и создания средств моделирования различных устройств и систем. Базируется на алгоритмах матричных вычислений с выполнением операций над наборами векторов, что определяет основное отличие этой системы от других известных пакетов — MathCAD, Maple, Mathematika и других. За счет матричного и векторного представления данных разработчикам удалось существенно повысить скорость вычислений, экономно использовать ресурсы памяти и обеспечить высокую точность расчетов. В MATLAB реализован модульный принцип построения с широкими возможностями модификации и расширения, что подтверждает состав этого продукта, а именно: несколько десятков пакетов прикладных программ и более двух сотен приложений и расширений, богатейшая библиотека функций (свыше 800), а также огромный объем документации, насчитывающий десятки тысяч страниц.

Для удобства пользования вся система MATLAB поделена на разделы, оформленные в виде пакетов программ, наиболее общие из которых образовали ядро. Другие пакеты объединены или существуют индивидуально в виде так называемых Toolboxes. Особо следует выделить пакет Simulink, предназначенный для моделирования линейных и нелинейных динамических систем. Он базируется на принципах визуальноориентированного программирования с использованием моделей в виде комбинаций компонентов-блоков, путем соединения которых между собой составляются функциональные модели устройств и систем. При этом математическая модель, описывающая поведение такой системы, формируется и решается автоматически. Для исследователя Simulink создает массу возможностей, начиная от функционального представления устройства и вплоть до генерирования кодов, используемых для программирования микропроцессоров. Пакет Simulink вместе с пакетом расширения SimPowerSystems (в более ранних версиях — Power Systems Blockset) являются основой для изучения и исследования устройств силовой электроники и электромеханических устройств.

Система MATLAB 6.5 объединена с версиями пакетов Simulink 5.0 и SimPowerSystems 2.3. Важно отметить, что оба указанных пакета снабжены обширными библиотеками. Библиотека Simulink содержит блоки, в основном ориентированные на моделирование конкретных устройств в виде функциональных схем. В нее входят источники сигналов, масштабирующие, линейные и нелинейные блоки, квантователи, интеграторы, дифференциаторы, измерители и т. д. В библиотеку SimPowerSystems входит набор блоков для имитационного моделирования электротехнических устройств в виде пассивных и активных электротехнических элементов, источников энергии, электродвигателей, трансформаторов, полупроводниковых элементов. С помощью Simulink и SimPowerSystems можно имитировать работу устройств во временной области, а также выполнять анализ их свойств — рассчитывать импеданс цепи, получать амплитудно- и фазочастотные характеристики, выполнять гармонический анализ токов и напряжений.

Несомненное достоинство Simulink и Sim PowerSystems состоит в возможности построения моделей сложных электротехнических систем на основе методов имитационного и функционального моделирования. Так для построения силовой части полупроводникового преобразователя используются блоки SimPowerSystems, имитирующие элементы и устройства, а в его системе управления — функциональные блоки Simulink, которые отражают алгоритм ее работы без представления электрической схемы. За счет такого подхода, в отличие от известных пакетов схемотехнического моделирования типа OrCAD, PSpice, DesignLab, Workbench и т. п., модель упрощается, экономится память, повышается скорость расчета и работоспособность ПК. Важно отметить, что после построения функциональной модели исключается сложный этап составления и решения алгебраических и дифференциальных уравнений и обеспечивается возможность визуального контроля поведения созданной модели и протекающих в ней процессов.

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

Урок 1. Основные инструментарии Simulink

Цель первого урока состоит в знакомстве читателя с построением окон, которые необходимы для функционального моделирования в Simulink, и с применяемыми в них меню опций, кнопками управления и элементами контроля. Излагается порядок построения S-моделей и основные правила их редактирования. Даются краткие сведения по разделам библиотеки Simulink.

Запуск пакета Simulink

Командное окно системы MATLAB 6.5

Рис. 1. Командное окно системы MATLAB 6.5

Работа с пакетом Simulink начинается с запуска системы MATLAB с помощью выведенного на «Рабочий стол» ярлыка (см. рисунок), либо через кнопку на панели задач Пуск/Программы/MATLAB (здесь и ниже через косую черту указывается последовательность нужных пунктов или действий в меню, подменю и т. д.). В результате открывается окно (рис. 1), содержащее:

  • название окна — MATLAB (в предыдущих версиях окно называлось командным — MATLAB Command Window);
  • панель меню File, Edit, View, Web, Window, Help (на рис. 1 эти пункты меню обозначены номерами от 1 до 6);
  • панель инструментов, на которой расположены известные в большинстве своем кнопки, но среди них имеется кнопка, отмеченная на рис. 1 номером 7 и имеющая всплывающую подсказку Simulink;
  • наборное поле командного окна;
  • строку состояния.

Запуск пакета Simulink осуществляется одним из следующих способов:

  • с помощью упомянутой кнопки 7 на панели инструментов (при этом вызывается окно браузера, называемое также окно обозревателя библиотеки — Simulink Library Browser);
  • набором в строке командного окна слова Simulink (также вызывается окно браузера);
  • последовательным выбором пунктов меню File/New/Model (открывается окно для создания S- или SPS-модели);
  • с помощью кнопки открытия документа на панели инструментов (вызывается окно с построенной ранее моделью, сохраненной в виде mdl-файла).

Последний из перечисленных способов следует применять для запуска отлаженной модели, в которую не требуется добавлять какие-либо блоки. Сразу отметим, что под S-моде-лью понимается модель, созданная в Simulink, а под SPS-моделью — модель, созданная в SimPowerSystems. Основные манипуляции в процессе работы осуществляются с помощью левой кнопки мыши (в дальнейшем — ЛК мыши). Использование правой кнопки мыши (ПК мыши) будет оговариваться особо. Открывать окно браузера нужно в тех случаях, когда либо создается новая модель, либо в имеющуюся модель добавляются новые блоки из библиотеки.

Окно браузера библиотеки Simulink (рис. 2, сверху вниз) содержит:

Рис. 2. Окно браузера (обозревателя) библиотеки Simulink

  • панель с названием окна — Simulink Library Browser;
  • панель меню;
  • панель инструментов с кнопками;
  • окно с названием выбранного раздела библиотеки;
  • левое окно со списком разделов библиотеки (содержание окна на рис. 2 выведено частично, не в полном объеме из-за ограниченности
    и размера по вертикали);
  • правое окно для вывода содержания открытого раздела или подраздела библиотеки в виде пиктограмм;
  • строку состояния окна.

При вызове окна браузера автоматически открывается раздел библиотеки Simulink в левой (подстрочное подменю в виде дерева) и правой (пиктограммы подразделов) частях окна. Заметим, в нижнем отделе списка левой части окна имеется строка с названием раздела SimPowerSystems. С разделами в левой части правила работы общие для подобных списков: в пиктограмме свернутого узла дерева знак «+», а у развернутого «-». Щелчком ЛК мыши по указанному знаку можно развернуть или свернуть узел дерева.

На панели меню окна браузера имеются 4 меню (рис. 2):

  1. File (Файл) — работа с файлами библиотеки: создание новой модели, открытие или закрытие mdl-файла.
  2. Edit (Редактирование) — добавление блоков в выделенную модель и их поиск по указанному названию.
  3. View (Вид) — управление показом элементов интерфейса.
  4. Help (Помощь) — вызов справки по окну браузера.

Кнопки, располагающиеся на панели инструментов окна браузера:

  1. Create a new model — Создать новую модель (открыть окно модели).
  2. Open a model — Открыть одну из ранее созданных и сохраненных моделей.
  3. Stay on top — Расположить окно браузера поверх других открытых окон.
  4. Find — Найти блок, название которого набирается в расположенном справа от кнопки текстовом поле (допустимо набирать первые несколько символов названия).

Окно для создания S-модели

Для построения S-модели необходимо вызвать окно браузера и окно модели. Если открыто первое из них, то второе следует открывать ЛК мыши по пунктам меню File/New/ Model, либо кнопкой 1 окна браузера (рис. 2). В том случае, когда на рабочем столе имеется только окно для создания модели, вызов окна браузера осуществляется по пунктам меню View/Library Browser окна модели или кнопкой окна MATLAB (аналогичная кнопка имеется на панели инструментов окна модели). Окно модели (рис. 3) содержит следующие области:

  • панель названия окна или имени модели;
  • панель меню;
  • панель инструментов;
  • окно для непосредственного создания модели;
  • строка состояния, содержащая сведения о состоянии модели.

Окно для создания S-модели

Рис. 3. Окно для создания S-модели

Вновь открытое окно модели имеет имя Untitled— «Без названия» с соответствующим номером, если открыты несколько окон модели. При сохранении созданной модели в виде mdl-файла через пункты меню File-Save as… открывается окно сохранения в папку Work системы MATLAB. В нижнем текстовом окне следует набрать название модели и выполнить операцию сохранения. Название должно начинаться с букв (использовать только латинский шрифт) и содержать при необходимости цифры. В качестве разделителя допускается использовать только черту подчеркивания. Пример названия: Diod_3_04. После того, как выполнено сохранение, название модели автоматически присваивается в качестве названия окну.

Меню содержат опции для настройки, редактирования модели, управления процессом моделирования и т. п.:

  1. File (Файл) — работа с mdl-файлом модели, а также открытие нового окна для создания модели;
  2. Edit (Редактирование) — изменение модели и поиск блоков;
  3. View (Вид) — управление изображением элементов модели;
  4. Simulation (Моделирование) — настройки процессов моделирования и расчета;
  5. Format (Форматирование) — настройка внешнего вида блоков и модели в целом;
  6. Tools (Инструментальные средства) — применение специальных средств для работы с моделью;
  7. Help (Помощь) — вызов справки по Simulink, блокам, S-функциям и т. п.

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

  1. Start-Pause-Continue Simulation — запуск процесса моделирование-пауза-продолжение (при каждом нажатии рисунок на кнопке меняется.
  2. Stop — закончить моделирование. Кнопка становится доступной после начала моделирования.
  3. Normal/Accelerator/External — обычный/ускоренный режим расчета Работает, если установлено приложение Simulink Performance Tool
  4. Build all — создать исполняемый код модели (exe.файл) с помощью Real Time Workshop (Мастерская реального времени).
  5. Update diagram — обновить окно модели.
  6. Build Subsystem — создать исполняемый код подсистемы.
  7. Library Browser— открыть окно браузера — обозревателя библиотеки блоков.
  8. Toggle Model Browser— открыть дополнительное окно обозревателя модели.
  9. Go to parent system — переход в подсистему высшего уровня иерархии. Команда доступна только из подсистемы низшего уровня.
  10. Debug — запуск отладчика модели.

В строке состояния располагаются комментарии к задействованным кнопкам инструментов и к пунктам меню, на которых находится указатель мыши. Кроме того, в этой строке отражается состояние Simulink: Ready (Готов), Running (Выполнение), а также:

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

Более подробно функции указанных меню и инструментов рассматриваются ниже по мере надобности.

Построение S-модели

Окно модели открыто. Вызовем окно браузера кнопкой. Соберем простейшую схему — источник постоянного напряжения 10 В и измеритель этого напряжения. Для этого в разделе Simulink щелкнем в правой части окна ЛК мыши по значку «+» слева внизу около пиктограммы Source или в левой части на строчке Source дерева. Пиктограммы разделов заменятся на пиктограммы блоков раздела Source (рис. 4а).

Рис. 4. Окно источников Sources (а) и приемников Sinks (б) сигналов в окне браузера Simulink

Найдем пиктограмму блока Constant (Источник постоянного сигнала), поместим на него указатель мыши и, нажав ЛК мыши, переместим блок в окно модели и отпустим ЛК. Пиктограмма блока, точнее, ее копия, останется в окне модели (рис. 5а). Это же перемещение можно осуществить так. Выделяется пиктограмма щелчком ЛК мыши и затем в окне браузера выполняется действие в меню Edit/Add to the current model. Выбранный блок сам переместится в окно модели. Вновь щелчком ЛК мыши в левой части браузера по пиктограмме Sinks вызовем в правой части набор пиктограмм блоков этого подраздела (рис. 4б). Найдем измерительный блок Display (Цифровой вольтметр). Перетащим пиктограмму с помощью ЛК мыши в окно модели (рис. 5б). Теперь необходимо соединить оба блока, чтобы собрать схему измерения. У блока Constant справа имеется «воронка» (маленький треугольник), направленная наружу (выход имеется у всех источников), а у блока Display она расположена слева и направлена внутрь (вход имеется у всех приемников). Соединение блоков возможно двумя способами:

  • подвести указатель мыши к выходу блока, стрелка превратится в крест, нажать ЛК мыши, протянуть крест прямо к входу другого блока и отпустить ЛК;
  • установить указатель мыши на пиктограмму блока Constant, нажать ЛК мыши и клавишу Ctrl, первую из которых отпустить, а вторую держать нажатой до конца операции соединения, переместить указатель мыши на пиктограмму блока Display и вновь нажать ЛК мыши и отпустить вместе с клавишей Ctrl.

В результате операции между блоками возникнет связь в виде соединительной линии со стрелкой, направленной к входу блока Display (рис. 5в). Теперь необходимо настроить блоки. У блока Constant выставляется выходное напряжение 10 В. При двойном щелчке ЛК мыши по пиктограмме этого блока открывается окно настройки Block parameters: Constant. В текстовом окне Constant value с клавиатуры надо исправить 1 на 10 (рис. 5г). Сохраняется введенное значение нажатием ЛК мыши кнопки Apply (окно при этом не закрывается) или кнопки Ok (введенное значение сохранится, а окно закроется). В пиктограмме блока Constant вместо 1 появится 10 (рис. 5д). Блок Display можно не настраивать, хотя настройки у него также имеются. Для запуска построенной модели следует нажать кнопку запуска Н. Процесс моделирования в такой задаче выполняется относительно быстро, что видно по изменениям надписей на строке состояния окна. По окончании на экране блока Display появляется результат измерения, равный 10 (рис. 5е). Итак, порядок действий при построении S-модели следующий:

Порядок построения S-модели

Рис. 5. Порядок построения S-модели

  • вызвать окно браузера и окно модели и разнести их на «Рабочем столе»;
  • переместить необходимые блоки из библиотеки Simulink в окно модели и расположить их так, чтобы было удобно соединять между собой;
  • произвести необходимые соединения блоков;
  • выполнить настройку блоков, вызвав окно параметров у каждого блока;
  • запустить модель;
  • при необходимости сохранить модель в качестве mdl-файла;
  • закрыть по очереди все окна и библиотеки Simulink, а при необходимости выйти из MATLAB осуществить это действие через меню File/Exit MATLAB.

Основные операции при редактировании S-модели:

  • выделение (активация) блока (соединительной линии), необходимое перед выполнением какого-либо действия, требует установить указатель мыши на объект и щелкнуть ЛК мыши, чтобы появились маркеры в виде черных маленьких квадратов в углах пиктограммы (на концах линии);
  • копирование блоков выполняется в окне модели установкой указателя мыши на пиктограмму, нажатием ПК мыши, вытягиванием копии блока в нужное место окна и отпусканием ПК (в названии скопированного блока появляется порядковый номер, а сам он отключается от схемы);
  • перемещение объекта (блока или соединительной линии) осуществляется через выделение его и перетягивание с помощью ЛК мыши в заданное место окна (у линии возможно образование петли, но при этом имеющееся соединение с другими блоками не разрывается);
  • удаление объекта предполагает его первоначальное выделение ЛК мыши с последующим нажатием кнопки Delete на клавиатуре компьютера (при наличии соединения удаляемого блока с другим блоком линия соединения останется, но изменит свой цвет, станет пунктирной и должна быть либо удалена отдельно, либо подключена к другому блоку путем подтягивания стрелки к входу при нажатой ЛК мыши);
  • соединение блоков между собой реализуется двумя способамиописанными ранее;
  • ответвление от соединительной линии для подключения к выходу одного блока входов двух или более блоков осуществляется после создания обычного соединения, на полученную линию в точку ответвления устанавливается указатель мыши и за счет ПК делается ответвление с протягиванием его к входу второго блока;
  • вставка блока в соединение возможна при наличии у него одного входа и одного выхода и выполняется перемещением блока с установкой в нужное место соединительной линии, длина которой должна превышать длину блока;
  • изменение размеров блока выполняется после его выделения растягиванием за один из угловых маркеров (при подведении к маркеру указателя, превращающемся в двунаправленную стрелку) с помощью ЛК мыши.

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

Основные разделы библиотеки Simulink

Дадим краткую информацию о содержимом библиотеки Simulink. Откроем окно MATLAB и кнопкой вызовем окно браузера Simulink Library Browser (рис. 2). В правой части окна расположены пиктограммы разделов Simulink.

  1. Continuous — блоки аналоговых (непрерывных) сигналов.
  2. Discontinuous — блоки нелинейных элементов.
  3. Discrete — блоки дискретных (цифровых) сигналов.
  4. Look-Up Tables — блоки для формирования таблиц.
  5. Math Operations — блоки для реализации математических операций.
  6. Model Verification — блоки для проверки параметров сигналов.
  7. Model-Wide Utilities — подраздел дополнительных утилит.
  8. Port&Subsystems — порты и подсистемы.
  9. Signal Attributes — блоки для изменения параметров сигналов.
  10. SignalRouting— блоки, определяющие маршруты сигналов.
  11. Sinks — приемники и измерители сигналов.
  12. Sources — источники сигналов.
  13. UserDefinedFunction — функции, задаваемые пользователем.

Рассмотрим основные блоки библиотеки Simulink, которые в дальнейшем будут использоваться при построении систем управления для устройств силовой электроники. Вызовем последовательно из окна браузера Simulink Library Browser библиотеку Simulink и раздел Sources.

Sources — источники сигналов

Генератор синусоидального напряжения Sine Wave

Пиктограмма генератора синусоидального напряжения.

Назначение — получение сигна ла синусоидальной формы с заданной частотой, амплитудой, фазой и смещением.

Окно параметров блока (рис. 6), вызываемое двойным щелчком ЛК мыши по пиктограмме генератора, содержит:

Рис. 6. Окно настройки параметров генератора синусоидального напряжения

  • панель названия с краткими комментариями по назначению блока;
  • параметры;
  • панель кнопок.

Формирование сигнала осуществляется в соответствии с алгоритмом, выбираемым в текстовом окне Sine type: Time based или Sample based. В первом случае сигнал формируется по текущему времени для непрерывных систем

u = Um sin (2xpixfxt + φ) + U0

Параметры блока: Amplitude— амплитуда Um, Bias — постоянная составляющая (смещение) в сигнале U0, Frequency— частота f (рад/с), задается значение в (2xpixf), Phase— начальная фаза (рад), Sample time— такт дискретности TS, Interpret vector parameters as 1-D — интерпретация вектора как массива скаляров. В MATLAB число к обозначается «pi».

Такт дискретности принимает значение 0 (по умолчанию используется для моделирования непрерывных систем); > 0 (положительное значение задается при моделировании дискретных систем); -1 (при отрицательном единичном значении такт устанавливается таким же, как и у предшествующего блока).

Во втором случае Sample based формирование сигнала осуществляется по количеству тактов в периоде

u = Umsin (2xpixfxkxTs + φ) + U0 = Um sin(2xpixk + lφ))/N + U0

где f — частота сигнала в Гц, N — количество тактов в секунду, k — номер текущего шага от 0 до N-1, l — начальная фаза, заданная количеством тактов.

Параметры блока: Amplitude— амплитуда Um, Bias — постоянная составляющая в сигнале U0, Sample per period — количество тактов за период N = 1/ (fxTS) или p = 2xpixN, Number of offset samples — начальная фаза в тактах дискретности l = ср xp/(2xpi), Sample time — такт дискретности TS, Interpret vector parameters as 1-D — интерпретация вектора как массива скаляров.

В качестве примера приведена функциональная модель (рис. 7а) и результат моделирования (рис. 7б) в виде временной диаграммы — осциллограммы. В модели использован новый блок измерения — осциллограф (Scope), который будет рассмотрен далее.

Функциональная модель с генератором синусоидального напряжения и результат моделирования

Рис. 7.
а) Функциональная модель с генератором синусоидального напряжения;
б) результат моделирования

Генератор ступенчатого сигнала Step

Пиктограмма генератора ступенчатого сигнала.

Назначение — получение сигнала в виде единичного скачка.

Параметры блока: Step time — время начала перепада сигнала, Initial value — начальное значение сигнала, Final value — конечное значение сигнала (оба значения могут быть положительными или отрицательными), Sample time — такт дискретности TS, Interpret vector parameters as 1-D— интерпретация вектора как массива скаляров, Enable zero crossing detection — определение прохождения сигнала через нуль.

Функциональная модель с генератором ступенчатого сигнала и осциллографом (Scope), а также результат моделирования приведены на рис. 8.

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

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

Генератор импульсного сигнала Pulse Generator

Пиктограмма генератора импульсного сигнала.

Назначение— формирование импульсного напряжения.

Параметры блока: Pulse Type — способ формирования сигнала:

  • Time based (TB) — по текущему времени;
  • Sample based (SB) — по величине такта дискретности и количеству шагов моделирования.

Amplitude — амплитуда, Period — период (задается в секундах для режима TB или количеством тактов для SB), Pulse width — ширина импульса (задается в процентах по отношению к периоду для TB или количеством тактов для SB), Phase delay— фазовая задержка (задается в секундах для режима TB или количеством тактов для SB), Sample time — такт дискретности TS, Interpret vector parameters as 1-D — интерпретация вектора как массива скаляров. Схема с использованием Pulse Generator и результаты моделирования приводятся на рис. 9.

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

Рис. 9.
а) Функциональная модель с генератором импульсного сигнала;
б) результаты моделирования (б)

Генератор сигналов Signal Generator

Пиктограмма генератора сигналов.

Назначение — формирование периодических сигналов.

Параметры блока: Wave form —вид формируемого сигнала:

  • sine — синусоидальный сигнал;
  • square — сигнал типа меандр (прямоугольной формы);
  • sawtooth — пилообразный сигнал;
  • random — случайный сигнал.

Amplitude— амплитуда, Frequency— частота, Units — единицы измерения частоты (Hertz — Гц, rad/sec — рад/с), Interpret vector parameters as 1-D — интерпретация вектора как массива скаляров.

На рис. 10 представлены функциональная модель с Signal Generator и результат моделирования.

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

Рис. 10.
а) Функциональная модель с генератором сигналов;
б) результат моделирования пилообразного сигнала

Sinks — приемники сигналов

Вызовем раздел Sinks в окне браузера Simulink. В этом разделе библиотеки располагаются блоки для измерения и контроля сигналов. Наиболее часто используется измерительное устройство — осциллограф Scope, который следует рассмотреть подробнее.

Осциллограф Scope

Назначение — построение временных диаграмм сигналов.

Окно с осциллограммой

Рис. 11.
а) Окно с осциллограммой;
б) панель инструментов для его настройки;
в) окно настройки оси координат

Дает возможность наблюдения за ходом процессов при моделировании. Окно для наблюдения за сигналами (окно осциллограммы) открывается двойным щелчком ЛК мыши по пиктограмме Scope, что выполняется на любой фазе моделирования. Такое окно с осциллограммой прямоугольных импульсов показано на рис. 11 а. Для настройки этого окна используются кнопки панели инструментов (рис. 11б):

  1. Print — печать содержимого окна осциллограмм.
  2. Parameters — вызов окна настройки параметров.
  3. Zoom — увеличение масштаба по обеим осям.
  4. Zoom X-axis — увеличение масштаба по горизонтальной оси.
  5. Zoom Y-axis — увеличение масштаба по вертикальной оси.
  6. Autoscale — автоматическая установка масштаба по обеим осям.
  7. Save current axes settings — сохранение текущих настроек окна.
  8. Restore saved axes settings — установка ранее сохраненных настроек окна.
  9. Floating scope — перевод осциллографа в изменяющийся режим.
  10. Lock/Unlock axes selection — закрепить/разорвать связь между текущей координатной системой окна и отображаемым сигналом (при включенном режиме Floating scope).
  11. Signal selections — выбор сигнала для отображения (при включенном режиме Floating scope).

Изменение масштаба осциллограммы:

  • нажать одну из кнопок Zoom, Zoom X-axis, Zoom Y-axis и щелкнуть ЛК мыши в том месте осциллограммы, которое надо увеличить (один щелчок дает увеличение в 2,5 раза, а двойной — возвращение к прежнему масштабу);
  • нажать одну из кнопок Zoom, Zoom X-axis, Zoom Y-axis и, нажав ЛК мыши, получить динамическую рамку (для обеих координат) или динамический отрезок (для одной из координат) и за счет их растягивания (сжимания) выделить область графика для увеличения;
  • щелкнуть ПК мыши в окне графика, появится контекстное меню, в котором выбирается команда Axes properties… (свойства осей), а затем в появившемся окне ‘Scope’ properties: axis 1 (свойства графика) (рис. 11 в) выставить максимальное и минимальное значения по оси координат Y и, при необходимости, — заголовок осциллограммы (Title).

Для настройки осциллографа используется окно задания параметров ‘Scope’ parameters, которое вызывается кнопкой Parameters и содержит две закладки: General — общие параметры и Data history — параметры сохранения сигнала в рабочем пространства Workspace системы MATLAB (рис. 12а и 12б соответственно). На закладке General задаются Number axes (число осей или число входов осциллографа); Time range (величина временного интервала, на котором отображается график — модельное время); Tick labels — вывод и скрытие осей и меток: all — подписи для всех осей; none — без осей и подписей к ним; bottom axis only — подписи горизонтальной оси только для нижнего графика. Sampling — установка параметров вывода графиков в окне: Decimation — прореживание (кратность вывода точек графика, так, при кратности 2 выводится каждая вторая точка); Sample time — шаг модельного времени (интервал дискретизации при отображении сигнала); Floating scope — изменяющийся режим (перевод осциллографа в изменяющийся режим).

Окно настройки параметров Scope

Рис. 12. Окно настройки параметров Scope

На закладке Data history задаются следующие параметры: Limit data points to last — максимальное количество отображаемых расчетных точек графика (если этот флажок не установлен, то количество отображаемых точек определяется количеством расчетных значений); Save data to workspace — сохранить расчетные значения сигналов в рабочем пространстве MATLAB; Variable name — имя переменной для сохранения сигналов в рабочем пространстве; Format — формат данных для сохранения сигналов в рабочем пространстве: Array — массив; Structure — структура (массив записей); Structure with time — структура (массив записей) с дополнительным полем времени.

Графопостроитель XY Graph

Назначение — построение гра фика значений одного сигнала в функции другого.

Параметры блока: x-min и x-max — минимальное и максимальное значения сигнала по оси X; y-min и y-max — минимальное и максимальное значения сигнала по оси Y, Sample time— такт дискретности TS.

Другие блоки из библиотеки Simulink будут рассмотрены далее по мере надобности.

Установка параметров моделирования

Перед моделированием необходимо задать основные параметры анализируемых процессов. Для этого в окне модели выполняются действия в меню Simulation/ Simulation Parameters. Появляется окно (рис. 13), имеющее 5 закладок: Solver — решатель для установки параметров моделирования; Workspace I/O — ввод-вывод данных в рабочую область; Diagnostics — диагностика для настройки параметров диагностирования; Advanced — дополнительные параметры; Real-Time Workshop — параметры инструмента ‘Мастерская реального времени’.

Окно настройки параметров моделирования решателя Solver и ввода/вывода данных в рабочее пространство

Рис. 13. Окно настройки параметров моделирования решателя Solver (а) и ввода/вывода данных в рабочее пространство (б)

В закладке решателя Solver имеется три группы параметров (рис. 13а):

  • Simulation time — интервал моделирования указывается в виде начального (Start time — обычно нулевое значение) и конечного (Stop time) значений времени;
  • Solver options — параметры решателя, определяемые методом интегрирования (Type) с фиксированным (Fixed-step) или с переменным (Variable-step) шагом;
  • Output options — параметры вывода.

Важный момент при установке параметров решателя — это выбор метода интегрирования (Type) при решении дифференциальных уравнений: ode45, ode23, ode113, ode15s, ode23s, ode23t, ode23tb, которые отличаются друг от друга скоростью расчета и погрешностью получаемого решения. После списка Type приводится область, содержание которой зависит от выбора Fixed-step или Variable-step. При выборе Variable-step, который является предпочтительным, появляются поля для установки следующих параметров:

  • Max step size — максимальный шаг интегрирования. По умолчанию этот параметр выбирается автоматически (auto) и составляет 0,02 от величины времени моделирования, то есть (Stop time — Start time)/50. Очень часто этот шаг оказывается больше, чем это требуется, и тогда построенные временные диаграммы оказываются состоящими из ломаных линий и в значительной мере отличаются от ожидаемых кривых. По выбору шага интегрирования далее будут даны соответствующие рекомендации.
  • Min step size — минимальный шаг интегрирования.
  • Initial step size — начальная величина шага интегрирования.

Погрешности вычислений при моделировании непрерывных систем по умолчанию задаются равными — относительная (Relative tolerance) 10 –3 и абсолютная (Absolute tolerance) auto или устанавливаются в требуемых пределах.

В нижней части настраиваются параметры вывода выходного сигнала моделируемой системы (Output options):

  • Refine output— скорректированный вывод для изменения шага регистрации модельного времени и тех сигналов, которые сохраняются в рабочем пространстве при использовании блока To Workspace. Установка такта дискретности осуществляется в строке редактирования Refine factor. Установка по умолчанию — 1 (регистрируется каждый шаг) или задается положительное целое число n (регистрируется каждое n-е значение);
  • Produce additional output— дополнительный вывод, обеспечивающий дополнительную регистрацию параметров модели в заранее заданные моменты времени, которые вводятся в строку редактирования (Output times) в виде списка в квадратных скобках. Значения времени могут быть дробными.
  • Produce specified — редактирование заданного вывода для установки вывода параметров модели в заданные в виде вектора в поле Output times моменты времени.

В закладке Workspace I/O (рис.13б) осуществляется управление вводом в рабочее пространство и выводом из него результатов моделирования. Имеются три поля:

  • Load from workspace — загрузить из рабочей области. При установленном флажке Input (Входные данные) в текстовое поле вводится формат данных, которые будут считываться из рабочего пространства. Флажок Initial State (Начальное состояние) разрешает ввод в текстовое окно имени переменной. Все указанные данные передаются в модель с помощью блока(ов) In, находящихся в разделе Sources.
  • Save to workspace — запись в рабочее пространство с установкой режима ввода значений сигнала в рабочее пространство.
  • Save option — параметры записи для задания количества строк при передаче переменных в рабочее пространство. При установленном флажке Limit rows в поле ввода указывается количество передаваемых строк, иначе будут переданы все данные.

Теперь рассмотрим, как выполняется выбор времени и шага моделирования. Предположим, нужно получить синусоидальный сигнал с амплитудой 4 В и частотой 20 Гц. Собираем схему из генератора Signal Generator (настраиваем его амплитуду и частоту) и осциллографа Scope и запускаем полученную модель. Результат в окне осциллограммы Scope получается неожиданный — на осциллограмме практически прямая линия (рис. 14а). Нажимаем кнопку «бинокль» (на рис. 11б кнопка 6). Получается временная диаграмма, далекая от синусоиды (рис. 14б). Причина этого явления объясняется неправильно выбранными параметрами моделирования.

Окно осциллограммы при изменении параметров настройки

Рис. 14. Окно осциллограммы при изменении параметров настройки

Для установки параметров моделирования необходимо знать частоту или период T получаемого сигнала. Если этот сигнал сложный, то следует иметь те же параметры для его высокочастотной и низкочастотной составляющих. В окне модели через меню Simulation/ Simulation Parameters вызывается закладка Solver. Шаг моделирования выбирается из простого требования — минимальный период сигнала должен на порядок или более превышать максимальный шаг моделирования At (шаг дискретизации). В нашем случае при T = 1/20 = 0,05 шаг выбирается At < 0,002. Указанное значение шага набирается в текстовом окне Max step size. Время моделирования считаем из условия — в осциллограмме должно быть, например, 4 больших периода, то есть в текстовом окне Stop time устанавливается 0,2. После запоминания установленных параметров (кнопка Ok) и запуска модели получаем приемлемую осциллограмму (рис. 14в). О выборе типа решателя дифференциальных уравнений информация будет приведена далее.

МАТЛАБ – Симулинк

Simulink – это среда моделирования и проектирования на основе моделей для динамических и встроенных систем, интегрированная с MATLAB. Simulink, также разработанный MathWorks, представляет собой инструмент языка графического программирования потоков данных для моделирования, моделирования и анализа многодоменных динамических систем. В основном это графический инструмент для построения блок-схем с настраиваемым набором библиотек блоков.

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

  • системный дизайн
  • моделирование
  • автоматическая генерация кода
  • тестирование и проверка встроенных систем

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

Следующий список дает краткое описание некоторых из них –

Stateflow позволяет разрабатывать конечные автоматы и блок-схемы.

Simulink Coder позволяет генерировать исходный код на C для автоматической реализации систем в реальном времени.

xPC Target вместе с системами реального времени на базе x86 обеспечивают среду для имитации и тестирования моделей Simulink и Stateflow в реальном времени на физической системе.

Встроенный кодер поддерживает определенные встроенные цели.

HDL Coder позволяет автоматически генерировать синтезируемые VHDL и Verilog.

SimEvents предоставляет библиотеку графических строительных блоков для моделирования систем массового обслуживания.

Stateflow позволяет разрабатывать конечные автоматы и блок-схемы.

Simulink Coder позволяет генерировать исходный код на C для автоматической реализации систем в реальном времени.

xPC Target вместе с системами реального времени на базе x86 обеспечивают среду для имитации и тестирования моделей Simulink и Stateflow в реальном времени на физической системе.

Встроенный кодер поддерживает определенные встроенные цели.

HDL Coder позволяет автоматически генерировать синтезируемые VHDL и Verilog.

SimEvents предоставляет библиотеку графических строительных блоков для моделирования систем массового обслуживания.

Simulink способен систематически проверять и проверять модели посредством проверки стиля моделирования, отслеживания требований и анализа охвата модели.

Simulink Design Verifier позволяет выявлять ошибки проектирования и генерировать сценарии тестирования для проверки модели.

Использование Simulink

Чтобы открыть Simulink, введите рабочее пространство MATLAB –

Simulink открывается с помощью браузера библиотеки . Браузер библиотеки используется для построения имитационных моделей.

Библиотека Simulink Браузер

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

Модели зданий

Чтобы создать новую модель, нажмите кнопку « Создать» на панели инструментов браузера библиотеки. Это открывает новое безымянное окно модели.

Simulink Новая модель окна

Модель Simulink – это блок-схема.

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

Кроме того, вы можете скопировать элементы модели и вставить их в окно модели.

Примеры

Перетащите элементы из библиотеки Simulink, чтобы создать свой проект.

В этом примере для моделирования будут использоваться два блока – Источник (сигнал) и Раковина (область). Генератор сигналов (источник) генерирует аналоговый сигнал, который затем будет графически визуализирован областью действия (приемником).

Источник и Раковина

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

Давайте перетащим блок «Синусоида» в модель.

Синусоидальный блок

Выберите «Sinks» из библиотеки и перетащите блок «Scope» в модель.

Scope Block

Перетащите сигнальную линию с выхода блока синусоидальной волны на вход блока Scope.

Блоки не связаны

Блоки связаны

Запустите симуляцию, нажав кнопку « Выполнить », сохраняя все параметры по умолчанию (вы можете изменить их из меню симуляции)

Краткая инструкция по работе в программе Simulink

Огурцов Евгений Васильевич

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

Скачать:

Вложение Размер
kratkaya_instruktsiya_simulink.docx 521.87 КБ

Предварительный просмотр:

Настоящие методическое пособие предназначено для изучения раздела «Автоматика» междисциплинарного комплекса МДК 03.01., дисциплин «Основы автоматика», «Системы автоматического управления»

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

В первой части инструкции (Часть 1) приведен способ описания систем дифференциальными уравнениями. В следующей части (Часть 2) инструкции будет представлен способ описания систем как совокупности множества передаточных функций.

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

Работа с другими версиями MATLAB аналогична, за исключением вида «окон».

Мы постарались максимально упростить инструкцию и в доступной форме показать как можно пользоваться Simulink

Часть 1. Общие сведения о системе Simulink

Программа Simulink является приложением к пакету MATLAB.

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

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

Simulink является достаточно самостоятельным инструментом и при работе с ним совсем не требуется знать сам MATLAB и остальные его приложения. С другой стороны доступ к функциям MATLAB и другим его инструментам остается открытым и их можно использовать в Simulink. Часть входящих в состав пакетов имеет инструменты, встраиваемые в Simulink (например, LTI-Viewer приложения Control System Toolbox – пакета для разработки систем управления).

Имеются также дополнительные библиотеки блоков для разных областей применения (например, Power System Blockset – моделирование электротехнических устройств, Digital Signal Processing Blockset – набор блоков для разработки цифровых устройств и т.д).

При работе с Simulink пользователь имеет возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков.

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

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

Преимущество Simulink заключается также в том, что он позволяет пополнять библиотеки блоков с помощью подпрограмм написанных как на языке MATLAB, так и на языках С++, Fortran и Ada.

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

После открытия основного окна программы MATLAB нужно запустить программу Simulink. Это можно сделать одним из трех способов:

Рисунок 1- Основное окно программы MATLAB

∙ Нажать кнопку (Simulink) на панели инструментов командного окна MATLAB.

∙ В командной строке главного окна MATLAB напечатать Simulink и нажать клавишу Enter на клавиатуре.

∙ Выполнить команду Open. в меню File и открыть файл модели (mdl — файл).

Последний вариант удобно использовать для запуска уже готовой и отлаженной модели, когда требуется лишь провести расчеты и ненужно добавлять новые блоки в модель. Использование первого и второго способов приводит к открытию окна библиотеки Simulink (рисунок 2).

Рисунок 2- Окно библиотеки Simulink.

Цифрами обозначены: 1 –строка поиска компонентов, 2 – дерево библиотек Simulink, 3 –содержимое библиотеки (разделы или компоненты библиотеки)

На рисунке 2 выделена основная библиотека Simulink (в левой части окна) и показаны ее разделы (в правой части окна). Библиотека Simulink в MATLAB 2010 содержит следующие основные разделы:

0. Commonly Used Blocks – часто используемые компоненты из различных разделов основной библиотеки Simulink.

1. Continuous – компоненты для моделирования систем в непрерывном времени.

2. Discontinuities – компоненты для моделирования негладких и разрывных нелинейных функций.

3. Discrete – компоненты для моделирования систем в дискретном времени.

4. Logic and Bit Operations – компоненты для моделирования ло-

гических (двоичных) операций.

5. Lookup Tables – компоненты для моделирования функциональных и табличных зависимостей.

6. Math Operations – компоненты для моделирования математических операций.

7. Model Verification – компоненты для тестирования и верификации поведения моделей.

8. Model-Wide Utilities – вспомогательные компоненты для документирования и линеаризации моделей.

9. Ports & Subsystems – блоки построения иерархических моделей и подсистем.

10. Signal Attributes – компоненты для преобразования типов сигналов в моделях.

11. Signal Routing – компоненты для коммутации и объединения/разъединения сигналов.

12. Sinks – компоненты для отображения и сохранения сигналов.

13. Sources – источники сигналов и воздействий.

14. User-Defined Functions – компоненты для создания пользовательских функций, реализованных на языке MATLAB.

Список разделов библиотеки Simulink представлен в виде дерева, и правила работы с ним являются общими для списков такого вида:

∙ Пиктограмма свернутого узла дерева содержит символ+, а пиктограмма развернутого содержит символ −.

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

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

Рисунок 3- Компоненты библиотеки Simulink / Continuous.

Пример построения модели в Simulink

В качестве примера использования Simulink для моделирования систем рассмотрим отопление в жилом индивидуальном доме. Пусть для простоты, дом состоит из всего лишь одного помещения, в котором установлено отопление суммарной тепловой мощностью . Температура внутри этого дома градусов, температура за окном – градусов. Нас интересует каким образом изменяется температура при изменении мощности (рисунок 4).

Рисунок 4- Модель отапливаемого помещения по входу-выходу.

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

параметрами модели является:

∙ температура за окном – чем меньше она, тем больше тепла

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

∙ качество теплоизоляции – чем хуже теплоизоляция, тем больше тепла выходит наружу;

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

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

Количество теплоты , которое поступает от нагревателя мощностью за время – это просто интеграл по времени:

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

0 ( ) = (T i (t)–T 0 )dt

Запишем уравнение теплового баланса:

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

Обозначив коэффициент = a и разделив переменные для интегрирования, можно записать:

Последнее выражение – есть простейшая модель процесса теплообмена при отоплении помещения. Рассмотрим как осуществить моделирование этой системы с помощью Simulink.

Для создания модели в среде Simulink необходимо последовательно выполнить ряд действий.

Для начала необходимо создать новый файл модели с помощью команды File / New / Model, или используя кнопку на панели инструментов (здесь и далее, с помощью символа /, указаны пункты меню программы, которые необходимо последовательно выбрать для выполнения указанного действия). Вновь созданное окно модели показано на рисунке 5.

Рисунок 5- Пустое окно модели.

Далее расположим компоненты библиотеки Simulink в окне модели. Для этого необходимо открыть соответствующий раздел библиотеки (например, Sources – Источники). Далее, указав курсором на требуемый блок и, нажав на левую клавишу мыши, перетащить блок в созданное окно модели. Клавишу мыши нужно держать нажатой.

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

∙ в модель необходимо ввести параметр , который в начале будет

константой – используем компонент библиотеки Simulink /Commonly Used Blocks / Constant или Simulink / Sources / Constant (это один и тот же компонент);

∙ чтобы получить разность температур − ( ) необходимо использовать сумматор (в режиме вычитателя) – компонент библиотеки Simulink / Commonly Used Blocks / Sum или Simulink /

Math Operations / Sum (также один и тот же компонент);

∙ для того, чтобы вычислить произведение разности температур на коэффициент ・ ( − ( )), необходимо использовать блок

усилитель, поскольку такое произведение равнозначно усилению сигнала разности в раз ставим компонент библиотеки Simulink/ Commonly Used Blocks / Gain или Simulink / Math Operations/ Gain;

∙ чтобы получить сумму мощностей ( − ( )) + ( ) под интегралом необходимо использовать сумматор – компонент библиотеки Simulink / Commonly Used Blocks / Sum или Simulink /Math Operations / Sum;

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

необходимо использовать интегратор – компонент библиотеки Simulink / Commonly Used Blocks / Integrator или Simulink / Continuous / Integrator;

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

Simulink / Commonly Used Blocks / Gain или Simulink / Math Operations / Gain;

Кроме того, нам необходимо визуализировать зависимость ( ), для этого мы используем осциллограф – компонент библиотеки Simulink / Commonly Used Blocks / Scope или Simulink / Sinks / Scope. А также мы задаем зависимость мощности от времени ( ) как единичный ступенчатый сигнал с помощью компонента библиотеки Simulink /Sources / Step.

Рисунок 6- Окно модели, содержащее необходимые блоки

На рисунке 6 показано окно модели, содержащее установленные блоки.

Для удаления блока необходимо выбрать блок (указать курсором на его изображение и нажать левую клавишу мыши), а затем нажать клавишу Delete на клавиатуре.

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

Рисунок 7- Блок, моделирующий интегратор и окно редактирования параметров блока

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

В рассматриваемой модели необходимо установить следующие параметры блоков:

∙ блок Integrator: параметр Initial condition = 20 – интегрирование осуществляется с начальной температуры в помещении 20 градусов;

∙ блок Sum1 (нижний из двух сумматоров): List of signs = |+- – превращает сумматор в вычитатель;

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

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

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

Схема модели, в которой выполнены все соединения между блоками и их настройка, показана на рисунке 8.

Рисунок 8- Окончательная схема модели.

После составления модели необходимо сохранить ее в виде файла на диске, выбрав пункт меню File/Save As. в окне схемы и указа папку и имя файла. При последующем редактировании схемы можно пользоваться пунктом меню File/Save. При повторных запусках программы Simulink загрузка схемы осуществляется с помощью меню File/Open. в окне обозревателя библиотеки или из основного окна MATLAB.

Запуск моделирования выполняется с помощью выбора пункта меню Simulation/Start или нажатием кнопки с треугольником (воспроизведение) на панели инструментов. Рядом в поле ввода указана продолжительность моделирования системы, по умолчанию моделирование останавливается при достижении модельного времени = 10. Процесс расчета можно завершить досрочно, выбрав пункт меню Simulation/Stop или кнопку с квадратом (стоп). Расчет также можно остановить (Simulation/Pause) и затем продолжить (Simulation/Continue).

Запустим моделирование. После окончания, дважды щелкнем на блок осциллографа (Scope). На нем должна отображается зависимость ( )

(рисунок 9). Если графика не видно, то необходимо щелкнуть правой кнопкой по черной зоне и выбрать из меню Autoscale, что приведет к автоматическому масштабированию осей графика.

Рисунок 9- Результат моделирования при = 1.

Видно, что температура внутри падает от 20 градусов до температуры, которая выше уличной = 1, моделируемой блоком Constant.

Таким образом сказывается действие нагревателя.

Установим в параметрах блока Step, моделирующего зависимость ( ), большую мощность нагрева. Блок Step выдает на своем выходе константное значение, задаваемое его параметром Final value, и происходит это во время, задаваемое параметром Step time. До этого момента значение на выходе компонента Step равно 0. Установив параметр Final value = 10, запустим моделирование еще раз. Получим зависимость ( ), показанную на рисунке 10.

Рисунок 10- Результат моделирования при = 10.

Отчетливо видно, что температура падает до включения нагревателя при = 1, после чего растет до достижения постоянного значения, соответствующего термодинамическому равновесию между теплом, подводимым нагревателем и отводимым наружу.

1. А. Борисевич , Теория автоматического управления: элементарное введение

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *