Сайт о телевидении

Сайт о телевидении

» » Matlab simulink определение действующего значения синусоиды. И. В. Черных. "Simulink: Инструмент моделирования динамических систем"

Matlab simulink определение действующего значения синусоиды. И. В. Черных. "Simulink: Инструмент моделирования динамических систем"

4. Создание модели

Для создания модели в среде SIMULINK необходимо последовательно выполнить ряд действий:

4.1. Создать новый файл модели с помощью команды File/New/Model, или используя кнопку на панели инструментов (здесь и далее, с помощью символа “/”, указаны пункты меню программы, которые необходимо последовательно выбрать для выполнения указанного действия). Вновь созданное окно модели показано на Рис. 4.1.

Рис 4.1. Пустое окно модели

4.2. Расположить блоки в окне модели. Для этого необходимо открыть соответствующий раздел библиотеки (Например, Sources - Источники ). Далее, указав курсором на требуемый блок и нажав на левую клавишу “мыши” - “перетащить” блок в созданное окно. Клавишу мыши нужно держать нажатой . На Рис 4.2 показано окно модели, содержащее блоки.

Рис 4.2. Окно модели, содержащее блоки

Для удаления блока необходимо выбрать блок (указать курсором на его изображение и нажать левую клавишу “мыши”), а затем нажать клавишу Delete на клавиатуре.

Для изменения размеров блока требуется выбрать блок, установить курсор в один из углов блока и, нажав левую клавишу “мыши”, изменить размер блока (курсор при этом превратится в двухстороннюю стрелку).

4.3. Далее, если это требуется, нужно изменить параметры блока, установленные программой “по умолчанию”. Для этого необходимо дважды щелкнуть левой клавишей “мыши”, указав курсором на изображение блока. Откроется окно редактирования параметров данного блока. При задании численных параметров следует иметь в виду, что в качестве десятичного разделителя должна использоваться точка, а не запятая. После внесения изменений нужно закрыть окно кнопкой OK . На рис.4.3 в качестве примера показаны блок, моделирующий передаточную функцию и окно редактирования параметров данного блока.

Рис 4.3. Блок, моделирующий передаточную функцию и окно редактирования параметров блока

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

Рис 4.4. Схема модели

4.5. После составления расчетной схемы необходимо сохранить ее в виде файла на диске, выбрав пункт меню File/Save As... в окне схемы и указав папку и имя файла. Следует иметь в виду, что имя файла не должно превышать 32 символов, должно начинаться с буквы и не может содержать символы кириллицы и спецсимволы. Это же требование относится и к пути файла (к тем папкам, в которых сохраняется файл). При последующем редактировании схемы можно пользоваться пунктом меню Fille/Save . При повторных запусках программы SIMULINK загрузка схемы осуществляется с помощью меню File/Open... в окне обозревателя библиотеки или из основного окна MATLAB.

ВВЕДЕНИЕ

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

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

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

ЛАБОРАТОРНАЯ РАБОТА № 1 ИЗУЧЕНИЕ СИСТЕМЫ ИМИТАЦИОННОГО МОДЕЛИРОВАНИЯ

MATLAB - SIMULINK

Цель работы

Ознакомление с системой MATLAB, приобретение практических навыков исследования систем автоматического управления (САУ) с помощью приложения MATLAB – системой имитационного моделирования Simulink.

1.1. Основные сведения

MATLAB - это язык программирования сверхвысокого уровня, предназначенный для технических вычислений. Он включает в себя вычисления, визуализацию и программирование в легкой для использования среде, где задачи и решения представлены в общей математической форме. MATLAB является интерактивной системой, в которой основные элементы данных представлены массивами, не требующими предварительного задания размерности. Это позволяет решать множество технических задач, особенно в матричной и векторной форме, а также писать программу на традиционных скалярных языках, таких как Си или Фортран.

Название "MATLAB" произошло от сокращения слов "matrix laboratory". Система MATLAB состоит из пяти основных частей:

1. Язык программирования MATLAB. Это матрично-массивный язык высокого уровня с управлением состоянием, функциями, структурами данных, входом/выходом, и объектно-ориентированным программированием.

2. Рабочая среда MATLAB. Это графический интерфейс, с которым работает пользователь. Включает рабочий стол MATLAB, командное окно, редактор и отладчик файлов MATLAB, справочный броузер.

3. Графическая система MATLAB. Содержит команды высокого уровня для двухмерного и трехмерного представления данных, обработки изображений, анимации. Также содержит набор команд низкого уровня, позволяющих пользователю построить собственный интерфейс.

4. Библиотека математических функций MATLAB. Содержит набор вычислительных алгоритмов, начиная с элементарных арифметических функций (сложение/вычитание, тригонометрические функции) и заканчивая сложными функциями, такими как обращение матриц и преобразования Фурье.

5. Интерфейс прикладных программ MATLAB. Эта библиотека позволяет писать программы на языках Си и Фортран, взаимодействующие с MATLAB. Включает в себя устройства вызова из MATLAB (динамической связи), вызова MATLAB как вычислительного механизма, и для работы с MAT-файлами.

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

1.2. Порядок выполнения работы

1. Включите компьютер.

2. Находясь в ОС Windows, запустите MATLAB двойным щелчком левой кнопки "мыши" по соответствующей иконке на рабочем столе. В результате открывается основное окно MATLAB.

3. Для запуска Simulink нажмите в основном окне MATLAB на кнопку с всплывающей подписью Simulink Library Browser . В результате

открывается окно библиотеки блоков Simulink.

4. Для построения новой модели в окне Simulink Library Browser нажмите на кнопку с всплывающей подписьюNew model . Программа откроет

окно с "чистым листом" без имени (untitled). Для открытия существующей модели в окне библиотеки блоков или в командном окне нажмите на кнопку с всплывающей подписью Open a model , и в появившемся окне выберите

требуемый файл (файлы, созданные в Simulink, имеют расширение .mdl ).

5. Создайте структурную схему, приведенную на рис. 1.1 и задайте указанные преподавателем значения ее параметров.

Рис. 1.1. Структурная схема (а) и модель в Simulink (б) исследуемой системы

Набор структурной схемы осуществляется путем выбора требуемых блоков в окне Simulink Library Browser и перетаскивания их при

помощи мыши в окно, где осуществляется построение модели. Для удобства пользования все блоки разделены на группы. В данной лабораторной работе использованы блоки группы Simulink с подгруппамиContinuous

(непрерывные звенья), Math Operations (математические блоки),Sinks (приемники данных),Sources (источники сигналов). Имена блоков указаны

на рис. 1.1,б.

Редактирование параметров блока осуществляется двойным щелчком левой кнопки мыши по требуемому блоку. При этом открывается окно параметров блока, вид которого зависит от вида блока.

Для соединения блоков достаточно указать курсором мыши на выход блока-источника сигнала и затем при нажатой кнопке мыши протянуть соединение на вход блока-приемника сигнала. Соединение блоков можно также осуществлять выделением левой кнопкой мыши требуемых блоков при нажатой клавишеCtrl . Для создания отвода необходимо указать правой

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

Для вывода результатов моделирования к выходам требуемых блоков необходимо присоединить блоки-приемники сигналов (см. п. 9).

Удаление ненужных блоков и соединений происходит путем выделения соответствующего объекта и нажатия клавиши Delete клавиатуры.

Дополнительную информацию по построению моделей, а также по работе с MATLAB в целом можно найти в меню Help Desk , а также в .

6. Сохраните созданную модель.

7. Задайте параметры для процесса численного интегрирования модели. Для этого в меню окна модели откройте Simulation -Parameters . В

появившемся окне выставляются указанные преподавателем время начала и окончания расчета, точность расчета и метод.

8. Рассчитайте полученную модель. Запуск расчета (интегрирования) модели в меню Simulation кнопкойStart . Процесс расчета модели

отображается прогрессивной шкалой в нижней части окна. При необходимости

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

9. По окончании расчета получите требуемые результаты с помощью блоков-приемников данных. Просмотр и печать графиков переходных процессов осуществляется с помощью блокаScope . Просмотр численных

значений переменной в ходе моделирования осуществляется блоком Display .

Для редактирования полученных графиков или сохранения их в формате графического файла, необходима установка выходных блоков То Workspace .

В параметрах этих блоков указывается имя выводимой переменной Variable name и формат данныхSave format (Array) . Далее в командном окне MATLAB или редакторе М-файлов, вызываемого командой менюNew M- file , записывается команда построения графиков. В простейшем случае она

имеет вид: plot(x,y);

где x ,y – имена выводимых переменных.

При построении нескольких графиков в одних осях команда примет вид: plot(x,y,x,z,..);

где x – имя общей (независимой) переменной,y,z – зависимые переменные.

Примечание: команды, набранные в командной строке, выполняются после нажатия клавиши Enter . Для выполнения команд, набранных в редакторе М-

Вывод нескольких переменных в один блок-приемник данных, осуществляется с помощью блока объединения сигналов в общую шинуMux .

Переменная времени в MATLAB обозначена как tout . После сохранения (редактор генерирует файл с расширением.m ) и запуска программы (командаRun менюTools редактора), последняя строит график в окнеFigure ,

который может быть обработан имеющимися в меню окна инструментами. Сохранение графика происходит либо как файла с расширением .fig (команда

Save менюFile окна графика), в этом случае он будет доступен только из MATLAB, либо как графического файла с расширениями.bmp ,.jpg и прочими по выбору (командаExport менюFile окна графика). В последнем

случае график может быть вставлен в документ отчета по лабораторной работе, написанного, например, в редакторе Word.

10. Для построения логарифмических частотных и амплитудно-фазовых частотных характеристик (ЛЧХ и АФЧХ) по полиному передаточной функции необходимо в командном окне или в М-файле ввести соответственно команды

знаменателя передаточной функции системы, записываемые через пробел. В

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

ЛЧХ колебательного звена с передаточной функции W (p ) = 0,01 p 2 + 5 0,2 р + 1 ,

необходимо набрать следующую команду: bode(tf(5,));

Для построения частотных характеристик по модели, в Simulink с помощью блоков In иOut необходимо указать соответственно вход и выход

линеаризация исследуемой модели и построение её ЛЧХ или АФЧХ. Синтаксис

Linmod("имя файла модели")

bode(A,B,C,D) или nyquist(A,B,C,D) grid

где A ,B ,C ,D – матрицы пространства состояний системы, полученные при выполнении командыlinmod ;grid – команда нанесения на график координатной сетки.

11. После окончания работы выйдите из MATLAB, закрыв все окна.

1.3. Содержание отчета по работе

1. Цель работы.

2. Схема исследованной системы с числовыми значениями параметров.

3. Экспериментально полученные графики переходного процесса, ЛЧХ, АФЧХ.

4. Ответы на контрольные вопросы.

1.4. Контрольные вопросы

1. Что из себя представляет система MATLAB и какова область его применения?

2. С какими видами моделей может работать Simulink?

3. Каким образом осуществляется построение структурной схемы в Simulink?

4. Как в Simulink осуществляется ввод и редактирование параметров блоков?

5. Как в MATLAB осуществляется построение ЛЧХ и АФЧХ системы?

6. Как осуществляется печать графиков переходных процессов?

ЛАБОРАТОРНАЯ РАБОТА № 2 ИССЛЕДОВАНИЕ ОСНОВНЫХ ХАРАКТЕРИСТИК ТИПОВЫХ

ДИНАМИЧЕСКИХ ЗВЕНЬЕВ

Цель работы Исследование переходной функции, амплитудно-фазовых и

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

2.1. Основные сведения Типовыми динамическими звеньями САУ являются звенья, процессы в

которых описываются линейными дифференциальными уравнениями первого и второго порядков с постоянными коэффициентами и в общем случае имеют следующий вид:

d 2 y

a0 y= b2

d 2 x

B0 x,

где x (t ) ,y (t ) - соответственно входной и выходной сигналы звена;a 0 ,a 1 ,a 2 ;b 0 ,b 1 ,b 2 - постоянные коэффициенты.

Данное уравнение дает возможность определить передаточную функцию типового звена в виде

W (p )=

y (p )

b p2 + b p+ b

x (p )

a p2

a p +

Анализ возможных вариантов задания коэффициентов передаточной функции (2.2) показывает, что к типовым звеньям нулевого и первого порядка,

т.е. к звеньям, описываемым уравнениями вида (2.1) при a 2 = b 2 = 0 , относятся следующие

1. Безынерционное звено (при a 1 = b 1 = 0)

W (p) = b 0 = k. a0

2. Дифференцирующее звено (при a 1 = b 0 = 0)

W (p )=

b 1 p =

kp ,

где k =

3. Форсирующее звено (при a 1 =

W (p )=

b1 p+

b 0 =

k (Tp + 1) , гдеk =

b 1 .

4. Интегрирующее звено (при a 0

B 1 =0)

W (p )=

где k =

b 0 .

Апериодическое звено первого порядка (при b 1 = 0)

W (p )=

где k =

a p +

Tp + 1

Реальное дифференцирующее звено (при b 0 = 0)

W (p )=

где k =

a p +

Tp + 1

Из типовых

звеньев второго

наибольшее применение нашло

колебательное звено при b 1 =b 2 = 0 с передаточной функцией следующего вида:

W (p )=

Где k =

; T =

; ξ =

a p + a

2ξ Tp +1

Рассмотренная совокупность типовых динамических звеньев первого и второго порядков оказывается достаточной для построения структуры практически любой линейной САУ. При этом сложные реальные звенья могут заменяться последовательным или параллельным соединением нескольких типовых звеньев.

Временными характеристиками являются взаимосвязанные переходная h (t ) и весовая ω(t ) функции, представляющие собой реакции исследуемых звеньев на типовые воздействия в виде единичной ступенчатой функции 1(t ) и δ –функции δ(t ) . При этом переходная функция дает возможность оценить устойчивость и качество процессов управления, происходящих в исследуемых звеньях при скачкообразных входных воздействиях.

Частотные характеристики, основанные на использовании преобразования Фурье, позволяют оценить происходящие в звеньях процессы управления не только при скачкообразных, но и при любых других входных сигналах, действующих в реальных условиях.

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

Для отдельной гармоники на входе линейного звена x (t ) = x 0 (ω) × e j ω t

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

y (t ) = y 0 (ω ) × e j (ωt + ϕ(ω)) .

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

Subsystem – подсистемы.

Подсистема это фрагмент Simulink -модели, оформленный в виде отдельного блока. Использование подсистем при составлении модели имеет следующие положительные стороны:

  1. Уменьшает количество одновременно отображаемых блоков на экране, что облегчает восприятие модели (в идеале модель полностью должна отображаться на экране монитора).
  2. Позволяет создавать и отлаживать фрагменты модели по отдельности, что повышает технологичность создания модели.
  3. Позволяет создавать собственные библиотеки.
  4. Дает возможность синхронизации параллельно работающих подсистем.
  5. Позволяет включать в модель собственные справочные средства.
  6. Дает возможность связывать подсистему с каким-либо m -файлом, обеспечивая запуск этого файла при открытии подсистемы (нестандартное открытие подсистемы).

Использование подсистем и механизма их блоков позволяет создавать блоки, не уступающие стандартным по своему оформлению (собственное окно параметров блока, пиктограмма, справка и т.п.).

Количество подсистем в модели не ограничено, кроме того подсистемы могут включать в себя другие подсистемы. Уровень вложенности подсистем друг в друга также не ограничен.

Связь подсистемы с моделью (или подсистемой верхнего уровня иерархии) выполняется с помощью входных (блок Inport библиотеки Sources ) и выходных (блок Outport библиотеки Sinks ) портов. Добавление в подсистему входного или выходного порта приводит к появлению на изображении подсистемы метки порта, с помощью которой внешние сигналы передаются внутрь подсистемы или выводятся в основную модель. Переименование блоков Inport или Outport позволяет изменить метки портов, отображаемые на пиктограмме подсистемы со стандартных (In и Out ) на те, которые нужны пользователю.

Подсистемы могут быть виртуальными (Subsystem ) и монолитными (Atomic Subsystem ). Отличие этих видов подсистем заключается в порядке выполнения блоков во время расчета. Если подсистема является виртуальной, то Simulink игнорирует наличие границ отделяющих такую подсистему от модели при определении порядка расчета блоков. Иными словами в виртуальной системе сначала могут быть рассчитаны выходные сигналы нескольких блоков, затем выполнен расчет блоков в основной модели, а затем вновь выполнен расчет блоков входящих в подсистему. Монолитная подсистема считается единым (неделимым) блоком и Simulink выполняет расчет всех блоков в такой подсистеме, не переключаясь на расчеты других блоков в основной модели. Изображение монолитной подсистемы имеет более толстую рамку по сравнению с виртуальной подсистемой.

Подсистемы могут быть также управляемыми или неуправляемыми. Управляемые подсистемы всегда являются монолитными. Управляемые подсистемы имеют дополнительные (управляющие) входы, на которые поступают сигналы активизирующие данную подсистему. Управляющие входы расположены сверху или снизу подсистемы. Когда управляемая подсистема активизирована – она выполняет вычисления. В том случае если управляемая подсистема пассивна, то она не выполняет вычисления, а значения сигналов на ее выходах определяются настройками выходных портов.

Для создания в модели подсистемы можно воспользоваться двумя способами:

  1. Скопировать нужную подсистему из библиотеки Subsystem в модель.
  2. Выделить с помощью мыши нужный фрагмент модели и выполнить команду Create Subsystem из меню Edit окна модели. Выделенный фрагмент будет помещен в подсистему, а входы и выходы подсистемы будут снабжены соответствующими портами. Данный способ позволяет создать виртуальную неуправляемую подсистему. В дальнейшем, если это необходимо, можно сделать подсистему монолитной, изменив ее параметры, или управляемой, добавив управляющий элемент из нужной подсистемы находящейся в библиотеке. Отменить группировку блоков в подсистему можно командой Undo .

Рис. 9.9.1 иллюстрирует процесс создания подсистемы вторым способом. На рис. 9.9.2 показан результат этого процесса. В примере использована модель управляемого функционального генератора.

Рис. 9.9.1 Создание подсистемы

Рис. 9.9.2 Модель, использующая подсистему

Пример на рис. 9.9.4 отличается от предыдущего настройкой блока Enable подсистемы. В данном примере параметр States when enabling блока Enable имеет значение reset . На временных диаграммах видно, что при выключении подсистемы происходит ее сброс до начального состояния.

Рис. 9.9.4 Модель, использующая E -подсистему

Для моделирования поведения динамических систем, к которым относятся экипажи подвижного состава, используются ЭВМ. Существует большое количество алгоритмических языков, на которых может быть выполнено решение задачи. Выбор того или иного языка программирования зависит от многих условий. Часто решающую роль оказывает удобство программирования, наличие проверенных математических методов, легкость представления результатов моделирования. Такими особенностями обладает пакет MATLAB, содержащий в своем составе инструмент визуального моделирования SIMULINK.

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

Подготовка задачи для моделирования в SIMULINK проводится в следующей последовательности:

Выбор расчетной схемы.
Составление системы уравнений, описывающих исследуемый процесс.
Приведение системы к виду, удобному для решения (разрешение относительно старших производных).
Определение начальных условий.
Составление структурной схемы.
Моделирование возмущающих функций.
Определение исходных данных.
Составление модели в среде SIMULINK.
Включение средств визуализации.
Тестирование.
Решение.
Анализ результатов.
Отчет.

Ниже рассмотрены примеры моделирования в среде SIMULINK на простых примерах.

Вертикальные колебания экипажа ЭПС

Математическая модель вынужденных колебаний двухмассовой системы

Для исследования влияния основных параметров экипажа на вертикальные колебания используют упрощенную модель с двумя степенями свободы, в которой две массы связаны упругими и диссипативными связями (рис.1). Такая модель описывает вертикальные колебания рельсовых экипажей с двухъярусным подвешиванием: магистральных локомотивов (электровозов и тепловозов) и пассажирских вагонов.

Рис.1. Расчетная схема

Уравнения движения рассматриваемой системы при наличии возмущения со стороны пути описывается следующими дифференциальными уравнениями:

В уравнениях (1) введены следующие обозначения:

m 1 – обрессоренная масса тележки;

m 2 – масса кузова, приведенная к одной тележке;

с 1 , b 1 – жесткость и демпфирование в первом ярусе подвешивания;

с 2 , b 2 – жесткость и демпфирование во втором ярусе подвешивания;

h (t ) – возмущение со стороны пути;

– обобщенные координаты и их производные по времени:

Преобразуем уравнения движения к виду:

В качестве возмущения используем неровность проф. Н.Н.Кудрявцева. Неровность хорошо описывает изменение прогиба вдоль рельсового звена. Модель неровности представляет собой сумму полуволны синусоиды частотой w и трех полуволн синусоиды частотой 3w , уложенные на длине рельсового звена L . Амплитуды неровностей A 1 A 2 выбираются в зависимости от типа и состояния пути.

Частота возмущения;

V - скорость движения.

Построим описанную выше модель в среде SIMULINK.

Модель вынужденных колебаний двухмассовой системы в системе Simulink

При запуске SIMULINK открываются два окна:

Пустое рабочее окно – заготовка для создания новой модели (untitled );

Окно библиотеки SIMULINK, содержащей наборы основных разделов (Library : simulink ).

Рис. 2. Пример начала работы в SIMULINK

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

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

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

Построение модели каждого уравнения начинаем с сумматора, имеющего столько входов, сколько членов содержит правая часть уравнение. Для первого уравнения это сумматор Sum 1 (рис. 3). Входы сумматора могут иметь как положительное значение, так и отрицательное (рис. 4). Используемые блоки рекомендуется именовать для облегчения последующей проверки и анализа.

Рис. 11. Подсистема, описывающая колебания первого тела

Рис. 12. Подсистема, описывающая колебания второго тела

Рис. 13. Настройка запускающей программы

Подпрограмма задания начальных значений – обычный m -файл. Для данного примера в файле MDYN 21. m задаются следующие значения:

%MDYN21
%Start programm
%
echo on
A1=0.005;
A2=0.002;
L=25;
p=pi/L;
M1=8.82;
C1=7000;
B1=60;
M2=25.8;
C2=2600;
B2=125;
echo off
x0 = ;
=sim("mdyn21",10,simset("InitialState",x0));

В приведенном тексте подпрограммы знак "точка с запятой" в конце строки запрещает вывод значений переменных.

Для отображения введенных данных применены операторы «echo on – echo off ». Выделенный фрагмент подпрограммы выводится в управляющее окно MATLAB (рис14).

Для изменения исходных данных используется текстовый редактор.

Запуск моделирующей программы в этом примере осуществляется двойным нажатием на блок START .


Рис. 14. Вывод в окне управляющей программы MATLAB

Добавим в модель информационный блок, содержащий краткое описание модели – блок Info , обозначенный символом «? ». Содержание блока показано на рис. 15.

Рис. 15. Информационный блок

Для отображения фазовой диаграммы введем блок отображения XY _ Graph , обозначенный на блок-схеме "фазовая диаграмма ". Результаты вывода показаны на рис. 16.

Рис. 16. Результаты моделирования – фазовая диаграмма

Использование подпрограмм пользователя

Для расширения возможностей моделирования в среде SIMULINK предусмотрена возможность подключения подпрограмм пользователя написанных на языке MATLAB. В предыдущей модели заменим функции неровности модулем "MATLAB Function " - "Неровность ". Модель определяет ссылку на подпрограмму пользователя, в которой описана функция неровности от пути и ее производная (рис. 17). Такой подход позволяет использовать проверенные модули как при программировании в пакете MATLAB, так и при моделировании в среде SIMULINK.

Рис. 17. Модель и настройка блока функции MATLAB

Рассмотренные примеры не претендуют на полноту описания возможностей пакета MATLAB и среду визуального моделирования SIMULINK. Для изучения рекомендуем специальную литературу и руководство пользователя.

Рубан В.Г. © 2000