schemi classici di controllo del moto - intranet deibhome.deib.polimi.it/rocco/caut/schemi classici...
TRANSCRIPT
Controlli automatici
Schemi classici di controllo del moto
Prof. Paolo Rocco ([email protected])Politecnico di MilanoDipartimento di Elettronica, Informazione e Bioinge gneria
Controllo di un servomeccanismo
Come è noto, nei suoi tratti essenziali un servomeccanismo di posizione è costituito da un motore, un riduttore ed un carico.
� Il problema di controllo si pone nei termini di governare il moto del carico, modulando opportunamente la coppia erogata dal motore.
� Possono presentarsi diversi scenari per quanto riguarda la disponibilità di sensori: misure di posizione /velocità del motore e/o del carico.
� Tuttavia noi disponiamo anche di una misura di corrente del motore: nel seguito vedremo un modo intelligente per usare questa misura
motore
trasmissione
carico
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [2]
La dinamica elettrica
Supponiamo di adottare un motore a corrente continua, il cui circuito elettrico è, come è noto, il seguente:
rotore (armatura)
spazzola
spazzola
commutatore
alloggiamento
statore
(magnete)
R L
EV
I
1
� Applicando una tensione V, si genera nel circuito di armatura una corrente I legata a V dalla dinamica elettrica (circuito R-L). È anche presente una forza contro-elettromotrice E, proporzionale alla velocità ωm del motore
� Grazie al meccanismo di conversione elettromeccanica associato al sistema spazzole-collettore, il motore eroga una coppia τm proporzionale alla corrente I
� Nella robotica industriale si usano più comunemente motori brushless, per i quali tuttavia si può dare una descrizione simile, riferita all’asse in quadratura
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [3]
La dinamica elettrica
Il sistema è retto dalle seguenti equazioni:
Traducibili nello schema a blocchi:
R L
EV
I
1
( ) ( ) ( ) ( )( ) ( )( ) ( )( ) ( )( ) ( )ttq
tJt
tKIt
tKtE
tEtILtRItV
mm
mm
m
ω=
ω=τ
=τ
ω=
++=
&
&
&
V −+ KsL+R1
Jms1
s1
K
I τm
Eqmωm
Si osservi che la forza controelettromotrice accoppia la dinamica elettrica con la dinamica meccanica.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [4]
Il controllo di corrente
Disponendo della misura di corrente, si può chiudere un anello di controllo sulla corrente stessa:
� vista la dinamica veloce legata ai transitori elettrici si potrà progettare RI(s) per ottenere una banda passante molto ampia, dell’ordine delle migliaia di rad/s.
� nel progetto del regolatore di corrente si potrà inoltre assumere la forza controelettromotrice come un disturbo di bassa frequenza.
� una volta chiuso l’anello di controllo della corrente, questo potrà ritenersi praticamente istantaneo ai fini del progetto del controllore di posizione esterno:
� potremo quindi assumere come variabile di controllo per il controllo posizione/velocità direttamente la coppia motrice τm
V −+ KsL+R1
Jms1
s1
K
I τm
E
RI(s)+−
Io qmωm
( ) ( ) ( )tKItKIt om ≈=τ
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [5]
L’approssimazione rigida
Un primo modo di affrontare il problema di controllo del moto consiste nell’assumere l’insieme motore, riduttore e carico come un sistema complessivamente rigido. In questo caso le equazioni del sistema sono le seguenti:
(Dm: coefficiente di attrito viscoso motore, Jm e Jl: momento di inerzia di motore e carico, n: rapporto di trasmissione, τlm: coppia trasmessa lato motore, τl: coppia esterna lato carico).Possiamo eliminare ql e τlm dalle equazioni, ottenendo:
con:
Jq m Jl
m ql
τm τl
lm
llmll
lmmmmmm
nqq
nqJ
qDqJ
=
τ−τ=
τ−τ=+
:netrasmissio
:carico
:motore
&&
&&&
( ) lrmmmmlrm qDqJJ τ−τ=++ &&&
nn
JJ l
lrl
lrτ=τ= ,
2
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [6]
L’approssimazione rigida
Il sistema rigido si può quindi descrivere in termini di funzione di trasferimento:
con:
Gv(s) s1τm qmqm
.τlr+
Se il coefficiente di attrito Dm è trascurabile (caso più sfavorevole, perché l’attrito dà un contributo stabilizzante), si ha:
( ) ( )lrmmv JJsD
sG++
= 1
( )
lrm
v
JJ
ssG
+=µ
µ=
1
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [7]
Il controllo P/PI
Chiudiamo un controllore PI sulla velocità, ed un controllore proporzionale sulla posizione:
Lo schema prevede di disporre di due misure indipendenti di posizione e velocità. Tipicamente la misura di velocità è fornita da una dinamo tachimetrica.
Si tratta di uno schema di controllo in cascata:
� si progetta dapprima l’anello interno di velocità su banda ampia, in modo da fornire anche una buona reiezione dei disturbi
� l’anello esterno, di posizione, si progetta su una banda più ristretta
� si osservi che di fatto gli anelli innestati sono tre (corrente, velocità, posizione)
τm qmqm
.τlr
+ 1/sGv(s)RPI(s)Kpp++
− −qo
m
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [8]
Progetto del regolatore PI di velocità
τm qm
.τlr
+ Gv(s)RPI(s)+−
qom
.
Funzione d’anello:
Se Tiv è sufficientemente grande, ossia se lo zero del PI è sufficientemente in bassa frequenza, la pulsazione critica è ben approssimata prendendo l’approssimazione di alta frequenza di L:
posizionamento dello zero del PI
100
101
102
103
-20
-10
0
10
20
30
40
50
60
70
dB
w (rad/s)
cvωivT1
( ) ( ) ( )iv
ivpvvPIv sT
sTs
KsGsRsL
+µ== 1
µ=ω pvcv K
( )iv
ivpv
ivpvPI sT
sTK
sTKsR
+=
+= 11
1
( ) cvivT
ω÷= 3.01.01
Controllore PI
selezione del guadagno del PI
( )s
sL cvv
ω≈
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [9]
Progetto del regolatore P di posizione
Il regolatore dell’anello di posizione “vede” l’anello chiuso di velocità, di funzione di trasferimento:
La funzione d’anello è quindi:
È sufficiente prendere Kpp << ωcv per garantire una pulsazione critica ωcp≈ Kpp.
qmqm
.
1/sFv(s)Kpp+−
qom qo
m
.
100
101
102
103
-70
-60
-50
-40
-30
-20
-10
0
10
20
dB
w (rad/s)
cpω cvω( )cv
v ssF
ω+≈
11
( ) ( ) ( )cv
ppvppp ss
K
ssFKsL
ω+==
11
ppcp K=ω selezione del guadagno P
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [10]
Anticipo di velocità
Per rendere la risposta al riferimento di posizione più pronta, è possibile inserire un contributo di feedforward, noto come “anticipo di velocità”: si deriva il riferimento e si somma questo contributo nel nodo sommatore dell’anello di velocità.Spesso il contributo di feedforward viene pesato da un coefficiente kff compreso tra 0 e 1:
τm qmqm
.τlr
+ 1/sGv(s)RPI(s)Kpp++
− −qo
m
s
+
τm qmqm
.τlr
+ 1/sGv(s)RPI(s)Kpp++
− −qo
m
kffs
+
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [11]
Anticipo di velocità e PID
Se si usa un solo sensore sulla posizione motore e la velocità si ottiene differenziando la misura di posizione, si ottiene uno schema di controllo del tutto equivalente ad un regolatore PID:
τm qmqm
.τlr
+ 1/sGv(s)RPID(s)+−
qom
τm qmqm
.τlr
+ 1/sGv(s)RPI(s)Kpp++
− −qo
m
s
+
s
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [12]
Anticipo di velocità e PID
Dimostriamo l’equivalenza con un PID:τm
qm
RPI(s)Kpp++
− −qo
m
s
+
s
( ) ( ) ( ) ( ) ( ) ( )( )( )( ) ( ) ( )( ) ( ) ( ) ( )( )sqsqsRsqsqKs
sTK
sqsqKssqssqsRs
momPIDm
ompp
ivpv
momppm
omPIm
−=−+
+=
=−+−=τ
11
( )
++= D
IPPID sT
sTKsR
11
=
=
+=
pvpp
ivpI
p
pvD
ivpppvP
KK
TKT
K
KT
TKKK
1
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [13]
Limitazioni del modello rigido
� Il modello rigido non mette in evidenza nessun significativo limite di banda. In linea di principio si potrebbe quindi rendere il sistema in anello chiuso arbitrariamente veloce.
� All’atto pratico tuttavia emergono chiaramente limitazioni, sotto forma di vibrazioni, rumore, saturazioni, ecc..
� Evidentemente il modello rigido non è in grado di spiegare bene come si comporta un servomeccanismo.
� Occorre quindi complicare il modello.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [14]
L’approssimazione a due masse
Un secondo modo di affrontare il problema di controllo consiste nell’assumere l’insieme motore, riduttore e carico come un accoppiamento elastico tra due corpi rigidi. In questo caso le equazioni del sistema sono le seguenti:
Schema a blocchi:
( ) ( )lmellmellm
llmll
lmmmmmm
qnqDnqqK
nqJ
qDqJ
&&
&&
&&&
−+−=τ
τ−τ=
τ−τ=+
netrasmissio
carico
motore JD
K
m Jlmel
el
q ,m
q ,lτ lτ
−Jls
11s
τ lmDels+Kel
Jms + Dm
1 1s
.qm −
n
−
n
τ l
qm
.ql
ql
τm +
+
+
È un sistema di ordine 4 (ci sono 4 variabili di stato)
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [15]
Un sistema “SITO”
Concentriamoci sulla risposta del sistema al comando di coppia τm (poniamo τl =0)
Il sistema è interpretabile come sistema ad un ingresso e due uscite (SITO: Single Input Two Outputs).
τm
qmqm
.
1/sGvm(s)
nql1/sGvl(s)
nql
.
Risolvendo lo schema a blocchi si ottiene:
i numeratori sono diversi
( ) ( ) elmelmelmlrelmlr
elellrvm
KDsDDJKsDJJDsJJ
KsDsJsG
+++++++
=23
2
)(
( ) ( ) elmelmelmlrelmlr
elelvl
KDsDDJKsDJJDsJJ
KsDsG
++++++
=23
)(
+== mlrl
lr JJJn
JJ ,
2
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [16]
Parametri notevoliPoniamo Dm=0 ed introduciamo i seguenti parametri:
Si ottiene:
(rapporto di inerzia)
(pulsazione naturale e smorzamento degli zeri)
(pulsazione naturale e smorzamento dei poli)
2
2
2
2
21
21
)(
pp
p
zz
z
vmss
ss
ssG
ω+
ωζ
+
ω+
ωζ+
µ=
ellr
elz
lr
elz
KJ
D
J
K 12
, =ζ=ω
zpzp ζρ+=ζωρ+=ω 1,1
m
lr
JJ
=ρ
=µJ1
2
2
21
21)(
pp
p
z
z
vlss
s
ssG
ω+
ωζ
+
ωζ+
µ=
modello rigido
effetto elastico
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [17]
Natural frequency e locked frequency
Il sistema libero oscilla alla pulsazione dei poli di Gvm, ossia ωp: questa pulsazione è detta natural frequency.
JD
K
m Jl
el
el
JD
K
m Jlel
el
Le pulsazioni ωp e ωz hanno un’interpretazione fisica molto chiara:
Se invece si blocca meccanicamente il motore, il sistema oscilla alla pulsazione degli zeri di Gvm, ossia ωz: questa pulsazione è detta lockedfrequency.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [18]
Disposizione di poli e zeri
Come sono messi nel piano complesso poli e zeri di Gvm?
I poli sono a più alta frequenza e più smorzati
2
2
2
2
21
21
)(
pp
p
zz
z
vmss
ss
ssG
ω+
ωζ
+
ω+
ωζ+
µ=
11 >ρ+=ζζ
=ωω
z
p
z
pIm
Re
ωzωp
−ζzωz−ζpωp
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [19]
Risposta in frequenza
Che aspetto assume la risposta in frequenza di Gvm?
ρ=1ζz=0.1
2
2
2
2
21
21
)(
pp
p
zz
z
vmss
ss
ssG
ω+
ωζ
+
ω+
ωζ+
µ=
10-2
10-1
100
101
-20
-10
0
10
20
30
40
ω/ωz
|Gvm
|
risonanza
antirisonanza
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [20]
Una rappresentazione formale
Se τl = 0, possiamo rappresentare il sistema con il seguente schema a blocchi:
2
2
21
21)(
zz
z
z
z
lmss
s
sG
ω+
ωζ+
ωζ+
=
τm qmqm
.
1/sGvm(s) Glm(s)nql
dove posizione del motore e posizione del carico (riportata all’asse motore) sono formalmente legate dalla funzione di trasferimento:
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [21]
Controllo P/PI sul motore
Nella robotica industriale i sensori sono di norma disposti solo dal lato motore. Concentrandoci sulla risposta al riferimento (τl=0) si ha:
τm qmqm
.
1/sGvm(s)RPI(s)Kpp++
− −qo
m
s
+Glm(s)
nql
τm qmqm
.
1/sGvm(s)RPI(s)Kpp++
− −qo
m
s
+Glm(s)
nql
s
Nel caso di velocità ottenuta per derivazione della posizione:
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [22]
Controllo PI di velocità motore
τm qm
.Gvm(s)RPI(s)
+−
Funzione d’anello:
Introduciamo il seguente parametro di progetto adimensionale:
È la pulsazione critica di progetto, valutata sul modello rigido (Kpvµ), normalizzata alla pulsazione ωz:
� ωcv elevato: progetto “aggressivo”
� ωcv piccolo: progetto “prudente”
( )iv
ivpv
ivpvPI sT
sTK
sTKsR
+=
+=
111
( ) ( ) ( )2
2
2
2
21
211
pp
p
zz
z
iv
ivpvvmPIv
ss
ss
sTsT
s
KsGsRsL
ω+
ωζ
+
ω+
ωζ+
+µ==
z
pvcv
K
ωµ
=ω~~
~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [23]
Analisi in frequenza
ρ=1ζz=0.1
Posizioniamo lo zero del PI una decade prima della pulsazione di antirisonanza ωz:
Il margine di fase è elevato in entrambi i casi
Tracciamo il diagramma di Bode della funzione di trasferimento d’anello:
5.0~ =ωcv 5.1~ =ωcv
zivT
ω= 10
10-3
10-2
10-1
100
101
-50
0
50
100
ω/ωz
|Lv|
10-3
10-2
10-1
100
101
-200
-100
0
100
ω/ωz
arg(
L v)
10-3
10-2
10-1
100
101
-50
0
50
100
ω/ωz
|Lv|
10-3
10-2
10-1
100
101
-200
-100
0
100
ω/ωz
arg(
L v)
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [24]
Dal criterio di Bode non riusciamo a differenziare i due progetti. Entrambi sembrano condurre a un sistema di controllo con elevato grado di stabilità.
Tuttavia se guardiamo la risposta in frequenza in anello chiuso, lato motore e lato carico, nel caso di progetto “aggressivo”:
C’è una evidente risonanza lato carico, associata a oscillazioni.
Analisi in frequenza
5.1~ =ωcv
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [25]
10-2
10-1
100
101
102
-100
-80
-60
-40
-20
0
20
ω/ωz
dB
motorecarico
Anello di velocità: luogo delle radici
Tracciamo il luogo delle radici al variare di ωcv:
Ci sono dei poli complessi il cui smorzamento prima aumenta e poi diminuisce.
Lo smorzamento massimo si ottiene per:
~
N.B. In questo e nei successivi luoghi, per maggiore generalità, gli assi sono normalizzati rispetto a ωz
( )zcv
cv
ω≈ω≈ω
7.0
7.0~ linea guida di progetto
-1.2 -1 -0.8 -0.6 -0.4 -0.2 0 0.2-1.5
-1
-0.5
0
0.5
1
1.5
Real Axis
Ima
gin
ary
Axi
s
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [26]
Controllo P di posizione
qmqm
.
1/sFv(s)Kpp++
−qo
m
s
+Glm(s)
nql
Anello chiuso di velocità
La funzione d’anello per il controllo di posizione è:
Introduciamo anche in questo caso un parametro di progetto normalizzato:
È la pulsazione critica di progetto, valutata sul modello rigido (Kpp), normalizzata alla pulsazione ωz.
( ) ( )( )sL
sLsF
v
vv +
=1
( ) ( )ssF
KsL vppp =
z
ppcp
K
ω=ω~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [27]
Anello di posizione: luogo delle radici
Tracciamo il luogo delle radici al variare di ωcp (o Kpp) per diversi valori di ωcv:
All’aumentare della banda dell’anello di velocità si generano dei poli in anello chiuso poco smorzati.
-1 -0.5 0 0.5 1-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
s
-2 -1 0 1 2-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
s
-3 -2 -1 0 1 2-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
s
~
5.0~ =ωcv 1~ =ωcv 5.1~ =ωcv
( ) ( )ssF
KsL vppp =
~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [28]
Simulazioni
Simuliamo in Simulink il sistema completo, compreso un gradino di coppia esterna lato carico (disturbo di coppia):
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [29]
0 0.2 0.4 0.6 0.8 10
0.5
1
1.5
2
t
motorecarico
0 0.2 0.4 0.6 0.8 10
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
t
motorecarico
Simulazioni
Sistema: ωz = 200 rad/s, ρ = 1, ζz = 0.1
PI di velocità: Tiv=10/ωz
P di posizione: ωcp=0.1
5.0~ =ωcv 5.2~ =ωcv
disturbo di coppia
~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [30]
Limiti di prestazione
Abbiamo visto che all’aumentare della banda dell’anello di velocità degradano le prestazioni del sistema di controllo, lato carico. È possibile quantificare questo degrado di prestazioni?Consideriamo la funzione di trasferimento dal riferimento alla posizione lato carico:
)()(
)(sF
sq
snqlm
mo
l =
ρ=1
ζz=0.03
Tiv=10/ωz
ωcp=0.1
Il picco di risonanza aumenta all’aumentare di ωcv
~
~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [31]
10-2
10-1
100
101
102
-120
-100
-80
-60
-40
-20
0
20
ω/ωz
dBωcv
Limiti di prestazione
Studiando l’andamento del picco di risonanza della risposta in frequenza (cosiddetta norma H∞) si trova un andamento approssimabile dalla seguente funzione:
ρ+ρ
ω+ζ=ζ
ζ≈≡
∞∞
1~21ˆ
ˆ2
1)(
cvz
l sFQL
La relazione approssimata supporta il progetto congiunto (progetto meccatronico) di meccanica e controllo
La norma dipende da:� parametri dimensionali del
servomeccanismo� un parametro di progetto del
controllo
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [32]
10-1
100
101
-5
0
5
10
15
20
ωcv/ωz
dB
QL∞
esatta
QL∞
approx.
Controllo P sul carico e PI sul motore
In molte altre applicazioni, come nelle macchine utensili, l’anello di posizione è chiuso lato carico:
Nel caso di velocità motore ottenuta per derivazione della posizione:
τm qmqm
.
1/sGvm(s)RPI(s)Kpp++
− −
s
+Glm(s)
nqlnqol
τm qmqm
.
1/sGvm(s)RPI(s)Kpp++
− −
s
+Glm(s)
nql
s
nqol
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [33]
Controllo P di posizione
Anello chiuso di velocità: nulla cambia nel suo progetto
La funzione d’anello per il controllo di posizione è ora:
qmqm
.
1/sFv(s)Kpp++
−
s
+Glm(s)
nqlnqol
( ) ( )( )sL
sLsF
v
vv +
=1
( ) ( ) ( )sGssF
KsL lmv
ppp =
2
2
21
21)(
zz
z
z
z
lmss
s
sG
ω+
ωζ+
ωζ+
=
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [34]
-3 -2 -1 0 1 2-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
s
-3 -2 -1 0 1 2-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
s
-3 -2 -1 0 1 2-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
sLuogo delle radici
All’aumentare della banda dell’anello di velocità si complica il progetto dell’anello di posizione. Anche per piccoli valori di Kpp il sistema può diventare instabile
Tracciamo il luogo delle radici al variare di ωcp (o Kpp) per diversi valori di ωcv:~~
5.0~ =ωcv 1~ =ωcv 5.1~ =ωcv
07.1~max ≈ωcp
( ) ( ) ( )sGssF
KsL lmv
ppp =
63.0~max ≈ωcp 5.0~
max ≈ωcp
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [35]
Simulazioni
Simuliamo in Simulink il sistema completo, compreso un gradino di coppia esterna lato carico (disturbo di coppia):
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [36]
0 0.2 0.4 0.6 0.8 10
0.5
1
1.5
2
t
motorecarico
0 0.2 0.4 0.6 0.8 10
0.2
0.4
0.6
0.8
1
1.2
1.4
t
motorecarico
Simulazioni
5.0~ =ωcv 5.2~ =ωcv
disturbo di coppia
Sistema: ωz = 200 rad/s, ρ = 1, ζz = 0.1
PI di velocità: Tiv=10/ωz
P di posizione: ωcp=0.1~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [37]
Simulazioni
Sistema: ωz = 200 rad/s, ρ = 1, ζz = 0.1
PI di velocità: Tiv=10/ωz
P di posizione: ωcp=0.7~5.1~ =ωcv
Il sistema è instabile
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [38]
0 0.2 0.4 0.6 0.8 1-4
-3
-2
-1
0
1
2
3x 10
6
t
motorecarico
Limiti di prestazione
Anche in questo caso è possibile quantificare il degrado di prestazioni connesso all’aumento della banda dell’anello di velocità.Consideriamo la funzione di trasferimento dal riferimento alla posizione lato carico:
)()(
)(sF
sq
snqlm
mo
l =
ρ=1
ζz=0.03
Tiv=10/ωz
ωcp=0.1
Il picco di risonanza aumenta all’aumentare di ωcv
~
~
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [39]
10-2
10-1
100
101
102
-150
-100
-50
0
50
ω/ωz
dBωcv
Limiti di prestazione
Studiando anche in questo caso l’andamento del picco di risonanza della risposta in frequenza (la norma H∞) si trova un andamento approssimabile dalla seguente funzione:
ρ+ωω
+
ω−ρ+
ρω
+ζ=ζ
ζ≈≡
∞∞
11
~
~1
~5.01~2
1
ˆ
ˆ2
1)(
cv
cp
cpcv
z
l sFQL
Il degrado di prestazioni è ancora più evidente rispetto al caso di chiusura dell’anello di posizione lato motore.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [40]
10-1
100
101
-5
0
5
10
15
20
25
30
35
40
45
ωcv/ωz
dB
QL∞
esatta
QL∞
approx.
Identificazione dei parametri
Per il progetto del controllore, o anche per valutare i limiti di prestazione, occorre disporre di stime di ζz, ωz e ρ. Per identificarne sperimentalmente i valori, si possono utilizzare gli strumenti di analisi forniti da alcuni prodotti commerciali.
0 5 10 15 20 25 30-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
( )22
2 14
1)(
)(
ρ+ρ
ζ≈
ω
ω=
zzm
pm
jF
jFr
Utilizzando un controllore che conferisce banda passante molto blanda, la risposta in frequenza d’anello si sovrappone a quella in anello chiuso. Si può dimostrare che:
R(s)
qm
−
qm
Gm(s)
sweepsinusoidale
risposta infrequenza
+ + +τm
10-1
100
101
102
103
-50
-40
-30
-20
-10
0
10
20
30
ω
dB
Anello chiuso
Anello aperto
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [41]
Procedura d’identificazione
Possiamo formalizzare una procedura di identificazione nei seguenti passi:
ρ+ρ=ζ
−ω
ω=ρ
=
12
1
1
10
2
2
20
r
r
z
z
p
rdB
^ ^
100
101
102
103
-50
-45
-40
-35
-30
-25
-20
-15
-10
-5
0
ω
dB
ωp
rdB
ωz
1. Progettare un controllore PID con ωc << ωz dove ωz è una stima approssimata di ωz
2. Eseguire un esperimento in anello chiuso e riportare su grafico l’andamento del modulo |Fm(jω)|
3. Dal diagramma ricavare ωz and ωpe rdB=|Fm(j ωp)|dB − |Fm(j ωz)|dB
4. Calcolare:
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [42]
Regolatori PID: due aspetti realizzativi
Si è visto che nel controllo del moto si utilizzano in larga misura regolatori PID (o P o PI). Il comportamento dinamico del regolatore PID è, come è noto, rappresentato dall’equazione nel dominio del tempo:
( ) ( ) ( ) ( )
+σσ+= ∫ dt
tdeTde
TteKtu D
t
IP
0
1
In termini di funzioni di trasferimento:
( )
++= D
IPPID sT
sTKsR
11
Questa espressione (talvolta detta “scolastica”) cattura il comportamento di massima del regolatore ma non fa emergere una serie di problemi applicativi connessi al suo utilizzo.Due di questi problemi saranno analizzati nel seguito:
� realizzazione dell’azione derivativa� wind-up dell’integratore
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [43]
Azione derivativa
L’azione derivativa ideale:
corrisponde ad un sistema dinamico non fisicamente realizzabile. Per ottenerne una versione realizzabile occorre filtrarla in alta frequenza, il che consente anche di tagliare il rumore di misura di alta frequenza.L’azione derivativa filtrata assume l’espressione:
( ) sTKsR DPD =
dove N è un parametro che determina la costante di tempo del polo di alta frequenza. Più elevato è N, più ampia sarà la banda in cui l’azione derivativa ideale verrà approssimata, ma più alta sarà anche l’amplificazione di eventuali rumori di misura. Tipicamente si sceglie N=5÷10.
( ) ( )dt
tdeTKtu DP=
( )NsT
sTKsR
D
DPD +
=1
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [44]
Forma standard ISA
La realizzazione della legge di controllo PID nei regolatori commerciali si differenzia da quella scolastica. Un’espressione che racchiude le diverse versioni come casi particolari è la cosiddetta forma standard ISA:
dove Ysp è il set-point, mentre b e c sono due coefficienti che consentono di pesare, rispettivamente nell’azione proporzionale e nell’azione derivativa, il set-point in maniera diversa dalla misura. Per b=c=1 si ricade nella forma “scolastica”.
( ) ( ) ( ) ( ) ( ) ( )( )
−
+++−= sYscY
NsTsT
sEsT
sYsbYKsU spD
D
IspP 1
1
sKP/TI
+−
Ysp
b
c
+
+
−
−sTD
1+sTD/N++ KP
1
++
Y
U
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [45]
Forma standard ISA
La forma standard ISA è un regolatore a “due vie”: il set-point e la misura vengono elaborati da due funzioni di trasferimento diverse:
In questo modo si possono scegliere gli zeri della funzione di trasferimento dal set-point in modo opportuno. Se ad esempio il sistema sotto controllo è un doppio integratore (G(s)=µ/s2), si ottiene:
( )
( )
+++=
+++=
NsTsT
sTKsG
NsTsT
csT
bKsG
D
D
IPfb
D
D
IPff
11
1
11
Ysp
Y
Gff(s) +−
U
Gfb(s)
( )( ) ( ) ( )
( ) ( ) 1
11 23
2
+++µ
++=+
=IID
P
I
IID
fbff
sp sTTTsKT
s
bsTTTcssGsG
sGsG
sYsY
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [46]
Il wind -up
Tutti gli attuatori presentano una saturazione, che può essere rappresentata nel sistema di controllo come nel seguente schema :
Il blocco “Sat” costituisce una caratteristica di saturazione, che assumeremo simmetrica:
Se il regolatore presenta azione integrale, come il PID, la combinazione di questa con la saturazione dell’attuatore può dar luogo ad un effetto indesiderato, noto come carica integrale (o integral wind-up), che può pregiudicare le prestazioni del sistema di controllo.
m yG(s)SatR(s)+
−yo ue
m
uuM
uM
−uM
−uM
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [47]
Il wind -up
Facciamo riferimento a un regolatore puramente integrale (R(s) = kI/s). Supponiamo che l’errore e resti a lungo dello stesso segno, ad esempio positivo.
La variabile di stato dell’integratore, e quindi la variabile u, cresce indefinitamente e può superare, anche di molto, il valore di saturazione uM
L’attuatore opera quindi in regime di saturazione (m ≡ uM)
m yG(s)SatR(s)+
−yo ue m
uuM
uM
−uM
−uM
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [48]
Il wind -up
Poiché la variabile di controllo è al valore massimo, a un certo punto y supererà il valore del suo riferimento yo
L’errore e diventa negativo per cui la variabile m dovrebbe lasciare il valore massimo uM ed assumere valori inferiori.
Bisogna però attendere che la variabile u rientri dai valori elevati raggiunti nella fase precedente (wind-up o carica integrale), fino ad assumere valori inferiori al
limite di saturazione uM.
Questa fase di scarica, o desaturazione, dell’azione integrale, può essere di durata rilevante e dà luogo ad un comportamento anomalo del sistema di controllo.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [49]
Regolatori anti wind -upUn primo modo di ovviare al problema del wind-up consiste nel realizzare il regolatore in modo alternativo. Si supponga di dover implementare un regolatore PI:
( )
+=
IP sT
KsR1
1
e se ne consideri il seguente schema anti wind-up:
KP++
mue
1+sTI
1
Satq
z
Si osservi che quando la saturazione non è raggiunta, il blocco Sat equivale ad un guadagno unitario, e la funzione di trasferimento da e a m diventa:
( )
+=
+−
=I
P
I
P sTK
sT
KsR1
1
11
1
1 Il comportamento dinamico nominale è quindi quello del regolatore PI.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [50]
Regolatori anti wind -up
KP++
mue
1+sTI
1
Satq
z
Si supponga nuovamente che l’errore e rimanga dello stesso segno, ad esempio positivo, a lungo.
Se KP è positivo, anche q assumerà valori positivi. Si supponga quindi l’attuatore in saturazione con m=uM.
Poiché il blocco in retroazione ha guadagno unitario, anche la variabile z si assesterà sul valore uM.
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [51]
Regolatori anti wind -up
Quando, per effetto della prolungata azione dell’attuatore, l’errore cambia segno, anche la variabile q cambierà segno, istantaneamente.
Il fatto che q assuma valori negativi, unito al fatto che z= uM, implica poi che uassuma immediatamente valori inferiori a uM, facendo subito uscire l’attuatore dalla
saturazione.
Se la variabile manipolabile m non è disponibile, si può fare riferimento alla saturazione propria dell’uscita del regolatore.
KP++
m'ue
1+sTI
1
Sat Satm
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [52]
Integrazione condizionataUn modo alternativo, di largo utilizzo, per far fronte al problema del wind-updell’integratore consiste nell’interrompere l’integrazione quando l’attuatore si trova in saturazione (integrazione condizionata):
Il modo più sicuro di implementare questo schema di anti wind-up consiste nel far uso di un sensore che rilevi quando l’attuatore entra in saturazione (ad esempio un fine corsa elettrico per un motore). In assenza di questo, si può fare riferimento alla saturazione dell’uscita propria del regolatore.
sKP/TI
+−
Ysp
b
c
+
+
−
−sTD
1+sTD/N++ KP
1
++
Y
USat
0
M
|.| |.|
+−
=0
<0
Controlli automatici – Schemi classici di controllo del moto −−−− P. Rocco [53]