Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Oltre il PID
Anche se il nucleo di un controllore in anello chiuso per il controllo del moto sempre costituito da un regolatore PID (o P/PI), vi sono altri schemi di controllo che possono completare o sostituire lo schema base. Alcuni di questi schemi trovano corrente applicazione nei CN ed azionamenti commerciali. Nel seguito ci occuperemo dei seguenti schemi: Filtri notch Osservatore del disturbo di coppia Controllo nello spazio di stato Input shaping
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [2]
Filtro notch
Un filtro notch un sistema dinamico progettato per cancellare una coppia di poli complessi e coniugati, tipicamente a basso smorzamento, presenti nel sistema sotto controllo. quindi caratterizzato dalla funzione di trasferimento:
Gnf ( s ) = s 2 + 21n s + 2 n s 2 + 2 2 n s + 2 n
0 -2 -4 -6 -8 dB -10 -12 -14 -16 -18 -20 -1 10
dove n la pulsazione dei poli complessi da cancellare, 1 e 2 sono smorzamenti, il primo piccolo, il secondo grande. Il diagramma di Bode caratterizzato da una gola:
1 2
10 w/wn
0
10
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [3]
N.B. In diversi CN, il filtro viene assegnato dando la frequenza da bloccare (n) e la banda a 3dB
10 w/wn
10
banda a 3dB
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [4]
Gvm(s)
. qm
Sebbene il filtro notch possa essere utile per migliorare la risposta al riferimento, ci sono alcuni problemi connessi al suo utilizzo: La frequenza di risonanza sulla quale sintonizzare gli zeri del filtro deve essere conosciuta con buona approssimazione I poli poco smorzati del processo cancellati dal filtro rimangono autovalori del sistema in anello chiuso e riemergono come poli di altre funzioni di trasferimento, tipicamente quella dal disturbo di carico alluscita. La realizzazione digitale dei regolatori produce una certa distorsione della risposta in frequenza che potrebbe non far coincidere la frequenza effettiva degli zeri del filtro digitale con la frequenza di progetto. Vi sono metodi per ovviare a questo problema (frequency pre-warping)
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [5]
Simulazioni
Simuliamo in Simulink il controllo P/PI lato motore con filtro notch allinterno dellanello di velocit:
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [6]
Simulazioni
Sistema:
disturbo di coppia
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [7]
Spiegazione
Senza filtro
1.5 1 0.5 polo in anello chiuso Imag Axis 0 -0.5 -1 -1.5 -1
Con filtro
1.5 1 0.5 Imag Axis
Anello di velocit
-0.5
0 Real Axis
0.5
-1.5
-1
0.5
3 2
2 1 Imag Axis 0 -1 -2 -3 -2
Anello di posizione
1 Imag Axis 0 -1 -2 -3 -2
-1.5
-1
0.5
-1.5
-1
0.5
Conclusione: il filtro di fatto non aiuta a conferire smorzamento ai poli in anello chiuso.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [8]
RPI(s)
Gvm(s)
. qm
Senza filtro
3 2
3
Con filtro
polo in anello chiuso
2 1 Imag Axis 0 -1 -2 -3 -3
Imag Axis
Anello di posizione
1 0 -1 -2 -3 -2
-1.5
-1
0.5
-2
-1 Real Axis
Con gli stessi guadagni del P/PI si ottengono dei poli in anello chiuso pi smorzati.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [9]
Simulazioni
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [10]
Simulazioni
Sistema:
0 0
0.2
0.4
0.6
0.8
disturbo di coppia
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [11]
nqol
Kpp
.o q + m + Gnf(s)
Fv(s)
. qm
1/s
qm
Glm(s)
nql
Senza filtro
3 3
Con filtro
polo in anello chiuso
2 1 Imag Axis 0 -1 -2 -3 -6
Imag Axis
Anello di posizione
1 0 -1 -2 -3 -6
-5
-4
-3 -2 Real Axis
-1
-5
-4
-3 -2 Real Axis
-1
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [12]
Simulazioni
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [13]
Simulazioni
Sistema:
Si ottiene un sensibile miglioramento della risposta al riferimento lato carico. La risposta al disturbo per peggiora.
disturbo di coppia
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [14]
d + +
P(s)
Ci proponiamo di progettare un sistema che sulla base dei valori assunti da u e y determini una stima del disturbo.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [15]
+ + ^ d
d + + +
P(s) Q(s)Pn1(s)
Q(s)
DO
In questo schema Pn(s) un modello del sistema sotto controllo, di funzione di trasferimento P(s), mentre Q(s) un filtro passabasso a guadagno unitario tale da rendere realizzabile la funzione di trasferimento Q(s)Pn1(s). La stima del disturbo prodotta dallosservatore (DO) la seguente:
(s ) = Q( s )u (s ) P 1 (s )Q( s ) y (s ) = Q( s )u (s ) P 1 (s )Q( s ) P( s )(d (s ) + u (s )) = d n n = Q( s ) 1 Pn1 (s )P( s ) u (s ) Q( s ) Pn1 (s )P ( s )d (s )
se: Pn ( s ) P ( s )
si ha:
(s ) Q( s )d (s ) d
+ + ^ d
d + + +
P(s) Q(s)Pn1(s)
Q(s)
DO
se: Pn ( s ) P ( s )
y (s ) = P( s )(1 Q( s ) )d (s ) + P( s )u * (s )
Pertanto, nella banda passante del filtro Q, il sistema dal nuovo ingresso u* alluscita y virtualmente esente dal disturbo.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [17]
1 s
qm lm
Dm
Jm Tf
La coppia di disturbo costituita da una coppia esogena c e dalla coppia trasmessa dal carico lm. Tf la costante di tempo (piccola) del filtro Q.
1 1 + sTf
Jm Tf
TDO
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [18]
c m + 1 J m s + Dm
. qm
1 s
qm lm
[ s
* m
(s ) G f (s )( c (s ) + lm (s ))]
Dm
Jm Tf
con:
G f (s ) = sT f 1 + sT f
1 1 + sTf
Jm Tf
filtro passa-alto.
TDO
Il disturbo di coppia viene quindi filtrato molto efficacemente, in particolare in bassa frequenza. Si osservi che il modello di riferimento quello di un giunto rigido. Che cosa cambia se tra motore e carico c un accoppiamento elastico?
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [19]
n
. . qm 1 s qm +
* m+ +
Dels+Kel
lm
Dm
Jm Tf
1 1 + sTf
Jm Tf
TDO
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [20]
J lr s 2 + Del s + K el * Qm (s ) = m (s ) G f (s ) c (s ) , f (s ) Ql (s ) = Del s + K el * m (s ) G f (s ) c (s ) f (s )
]
)
)(
Il disturbo di coppia rigettato e si pu controllare il motore con un modello rigido ma il carico oscilla liberamente, con la dinamica che avrebbe se il rotore fosse bloccato (locked frequency).
J lr s 2 + Del s + K el
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [21]
Simulazione
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [22]
Simulazione
2 senza TDO con TDO 1.5
(lato carico)
0.5
0 0
0.2
0.4 t (s)
0.6
0.8
Conclusione: Losservatore viene tratto in inganno: interpreta la retroazione di coppia dalla trasmissione come se fosse un disturbo esogeno e cerca di neutralizzarlo. Bisogna usare il TDO con attenzione.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [23]
Del K el
Jl
Controllo
Jm
Jl Del ? K el
Controllo
Jm
Jl
Controllo
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [24]
y = qm
0 K el J m A= 0 K el J lr
1 D + Del m Jm 0 Del J lr
0 K el Jm 0 K el J lr
0 0 Del 1 Jm Jm , b = 1 0 Del 0 J lr
c = [1 0 0 0]
J lr = J l n 2
Raggiungibile da u Osservabile da y
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [25]
Schema di controllo
Feedforward ql qm + + +
Conversione setpoint
Servo posizionatore
ql qm
K Controllore
^ x
Da progettare: Azione integrale ^) Legge di controllo (u = Kx Stima dello stato Azioni in anello aperto
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [26]
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [27]
Grazie al principio di separazione, potremo procedere allassegnamento degli autovalori del sistema in anello chiuso come se lo stato del sistema fosse accessibile, trattando separatamente il problema della stima dello stato dalluscita. Volendo allocare gli autovalori del sistema aumentato occorrer preliminarmente verificare che la coppia (F, gu) sia raggiungibile: si pu dimostrare che questo vero se e solo se il sistema sotto controllo raggiungibile ed osservabile e se la sua funzione di trasferimento non ha zeri in s=0. Poich queste condizioni sono soddisfatte, si pu procedere allassegnamento degli autovalori con regolazione a zero dellerrore.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [28]
In linea di principio, gli autovalori possono essere scelti arbitrariamente. In realt la robustezza dellassegnamento degli autovalori dipende fortemente dalle posizioni scelte per gli autovalori desiderati in anello chiuso. Una misura di robustezza il condizionamento della matrice formata dagli autovettori del sistema in anello chiuso: pi ortogonali sono gli autovettori, migliore il condizionamento, pi robusto il sistema in anello chiuso.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [29]
Controllo ottimo LQ
Unalternativa scegliere i guadagni in modo da minimizzare la cifra di merito quadratica:
J=
~ La routine Matlab lqr fornisce la soluzione del problema (cio la matrice K) dati il sistema sotto controllo e la matrice Q (che deve essere semidefinita positiva). Come scegliere la matrice dei pesi Q? Si pu procedere per tentativi oppure seguire strade pi strutturate, per le quali si rimanda alla letteratura specifica.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [30]
] [ = x x
Come noto il problema risolubile se la coppia (A, c) osservabile (come nel nostro caso). Pi grande il modulo degli autovalori di A+Lc, pi veloce la ricostruzione della dinamica, ma pi sensibile la stima ai rumori di misura. Anche questo problema pu essere impostato in termini di minimizzazione di una cifra di merito integrale, progettando un filtro di Kalman. Occorre per modellare il sistema in ambito stocastico (i disturbi vanno interpretati come processi stocastici con determinate medie e varianze).
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [31]
Gf(s)
ql qm + kI + s + + +
Gr(s)
Servo posizionatore
ql
qm
^ x
Per conferire al progetto precisione dinamica (prontezza e grado di stabilit nei transitori di inseguimento del riferimento) si adottano dei componenti in feedforward. Numeratore della f.d.t. Si osservi che: da m a qm Bm (s ) Gk (s ) = c (sI 4 ( A + bK ))1 b = A+ bK (s )
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [32]
Gf(s)
ql qm + kI + s + + +
Definiamo:
Glm (s ) = Bl (s ) Bm (s )
Gr(s)
Servo posizionatore
ql
qm
^ x
Scegliendo:
1 Gr (s ) = Glm (s ) F (s ) 1 1 ( ) ( ) ( ) = G s G s G s F (s ) k lm f
si ottiene:
Ql (s ) = F (s ) Ql (s )
Specificando F(s) si assegna completamente la risposta del sistema al riferimento. Per ottenere operatori causali, il grado relativo di F deve essere pari almeno a 3.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [33]
Apparato sperimentale
Vedremo ora alcuni confronti sperimentali tra un controllore progettato nello spazio di stato (LQG) ed un controllore PID, chiuso lato motore.
Torque constant Kt Motor inertia Jm Load inertia Jl Transmission ratio n Viscous friction Dm Stiffness constant Kel Elasticity damping coeff. Del Antiresonance frequency nz Complex zeros damping z Resonance frequency np Complex poles damping p Real pole frequency 1/T 1.6 Nm/Arms 0.00015 Kgm2 2.7 Kgm2 100 0.0034 Nms/rad 3.1 Nm/rad 0.0022 Nms/rad 105 rad/s 0.063 179 rad/s 0.138 9.12 rad/s
Poliboard board Current Reference
PCL-818H Board
Acceleration
load
Experiment Load rotation (deg) Time for the positioning (s) Maximum acceleration (rad/s2)
1 40 0.5 1200
2 30 0.5 900
3 50 0.9 500
harmonic drive
motor
Current
Digital Position
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [34]
Confronti sperimentali
Rotazione di 40 in 0.5 s Accelerazione max: 1200 rad/s2
0.5
PID
0 -0.5
PID
-1 -1.5 -2 -2.5
LQG
LQG
0.2
0.6
0.8
-1.8
0.2
0.6
0.8
Si confrontano le velocit lato carico, ottenute per integrazione del segnale prodotto da un accelerometro montato sul carico.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [35]
Confronti sperimentali
Rotazione di 50 in 0.9 s Accelerazione max: 500 rad/s2
0.2 0 -0.2 -0.4 Load velocity (rad/s) -0.6 -0.8 -1 -1.2 -1.4 -1.6 0 0.2 0.4 0.6 0.8 time (s) 1 1.2 1.4
PID
LQG
Conclusioni sui metodi nello spazio di stato: Si manifestano dei vantaggi rispetto al controllore PID, che per si pagano in termini di complessit di progettazione, realizzazione, codifica e debugging del controllore.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [36]
Input shaping
Tutti i metodi di controllo visti finora prevedono una retroazione della variabile controllata: sono infatti metodi in anello chiuso. Linput shaping invece un metodo in anello aperto (feedforward): consiste nel modificare lingresso al sistema sotto controllo in modo tale da annullare leffetto di una o pi risonanze presenti nel sistema stesso. Richiede la conoscenza della pulsazione naturale e dello smorzamento dei poli complessi e coniugati. Pu essere utilizzato con un certo successo nel controllo di strutture flessibili, quali per esempio bracci robotici per applicazioni spaziali. RALF, Georgia Tech (Atlanta)
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [37]
Risposta allimpulso
Si consideri un sistema dinamico con una coppia di poli complessi e coniugati:
s 2 + 2 n s + 2 n La risposta ad un impulso di ampiezza ki che interviene allistante ti data dallespressione:
2 yi (t ) = Bi e n (t ti ) sin n 1 (t ti ), t ti 1 con: n 0.5 Bi = k i 1 2
0
G(s) =
2 n
-0.5
-1 0
20
40
60 t (s)
80
100
120
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [38]
Due impulsi
Si supponga ora di eccitare il sistema con due impulsi, agli istanti t1 e t2 (t2> t1). La risposta del sistema la somma delle due risposte allimpulso:
(t t ) 2 2 y (t ) = B1e n (t t1 ) sin n 1 (t t1 ) + B2 e n 2 sin n 1 (t t 2 ), t t 2
possibile fare in modo che y sia nulla a partire dallistante t2? sufficiente imporre le seguenti condizioni:
impulso 1 impulso 2 somma
Il secondo impulso va quindi dato dopo met periodo. Si osservi che entrambi gli impulsi sono positivi.
1
0 5 10 15 t (s) 20 25 30
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [40]
2 1
-0.4
10
15 t (s)
20
25
30
Tre impulsi
Si supponga quindi di eccitare il sistema con tre impulsi, agli istanti t1, t2 e t3 (t3>t2>t1). La risposta del sistema la somma delle tre risposte allimpulso:
2 y (t ) = Bi e n (t ti ) sin n 1 (t ti ), t t 3 i =1 3
Per fare in modo che y sia nulla a partire dallistante t3 si impone: 3 n ti 1 2 t = 0 k e sin n i i =1 i 3 k i e nti cos n 1 2 ti =0 i =1 Si tratta di un sistema di due equazioni nelle sei incognite k1, k2, k3, t1 , t2 e t3. Possiamo per imporre anche che non solo y ma anche la sua derivata sia nulla a partire dallistante t3. In questo modo si generano altre due equazioni:
Il secondo impulso va quindi dato dopo met periodo, il terzo dopo un intero periodo. Si osservi che tutti gli impulsi sono positivi.
2 3 1
10
15 t (s)
20
25
30
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [43]
2 1 3
10
15 t (s)
20
25
30
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [44]
e che la trasformata di Laplace della convoluzione di due segnali il prodotto delle due trasformate: L[h(t ) u (t )] = H (s )U (s )
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [45]
Il metodo quindi consiste nel prefiltrare il segnale di ingresso con questo semplice schema a blocchi:
k1 k2 k3 esT/2 esT
+ umodificato + + +
Sono state sviluppate anche versioni adattative del metodo ed estensioni al caso di pi modi risonanti.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [46]
Esempio
Applichiamo il metodo dellinput shaping a un servomeccanismo a due masse.
qm , m
Jm
Del K el
Jl
ql
n = 1, = 0.05
Supponiamo che lingresso di comando sia un profilo di coppia di tipo rettangolare. Calcoliamo con la metodologia vista i coefficienti ki e i ritardi di tempo. Si ottiene lingresso modificato:
0.5
(Nm)
-0.5
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [47]
Esempio
Simuliamo la risposta, in termini di velocit lato carico. Prevediamo unincertezza del 10% su n e del 20% su .
35
Nonostante lincertezza, le oscillazioni sono quasi completamente rimosse. Si genera un ritardo, che per pu essere compensato facendo partire in anticipo lingresso.
Controllo del moto e robotica industriale - Schemi avanzati di controllo per servomeccanismi- P. Rocco [48]