ЛР3_Scilab
.pdfТема 3. Моделирование динамических процессов
спомощью пакета Scilab “Xcos”
3.1.Краткие сведения о подсистеме Scilab Xcos
Xcos входит в состав семейства программных продуктов системы Scilab.
Подсистема Xcos служит для моделирования динамических процессов. Для пользователя это - конструктор, с помощью которого блоки, соответствующие отдельным
элементам динамической системы, объединяются в единое целое и проводится исследование поведения элементов и/или системы в целом во времени.
3.1.1. Запуск подсистемы XCOS
Рисунок 1
Осуществляется после предварительного запуска системы Scilab одним из трех способов:
-нажатием кнопки Xcos на панели инструментов системы Scilab (рисунок 1);
-в строке командного окна Scilab набрать Xcos и нажать ENTER;
-выполнить опцию OPEN в меню FILE и открыть файл модели (mdl-файл) – при запуске
уже готовой и отлаженной модели.
Рисунок 2
При применении первых двух способов открывается окно обозревателя библиотеки блоков (рисунок 2).
Библиотека блоков Xcos – это набор визуальных объектов, при помощи которых можно, соединяя модули линиями функциональной связи, составлять блок-схему любого
устройства.
Библиотека разбита на ряд разделов, основные из них перечислены ниже (по алфавиту):
Continuous – блоки аналоговых элементов;
Discontinuities – блоки нелинейных элементов;
Discrete - блоки дискретных элементов;
Math Operations – блоки элементов, определяющих математические операции;
Signal & Routing – блоки маршрутизации сигналов;
Sinks – блоки приема и отображения сигналов;
Sources – блоки источников сигналов.
Блоки, входящие в раздел Sources (Источники) предназначены для формирования сигналов. Все блоки - источники имеют по одному выходу и не имеют входов.
Блоки, входящие в раздел Sinks (Приемники) предназначены для приема сигналов, они
имеют только входы и не имеют выходов.
В разделе Discrete (Дискретные элементы) содержатся блоки, с помощью которых может быть описано поведение дискретных систем.
При выборе соответствующего раздела библиотеки его содержимое отображается в правой части окна (рисунок 3).
3.1.2. Создание модели
Для создания модели в среде Xcos необходимо выполнить последовательно ряд действий.
Рисунок 4
Рисунок 5
1.Создать новый файл модели с помощью команды File/New/Model или
соответствующей кнопки на панели инструментов . Вновь созданное окно имеет вид, представленный на рисунке 4.
2.Расположить блоки в окне модели. Для этого открыть соответствующий раздел библиотеки блоков и “перетащить“ нужный блок при помощи левой клавиши мыши. На рисунке 5 показано окно модели, содержащее блоки.
3.Далее, если требуется, изменить параметры блока, установленные по умолчанию. Для этого, указав на изображение блока, дважды щелкнуть левой клавишей мыши: откроется окно
параметров данного блока.
Рисунок 6
Пример для блока передаточной функции Transfer Fcn приведен на рисунке 6. 4. После установки на схеме всех блоков требуется их соединение.
4.1Первый способ:
-указать на “выход” блока;
-нажать левую клавишу, и, не отпуская, провести линию ко “входу” другого блока;
-отпустить клавишу.
Примечание. Если соединение не создано, то линия связи будет пунктирной и иметь красный цвет. В случае правильного соединения линия связи будет сплошной.
4.2Второй (альтернативный) способ соединения:
-выделить блок-источник;
-затем нажать клавишу Ctrl;
-выделить блок-приемник.
Для создания точки разветвления в соединительной линии:
-подвести курсор к предполагаемому узлу;
-и, нажав правую клавишу, протянуть линию.
5. После составления расчетной схемы необходимо сохранить по команде File / Save
As.
При этом имя файла:
-может иметь произвольную длину;
-но должно начинаться с буквы;
-и содержать только алфавитно-цифровые символы латиницы и знаки
подчеркивания
3.1.3. Некоторые основные приемы подготовки и редактирования модели
3.1.3.1. Добавление текстовых надписей
Для повышения наглядности модели удобно использовать текстовые надписи. Для этого:
-указать мышью место надписи;
-дважды щелкнуть левой клавишей мыши.
Также можно изменить и подписи к блокам.
Для этого установить курсор в область надписи и щелкнуть левой клавишей мыши – в подписи появится курсор ввода.
3.1.3.2. Выделение объектов
Для выделения одного объекта:
Установить курсор на объекте Щелкнуть левой клавишей мыши Появятся маркеры по углам объекта.
Для выделения нескольких объектов:
Установить курсор вблизи объектов Нажать левую клавишу Удерживая ее,
перемещать мышь Появится пунктирная рамка Все охваченные рамкой объекты становятся выделенными.
3.1.3.3. Перемещение блоков и вставка блоков в соединение
Перемещение – обычным путем перетаскивания мышью. При этом соединение не разрывается, а просто сокращается или увеличивается по длине. В длинное соединение можно вставить новый блок. Такая вставка возможна лишь для блоков, имеющих один вход и один выход.
3.1.3.4. Форматирование объектов Используется для:
-управления отображением надписей и видом блоков;
-установки цвета линий и цвета фона блоков, а также всего окна;
-форматирования надписей;
-и др.
Осуществляется при помощи опций, вызываемым:
-либо при помощи контекстного меню (вызываемого нажатием правой клавиши);
-либо при помощи меню Format.
3.1.4. Установка параметров моделирования и его выполнение
Перед выполнением моделирования необходимо предварительно задать параметры. Задание параметров выполняется в панели управления меню Simulation / Simulation
Parameters.
Рисунок 7
Вид панели управления приведен на рисунке 7.
Окно настройки параметров моделирования имеет 4 вкладки:
Solver (Решатель) – для установки параметров моделирования.
Workspase I/O (Ввод/вывод данных в рабочую область) – для установки параметров обмена данными с рабочей областью Scilab.
Dianostics (Диагностика) – для выбора параметров диагностики.
Advanced (Дополнительно) – для установки дополнительных параметров.
Real-Time Workshop – для задания параметров “Мастерская реального времени”.
3.5.1. Установка параметров моделирования
Установка параметров моделирования выполняется с помощью элементов управления, размещенных на вкладке Solver, и они разделены на 3 группы.
Simulation time (интервал моделирования): задаются начальное (Start time) и конечное (Stop time) значения времени
Simulation options (параметры решателя): указывается метод интегрирования (Type), либо с фиксированным (Fixed-step), либо с переменным (Variable-step) шагом.
Можно выбрать один из следующих методов:
ode45 – одношаговые явные методы Рунге-Кутты 4-го и 5-го порядка;
ode23 – одношаговые явные методы Рунге-Кутты 2-го и 3-го порядка;
ode113 – многошаговый метод Адамса - Башворта – Мултона переменного порядка;
ode23t - метод трапеций с интерполяцией;
и др.
Величина шага интегрирования по умолчанию устанавливается системой автоматически (auto).
При выборе Fixed-step задать режим расчета (Mode): MultiTasking (многозадачный),
SinglTasking (однозадачный), Auto (автоматический выбор режима).
При выборе Variable-step задать три параметра: Max step size – максимальный шаг интегрирования, Min step size – минимальный шаг интегрирования, Initial step size –
начальное значение шага интегрирования.
Output options (параметры вывода).
Для данного параметра возможен выбор одного из трех вариантов:
Refine output (Скорректированный вывод) – позволяет изменять шаг регистрации модельного времени и тех сигналов, которые сохраняются в рабочей области Scilab с помощью блока To Workspase. При этом установка дискретности шага вывода
выполняется в строке редактирования Refine factor. По умолчанию Refine factor = 1, т.е. регистрация производится для каждого значения модельного времени. При задании Refine factor = k будет регистрироваться каждое k-ое значение сигналов.
Produce additional output (Дополнительный вывод) – обеспечивает
дополнительную регистрацию параметров модели в заданные моменты времени.
Produce specified output only (Формировать только заданный вывод) –
устанавливает вывод параметров модели только в заданные моменты времени, которые указываются в поле Output times.
3.5.2. Выполнение моделирования
Запуск моделирования выполняется с помощью пункта меню Simulation/Start или соответствующей кнопки на панели инструментов.
Процесс моделирования можно завершить досрочно, выбрав пункт меню Simulation/Stop или соответствующей кнопки на панели инструментов.
Моделирование также можно остановить (Simulation/Pause) и затем продолжить
(Simulation/Continue).
3.5.3. Завершение работы
Для завершения работы необходимо сохранить модель в файле, закрыть окно модели, окно обозревателя библиотеки блоков, а также командное окно системы Scilab.
3.2.Пример создания модели системы и выбор ее характеристик
3.2.1.Постановка задачи
Создать модель следящей системы, представленной на рисунке 8 ниже, и провести ее исследование. При этом оценить переходные процессы при задании на вход контура слежения синусоидального сигнала.
X |
|
|
|
|
U1 |
|
|
|
|
|
U2 |
|
U3 |
|
|
Y |
||
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
W1(S) |
|
|
W2(S) |
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
W3(S) |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок 8 |
|
|
|
|
|
|
W K exp( S ) ; W |
|
T1S 1 |
|
; W |
|
1 |
. K1 = 3 1/C; = 0.2 C; T1=0.6 C; T2=0.06 C. |
|||||||||||
|
|
|
|
|||||||||||||||
1 |
1 |
2 |
T2 S 1 |
3 |
S |
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Нелинейность – типа ”насыщение”.
Синусоидальный входной сигнал имеет вид: X=A SIN (2 F T + 0), A = 0.3, F=0.5 Гц,
3.2.2. Методика решения
3.2.2.1. Основные исходные данные
Создадим структурную схему для исследования системы. Для этого в нашем случае понадобятся следующие блоки:
- из раздела блоков M a t h O p e r a t i o n s (блоки элементов, определяющих
математические операции):
– блок Sum
;
-из раздела C o n t i n u o u s (блоки аналоговых элементов):
-блок Integral
- блок CLR – передаточная функция
;
- блок Delay (блок фиксированной задержки сигнала)
;
-из раздела D i s c o n t i n u i t i e s ( блоки нелинейных элементов):
-Saturation - нелинейность типа “насыщение”
;
-из раздела S o u r c e s (блоки источников сигналов):
-GENSIN - источник синусоидального сигнала
;
- Step_function - генератор ступенчатого сигнала
;
- Time - источник времени (формирует сигнал, величина которого на
каждом шаге равна текущему времени моделирования)
;
-из раздела S i n k s ( блоки приема и отображения сигналов):
-CScopeXY- осциллограф (построение графиков в функции времени,
позволяет наблюдать за изменением сигналов в процессе моделирования)
;
-CScope - графопостроитель (для построения графика значений одного
сигнала в функции другого, верхний вход – для аргумента Х, нижний – для функции Y)
;
- TOWS - блок записи в рабочую область Scilab (служит для записи данных, поступающих на вход блока в рабочую область системы Scilab)
|
|
; |
- |
из раздела S i g n a l |
& R o u t i n g (блоки маршрутизации сигналов): |
вектор) |
- Mux - |
мультиплексор (служит для объединения входных сигналов в |
|
|
.
3.2.2.2. Результат составления модели
Рисунок 9
Созданная расчетная модель исследуемой следящей системы имеет вид, представленный на рисунке 9.
Как следует из рассмотрения рисунка, для анализа сигналов в процессе моделирования выходы ряда элементов снабжены блокам - приемниками Scope (осциллографами). При этом
для сравнения сигналов на входе и выходе элементов предварительно эти сигналы объединены в вектор при помощи мультиплексора.
3.2.3. Результаты моделирования
Ниже представлены сигналы регистрируемые на осциллографах Scope: - на входе системы x и ошибки слежения (рисунок 10)
Рисунок 10
- на входе и выходе блока задержки (рисунок 11)
Рисунок 11
-на входе и выходе блока нелинейности (рисунок 12)
Рисунок 12