Subversion Repositories svnkaklik

Compare Revisions

No changes between revisions

Ignore whitespace Rev 1057 → Rev 1058

/dokumenty/skolni/TDS/9uloha/kakonjak_reseni9.pdf
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/dokumenty/skolni/TDS/9uloha/kakonjak_reseni9.tex
0,0 → 1,428
\documentclass[12pt,notitlepage,fleqn]{article}
 
\usepackage[czech]{babel}
\usepackage[pdftex]{graphicx}
\usepackage{fancyhdr,multicol} %nastavení češtiny, fancy, grafiky, sloupce
\usepackage[utf8]{inputenc} %vstupni soubory v kodovani UTF-8
\usepackage[a4paper,text={17cm,25cm},centering]{geometry} %nastavení okrajů
\usepackage{rotating}
 
\begin{document}
 
\section*{Řešení 9. zadané úlohy - Jakub Kákona}
 
\begin{enumerate}
\item
 
Potřebujeme zjistit jednotlivá vlastní čísla uzavřené smyčky pro jednotlivé matice F popisující zpětnou vazbu:
 
\begin{equation}
\det[\lambda I - (A + B F_1)] = \lambda ^2 + 0,205 \lambda + 0,01295 = (\lambda - 0,1025 + 0,0494j ) (\lambda - 0,1025 -0,0494j )
\end{equation}
\begin{equation}
\det[\lambda I - (A + B F_2)] = \lambda ^2 + 0,2053 \lambda + 0,01295 = (\lambda - 0,1026 + 0,0492j ) (\lambda - 0,1026 -0,0492j )
\end{equation}
 
\begin{equation}
\det[\lambda I - (A + B F_3)] = \lambda ^2 + 0,205 \lambda + 0,01295 = (\lambda - 0,1025 + 0,0494j ) (\lambda - 0,1025 -0,0494j )
\end{equation}
 
Vidíme, že systém má pro všechny matice F opravdu stejná vlastní čísla. Drobná odchylka v případě matice $F_2$ je pravděpodobně jenom důsledek zaokrouhlovací chyby.
 
Vykreslíme grafy odezvy na počáteční podmínky.
 
 
\begin{center}
\begin{figure}[hbtp]
\includegraphics[scale=1]{reseni.png}
\caption{Odezva stavů $x_1$ a $x_2$ na zadané počáteční podmínky}
\end{figure}
\end{center}
 
 
A vidíme, že odezvy jsou pro jednotlivé realizace systému značně rozdílné.
 
\item
 
 
Spočítáme matici řiditelnosti systému:
 
\begin{equation}
C = \left[ B, AB, A^2B, A^3B \right] =
\left[ \begin{array}{cccccccc}
1 & 0 & 1 & 0 & 1 & 0 & 0 & 1 \\
1 & 0 & 1 & 0 & 1 & 1 & -1 & 4 \\
1 & 0 & 0 & 1 & -1 & 4 & -2 & 13 \\
0 & 1 & -1 & 4 & -2 & 13 & -4 & 41 \\
\end{array}
\right]
\end{equation}
 
Protože hodnost této matice je 4, tak systém je úplně řiditelný. Ještě ověříme, zda je řiditelný i pouze jedním vstupem.
 
\begin{equation}
B_1 =
\left[ \begin{array}{c}
1 \\
1 \\
1 \\
0 \\
\end{array}
\right] \rightarrow
C_1 =
\left[ \begin{array}{cccc}
1 & 1 & 1 & 0 \\
1 & 1 & 0 & -1 \\
1 & 0 & -1 & -2 \\
0 & -1 & -2 & -4 \\
\end{array}
\right] \rightarrow
h(C_1)=4
\end{equation}
 
\begin{equation}
B_2 =
\left[ \begin{array}{c}
0 \\
0 \\
0 \\
1 \\
\end{array}
\right] \rightarrow
C_2 =
\left[ \begin{array}{cccc}
0 & 0 & 0 & 1 \\
0 & 0 & 1 & 4 \\
0 & 1 & 4 & 13 \\
1 & 4 & 13 & 41 \\
\end{array}
\right] \rightarrow
h(C_2)=4
\end{equation}
 
Vidíme, že i obě dílčí matice řiditelnosti mají plnou hodnost, systém je proto řiditelný i jedním ze vstupů.
 
Pro další postup zvolíme jedno-vstupovou realizaci:
 
\begin{equation}
A_c =
\left[ \begin{array}{cccc}
0 & 0 & 0 & 1 \\
0 & 0 & 1 & 4 \\
0 & 1 & 4 & 13 \\
1 & 4 & 13 & 41 \\
\end{array}
\right],
B_c =
\left[ \begin{array}{c}
0 \\
0 \\
0 \\
1 \\
\end{array}
\right].
\end{equation}
 
Nyní hledáme matici $F_c]$ která umožní splnit zadaný požadavek na vlastní čísla.
 
Hledáme tedy takové prvky matice aby kořeny charakteristického polynomu byly rovny zadaným vlastním číslům:
 
\begin{equation}
\det[\lambda I - (A_c + B_c F_c)] = (\lambda + 1 +j) (\lambda + 1 -j) (\lambda + 2 +j) (\lambda + 2 -j)
\end{equation}
 
Řešíme proto rovnici
 
\begin{equation}
\lambda ^4 - 4 \lambda ^3 - \lambda ^3 d + 3 \lambda ^2 - \lambda ^2 c - \lambda - \lambda b -1 -a = (\lambda + 1 +j) (\lambda + 1 -j) (\lambda + 2 +j) (\lambda + 2 -j)
\end{equation}
 
Úpravou výrazu a srovnáním koeficientů u jednotlivých mocnin získáme řešení:
 
\begin{equation}
a = -11, b = -19, c = - 12, d = -10 \\
F_c =
\left[ \begin{array}{cccc}
-11 & -19 & -12 & -10 \\
\end{array}
\right].
\end{equation}
 
Hledanou matici F pak získáme jako:
 
 
\begin{equation}
F=
\left[ \begin{array}{cc}
0 \\
1 \\
\end{array}
\right]
F_c=
\left[ \begin{array}{cccc}
0 & 0 & 0 & 0 \\
-11 & -19 & -12 & -10 \\
\end{array}
\right]
\end{equation}
 
\item
 
Zadání dosadíme do Riccatiho rovnice
 
\begin{equation}
A^T P_c + P_c A - P_c B R^{-1} B^T P_c + Q = 0,
P_c=\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right].
\end{equation}
 
 
\begin{equation}
\left[ \begin{array}{cc}
0 & 1 \\
1 & 0 \\
\end{array}
\right]
\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right]
+
\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right]
\left[ \begin{array}{cc}
0 & 1 \\
1 & 0 \\
\end{array}
\right]
-
\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right]
\left[ \begin{array}{c}
1 \\
0 \\
\end{array}
\right]
\left[\begin{array}{cc}
1 & 0 \\
\end{array}
\right]
\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right]
+
\left[ \begin{array}{cc}
1 & 0 \\
0 & 0 \\
\end{array}
\right]=0
\end{equation}
 
Řešením této maticové rovnice dojdeme k soustavě rovnic
 
\begin{eqnarray}
2b - a^2 + 1 =& 0 \\
a - ab + c =& 0 \\
2b - b^2 =& 0 \\
\end{eqnarray}
 
Řešení této soustavy pak jsou:
 
\begin{eqnarray}
a =& {\pm 1, \pm \sqrt{5}} \\
b =& {0, 0, 2 ,2} \\
c =& {\pm 1, \pm \sqrt{5}} \\
\end{eqnarray}
 
My ale potřebujeme aby matice
$P_c=\left[ \begin{array}{cc}
a & b \\
b & c \\
\end{array}
\right]$ byla pozitivně definitní. To je splněno v případě, že $ a > 0, ac - b^2 > 0$
 
Tyto podmínky jsou splněny v případě řešení
$P_c=\left[ \begin{array}{cc}
\sqrt{5} & 2 \\
2 & \sqrt{5} \\
\end{array}
\right]$
 
Hledané optimální $u^* (t)$, které minimalizuje J najdeme z rovnice
 
\begin{equation}
u^* (t) = -R^{-1} B^T P^* _c x(t) =
\left[\begin{array}{cc}
-\sqrt{5} & -2 \\
\end{array}
\right]
\left[ \begin{array}{c}
x_1(t) \\
x_2(t) \\
\end{array}
\right]
\end{equation}
 
\item
 
Sestavíme matici pozorovatelnosti systému se zpětnou vazbou.
 
 
\begin{equation}
A^* = A + B F =
\left[ \begin{array}{cc}
0 & 1 \\
a & b \\
\end{array}
\right],
C^* = C + D F =
\left[ \begin{array}{cc}
1 +a & b \\
\end{array}
\right],
F =
\left[ \begin{array}{cc}
a & b \\
\end{array}
\right]
\end{equation}
 
\begin{equation}
O = \left[ \begin{array}{c}
C^* \\
C^* A^*\\
\end{array}
\right]=
\left[ \begin{array}{cc}
1+a & b \\
ab & 1+a+b^2 \\
\end{array}
\right]
\end{equation}
 
Aby vlastní čísla ve zpětné vazbě byla nepozorovatelná z výstupu y, tak matice pozorovatelnosti musí mít hodnost rovnu 0.
 
To je splněno pro $a=-1, b=0$. A hledaná matice F je:
 
\begin{equation}
F = \left[ \begin{array}{cc}
-1 & 0 \\
\end{array}
\right]
\end{equation}
 
 
Zbývá ještě určit přenos při této realizaci systému
 
\begin{equation}
H_F (s)= C^* (sI - A^*)^{-1} B + D =
\left[ \begin{array}{cc}
1 +a & b \\
\end{array}
\right]
\left[ \begin{array}{cc}
s & -1 \\
1 & s \\
\end{array}
\right]^{-1}
\left[ \begin{array}{c}
0 \\
1 \\
\end{array}
\right]
+1 = 1
\end{equation}
 
\item
 
Je třeba nejdříve sestavit stavový popis systému:
 
Zvolíme si popis stavů $\theta = x_1,\dot{\theta} = x_2 $
 
A víme, že
\begin{equation}
\ddot{\theta} + \dot{\theta} = u
\end{equation}
 
Potom platí
 
\begin{equation}
\dot{x_1}=x_2 \\
\dot{x_2} = -x_2 + u
\end{equation}
 
Z toho získáme maticový stavový popis
 
\begin{equation}
\left[ \begin{array}{c}
\dot{x_1} \\
\dot{x_1} \\
\end{array}
\right] =
\left[ \begin{array}{cc}
0 & 1 \\
0 & -1 \\
\end{array}
\right]
\left[ \begin{array}{c}
x_1 \\
x_1 \\
\end{array}
\right]
+
\left[ \begin{array}{c}
0 \\
1 \\
\end{array}
\right]u
\end{equation}
 
Z něj pak vytvoříme matici řiditelnosti:
 
\begin{equation}
C =\left[ \begin{array}{cc}
0 & 1 \\
1 & -1 \\
\end{array}
\right], h(C)=2
\end{equation}
 
Protože matice má plnou hodnost, systém je řiditelný.
 
Protože je požadováno umístění vlastních čísel do -2. Tak charakteristický polynom musí být ve tvaru:
 
\begin{equation}
\det (\lambda I - (A+BF)) = (\lambda +2)(\lambda +2) = \lambda ^2 + 4 \lambda + 2
\end{equation}
 
Musíme proto vyřešit rovnici
 
\begin{equation}
\lambda ^2 + \lambda - \lambda b - a = \lambda ^2 + 4 \lambda + 4
\end{equation}
 
řešením je $a=-4, b=-3$. A matice stavové zpětné vazby má následující tvar
 
\begin{equation}
F =\left[ \begin{array}{cc}
-4 & -3 \\
\end{array}
\right]
\end{equation}
 
\end{enumerate}
\end{document}
/dokumenty/skolni/TDS/9uloha/reseni.m
0,0 → 1,82
%% ukol 9
%% pr 1
clc, clear;
A = [-0.01 0;0 -0.02];
B=[1 1;-0.25 0.75];
C1 = [1 0];
C2 = [0 1];
D = 0;
F1 = [-1.1 -3.7;0 0];
F2=[0 0;-1.1 1.233];
F3=[-0.1 0;0 -0.1];
 
sys11 = ss(A+B*F1,B,C1,D);
sys21 = ss(A+B*F2,B,C1,D);
sys31 = ss(A+B*F3,B,C1,D);
sys12 = ss(A+B*F1,B,C2,D);
sys22 = ss(A+B*F2,B,C2,D);
sys32 = ss(A+B*F3,B,C2,D);
 
plot(initial(sys11,'b',[0;1]), initial(sys21,'r',[0;1]), initial(sys31,'k',[0;1]));
 
xlabel('time'), ylabel('x_1'), grid on, legend('F1','F2','F3');
 
plot(initial(sys12,'b',[0;1]), initial(sys22,'r',[0;1]), initial(sys32,'k',[0;1]));
xlabel('time');
ylabel('x_2');
legend('F1','F2','F3'),grid on;
 
 
%% pr 2
clc,clear;
A = [0 1 0 0;0 0 1 0;0 0 0 1;1 1 -3 4]
B = [1 0;1 0;1 0;0 1]
B1 = [1 1 1 0]'
B2 = [0 0 0 1]'
Con = ctrb(A,B)
rank(Con)
Con1 = ctrb(A,B1)
rank(Con1)
Con2 = ctrb(A,B2)
rank(Con2)
ad = ((s+1+i)*(s+1-i)*(s+2+i)*(s+2-i))
syms a b c d
Fc = [a b c d]
ac = det(sym(s*eye(4))-(A+B2*Fc))
F = [0 0 0 0;-11 -19 -12 -10]
Fj=[0 0 0 0;-11 -29 -22 -20]
Bj = [0 0;0 0;0 0;0 1]
roots(det((s*eye(4))-(A+B*Fj)))
%% pr 3
clc, clear;
A = [0 1;1 0]
B = [1;0]
Q = [1 0;0 0]
R = 1
syms a b c
Pc = [a b;b c]
rica = A'*Pc+Pc*A-Pc*B*inv(R)*B'*Pc+Q
[x y z]=solve('2*b-a^2+1=0','a+c-a*b=0','2*b-b^2=0')
Pcc = [x(3),y(3);y(3) z(3)]
u = -inv(R)*B'*Pcc
%% pr 4
clc,clear;
A = [0 1;0 0]
B = [0;1]
C = [1 0]
D = 1
syms a b
F = [a b]
Af = A+B*F
Cf = C+D*F
O = [Cf;Cf*Af]
Ff = [-1 0]
Aff = A+B*Ff
Cff = C+D*Ff
Hf=Cff*(sym(s*eye(2))-Aff)^-1*B+D
%% pr 5
clc,clear;
A = [0 1;0 -1]
B = [0;1]
Con = ctrb(A,B)
rank(Con)
/dokumenty/skolni/TDS/9uloha/untitled.png
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property