double arrow

Краткие теоретические сведения

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

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

Многие функции (команды m-файлов) и инструменты MatLab могут использоваться в среде Simulink.

Для запуска Simulink необходимо предварительно запустить MatLab, а затем нажать на кнопку или ввести в командной строке Simulink (рис.3.1)

Рис. 3.1 – Запуск пакета Simulink

Для создания новой модели необходимо:

1. открыть окно модели,

2. перенести в окно необходимые блоки из Simulink библиотеки и

3. соединить блоки линиями связи.

Окно новой модели открывается при нажитии на панели инструментов
New>Simulink model или (рис. 3.2).

Рис. 3.2. Создание новой Simulink-модели

Для переноса в окно модели необходимого блока необходимо найти блок в библиотеке нажать на блок левой кнопкой мыши (ЛКМ) и перетащить блок в окно модели. Чтобы скопировать блок (или выделенные блоки) надо перетащить его при нажатой правой кнопке мыши (ПКМ). Для изменения параметров блока надо дважды щелкнуть на блоке и в открывшемся диалоговом окне изменить соответствующие параметры. Чтобы изменить название блока надо щелкнуть по названию блока ЛКМ и отредактировать текст.

С выделенными блоками можно выполнять следующие действия

• изменять положение и размеры блока,

• изменять цвет контура и самого блока,

• изменять ориентацию блока,

• выравнивать положение блоков,

• создавать из нескольких блоков подгруппу (subsystem) которая отображается одним блоком.

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

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

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

Пользователь может подобрать оптимальные для конкретной модели численные методы и шаг интегрирования (рис. 3.3). Путь: меню модели > Simulation > Model Configuration Parameters (Ctrl+E)

 

Рис. 3.3. Окно выбора параметров моделирования: шага интегрирования, метода моделирования, допусков и т.д.

 

Входные сигналы (раздел библиотеки Sources) и переменные состояния модели можно наблюдать в процессе моделирования при помощи блоков раздела (Sinks). Например, блок Scope в зависимости от его настроек показывает графики изменения входных сигналов как в одном окне, так и в нескольких, отображая заданное число точек. Масштабы графиков можно изменять, а их данные - сохранять в рабочей области MatLAB (workspace).

Время моделирования задается в окне Simulink-модели, для установки бесконечного времени моделирования в соответствующее окно необходимо ввести значение «inf».

Рис. 3.4. Задание времени моделирования

 

Для запуска моделирования необходимо щелкнуть по кнопке «Run»  на панели инструментов окна модели, другие кнопки  – приостановить (поставить модель на паузу), – остановить моделирование.

Копирование модели в буфер обмена виде растрового рисунка выполняется командой меню окна модели > Edit > Copy Model to Clipboard>Metafile(Bitmap). Предварительно лучше уменьшить размеры окна модели до минимальных, чтобы не было белых полей.

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

 

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

• Commonly Used Blocks - наиболее часто используемые блоки разных разделов библиотеки (воздействия, сумматор, интегратор, усилитель, осциллограф и т.д.)

• Continuous -   библиотека непрерывных элементов (интегратор, дифференциатор, линейная система ОДУ и т.д.);

• Discontinuities - нелинейные элементы (насыщение, реле, переключатель и т.д.);

• Discrete - библиотека дискретных элементов (интегратор, фильтр, задержка и т.д.);

• Logic and Bit Operations - логические операции (сравнение, сдвиг, инверсия, AND и т.д.);

• Lookup Tables - блоки задания в табличной форме функции переменных с использованием линейной интерполяции   (функции одной переменной, двух переменных и т.д.);

• Math Operations - математические функции (абсолютное значение, комбинаторная логика, выделение вещественной и мнимой составляющей комплексного числа и т.д.);

• Model Verification - блоки проверки проектируемой системы на соответствие требованиям в частотной и временной областях (границы значения сигнала, ограничения по амплитуде ЛАЧХ, ограничения на отклик на единичное ступенчатое воздействие, запасы устойчивости по амплитуде и фазе и т.д.);

• Model-Wide Utilities - библиотека дополнительных утилит (описание модели, информация о типе данных используемыми блоками Simulink и т.д.);

• Ports & Subsystems блоки подсистем (порты, синхронизация подсистем, вызов функций и т.д.);

• Signal Routing - сигналы и системы (составной блок, входной сигнал, выходной сигнал, мультиплексор, демультиплексор и т.д.);

• Sinks - средства отображения (временная диаграмма, вывод результатов в файл, остановка выполнения модели и т.д.);

• Sources - источники сигналов (генератор импульсных/синусоидальных сигналов, генератор случайных чисел, генератор пилообразных сигналов, часы и т.д.).

• User-Defined Function - функции пользователя (S-функции, m-функции, табличные функции и т.д.);

• Additional Math & Discrete - дополнительные математические и дискретные функции (задержки, инкрементирование и т.д.);

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

Для оформления графиков в пакете Matlab используются функции, приведенные в таблице 3.1.

Таблица 3.1 - Функции для оформления графиков в Matlab

Команда, параметр Описание
figure; figure(N рисунка: 1,2,...); Открытие окна графика
plot(y); Построение графика переменной у
plot(t, y); Построение графика переменной y(t)
plot(t, y, 'xb', i, z, 'g', 'linewidth',2); Построение голубого (‘b’) графика y(t) из х точек и зеленого (‘g’) графика z(i) линией двойной толщины (, 'linewidth',2) в одной зоне окна. Цветовое обозначение линий графиков: b синий (blue) g зеленый (green) r красный (red) с голубой (cyan) m фиолетовый (magenta) y желтый (yellow) k черный (black).
  Обозначение типа линии: '-' сплошная ': ' точечная '-'. штрих-пунктирная '--' штриховая 'x' - обозначение точек массива Обозначение толщины линии: 'linewidth',3  'linewidth',2
subplot(N строки, N столбца, N активного графика); Активизация одной из зон окна для построения в ней графика
title('xxx') xxx заголовок графика
xlabel('xxx') xxx название оси абсцисс
ylabel('xxx') xxx название оси ординат
legend('название 1', ' название 2', 'название 3') вывод типа линий графиков и их названий в отдельный список окна графиков.

Постановка задачи

На заданной высоте, например, h=1м отпускают мяч весом m=100 г., который летит до поверхности, и отскакивает от нее на высоту ~80% от начальной точки. Необходимо построить модель полета и отскоков мяча и определить основные параметры модели. Построить модели скачущего мяча с учетом коэффициента упругости. Исходные данные приведены в таблице 3.2.

 

Таблица 3.2 – Варианты заданий

№ варианта

Исходные данные

h– высота, [м]

m – масса мяча, [г]
1 0,11 120
2 0,12 140
3 0,13 160
4 0,14 180
5 0,15 200
6 0,16 80
7 0,17 70
8 0,18 60
9 0,19 125
10 0,20 130
11 0,21 150
12 0,22 170
13 0,23 100
14 0,24 130
15 0,25 160
16 0,26 190
17 0,27 210
18 0,28 80
19 0,29 70
20 0,30 60

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: