Repeating sequence simulink как работает
Generate an arbitrarily shaped periodic signal
The Repeating Sequence block outputs a periodic scalar signal having a waveform that you specify. You can specify any waveform, using the block dialog’s Time values and Output values parameters. The Times value parameter specifies a vector of sample times. The Output values parameter specifies a vector of signal amplitudes at the corresponding sample times. Together, the two parameters specify a sampling of the output waveform at points measured from the beginning of the interval over which the waveform repeats (i.e., the signal’s period). For example, by default, the Time values and Output values parameters are both set to [0 2] . This default setting specifies a sawtooth waveform that repeats every 2 seconds from the start of the simulation and has a maximum amplitude of 2 . The Repeating Sequence block uses linear interpolation to compute the value of the waveform between the specified sample points.
Data Type Support
A Repeating Sequence block outputs real signals of type double .
Parameters and Dialog Box
Time values A vector of monotonically increasing time values. The default is [0 2] . Output values A vector of output values. Each corresponds to the time value in the same column. The default is [0 2] .
Repeating sequence simulink как работает
И.В.Черных. "Simulink: Инструмент моделирования динамических систем"
9. Библиотека блоков Simulink
9.1. Sources — источники сигналов
9.1.1. Источник постоянного сигнала Constant
Назначение:
Задает постоянный по уровню сигнал.
Параметры:
1. Constant value — Постоянная величина.
2. Interpret vector parameters as 1-D – Интерпретировать вектор параметров как одномерный (при установленном флажке). Данный параметр встречается у большинства блоков библиотеки Simulink. В дальнейшем он рассматриваться не будет.
Значение константы может быть действительным или комплексным числом, вычисляемым выражением, вектором или матрицей.
Рис. 9.1.1 иллюстрирует применение этого источника и измерение его выходного сигнала с помощью цифрового индикатора Display.
Рис. 9.1.1. Источник постоянного воздействия Constant
9.1.2. Источник синусоидального сигнала Sine Wave
Назначение:
Формирует синусоидальный сигнал с заданной частотой, амплитудой, фазой и смещением.
- Time-based – По текущему времени.
- Sample-based – По величине шага модельного времени.
9.1.2.1. Формирование выходного сигнала по текущему значению времени для непрерывных систем
Выходной сигнал источника в этом режиме соответствует выражению:
- Amplitude — Амплитуда.
- Bias – Постоянная составляющая сигнала.
- Frequency (rads/sec) — Частота (рад/с).
- Phase (rads) — Начальная фаза (рад).
- Sample time – Шаг модельного времени. Используется для согласования работы источника и других компонентов модели во времени. Параметр может принимать следующие значения:
0 (по умолчанию) – Используется при моделировании непрерывных систем.
> 0 (положительное значение) – Задается при моделировании дискретных систем. В этом случае шаг модельного времени можно интерпретировать как шаг квантования по времени выходного сигнала.
-1 – Шаг модельного времени устанавливается таким же, как и в предшествующем блоке, т.е. блоке, откуда приходит сигнал в данный блок.
Этот параметр может задаваться для большинства блоков библиотеки Simulink. В дальнейшем он рассматриваться не будет.
При расчетах для очень больших значений времени точность расчета выходных значений сигнала падает вследствие значительной ошибки округления.
9.1.2.2. Формирование выходного сигнала по текущему значению времени для дискретных систем
Алгоритм определения значения выходного сигнала источника для каждого последующего шага расчета определяется выражением (в матричной форме):
где D t – постоянная величина, равная значению Sample time.
В данном режиме ошибка округления для больших значений времени также уменьшает точность расчета.
9.1.2.3. Формирование выходного сигнала по величине модельного времени и количеству расчетных шагов на один период
Выходной сигнал источника в этом режиме соответствует выражению:
y= Amplitude* sin[(k + Number of offset samples) / Samples per period] + bias ,
где k – номер текущего шага расчета.
В данном режиме ошибка округления не накапливается, поскольку Simulink начинает отсчет номера текущего шага с нуля для каждого периода.
На Рис. 9.1.2 показано применение блока с разными значениями шага модельного времени (Sample time = 0 для блока Sine Wave 1и Sample time = 0.1 для блока Sine Wave 2). Для отображения графиков выходных сигналов в модели использован виртуальный осциллограф (Scope).
Рис. 9.1.2. Блок Sine Wave
9.1.3. Источник линейно изменяющегося воздействия Ramp
Назначение:
Формирует линейный сигнал вида y = Slope* time + Initial value.
1. Slope — Скорость изменения выходного сигнала.
2. Start time — Время начала формирования сигнала.
3. Initial value — Начальный уровень сигнала на выходе блока.
На Рис. 9.1.3. показано использование данного блока.
Рис. 9.1.3. Блок Ramp
9.1.4. Генератор ступенчатого сигнала Step
Назначение:
Формирует ступенчатый сигнал.
- Step time — Время наступления перепада сигнала (с).
- Initial value — Начальное значение сигнала.
- Final value — Конечное значение сигнала.
Перепад может быть как в большую сторону (конечное значение больше чем начальное), так и в меньшую (конечное значение меньше чем начальное). Значения начального и конечного уровней могут быть не только положительными, но и отрицательными (например, изменение сигнала с уровня –5 до уровня –3).
На Рис. 9.1.4. показано использование генератора ступенчатого сигнала.
Рис. 9.1.4. Блок Step
9.1.5. Генератор сигналов Signal Generator
- sine — Синусоидальный сигнал.
- square — Прямоугольный сигнал.
- sawtooth — Пилообразный сигнал.
- random — Случайный сигнал.
- Wave form – Вид сигнала.
- Amplitude – Амплитуда сигнала.
- Frequency — Частота (рад/с).
- Units – Единицы измерения частоты. Может принимать два значения:
— Hertz — Гц.
— rad/sec – рад/с.
На Рис. 9.1.5. показано применение этого источника при моделировании прямоугольного сигнала.
Рис. 9.1.5. Блок генератора сигналов
9.1.6. Источник случайного сигнала с равномерным распределением Uniform Random Number
Назначение:
Формирование случайного сигнала с равномерным распределением.
- Minimum – Минимальный уровень сигнала.
- Maximum – Максимальный уровень сигнала.
- Initial seed – Начальное значение.
Пример использования блока и график его выходного сигнала представлен на Рис. 9.1.6.
Рис. 9.1.6. Источник случайного сигнала с равномерным распределением
9.1.7. Источник случайного сигнала с нормальным распределением Random Number
Назначение:
Формирование случайного сигнала с нормальным распределением уровня сигнала.
Рис. 9.1.7. Источник случайного сигнала с нормальным распределением
9.1.8. Источник импульсного сигнала Pulse Generator
Назначение:
Формирование прямоугольных импульсов.
Пример использования Pulse Generator показан на рис. 9.1.8.
Рис. 9.1.8. Источник прямоугольных импульсов
9.1.9. Генератор линейно-изменяющейся частоты Chirp Generator
Назначение:
Формирование синусоидальных колебаний, частота которых линейно изменяется.
- Initial frequence — Начальная частота (Гц);
- Target time — Время изменения частоты (с);
- Frequence at target time — Конечное значение частоты (Гц).
Пример использования блока показан на Рис. 9.1.9.
Рис. 9.1.9. Генератор линейно-изменяющейся частоты
9.1.10. Генератор белого шума Band-Limited White Noice
Назначение:
Создает сигнал заданной мощности, равномерно распределенной по частоте.
Рис. 9.1.10 показывает работу этого генератора.
Рис. 9.1.10. Генератор белого шума
9.1.11. Источник временного сигнала Clock
Назначение:
Формирует сигнал, величина которого на каждом шаге расчета равна текущему времени моделирования.
- Decimation — Шаг, с которым обновляются показания времени на изображении источника (в том случае, если установлен флажок параметра Display time). Параметр задается как количество шагов расчета. Например, если шаг расчета модели в окне диалога Simulation parameters установлен равным 0.01 с, а параметр Decimation блока Clock задан равным 1000, то обновление показаний времени будет производиться каждые 10 с модельного времени.
- Display time — Отображение значения времени в блоке источника.
На рис. 9.1.11 показан пример работы данного источника.
Рис. 9.1.11. Источник временного сигнала
9.1.12. Цифровой источник времени Digital Clock
Назначение:
Формирует дискретный временной сигнал.
Sample time – Шаг модельного времени (с).
На Рис. 9.1.12 показана работа источника Digital Clock.
Рис. 9.1.12. Цифровой источник временного сигнала
9.1.13. Блок считывания данных из файла From File
Назначение:
Получение данных из внешнего файла.
Данные в файле должны быть представлены в виде матрицы:
Матрица должна состоять, как минимум, из двух строк. Значения времени записаны в первой строке матрицы, а в остальных строках находятся значения сигналов, соответствующие данным моментам времени. Значения времени должны быть записаны в возрастающем порядке. Выходной сигнал блока содержит только значения сигналов, а значения времени в нем отсутствуют. Если шаг расчета текущей модели не совпадает с отсчетами времени в файле данных, то Simulink выполняет линейную интерполяцию данных.
Файл данных (mat-файл), из которого считываются значения, не является текстовым. Структура файла подробно описана в справочной системе MATLAB. Пользователям Simulink удобнее всего создавать mat-файл с помощью блока To File (библиотека Sinks). На рис. 9.1.13 показан пример использования данного блока. Из файла data.mat считываются значения синусоидального сигнала.
Рис. 9.1.13. Блок From File
9.1.14. Блок считывания данных из рабочего пространства From Workspace
Назначение:
Получение данных из рабочего пространства MATLAB.
На рис. 9.1.14 показан пример использования данного блока. Данные в переменную simin рабочей области MATLAB загружаются из файла с помощью блока Read data.
Рис. 9.1.14. Блок From File
9.1.15. Блок сигнала нулевого уровня Ground
Назначение:
Формирование сигнала нулевого уровня.
Если какой-либо вход блока в модели не подсоединен, то при выполнении моделирования в главном окне MATLAB появляется предупреждающее сообщение. Для устранения этого на неподключенный вход блока можно подать сигнал с блока Ground.
На рис. 9.1.15 даны примеры использования блока. В первом случае сигнал с блока Ground поступает на один из входов сумматора, а во втором на один из входов блока умножения. Показания блоков Display подтверждают, что вырабатываемый блоком Ground сигнал имеет нулевое значение. Из рисунка также видно, что тип выходного сигнала блока устанавливается автоматически, в соответствии с типами сигналов, подаваемых на другие входы блоков (в данном случае – на входы блоков Sum и Product).
Рис. 9.1.15. Применение блока Ground
9.1.16. Блок периодического сигнала Repeating Sequence
Назначение:
Формирование периодического сигнала.
Блок выполняет линейную интерполяцию выходного сигнала для моментов времени не совпадающих со значениями заданными вектором Time values. На рис. 9.1.16 показан пример использования блока для формирования пилообразного сигнала. Значения модельного времени заданы вектором [0 3], а значения выходного сигнала вектором [0 2].
Рис. 9.1.16. Использование блока Repeating Sequence
9.1.17. Блок входного порта Inport
Создает входной порт для подсистемы или модели верхнего уровня иерархии.
- Sample time – Шаг модельного времени.
- Data type – Тип данных входного сигнала: auto, double, single, int8, uint8, int16, uint16, int32, uint32 или boolean.
- Signal type – Тип входного сигнала:
- auto – Автоматическое определение типа.
- real – Действительный сигнал.
- complex- Комплексный сигнал.
- Interpolate data (флажок) – Интерполировать входной сигнал. В случае, если временные отсчеты входного сигнала считываемого из рабочей области MATLAB не совпадают с модельным временем, то блок будет выполнять интерполяцию входного сигнала. При использовании блока Inport в подсистеме данный параметр не доступен.
9.1.17.1. Использование блока Inport в подсистемах
Блоки Inport подсистемы являются ее входами. Сигнал, подаваемый на входной порт подсистемы через блок Inport, передается внутрь подсистемы. Название входного порта будет показано на изображении подсистемы как метка порта.
- При создании подсистемы с помощью команды Edit/Create subsystem входные порты создаются и нумеруются автоматически начиная с 1.
- Если в подсистему добавляется новый блок Inport, то ему присваивается следующий по порядку номер.
- Если какой либо блок Inport удаляется, то остальные порты переименовываются таким образом, чтобы последовательность номеров портов была непрерывной.
- Если в последовательности номеров портов имеется разрыв, то при выполнении моделирования Simulink выдаст сообщение об ошибке и остановит расчет. В этом случае необходимо вручную переименовать порты таким образом, чтобы последовательность номеров портов не нарушалась.
- Rotortyp[тип ротора] выбирается из списка:
- Squirrel-Cage — короткозамкнутый ротор типа «беличья клетка»;
- Wound — фазный ротор.
- Rotor— неподвижная относительно ротора;
- Stationary— неподвижная относительно статора;
- Synchronous — вращающаяся вместе с полем.
Начальные условия машины вычисляются при необходимости с помощью блока Powergui (см. ниже). Блок измерения переменных электрической машины Machines Measurement Demux
Назначение: блок предназначен для извлечения переменных состояния из вектора измеряемых переменных электрической машины. Блок работает совместно с моделями синхронных и асинхронных машин.
Окно задания параметров представлено на рис. 2.
Рис. 2. Окно настройки параметров блока Machines Measurement Demux
- Machinetype — тип машины. Выбирается из списка:
- Simplifiedsynchronous — упрощенная синхронная машина;
- Synchronous — синхронная машина;
- Asynchronous — асинхронная машина;
- Permanentmagnetsynchronous — синхронная машина с постоянными магнитами.
В зависимости от выбранного типа машины в окне параметров будет отображаться разный набор выходных переменных машины. Ниже приведены доступные для измерения переменные асинхронной машины.
- Rotor currents [ira irb irc] — токи обмотки ротора.
- Rotorcurrents[ir_qir_d] — проекции токов ротора на оси q и d.
- Rotorfluxes[phir_qphir_d] — проекции потоков ротора на оси q и d.
- Rotorvoltages[vr_qvr_d] — проекции напряжений статора на оси q и d.
- Stator currents [ia, ib, ic] A — токи статора.
- Statorcurrents[is_qis_d]A — проекции токов статора на оси q и d.
- Statorfluxes[phis_qphis_d] — проекции потоков статора на оси q и d.
- Statorvoltages[vs_qvs_d]V— проекции напряжений статора на оси q и d.
- Rotor speed [wm] rad/s — скорость ротора.
- Electromagnetic torque [Te] N.m — электромагнитный момент.
- Rotor angle [thetam] rad — угол поворота ротора.
Для извлечения требуемой переменной из вектора измеряемых переменных ее необходимо отметить флажком.
Пример 1. Выполнить модель для анализа процессов разгона и торможения асинхронного электродвигателя с короткозамкнутым ротором и неподвижной относительно статора системой координат. Используются материалы из книги [1].
Исходные данные для модели: питающее переменное напряжение на каждом источнике 220•sqrt(2) В с частотой переменного тока 50 Гц и фазовым сдвигом -120°, 0° и 120°. У двигателя мощность составляет 3•750 VA, а остальные его параметры указаны в окне настройки (рис. 1).
Функциональная схема асинхронного электродвигателя с ключевыми элементами представлена на рис. 3. Она содержит следующие блоки из библиотеки SimPowerSystems: источники переменного напряжения AC Voltage Source (раздел Electrical Sources), асинхронный электродвигатель Asynchronous Machine SI Units (раздел Machines), блок Machines Measurement Demux (раздел Measurements), идеальный ключ Ideal Switch (раздел Power Electronics), заземление Ground (раздел Connectors). Информационные порты m идеальных ключей заглушены, поскольку они не нужны (подключен Terminator из раздела Sinks библиотеки Simulink) (рис. 3).
Рис. 3. Функциональная схема асинхронного электродвигателя с элементами коммутации и измерений
Для построения схемы вызываются два окна: окно обозревателя библиотеки Simulink Library Browser кнопкой и окно модели через меню File/New/Model. Располагаются окна рядом на рабочем столе. В левой части окна обозревателя следует закрыть дерево Simulink, открыть дерево SimPowerSystems и активировать строку дерева Electrical Sources (источники электрической энергии), а затем поочередно все перечисленные выше разделы. Схема собирается по технологии «drag-and-drop». Для управления ключами используется генератор прямоугольных импульсов Pulse Generator, подключенный к управляющим электродам g идеальных ключей.
Настройка схемы заключается в установке уровня напряжений источников, частоты и фазовых сдвигов, а также в выборе параметров асинхронного электродвигателя в соответствии с рис. 1. У генератора Pulse Generator задается амплитуда 1 В, длительности периода 3 с и длительности импульса величиной 50% от длительности периода. Измерения осуществляются с помощью осциллографов Scope (раздел Sinks библиотеки Simulink), первый из которых подключен к порту m блока Machines Measurement Demux, второй — к фазам A и B асинхронного электродвигателя через измеритель напряжения Voltage Measurement из раздела Measurements (измерительные и контрольные устройства). Все настройки осциллографов были подробно рассмотрены в материалах предыдущих уроков. Модельное время Stop time, равное периоду импульсного сигнала 3 с, и максимальный шаг дискретизации Max step size (величина auto) устанавливаются в меню Simulation/Simulation parameters окна модели. Результаты моделирования в виде временных диаграмм представлены на рис. 4. Видно, что в пределах 1,5 с электродвигатель разгоняется, а затем тормозится. Скорость ротора асинхронного электродвигателя при этом нарастает и спадает по экспоненциальному закону.
Рис. 4.
а) Временные диаграммы изменения скорости ротора Rotor speed [wm]T электромагнитного момента Electromagnetic torque [Те];
б) межфазного напряжения на обмотке асинхронного электродвигателяАнализ динамических свойств преобразователя на основе дифференциальной модели
Рис. 5. Схема LC-фильтра с нагрузкой R для однотактного преобразователя
Дифференциальные модели основываются на однородных линейных дифференциальных уравнениях с постоянными коэффициентами. Пусть имеется однотактный непосредственный преобразователь с выходным сглаживающим LC-фильтром, выполненным по Г-образной схеме (рис. 5). Входное напряжение u1 представляет собой прямоугольные импульсы с заданным коэффициентом заполнения. У выходного напряжения u2 после фильтрации имеется постоянная составляющая с малыми пульсациями.
Дифференциальное уравнение второго порядка, связывающее напряжения u1 и u2 без учета импульсного характера первого напряжения, можно записать в следующем виде:
В результате решения дифференциального уравнения (1) необходимо получить u2 как функцию времени. Для составления структурной схемы решения применим метод понижения порядка производной, реализация которого осуществляется следующим образом.
- Предположим, в точке А значение второй производной d 2 u2/dt 2 известно в любой момент времени (рис. 6а). В точке В с помощью интегрирующего звена и с учетом начальных условий определяется значение первой производной du2/dt. За счет еще одного интегратора в точке С получается значение искомой функции u2.
- Теперь обратим внимание на правую часть уравнения (1), представляющую собой сумму трех функций времени du2/dt, u2 и u1, входящих с постоянными коэффициентами. Функция u1 — возмущающее воздействие, известное по условию задачи. Допустим, что известны функции u2 в точке С1 и du2/dt в точке В1 (рис. 6б). Находится их сумма с коэффициентами, соответствующими правой части (1), и получается вторая производная d 2 u2/dt 2 . В результате на выходе сумматора в точке A1 определяется величина d 2 u2/dt 2 , известная в любой момент времени.
- Уравнение (1), отражающее сущность моделируемого фильтра, должно выполняться в каждый момент времени t Для реализации этого требования следует замкнуть выводы схемы, показанные на рис. 6а и 6б. При этом точки А и А1, В и В1, С и С1 объединяются в пары, что отражает рис. 6в. При необходимости задаются начальные условия, определяющие единственность решения дифференциального уравнения (1).
Инструментарий Simulink позволяет моделировать и исследовать поведение устройств силовой электроники, описываемых дифференциальными уравнениями с линейными или нелинейными коэффициентами, имеющими постоянные или переменные значения. Единственное требование состоит в том, что дифференциальные уравнения должны быть представимы в виде структурной схемы, подобно указанной на рис. 6.
Пример 2. Построить модель для анализа процессов в LC-сглаживающем фильтре.
Исходные данные для модели: входное импульсное напряжение с амплитудой 10 В, частотой 100 кГц и коэффициентом заполнения импульсов 0,5. Сопротивление нагрузки 10 Ом, емкость конденсатора фильтра 20 мкФ и индуктивность дросселя 0,5 мГн.
На рис. 7а представлена модель для решения дифференциального уравнения второго порядка, описывающего связь входного u1 и выходного u2 напряжений. Состав блоков, входящих в схему, отражает таблица 1, причем в графе «Параметры» приведены только те параметры, которые изменяются при настройке.
В рассматриваемой модели нами впервые используется блок интегрирования входного сигнала — Integrator (табл. 1). Дадим краткие сведения по некоторым его настройкам в окне задания параметров.
External reset — none
Initial condition source — internal
Initial condition — 0- Externalreset (внешний сброс). Выбирается сигнал для сброса интегратора до начального значения. Выбирается из списка:
- none— нет (сброс не выполняется);
- rising — нарастающий сигнал (фронт сигнала);
- falling— спадающий сигнал (срез сигнала);
- either — нарастающий или спадающий сигнал;
- level— ненулевой сигнал (сброс осуществляется при сигнале на входе, не равном 0).
- internal — внутренний;
- external— внешний (появляется дополнительный вход, на который необходимо подать сигнал, задающий начальное значение).
Время моделирования в рассматриваемой модели Stop time выбрано 0,002, а максимальный шаг дискретизации Max step size выставлен auto. Эти параметры установлены в меню Simulation/Simulation parameters окна модели. Процесс нарастания выходного напряжения LC-фильтра при нулевых начальных условиях отражает временная диаграмма, полученная после запуска модели решения дифференциального уравнения (рис. 8а).
Рис. 8. Временные диаграммы выходного напряжения, полученные из
а) из функциональных моделей фильтра;
б) однотактного преобразователяДалее строится функциональная модель однотактного преобразователя с LC-фильтром, имеющего те же самые значения параметров. Эта схема представлена на рис. 7б и содержит кроме фильтра источник питания и два ключевых элемента (транзистор и диод), работающих в противофазе. Основные параметры блоков схемы сведены в таблице 2.
Terminator — заглушка
для информационногопорта транзистора и диода
Series RLC Branch —
последовательносоединенные RLC-элементы
Resistance
Inductance
CapacitanceВремя моделирования и шаг дискретизации остаются такими же, как и при решении дифференциального уравнения. Временная диаграмма процесса нарастания выходного напряжения представлена на рис. 8б. Обе сравниваемые временные диаграммы (рис. 8) аналогичны. Однако следует отметить, что во втором случае выброс (перерегулирование) напряжения меньше. Также ниже по уровню постоянная составляющая напряжения после окончания переходного процесса. Это обусловлено наличием напряжения отпирания с величиной 0,8 В у обратного диода. При нулевом значении этого напряжения анализируемые кривые переходных процессов полностью совпадают.
Теперь следует рассмотреть переходные процессы в преобразователе при скачкообразном изменении сопротивления нагрузки. Для этого используется функциональная модель преобразователя, рассмотренная выше и представленная на рис. 7б. Для установки начальных условий используется команда powerinit. Ниже приводятся основные варианты применения этой команды.
Powerinit — инициализация SPS-модели
Назначение: Задание начальных условий. Синтаксис:
- powerinit‘(‘sys‘,’look‘) — выводятся начальные значения переменных модели sys.
- powerinit(‘sys‘,’reset‘) — устанавливаются нулевые начальные значения переменных модели sys.
- powerinit(‘sys‘,’steady‘) — устанавливаются начальные значения переменных модели sys таким образом, чтобы расчет начался из точки установившегося режима.
- powerinit(‘sys‘,’set‘,p) — устанавливаются начальные значения переменных модели sys, заданные вектором p. Порядок следования переменных можно определить командой, записываемой как powerinit(‘sys’,’look’).
- powerinit(‘sys‘,’setb‘,state,value) — устанавливает начальное значение value переменной state модели sys.
Вернемся к рассматриваемому примеру 2. Запускается функциональная модель с ключевыми элементами. По окончании модельного времени определяются начальные условия с помощью набираемой в командном окне команды для функциональной модели, имеющей название Conv_LC:
С помощью другой команды:
вводится начальное значение напряжения на конденсаторе фильтра, равное 5 В, при том же нулевом токе индуктивности. Временная диаграмма нового процесса после запуска (рис. 9) показывает, что выходное напряжение в момент пуска составляет 5 В. Затем появляется провал, поскольку происходит только разряд (практически без заряда) конденсатора из-за нулевого начального тока индуктивности. После окончания процесса нарастания тока в дросселе происходит заряд конденсатора, и напряжение на нем становится постоянным по уровню.
Рис. 9. Временная диаграмма процесса изменения выходного напряжения при набросе нагрузки (ненулевых начальных условиях)
Анализ динамического режима преобразователя с общей отрицательной обратной связью
Наиболее сложным при создании функциональной модели стабилизированного преобразователя напряжения является построение контура обратной связи. Выходное напряжение преобразователя регулируется за счет широтно-импульсной модуляции пульсирующего напряжения, поступающего на вход LC-фильтра, то есть изменением относительного угла модуляции (коэффициента заполнения импульсов в пределах периода преобразования). При этом угол модуляции Θ имеет ограничения, а именно 0≤Θmin≤Θmax≤1. Эти ограничения говорят, что угол модуляции может быть близким к 0 (выходное напряжение имеет низкий уровень) или к 1 (выходное напряжение равняется входному).
Таким образом, на вход фильтра поступают импульсы с амплитудой, равной входному напряжению, а их длительность Т (Т — период коммутации ключей) определяется сигналом управления. Граничные значения угла модуляции Θmin и Θmax задают допустимый диапазон изменения этого параметра, связанного с возможностями контура обратной связи. Зависимость угла модуляции от выходного напряжения, определяющего сигнал управления, можно задать следующим образом:
где ΘN— номинальное значение угла модуляции при нулевом сигнале ошибки; k — коэффициент передачи канала обратной связи; u2N — номинальное значение выходного напряжения; u2max и u2min — граничные значения выходного напряжения, при которых Θ=Θmin и Θ=Θmax соответственно. Эти граничные значения определяются как u2max = u2N +(Θ N – Θ min)/k и u2min = u2N +(Θ N – Θ max)/k.
С учетом этих выражений строится функциональная модель преобразователя с контуром обратной связи. При построении относительно сложной модели используется подсистема, включающая в себя некоторую часть блоков, что позволяет существенно упростить конфигурацию модели. Для создания подсистемы возможны два подхода. Первый состоит в выделении в S-модели или SPS-модели тех элементов, которые войдут в подсистему. Для этого их располагают так, чтобы включить в подсистему только нужные блоки. Затем с помощью ЛКМ и динамической рамки выделяют требуемую часть схемы и через меню окна модели Edit/Create subsystem формируют подсистему. Второй подход заключается в использовании специального блока Subsystem (подсистема) из библиотеки Simulink (раздел Ports and Subsystem). Этот блок перемещается во вновь созданное окно, открывается двойным нажатием ЛКМ, и в окне подсистемы собирается требуемая схема. После построения подсистема сохраняется командой File/Save as…
На рис. 10а приведена функциональная модель преобразователя с обратной связью под именем Conv_OS. Ее основные блоки за исключением подсистемы приведены в таблице 3.
Рис. 10. Функциональные модели:
а) преобразователя;
б) подсистемы преобразователя — контура отрицательной обратной связиТаблица 3.
Библиотека Блок Параметры SimPowerSystems\Electrical Sources DC Voltage Source —
источник постоянного напряженияAmplitude (V) – 10 SimPowerSystems\Power Electronics Mosfet — транзистор Mosfet Параметры без изменения SimPowerSystems\Power Electronics Diode — диод Параметры без изменения Simulink\Sinks Terminator — заглушка
для информационного порта транзистора и диода— SimPowerSystems\Elements Series RLC Branch —
последовательно соединенные RLC-элементы
Resistance
Inductance
Capacitance10 Ом, L=0, C=inf;
0,5 мГн, R=0, C=inf;
20 мкФ, R=0, L=0.SimPowerSystems\Measurements Voltage Measurement — измеритель напряжения — Simulink\Sinks Scope, Scope1, Scope2, — осциллографы — Simulink\Signls Routing Mux — мультиплексор
для объединения ряда сигналов в один векторNumber of inputs — 2 Созданная подсистема Conv_OS/Subsystem (рис. 10б) содержит блоки, сгруппированные в таблице 4.
Constant — генератор постоянного напряжения
Constant1
У подсистемы имеется один входной порт In, предназначенный для подачи в контур обратной связи сигнала в виде выходного напряжения u2. Поскольку этот контур построен из блоков библиотеки Simulink (рис. 10б), а силовой блок (рис. 10а) выполнен из блоков SimPowerSystems, то сигнал подается через измеритель напряжения. В то же время имеется три выходных порта, из которых только через Out1 подается сигнал управления на транзисторный ключ, определяющий характер изменения угла модуляции в процессе запуска преобразователя.
В функциональной модели контура обратной связи осуществляется сравнение выходного напряжения u2 с опорным напряжением 5 В с помощью сумматора Sum. Сигнал рассогласования усиливается Gain (коэффициент передачи k канала обратной связи), что позволяет получить требуемое приращение угла модуляции, добавляемое алгебраически (с учетом знака) к его номинальному значению ΘN= 0.5 с помощью сумматора Sum1. Ограничения изменений угла модуляции относительно ΘN задаются блоком Saturation. Формируется ШИМ-сигнал для управления транзисторным ключом путем сравнения блоком Relational operator (выявляет моменты превышения или равенства) полученного приращения угла модуляции с линейно изменяющимся сигналом на выходе генератора Repeating Sequence треугольных импульсов. Задается форма импульсов на выходе этого генератора путем определения моментов пресечения нуля или достижения максимального (минимального) значения. У генератора устанавливается один период сигнала. Все установки указаны в таблице 4.
Для наблюдения за процессом запуска используются мультиплексоры Mux. Так, в подсистеме на осциллограф подаются треугольные импульсы генератора и угол модуляции, изменяющийся относительно номинального значения. В силовом блоке формируются сигнал рассогласования u2 с опорным напряжением и сигнал управления транзистором. Кроме того, осциллографы применяются для получения временных диаграмм, отражающих изменения напряжения u2 и импульсов для управления транзисторным ключом. Время моделирования Stop time выбрано 150е-6, а максимальный шаг дискретизации Max step size выставлен в 0.2е-7. Эти параметры установлены в меню Simulation/Simulation parameters окна модели.
После построения модели, настройки ее блоков и запуска получены временные диаграммы (рис. 11). Особый интерес представляет изменение угла модуляции (рис. 11б), который достигает максимального или минимального значений, а при постепенном уменьшении сигнала рассогласования величина диапазона изменения угла модуляции становится меньше, что приводит к снижению пульсирующей составляющей выходного напряжения на рис. 11а. Если увеличить коэффициент передачи канала обратной связи, то получается изменение угла модуляции между предельными значениями, а затухание его отсутствует. В итоге произойдет возрастание пульсаций u2. Предлагаем читателю самому попробовать вносить различные значения указанного коэффициента передачи, амплитуды треугольных импульсов с генератора, границ насыщения в блоке Saturation, а затем наблюдать характер изменений временных диаграмм.
Рис. 11.
а) Временные диаграммы выходного напряжения преобразователя;
б) сигнала рассогласования (желтый), угла модуляции (голубой), треугольных импульсов генератора (розовый);
в) импульсов управления транзисторным ключомРабота рассматриваемой модели сопровождается комментариями в командном окне в виде:
(Внимание: блок диаграмм ‘Conv_OS’ имеет 1 алгебраический контур (петлю).
Этот контур означает наличие такой ситуации, когда входная переменная какого-либо блока является алгебраической функцией выходной переменной того же блока. В результате замедляется процесс вычисления. Устранение указанного явления можно обеспечить введением элемента задержки на один шаг дискретизации. Например, возможно применение блока Memory из раздела Discrete библиотеки Simulink. Использование такого блока в подсистеме модели преобразователя (рис. 12) устраняет негативное влияние алгебраического контура.
Рис. 12. Функциональная модель контура обратной связи преобразователя с элементом задержки — блоком Memory
Теперь рассмотрим применение Powergui для установки начальных условий. Располагается этот графический интерфейс Powergui в указателе библиотеки Simulink Library Browser в разделе SimPowerSystems при однократном щелчке левой кнопкой мыши на указатель этого дерева. Пиктограмму блока перетаскивают в окно модели (рис. 10а, справа внизу). Начнем с рассмотрения параметров этого интерфейса.
Powergui — графический интерфейс пользователя
Назначение: блок является инструментом графического интерфейса пользователя и обеспечивает решение следующих задач:
- расчет схемы комплексным методом;
- расчет установившегося режима;
- дискретизация модели;
- задание начальных условий;
- инициализация трехфазных схем, содержащих электрические машины, таким образом, чтобы расчет начался с установившегося режима;
- анализ схемы с помощью инструмента Simulink LTI-Viewer;
- определение полного сопротивления (импеданса) цепи;
- выполнение гармонического анализа;
- создание отчета;
- создание файла характеристик намагничивания для нелинейного трансформатора. Окно задания параметров представлено
- на рис. 13а.
- Hidemessagesduringanalysis — скрывать сообщения при проведении анализа. При установленном флажке подавляется вывод сообщений в командном окне MATLAB при выполнении расчетов.
- Phasorsimulation — расчет схемы комплексным методом. При установленном флажке выполняется расчет схемы комплексным методом. При этом необходимо задать частоту источников в графе Frequency.
- Frequency(Hz) — частота (Гц). Частота сигналов источников при расчете схемы комплексным методом. При других видах анализа параметр недоступен.
- Discretize electrical model — дискретизация модели. При установленном флажке выполняется дискретизация модели. При этом необходимо задать шаг дискретизации в графе Sampletime.
- Sample time (s) — шаг дискретизации. Параметр доступен, если задан режим дискретизации модели. При этом на пиктограмме блока будет показана величина этого параметра.
- SteadyStateVoltagesandCurrents — установившиеся значения напряжений и токов. Расчет установившихся значений переменных. При нажатии на кнопку открывается окно с соответствующими значениями.
- InitialstatesSetting— установка начальных значений. При нажатии на кнопку открывается окно, в котором отображаются начальные значения переменных. Эти значения можно изменять. Новые значения используются при расчете переходных процессов.
- LoadFlowandMachineInitializations— инициализация схем, содержащих электрические машины.
- Use LTI Viewer — использование LTI Viewer. Применение инструмента Simulink LTI Viewer для анализа схемы.
- Impedance vs Frequency Measurements — определение импеданса цепи.
- FFT Analysis — гармонический анализ.
- Generate Report— создание отчета.
- HysteresisDesignTool— инструмент расчета характеристики намагничивания.
Кнопкой Initial states Setting (рис. 13а) вызывается окно настройки Povergui Initial states Setting, в котором указаны все реактивные элементы (рис. 13б). После выбора требуемого элемента устанавливается начальное значение напряжения (тока). В качестве примера приведено начальное значение напряжения Uc_C на конденсаторе C, имеющее величину 5 В. В этом случае после запуска модели получена временная диаграмма выходного напряжения, аналогичная временной диаграмме на рис. 9.
Анализ динамических режимов преобразователя и электродвигателя с аналоговым и дискретным регуляторами
Цифровая система автоматического управления электроприводом содержит микропроцессорный (цифровой) регулятор, силовой преобразователь с широтно-импульсной модуляцией (ШИМ) для управления исполнительным двигателем, а также сам электродвигатель с нагрузкой. Сигнал на выходе цифровой части представляет собой ступенчатое напряжение, характер изменения которого в значительной мере зависит от шага дискретизации TS. При относительно малом шаге дискретизации система считается непрерывной.
Довольно часто непрерывная часть электропривода описывается передаточной функцией вида:
Зададим постоянным времени следующие значения: T1 = 1 с и T0 = 0,1 с. Построим функциональную модель системы с аналоговой и цифровой частями и сравним их динамические режимы [2]. У функциональной схемы (рис. 14а) основные блоки сведены в таблице 5.
Рис. 14. Функциональная модель системы:
а) с аналоговым и цифровым управлением;
б) PID-регуляторамиStep — генератор
Gain — усилитель
Gain1 — усилитель1
Mux — мультиплексор
для объединения ряда сигналов в один вектор
Transfer Fcn —
В рассматриваемой схеме используются новые блоки. Это генератор ступенчатого сигнала Step, формирующий единичный скачок. У него достаточно установить только конечное значение выходного сигнала (см. табл. 5), равное 1. Другой блок— экстраполятор нулевого порядка Zero—Order Hold — формирует дискретный сигнал. Единственная установка блока — шаг дискретизации Sample time, который первоначально задан равным 0,1. Передаточная функция Transfer Fcn содержит числитель Numerator и знаменатель Denominator, которые задаются в окне параметров в виде векторов коэффициентов полиномов, начиная с коэффициента при S с наибольшим показателем степени. Результат настройки высвечивается в пиктограмме блока (рис. 14а). В блоке интегрирования Integrator в рассматриваемом примере никаких настроек не требуется. Настройки осциллографа Scope выполнялись нами неоднократно в предыдущих уроках и здесь не приводятся.
После запуска модели получены временные диаграммы процессов (рис. 15а). Первая из них отражает характер изменения сигналов на выходе аналогового (фиолетовый цвет) и дискретного (желтый цвет) каналов, вторая — разность между двумя предыдущими сигналами (абсолютная погрешность, изменяющаяся во времени), третья — сигнал управления после экстраполятора. Видно, что погрешность достигает 30%. Если у экстраполятора уменьшить шаг дискретизации до 0,01, то погрешность снижается до 3%.
Введем в анализируемую модель ПИД-регулятор. Этот блок находится в библиотеке Simulink Library Browser. С помощью щелчка правой кнопкой мыши на строке Simulink появляется окно Library: Simulink, в котором надо открыть последовательно пиктограммы
Blocksets & Toolboxes / Simulink Extras / Additional Linear. Из последнего подраздела библиотеки извлекается блок PID Controller в двух экземплярах и помещается в оба канала анализируемой системы (рис. 14б). В этом блоке имеется три настройки — Proportional (пропорциональное регулирование), Integral (интегральная составляющая регулирования), Derivative (дифференциальная составляющая регулирования). Для начала установим первую составляющую 10, вторую 0 и третью 0,8. Шаг дискретизации зададим 0,1. Усилители оставлены для возможного изменения коэффициентов передачи каналов. Пока они (коэффициенты) равны 1.
После запуска получим временные диаграммы с другими значениями динамических показателей (рис. 15б). При этом переходный процесс стал апериодическим, погрешность рассогласования уменьшилась с 30% до 18%, время переходного процесса сократилось более чем в 2 раза (сравните с рис. 15а). Читателю предлагается самому поэкспериментировать с выбором различных соотношений коэффициентов ПИД-ре-гулятора и провести анализ изменений динамических параметров.
Рис. 15. Временные диаграммы процессов в функциональной модели системы:
а) с аналоговым и цифровым управлением;
б) PID-регуляторамиExtras: Simulink Basics Tutorial — Block Libraries
Each icon in the main Simulink window can be double clicked to bring up the corresponding block library. Blocks in each library can then be dragged into a model window to build a model.
Commonly Used Blocks
Commonly Used Blocks are used to list a lot of blocks which are usually used. Double-click on the Commonly Used Blocks icon in the main Simulink window to bring up the Commonly Used window.
Bus Creator
The Bus Creator block combines a set of signals into a bus.
Bus Selector
The Bus Selector block outputs a specified subset of the elements of the bus at its input. The block can output the specified elements as separate signals or as a new bus.
The Constant block generates a real or complex constant value. The constant output value is displayed in the middle of the block, with a default value of 1.
In order to examine these blocks, create a new model window (select New from the File menu in the Simulink window or hit Ctrl+N).
To use this block, drag it from the Commonly Used Blocks window into your new model window.
To change the constant output value, double-click on the block in your model window to bring up the following dialog box.
Change the constant value field from 1 to some other value, say, 5, and close the dialog box. Your model window will reflect the update by displaying a 5 in the middle of the constant block.
Data Type Conversion
The Data Type Conversion block converts an input signal of any Simulink data type to the data type you specify for the Output data type parameter. The input can be any real- or complex-valued signal.
The Delay block delays an input u according to the Delay length parameter, which you specify on the dialog box, or a delay length that a signal supplies to the input port. This block is equivalent to the z-1 discrete-time operator.
Demux, Mux
The Mux (Multiplexer) block is used to combine two or more scalar signals into a single vector signal. Similarly, a Demux (Demultiplexer) block breaks a vector signal into scalar signal components. The number of vector components must be specified in each case. For an example of the use of a Mux block see the Bus Suspension Modeling in Simulink example.
Discrete-Time Integrator
This is the discrete time approximation of a continuous-time integrator. The approximation method can be specified as well as the initial condition and saturation limits.
The Gain block multiplies the input by a constant value (gain). The input and the gain can each be a scalar, vector, or matrix.
The Ground block connects to blocks whose input ports do not connect to other blocks.
Inport blocks are the links from outside a system into the system.
The output of the Integrator is the integral of the input. An initial condition can be specified, as well as saturation limits. This block is very useful for modeling systems in Simulink.
Logical Operator
The Logical Operator block performs the specified logical operation on its inputs. An input value is TRUE (1) if it is nonzero and FALSE (0) if it is zero.
Outport blocks are the links from a system to a destination outside the system.
By default, the Product block outputs the result of multiplying two inputs: two scalars, a scalar and a nonscalar, or two nonscalars that have the same dimensions.
Relational Operator
By default, the Relational Operator block compares two inputs using the Relational operator parameter that you specify. The first input corresponds to the top input port and the second input to the bottom input port.
The Saturation block imposes upper and lower limits on an input signal.
The Scope block displays inputs signals with respect to simulation time.
A Subsystem block represents a subsystem of the system that contains it. The Subsystem block can represent a virtual subsystem or a nonvirtual subsystem.
The Sum block performs addition or subtraction on its inputs. This block can add or subtract scalar, vector, or matrix inputs. It can also collapse the elements of a signal.
The Switch block passes through the first input or the third input based on the value of the second input. The first and third inputs are called data inputs. The second input is called the control input.
Use the Terminator block to cap blocks whose output ports do not connect to other blocks.
Vector Concatenate
The Concatenate block concatenates the signals at its inputs to create an output signal whose elements reside in contiguous locations in memory.
Continuous
Continuous Blocks are elements of continuous-time dynamic systems. Double-click on the Continuous icon in the main Simulink window to bring up the Continuous window.
The output is equal to the derivative of the input.
Integrator Limited
The Integrator Limited block is identical to the Integrator block with the exception that the output of the block is limited based on the upper and lower saturation limits.
Integrator, Second-Order, Integrator, Second-Order Limited
The Second-Order Integrator block and the Second-Order Integrator Limited block solve the second-order initial value problem
PID Controller
The PID Controller block output is a weighted sum of the input signal, the integral of the input signal, and the derivative of the input signal. The weights are the proportional, integral, and derivative gain parameters.
PID Controller (2DOF)
The PID Controller (2DOF) block generates an output signal based on the difference between a reference signal and a measured system output.
State Space
A, B, C, and D matrices can be specified to create a LTI state space system. Inputs and outputs may be vector signals depending on the sizes of the matrices.
Transfer Function
Numerator and denominator polynomials can be specified to create a standard SISO LTI system transfer function.
Transport Delay
The Transport Delay block delays the input by a specified amount of time. You can use this block to simulate a time delay. The input to this block should be a continuous signal.
Variable Time Delay, Variable Transport Delay
The Variable Transport Delay and Variable Time Delay appear as two blocks in the Simulink block library. However, they are the same Simulink block with different settings of a Select delay type parameter. Use this parameter to specify the mode in which the block operates.
The Zero-Pole block models a system that you define with the zeros, poles, and gain of a Laplace-domain transfer function. This block can model single-input single output (SISO) and single-input multiple-output (SIMO) systems.
Discontinuities
Discontinuities Blocks are elements of discontinuous-time dynamic systems. Most of these have special-purpose applications and will not be used in the tutorials. Only the most relevant Discontinuities blocks will be discussed here. Double-click on the Discontinuities icon in the main Simulink window to bring up the Discontinuities window.
The Backlash block implements a system in which a change in input causes an equal change in output. . However, when the input changes direction, an initial change in input has no effect on the output.
Coulomb & Viscous Friction
The Coulomb and Viscous Friction block models Coulomb (static) and viscous (dynamic) friction. The block models a discontinuity at zero and a linear gain otherwise.
The Dead Zone block generates zero output within a specified region, called its dead zone.
Dead Zone Dynamic
The Dead Zone Dynamic block dynamically bounds the range of the input signal, providing a region of zero output.
Hit Crossing
The Hit Crossing block detects when the input reaches the Hit crossing offset parameter value in the direction specified by the Hit crossing direction property.
The Quantizer block passes its input signal through a stair-step function so that many neighboring points on the input axis are mapped to one point on the output axis.
Rate Limiter
The Rate Limiter block limits the first derivative of the signal passing through it. The output changes no faster than the specified limit.
Rate Limiter Dynamic
The Rate Limiter Dynamic block limits the rising and falling rates of the signal.
The Relay block allows its output to switch between two specified values. When the relay is on, it remains on until the input drops below the value of the Switch off point parameter. When the relay is off, it remains off until the input exceeds the value of the Switch on point parameter. The block accepts one input and generates one output.
Saturation Dynamic
The Saturation Dynamic block bounds the range of an input signal to upper and lower saturation values.
Wrap To Zero
The Wrap To Zero block sets the output to zero when the input is above the Threshold value. However, the block outputs the input when the input is less than or equal to the Threshold.
Discrete
Discrete Blocks are elements of discrete time dynamic systems. Double-click on the Discrete icon in the main Simulink window to bring up the Discrete window.
The Unit Delay block holds and delays its input by the sample period you specify.
The Difference block outputs the current input value minus the previous input value.
Discrete Derivative
The Discrete Derivative block computes an optionally scaled discrete time derivative.
Discrete Filter
This is a discrete-time filter in rational function form. Vectors containing coefficients of the polynomials in z^-1 are specified.
Discrete FIR Filter
The Discrete FIR Filter block independently filters each channel of the input signal with the specified digital FIR filter. The block can implement static filters with fixed coefficients, as well as time-varying filters with coefficients that change over time.
Discrete PID Controller
The Discrete PID Controller block output is a weighted sum of the input signal, the discrete-time integral of the input signal, and the discrete-time derivative of the input signal. The weights are the proportional, integral, and derivative gain parameters.
Discrete PID Controller (2DOF)
The Discrete PID Controller (2DOF) block generates an output signal based on the difference between a reference signal and a measured system output.
Discrete State-Space
This is a discrete-time dynamic system in state-space form. A, B, C, and D matrices can be specified, as well as initial conditions.
Discrete-Time Integrator
The output of this block is the discrete-time integration of the input signal. The integration methods can be Forward Euler, Backward Euler, etc.
Discrete Transfer Fcn
This is the standard form of a SISO LTI discrete time system. The transfer function polynomials are represented as coefficient vectors in terms of z.
Discrete Zero-Pole
A discrete-time transfer function can be represented as list of z-plane poles and zeros. The gain can also be specified.
Enabled Delay
This block delays the input signal by a specified number of samples. The block is considered enabled when the input to the enable port is nonzero, and is disabled when the input is 0.
First-Order Hold
The First-Order Hold block implements a first-order sample-and-hold that operates at the specified sampling interval. This block has little value in practical applications and is included primarily for academic purposes.
The Memory block holds and delays its input by one integration time step. This block accepts and outputs continuous signals. The block accepts one input and generates one output. Each signal can be scalar or vector.
Resettable Delay
The Resettable Delay block delays the input signal by a variable sample period and resets with external signal.
Tapped Delay
The Tapped Delay block delays an input by the specified number of sample periods and outputs all the delayed versions. Use this block to discretize a signal in time or resample a signal at a different rate.
Transfer Fcn First Order
The Transfer Fcn First Order block implements a discrete-time first order transfer function of the input. The transfer function has a unity DC gain.
Transfer Fcn Lead or Lag
The Transfer Fcn Lead or Lag block implements a discrete-time lead or lag compensator of the input. The instantaneous gain of the compensator is one, and the DC gain is equal to (1-z)/(1-p), where z is the zero and p is the pole of the compensator.
Transfer Fcn Real Zero
The Transfer Fcn Real Zero block implements a discrete-time transfer function that has a real zero and effectively no pole.
Variable Integer Delay
The Variable Integer Delay block delays the input signal by a variable sample period.
Zero-Order Hold
The Zero-Order Hold block holds its input for the sample period you specify. The block accepts one input and generates one output. Each signal can be scalar or vector.
Logic and Bit Operations
Logic and Bit Operations Blocks are used to perform logic and bit operations. Double-click on the Logic and Bit Operations icon in the main Simulink window to bring up the Logic and Bit Operations window.
The Bit Clear block sets the specified bit, given by its index, of the stored integer to zero.
The Bit Set block sets the specified bit of the stored integer to one.
Bitwise Operator
The Bitwise Operator block performs the bitwise operation that you specify on one or more operands.
Combinatorial Logic
The Combinatorial Logic block implements a standard truth table for modeling programmable logic arrays (PLAs), logic circuits, decision tables, and other Boolean expressions.
Compare To Constant
The Compare To Constant block compares an input signal to a constant.
Compare To Zero
The Compare To Zero block compares an input signal to zero.
Detect Change
The Detect Change block determines if an input does not equal its previous value.
Detect Decrease
The Detect Decrease block determines if an input is strictly less than its previous value.
Detect Fall Negative
The Detect Fall Negative block determines if the input is less than zero, and its previous value was greater than or equal to zero.
Detect Fall Nonpositive
The Detect Fall Nonpositive block determines if the input is less than or equal to zero, and its previous value was greater than zero.
Detect Increase
The Detect Increase block determines if an input is strictly greater than its previous value.
Detect Rise Nonnegative
The Detect Rise Nonnegative block determines if the input is greater than or equal to zero, and its previous value was less than zero.
Detect Rise Positive
The Detect Rise Positive block determines if the input is strictly positive, and its previous value was nonpositive.
Extract Bits
The Extract Bits block allows you to output a contiguous selection of bits from the stored integer value of the input signal.
Interval Test
The Interval Test block outputs TRUE if the input is between the values specified by the Lower limit and Upper limit parameters.
Interval Test Dynamic
The Interval Test Dynamic block outputs TRUE if the input is between the values of the external signals up and lo. The block outputs FALSE if the input is outside those values. The output of the block when the input is equal to the signal up or the signal lo is determined by whether the boxes next to Interval closed on left and Interval closed on right are selected in the dialog box.
Logical Operator
The Logical Operator block performs the specified logical operation on its inputs.
Relational Operator
The Relational Operator block compares two inputs using the Relational Operator parameter that you specify. The first input corresponds to the top input port and the second input to the bottom input port.
Shift Arithmetic
The Shift Arithmetic block can shift the bits or the binary point of an input signal, or both.
Math Operations
Math Operations Blocks are used to Perform math operations. Double-click on the Math Operations icon in the main Simulink window to bring up the Math Operations window.
The Abs block outputs the absolute value of the input.
Algebraic Constraint
The Algebraic Constraint block constrains the input signal f(z) to zero and outputs an algebraic state z.
The Assignment block assigns values to specified elements of the signal.
The Bias block adds a bias, or offset, to the input signal according to
(1)
where U is the block input and Y is the output.
Complex to Magnitude-Angle
The Complex to Magnitude-Angle block accepts a complex-valued signal of type double or single.
Complex to Real-Image
The Complex to Real-Imag block accepts a complex-valued signal of any data type that Simulink supports, including fixed-point data types.
The Divide block outputs the result of dividing its first input by its second.
Dot Product
The output is equal to the dot product of two vector signals.
The Find block locates all nonzero elements of the input signal and returns the linear indices of those elements.
Magnitude-Angle to Complex
The Magnitude-Angle to Complex block converts magnitude and phase angle inputs to a complex output.
Math Function
The Math Function block performs numerous common mathematical functions.
The MinMax block outputs either the minimum or the maximum element or elements of the inputs.
MinMax Running Resettable
The MinMax Running Resettable block outputs the minimum or maximum of all past inputs u.
Permute Dimensions
The block reorders the elements of the input signal so that they are in the order you specify in the Order parameter.
You define a set of polynomial coefficients in the form that the MATLAB polyval command accepts. The block evaluates P(u) at each time step for the input u.
The output is equal to the product of the inputs. The number of inputs can be specified.
Product of Elements
The Product of Elements block inputs one scalar, vector, or matrix.
Real-Imag to Complex
The Real-Imag to Complex block converts real and/or imaginary inputs to a complex-valued output signal.
Reciprocal Sqrt
The Reciprocal Sqrt block gives the reciprocal of the square root of the input.
The Reshape block changes the dimensionality of the input signal to a dimensionality that you specify, using the block’s Output dimensionality parameter.
Rounding Function
The Rounding Function block applies a rounding function to the input signal to produce the output signal.
Signed Sqrt
The Signed Sqrt block gives the square root of the absolute value of the input, multiplied by the sign of the input.
Sine Wave Function
This block is the same as the Sine Wave block that appears in the Sources library.
Slider Gain
This multiplies the input by a scalar constant which is specified by moving a slider on the screen as shown below. The limits of the slider can be specified.
The Sqrt block gives the square root of the input.
The Squeeze block removes singleton dimensions from its multidimensional input signal.
Sum, Add, Subtract, Sum of Elements
The Sum block performs addition or subtraction on its inputs. This block can add or subtract scalar, vector, or matrix inputs. It can also collapse the elements of a signal.
Vector Concatenate, Matrix Concatenate
The Concatenate block concatenates the signals at its inputs to create an output signal whose elements reside in contiguous locations in memory.
Sinks
Sink Blocks are used to display or output signals. Double-click on the Sinks icon in the main Simulink window to bring up the Sinks window.
Notice that all of the sink blocks have inputs and no outputs. Most have a single input.
The Display Sink Block is a digital readout of a signal at the current simulation time.
Out Bus Element
The Out Bus Element block specifies an element of a bus (or entire bus) for the output port of the subsystem.
The Scope Sink Block was described earlier. It is used to display a signal as a function of time.
Stop Simulation
This is a special control block which is triggered to stop the current simulation when its input is non-zero.
The To File Sink Block saves a signal to a .mat file in the same way that the From File Source Block reads from a file. The sampling time can be specified, but is not necessary.
To Workspace
The To Workspace Sink Block stores a signal in a specified workspace variable. Unlike the To File Sink Block, the time is not saved in the variable, and must be stored separately.
The XY Graph Sink Block plots one signal against another. It is useful for phase-plane plots, etc.
Sources
Source Blocks are used to generate signals. Double-click on the Sources icon in the main Simulink window to bring up the Sources window.
Notice that all of the source blocks have a single output and no inputs. While parameters in each of these blocks in the library can be modified by double-clicking the block, it is best to not modify the blocks until they have been copied into a model window.
Band-Limited White Noise
The Band-Limited White Noise Source Block generates a random signal which changes at a specified sample period. The strength of the signal and a random number seed can also be specified.
Chirp Signal
The Chirp Signal Source Block generates a sinusoidal signal which scans over a range of frequencies. The initial and final frequencies as well as the scan time can be specified. The amplitude is always 1, and the chirp signal repeats itself after each frequency scan.
The Clock Source Block generates a signal equal to the current time in the simulation. This is useful when the output of a simulation is exported to MATLAB but occurs at uneven time steps. The clock’s output reflects the times at which the other signals outputs occur.
Counter Free-Running
The Counter Free-Running block counts up until reaching the maximum value,
By default, the Signal Generator generates a sine wave with an amplitude of 1 and a frequency of 1 Hz. To change this, double-click the Signal Generator in your model window to bring up the following dialog box.
The Amplitude and Frequency can be changed in this dialog box, as well as the type of waveform. To change the waveform, click on the Waveform field to bring up a list of possible waveforms.
The desired waveform can be selected from this list.
The Sine Wave Source Block generates a sinusoidal signal. The Amplitude and Frequency can be specified, as well as the Phase (unlike the Signal Generator). There is a fourth parameter, the Sample Time, which can be used to force the Sine Wave Source to operate in discrete-time mode.
As described earlier, the Step Source Block generates a step function. The initial and final values can be specified, as well as the step time.
Uniform Random Number
The Uniform Random Number block generates uniformly distributed random numbers over an interval that you specify.
Published with MATLAB® 9.2
- SYSTEM
- CONTROL
- SIMULINK
На рис. 9.1.17 показана модель, использующая подсистему и схема этой подсистемы.
Рис. 9.1.17. Использование блока Inport в подсистеме
9.1.17.2. Использование блока Inport в модели верхнего уровня
Входной порт в системе верхнего уровня используется для передачи сигнала из рабочей области MATLAB в модель.
Для передачи сигнала из рабочего пространство MATLAB требуется не только установить в модели входной порт, но и выполнить установку параметров ввода на вкладке Workspace I/O окна диалога Simulation parameters… (должен быть установлен флажок для параметра Input и задано имя переменной, которая содержит входные данные). Тип вводимых данных: Array (массив), Structure (структура) или Structure with time (структура с полем "время") задается на этой же вкладке.
На рис. 9.1.18 показана модель, считывающая входной сигнал из рабочего пространства MATLAB. Подсистема Load Data обеспечивает ввод данных из файла в рабочую область MATLAB.
Рис. 9.1.18. Модель, считывающая входной сигнал из рабочего пространства MATLAB с помощью блока Input.
Школа MATLAB. Урок 4. Анализ динамических свойств устройств силовой электроники во временной области
Моделирование процессов разгона и торможения электродвигателя
Начнем рассмотрение динамических процессов с построения виртуальной модели асинхронного электродвигателя (АД) с полупроводниковыми ключевыми элементами, позволяющей анализировать процесс разгона при подаче фазных напряжений на обмотку статора, а затем и процесс торможения асинхронного электродвигателя при отключении этой обмотки. В качестве ключевых элементов для коммутации напряжений применяются идеальные ключи Ideal Switch.
Рассмотрим блоки, используемые в примере с асинхронным электродвигателем.
Асинхронная машина (Asynchronous Machine)
Назначение: блок предназначен для моделирования асинхронной электрической машины в двигательном или генераторном режимах, каждый из которых определяется знаком электромагнитного момента.
Порты модели A, B и С— выводы статорной обмотки машины.
Порты а, b и с — выводы обмотки ротора.
Порт Tm предназначен для получения момента сопротивления движению. На выходе порта m формируется векторный сигнал, состоящий из 21 элемента: токов, потоков и напряжений ротора и статора в неподвижной и вращающейся системах координат, электромагнитного момента, скорости вращения вала, а также его углового положения.
Рис. 1.Окно настройки параметров блока Asynchronous Machine
Для удобства извлечения переменных машины из вектора в библиотеке SimPowerSystems предусмотрен блок Machines Measurement Demux. Для асинхронного электродвигателя построены модель электрической части (уравнения четвертого порядка в пространстве состояний) и модель механической части (уравнения второго порядка). Все электрические параметры машины приведены к обмотке статора. Исходные уравнения электрической части машины записаны для двухфазной (dq-оси) системы координат.
Параметры блока (окно для настройки параметров блока вызывается двойным щелчком левой кнопки мыши — ЛКМ на пиктограмме блока) (рис. 1):