Описание пакета Simulink. Задание на выполнение работы. Источник случайного сигнала с нормальным

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

Источник постоянного сигнала Constant

Назначение:

Задает постоянный по уровню сигнал.

Параметры:

1. Constant value – Постоянная величина.

2. Interpret vector parameters as 1-D – Интерпретировать вектор параметров как одномерный (при установленном флажке). Данный параметр встречается у большинства блоков библиотеки Simulink . В дальнейшем он рассматриваться не будет.

Значение константы может быть действительным или комплексным числом, вычисляемым выражением, вектором или матрицей.

Рис. 2.26 иллюстрирует применение этого источника и измерение его выходного сигнала с помощью цифрового индикатора Display .

Рис. 2.26. Источник постоянного воздействия Constant

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

Назначение:

Формирует ступенчатый сигнал.

Параметры:

1. Step time – Время наступления перепада сигнала (с).

2. Initial value – Начальное значение сигнала.

3. Final value – Конечное значение сигнала.

Перепад может быть как в большую сторону (конечное значение больше, чем начальное), так и в меньшую (конечное значение меньше, чем начальное). Значения начального и конечного уровней могут быть не только положительными, но и отрицательными (например, изменение сигнала с уровня –5 до уровня –3).

На рис. 2.27 показано использование генератора ступенчатого сигнала.

Рис. 2.27. Блок Step

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

Назначение:

Формирует один из четырех видов периодических сигналов:

1. sine – Синусоидальный сигнал.

2. square – Прямоугольный сигнал.

3. sawtooth – Пилообразный сигнал.

4. random – Случайный сигнал.

Параметры:

1. Wave form – Вид сигнала.

2. Amplitude – Амплитуда сигнала.

3. Frequency – Частота (рад/с).

4. Units – Единицы измерения частоты. Могут принимать два значения:

· Hertz Гц.

· rad / sec рад/с.

Источник случайного сигнала с равномерным распределением Uniform Random Number

Назначение:

Формирование случайного сигнала с равномерным распределением.

Параметры:

1. Minimum Минимальный уровень сигнала.

2. Maximum – Максимальный уровень сигнала.

3. Initial seed – Начальное значение.

Пример использования блока и график его выходного сигнала представлен на рис. 2.28.

Рис. 2.28. Блок генератора сигналов

Рис. 2.29. Источник случайного сигнала с равномерным распределением

Источник случайного сигнала с нормальным

распределением Random Number

Назначение:

Формирование случайного сигнала с нормальным распределением уровня сигнала.

Параметры:

1. Mean – Среднее значение сигнала

2. Variance – Дисперсия (среднеквадратическое отклонение).

3. Initial seed – Начальное значение.

Рис. 2.30. Источник случайного сигнала с нормальным распределением

Источник импульсного сигнала Pulse Generator

Назначение:

Формирование прямоугольных импульсов.

Параметры:

1. Pulse Type – Способ формирования сигнала. Может принимать два значения:

· Time-based – По текущему времени.

· Sample-based – По величине модельного времени и количеству расчетных шагов.

2. Amplitude – Амплитуда.

3. Period – Период. Задается в секундах для Time-based Pulse Type или в шагах модельного времени для Sample-based Pulse Type .

4. Pulse width – Ширина импульсов. Задается в процентах по отношению к периоду для Time-based Pulse Type или в шагах модельного времени для Sample-based Pulse Type .

5. Phase delay – Фазовая задержка. Задается в секундах для Time-based Pulse Type или в шагах модельного времени для Sample-based Pulse Type.

6. Sаmple time – Шаг модельного времени. Задается для Sample-based Pulse Type .

Рис. 2.31. Источник прямоугольных импульсов

Источник временного сигнала Clock

Назначение:

Формирует сигнал, величина которого на каждом шаге расчета равна текущему времени моделирования.

Параметры:

1. Decimation – Шаг, с которым обновляются показания времени на изображении источника (в том случае, если установлен флажок параметра Display time ). Параметр задается как количество шагов расчета. Например, если шаг расчета модели в окне диалога Simulation parameters установлен равным 0,01 с, а параметр Decimation блока Clock задан равным 1000 , то обновление показаний времени будет производиться каждые 10 с модельного времени.

Рис. 2.32. Источник временного сигнала

2. Display time – Отображение значения времени в блоке источника.

На рис. 2.32 показан пример работы данного источника.

Цифровой источник времени Digital Clock

Назначение:

Формирует дискретный временной сигнал.

Параметр:

Sample time – Шаг модельного времени (с).

На рис. 2.33 показана работа источника Digital Clock

Рис. 2.33. Цифровой источник временного сигнала

Блоки библиотеки Simulink

2.2.1. Continuous – раздел непрерывных блоков

Рис. 2.3. Раздел Continuous

В состав раздела непрерывных блоков входят (рис 2.3):

· Derivative – дифференцирующий блок;

· Integrator – интегрирующий блок;

· Transport Delay – блок постоянного запаздывания;

· Transfer Fcn – блок, реализующий передаточную функцию, заданную в виде отношения полиномов (апериодическое и колебательное звенья);

· State-Space – линейная аналоговая система, заданная в виде уравнений состояния, т. е. в виде системы уравнений, представленной в форме Коши;

· Zero-Pole – линейная аналоговая система, заданная своими нулями и полюсами;

· Memore – блок памяти, выполняющий задержку на один шаг модельного времени;

· Variable Transport Delay – блок памяти с переменной задержкой.

2.2.2. Discrete – раздел дискретных блоков

· Discrete Transfer Fcn - блок, реализующий передаточную функцию, заданную в виде отношения полиномов (апериодическое и колебательное звенья), для дискретных САУ;

· Discrete Time Integrator – интегрирующий блок для дискретных САУ. Выполняет численное интегрирование входного сигнала;

· Zero-Order-Hold –экстраполятор нулевого порядка;

· Unit Delay – блок задержки сигнала. Обеспечивает задержку входного сигнала на заданное число шагов модельного времени;

· Discrete State-Spase – блок задания дискретного звена матрицами его состояния;

Рис. 2.4. Раздел Discrete

· Discrete Filter – блок задания дискретного звена через дискретную передаточную дробно-рациональную функцию относительно 1/Z;

· Discrete Zero-Pole – блок задания дискретного звена через указание значений нулей и полюсов дискретной передаточной функции относительно 1/Z;

· First-Order Hold – экстраполятор первого порядка.

2.2.3. Function & Tables – раздел блоков функций и таблиц

· Fcn – блок, реализующий в пакете Simulink любую функцию системы MATLAB, где в качестве параметра настройки можно ввести любое вычисляемое выражение, аргументом которого выступает входной сигнал;

· MATLAB Fcn – подобен предыдущему блоку, но также позволяет реализовывать m-функции (программы, написанные на языке программирования MATLAB);



· Look-Up Table, (2-D) и (n-D) – блоки данных, заданных в виде таблиц (позволяют задать нелинейные блоки любого вида), отличаются друг от друга размерностью задающих таблиц. Все эти блоки выполняют различного вида интерполяции.

2.2.4. Math – раздел математических блоков

· Gain – усилительный блок;

· Sum – сумматор сигналов с различными знаками и любым количеством входов;

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

· Dot Product – звено, осуществляющее перемножение двух входных величин, если они являются скалярами. Это звено вычисляет также сумму поэлементных произведений двух входных векторов одинаковой длины;

· Slider Gain – аналоговый усилитель с интерактивной настройкой;

· Matrix Gain – усилитель, на вход которого подается вектор;

· Mat Function – блок, позволяющий выбрать одну из математических функций в поле настройки и включить ее в модель;

· Trigonometric Function – звено формирования тригонометрических функций от входного сигнала. Выбор функции обеспечивается в поле настройки;

Рис. 2.5. Раздел Math

· MinMax – блок выбирает минимальное или максимальное значение вектора в соответствии с заданием поля настройки. Входной сигнал на блок задается числовым вектором. В окне настройки определяется также количество входов;

· Abs – блок, формирующий на выходе абсолютное значение входного сигнала;

· Sign – блок-реле, реагирующий на знак входного сигнала;

· Rounding Function – округление входного сигнала;

· Combinatorial Logic – блок обеспечивает преобразование входного сигнала в соответствии с формированной в окне настройки таблицей истинности;

· Logical Operation и Relaition Operator – блоки производят известные логические операции «и» и «или», количество входов задается в поле настройки;

· Bitwise Logical Operator – универсальный блок, реализующий любую логическую функцию;

· Complex to Magnitude-Angle – блок, позволяющий выделить модуль и фазу входной комплексной величины;

· Magnitude-Angle to Complex – блок, преобразующий входную величину, заданную модулем и фазой в комплексную выходную величину;

· Complex to Real-Image, Real-Image to Complex – блоки, преобразующие комплексные величины из показательной формы в алгебраическую и обратно;

· Algebraic Constrain – блок, позволяющий в структурную модель включать систему алгебраических уравнений.

2.2.5. Nonlinear – раздел нелинейных блоков

Рис. 2.6. Раздел Nonlinear

· Saturation – блок ограничения;

· Dead Zone – блок с зоной нечувствительности;

· Relay – релейный блок;

· Rate Limiter – блок с ограничением скорости;

· Coulomb and Viscous Friction – блок фрикционных эффектов;

· Backlash – блок люфта;

· Switch и Multiport Switch – переключатели одно- и многовходовые;

· Quantizer – блок, обеспечивающий квантование входного сигнала по уровню. В системах управления такие блоки являются частью аналого-цифрового преобразователя;

· Manual Switch – блок, который переключается вручную. В процессе моделирования при помощи этого ключа удобно менять параметры и структуру модели;

· Coulumb & Viscous Friction – блок, реализующий характеристику трения в механических системах.

2.2.6. Signal & Systems – раздел блоков сигналов и систем

· Sub System – блок-подсистема (полезен в случае громоздких систем, части которых можно с помощью данного блока заменить на один или несколько блоков-подсистем);

· In, Out – блоки входа/выхода, предназначенные для создания блоков-подсистем;

· Mux – микшер сигналов, собирающий несколько сигналов в одну шину;

· Demux – блок, выполняющий действие, обратное действию предыдущего блока;

· Enable, Trigger – блоки, предназначенные для логического управления работой модели;

· Bus Selector – блок выделяет из присоединенной к его порту шины требуемые сигналы. В окне настройки блока имеется два списка – входной и выходной;

· Selector – блок выбирает из входного вектора элементы, которые указаны в параметрах настройки;

· Merge – блок, осуществляющий объединение входных сигналов;

· Matrix Concatenation – блок, позволяющий векторный сигнал, представленный развернутой строкой или столбцом, преобразовать к «свернутому» векторному сигналу;

· From, Goto Tag Visibility, Goto – блоки («Принять», «Признак видимости», «Передать») используются совместно и предназначены для обмена между различными данными модели с учетом их доступности;

· Data Store Memory, Data Store Read, Data Store Write – «Память», «Чтение» и «Запись» данных, также используются совместно и обеспечивают хранение и передачу данных;

· Ground, Terminator – блоки используются в качестве «заглушек» для неиспользованных входных и выходных портов соответственно;

Рис. 2.7. Раздел Signal & Systems

· Reshape – блок, позволяющий изменить размерность входного сигнала;

· Data Type Conversion – блок, обеспечивающий приведение типа данных входного сигнала к требуемому;

· Function-Call Generator – блок, обеспечивающий запуск подключенных к нему подсистем с заданной периодичностью;

· Configurable Subsystem – блок, реализующий функцию любой подсистемы, которая может быть библиотечной или созданной пользователем;

· Model info – блок, позволяющий получить информацию о модели;

· IC – блок, позволяющий установить начальное значение входного сигнала, значение которого задается в окне настройки;

· Width – блок, вычисляющий размерность сигнала на входе;

· Probe – блок, позволяющий получить на выходе необходимую информацию о входном сигнале. Блок имеет один вход, число выходов зависит от числа исследуемых параметров входного сигнала;

· Signal Specification – блок, управляющий процессом моделирования в зависимости от параметров входного сигнала.

2.2.7. Sinks – раздел блоков получателей сигналов

· Display – блок, отображающий цифровую информацию (уровень сигнала в данный момент времени);

· Scope – виртуальный осциллограф, предназначенный для получения временных зависимостей (переходных процессов);

· XY Graph – виртуальный графопостроитель (построение фазовых портретов и различных двухмерных графиков);

Рис. 2.8. Раздел Sinks

· To File и To Workspace – блоки, передающие информацию в файл или в рабочую область MATLAB;

· Stop Simulink – остановка симуляции.

2.2.8. Sources – раздел блоков источников сигналов

· Band-Limited White Noice – генератор белого шума;

· Chrip Signal – генератор сигнала с нарастающей частотой;

· Constant - источник постоянного воздействия, задающий константу (t < 0, y = 0; t ³ 0, y = сonst);

· Discrete Pulse Generator – источник дискретных импульсов;

· From File и From Workspace - источником сигнала для этих блоков служит файл или рабочая область MATLAB;

· Ramp – источник нарастающего воздействия;

Рис. 2.9. Раздел Sources

· Random Number – источник случайного сигнала с нормальным распределением;

· Repeating Sequence – источник пилообразного сигнала;

· Sine Wave – источник синусоидального воздействия;

· Step – источник перепада сигнала (t < Step time, y = Initial value; t > Step time, y = Final value);

· Signal Generator – универсальный сигнал-генератор;

· Clock – источник времени моделирования;

· Digital Clock – цифровой источник времени.

2.2.9. Библиотека Simulink Extras

Библиотека Simulink Extras является дополнительной библиотекой пакета Simulink. Эта библиотека содержит наборы блоков с более широкими функциями, чем рассмотренные ранее разделы основной библиотеки. Тем не менее это вовсе не означает, что применение этой библиотеки всегда предпочтительнее. Связано это с тем, что усложнение функций блоков, полезное при решении ряда специфических задач, оборачивается усложнением моделирования при решении большинства обычных задач.

Библиотека Simulink Extras представлена на рис. 2.10. Работа с этой библиотекой ничем не отличается от работы с основной библиотекой.

Рис.2.10. Библиотека Simulink Extras

2.2.9.1. Additional Discrete – дополнительные дискретные блоки

Рис. 2.11. Дополнительные

дискретные блоки

Дополнительные блоки Additional Discrete представлены всего четырьмя блоками – по два варианта известных нам блоков Discrete Transfer Fcn и Discrete Zero-Pole (рис 2.11). Их единственным отличием от описанных ранее блоков является возможность инициализации входов и состояний.

2.2.9.2. Additional Linear – дополнительные линейные блоки

Состав дополнительных линейных блоков раздела Additional Linear показан на рис. 2.12. Блоки этого раздела можно разделить на две категории: PID-контроллеры и блоки типа State-Shfct, Transfer Fnc и Zero-Pole, дополненные возможностями выходных сигналов и состояний.

Для анализа и синтеза систем управления наибольший интерес представляют PID-контроллеры. Первый из них PID-controller – это довольно универсальный блок, выходной сигнал которого задается операторным выражением:

OUT = P + I / s + Ds,

где Р – входной сигнал; I – его интеграл; D – его производная.

Рис. 2.12. Дополнительные линейные

Параметр Р (по умолчанию 1) фактически задает коэффициент усиления безынерционного усилительного звена. Параметр I задает пропорциональность интегралу входного сигнала и, наконец, параметр D задает пропорциональность производной входного сигнала. Параметры P, I и D задаются в таблице настройки PID-контроллера, поэтому задавая различные значения указанных параметров, можно получить П -, ПИ -, ПД - и ПИД - регуляторы.

Второй PID-controller (with Approximate Derivative) c улучшенной операцией дифференцирования вычисляет выходной сигнал как:

OUT = Р + I / s + Ds/(1/Ns + 1).

За счет применения дополнительного параметра N улучшается вычисление производной.

2.2.9.3. Дополнительные блоки Additional Sinks

Раздел дополнительных блоков Additional Sinks содержит ряд новых виртуальных регистраторов (рис. 2.13):

· Auto Correlator – автокоррелятор (используется с пакетом Signal Processing Toolbox);

· Averaging Power Spectral Density – анализатор спектральной плотности мощности с усреднением;

Рис. 2.13. Дополнительные блоки

Additional Sinks

· Averaging Spectrum Analyzer – спектральный анализатор с усреднением;

· Cross-Correlator – кросс-коррелятор;

· Floating Point Bar – утилита построения гистограммы;

· Power Spectral Density – анализатор спектральной плотности мощности;

· Spectrum Analyser – анализатор спектра.

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

2.2.9.4. Блоки триггеров Flip Flops

Рис. 2.14. Раздел библиотеки Flip Flops

Раздел библиотеки Simulink Extras Flip Flops содержит следующие основные блоки (рис. 2.14):

· Clock – генератор тактовых импульсов;

· D Flip Flops, D Latch, J-K Flip Flops, R-S Flip Flops – 4 триггерных устройства типа D -, J-K, R-S – триггеров.

2.2.9.5. Раздел преобразований Transformations

Раздел преобразований Transformations (рис. 2.15) содержит 8 блоков для осуществления типичных преобразований – температуры из градусов Цельсия в градусы Фаренгейта и наоборот; углов, выраженных в градусах, в углы, выраженные в радианах, и наоборот; прямоугольных систем координат в полярные системы координат и наоборот.

Рис. 2.15. Блок Transformations

Основные настройки вышеописанных блоков и правила работы с ними описаны ниже.

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

Окно обозревателя библиотеки блоков содержит следующие элементы (рисунок 1.2):

1. Заголовок, с названием окна – Simulink Library Browser .

2. Меню, с командами File , Edit , View , Help .

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

4. Окно комментария для вывода поясняющего сообщения о выбранном блоке.

5. Список разделов библиотеки, реализованный в виде дерева.

6. Окно содержимого раздела библиотеки (список вложенных разделов библиотеки или блоков)

7. Строка состояния, содержащая подсказку по выполняемому действию.

На рисунке 1.2 выделена основная библиотека Simulink (в левой части окна) и показаны ее разделы (в правой части окна).

Библиотека Simulink содержит следующие основные разделы:

1. Continuous – линейные блоки.

2. Discrete – дискретные блоки.

3. Functions & Tables – функции и таблицы.

4. Math – блоки математических операций.

5. Nonlinear – нелинейные блоки.

6. Signals & Systems – сигналы и системы.

7. Sinks - регистрирующие устройства.

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

9. Subsystems – блоки подсистем.

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

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

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

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

Рисунок 1.3 - Окно обозревателя с набором

блоков раздела библиотеки

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

· File (Файл) - Работа с файлами библиотек.

· Edit (Редактирование) - Добавление блоков и их поиск (по названию).

· View (Вид) - Управление показом элементов интерфейса.

· Help (Справка) - Вывод окна справки по обозревателю библиотек.

Для работы с обозревателем можно также использовать кнопки на панели инструментов (рисунок 1.4).

Рисунок 1.4 - Панель инструментов обозревателя разделов библиотек

Кнопки панели инструментов имеют следующее назначение:

1. Создать новую S -модель (открыть новое окно модели).

2. Открыть одну из существующих S -моделей.

3. Изменить свойства окна обозревателя. Данная кнопка позволяет установить режим отображения окна обозревателя "поверх всех окон ”. Повторное нажатие отменяет такой режим.

4. Поиск блока по названию (по первым символам названия). После того как блок будет найден, в окне обозревателя откроется соответствующий раздел библиотеки, а блок будет выделен. Если же блок с таким названием отсутствует, то в окне комментария будет выведено сообщение Not found <имя блока> (Блок не найден).

1. Общие сведения
2. Запуск Simulink

4. Создание модели
5. Окно модели
6. Основные приемы подготовки и редактирования модели
6.1. Добавление текстовых надписей
6.2. Выделение объектов
6.3. Копирование и перемещение объектов в буфер промежуточного хранения
6.4. Вставка объектов из буфера промежуточного хранения
6.5. Удаление объектов
6.6. Соединение блоков
6.7. Изменение размеров блоков
6.8. Перемещение блоков
6.9. Использование команд Undo и Redo
6.10. Форматирование объектов
7. Установка параметров расчета и его выполнение
7.1. Установка параметров расчета модели
7.1.1. Simulation time (Интервал моделирования или время расчета)
7.1.2. Solver options (Параметры расчета)
7.1.3. Output options (Параметры вывода)
7.2. Установка параметров обмена с рабочей областью
7.3. Установка параметров диагностирования модели
7.4. Выполнение расчета
8. Завершение работы
9. Библиотека блоков Simulink
9.1. Sources - источники сигналов
9.1.1. Источник постоянного сигнала Constant
9.1.2. Источник синусоидального сигнала Sine Wave
9.1.3. Источник линейно изменяющегося воздействия Ramp
9.1.4. Генератор ступенчатого сигнала Step
9.1.5. Генератор сигналов Signal Generator
9.1.6. Источник случайного сигнала с равномерным распределением Uniform Random Number
9.1.7. Источник случайного сигнала с нормальным распределением Random Number
9.1.8. Источник импульсного сигнала Pulse Generator
9.1.9. Генератор линейно-изменяющейся частоты Chirp Generator
9.1.10. Генератор белого шума Band-Limited White Noice
9.1.11. Источник временного сигнала Clock
9.1.12. Цифровой источник времени Digital Clock
9.1.13. Блок считывания данных из файла From File
9.1.14. Блок считывания данных из рабочего пространства From Workspace
9.1.15. Блок сигнала нулевого уровня Ground
9.1.16. Блок периодического сигнала Repeating Sequence
9.1.17. Блок входного порта Inport
9.2. Sinks - приемники сигналов
9.2.1. Осциллограф Scope
9.2.2. Осциллограф Floating Scope
9.2.3. Графопостроитель ХУ Graph
9.2.4. Цифровой дисплей Display
9.2.5. Блок остановки моделирования Stop Simulation
9.2.6. Блок сохранения данных в файле То File
9.2.7. Блок сохранения данных в рабочей области То Workspace
9.2.8. Концевой приемник Terminator
9.2.9. Блок выходного порта Outport
9.3. Continuous – аналоговые блоки
9.3.1. Блок вычисления производной Derivative
9.3.2. Интегрирующий блок lntegrator
9.3.3. Блок Memory
9.3.4. Блок фиксированной задержки сигнала Transport Delay
9.3.5. Блок управляемой задержки сигнала Variable Transport Delay
9.3.6 Блок передаточной функции Transfer Fcn
9.3.7. Блок передаточной функции Zero-Pole
9.3.8. Блок модели динамического объекта State-Space
9.4. Discrete – дискретные блоки
9.4.1. Блок единичной дискретной задержки Unit Delay
9.4.2. Блок экстраполятора нулевого порядка Zero-Order Hold
9.4.3. Блок экстраполятора первого порядка First-Order Hold
9.4.4. Блок дискретного интегратора Discrete-Time Integrator
9.4.5. Дискретная передаточная функция Discrete Transfer Fсn
9.4.6. Блок дискретной передаточной функции Discrete Zero-Pole
9.4.7. Блок дискретного фильтра Discrete Filter
9.4.8. Блок модели динамического объекта Discrete State-Space
9.5. Nonlinear - нелинейные блоки
9.5.1. Блок ограничения Saturation
9.5.2. Блок с зоной нечувствительности Dead Zone
9.5.3. Релейный блок Relay
9.5.4. Блок ограничения скорости изменения сигнала Rate Limiter
9.5.5. Блок квантования по уровню Quantizer
9.5.6. Блок сухого и вязкого трения Coulomb and Viscous Friction
9.5.7. Блок люфта Backlash
9.5.8. Блок переключателя Switch
9.5.9. Блок многовходового переключателя Multiport Switch
9.5.10. Блок ручного переключателя Manual Switch
9.6. Math – блоки математических операций
9.6.1. Блок вычисления модуля Abs
9.6.2. Блок вычисления суммы Sum
9.6.3. Блок умножения Product
9.6.4. Блок определения знака сигнала Sign
9.6.5. Усилители Gain и Matrix Gain
9.6.6. Ползунковый регулятор Slider Gain
9.6.7. Блок скалярного умножения Dot Product
9.6.8. Блок вычисления математических функций Math Function
9.6.9. Блок вычисления тригонометрических функций Trigonometric Function
9.6.10. Блок вычисления действительной и (или) мнимой части комплексного числа Complex to Real-Imag
9.6.11. Блок вычисления модуля и (или) аргумена комплексного числа Complex to Magnitude-Angle
9.6.12. Блок вычисления комплексного числа по его действительной и мнимой части Real-Imag to Complex
9.6.13. Блок вычисления комплексного числа по его модулю и аргументу Magnitude-Angle to Complex
9.6.14. Блок определения минимального или максимального значения MinMax
9.6.15. Блок округления числового значения Rounding Function
9.6.16. Блок вычисления операции отношения Relational Operator
9.6.17. Блок логических операций Logical Operation
9.6.18. Блок побитовых логических операций Birwise Logical Operator
9.6.19. Блок комбинаторной логики Gombinatorical Logic
9.6.20. Блок алгебраического контура Algebraic Constraint
9.7. Signal&Systems - блоки преобразования сигналов и вспомогательные блоки
9.7.1. Мультиплексор (смеситель) Mux
9.7.2. Демультиплексор (разделитель) Demux
9.7.3. Блок шинного формирователя Bus Creator
9.7.4. Блок шинного селектора Bus Selector
9.7.5. Блок селектора Selector
9.7.6. Блок присвоения новых значений элементам массива Assignment
9.7.7. Блок объединения сигналов Merge
9.7.8. Блок объединения сигналов в матрицу Matrix Concatenation
9.7.9. Блок передачи сигнала Goto
9.7.10. Блок приема сигнала From
9.7.11. Блок признака видимости сигнала Goto Tag Visibility
9.7.12. Блок создания общей области памяти Data Store Memory
9.7.13. Блок записи данных в общую область памяти Data Store
9.7.14. Блок считывания данных из общей области памяти Data Store
9.7.15. Блок преобразования типа сигнала Data Type Conversion
9.7.16. Блок преобразования размерности сигнала Reshape
9.7.17. Блок определения размерности сигнала Width
9.7.18. Блок определения момента пересечения порогового значения Hit Crossing
9.7.19. Блок установки начального значения сигнала IC
9.7.20. Блок проверки сигнала Signal Specification
9.7.21. Датчик свойств сигнала Probe
9.7.22. Блок, задающий количество итераций Function-Call Generator
9.7.23. Информационный блок Model Info
9.8. Function & Tables – блоки функций и таблиц
9.8.1. Блок задания функции Fcn
9.8.2. Блок задания функции MATLAB Fcn
9.8.3. Блок задания степенного многочлена Polynomial
9.8.4. Блок одномерной таблицы Look-Up Table
9.8.5. Блок двумерной таблицы Look-Up Table(2D)
9.8.6. Блок многомерной таблицы Look-Up Table (n-D)
9.8.7. Блок таблицы с прямым доступом Direct Loop-Up Table (n-D)
9.8.8. Блок работы с индексами PreLook-Up Index Search
9.8.9. Блок интерполяции табличной функции Interpolation (n-D) using PreLook-Up
9.9. Subsystem - подсистемы
9.9.1. Виртуальная и монолитная подсистемы Subsystem и Atomic Subsystem
9.9.2. Управляемая уровнем сигнала подсистема Enabled Subsystem
9.9.3. Управляемая фронтом сигнала подсистема Triggered Subsystem
9.9.4. Управляемая уровнем и фронтом сигнала подсистема Enabled and Triggered Subsystem
9.9.5. Управляемая S-функцией подсистема Function-call subsystem
9.9.6. Блок условного оператора If
9.9.7. Блок переключателя Switch Case
9.9.8. Управляемая по условию подсистема Action Subsystem
9.9.9. Управляемая подсистема For Iterator Subsystem
9.9.10. Управляемая подсистема While Iterator Subsystem
9.9.11. Конфигурируемая подсистема Configurable Subsystem
9.10. Маскирование подсистем
9.10.1. Общие сведения
9.10.2. Создание окна параметров
9.10.3. Создание пиктограммы подсистемы
9.10.3.1. Команды вывода текста
9.10.3.2. Команды построения графиков
9.10.3.3. Команды отображения передаточных функций
9.10.3.4. Команды отображения рисунка из графического файла
9.10.3.5. Использование редактора пиктограмм iconedit
9.10.3.6. Создание автоматически обновляемых пиктограмм
9.10.4. Создание справки маскированной подсистемы
9.10.5. Создание динамически обновляемых окон диалога
9.10.6. Управление портами маскированной подсистемы
10. Редактор дифференциальных уравнений DEE
11. Использование Simulink LTI-Viewer для анализа динамических систем
11.1. Работа с Simulink LTI-Viewer
11.2. Настройка с Simulink LTI-Viewer
11.3. Экспорт модели
12. Основные команды MATLAB для управления Simulink-моделью
12.1. add_block
12.2. add_line
12.3. add_param
12.4. bdclose
12.5. bdroot
12.6. close_system
12.7. delete_block
12.8. delete_line
12.9. delete_param
12.10. gcb
12.11. gcs
12.12. find_system
12.13. get_param
12.14. new_system
12.15. open_system
12.16. replace_block
12.17. save_system
12.18. set_param
12.19. simulink
13. Отладчик Simulink моделей
13.1. Графический интерфейс отладчика Simulink моделей
13.1.1. Панель инструментов
13.1.2. Список контрольных точек Break/Display points
13.1.3. Панель задания точек прерывания по условию Break on conditions
13.1.4. Главное окно отладчика
14. Повышение скорости и точности расчетов
14.1. Повышение скорости расчета
14.2. Повышение точности расчета
15. Обзор набора инструментов Simulink Performance Tools
15.1. Simulink Accelerator
15.2. Simulink Model Profiling
15.3. Simulink Model Coverage
15.4. Simulink Model Differencing
16. Simulink-функции
16.1. Блок S-function
16.2. Математическое описание S-функции
16.3. Этапы моделирования
16.4. Callback-методы S-функции
16.5. Основные понятия S-функции
16.6. Создание S-функций на языке MATLAB
16.7. Примеры S-функций языке MATLAB
16.7.1. Простейшая S-функция
16.7.2. Модель непрерывной системы
16.7.3. Модель дискретнойной системы
16.7.4. Модель гибридной системы
16.7.5. Модель дискретной системы с переменным шагом расчета
16.7.6. Непрерывная модель электродвигателя постоянного тока независимого возбуждения
16.7.6.1. Математическое описание ДПТ НВ
16.7.6.2. Пример S-функции для ДПТ НВ
16.8. Создание S-функций на языке C с помощью S-Function Builder
16.9. Модернизация S-функций, созданных с помощью S-Function Builder
16.10. Создание S-функций на языке Fortran
Приложение 1. Система меню обозревателя библиотек программы Simulink
Приложение 2. Система меню окна модели

1. Общие сведения

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

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

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

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

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

2. Запуск Simulink

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

Рис 2.1. Основное окно программы MATLAB

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

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

Рис 2.2. Окно обозревателя разделов библиотеки Simulink

3. Обозреватель разделов библиотеки Simulink

Окно обозревателя библиотеки блоков содержит следующие элементы (Рис. 2.2 ):


  1. Заголовок, с названием окна – Simulink Library Browser .

  2. Меню, с командами File , Edit , View , Help .

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

  4. Окно комментария для вывода поясняющего сообщения о выбранном блоке.

  5. Список разделов библиотеки, реализованный в виде дерева.

  6. Окно содержимого раздела библиотеки (список вложенных разделов библиотеки или блоков)

  7. Строка состояния, содержащая подсказку по выполняемому действию.
На рис. 2.2 выделена основная библиотека Simulink (в левой части окна) и показаны ее разделы (в правой части окна).

Библиотека Simulink содержит следующие основные разделы:

Запуск Simulink

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

Рис. 2.1. Основное окно программы MATLAB

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

  • · Нажать кнопку (Simulink)на панели инструментов командного окна MATLAB.
  • · В командной строке главного окна MATLAB напечатать Simulink и нажать клавишу Enter на клавиатуре.
  • · Выполнить команду Open… в меню File и открыть файл модели (mdl - файл).

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


Рис. 2.2. Окно обозревателя разделов библиотеки Simulink

Обозреватель разделов библиотеки Simulink

Окно обозревателя библиотеки блоков содержит следующие элементы (Рис. 2.2):

  • 1. Заголовок, с названием окна - Simulink Library Browser.
  • 2. Меню, с командами File, Edit, View, Help.
  • 3. Панель инструментов, с ярлыками наиболее часто используемых команд.
  • 4. Окно комментария для вывода поясняющего сообщения о выбранном блоке.
  • 5. Список разделов библиотеки, реализованный в виде дерева.
  • 6. Окно содержимого раздела библиотеки (список вложенных разделов библиотеки или блоков)
  • 7. Строка состояния, содержащая подсказку по выполняемому действию.

На рис. 2.2 выделена основная библиотека Simulink (в левой части окна) и показаны ее разделы (в правой части окна).

Библиотека Simulink содержит следующие основные разделы:

  • 1. Continuous - линейные блоки.
  • 2. Discrete - дискретные блоки.
  • 3. Functions & Tables - функции и таблицы.
  • 4. Math - блоки математических операций.
  • 5. Nonlinear - нелинейные блоки.
  • 6. Signals & Systems - сигналы и системы.
  • 7. Sinks - регистрирующие устройства.
  • 8. Sources - источники сигналов и воздействий.
  • 9. Subsystems - блоки подсистем.

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

  • · Пиктограмма свернутого узла дерева содержит символ "+", а пиктограмма развернутого содержит символ "-".
  • · Для того чтобы развернуть или свернуть узел дерева, достаточно щелкнуть на его пиктограмме левой клавишей мыши (ЛКМ).

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

Рис. 3.1. Окно обозревателя с набором блоков раздела библиотеки

Для работы с окном используются команды, собранные в меню. Меню обозревателя библиотек содержит следующие пункты:

  • · File (Файл) - Работа с файлами библиотек.
  • · Edit (Редактирование) - Добавление блоков и их поиск (по названию).
  • · View (Вид) - Управление показом элементов интерфейса.
  • · Help (Справка) - Вывод окна справки по обозревателю библиотек.

Для работы с обозревателем можно также использовать кнопки на панели инструментов (Рис. 3.2).