Выводы.
Отчет оформляется на листах формата А4, допускается рукописное, печатное или комбинированное оформление.
Колебательное звено: передаточная функция, характеристическое уравнение, полюсы, названия и взаимосвязь параметров.
Текст программы: назначение переменной config.
Текст программы: из каких соображений выбирается шаг моделирования и время моделирования?
Модель в Simulink: возможные способы организации генератора.
Модель в Simulink: создание усилителя с ограничением и зоной нечувствительности из стандартных блоков библиотеки Nonlinear.
Модель в Simulink: создание трехпозиционного реле без гистерезиса из стандартных блоков библиотеки Nonlinear. Как организовать трехпозиционное реле с гистерезисом?
В работе исследуется нелинейная система с нелинейным элементом (идеальным двухпозиционным реле или реле с гистерезисом) и линейной частью второго порядка (двумя интеграторами с коэффициентом усиления или инерционным звеном и интегратором).
На рис. 2.1 представлена структурная схема системы со следующими обозначениями: u – входной сигнал системы; e – сигнал на входе нелинейного элемента (НЭ); g – сигнал на выходе НЭ; x – выходной сигнал системы; y – его производная (скорость изменения);
– коэффициент обратной связи по скорости ( ); k – статический передаточный коэффициент; c, b – параметры НЭ; – передаточная функция линейной части.Рис. 2.1. Структурная схема системы
Целью работы является изучение процессов в данной системе на фазовой плоскости и во временной области при помощи пакета математического моделирования Matlab и его расширения – пакета моделирования динамических систем Simulink.
Параметры НЭ и линейной части (ЛЧ) следует задавать в соответствии с вариантом, приведённым в табл. 2.1. Номер варианта соответствует номеру бригады.
Таблица 2.1 Значения параметров нелинейного элемента и линейной части
Параметры | Номер варианта | ||||||||||||||
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | |
c | 1 | 1.5 | 2 | 2.5 | 3 | 3.5 | 4 | 4.5 | 5 | 5.5 | 6 | 6.5 | 7 | 7.5 | 8 |
b | 0.1 | 0.2 | 0.25 | 0.25 | 0.3 | 0.35 | 0.4 | 0.5 | 0.5 | 0.6 | 0.8 | 1 | 1.2 | 1.3 | 1.5 |
k | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
T | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 1.0 | 1.1 | 1.2 | 1.3 | 1.4 | 1.5 |
В процессе подготовки к данной лабораторной работе необходимо эскизно с построением линий переключения изобразить фазовые портреты для четырех вариантов конфигурации системы, изображенной на рис. 2.1:
1) идеальное двухпозиционное реле + линейная часть
;2) идеальное двухпозиционное реле + линейная часть
;3) двухпозиционное реле с гистерезисом + линейная часть
;4) двухпозиционное реле с гистерезисом + линейная часть
;Для каждой конфигурации проанализировать, при каких
возникает скользящий режим.Подготовить текст программы (m‑файл) и модель в Simulink (mdl‑файл). Как и в предыдущей работе, удобно связать их друг с другом: переменные, определенные в m‑файле, используются при задании параметров блоков модели, модель запускается на выполнение также командой из m‑файла, а при проведении моделирования в Simulink результаты записываются в рабочую область памяти (Workspace), откуда считываются при построении итоговых графиков командами из m‑файла. Пример m‑файла (FP_prog.m) приведен ниже.
%Исследование нелинейной системы методом фазовой плоскости (файл FP_prog.m)
%Подключаемый файл: FP_mod.mdl.
%Используемые обозначениЯ: НЭ – нелинейный элемент, ЛЧ – линейнаЯ часть.
%Очистка всех переменных в памЯти и закрытие всех предыдущих рисунков
clearall
closeall
%Задание значениЯ переменной, определЯющей положение переключателЯ
%конфигурации нелинейной системы в файле FP_mod.mdl
%1 – НЭ-идеальное двухпозиционное реле, ЛЧ – k/p^2
%2 – НЭ-идеальное двухпозиционное реле, ЛЧ – k/[(Tp+1) p]
%3 – НЭ-двухпозиционное реле с гистерезисом, ЛЧ – k/p^2
%4 – НЭ – двухпозиционное реле с гистерезисом, ЛЧ – k/[(Tp+1) p]
config = 1;
%Определение значений строковых переменных nlin и lin
switch config
case 1,
nlin = 'ид. 2‑хпоз. реле'; lin = 'k/p^2';
case 2,
nlin = 'ид. 2‑хпоз. реле'; lin = 'k/[(Tp+1) p]';
case 3,
nlin = '2‑х поз. реле с гист.'; lin = 'k/p^2';
case 4,
nlin = '2‑х поз. реле с гист.'; lin = 'k/[(Tp+1) p]';
end
%времЯ моделированиЯ, c
t_end = 20;
%ограничение шага моделированиЯ
step_max = 0.005;
%параметры нелинейного элемента
b = 0.1;
c = 1;
%параметры линейной части
k = 1;
T = 0.4;
%коэффициент обратной свЯзи по скорости
alfa = 0.0;
%Начальные условиЯ:
%задаваЯ различные начальные условиЯ длЯ системы, получаем набор
%фазовых траекторий, т.е. фазовый портрет в системе координат Oxy;
%множество начальных условий по х: [x0_min, x0_max];
%множество начальных условий по y: [y0_min, y0_max];
%при переборе начальных условий движемсЯ снизу вверх с шагом dy
%и слева направо с шагом dx
%Назначение диапазонов изменениЯ начальных условий
x0_min = -1.5;
y0_min = -1.5;
x0_max = 1.5;
y0_max = 1.5;
%Шаг при переборе начальных условий
dx = 0.8;
dy = 0.9;
%Исходные значениЯ начальных условий
x0 = x0_min;
y0 = y0_min;
%Задание цветовой гаммы длЯ рисованиЯ фазовых траекторий
%'r' – red, красный;
%'g' – green, зеленый;
%'c' – cyan, голубой;
%'m' – magenta, пурпурный;
%'k' – black, черный;
%'y' – yellow, желтый;
%'b' – blue, синий
color = ['r';'g';'c';'m';'k'];%многоцветнаЯ картинка
%color = 'r'; %одноцветнаЯ картинка
%Подготовка рисунка с фазовым портретом
figure(1)
xlabel('x')
ylabel('y')
title(['Фазовыйпортрет. НЭ– ', nlin, ', b=', num2str(b), ', c=', num2str(c), '; ЛЧ– ',…
lin, ', k=', num2str(k), ', T=', num2str(T), '; alfa=', num2str(alfa)])
hold on
grid on
%вызовмодели
open_system ('FP_mod.mdl');
%начальнаЯ установка номера цвета
i=0;
%перебор начальных условий; при каждом варианте начальных условий запускаетсЯ
%моделирование, а после его окончаниЯ строитсЯ фазоваЯ траекториЯ
while x0 <= x0_max
i = i+1; %номертекущегоцвета
if i == length(color)+1
i=1;
end
x0_ = x0; %запоминание значений НУ
y0_ = y0; %длЯ текущей фазовой траектории
sim ('FP_mod'); %запуск моделированиЯ
gr1 = plot (x, y); %x и y – массивы из workspace
set (gr1, {'Color'}, {color(i)});
y0 = y0 + dy;
if y0 > y0_max
y0 = y0_min;
x0 = x0 + dx;
end
end
%рисование линии / линий переключениЯ
y1 = [-2.5; 2.5];
if (config == 1) | (config == 2)
x1 = – alfa.*y1; %уравнение линии переключениЯ, НЭ – ид. 2‑х поз. реле
gr2 = plot (x1, y1);
set (gr2, {'Color'}, {'b'});
else
x11 = – alfa.* y1 + b; %уравнениЯ линий
x12 = – alfa.* y1 – b; %переключениЯ, НЭ – 2‑х поз. реле с гист.
gr2 = plot (x11, y1);
set (gr2, {'Color'}, {'b'});
gr2 = plot (x12, y1);
set (gr2, {'Color'}, {'b'});
end
%построение процессов во времени, соответствующих
%последней фазовой траектории
figure(2)
xlabel('t, cек')
ylabel ('x, y')
title(['x(t) и y(t). НЭ– ', nlin, ', b=', num2str(b), ', c=', num2str(c), '; ЛЧ– ',…
lin, ', k=', num2str(k), ', T=', num2str(T), '; alfa=', num2str(alfa),…
'; x0=', num2str (x0_), '; y0=', num2str (y0_)])
hold on
grid on
gr3 = plot (time, x);
set (gr3, {'Color'}, {'r'});
gr4 = plot (time, y);
set (gr4, {'Color'}, {'b'});
legend ('x(t)', 'y(t)', 4);
Все команды Matlab, использованные при составлении данной программы, описаны в приложении.
В m‑файле необходимо задать значения констант – параметров нелинейностей и линейной части, значение коэффициента обратной связи по скорости, задать шаг и время моделирования, диапазоны изменения начальных условий для сигналов х и у, шаг при их переборе и их исходные значения, а также значение переменной config, управляющей конфигурацией модели.
В процессе выполнения m‑файла происходит подготовка графического окна для вывода фазового портрета, вызов и циклический запуск модели нелинейной системы при различных начальных условиях по x и y. По результатам моделирования строятся фазовый портрет системы и временные процессы х(t) и y(t), соответствующие последней из воспроизведенных на фазовом портрете фазовых траекторий. Для получения рисунка с изображением только одной фазовой траектории необходимо задать одинаковые значения для границ изменения начальных условий по х и у.
При составлении модели в Simulink используются элементы библиотек Simulink (Math, Nonlinear, Sinks и Sources) и Simulink Extras (Additional Linear), доступные через Simulink Library Browser. Схема моделирования из файла-примера FP_mod.mdl представлена на рис. 2.2.
Интегрирующие и инерционные звенья с возможностью установки начальных условий по выходу находятся в дополнительной библиотеке Simulink- Simulink Extras\Additional Linear.