„Szabályozástechnika - Folytonosidejű állapotteres szabályozók tervezése” változatai közötti eltérés

David14 (vitalap | szerkesztései)
David14 (vitalap | szerkesztései)
278. sor: 278. sor:
<syntaxhighlight lang="matlab" style="font-size: 140%;">
<syntaxhighlight lang="matlab" style="font-size: 140%;">


% Itt új K erősítésvektrot kell meghatározni, de a többi már
% Az integráló szabályzó célja a zavarelnyomás és a paraméterbizonytalanságok kiküszöbölése. Ezt úgy érjük el,
% meghatározott paraméter ugyanaz marad!
% hogy új állapotként felvesszük a kimenet integrálját: xI = integrál (0->t) y(tau) dtau --> xI' = y = C*X
% Ezzel már felírhatók a kibővített rendszer állapotegyenletei:
%
% ( x'  )  ( A  0 )  ( x  )  ( B )
% ( xI' ) = ( C  0 ) * ( xI ) + ( 0 ) * u
%
%                      ( x  )
%    y    = ( C  0 ) * ( xI )
%
% Új jelöléseket bevezetve a kibővített rendszerünk állapotegyenletei:
%
% xi' = Ai * xi + Bi * u
% y  = Ci * xi
%
% Most ehhez a kibővített rendszerhez kell egy új Ktilde = [Kt Ki] állapot-visszacsatolást megterveznünk.


% A kibővített rendszer mátrixai
% A kibővített rendszer mátrixai:
Ai=[A zeros(2,1);C 0];  % Az első sorban n*1-es nullmátrix
Ai=[A zeros(2,1);C 0];  % Az első sorban n*1-es nullmátrix
% A második sorban fixen 1 darab nulla (SISO)
% A második sorban fixen 1 darab nulla (SISO)
Bi=[B;0]; % Fixen 1 darab nulla a végére
Bi=[B;0];               % Fixen 1 darab nulla a végére


% Az integrátor állapotának -3-as sajátértéket írunk elő
% Az integrátor állapotának (-3)-as sajátértéket írunk elő
phictilde=[sdom1 sdom2 -3];
phictilde=[sdom1 sdom2 -3];


% Állapotvisszacsatolás számítása a kibővített rendszerre
% Állapot-visszacsatolás számítása a kibővített rendszerre
Ktilde=acker(Ai,Bi,phictilde);
Ktilde=acker(Ai,Bi,phictilde);


% Az állapotvisszacsatolás vektorának felbontása
% Az állapot-visszacsatolás vektorának felbontása
Kt=Ktilde(1:2); % Annyi eleme van, ahány valódi állapotunk (n)
Kt=Ktilde(1:2); % Annyi eleme van, ahány valódi állapotunk (n)
Ki=Ktilde(3);   % Skalár  
Ki=Ktilde(3);   % Skalár  


% A megfelelő Simulink-modell megnyitása
% A megfelelő Simulink-modell megnyitása
open('continuous_5');
open('continuous_5');
% Vigyázat ez itt a terhelésbecslő nélküli modell továbbfejlesztése.
% Vigyázat ez itt a terhelésbecslő nélküli modell továbbfejlesztése.
% Az integráló szabályozás is a bemenetre szuperponálódott zavarjelek
% Az integráló szabályozás is a bemenetre szuperponálódott zavarjelek kiküszöbölésére való.
% kiküszöbölésére való. Itt Nu helyett egy Ki erősítés van és egy integrátor,
% Itt Nu helyett egy Ki erősítés van és egy integrátor, valamint K helyett Kt !!!
% valamint K helyett Kt !!!


% Várakozás billentyűlenyomásra
% Várakozás billentyűlenyomásra