Počítačové modelování dynamických systémů 4.cvičení (přenosy, pro začátek důležité - s je p) katedra elektrotechniky a automatizace Miloslav LINDA
Přenosy přímé zadání přenosu z koeficientů charakteristické rovnice G=tf([b1 b0],[a2 a1 a0]) G=tf([b1 b0],[a2 a1 a0],’td’,x) - ‘td’ představuje dopravní zpoždění a x jeho hodnotu - příklad uvedený nahoře G=tf([1 4],[1 1 2])
přenosy zadání přenosu pomocí nul, pólů a zesílení systému - z jsou nuly systému, p póly sytému a k je zesílení z=[n1 n2]; p=[p1 p2 p3]; k=k1 - zadání parametrů přenosu G=zpk(z,p,k) - příkaz zpk [B,A]=tfdata(G) - tento příkaz převádí data ze zpk do tf G=tf(B,A) - vytvoření přenosu z=0.6; p=[-1 -0.4 -0.4]; k=0.7
přenosy Laplaceova transformace syms s t - zavedení symbolických proměnných s a t, nutno zadat při použití příkazu ilaplace a laplace nebo při symbolických operacích ilaplace((s+4)/(s^2+s+2)) - inverzní Laplaceova transformace laplace(exp(-3*t)) - Laplaceova transformace
přenosy přechodová charakteristika step(G) - vykreslení přechodové char. ze zadaného přenosu step(G1,G2,......) - vykreslení více přechodových char. [x,t]=step(G) - vypsání číselného průběhu char.
přenosy impulsní charakteristika impulse(G) - vykreslení impulsní char. ze zadaného přenosu impulse(G1,G2,......) - vykreslení více impulsních char. [x,t]=impulse(G) - vypsání číselného průběhu char.
přenosy frekvenční char. v komplexní rovině nyquist(G) - vykreslení frekveční char. ze zadaného přenosu nyquist(G1,G2,......)
přenosy amplitudová a fázová char. bode(G) - vykreslení amplitudové a fázové char. ze zadaného přenosu bode(G1,G2,......)
přenosy nuly a póly přenosu v komplexní rovině pzmap(G) - vykreslení nul a pólu systému pzmap(G1,G2,......) - zobrazení -- x - póly; o - nuly
přenosy bloková algebra - sériové zapojení G=G1*G2 nebo series(G1,G2) - paralelní zapojení G=G1±G2 nebo parallel(G1,G2) - zpětnovazební zapojení z=feedback(GS,GR,-1) z=feedback(GS,GR,1)
přenosy určení kritického zesílení a kritické frekvence z otevřeného obvodu [Gm,Pm,Wcg,Wcp]=margin(g) - Gm je kritické zesílení - Pm je kritická fáze - Wcg je frekvence pro kritické zesílení - Wcp je frekvence pro kritickou fázi
Doplňkové
Přenosy převod obrazového přenosu na stavový popis (transfer function to state-space) [A,B,C,D]=tf2ss(B,A) [A,B,C,D]=tf2ss([1 2],[1 2 1]) matice stavového prostoru koeficienty jmenovatele přenosu koeficienty čitatel přenosu
přenosy obrazový přenos identifikace dat [B,A]=tfdata(sys,’v’) - kompletní výpis [B,A]=tfdata(sys) - vypíše pouze velikost matice
přenosy zadávání pomocí stavového popisu sys=ss(A,B,C,D) - stavový, maticový popis systému
přenosy převod mezi přenosem spojitým a diskrétním g1=c2d(g2,T,method) metoda (základní zoh, další foh) perioda vzorkování
přenosy změna vzorkovacího času u diskrétního přenosu g1=d2d(g2,T) - nelze použít u vícenásobných kořenů perioda vzorkování
ostatní zp2ss - zero-pole to state-space zp2tf - zero-pole to transfer function ss2zp ss2tf d2c filt - diskrétní přenos zadaný jako z-1 ss
přenosy generování spojitého systému [B,A]=ord2(wn,z) [A,B,C,D]=ord2(wn,z) kde wn je ωn - přirozená úhlová frekvence z je ξ - poměrné tlumení
info a úprava přenosu get(g) - informace o přenosu set(g) - set(g,’Varible’,‘p’) - změna s za p
budící signál vytvoření vlastního budícího signálu [u,t]=gensig(type,tau,tf,ts) type - ‘sine’, ‘square’, ‘pulse’ tau - perioda vzorkování tf - celková doba simulace ts - vzorkovací čas [u,t]=gensig('square',5,30,0.1)
budící signál použití příkazu Lsim návaznost na gensig, kdy použijeme předchozí u a t [y,t]=lsim(g,u,t) přenos
zobrazení více přenosů ltiview(‘plottype’, g1,g2,g3..gn) - plottype (step, impulse, bode, nyquist, lsim) - neumožňuje vypsat numerické vyjádření
rltool nástroj pro práci, úpravu a simulace zpětnovazebních obvodů s kompenzátorem rltool(gs,gr,locationflag,feedbacksign) 1-kompezátor v přímé větvi 2- kompenzátor ve zpětné vazbě přenos soustavy přenos kompenzátoru -1 - záporná zpětná vazba +1 - kladná zpětná vazba
Přenosy jen pro doplnění při vykreslení, jen pro někoho a někdy hold on - potlačí přepsaní grafů, lze tedy vykreslit oba do jednoho figure(1),step(G) figure(1),impulse(G)
Identifikace th=arx([y,u],[na,nb,1]) [a,b]=th2arx(th) g=tf(b,a,ts) zjištění přenosu z přechodové char. identifikace (diskrétní identifikace pomocí modelu ARX nebo AR) th=arx([y,u],[na,nb,1]) [a,b]=th2arx(th) g=tf(b,a,ts) stupeň polynomu A stupeň polynomu B vstupní “sloupcový” vektor (pro skok samé 1) výstupní “sloupcový” vektor vzorkovací čas
identifikace th=arxmax([y,u],[na,nb,nc,1]) [a,b,c]=th2arx(th) zjištění přenosu z přechodové char. identifikace (diskrétní identifikace pomocí modelu ARMAX nebo ARMA) th=arxmax([y,u],[na,nb,nc,1]) [a,b,c]=th2arx(th) g1=tf(b,a,ts) g2=tf(c,a,ts) stupeň polynomu A stupeň polynomu B vstupní “sloupcový” vektor (pro skok - samé 1) výstupní “sloupcový” vektor vzorkovací čas
konec