Sunteți pe pagina 1din 10

Laborator nr.

Metoda locului rdcinilor


Obiectiv: Explicarea semnificatiei locului rdcinilor. Trasarea analitic i n Matlab
a locului rdcinilor.

1. Breviar teoretic
1.1. Introducere
Pentru a asigura anumite performane n funcionarea unei instalaii, proiectantul trebuie
s selecteze adecvat modelul regulatorului. Structura de comand (de tip sistem automat)
este indicat n fig. 1 .

Gp(s)
Referina
r(t)

Reostat
prescriere

a(t)

u(t)

Gr(s)
Regulator

Gf(s)

y(t)

Instalaie

Ieire

Sistem decizional
Gt(s)
Traductor

Figura 1

Proiectarea sistemului automat presupune:


pentru fiecare tip de problem practic se recomand folosirea unui anumit tip de
regulator, a unui traductor i a unui element de prescriere impuse de experiena
acumulat n domeniu;
funciile de transfer ale traductorului i elementului de prescriere sunt cunoscute;
funcia de transfer a regulatorului este dependent de anumii parametri; prin
proiectare se determin aceti parametri, n sensul de a asigura performanele
dorite pentru sistemul automat (performanele vor specifica o anumit
comportare pe durata regimului tranzitoriu i permanent);
prin simulare se verific faptul c parametrii determinai asigur cerinele
impuse.
Proiectarea sistemului automat se va axa de fapt pe alegerea convenabil a parametrilor
regulatorului.
O metod de proiectare a regulatorului este metoda locului rdcinilor. Metoda se
aplic sistemelor automate liniare monovariabile care pot fi reprezentate sub forma unei
scheme bloc de tipul:

U(s)

kG(s)

Gt(s)

Y(s)

k>0

Figura 2

Funcia de transfer de pe calea direct este k G( s ) , unde k este un parametru real strict
pozitiv, k > 0. Ea a rezultat din nserierea prii fixate - instalaiei (care este cunoscut) i
a regulatorului: k G( s ) G f ( s ) Gr ( s ) . Aceasta presupune c pentru regulator au fost
fixate valorile polilor i ale zerourilor i urmeaz a fi determinat prin proiectare doar
factorul de proporionalitate k > 0.
Funcia de transfer a sistemului automat rezult de forma:
k G( s )
Gaut( s )
1 k G( s ) Gt ( s )
Pentru simplitate se va considera Gt(s)=1, metoda rmnnd valabil i pentru cazul
Gt ( s ) 1 .
Performanele sistemului automat sunt dictate de configuraia poli-zerouri a acestuia. n
continuare se determin corelaia care exist ntre polii/zerourile lui G(s) (cunoscute) i
polii/zerourile sistemului automat Gaut(s). Se consider funcia de transfer G(s) de forma
Q( s )
, cu grad Q( s ) m, grad P( s ) n, n m . Pentru sistemul automat se
G( s )
P( s )
obine:
k Q( s )
Gaut( s )
P( s ) k Q( s )
Comparnd funciile de transfer G(s) i Gaut(s), se observ c:
- sistemul automat Gaut(s) are aceleai zerouri cu G(s);
- numrul polilor sistemului automat Gaut(s) = numrul polilor lui G(s) (deoarece
gradP(s) gradQ(s));
- polii sistemului automat depind de parametrul k>0.
Polii sistemului automat satisfac relaia:
1 k G( s ) 0 , k 0
care este echivalent cu:
absG( s ) 1 / k
argG( s ) ( 2i 1 ) 180

(1)
(2)

Determinarea acestor poli este complicat pentru polinoame P i Q de grad mare.


Valorile acestor poli depind de k i dicteaz performanele sistemului automat. Este de
interes, n acest sens, s se urmreasc poziia acestor poli n planul complex pentru k
variind de la 0 la . Reprezentarea polilor sistemului automat n planul complex pentru
diverse valori permise ale lui k (k>0) poate oferi informaii cu privire la comportarea
2

sistemului automat i ofer posibilitatea alegerii parametrului k astfel nct sistemul


automat Gaut s ating anumite performane. De exemplu, se poate urmri BIBO
stabilitatea sistemului automat, se poate aprecia dac rspunsul indicial este oscilant sau
aperiodic, etc.
Reprezentarea polilor sistemului automat n planul complex, pentru toate valorile k > 0,
se numete locul rdcinilor.
Nu se poate trasa exact locul rdcinilor pentru sistemele de ordin mare (gradul lui P(s)
mare), deducnd o expresie analitic exact care s exprime variaia polilor funcie de
parametrul k.
Pentru trasarea simpl, dar aproximativ, a locului rdcinilor pentru sisteme orict de
complicate, s-au dedus 10 reguli de trasare care presupun nite calcule simple. Aceast
trasare ofer suficiente detalii pentru proiectani. Pe baza acestui set de 10 reguli, locul
rdcinilor se traseaz rapid i simplu.
Locul rdcinilor va conine cte o curb pentru fiecare pol al sistemului automat, pe
aceasta curb polul deplasndu-se odat cu modificarea valorii lui k de la 0 la infinit. Pe
aceste curbe, o sgeat va indica sensul de cretere a lui k. Condiiile (1) i (2) devin
condiiile ca un punct din planul complex s aparin locului rdcinilor.
Pe locul rdcinilor vor fi marcate i zerourile sistemului automat, care coincid cu
zerourile din bucla deschis i care, pentru k devin poli ai sistemului automat.
Trasarea pornete de la cunoaterea elementelor lui G(s) (sistemul n bucl deschis) poli i zerouri - i va oferi posibilitatea de a analiza comportarea sistemului automat.
Dac sistemul automat are un traductor pe calea de reacie negativ cu funcia de transfer
diferit de 1, notat Gt, atunci funcia de transfer n bucl deschis devine:
G(s) Gd (s) Gt (s)
unde Gd(s) reprezint funcia de transfer pe calea direct. Funcia G(s) va fi luat n
considerare la aplicarea celor 10 reguli. n aceast situaie, zerourile sistemului automat
vor fi:
{zerouri Gaut(s)}={zerouri Gd(s) } {poli Gt(s)}.
Este prezentat n continuare setul celor zece reguli, urmnd a indica apoi, pe exemple,
modul de utilizarea a acestuia:
1. 2. Reguli pentru trasarea locului rdcinilor
Se consider sistemul automat din figura 2, cu funcia de transfer pe calea direct G(s)
Q( s )
de forma G ( s)
, grad Q(s) m, grad P(s) n, n m i funcia de transfer a
P( s)
traductorului G(t ) 1.
1. Polii pi , i 1, n i zerourile z j , j 1, m ale sistemului n bucl deschis G(s) aparin
locului rdcinilor:
polii pentru k=0 ;
zerourile devin polii sistemului automat pentru k .

Se marcheaz n planul complex polii i zerourile lui G(s). Convenia este ca "*" s
reprezinte polii pi , i 1, n i "o" s reprezinte zerourile z j , j 1, m . Dac un pol are
multiplicitatea q, se recomand plasarea a q stelue; similar pentru zerouri multiple.
Pentru k lund valori de la 0 la , ramurile locului rdcinilor pleac din polii marcai
i o parte din ramuri ajung n zerourile marcate.
2. Locul rdcinilor este simetric fa de axa real (pentru o valoare fixat a lui k,
sistemul automat admite ori poli reali, ori poli compleci conjugai).
3. Se determin punctele de pe axa real care aparin locului rdcinilor, tiind c la
dreapta lor exist un numr impar de poli i zerouri ale lui G(s), fiecare considerat cu
ordinul su de multiplicitate.
Se marcheaz aceste poriuni.
4. Pentru n m 1 locul rdcinilor are n m ramuri care ajung n punctul de la ,
pentru k . Dac n m 1, atunci este vorba de o singur ramur care coincide cu
o parte a axei reale. Dac n m 2 , atunci n m ramuri ajung n punctul de la dea lungul a n m asimptote.
Asimptotele spre care tind ramurile locului rdcinilor pentru k se pot
trasa considernd urmtoarele informaii:
numrul asimptotelor = n-m,
unde:
n= grad(numitor G(s)) = grad(P(s)),
m= grad(numrtor G(s)) = grad(Q(s)).
asimptotele se intersecteaz ntr-un punct situat pe axa real (numit
centru de greutate) de abscis:
m

1 n
scg
pi z j .
n m i1
j 1

- polii i zerourile se consider cu gradul lor de multiplicitate.


unghiurile sub care pleac asimptotele din centrul de greutate sunt:
2k 1
k
180 , k 1, n m .
nm
Exemplu:
s 1
Pentru G ( s)
, se poate scrie:
( s 2) 2 ( s 3)
o m 1, n 3 ;
o zerourile sistemului: z1 1 ;
o polii sistemului: p1 p2 2, p3 3 ;
o numrul asimptotelor este n m = 3 1 = 2;
o abscisa centrului de greutate:
1
6
scg
2 2 3 1
3 ;
3 1
2
o unghiurile sub care pleac asimptotele din centrul de greutate:
1
3
1 180 90
2 180 270 .
2
2

S-a obinut c cele dou asimptote sunt paralele cu axa imaginar i pleac din punctul
de coordonate (-3,0).
5. Ramurile locului rdcinilor se intersecteaz n punctele de ramificare. Pentru
valorile k>0 corespunztoare punctelor de ramificare, sistemul automat admite poli
multipli.
De exemplu, ntre dou zerouri reale sau ntre doi poli reali exist n mod necesar
puncte de ramificare reale. Acestea nu sunt ns singurele puncte de ramificare ce pot
aprea pe locul rdcinilor.
Punctele de ramificare sunt soluiile ecuaie:
m
n
1
1

j 1 x z j
i 1 x pi
care ndeplinesc proprietatea c aparin locului rdcinilor.
Observaii:
1) Pentru a verifica mai simplu dac soluiile ecuaiei de mai sus aparin locului
rdcinilor, se pot considera urmtoarele indicaii:
- dac soluiile x sunt reale, atunci, folosind regula 3, se poate uor verifica dac
acea soluie aparine sau nu locului rdcinilor (poriunile de pe axa real ce
aparin locului rdcinilor au fost deja marcate);
- dac soluiile x nu sunt reale i sistemul automat nu poate admite simultan cel
puin 4 poli complecsi, atunci acele soluii x sigur nu aparin locului rdcinilor;
- dac soluiile x nu sunt reale i sistemul automat poate admite simultan cel puin
4 poli complecsi, atunci soluiile x sunt puncte de ramificare dac i numai dac
G(x) este real, negativ.
2) Doi poli de pe axa real se consider vecini dac ntre ei nu este nici un zerou real.
Doi poli egali nu sunt considerai vecini.
3) Valoarea corespunztoare lui k n punctul de ramificare x se calculeaz utiliznd
relaia (1), care devine:
k 1 /abs G( x ) .
6. Din poli reali multipli i n zerouri reale multiple pleac, i respectiv sosesc, un
numr de ramuri egal cu multiplicitatea polului, respectiv zeroului. Direciile
tangentelor la ramurile respective (n polii sau zerourile de multiplicitate q) sunt date
de:
dac numrul de zerouri i de poli reali situai la dreapta este impar:
2k
k
180, k 0, q 1 ;
q
dac numrul de zerouri i de poli reali situai la dreapta este par:
2 k 1
k
180, k 0, q 1 .
q
Exemplu:
s 1
Pentru funcia de transfer G ( s)
(utilizat la regula 4) se obine:
( s 2) 2 ( s 3)

*
-3

**
-2

-1

axa real

o Poriunea de pe axa real cuprins ntre -3 i -1 aparine locului rdcinilor.


o ntre polii -3 i -2 exist un punct de ramificare, a crui abscis satisface
ecuaia:
1
1
1
1

0 x 2 3x 1 0
x1 x2 x2 x3
x1 2.62 , x2 0.38
Se alege valoarea 2.62, care este cuprins ntre 3 i 2. Se observ c 0.38 nu
aparine locului rdcinilor. Cele dou ramuri ale locului rdcinilor prsesc axa real
din punctul de coordonate (-2.62; 0).
o Valoarea lui k n punctul de ramificare este:
| 2.62 2 | | 2.62 2 | | 2.62 3 | 0.62 0.62 0.38
k

0.09
| 2.62 1 |
1.62
o ntre dou ramuri vecine ce se ntlnesc n acest punct de ramificare unghiul
este de 90 grade.
7. Dintr-un pol complex, notat p, de multiplicitate q, pleac q ramuri sub unghiurile:

n
1 m
k arg( p z j ) arg( p pi ) ( 2 k 1 ) 180 , k 0 ,q 1 .
i 1
q j 1

pi p

ntr-un zero complex, notat z, de multiplicitate q, vin q ramuri sub unghiurile:

n
1 m

k arg( z z j ) arg( z pi ) ( 2 k 1 ) 180 , k 0 , q 1 .


q j 1
i 1
z j z

8. Dintr-un/ntr-un punct de ramificare pleac q ramuri i sosesc q ramuri, unghiul


dintre tangentele la dou ramuri vecine este 360/2q.
9. Se determin punctele de intersecie ale locului rdcinilor cu axa imaginar a
planului s i valorile corespunztoare ale lui k. Aceste puncte marcheaz pe ramurile
locului rdcinilor limita de stabilitate BIBO a sistemului automat.
Metoda1:
Punctele de intersecie cu axa imaginar se pot determina pornind de la relaia:
1 k G( j ) 0 , cu k 0 i R .
Se separ partea real i partea imaginar. Se obine un sistem de dou ecuaii
Re1 k G( j ) 0
,

Im1 k G( j ) 0
6

care se rezolv n domeniul k 0 i R .


Metoda 2:
Se folosete criteriul Routh. In majoritatea cazurilor se pot utiliza regulile:
anulnd elementele de pe penultima linie, se obine valoarea lui k pentru care
locul rdcinilor intersecteaz axa imaginar;
notnd elementele antepenultimei linii cu a(k ) i b(k ) , punctele de
intersecie ale locului rdcinilor cu axa imaginar se obin ca rdcini ale
ecuaiei:
a(k ) s 2 b(k ) 0
10. Parametrizarea ramurilor locului rdcinilor dup valorile lui k 0 (gsirea
valorii lui k pentru orice punct de pe curb) se face cu formula (1): abs(G(s)) 1 / k .

2. Trasarea locului rdcinilor n Matlab


1) Pentru trasarea locului rdcinilor (LR) n Matlab se folosete funcia rlocus:
sintaxa:
r = rlocus(num,den,k); sau rlocus(num,den); sau
[r, k] = rlocus(num,den);
argumente:
num vectorul coeficienilor polinomului de la numrtorul lui G(s);
den vectorul coeficienilor polinomului de la numitorul lui G(s);
(aceste argumente precizeaz funcia de transfer de pe calea direct);
k vector linie corespunztor valorilor parametrului k,
k=[k1 k2 ..... ki ..... kp];
efect:
- pentru apelul r = rlocus(num,den,k)calculeaz valorile polilor
sistemului nchis pentru valorile parametrului k din vectorul precizat ca
argument;
- pentru apelul rlocus(num,den) se traseaz locul radcinilor pentru
valori k adecvate.
- pentru apelul [r, k] = rlocus(num,den), se calculeaza matricea r
pentru valori k adecvate.
returneaz:
o pentru apelul r = rlocus(num,den,k), se returneaz o matrice r
care conine polii sistemului automat avnd:
numrul de linii = lungimea vectorului k ( length(k)),
numrul de coloane = numrul polilor sistemului automat (n).
o pentru apelul r=rlocus(num,den,k), se returneaz o pentru
apelul [r k] =rlocus(num,den), se returneaz matricea r care
conine polii sistemului automat i vectorul k folosit.
Matricea r va conine polii sistemului automat calculai pentru valorile
parametrului k precizate n vectorul k=[k1 k2 ..... kp] ales
sau calculat. Linia i a matricei r conine polii sistemului automat
pentru valoarea ki a parametrului k, adic soluiile ecuaiei:
7

1 ki G(s) 0
Linia i va conine cte un punct pentru fiecare ramur a LR.

Dac prin apelul lui rlocus nu se solict si afiarea grafic, atunci graficul LR poate fi
trasat folosind instruciunea:
plot(real(r),imag(r),'*w')
sau
plot(r,'*w').
2) Pentru determinarea valorilor k asociate unor puncte de pe locul rdcinilor se
folosete funcia rlocfind
sintaxa:
[k, poles] = rlocfind(num,den);
- argumente:
num vectorul coeficienilor polinomului de la numrtorul lui G(s);
den vectorul coeficienilor polinomului de la numitorul lui G(s);
(aceste argumente precizeaz funcia de transfer de pe calea direct);
efect: ateapt selectarea cu ajutorul mouse-ului a unor puncte de pe locul
rdcinilor, apoi calculeaz coordonatele punctelor selectate i valoarea
corespunztoare a lui k
returneaz: polii sistemului automat selectai i valoarea k ce corespunde
polilor selectai
Aceast funcie poate fi folosita, de exemplu, pentru determinarea punctelor de
ramificare i a interseciilor LR cu axa imaginar.
Exemplu de program:
num=[ ....];
den=[ ....];
k=[.....];
r=rlocus(num,den,k);
plot(r,'ow');
n ce privete modalitatea de construire a vectorului k, nu se pot da reguli precise.
Valoarea iniial se alege, de regul, 0. Numrul punctelor din vector se alege, de regul,
100-500, n funcie de performanele sistemului de calcul folosit.
Valoarea final a lui k trebuie aleas astfel nct s se surprind n ntregime, dac este
posibil, zona de stabilitate BIBO a sistemului automat. Pasul de variaie a lui k se alege
astfel nct s se poat evidenia punctele importante (punctele de ramificare,
interseciile cu axa imaginar) cu o precizie suficient de bun.

3. Exerciii rezolvate
Exemplul 1:
Se consider:
G( s)

s 1
s ( s 2) ( s 9) ( s 12)
2

Determinai punctul de intersecie cu axa imaginar, punctele de ramificare i valorile lui


k n aceste puncte folosind Matlab - inspectnd matricea r returnat de funcia Matlab
rlocus.
8

Rezolvare:
Locul rdcinilor se obine n Matlab astfel :
num=[1 1];
den=conv([1 2 0 0],[1 21 108]);
k=0:10:500;
r=rlocus(num,den,k);
plot(r,'*w');
Vizualiznd matricea r se pot determina punctele de interes precizate mai sus.
Pentru intersecia cu axa imaginar:
La intersecia cu axa imaginar, polii sistemului automat de pe ramurile ce intersecteaz
axa imaginar, au partea real 0.
Se noteaz:
j = polul sistemului automat de pe ramura L1 la intersecia cu axa imaginar;
k0 = valoarea lui k n punctul de intersecie considerat.
Valoarea k0 va fi plasat ntre dou valori vecine, k(i) i k(i+1), precizate n
vectorul k. Polii de pe ramura L1, corespunztori valorilor k(i) i respectiv k(i+1)
vor avea semne contrare ale prii reale. Se va alege, de exemplu:
k0=[k(i)+k(i+1)]/2
= media aritmetic a prilor imaginare ale polilor de pe L1 pentru k(i) i k(i+1).
n exemplu ales:
ramurile care intersecteaz axa imaginar pleac din polul dublu s=0;
se urmrete n ce coloane din matricea r sunt plasai aceti poli;
pe respectivele poriuni se urmrete o schimbare de semn a prii reale a
polilor - n acest exemplu, aceast schimbare de semn se sesizeaz pe coloanele
4 i 3;
se afieaz pe ecran matricea:
[r(:,4) k'];
se citete:
k0=(440+450)/2=445
w=1.7
Punctul de ramificare: Exist, n acest caz, un punct de ramificare real. Se noteaz cu L2
si L3 ramurile care se ntlnesc n punctul de ramificare, notate L2 i L3. Inspectnd
matricea r, coloanele de interes sunt n acest caz coloanele 1 i 2.
Folosind comanda
[r(:,1) k']
se obine :
kram=225
xram=-10.72
Exemplu 2:
Acelai enun ca n exemplul 1 pentru:
s2 1
G( s)
s ( s 1)
Vectorii k i k1 au fost construii astfel:
k1=0:0.005:0.4;
% pentru a surprinde cit mai exact
9

% punctul de ramificare
k=0:0.1:10;
Dup lansarea programului polii sistemului automat sunt coninui n matricele r1
(pentru valorile k1) i r (pentru valorile k).

10