Documente Academic
Documente Profesional
Documente Cultură
5.1. Scopul lucrării: Studiul unor funcţii elementare ale MATLABului de conversie
a modelelor matematice. Analiza şi implementarea modelelor matematice utilizând diferite
tehnici de conversie ale acestora. Conversia modelelor continuu-discret şi discret-continuu.
Biblioteca Control System furnizează şi un set de funcţii (tf, ss, zpk, frd) pentru crearea
a patru tipuri de modele liniare, invariante în timp (Linear Time Invariant-LTI), şi pentru
conversia dintr-un model în altul, după cum ilustrează diagrama bloc din figura 5.1 şi tabelul de
mai sus.
5.2 – Partea teoretică 45
Fig. 5.1. Diagrama bloc cu funcţiile de conversie ale modelelor matematice [1].
Implementarea în MATLAB a unei funcţii de transfer (tf) este simplu de realizat. Astfel,
este suficient să se definească coeficienţii polinomului de la numărător şi numitor, în ordine
descrescătoare.
Utilizând comanda:
sys1=tf(sys)
vom obţine conversia modelului sys de ordinul trei modelat cu mărimi de stare, în modelul sys1,
care reprezintă echivalentul lui sys modelat prin funcţii de transfer (sstf).
dx
A x B u
dt , x(0) x0 …………………………..(5.1)
y C x D u
Cele mai utilizate funcţii de conversie a modelelor, pentru acelaşi sistem liniar invariant,
sunt: ss2tf (transformare din MM-ISI în funcţie de transfer), ss2zp (transformare din MM-ISI în
reprezentare poli-zerouri), tf2ss (transformare din fdt în MM-ISI), zp2ss (transformare din poli-
zerouri în MM-ISI).
Funcţiile MATLAB pentru realizarea trecerii din domeniul continuu la cel discret sunt:
c2d şi c2dm, iar pentru realizarea trecerii de la domeniul discret la cel continuu se pot utiliza
funcţiile: d2c şi d2cm.
Funcţia c2d realizează conversia modelelor continue în modele discrete echivalente,
implementate prin tf, zpk şi ss. De asemenea, se poate realiza şi conversia inversă, utilizând
funcţia d2c. Metodele care realizează această conversie (discretizarea sistemelor liniare) sunt:
zero-order-hold(zoh), first-order-hold, Tustin biliniar approximation (metoda trapezului), Tustin
with frequency prewarping şi matched poles and zeros (conversie realizată prin alocarea de poli
şi zerouri). Aceste funcţii pot fi apelate cu următoarele sintaxe:
sysc=d2c(sysd, Metoda)
s
Exemplul 5.1: Să se implementeze fdt H ( s) 2 prin poli şi zerouri
( s 2)( s 2s 2)
2
Rezolvare: Implementarea fdt de mai sus se poate face utilizând următoarea linie de
comandă:
z=0; p=[2 1+i 1-i]; k = -2; H = zpk(z, p, k);
sau în variantă operaţională:
s = zpk(’s’); H = -2 * s / (s-2)(s^2-2*s+2);
Zerourile sunt plasate la numărătorul fdt (rădăcinile numărătorului), iar polii la numitor
(rădăcinile numitorului).
5.3 – Desfăşurarea lucrării – Partea practică de implementare 47
Rezolvare: Vom utiliza următoarele linii de program, care generează graficele din figura
5.2:
step(sysc,'b',sysd,'r--')
figure,subplot(311),step(sysc,'b',sysd,'r--'),axis([0 2.5 0.6
1.2]),subplot(312),step(sysc,'b',sys,'r--'),axis([0 2.5 0.6
1.2]),subplot(313),step(sys,'b',sysd,'r--'),axis([0 2.5 0.6
1.2])
a)
48 Crearea şi conversia modelelor matematice - 5
b)
Fig. 5.2. a) Comparaţie între răspunsul sistemului continuu şi discret, b) comparaţie între sistemul continuu
şi discret (sus), între sistemul continuu şi discret cu un pas de eşantionare mai fin (mijloc), şi între cele
două sisteme discrete cu paşi de eşantionare diferiţi.
d 2 d
2
2 5 3 I ………………………………..(5.2)
dt dt
dx
Ax BI ........................................................................(5.3)
dt
Cx DI
în care:
0 1 0
A ; B 3; C 1 0; D [0]; x d ...(5.4)
5 2 dt
Ecuaţia (5.4) poate fi implementată în MATLAB prin matricele mărimilor de stare, după
5.3 – Desfăşurarea lucrării – Partea practică de implementare 49
cum urmează:
A=[0 1;-5 -2];B=[0;3];C=[1 0];D=0;
G=ss(A,B,C,D)
În multe situaţii din practică, cum ar fi analiza în domeniul frecvenţă sau proiectarea
regulatoarelor, sunt necesare modele matematice de tipul fdt sau reprezentări poli-zerouri.
Obţinerea unor astfel de modele, pornind, de exemplu, de la o reprezentare de stare a sistemului,
implică realizarea conversiei dintr-un tip de model matematic în altul.
s 0.25
H ( s)
s 1.75 s 0.25
2
B=
1
0
C=
500.0000 0.2500
D=
0
Obs. Este de remarcat faptul că funcţia tf2ss trebuie utilizată numai pentru sisteme, având
o singură intrare şi, în consecinţă, matricele B şi D vor fi întotdeauna vectori coloană.