Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Matlab / Лекция 21.docx
Скачиваний:
289
Добавлен:
19.03.2016
Размер:
337.45 Кб
Скачать

4. Библиотека компонентов пакета Simulink

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

— нажать кнопку (Simulink) на панели инструментов командного окна Matlab;

— в командной строке главного окна Matlab напечатать Simulink и нажать клавишу Enter на клавиатуре;

— выполнить команду Open… в меню File и открыть файл модели (mdl-файл). Этот вариант удобно использовать для запуска уже готовой и отлаженной модели, когда требуется лишь провести расчеты и не нужно добавлять новые блоки в модель.

Использование первого и второго способов приводит к открытию окна обозревателя разделов библиотеки Simulink (рис. 1).

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

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

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

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

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

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

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

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

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

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

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

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

Continuous — линейные непрерывные компоненты;

Discontinuous нелинейные компоненты;

Discrete — дискретных компоненты;

Math Operation — математические компоненты;

Ports & Subsystems — компоненты для создания подсистем;

Signal Routing — компоненты для разделения сигналов;

Sinks — регистрирующие компоненты;

Sources — источники сигналов и воздействий;

User-Defined Function — компоненты для создания функций пользователя.

Если два раза щелкнуть левой кнопкой мыши на каком-нибудь блоке в окне биб­лиотек, то открывается окно параметров блока, где отображаются установки параметров по умолчанию. Как правило, они норма­лизованы — например, задана единичная частота, единичная амплитуда, нулевая фаза и так далее. Возможность изменения параметров в этом случае отсутствует. Она появля­ется после переноса графических элементов в окно подготовки и редактирования функциональных схем (для его открытия необходимо выбрать иконку на панели инструментов илиFileNewModel).

Подробно рассмотрим наиболее используемые разделы библиотеки.

Линейные непрерывные компоненты (Continuous). Линейные компоненты играют важную роль в создании математических моделей многих устройств. Имеются следующие типы линейных компонентов: Derivative — аналоговое дифференцирующее уст­ройство; Integrator — аналоговый интегратор; State-Space — модель в пространстве состояний; Transfer Fcn — передаточные функции, и ряд других устройств.

Нелинейные компоненты (Discontinuous). Simulink предназначен главным образом для моделирования нелиней­ных динамических систем. Среди нелинейных компонентов следует отметить компоненты с типичными нелинейностями, например, вида abs(u), с характеристиками, описанными типовыми математическими функциями, компонентами вида идеальных и неидеальных ограни­чителей и так далее. Представлены и такие сложные компоненты, как кван­тователи, блоки нелинейности, моделирующие нелинейные петли гистерезиса, вре­менные задержки и ключи-переключатели.

Saturation – насыщение, в параметрах задаются верхний и нижний пределы (Upper limit и Lower limit).

Dead zoneнечувствительность, «мертвая зона». В параметрах задаются пределы нечувствительности (Start of dead zone и End of dead zone).

Rate Limiterограничитель скорости изменения сигнала, в параметрах задаются пределы на скорость увеличения (Rising slew rate) и на скорость уменьшения (Falling slew rate).

Relay – реле, в параметрах задаются точки переключения (Switch on point и Switch off point), в также величины сигналов в режимах «включено» (Output when on) и «выключено» (Output when off).

Backlashлюфт, «мертвый ход». В параметрах задаются величина мертвого хода (Deadband width) и начальное значение выхода (Initial output).

Coulomb and Viscous Frictionкулоновское и вязкое трение.

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

Среди них есть два блока, не имеющих аналога среди непрерывных блоков. Это блок задержки Unit delay и блок Discrete Filter — дискретный фильтр, который определяет рациональную функцию от оператора задержки z / 1 .

Математические компоненты (Math Operation). Ок­но Math Operation позволяет задавать множество математических компонентов с описываемыми пользователями свойствами, имеет решающее значение для выполнения прозрачного для пользователя математического моделирования как простых, так и сложных уст­ройств и систем. Некоторые из них:

Компоненты для создания подсистем (Ports & Subsystems). В случае если моделируемая система имеет сложную схему, удобным может быть объединение нескольких элементов в один с помощью блока Subsystem. При этом для задания требуемого количества входов и выходов нового элемента используются блоки In1 и Out1.

Компоненты для разделения сигналов (Signal Routing). Иногда для большей наглядности необходимо отобразить несколько графиков в одном окне, для этого может быть использован блок Mux из библиотеки Signal Routing, который объединяет любое количество входных воздействий в один выходной сигнал, представляющий собой вектор. С помощью блока Demux выполняется обратная операция — разъединение одного сигнала (вектора) на несколько.

Manual Switch — ручной переключатель, позволяет двойным щелчком переключать выход на один из двух входных сигналов.

Mux — мультиплексор, объединяет несколько сигналов в один «жгут» (векторный сигнал), в параметрах задается число входов (Number of Inputs).

Demux — демультиплексор, позволяет «разбить» векторный сигнал на несколько скалярных, в параметрах задается число выходов (Number of Outputs).

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

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

Наиболее простым устройством для отображения процесса является Scope, имитирующий осциллограф. Он имеет один вход, и соответственно одно окно для отображения результата. Если необходимо вывести несколько графиков, то на панели инструментов графика выбирается ParametrsGeneral и в поле Number of axes выставляется количество осей, которому будет соответствовать количество входов блока Scope.

В окне блока Scope изображается график изменения входного сигнала. Если вход соединен с выходом мультиплексора, сразу строится несколько графиков (по размерности входного «жгута»).

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

Кнопка открывает окно настроек, причем наиболее важные данные содержатся на вкладкеData history. Если не сбросить флажок Limit data points, в памяти будет сохраняться только заданное число точек графика, то есть, при большом времени моделирования начало графика будет потеряно.

Отметив на этой же странице флажок Save data to workspace можно сразу передать результаты моделирования в рабочую область Matlab для того, чтобы их можно было дальше обрабатывать, выводить на графики и сохранять в файле. Поле Variable name задает имя переменной в рабочей области, в которой сохраняются данные. В простейшем случае выбирается формат Array (в списке Format). Это означает, что данные будут сохраняться в массиве из нескольких столбцов (первый столбец – время, второй – первый сигнал, третий – второй сигнал и т.д., по порядку входов мультиплексора).

Блок XY Scope применяется при необходимости построения фазовых портретов и статических характеристик.

Display – цифровой дисплей, показывает изменение входного сигнала в цифровом виде.

Scopeосциллограф, показывает изменение сигнала в виде графика.

To File — передача данных в файл untilited.mat.

To Workspace — сохранение данных в переменной simout и передача в Workspace.

Источники сигналов и воздействий (Sources). Окно Sources содержит графические элементы — источники воз­действий. В электро- и радиотехнике их принято называть источниками сигналов, но в механике и в других областях науки и техники такое название не очень подходит — природа воздействий может быть самой разнообразной, например, в виде перепада давления или температуры, механического перемещения, звуковой волны и так далее.

Большинство элементов содержит рисунок, представляющий временную зависимость воздействий, например, перепад для блока Step, синусоиду для блока Sine Wave и т. д.

Набор блоков содержит практически все часто используемые при моделировании источники воздействий с самой различной функциональной и временной зависимостью. Возможно задание произвольного воздействия из файла — блок From File.

Constant – сигнал постоянной величины.

Step – ступенчатый сигнал, меняется время скачка (Step Time), начальное (Initial Value) и конечное значение (Final Value).

Ramp – линейно возрастающий сигнал с заданным наклоном (Slope). Можно задать также время начала изменения сигнала (Start Time) и начальное значение (Initial Value).

Pulse Generator – генератор прямоугольных импульсов, задаются амплитуда (Amplitude), период (Period), ширина (Pulse Width, в процентах от периода), фаза (Phase Delay).

Repeating Sequenceпоследовательность импульсов, их форма задается в виде пар чисел (время; величина сигнала)

Sine Wave – синусоидальный сигнал, задается амплитуда (Amplitude), частота (Frequency), фаза (Phase) и среднее значение (Bias).

Signal Builder – построитель сигналов, позволяющий задавать форму сигнала, перетаскивая мышью опорные точки.

Random Number – случайные числа с нормальным (гауссовым) распределением. Можно задать среднее значение (Mean Value), дисперсию (Variance), период изменения сигнала (Sample Time).

Uniform Random Number – случайные числа с равномерным распределением в заданном интервале от Minimum до Maximum.

Band Limited White Noise – случайный сигнал, ограниченный по полосе белый шум (имеющий равномерный спектр до некоторой частоты). Блок используется как источник белого шума для моделей непрерывных систем. Задается интенсивность (Noise Power) и интервал дискретизации (Sample Time), в течение которого удерживается постоянное значение сигнала. Чем меньше интервал, тем точнее моделирование, однако больше вычислительные затраты.

Компоненты для создания функций пользователя (User-Defined Function).

Fcn — задание функции преобразования входного сигнала.

Matlab Fcn — вызов файла-функции Matlab (в параметрах блока указывается имя файла).

S-function

S-Function Builder — создание S-функции.

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

Для выделения одного блока или соединительной линии надо щелкнуть левой кнопкой мыши по нужному элементу. Для того чтобы выделить несколько блоков, надо «обвести» их при нажатой левой кнопки мыши. Клавиша Delete удаляют выделенную часть. Чтобы скопировать блок (или выделенную часть), надо перетащить его при нажатой правой кнопке мыши.

Для изменения оформления выделенного блока предназначено меню Format на верхней панели инструментов. Также для этой цели можно использовать контекстное меню Format при нажатии на блоке правой кнопкой мыши. Для выделенного блока можно изменить цвет текста и линий (Foreground color), цвет фона (Background color), вывести тень (Show drop shadow), переместить название на другую сторону (Flip name).

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

Команда из меню SimulationParameters раскрывает диалоговое поле редактирования параметров имитации, что подразумевает выбор алгоритма численного интегрирования уравнений и задание числовых параметров:

Start Time — время начала процесса (обычно равно 0);

Stop Time — время окончания процесса имитации;

Min Step Size — минимальная величина шага интегрирования;

Max Step Size — максимальная величина шага интегрирования;

Tolerance — допуск (допустимая погрешность).

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

Использование переменных для задания параметров блоков. Параметры блоков Simulink можно задавать не только как числовые параметры, но и как имена переменных. Значения переменных необходимо задать перед началом расчета в командном окне Matlab или в m-файле. Такой способ задания параметров удобен, если требуется проводить расчеты для множества вариантов параметров блоков модели.

48

Соседние файлы в папке Matlab