Sistemi Digitali di Controllo A.A. 9- p. /3 SISTEMI DIGITALI DI CONTROLLO Prof. Alessandro De Luca DIS, Università di Roma La Sapienza deluca@dis.uniroma.it Lucidi tratti dal libro C. Bonivento, C. Melchiorri, R. Zanasi: Sistemi di Controllo Digitale Capitolo 6: Specifiche di progetto Si ringraziano gli autori
Sistemi Digitali di Controllo A.A. 9- p. /3 Specifiche di progetto dei sistemi di controllo Specifiche che il sistema controllato (stabile asintoticamente) deve soddisfare a regime permanente (o in condizioni statiche) e durante il regime transitorio (o in condizioni dinamiche) - Precisione a regime: capacità del sistema di seguire alcuni segnali di riferimento con il minimo errore poli in z =, aumento del guadagno,... - Risposta nel transitorio: andamento per tempi finiti dell uscita del sistema in retroazione in risposta a segnali tipici in ingresso in risposta al gradino nel dominio del tempo (posizione dei poli), o nel dominio frequenziale - Stabilità relativa: margini di stabilità sul diagramma di Nyquist - Sensibilità parametrica: le prestazioni del sistema non vengono alterate (troppo) dalle variazioni di parametri del sistema (tipicamente in catena diretta) - Reiezione di disturbi: capacità del sistema di ridurre al minimo l influenza sull uscita di eventuali disturbi che entrano nell anello di controllo poli in z = (prima del disturbo), aumento del guadagno,... - Sforzo di controllo: limiti sull ampiezza massima della variabile manipolabile u(t), o sull energia entrante nel sistema (proporzionale a u (t)dt)
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Specifiche a regime Errori a regime (caso continuo): tipo di sistema numero di poli in s = R(s) E(s) C(s) D(s) G(s) D(s)G(s) = K( + q s)( + q s)...( + q m s) s N ( + p s)( + p s)...( + p p s) Errori a regime (caso discreto): tipo di sistema numero di poli in z = HP(z) R(z) E(z) C(z) D(z) ZOH P(s) [ ] P(s) G(z) = D(z)HP(z) = D(z)( z )Z s E(z) = + G(z) R(z) = W e(z)r(z)
Sistemi Digitali di Controllo A.A. 9- p. 4/3 Errori a regime (retroazione unitaria) Assumendo che il sistema ad anello chiuso sia asintoticamente stabile, l errore a regime può essere calcolato mediante il teorema del valore finale e reg = lim k e(k) = lim z [( z )E(z)]=lim z [( z ) +G(z) R(z) ]=lim z [ z z W e(z)r(z)] Le specifiche sono date in termini di risposta a regime a riferimenti in ingresso che sono polinomi fattoriali canonici di ordine h r(kt) = ( ) k T h = h k(k )...(k h + ) h! T h eventualmente scalati per una costante r ordine h = r(kt) = (gradino) ordine h = r(kt) = k T (rampa) k(k )T ordine h = r(kt) = = (parabola discreta T rampa) (spesso si usa semplicemente la parabola discreta r(kt) = (kt) )
Sistemi Digitali di Controllo A.A. 9- p. 5/3 Sistema di controllo discreto di tipo h Il sistema di controllo discreto a retroazione è di tipo h se in risposta a un ingresso di ordine h presenta un errore a regime costante e diverso da zero Data la struttura delle R(z) di ingressi canonici campionati, ciò accade se e solo se la funzione di trasferimento d errore W e (z) W e (z) = E(z) R(z) = + G(z) ( = G(z) ) + G(z) = W(z) ha uno zero in z = di molteplicità h la G(z) ha un polo in z = di molteplicità h Posto k G = [ ( z ) h G(z)/T h], un sistema di controllo di tipo h ha un errore a z= regime per un ingresso di ordine h pari a e = + k G (h = ) e h = k G (h ) Verifica per i casi notevoli di ordine h =,,, con una terminologia di tipo meccanico
Sistemi Digitali di Controllo A.A. 9- p. 6/3 Errore a regime per ingressi canonici Errore di posizione per ingresso a gradino campionato (ordine ) r(kt) = r R(z) = r z z = r z [ e p (= e ) = lim ( z ) z + G(z) Definendo la costante di posizione k p = lim z G(z) e p = r + k p ] r z [ r = lim z + G(z) ] Sistema di tipo h = : k p finito Sistema di tipo h =,,... : k p = e p =
Sistemi Digitali di Controllo A.A. 9- p. 7/3 Errore a regime per ingressi canonici Errore di velocità per ingresso a rampa campionata (ordine ) r(kt) = r kt R(z) = r Tz (z ) = Tz r ( z ) [ e v (= e ) = lim ( z ) z + G(z) Tz ] r ( z ) Definendo la costante di velocità k v = lim z ( z )G(z) T e v = r k v [ ] Tr = lim z ( z )G(z) Sistema di tipo h = : k v = e v = Sistema di tipo h = : k v finito Sistema di tipo h =, 3,... : k v = e v =
Sistemi Digitali di Controllo A.A. 9- p. 8/3 Errore a regime per ingressi canonici 3 Errore di accelerazione per ingresso a parabola campionata (ordine ) r(kt) = r (kt) [ e a (= e ) = lim ( z ) z T z(z + ) R(z) = r (z ) 3 = T z ( + z )r ( z ) 3 + G(z) T z ( + z )r ( z ) 3 Definendo la costante di accelerazione k a = lim z ( z ) G(z) T e a = r k a ] [ T ] r = lim z ( z ) G(z) Sistema di tipo h =, : k a = e a = Sistema di tipo h = : k a finito Sistema di tipo h = 3, 4,... : k a = e a =
Sistemi Digitali di Controllo A.A. 9- p. 9/3 Esempi di calcolo dell errore a regime errore di posizione (tipo ) G(z) = z.5z con T =.5 s k p = lim z G(z) = e p = + =.333 k v = lim z ( z )G(z) T = e v = = k a = lim z ( z ) G(z) T = e a = =. Sistema di tipo con ingresso a gradino Errore.9.8.8.7.6 y.6.4..5.5.5 3 3.5 4.5.4.3...5.5.5 3 3.5 4
Sistemi Digitali di Controllo A.A. 9- p. /3 Esempi di calcolo dell errore a regime (cont) errore di velocità Sistema di tipo con ingresso a rampa Errore 4 y 3.5 3.5.5.5.5.5.5 3 3.5 4.8.6.4..8.6.4..5.5.5 3 3.5 4 errore di accelerazione 8 Sistema di tipo con ingresso a parabola 4 Errore 7 3.5 6 3 5.5 y 4 3.5.5.5.5.5 3 3.5 4 s.5.5.5 3 3.5 4 s
Sistemi Digitali di Controllo A.A. 9- p. /3 Esempi di calcolo dell errore a regime (tipo ) G(z) =.3z.z +.z =.3z ( z )(.z ) con T =.5 s errore di posizione k p = lim z G(z) = e p = k v = lim z ( z )G(z) T =.75 e v =.333 k a = lim z ( z ) G(z) T = e a =. Sistema di tipo con ingresso a gradino Errore.5.8 y.6.5.4. -.5 3 4 5 6 7 8 9-3 4 5 6 7 8 9
Sistemi Digitali di Controllo A.A. 9- p. /3 Esempi di calcolo dell errore a regime (cont) errore di velocità Sistema di tipo con ingresso a rampa Errore y 9 8 7 6 5 4 3 3 4 5 6 7 8 9.8.6.4..8.6.4. 3 4 5 6 7 8 9 errore di accelerazione 5 45 Sistema di tipo con ingresso a parabola 4 Errore 4 y 35 3 5 5 5 3 4 5 6 7 8 9 s 8 6 4 3 4 5 6 7 8 9 s
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Esempi di calcolo dell errore a regime 3 (tipo ) G(z) =.3(.z +.37z ) ( z ) (.6z ) con T = s errore di posizione k p = lim z G(z) = e p = k v = lim z ( z )G(z) T = e v = k a = lim z ( z ) G(z) T =.75 e a = 7.843 Sistema di tipo con ingresso a gradino Errore.8.5.6.4..5 y.8.6.4. 3 4 5 6 -.5 - -.5-3 4 5 6
Sistemi Digitali di Controllo A.A. 9- p. 4/3 Errori a regime errore di velocità 6 Sistema di tipo con ingresso a rampa 3 Errore 5 4 y 3 - - 3 4 5 6-3 3 4 5 6 errore di accelerazione 8 Sistema di tipo con ingresso a parabola Errore 6 4 8 y 8 6 6 4 4 3 4 5 6 s 3 4 5 6 s
Sistemi Digitali di Controllo A.A. 9- p. 5/3 Errori a regime (sommario per retroazione unitaria) Errori a regime in funzione del tipo h di sistema per ingressi con r = Errore a regime in risposta a Tipo di sistema gradino rampa parabola tipo + k p tipo k v tipo k a Si noti che le costanti k G della G(z) potrebbero essere negative, nel qual caso occorre utilizzare il modulo k G (soprattutto per h =!)
Sistemi Digitali di Controllo A.A. 9- p. 6/3 Errori a regime per retroazione non unitaria H(z) Si è ancora interessati alla differenza E(z) = R(z) C(z), ma in generale allora il riferimento in ingresso all anello è R(z) = H(z)C des (z) Si applicano le stesse formule con G (z) = G(z) + G(z) [H(z) ] anzichè G(z). Infatti G (z) R(z) G(z) C(z) R(z) G(z) C(z) H(z) H(z) retroazione non unitaria schema equivalente a retroazione unitaria
Sistemi Digitali di Controllo A.A. 9- p. 7/3 Errori a regime per retroazione non unitaria H(z) = /k d Il caso notevole H(z) = /k d rappresenta la presenza di un coefficiente di trasduzione del sensore di misura dell uscita E(z) = C des (z) C(z) = k d R(z) C(z) C des (z) R(z) G(z) k d k d C(z) C(z) R(z) = W(z) = G(z) = k dg(z) + G(z) k d + G(z) k d E(z) R(z) = k dr(z) C(z) R(z) = W e (z) = k d W(s) = k d k d + G(z) e = k d k d + k G (h = ) e h = k d k G (h )
Sistemi Digitali di Controllo A.A. 9- p. 8/3 Specifiche sul transitorio nel dominio del tempo Tali specifiche per sistemi discreti sono del tutto analoghe a quelle del caso tempo continuo, dove si definiscono le seguenti caratteristiche della risposta a gradino - tempo di salita T s per passare dal % (o 5%) al 9% (o 95%) del valore finale c( ) - tempo di assestamento T a oltre il quale c(t) differisce per < 5% (o < %) da c( ) - tempo di ritardo T r quando l uscita c(t) raggiunge il 5% del valore c( ) - massima sovraelongazione S rispetto al valore di regime c( ) (di solito in %) - istante di massima sovraelongazione T m dove c(t m ) = c( ) + S.6.4. S.5 c(t).8.6.4 Ts. 3 4 5 6 7 8 9 Tr Tm Ta t
Sistemi Digitali di Controllo A.A. 9- p. 9/3 Specifiche sul transitorio nel dominio del tempo Per un sistema del secondo ordine (o con coppia di poli dominanti), è possibile ricavare formule chiuse jω jω n δ ω n G(s) = ω n s + δω n s + ω n δω n σ - tempo di salita da al % del valore finale - tempo di assestamento T s% = π arccosδ ω n δ T a = 3 δω n (al 5%) T a = 4 δω n (al %)
Sistemi Digitali di Controllo A.A. 9- p. /3 Specifiche sul transitorio nel dominio del tempo 3 - massima sovraelongazione percentuale S = [c(t m ) ] = e δπ δ 9 8 7 6 S % 5 4 3..4.6.8 delta tipico δ =.5.8 - istante di massima sovraelongazione T m = π ω n δ
Sistemi Digitali di Controllo A.A. 9- p. /3 Specifiche sul transitorio nel dominio della Z-trasformata Impongono l appartenenza dei poli ad anello chiuso a zone del piano z z = e st
Sistemi Digitali di Controllo A.A. 9- p. /3 Specifiche sul transitorio nel dominio della frequenza Anche queste sono analoghe al caso a tempo continuo (Bode o Nyquist, con le dovute cautele, e Nichols) Si possono mettere in relazione con i parametri di un sistema del secondo ordine - margine di fase m f detta φ (<, in generale) la fase di G(e jωt ) in corrispondenza alla pulsazione ω t (di taglio) dove G(e jω tt ) =, il margine di fase è m f = π φ con valori tipici di specifica m f = 45 6 - margine di guadagno m g è l inverso del guadagno di anello alla pulsazione ω g dove arg{g(e jω gt )} = π m g = G(e jω gt ) con valori tipici di specifica m g = 4 6 ( 6 db)
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Specifiche sul transitorio nel dominio della frequenza - modulo alla risonanza M r è il massimo valore che assume il modulo di G(e jωt ), con valori tipici di specifica M r = 3 db 45 4 35 M r = δ δ G r (db) 3 5 5 5..4.6.8 delta - pulsazione di risonanza ω r è la pulsazione alla quale si verifica il modulo alla risonanza ω r = ω n δ - banda passante B 3 è la pulsazione alla quale il modulo della risposta armonica si riduce di 3 db rispetto al valore in continua (a ω = ) - si ricorre spesso all utilizzo del piano ausiliario w, che gode della proprietà (come nel dominio s) di poter trattare con funzioni razionali fratte di ω
Sistemi Digitali di Controllo A.A. 9- p. 4/3 Specifiche sul transitorio uniche dei sistemi discreti - tempo di risposta finito, possibilmente minimo lt esempio elementare e k = e(kt) = e, k = l, l +,... c k+ = c k + u k u k = c des c k porta a e k = c k c des = in ogni k =,,..., quali che siano c e c des (risposta in tempo finito e minimo, con l = ) - per processi continui campionati, con riferimento a un ingresso a gradino, risposta piatta possibilmente in tempo minimo si annulla definitivamente l errore, a partire da un istante di campionamento finito, anche al di fuori degli istanti kt - risposta deadbeat, una generalizzazione del caso precedente per altri ingressi tipici (rampa, parabola,... ) - caratteristica legata al posizionamento dei poli ad anello chiuso nell origine
Sistemi Digitali di Controllo A.A. 9- p. 5/3 Sensibilità parametrica Sensibilità del sistema in retroazione G (z) = G(z) + G(z) a variazioni di un parametro a rispetto al valore nominale Facendo il limite per a Sensibilità di G rispetto a G Σ G a G /G a/a Σ G G = G G Σ G a = G a G G = = G a a G a G + G(z) valutata a una data pulsazione ω Σ G G ω=ω = + G(e jω T )
Sistemi Digitali di Controllo A.A. 9- p. 6/3 Sensibilità parametrica Volendo che la sensibilità sia piccola a date frequenze, è quindi necessario che per tali frequenze G(e jωt ) sia grande Un modo per ottenere questo risultato è aumentare il guadagno d anello, il che però comporta in genere riduzioni dei margini di stabilità Se la G(z) in catena diretta dipende da un parametro a Σ G a = G a a = G G G G a a G da cui Σ G a = G(z)( + G(z)) G(z) a a Anche in questo caso, per ridurre la sensibilità bisogna aumentare il guadagno d anello Se il parametro è contenuto in un blocco H(z) in retroazione, allora aumentare il guadagno in catena diretta peggiora le cose...
Sistemi Digitali di Controllo A.A. 9- p. 7/3 Reiezione dei disturbi r(t) d(t) Controllo y(t) d(t) y(t) Processo Processo Y (z) D(z) = G d(z) = HG(z) + C(z)HG(z) Controllo essendo qui C(z) la funzione di trasferimento del controllo e HG(z) quella del processo Se vale C(z)HG(z) Y (z) D(z) C(z) l entità del disturbo è ridotta di un fattore C(z) Se D(z) è costante, allora un integratore in C(z) farà sì che l errore causato dal disturbo sia nullo a regime (astatismo) Un disturbo a una pulsazione ω d verrà attenuato se si ha C(e jω dt )HG(e jω dt ) oppure HG(e jω dt ) e C(e jω dt )HG(e jω dt )
Sistemi Digitali di Controllo A.A. 9- p. 8/3 Sforzo di controllo nel progetto del controllore si deve considerare che la variabile di controllo u è fisicamente limitata e quindi non possono esserne richiesti valori eccessivi (fenomeni di saturazione introducono non-linearità nel sistema) d altra parte, a progetto completato, si possono fare verifiche in simulazione sugli sforzi di controllo richiesti in condizioni operative tipiche e dimensionare di conseguenza l organo di attuazione oltre ai valori di picco della variabile u interessano anche aspetti energetici (consumo, surriscaldamento dei componenti), tipicamente legati all integrale u (t)dt o, nel caso discreto, alla sommatoria k u k, che possono ancora essere valutati in simulazione di queste considerazioni si può tenere conto anche in fase di progetto, impostando e risolvendo problemi di sintesi di controllo ottimo (tipicamente lineare-quadratico) in cui l obiettivo è quello di assicurare buone prestazioni (transitori di errore rapidi) e contemporaneamente ridotto sforzo di controllo
Sistemi Digitali di Controllo A.A. 9- p. 9/3 Esempio di controllo ottimo a tempo discreto Si riconsideri il semplice sistema a tempo discreto c k+ = c k + u k e si desideri regolare l uscita a zero con un controllo proporzionale u k = k p c k a partire da un valore iniziale arbitrario c = c(). La soluzione a tempo di risposta finito e minimo è data dal guadagno k p = che fornisce c =, c k =, k =, 3,... u = c, u k =, k =,,... ossia l errore si azzera dopo un solo campione. D altronde è facile verificare che si avrà stabilità asintotica per qualsiasi scelta k p (, ) in quanto c k+ = c k k p c k = ( k p )c k C(z) = z ( k p ) polo in p < k p < dove quella a tempo minimo impone il polo in z = al sistema ad anello chiuso Valutiamo se questa soluzione è ottima per qualche opportuna funzione obiettivo (diversa dal tempo minimo) o se ce ne sono di migliori da un punto di vista energetico
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Esempio di controllo ottimo a tempo discreto (cont) Per qualsiasi valore di k p, dalle c k+ = ( k p )c k e u k = k p c k si ha c = c() c = ( k p )c u = k p c u = k p ( k p )c c = ( k p ) c. c k = ( k p ) k c u = k p ( k p ) c. u k = k p ( k p ) k c Si consideri la seguente funzione di costo quadratica H = c k + r u k r k= che somma i campioni (quadratici) dell errore (e k = c k ) e del controllo u k, e dove il peso r definisce la loro importanza relativa (identica se r = ). Sostituendo i valori si ha H = ( ) k= ( kp ) k ( ) c + r kp ( k p ) k c = c ( + rkp) ( k= ( kp ) ) k = (per k p < ) = c ( + rk p) ( k p ) = c ( + rkp) k p ( k p )
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Esempio di controllo ottimo a tempo discreto (cont) Per minimizzare H rispetto a k p (, ), si impone la condizione necessaria (e anche sufficiente perchè H/ k p > ) H c = k p kp( k p ) (rk p + k p ) = rkp + k p = Delle due radici (reali) per k p, quella positiva vale k p = + +4r r e appartiene, r, all intervallo (, ) (ammissibile per la stabilità).9.8.7 kp.6.5.4.3. 3 4 5 6 7 8 9 r Ad esempio, per r = si ha kp opt =.5. La soluzione a tempo minimo di risposta (k p = ) si trova nel caso limite per r (i campioni del controllo non sono pesati)
Sistemi Digitali di Controllo A.A. 9- p. 3/3 Esempio di controllo ottimo a tempo discreto (cont) A verifica, paragonando il valore della funzione di costo H per r = con i due valori kp opt =.5 e k p =, si ha H opt = H {kp =.5} = c < H {kp =} = c k + u k = c + ( c ) = 3 c Sono ovviamente possibili altre scelte per la funzione di costo, ad esempio sommando i soli moduli dei campioni di controllo. Assumendo ancora k p <, si ha H = u k = k= k= k p ( k p ) k c = k p c k= ( k p ) k = k= k p c k p Questa funzione non è differenziabile rispetto a k p e va quindi analizzata direttamente nei due casi possibili per k p (, ) k p H = c k p < H = c k p k p > c per cui il valore ottimo non si ha per un unico k p, ma per qualsiasi k p (, ]