Проектирование оптимальных систем управления

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 09.12.2015
Размер файла 186,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

1. Математическая формулировка цели управления

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

2. Методы решения оптимизационной задачи

В рамках настоящего курсового расчета в соответствии с заданным вариантом задания необходимо выполнить проектирование алгоритма управления тремя методами:

1. Два прямых метода:

1.1 Метод, основанный на теореме об N интервалах

1.2 Метод параметрической оптимизации линейного закона управления

2. Косвенный метод:

2.1 Метод стандартного полинома - биноминальный полином.

3. Описание объекта управления

Динамика судна, как и любого физического тела, подчиняется второму закону Ньютона. Силы и моменты, действующие на судно, в свою очередь, описываются законами гидродинамики. Соотношения между кинематическими параметрами движения ( - угол рыскания, - угловая скорость рыскания, - угол дрейфа, - угол перекладки руля) показаны на рисунке 1.

Рис. 1

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

(1)

где: - относительная скорость рыскания; - угол дрейфа; - угол перекладки руля.

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

(2)

Соотношение между параметрами (1) и (2) имеет вид (3).

(3)

Значение нормирующей частоты по формуле.

Параметры математической модели судна

В соответствии с полученным вариантом, математическая модель движения судна имеет следующие параметры:

Скорость хода V0=3.6 м/с, длина по ватерлинии L=36 м, коэффициенты математической модели: r21=-0.46, r31=3.04, q21=0.77, q31=-0.8, s21=-0.18, s31=-1.52.

4. Методы решения оптимизационной задачи

1. Метод, основанный на теореме об N интервалах

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

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

Для рассматриваемой метематической модели теорема об N интервалах применима, т.к. система уравнений, описывающих судно имеет вещественные корни.

Текст программы:

Файл main1_1 k.m

clear, clc

global T t1 t2 a11 a12 a21 a22 b11 b21

V0=3.6;

L=36;

r21=-0.46;

r31=3.04;

q21=0.77;

q31=-0.8;

s21=-0.18;

s31=-1.52;

W=V0/L;

a11=-r31*W;

a12=-q31*W^2;

a21=-r21;

a22=-q21*W;

b11=-s31*W^2;

b21=-s21*W;

[t, x]=ode45 ('odefun1_1revk', [0 3], [0 0 0]);

figure(1)

plot (x(:, 1), x(:, 2), 'r')

hold on

t1=10.9961;

t2=19.7213;

T=21.6689;

[t, x]=ode45 ('odefun1_1forvk', [0 T], [0 0 10*pi/180])

plot (x(:, 1), x(:, 2), 'b');

axis([-0.1 0.1 -0.5 0.5]);

xlabel('x1');

ylabel('x2');

legend ('t-', 't+');

grid;

figure(2);

for i=1:length(t)

if t(i)<t1

u(i)=-35*pi/180;

elseif t(i)<t2

u(i)=35*pi/180;

else

u(i)=-35*pi/180;

end

end

plot (t, (180/pi)*x(:, 1), 'b', t, (180/pi)*x(:, 2), 'g', t, (180/pi)*x(:, 3), 'r', t, (180/pi)*u, 'k')

xlabel('t');

grid;

legend ('x1', 'x2', 'x3', 'u');

Файл odefun1_1revk.m

function f=odefun1_1revk (t, x)

global a11 a12 a21 a22 b11 b21

u=-35*pi/180;

f=[- (a11*x(1)+a12*x(2)+b11*u); - (a21*x(1)+a22*x(2)+b21*u); - (x(1))];

Файл odefun1_1forvk.m

function f=odefun1_1forvk (t, x)

global t1 t2 a11 a12 a21 a22 b11 b21

if t<t1

u=-35*pi/180;

elseif t<t2

u=35*pi/180;

else

u=-35*pi/180;

end

f=[(a11*x(1)+a12*x(2)+b11*u); (a21*x(1)+a22*x(2)+b21*u); (x(1))];

Файл main1_2 k.m

global a11 a12 a21 a22 b11 b21

V0=3.6;

L=36;

r21=-0.46;

r31=3.04;

q21=0.77;

q31=-0.8;

s21=-0.18;

s31=-1.52;

W=V0/L;

a11=-r31*W;

a12=-q31*W^2;

a21=-r21;

a22=-q21*W;

b11=-s31*W^2;

b21=-s21*W;

t0=[10.9961 19.7213 21.6689]

T=fminsearch ('fmsfun1_2k', t0)

Файл fmsfun1_2 k.m

function f=fmsfun1_2k(T)

global TT x a11 a12 a21 a22 b11 b21

TT = T;

[t, x]=ode45 ('odefun1_2k', [0 T(3)], [0 0 10*pi/180]);

xf=[0 0 0];

f=(x (length(t), 1) - xf(1))^2+(x (length(t), 2) - xf(2))^2+(x (length(t), 3) - xf(3))^2;

plot (t, x);

grid;

Файл odefun1_2 k.m

function f=odefun1_2k (t, x)

global TT a11 a12 a21 a22 b11 b21

if t<TT(1)

u=-35*pi/180;

elseif t<TT(2)

u=35*pi/180;

else

u=-35*pi/180;

end

f=[(a11*x(1)+a12*x(2)+b11*u); (a21*x(1)+a22*x(2)+b21*u); (x(1))];

Результаты работы программы:

Рис. 2. Фазовая траектория x2 от x1

Рис. 3. Переходные процессы в системе

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

t1=10.9961;

t2=19.7213;

T=21.6689.

Время переходного процесса: 21.6689 с.

5. Метод параметрической оптимизации линейного закона управления

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

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

Закон управления объектом:

.

Текст программы:

Файл main2k.m

clear, clc

global a11 a12 a21 a22 b11 b21

V0=3.6;

L=36;

r21=-0.46;

r31=3.04;

q21=0.77;

q31=-0.8;

s21=-0.18;

s31=-1.52;

W=V0/L;

a11=-r31*W;

a12=-q31*W^2;

a21=-r21;

a22=-q21*W;

b11=-s31*W^2;

b21=-s21*W;

k=fminsearch ('fmsfun2k', [10 8])

tm=fmsfun2k(k)

%%%%Построение графиков%%%%%%%

[t, x]=ode45 ('odefun2k', [0 40], [0 0 10*pi/180]);

u=-k(1)*x(:, 1) - k(2)*x(:, 3);

for i=1:length(t)

if (abs(u(i))>35*pi/180)

u(i)=sign (u(i))*35*pi/180;

end

end

plot (t, (180/pi)*x(:, 1), 'b', t, (180/pi)*x(:, 2), 'g', t, (180/pi)*x(:, 3), 'r', t, (180/pi)*u, 'k')

xlabel('t');

legend ('x1', 'x2', 'x3', 'u');

grid;

Файл fmsfun2k.m

function f=fmsfun2k(k)

global kopt

kopt=k;

T=100;

[t, x]=ode45 ('odefun2k', [0 T], [0 0 10*pi/180]);

j=length(t);

while (abs (x(j, 3))<0.5*pi/180)

j=j-1;

end

f=t(j);

Файл odefun2k.m

function f=odefun2k (t, x)

global a11 a12 a21 a22 b11 b21 kopt

u=-kopt(1)*x(1) - kopt(2)*x(3);

if (abs(u)>35*pi/180)

u=sign(u)*35*pi/180;

end

f=[(a11*x(1)+a12*x(2)+b11*u); (a21*x(1)+a22*x(2)+b21*u); (x(1))];

Найденные значения параметров линейного закона управления:

k =

54.8134 60.8996

Рис. 4. Переходные процессы системы

Время переходного процесса: 8.0774 с.

6. Метод стандартного полинома

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

Закон управления объектом:

.

Характеристический полином замкнутой системы:

Стандартный полином:

где a0=1; a1=3; a2=3; a3=1 - биноминальный полином.

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

Текст программы:

Файл main3k.m

clear, clc

global a11 a12 a21 a22 b11 b21 k

V0=3.6;

L=36;

r21=-0.46;

r31=3.04;

q21=0.77;

q31=-0.8;

s21=-0.18;

s31=-1.52;

W=V0/L;

a11=-r31*W;

a12=-q31*W^2;

a21=-r21;

a22=-q21*W;

b11=-s31*W^2;

b21=-s21*W;

[om_baz]= fminsearch ('fmsfun3k', 0.1)

t=fmsfun3k (om_baz)

k

[t, x]=ode45 ('odefun3k', [0 55], [0 0 10*pi/180]);

%%%%%%Построение u(t)

u=-k(1)*x(:, 1) - k(2)*x(:, 2) - k(3)*x(:, 3);

for i=1:length(t)

if (abs(u(i))>35*pi/180)

u(i)=sign (u(i))*35*pi/180;

end

end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

plot (t, (180/pi)*x(:, 1), 'b', t, (180/pi)*x(:, 2), 'g', t, (180/pi)*x(:, 3), 'r', t, (180/pi)*u, 'k')

grid;

legend ('x1', 'x2', 'x3', 'u');

xlabel('t')

Файл fmsfun3k.m

function f=fmsfun3k(w0)

global a11 a12 a21 a22 b11 b21 k

% a0*w^3+a1*w^2*s+a2*w*s^2+a3*s^3

a0=1;

a1=3;

a2=3;

a3=1;

A=[b11 b21 0;

(a12*b21-a22*b11) (a21*b11-a11*b21) (b11);

(0) (0) (a12*b21-a22*b11)];

b=[(a2*w0+a22+a11);

(a1*w0^2-a11*a22+a12*a21);

(a0*w0^3)];

k=A\b;

[t, x]=ode45 ('odefun3k', [0 50], [0 0 10*pi/180]);

j=length(t);

while (abs (x(j, 3))<0.5*pi/180)

j=j-1;

end

f=t(j);

Файл odefun3k.m

function f=odefun3k (t, x)

global a11 a12 a21 a22 b11 b21 k

u=-k(1)*x(1) - k(2)*x(2) - k(3)*x(3);

if (abs(u)>35*pi/180)

u=sign(u)*35*pi/180;

end

f=[(a11*x(1)+a12*x(2)+b11*u); (a21*x(1)+a22*x(2)+b21*u); (x(1))];

Найденное значение базовой частоты: 0.1696 рад/с

Найденные значения коэффициентов обратных связей:

k =

8.4962

-0.0817

3.7087

Рис. 5. Графики переходных процессов

Время переходного процесса: 13.6119 с.

7. Анализ чувствительности полученных алгоритмов

Проведём анализ переходных процессов системы при увеличении длины по ватерлинии L на 10%.

1. Метод, основанный на теореме об N интервалах

Рис. 6. Графики переходных процессов

Рис. 7. Фазовая траектория x2 от x1

Конечная точка без изменения параметра судна: [0.0003 -0.0005 0].

Конечная точка при увеличении длины по ватерлинии: [0.0012 -0.0050 0.0197].

2. Метод параметрической оптимизации линейного закона управления

Рис. 8. Графики переходных процессов

Время переходного процесса: 8.9245 с.

3. Метод стандартного полинома

алгоритм управление оптимизационный

Рис. 9. Графики переходных процессов

Время переходного процесса: 14.973 с.

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

Выбор одного из алгоритмов проводится путем сравнения по следующим показателям:

- степень достижения поставленной цели (время переходного процесса)

- сложность задач, решаемых на этапе проектирования

- сложность реализации алгоритма управления

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

1. Cтепень достижения поставленной цели (время переходного процесса):

1) Метод параметрической оптимизации линейного закона управления (8.0774 с);

2) Метод стандартного полинома (13.6119 с);

3) Метод, основанный на теореме об N интервалах (21.6689 с).

2. Cложность задач, решаемых на этапе проектирования:

1) Метод стандартного полинома;

2) Метод, основанный на теореме об N интервалах;

3) Метод параметрической оптимизации линейного закона управления.

3. Cложность реализации алгоритма управления

1) Метод, основанный на теореме об N интервалах;

2) Метод стандартного полинома;

3) Метод параметрической оптимизации линейного закона управления.

4. Чувствительность основного показателя качества к изменению параметров математической модели объекта управления.

1) Метод стандартного полинома: изменения на 14.973-13.6119=1.3611 с (10%);

2) Метод, основанный на теореме об N интервалах: до изменения x3=0, после x3=0.0197;

3) Метод параметрической оптимизации линейного закона управления: изменения на 8.9245 - 8.0774=0.8471 с (10.48%).

Выводы

Наибольшую чувствительность к изменениям параметра объекта управления имеет метод параметрической оптимизации линейного закона управления. Наилучшие показатели качества продемонстрировал метод параметрической оптимизации линейного закона управления - наименьшее время переходного процесса.

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.