Лаб №7
.docxМИНОБРНАУКИ РОССИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ
ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
«ЛЭТИ» ИМ. В.И. УЛЬЯНОВА (ЛЕНИНА)
Кафедра КСУ
отчет
по лабораторной работе №7
по дисциплине «Проектирование оптимальных систем управления»
Тема: Задача максимального быстродействия. Объект 3 порядка
Вариант 1
Санкт-Петербург
2018
Решение задачи
Задание: Необходимо определить набор моментов переключения знака управляющего воздействия, который необходим для перевода объекта из состояния [10 0 0] в состояние [0 0 0], а также определить момент выключения управления.
Модуль управляющего воздействия не может превосходить 1.
Кроме определения моментов переключения необходимо построить графики зависимости состояний объекта и управления от времени, соответствующие оптимальному переходу из начального состояния в конечное.
Вариант |
Объект управления |
1 |
Решение задач управления по критерию максимального быстродействия резко усложняется с повышением порядка дифференциальных уравнений, описывающих объект управления.
Основным методом решения задачи максимального быстродействия для объектов, описываемых дифференциальными уравнениями выше второго порядка, является поиск моментов переключения. Для случая объекта 3 порядка, собственные числа которого являются вещественными (вычисление корней ХП приводится дальше в тексте работы) задача поиска может быть сформулирована следующим образом:
Требуется найти такие значения параметров , и , где и моменты переключения знака управляющего воздействия, а - момент выключения управления, при которых расстояние между изображающей точкой, соответствующей моменту и требуемым конечным состоянием объекта, было бы минимальным. Практика выполнения расчетов показывает, что зависимость точности обеспечения заданных конечных условий от набора моментов переключения носит очень сложный характер и содержит большое количество локальных экстремумов. В таких условиях существенно возрастает значение выбора начальной точки поиска.
Одним из возможных способов определения начальной точки поиска является решение промежуточной задачи максимального быстродействия для усеченного объекта 2 порядка. Возможность рассмотрения усеченной задачи обусловливается тем, что уравнения для и не зависят от .
Объект управления описывается следующими уравнениями:
где , , - состояния объекта управления, - управляющее воздействие, - момент времени перевода объекта в конечное состояние.
Собственными числами матрицы А являются корни характеристического полинома:
Характеристический полином имеет следующие корни:
Собственные числа рассматриваемого объекта являются вещественными, следовательно, в соответствии с теоремой об интервалах, для управления этим объектом управляющее воздействие должно быть максимально по модулю и менять знак 2 раза.
Очевидно, также, что оптимальной траектории с заданными граничными условиями на плоскости соответствует замкнутая кривая, на которой находятся две точки переключения.
На первом этапе решения задачи выберем первую точку переключения произвольно =10. При выбранном значении момент второго переключения и момент выключения управления могут быть однозначно определены с помощью построения линии переключения в плоскости методом обратного времени.
Порядок определения моментов следующий:
-
производим построение линии переключения в фазовой плоскости методом обратного времени;
-
произвольно выбираем момент переключения t_1;
-
момент переключения t_2 подбираем так, чтобы соответствующая этому значению траектория прикоснулась к линии переключения (или была достаточно близка к ней);
-
момент выключения управления Т подбираем так, чтобы в этот момент времени фазовая траектория пришла в требуемую конченую точку x_2=0 x_3=0
Ниже представлены MATLAB скрипты, с помощью которых организуется подбор значений времени второго переключения и времени отключения управления.
Файл main7.m:
global t1 t2 T
% Построение линии переключения в плоскости x2x3 c
% использованием обратного времени
% окончание временного интервала выбрано с учетом масштаба ФТ
[t,x] = ode45('odefun7', [0 0.5], [0 0 0]);
figure
plot(x(:,2),x(:,3),'r')
hold on
% Построение траектории из нач. состояния в прямом времени
t1 = 6.06;
t2 = 7.549;
T = 15.0;
[t,x] = ode45('odefun7_2',[0 T],[10 0 0]);
plot(x(:,2),x(:,3),'b')
xlabel('x2')
ylabel('x3')
grid
text(-1.0,0.8);
text(-1.92,0.2);
% построение графиков переходных процессов
figure
plot(t, x(:,1), t, x(:,2),'.-.', t, x(:,3),'.')
grid
xlabel('t')
ylabel('x1,x2,x2')
legend('x1','x2','x3')
Файл odefun7.m:
function f = odefun7(t,x)
f = [-x(2);-x(3);x(2)+2*x(3)+1];
Файл odefun7_2.m:
function f = odefun7_2(t,x)
global t1 t2 T
if t < t1
u = -1;
elseif t < t2
u = 1;
else
u = -1;
end
if t > T
u = 0;
end
f = [x(2);x(3);-x(2)-2*x(3)+u];
Поскольку момент был выбран произвольно конечное состояние объекта управления по состоянию будет отличаться от заданного. Обозначим его .
На рисунке 1 представлена фазовая плоскость, на которой изображены линия переключения и траектория перехода объекта управления в точку промежуточного финиша [ 0 0]. На рисунке 2 изображены графики переходных процессов.
Рисунок 1 – Фазовая траектория перехода ОУ в промежуточное состояние
Рисунок 2 – Графики переходных процессов
Выполненные с помощью программы расчеты показали, что набор моментов переключения t1=6.06, t2=7.549 T=15.0 позволяет перевести объект в точку промежуточного финиша с координатами [-0.03587 -0.002721 -0.02901].
Полученный набор точек переключения и координаты точки промежуточного финиша использовались для уточнения набора точек переключения и координат точки промежуточного финиша методом поиска, реализованного в следующей программе.
Файл main7_2.m:
% переменная x используется для наблюдения за конечным положением ПС
global x
t0 = [6.06 7.549 15.0]
T = fminsearch('fmsfun7_2_1',t0)
Файл fmsfun7_2_1:
function f = fmsfun7_2_1(T)
global TT x
TT = T;
[t,x] = ode45('odefun7_2_1',[0 T(3)],[10 0 0]);
xf = [-0.03587 -0.002721 -0.02901];
f = (x(length(t),1)-xf(1))^2+(x(length(t),2)-xf(2))^2+(x(length(t),3)-xf(3))^2;
%plot(x(:,2),x(:,3),'b')
plot(t,x)
pause(0.1)
Файл odefun7_2_1.m:
function f = odefun7_2_1(t,x)
global TT
if t < TT(1)
u = -1;
elseif t < TT(2)
u = 1;
else
u = -1;
end
if t > TT(3)
u = 0;
end
f = [x(2);x(3);-x(2)-2*x(3)+u];
На первом шаге использовался набор точек переключения t0 = [6.06 7.549 15.0] и точка промежуточного финиша xf = [-0.03587 -0.002721 -0.02901] Результатом работы программы был уточненный набор точек переключения [6.06 7.549 15.0].
На втором шаге использовался набор точек переключения, полученный на первом шаге, и новые координаты точки промежуточного финиша . В результате второго шага получен набор точек переключения t = [6.06 7.5486 15.0000], обеспечивающий перевод объекта в конечную точку с приемлемой точностью.
На рисунке 3 изображены графики переходных процессов, соответствующие оптимальному переходу из начального состояния в конечное.
Рисунок 3 – Окончательные графики переходных процессов
Чтобы построить графики зависимости состояний объекта и управления от времени был написан m-файл:
Файл ut.m:
uu = [];
tt = [];
TT = [6.06 7.549 15.0]
for t = 0:0.01:10
if t < TT(1)
u = -1;
elseif t < TT(2)
u = 1;
else
u = -1;
end
if t > TT(3)
u = 0;
end
uu = [uu u];
tt = [tt t];
end
plot(tt,uu,'b')
grid on
xlabel('t'),ylabel('u');
График зависимости управляющего воздействия от времени представлен на рисунке 4.
Рисунок 4 - Зависимость управляющего воздействия от времени