elear, cle, close all
% deklaracja obiektu w opisie TF n = [2 0 81 ; m = [1 8.2 18.4 12]; printsys(n,m)
% deki, obiektu w opisie SS
Af = [0,1,0;0,0fl;-12,-18.4,-8.2]
Bf = [ 0;0;1]
Cf = [8 0 21 Df = 0;
% konwersja opisu TF ==> SS % jaka to postać?
[As,Bs,Cs,DsJ = tf2ss(n,m)
xniezer = [0.2 0.6 1]j uskok = ones(length(t),1);
[y0,x0l =
lsim(Af,Bf,Cf,Df,uskok,t,xniezer) ;
figurę(4) plot{t,y0),grid
title('WY - przy fazowych, niezerowych, zmiennych stanu')
figurę(5)
plot(t,x0(:,1),1r1,t,x0(;,2),'g' , t,x0(:,3),'m')
grid,legend('xlf =/= 0','x2f »/« 0',
*x3f «/» 0')
title('Fazowe, niezerowe, zmienne stanu')
% sprawdzenie czy Af oraz As to to samo? [res,pier,reszta] = residue(n,m)
[wekAf,warAf1 = eig(Af}
[wekAs,warAsl * eig(As)
% sprawdzenie def wektora własnego i % wartości własnych Lew = Af*wekAf{1:3,1)
Pra = warAf(1,1)*wekAf(1:3,1)
% przekształcenia tożsamościowe - cz. I % zmiana układu współrzędnych -transformacja P
P » [-1,-0.5,1;0.5,-1,2;-0.5,0.5,4)
invP = inv(P)
zO » invP*xniezer'
Az = invP*Af*P
Bz = invP*Bf .
Cz - Cf*P ' * ’**•
% transformacja odwrotna SS ==> TF % format wyniku dla short,short e i short g
[nspr,msprl = ss2tf{Af,Bf,Cf,Df)
% transformacja P musi dac te same wartości własnel [wekAz,warAz] = eig(Az)
% wyznaczenie ch-k skokowych t ■ [0:.01:61;
yt = step(n,m,t);
[yf,xf] = step(Af,Bf, Cf,Df,1,t) ;
% por syg. WY opisu TF z syg. WY opisu SS figurę (1)
plot(tfytf 'r',tryf,1g*),grid title('WY TF = WY SS - ?1)
figurę(6)
[yz,xzl = step(Az,Bz,Cz,Df,1,t); plot(t,xz(:,1),'r',t,xz(:,2),'g', t,xz(:,3),'m')
grid,legend{1xlz','x2z1,'x3z') title('Nowe zmienne stanu z')
% dynamika zmiennych stanu figurę(2)
plot(t,xf(:,1),'r1,t,xf(:,2),1g', t,xf (: ,3) , 'm')
grid,legend{'xl£','x2f',’x3f1,4) title('Fazowe zmienne stanu')
% przekształcenia tożsamościowe - cz. II i diagonalizacja - I sposob:
% P = wektory własne li
% fomat wyniku: short, short e i short g Ad « wekAfA(-1)*Af*wekAf Bd * inv{wekAf)*Bf Cd = Cf*wekAf
% co ma zasadniczy wpływ na syg WY - spr. równania WY figurę(3)
yf_spr = Cf(l)*xf(:,1)+Cf(3)*x£(:,3); plot(t,yf,'r',t,yf_spr,1g'), grid title{'WY SS - row algebraiczne')
figurę(7)
[yd,xdl » step(Ad,Bd,Cd,Df,1,t);
plot{t,xd(:,1),'r',t,xd (:,2),'g',t,xd(:,3
),'m')
grid,legend('xld','x2d',’x3d*} title{'Diagonalne zmienne stanu')
l badanie odpowiedzi na wymuszenie % skokowe przy niezerowych warunkach % warunkach początkowych
^diagonalizacja - II sposob - gotowe
instrukcje Matlaba
[Adm,Bdm, Cdm] =
canon(Af,Bf,Cf,Df,'modal')
[Ads,Bds,Cds] =
canon{Af,Bf,Cf,Df,'companion')