Силовая электроника №1'2005

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

Владимир Худяков


Предлагаемая статья открывает цикл публикаций «Школа MATLAB». В статье рассмотрены основные инструментарии 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В результате операции между блоками возникнет связь в виде соединительной линии со стрелкой, направленной к входу блока Display (рис. 5в). Теперь необходимо настроить блоки. У блока Constant выставляется выходное напряжение 10 В. При двойном щелчке ЛК мыши по пиктограмме этого блока открывается окно настройки Block parameters: Constant. В текстовом окне Constant value с клавиатуры надо исправить 1 на 10 (рис. 5г). Сохраняется введенное значение нажатием ЛК мыши кнопки Apply (окно при этом не закрывается) или кнопки Ok (введенное значение сохранится, а окно закроется). В пиктограмме блока Constant вместо 1 появится 10 (рис. 5д). Блок Display можно не настраивать, хотя настройки у него также имеются. Для запуска построенной модели следует нажать кнопку запуска Н. Процесс моделирования в такой задаче выполняется относительно быстро, что видно по изменениям надписей на строке состояния окна. По окончании на экране блока Display появляется результат измерения, равный 10 (рис. 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. Signal Routing— блоки, определяющие маршруты сигналов.
  11. Sinks — приемники и измерители сигналов.
  12. Sources — источники сигналов.
  13. User-Defined Function — функции, задаваемые пользователем.

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

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

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

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

 

  • панель названия с краткими комментариями по назначению блока;
  • параметры;
  • панель кнопок.
Рис. 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. Функциональная модель (а) с генератором синусоидального напряжения и результат моделирования (б)

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

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

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

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

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

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

Рис. 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. Функциональная модель (а) с генератором импульсного сигнала и результаты моделирования (б)
Рис. 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. Функциональная модель (а) с генератором сигналов и результат моделирования пилообразного сигнала (б)
Рис. 10. Функциональная модель (а) с генератором сигналов и результат моделирования пилообразного сигнала (б)

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

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

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

Пиктограмма осциллографа.

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

Дает возможность наблюдения за ходом процессов при моделировании. Окно для наблюдения за сигналами (окно осциллограммы) открывается двойным щелчком ЛК мыши по пиктограмме 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).
Рис. 11. Окно с осциллограммой (а), панель инструментов (б) для его настройки и окно настройки (в) оси координат
Рис. 11. Окно с осциллограммой (а), панель инструментов (б) для его настройки и окно настройки (в) оси координат

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

  • нажать одну из кнопок 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 — изменяющийся режим (перевод осциллографа в изменяющийся режим).

На закладке 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а):

  • 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. Окно осциллограммы при изменении параметров настройки
Рис. 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в). О выборе типа решателя дифференциальных уравнений информация будет приведена далее.

Итак, подведем итоги урока.

  1. Для моделирования устройств электропривода, силовой электроники и систем автоматического управления целесообразно применять пакеты Simulink и SimPowerSystems, входящие в систему MATLAB и обладающие широкими возможностями и обширными библиотеками с электротехническими элементами и функциональными блоками.
  2. Библиотека Simulink обладает широкой номенклатурой блоков, позволяющих моделировать динамические устройства и системы различных типов: непрерывные, дискретные, линейные, нелинейные и т. п.
  3. Создание S-моделей с помощью пакета Simulink относительно просто реализуется при использовании технологии drag-and-drop — «перетащи и оставь». В состав разрабатываемой модели включаются блоки из любого раздела библиотеки и, в частности, из SimPowerSystems.
  4. Пользователь может настраивать каждый блок S-модели, а также изменять графическое исполнение пиктограмм этих блоков.
  5. Для расчета процессов в функциональной модели необходимо произвести настройки с учетом минимальной и максимальной частот обрабатываемого сигнала, выбрать максимальный шаг дискретизации и время моделирования, а затем контролировать получаемые сигналы по временной диаграмме.

Продолжение: Школа MATLAB Урок 2. Библиотека SimPowerSystems

*  *  *

Другие статьи по этой теме


Скачать статью в формате PDF

Скачать статью в формате PDF 2005_01_108.pdf  

 
ПОДПИСКА НА НОВОСТИ

Оцените, пожалуйста, удобство и практичность (usability) сайта:
Хорошо
Нормально
Плохо

Часы q50
Копии швейцарских часов. Интернет магазин часов. Подбор часов по параметрам
bizonsale.ru