Proiect Final Control Digital
Proiect Final Control Digital
CONTROL DIGITAL
PROIECT FINAL
PREZENTAT TUTORELUI
DIEGO FERNANDO SENDOYA LOSADA
INTRODUCERE
OBIECTIVE
DEZVOLTARE
Exerciț iul 1: Presupuneț i că funcț ia de transfer a plantei este:
( )= ( ) ( ) ∗( ) ( )
( )= ( )− ( ) ( )
Acum înlocuind (1) în (2)
E(s)=R(s)−Gp(s)Zoh(s)E∗(s)
[E(s)=R(s)−Gp(s)Zoh(s)E∗(s)]∗
E∗(s)=R∗(s)−[Gp(s)Zoh(s)]∗E∗(s)
E∗(s)+[Gp(s)Zoh(s)]∗E∗(s)=R∗(s)
E∗(s)[1+[Gp(s)Zoh(s)]∗]=R∗(s)
Ș COALA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍAS E INGENIERÍAS
CONTROL DIGITAL
Ș COALA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
Ș COALA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERIE
CONTROL DIGITAL
Ș COALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
SOBREIMPULSO
Ș COALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERIE
CONTROL DIGITAL
Ș COALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
Ș COALA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERIE
CONTROL DIGITAL
EXERCIȚIU 2
Ș COALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
[ ]
( )
1
s ( s +1 )
(
HG ( z=) 1−z
−1
z)
s
¿ ( 1−z−1 ) z
[ 1
+
1
s s +1s
2
−
1
]
−1 0,2z z z
HG ( z
) =(1−z )( ( 2
+
z−1 ) z−e−0.2
−
z−1
)
0.0187308 ( z +0.935525 )
¿
( z−1)(z−0.818731)
( )
1 0,0187308 ( z +0.935525 )
k v = limz−1( )
T z→1 ( z−1 ) ( z−0.818731 )
k v =0.04
Acum se realizează procedura pentru a găsi funcț ia de transfer
în buclă închisă ș i eroarea de poziț ie pentru a putea găsi eroarea în stare
estacionar în faț a unei intrări în trepte.
( )
0.0187308 ( z +0.935525 )
( z−1 ) ( z−0.818731 )
k p =lim =1
(
0.0187308z+( 0.935525 )
)
z→1
1+
( z−1z−0.818731
)( )
1
e p= =0.5
1+ k p
Acum se are marja de fază:
0.0187308 ( z +0.935525 )
HG ( z )=
( z−1 ) ( z−0.818731 )
Ș COALA DE Ș TIINȚE BAZICE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
1+0,5Tw
z=
1−0,5Tw
1+0,5 ( 0,2 ) w
z=
1−0,5 ( 0,2 ) w
( 1+ 0,1W)
z=
1−0,1w
HG (w=)
0.0187308
( ( 1+ 0.1w )
1−0,1w
+ 0.935525 )
( (1−0,1w
1+ 0.1w )
−1 1−0,1w −0.818731 )
)( (1+0.1w )
0.0187308 ( 1+0,1w+0.935525−0,0935525w )
HG ( w )=
(1+ 0,1w−1+0,1w ) ( 1+0,1w−0.818731+0,818731w )
0,1813+0,1818w
0,2w(¿)
¿
0.0187308 ( 1,935525+0,065525w )
HG ( w )=
¿
0,00121w+0,03625
HG ( w )=
0,0363w2 +0,0362w
G ( z )= ( 1−z−1 ) z
[ 2
k
s (s+1 ) ]
G ( z )= ( 1−z ) k (
−1
(
0.018273+0.01752z
( 1−z 1−0.81871−z
( −1 2
z ) −1−1
)
) −1
)
k ( 0.01873z+0.01752 )
G ( z )=
(z−1)(z−0.81871)
Realizăm o transformare biliniară
1+0.5Tw1+ 0.1w
z= =
1−0.5Tw1−0.1w
Ș COALA DE Ș TIINȚE BAZICE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
1+0.1w
0.01873 +0.01752
1−0.1w
G ( w)=k
(
1+ 0.1w
1−0.1w
−1
1+0.1w
1−0.1w )(
−0.81871 )
k(−0.000332653w2−0.096332w+0.996585)
G ( w )=
w2 +0.996805w
Cu Kv=2 presupunem o funcț ie de transfer pentru controlerul digital
1+τw
G d ( w )=
1−αw
1+τw k(−0.000332653w2−0.096332w+0.996585)
k v =lim
w→0 ( 1−αw
( ) w2 +0.996805w
)=2
2
k= =2
0.999779
Acum procedăm să proiectăm un controler care să aibă un unghi de 50° fără
afectează constanta k.
Astfel 50-31.6=18.4, se recomandă un margine între 8 ș i 12 grade având în vedere
deplasarea câș tigului în frecvenț a de croș etare se va considera 28°
unghiul maxim de avans al fazei. Pentru a calcula factorul de atenuare.
1−α
senϕm=
1+α
Înlocuim cu un unghi
1−α
sen28=
1+α
( 1+α ) sen28=1−α
a=0.361
Găsim punctul în care magnitudinea nu este compensată ș i
înlocuim cu w=jv în G(w).
1
−20 log =−4.425
√ 0.361
(√ ( ) √ ( ) )
2 2
2 v v
1+ 1+
300 10
vertG ( jv )=
v ❑√ 1+ v 2
Frecvenț a este egală cu 1.7
Frecvenț a de cruce este dată de:
Ș COLA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
1
v c= =1.7
√ ατ
τ =0.9790ατ=0.3534
( ( −0.000332653w−0.096332w+0.996585
)(
2
1+0.9790w
)
)
G D ( w ) G ( w )= 2
w + 0.996805w 1+0.3534w
Transformăm funcț ia de transfer a compensatorului în termeni de z prin
mijloc de transformare biliniară unde T=0.2:
z−1
w=10
z +1
G ( w )=
d
( z+1 )
z −1
1+0.9790 10
1+0.3534 (10
z+ 1 )
z−1
2.3798z−1.93869
G D ( z )=
z−0.558888
În MatLab avem:
Ș COALA DE Ș TIINȚE FUNDAMENTALE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
2. ACTIVITATE PRACTICĂ
ACTIVITATEA 1
Mai întâi trebuie să găsim răspunsul plantei în circuit deschis:
Răspunsul plantei în circuit deschis
p1=-1
p2=-2
k=10
Gps=zpk([],[p1 p2],k)
pas(Gps);
SCOALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
LĂZO ÎNCHIS
Glcsc=tf(feedback(Gps,1))
[numsc,densc]=tfdata(Glcsc, 'v');
Wn=sqrt(densc(3))
zeta=(densc(2))/(2*Wn)
pas(Glcsc,5);
CONDIȚII DE PROIECTARE
ts=1.9;
SI=19;
zita=-(log(SI/100))/(sqrt(pi^2+(log(SI/100))^2))
wn=4/(zita*ts)
zita =
0,4673
wn =
4.5047
Gcs=zpk([p1 p2],[0 -2*zita*wn],wn^2/k)
Gcs =
s (s+4.211)
Glccc =
20.293
----------------------
(s^2 + 4.211s + 20.29)
Prueba
T=0.1;
Gz=zpk(c2d(Gps,T,’zoh’))
Gz =
0.04528 (z+0.9048)
---------------------
Ș COALA DE Ș TIINȚE DE BAZĂ, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
(z-0.9048) (z-0.8187)
Gcz=zpk(c2d(Gcs,T,'tustin'))
Gcz =
Glcz =
pas(Glcz)
Ș COALA DE Ș TIINȚE BAZICE, TEHNOLOGII Ș I INGINERII
CONTROL DIGITAL
Punctul 2
numDz = [0.01873 0.01752];
denDz = [(1-1) (1-0.81871)];
Kv = 2
sys = Kv*tf(numDz, denDz, 0.2)
margine(sys)
sisotool(sys)