Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Automazione
Alessandro De Luca
Regolatori PID –strutture
implementazione digitalesintonizzazione
Automazione 2
Dispositivi 𝑷𝑰𝑫 analogici e digitali
REX-C100 PID digitaleSiemens PID pneumatico(analogico)
Automazione 3
Sistema di controllo digitale
schema generale MIMO di controllo in feedback
(analogico = tempo continuo)
schema di controllo digitale- qui, caso scalare (SISO)- con passo di campionamento 𝑇%- con convertitori A/D e D/A- segnali a tempo continuo e discreto- utilizza un microprocessore (con codifica binaria) ⇒ digitale
Automazione 4
Campionamento e ricostruzione
conversione digitale-analogica (D/A):segnale ricostruito
da un organo di tenuta(qui, di ordine zero = ZOH)
ZOH = Zero-Order Hold
conversione analogico-digitale (A/D):segnale campionato ogni 𝑇%
e quantizzato in livelli(per troncamento o arrotondamento)
𝑥( = 𝑥 𝑘𝑇% [= 𝑥, 𝑘𝑇% ]
𝑡 ∈ [𝑘𝑇%, 𝑘 + 1 𝑇%)𝑥3 𝑡 = 𝑥 𝑘𝑇% ,
Automazione 5
Campionamento a impulsi
• campionamento = segnale a tempo continuo × treno di impulsi di Dirac
il tempo di campionamentoè un fattore di scala!
𝑥∗ 𝑡 = 𝑥 𝑡 𝛿67(𝑡) 𝛿67 𝑡 = 9(:;
<
𝛿(𝑡 − 𝑘𝑇%)
• dallo spettro X(jw) del segnale x(t) e dallo sviluppo in serie di Fourier del treno di impulsi di Dirac l’andamento spettrale del segnale campionato 𝑥∗ 𝑡 è
pulsazione di campionamento
𝑋∗ 𝑗𝜔 =1𝑇%
9A:B<
<
𝑋(𝑗𝜔 − 𝑗𝑛𝜔%) 𝜔% = 2𝜋/𝑇%
Automazione 6
Teorema di Shannon e aliasingspettro di un segnale limitato in banda a 𝜔G
spettro del relativosegnale campionato componente
primariacomponenti complementari
campionamentoa pulsazione𝜔% ≥ 2𝜔G
ricostruzione del segnale (idealmente) perfetta...Teorema di Shannon
comportamentoapprossimato dallo ZOH (per 𝑇% piccoloa sufficienza)
campionamentoa pulsazione𝜔% < 2𝜔G
...ricostruzione del segnale (sempre) corrottaTeorema di Shannon
fenomeno dialiasing
conclusione: i segnali hanno sempre componenti a frequenza sufficientemente alta (rumore) ⇒ filtraggio anti-aliasing
anche se usassimo un filtro ricostruttoreideale...
filtro ricostruttore ideale (non realizzabile)
𝐺K 𝑗𝜔 = L𝑇% 𝜔 ≤ 𝜔%/20 else
Automazione 7
Ricostruzione: Zero-Order Hold
risposta dello ZOHad un impulso unitarioin ingresso
⇒
• lo ZOH approssima il ricostruttore (recuperando la scala!) per 𝑇% sufficientemente piccolo
• lo ZOH introduce nell’anello di controllo un ritardo pari a 𝑇%/2, con problemi indotti di instabilità
Scelta del passo di campionamento• 𝑇% sufficientemente piccolo ⇒ evita perdita di informazione e instabilità• 𝑇% non troppo piccolo ⇒ cresce il costo computazionale (vincoli real time)
parametro di progetto𝛼𝜔G ≤ 𝜔S ≤ 10𝛼𝜔G
𝜋5𝛼𝜔G
≤ 𝑇% ≤2𝜋𝛼𝜔G
𝛼 ∈ 5 ÷ 10
(differenza di due gradini unitari, con il secondo ritardato)
ℎ; 𝑡 = 𝛿BW 𝑡 − 𝛿BW(𝑡 − 𝑇%) ⇒ (nel dominio dellafrequenza) 𝐻; 𝑗𝜔 =
1𝑗𝜔 −
1𝑗𝜔 𝑒
BZ[67 =1 − 𝑒BZ[67
𝑗𝜔
⇒𝐻; 𝑗𝜔 =1𝑗𝜔 −
1𝑗𝜔 𝑒
BZ[67 =𝑒Z[67\ − 𝑒B
Z[67\
𝑗𝜔 𝑒BZ[67\ = 𝑇%
sin 𝜔𝑇%/2𝜔𝑇%/2
𝑒BZ[67\ ⇒ 𝐻; 𝑗𝜔 = 𝑇%
sin 𝜔𝑇%/2𝜔𝑇%/2
≈ 𝑇% per 𝜔𝑇% ≪ 1
Automazione 8
Specifiche nel progetto di controllo
• stabilità asintotica !• prestazioni statiche
(errori a regime permanente)• prestazioni dinamiche
(sul transitorio)• spesso sulla risposta a gradino
(risposta indiciale), con legami da/per la risposta armonica
• specifiche riferimento-uscita• specifiche disturbo-uscita• sforzo di controllo• limiti fisici (attuatori)• realizzazione digitale
(passo di campionamento e altro)
Automazione 9
Specifiche sulla risposta indiciale
• tempo di salita 𝑇a(da 10% al 90% del regime)
• tempo di assestamento 𝑇b(errore inferiore al 3-5%)
• massima sovraelongazione 𝑆
• istante di massima sovraelongazione 𝑇d
𝑆 =𝑦 𝑇d − 𝑦<
𝑦<
Automazione
q Azione Proporzionale-Integrale-Derivativa (sull’errore)! soluzione industriale standard: oltre il 95% dei dispositivi di controllo in
uso, per lo più di tipo digitale, hanno una legge di controllo 𝑃𝐼𝐷! molteplici versioni e varietà di prodotti, differenti per feature aggiuntive! semplice taratura dei parametri (tuning), ora spesso automatica! facile interpretazione dei termini/effetti nella legge di controllo
10
Regolatore 𝑷𝑰𝑫
due espressioniequivalenti del 𝑃𝐼𝐷(in forma analogica)
𝑒 𝑡 = 𝑦3ij 𝑡 − 𝑦(𝑡)
𝑢(𝑡) = 𝐾m 𝑒 𝑡 +1𝑇in;
o
𝑒 𝜏 𝑑𝜏 + 𝑇r𝑑𝑒(𝑡)𝑑𝑡
𝑢(𝑡) = 𝐾m𝑒 𝑡 + 𝐾i n;
o
𝑒 𝜏 𝑑𝜏 + 𝐾r𝑑𝑒(𝑡)𝑑𝑡
𝑇i =𝐾m𝐾i
𝑇r =𝐾r𝐾m
tempo diintegrazione
tempo diderivazione
Automazione 11
Banda proporzionale
azione proporzionale
espressa in %
regolatore pneumatico
Siemens𝐾m =
𝑢(𝑡)𝑒(𝑡) =
Δ𝑢(𝑡)Δ𝑒(𝑡)
𝐾m𝐾At3d
=100𝐵m
⇔𝑠𝑜𝑙𝑜 𝑠𝑒
senzaoffset(𝑚𝑖𝑛𝑖𝑚𝑖 = 0!)
0.2 V 5 V𝑒
𝑢
1 bar
10 bar
𝐵m = 50%
0.2 V 5 V𝑒
𝑢
1 bar
10 bar
𝐵m = 25%
𝐾m =Δ𝑢(𝑡)/𝑢3bA��Δ𝑒(𝑡)/𝑒3bA��
� 𝐾At3d
⇔𝐾At3d =
𝑢3bA��𝑒3bA��
=94.8 = 1.875
barV
q Guadagno e Banda proporzionale! nella pratica industriale, si usa spesso il termine banda proporzionale 𝐵m al posto del
termine guadagno proporzionale 𝐾m! 𝐵m è la minima variazione dell’ingresso 𝑒 (espressa in percentuale) che porta l’uscita 𝑢
del regolatore dal valore minimo al valore di fondo scala (𝑟𝑎𝑛𝑔𝑒 = 𝑓𝑜𝑛𝑑𝑜 𝑠𝑐𝑎𝑙𝑎 – 𝑚𝑖𝑛𝑖𝑚𝑜)
normalizzazione del guadagno 𝐾m(rispetto al range del dispositivo)
2.4 V 1.2 V
Automazione
q Funzione di trasferimento di un 𝑃𝐼𝐷 (ideale)! trascuriamo per il momento la non realizzabilità dovuta alla presenza di
un derivatore (azione 𝐷) ideale! trasformando nel dominio di Laplace si ottiene
! con un polo in 𝑠 = 0 e due zeri a parte reale negativa, reali se e solo se 𝑇i ≥ 4 𝑇r (in particolare, coincidenti in −1/2𝑇r se 𝑇i = 4𝑇r −scelta spesso utile per semplificare il tuning…)
! in un progetto di controllo ‘analitico’, gli zeri possono essere scelti per cancellare poli stabili del processo (magari troppo lenti)
12
Regolatore 𝑷𝑰𝑫 ideale
𝑢(𝑡) = 𝐾m 𝑒 𝑡 +1𝑇in;
o
𝑒 𝜏 𝑑𝜏 + 𝑇r𝑑𝑒(𝑡)𝑑𝑡
𝑃𝐼𝐷𝑖𝑑𝑒𝑎𝑙𝑒 𝑠 =𝑢(𝑠)𝑒(𝑠)
= 𝐾m 1 +1𝑇i𝑠
+ 𝑇r𝑠 =𝐾m𝑇i
𝑇i𝑇r𝑠\ + 𝑇i𝑠 + 1𝑠
⇒ ℒ … ⇒
Automazione
q Funzione di trasferimento di un 𝑃𝐼𝐷 (reale)! si aggiunge un polo in alta frequenza sull’azione derivatrice (derivata
in banda fino alla pulsazione di taglio del polo aggiunto)! nel dominio di Laplace si ha
! con l’aggiunta di un secondo polo in 𝑠 = −𝑁/𝑇r (con 𝑁 intero grande) due zeri a parte reale negativa, certamente reali quando 𝑇i ≥ 4𝑇r!
! l’aggiunta di un polo in alta frequenza, per ottenere un’azione derivativa approssimata ma realizzabile, cambia di poco la posizione degli zeri rispetto al caso ideale
13
Regolatore 𝑷𝑰𝑫 reale
𝑃𝐼𝐷 𝑠 =𝑢(𝑠)𝑒(𝑠) = 𝐾m 1 +
1𝑇i𝑠
+𝑇r𝑠
1 + 𝑇r𝑁 𝑠=𝐾m𝑇i
𝑇i𝑇r 1 + 1𝑁 𝑠\ + 𝑇i +
𝑇r𝑁 𝑠 + 1
𝑠 1 + 𝑇r𝑁 𝑠
𝑧W,\ =− 𝑇r + 𝑁𝑇i ± 𝑁𝑇i + 𝑇r \ − 4𝑁(𝑁 + 1)𝑇r𝑇i
2𝑇r𝑇i 𝑁 + 1𝑁 → ∞ ≈ −
12𝑇r
±𝑇i\ − 4𝑇r𝑇i
2𝑇r𝑇i
Automazione
Diagrammi di Bode di un 𝑃𝐼𝐷 ideale vs reale
14
Confronto in risposta armonica
𝑃𝐼𝐷 𝑠 =𝐾m𝑇i
𝑇i𝑇r 1 + 1𝑁 𝑠\ + 𝑇i +
𝑇r𝑁 𝑠 + 1
𝑠 1 + 𝑇r𝑁 𝑠𝑃𝐼𝐷𝑖𝑑𝑒𝑎𝑙𝑒 𝑠 =
𝐾m𝑇i
𝑇i𝑇r𝑠\ + 𝑇i𝑠 + 1𝑠
10
15
20
25
30
35
40
45
Mag
nitu
de (d
B)10-2 10-1 100 101 102 103
-90
-45
0
45
Phas
e (d
eg)
PID reale con Kp= 5, Ti= 5, Td= 0.5, N= 5
Frequency (rad/s)
10
20
30
40
50
Mag
nitu
de (d
B)
10-2 10-1 100 101 102-90
-45
0
45
90
Phas
e (d
eg)
PID ideale con Kp= 5, Ti= 5, Td= 0.5
Frequency (rad/s)
Automazione 15
Regolatore 𝑷𝑰𝑫 digitalediscretizzazione con passo 𝑇% delle azioni del 𝑃𝐼𝐷 sull’errore 𝑒 𝑡 = 𝑦3ij 𝑡 − 𝑦(𝑡)
𝐾m𝑒 𝑡 ⇒ 𝐾m𝑒 𝑘𝑇% = 𝐾m 𝑒(
integrazione rettangolare in avanti(detta anche di Eulero a sinistra)𝐾m
1𝑇in;
o𝑒 𝜏 𝑑𝜏 ⇒
𝐾m𝑇i𝑇%9
Z:;
(
𝑒Z
derivazione all’indietro (backward)𝐾m𝑇r𝑑𝑒(𝑡)𝑑𝑡 ⇒ 𝐾m𝑇r
𝑒( − 𝑒(BW𝑇%
forma di posizione del 𝑃𝐼𝐷 digitale𝑢( = 𝐾m𝑒( +𝐾m𝑇%𝑇i
9Z:;
(
𝑒Z +𝐾m𝑇r𝑇%
𝑒( − 𝑒(BW
implementazione ricorsiva della forma di posizione del 𝑃𝐼𝐷 digitale
𝑢i,( = 𝑢i,(BW +𝐾m𝑇%𝑇i
𝑒(
𝑢( = 𝐾m𝑒( + 𝑢i,( +𝐾m𝑇r𝑇%
𝑒( − 𝑒(BW
Automazione 16
Regolatore 𝑷𝑰𝑫 digitale
forma di velocità del 𝑃𝐼𝐷 digitale
facendo la differenza di duecampioni di controllo successivi...
introducendo l’operatore di ritardo 𝑧BW = 1/𝑧 (di un passo 𝑇%) ...
espressionein 𝑧BW utile per la realizzazione
𝑢(BW = 𝐾m𝑒(BW +𝐾m𝑇%𝑇i
9Z:;
(BW
𝑒Z +𝐾m𝑇r𝑇%
𝑒(BW − 𝑒(B\
𝑢( = 𝐾m𝑒( +𝐾m𝑇%𝑇i
9Z:;
(
𝑒Z +𝐾m𝑇r𝑇%
𝑒( − 𝑒(BW
Δ𝑢( = 𝑢( − 𝑢(BW= 𝐾m 𝑒( − 𝑒(BW +
𝐾m𝑇%𝑇i
𝑒( +𝐾m𝑇r𝑇%
𝑒( − 2𝑒(BW + 𝑒(B\
𝑢( = 𝑢(BW + Δ𝑢(𝑦(BW = 𝑧BW 𝑦(
= 1 − 𝑧BW \1 − 𝑧BW 𝑢( = 𝐾m 1 − 𝑧BW 𝑒( +𝐾m𝑇%𝑇i
𝑒( +𝐾m𝑇r𝑇%
1 − 2𝑧BW + 𝑧B\ 𝑒(
𝑢( = 𝐾m +𝐾m𝑇i
𝑇%1 − 𝑧BW +
𝐾m𝑇%𝑇r 1 − 𝑧BW 𝑒( = 𝑃𝐼𝐷(𝑧)𝑒(
Automazione 17
Schema 𝑷𝑰𝑫 digitale
controllore 𝑃𝐼𝐷 digitale
𝑒( 𝑢(𝑢i,(
Automazione 18
Derivata filtrata in banda...
come già visto, il termine derivativo puro del 𝑃𝐼𝐷 non è realizzabile…
realizzazione solocon blocchi “causali”
nel passaggio dal tempo continuo al tempo discreto, si può interpretare come una media su 𝑁 campioni (con 5 ≤ 𝑁 ≤ 20)
+ −
𝐾m𝑁𝑒 𝑢r1
1 + 𝑇r𝑁 𝑠
…infatti la sua funzione di trasferimento èimpropria (non causale)
𝑢 𝑠 = 𝐾m 1 +1𝑇i𝑠
+ 𝑇r𝑠 =𝐾m𝑇i
𝑇i𝑇r𝑠\ + 𝑇i𝑠 + 1𝑠 𝑒(𝑠)
𝑢(𝑡) = 𝐾m 𝑒 𝑡 +1𝑇in;
o
𝑒 𝜏 𝑑𝜏 + 𝑇r𝑑𝑒(𝑡)𝑑𝑡
.. e si aggiunge un polo in alta frequenzaal termine derivativo (la derivazione delsegnale d’ingresso è filtrata in banda)
𝐾m𝑇r𝑠 ⟹ 𝐾m𝑇r𝑠
1 + (𝑇r/𝑁)𝑠
Automazione 19
...e sua realizzazione digitale
derivate realizzate con le differenze all’indietro
espressionein 𝑧BW utile per la realizzazione
𝑢r(𝑠) = 𝐾m𝑇r𝑠
1 + 𝑇r𝑁 𝑠𝑒(𝑠) 1 +
𝑇r𝑁𝑠 𝑢r 𝑠 = 𝐾m𝑇r𝑠𝑒(𝑠)⇒
𝑢r,( +𝑇r𝑁𝑢r,( − 𝑢r,(BW
𝑇%= 𝐾m𝑇r
𝑒( − 𝑒(BW𝑇%
𝑢r,( =1
1 + 𝑇r𝑁𝑇%
𝑇r𝑁𝑇%
𝑢r,(BW +𝐾m𝑇r𝑇%
𝑒( −𝐾m𝑇r𝑇%
𝑒(BW
insieme a 𝑢i,( = 𝑢i,(BW +��676�
𝑒( 𝑢( = 𝐾m𝑒( + 𝑢i,( + 𝑢r,(
⇒ usando l’operatore di ritardo 𝑧BW
1 +𝑇r𝑁𝑇%
1 − 𝑧BW 𝑢r,( =𝐾m𝑇r𝑇%
1 − 𝑧BW 𝑒(⇒
𝑢r,( =
𝐾m𝑇r𝑇%
1 − 𝑧BW
1 + 𝑇r𝑁𝑇%
− 𝑇r𝑁𝑇%
𝑧BW𝑒(⇒
𝑢( = 𝐾m +𝐾m𝑇i
𝑇%1 − 𝑧BW +
𝐾m𝑇r𝑇%
1 − 𝑧BW
1 + 𝑇r𝑁𝑇%
− 𝑇r𝑁𝑇%
𝑧BW𝑒(
= 𝑃𝐼𝐷∗(𝑧)𝑒(
⇒
Automazione 20
Schema 𝑷𝑰𝑫∗ digitale
controllore 𝑃𝐼𝐷 digitale con derivata filtrata in banda = 𝑃𝐼𝐷∗
𝑒( 𝑢(𝑢i,(
𝑢r,(
Automazione 21
𝑷𝑰𝑫 digitale: forme analitiche in 𝒛B𝟏 e 𝒛espressioni
in 𝑧BW utili per le realizzazioni
(i due 𝑃𝐼𝐷coincidono per
𝑁 → ∞)
espressionirazionali in 𝑧
che evidenzianopoli e zeri
(utili anche in una sintesi delcontrollore percancellazione)
𝑢( = 𝐾m +𝐾m𝑇i
𝑇%1 − 𝑧BW +
𝐾m𝑇r𝑇%
1 − 𝑧BW
1 + 𝑇r𝑁𝑇%
− 𝑇r𝑁𝑇%
𝑧BW𝑒( = 𝑃𝐼𝐷∗ 𝑧 𝑒(
𝑢( = 𝐾m +𝐾m𝑇i
𝑇%1 − 𝑧BW +
𝐾m𝑇%𝑇r 1 − 𝑧BW 𝑒( = 𝑃𝐼𝐷(𝑧)𝑒(
moltiplicando num/den per 𝑧 e riorganizzando
• 2 zeri nel cerchio unitario(controllore a fase minima)
• 1 polo in 𝑧 = 0• 1 polo in 𝑧 = 1⇔ azione integrale
𝑃𝐼𝐷 𝑧 = 𝐾m1 + 𝑇%𝑇i
+ 𝑇r𝑇%𝑧\ − 2𝑇r + 𝑇%𝑇%
𝑧 + 𝑇r𝑇%𝑧(𝑧 − 1)
𝑃𝐼𝐷∗ 𝑧 = 𝐾m𝑎\𝑧\ + 𝑎W𝑧 + 𝑎;
(𝑧 − 𝑇r𝑇r + 𝑁𝑇%
)(𝑧 − 1)
con 𝑎\ = 1 + 676�+ ¢6£
6£¤¢67, 𝑎W = − \¢ 6£¤67 ¤\6£¤676£/6�
6£¤¢67, 𝑎; =
6£6£¤¢67
(𝑁 + 1 − 676�)
• 2 zeri sempre interni al cerchio unitario (criterio di Jury) ⇔ 𝑎; < 𝑎\,𝑎; + 𝑎W + 𝑎\ > 0, 𝑎; − 𝑎W + 𝑎\ > 0
• 1 polo reale 'vicino’ a 𝑧 = 0 (per 𝑁 →∞)• 1 polo in 𝑧 = 1 ⇔ azione integrale
Automazione 22
Schemi realizzativi del 𝑷𝑰𝑫
azione derivativa 𝑫 calcolata solo sull’uscita(per riferimento costante a lungo o a tratti):
evita “spikes” dovuti a variazioni di 𝑟 a gradino
schema standard con tutte le azioni𝑷𝑰𝑫 sull’errore (𝐷∗ = derivata in banda)
quando 𝑒(𝑡) ≈ 0, a causa dei rumoridi misura 𝑛(𝑡), il rapporto S/N peggiora
➀
➁
➃
P(s)
PI P(s)
PD
I P(s)
LeadPIe(t) u(t)
P(s)
azione 𝑷𝑫 calcolata sull’uscita(il solo termine integrale recupererà l’errore):
evita saturazioni da salto a gradino del riferimento(bumpless transfer)
➂
𝑟 = 𝑐𝑜𝑠𝑡 ⇒𝑑𝑒(𝑡)𝑑𝑡 = −
𝑑𝑦(𝑡)𝑑𝑡
azione derivativa assimilata a quella di unarete anticipatrice opportuna: facilita il tuning del 𝑃𝐼𝐷
con le regole del “loop shaping” in frequenza
𝑃𝐼𝐷∗
𝑃𝐼𝐷¦∗
𝑃𝐼¦𝐷¦∗
Automazione 23
Esempio #1 – Confronto tra 𝑷𝑰𝑫q confronto tra 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗q processo
q parametri del 𝑃𝐼𝐷 (ideale)
… è una scelta semplificatrice
… cancella due poli stabili del processoq risposta indiciale (gradino unitario a 𝑡 = 1)q sforzo di controllo tra 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗
q effetto della presenza anche di un disturbo in uscita (rumore bianco), al variare di 𝑁(polo in alta frequenza nel termine 𝐷∗)
𝑃 𝑠 =1
𝑠 + 1 §
𝐾m = 2, 𝐾i = 𝐾r = 1 (𝑇 = 2, 𝑇© = 0.5)
𝑃𝐼𝐷 𝑠 =𝑠 + 1 \
𝑠
𝑃𝐼𝐷∗
𝑃𝐼𝐷¦∗
Automazione 24
Esempio #1 – Sforzo di controllo
0 2 4 6 8 10 12t
0
1
2
3
4
5
6
7
u
controllo con PID e PID*
0 2 4 6 8 10 12t
0
0.2
0.4
0.6
0.8
1
1.2
1.4y
uscita con PID e PID*
0 2 4 6 8 10 12t
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
e
errore con PID e PID*
q confronto tra 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗ (con 𝑁 = 𝑁ªt«)q a fronte di prestazioni simili nella risposta
indiciale (tempo di salita, tempo di assestamento, sovraelongazione) …
q … sforzo di controllo molto ridotto con 𝑃𝐼𝐷¦∗
q si evita il picco in corrispondenza della discontinuità del riferimento (gradino a 𝑡 = 1)
Automazione 25
Esempio #1 – Effetto del rumore
0 2 4 6 8 10 12 14 16 18 20t
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4y
uscita usando PID*, con N = 5 e N = 30
0 2 4 6 8 10 12 14 16 18 20t
-10
-8
-6
-4
-2
0
2
4
6
8
10
y
controllo usando PID*, con N = 30
0 2 4 6 8 10 12 14 16 18 20t
-10
-8
-6
-4
-2
0
2
4
6
8
10
y
controllo usando PID*, con N = 5
q confronto tra 𝑃𝐼𝐷¦∗ per due valori del polo in alta frequenza per l’azione derivativa
q in presenza di un disturbo in uscita in forma di rumore bianco (a spettro uniforme, con potenza 0.5 � 10B§)
q a parità di comportamento in uscita …q … l’andamento del controllo è molto meno
sollecitato quando 𝑁 è ridotto
𝑁ªt« = 5, 𝑁¬i�¬ = 30
Automazione 26
Schema 𝑷𝑰𝑫𝒚∗ digitale sull’uscita
Controllore 𝑃𝐼𝐷¦∗ = 𝑃𝐼𝐷 digitale con derivata (filtrata in banda) calcolata sull’uscita➁
𝑒( 𝑢(𝑢i,(
𝑢r,(𝑦(
Automazione 27
Schema 𝑷𝑰𝑫 con feedforward
aggiunta dell’azione di feedforward (ffw) (per inseguimento di riferimento variabile
e/o compensazione di disturbi)
schema equivalente,con sole azioni di feedback (fbk) (dall’errore e dall’uscita misurata)
schema a due gradi di libertà (con parametri 𝛼, 𝛽)secondo lo standard ISA (Instrument Society of America)
r(t) y(t)u(t)+
−
+ −
da discretizzarecome prima per ottenere
un 𝑃𝐼𝐷 + ffw digitale
a = 0 b = 0 ➀
a = 0 b = 1 ➁
a = 1 b = 1 ➂
0<a<1 0<b<1 ...vedi schemi in slide #22
𝛼 + 𝛽𝑇r𝑠
𝐾m 𝑃(𝑠)1 +1𝑇i𝑠
+ 𝑇r𝑠
r(t) y(t)u(t)
−
+ +
−𝑃 𝑠
𝛼 + 𝛽𝑇r𝑠
𝐾m1 − 𝛼 +1𝑇i𝑠
+ 1 − 𝛽 𝑇r𝑠
Automazione 28
Saturazione dell’attuatore sotto 𝑷𝑰𝑫
il comando attuato NON dipende più dall’uscita del 𝑃𝐼𝐷(ossia dall’azione di controllo in feedbackcalcolata dall’errore)
come fosse ad anello aperto(o con una riduzione dei guadagni)
la saturazione del comando di controllo è criticase c’è un’azione integrale che “accumula” errore
anche quando l’attuatore è in saturazione
𝑃(𝑠)
ad esempio, attuatore saturato al suo valore massimo
𝑃(𝑠)
saturazione fisicadell’attuatore
(di solito simmetrica rispetto allo 0,ma non necessariamente)
𝑢b 𝑡 = °𝑢±, 𝑢± ≤ 𝑢(𝑡)𝑢 𝑡 , 𝑢² ≤ 𝑢 𝑡 ≤ 𝑢±𝑢², 𝑢 𝑡 ≤ 𝑢²
Automazione
0 5 10 15 20 25 30t
0
0.2
0.4
0.6
0.8
1
1.2
1.4
y
uscita nel caso lineare e con saturazione dell'attuatore
29
Esempio #2 – Saturazione da azione 𝑰
0 5 10 15 20 25 30t
-0.5
0
0.5
1
1.5
2
2.5
e, u
, u_a
errore, comando e comando saturato
q azione di controllo integrale, in presenza di una saturazione di attuazione
q risposta al gradino in 𝑡 = 1, con processo
q solo guadagno integrale: 𝐾i = 2q saturazione: 𝑢± = −𝑢² = 1.05 (simmetrica)
𝑃 𝑠 =1
𝑠 + 1
uscita in regime lineare e con saturazione errore, controllo e controllo saturato
l’errore è massimo in𝑡 = 1, poi decrescee diventa negativo da 𝑡 ≈ 4.4
il controllo integrale è perògià arrivato a valori elevati (accumulando l’errore > 0) …
risultato: ritardata convergenzadell’uscita al valore desiderato rispetto al caso lineare … ci vuole tempo per potere ‘‘scaricare’’
l’integratore (con il segnale d’errore < 0) e uscire quindi dalla saturazione
Automazione 30
Esempio #3 – Saturazione da azione 𝑷𝑰
𝑃 𝑠 =1
𝑠 + 1
0 2 4 6 8 10 12 14 16 18 20t
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
e, u
, u_a
errore, comando e comando saturato
0 2 4 6 8 10 12 14 16 18 20t
0
0.2
0.4
0.6
0.8
1
1.2
y
uscita nel caso lineare e con saturazione dell'attuatore
uscita in regime lineare e con saturazione errore, controllo e controllo saturato
comportamentomolto simileal caso con
controllo solo 𝐼
q azione di controllo 𝑷𝑰, in presenza di una saturazione di attuazione
q risposta al gradino in 𝑡 = 1, con processo
q parametri del controllo PI: 𝐾m = 1, 𝐾i = 2q saturazione: 𝑢± = −𝑢² = 1.05 (simmetrica)
Automazione 31
𝑷𝑰𝑫 con anti-windup
q si usa un modello algebrico dell’attuatore con stessi valori di saturazione (oppure si conosce una “misura” dell’effettivo segnale attuato 𝑢b ≠ dal controllo calcolato)
q analisi
! in linearità:
! in saturazione (con 𝐾m > 0): se 𝑒(𝑡) > 0 per un po’ ⇒ 𝑠 = 𝑢³¨ = 𝑢±; 𝑧 𝑡 → 𝑢± (non viene più integrato l’errore!); quando poi 𝑒(𝑡) < 0, anche 𝑞 < 0 ⇒ 𝑠 < 𝑢± si esce dalla saturazione
possibile implementazione di un𝑃𝐼𝐷¦∗ con azione di anti-windup
azione derivativadall’uscita conbanda limitata
‘copia’ dellasaturazione
𝑃(𝑠)
11 + 𝑠𝑇i 𝐾m𝑠𝑇r
1 + 𝑠𝑇r𝑁
𝑢±
𝑢²𝐾m
𝑢±
𝑢²
𝑦𝑢b𝑢+
−
+
−
+
+
𝑒𝑦r
attuatore consaturazione
𝑢³¨
𝑢©∗
𝑞 𝑠
𝑧
𝑢³¨ 𝑠 =1
1 − 11 + 𝑠𝑇i
𝑞 𝑠 =1 + 𝑠𝑇i𝑠𝑇i
𝑞 𝑠 = 𝐾m1 + 𝑠𝑇i𝑠𝑇i
𝑒 𝑠
azione PI quandonon in saturazione
𝑧 𝑠 =1
1 + 𝑠𝑇i𝑢³¨ 𝑠 =
𝐾m𝑠𝑇i
𝑒 𝑠 ⇒ 𝑧 𝑡 azione integrale
⇒ azione PI
Automazione 32
Effetto dell’anti-windup
simulazione di un controllo in retroazione di tipo 𝑃𝐼𝐷in presenza di saturazione dell’attuatore:
realizzazione standard (a-c)
uscitacontrollata
comandodi controllo(e versione
effettivamenteattuata)
con schemaanti-windup
e realizzazione anti-windup (b-d)
Automazione 33
Esempio #4 – Saturazione e anti-windupq azione di controllo 𝑷𝑰, in presenza di una
saturazione di attuazione e anti-windupq risposta al gradino in 𝑡 = 1, con processo
q parametri del controllo 𝑃𝐼: 𝐾m = 1, 𝐾i = 2q saturazione: 𝑢± = −𝑢² = 1.05 (simmetrica)q schema della slide #28 (senza azione 𝐷)
𝑃 𝑠 =1
𝑠 + 1
0 2 4 6 8 10 12 14 16 18t
0
0.2
0.4
0.6
0.8
1
1.2
y_d,
y, y
_s, y
_w
uscita nel caso lineare, con saturazione dell'attuatore, con anti-windup
0 2 4 6 8 10 12 14 16 18t
-0.2
0
0.2
0.4
0.6
0.8
1
e, e
_s, e
_w
errore nel caso lineare, con saturazione dell'attuatore, con anti-windup
0 2 4 6 8 10 12 14 16 18t
0
0.2
0.4
0.6
0.8
1
1.2
1.4
u, u
_a, u
_aw
comando attuale nel caso lineare, con saturazione dell'attuatore, con anti-windup
regime linearecon saturazione con anti-windup
uscita
errore
comando
Automazione 34
𝑷𝑰𝑫 digitale con anti-windup
ykek
w1,k
u1,kukwk
q in questo schema, due saturazioni: sulla sola azione 𝑃𝐷 e sul comando finaleq l’integrazione dell’errore viene bloccata automaticamente quando c’è saturazioneq non evita saturazioni, ma solo l’inutile “accumulo” dell’azione integrale sull’errore
! andrebbe poi “scaricata” quando l’errore ha cambiato segno, prima di poter rientrare nel dominio di linearità dell’attuatore
! si rallenterebbe quindi il recupero della corretta azione del 𝑃𝐼𝐷
una possibile realizzazioneanti-windup di un regolatore
𝑃𝐼𝐷 digitale
azione separata 𝑃𝐷, 𝑃𝐷∗, o 𝑃𝐷¦∗
Automazione 35
Analisi del 𝑷𝑰𝑫 digitale anti-windup
• entrambi i blocchi in saturazione (da almeno 1 passo di campionamento)
esegue l’azione 𝑃𝐷 + 𝐼 standard
NON integra più!
ykek
w1,k
u1,kukwk
ad esempio, attuatore saturato al suo valore massimo
• nella regione di linearità
azione separata 𝑃𝐷, 𝑃𝐷∗, o 𝑃𝐷¦∗
𝑢((= 𝑤() = 𝑢W,( +��676�
𝑒( + 𝑢(BW − 𝑢W,(BW = 1 − 𝑧BW 𝑢W,( +��676�
𝑒( + 𝑧BW𝑢(
𝑢( = 𝑢W,( +𝐾m𝑇%𝑇i
𝑒(1 − 𝑧BW
= 𝑤W,(
𝑤( = 𝑢± +𝐾m𝑇%𝑇i
𝑒( + 𝑢± − 𝑢± = 𝑢± +𝐾m𝑇%𝑇i
𝑒(
𝑢(BW = 𝑢± 𝑢W,( = 𝑢W,(BW = 𝑢±
se 𝑒( < 0 ⇒ 𝑤( < 𝑢±!
Automazione 36
Tuning del 𝑷𝑰𝑫 – 1o metodo di Z-N
esempi di deduzione per via grafica del modello di progetto 𝑃d(𝑠):processo del primo ordine (a) e processo di ordine superiore (b)
1o metodo di Z-N(Ziegler-Nichols)basato su unmodello semplice(guadagno, costante ditempo, ritardo finito)
che approssima ilprocesso fisico,ricavato da parametridella risposta ad ungradino Du
nel caso (b), a volte si preferisce definire 𝑡1 come l’istante in cuila risposta raggiunge il 63% del valore di regime
𝑃d 𝑠 =𝐾𝑒B¶a
1 + 𝜏𝑠
Automazione 37
Scelta dei parametri del 𝑷𝑰𝑫
nel caso di 𝑃𝐼𝐷 digitale, si tiene conto del passo di campionamento 𝑇𝑐 e si pone
𝑃𝐼𝐷 analogico (e sue varianti più semplici)
utilizzando nella tabella
1o metodo di
𝜃©
𝜏⟹ per 𝐾𝐾m, ⁄𝑇i 𝜏 , ⁄𝑇r 𝜏𝜃 → 𝜃© = 𝜃 +
𝑇%2
Automazione 38
Esempio #5 – Parametri di Z-Nprocesso
da controllare(asintoticamente stabile)
Nota: il modello matematico del processo non è dettoche sia perfettamente noto, anzi...
può essere rilevatasperimentalmente
(anche senza modello)
analisi grafica
risposta indiciale
𝐾 = 1𝜃 = 1.46 𝑠𝜏 = 3.34 [𝑠]
modello per il progettodel PID (uso delle tabelle) 𝑃d 𝑠 =
𝑒BW.¼½a
1 + 3.34𝑠
𝑃(𝑠) =1
(1 + 0.5𝑠) 1 + 𝑠 \(1 + 2𝑠)
𝝉𝜽
𝑲
Automazione 39
Esempio #5 – Prove con 𝑷𝑰𝑫processo
da controllare
vediamo prima cosa succedecon delle leggi di controllo progettate per “tentativi”...
con controllore solo proporzionale (qui 𝐾m = 2)
• tempo di salita più rapido (ts ≈ 3 s)• errore a regime permanente (≈ 33%)• sovraelongazione pronunciata (≈ 35%)• aumentando il guadagno, oscillazioni crescenti
con controllore 𝑷𝑰𝑫𝒚∗ (con derivata in banda)
• dopo molte prove: 𝐾m = 3, 𝑇i = 5, 𝑇r = 0.1• spesso instabile (con guadagni molto simili!)• sovraelongazione eccessiva e molte oscillazioni• tempo di assestamento troppo lungo (40÷50 s)
𝑃(𝑠) =1
(1 + 0.5𝑠) 1 + 𝑠 \(1 + 2𝑠)
Automazione 40
Esempio #5 – 𝑷𝑰𝑫 ‘tuned’ con Z-Nprocesso
da controllare
• tempo di salita rapido (ts ≈ 2,5 s)• errore a regime permanente nullo• poche oscillazioni• tempo di assestamento ≈ 16 s• sforzo di controllo limitato [vedi prossima slide]• sovraelongazione ancora elevata ...
controllore PID sintonizzato (‘tuned’)usando la tabella con il
1o metodo di Ziegler-Nichols
derivata limitata in banda
𝐾m = 2.75, 𝑇i = 2.92, 𝑇r = 0.73, 𝑁 = 5
𝑃𝐼𝐷∗ 𝑠 = 𝐾m 1 +1𝑇i𝑠
+𝑇r𝑠
1 + ⁄𝑇r 𝑁 𝑠
𝑃(𝑠) =1
(1 + 0.5𝑠) 1 + 𝑠 \(1 + 2𝑠)
Automazione 41
Esempio #5 – Versione digitale del 𝑷𝑰𝑫dall’analisi grafica
della risposta indicialeprocesso da controllare modello per il progetto del PID (uso delle tabelle)
regolatore 𝑷𝑰𝑫 digitale con
dalla tabella (1o metodo di Ziegler-Nichols)
rispostaindiciale
(a tempo continuo)
uscita delregolatore 𝑃𝐼𝐷
digitale[dopo organo ditenuta (ZOH)]
sforzo di controllo limitato anche nel transitorio
𝑃(𝑠) =1
(1 + 0.5𝑠) 1 + 𝑠 \(1 + 2𝑠) 𝑃d 𝑠 =𝑒W.¼½a
1 + 3.34𝑠
𝐾 = 1𝜃 = 1.46 𝑠𝜏 = 3.34 [𝑠]
𝑇% = 0.3𝑠 𝜃© = 𝜃 + ⁄𝑇% 2 = 1.46 + 0.15 = 1.61 ⁄⇒ 𝜃© 𝜏 = 0.482𝐾𝐾m = 2.4894, ⁄𝑇i 𝜏 = 0.9461, ⁄𝑇r 𝜏 = 0.241
⇒ 𝐾m= 2.4894, 𝑇i= 3.22, 𝑇r= 0.805
Automazione 42
Esempio #6 – Ritardo finito
modello per il progettodel 𝑃𝐼𝐷 (dalle tabelle) 𝑃d 𝑠 =
5.5 𝑒B\a
1 + 4𝑠
0 5 10 15 20 25 30 35 40 45 50t
0
1
2
3
4
5
6
y
risposta indiciale ad anello aperto
analisi grafica
risposta indiciale
𝐾 = 5.5𝜃 = 2 𝑠𝜏 = 4 [𝑠]
𝑲
𝜽
Supponiamo di rilevare sperimentalmente due risposte di un processo (avente un ritardo finito)
• risposta indiciale ad anello aperto (gradino unitario all’istante 𝑡 = 1 s)• risposta indiciale ad anello chiuso con un controllore proporzionale (𝐾m ≈ 0.54, di prova)
𝝉
0 5 10 15 20 25 30 35 40 45 50t
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
y
uscita e comando con controllo proporzionale con Kp=0.54545
uscita
comando 𝑃
ritardofinito
Automazione 43
Esempio #6 – Regolatori sintonizzatiProviamo in sequenza quattro regolatori: 𝑃, 𝑃𝐼, 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗ (con derivata solo dall’uscita), in cui i guadagni sono dati dalla tabella di Ziegler-Nichols per ⁄𝜃 𝜏 = 0.5
0 5 10 15 20 25 30 35 40 45 50t
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
y
uscita e comando con controllo proporzionale con Kp=0.36364
uscita 𝑃ÁB¢
comando 𝑃ÁB¢
regolatori 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗ : 𝐾m = 0.4364, 𝑇i = 4, 𝑇i = 1, 𝑁 = 20
0 5 10 15 20 25 30 35 40 45 50t
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
y
uscita con P, PI, PID e PID*
𝑃𝐼
𝑃𝐼𝐷∗
𝑃
𝑃𝐼𝐷¦∗
regolatore 𝑃: 𝐾m = 0.3636 regolatore 𝑃𝐼: 𝐾m = 0.3273, 𝑇i = 6.66
uscite
Automazione 44
Esempio #6 – Sforzo di controllo
0 5 10 15 20 25 30 35 40 45 50t
-2
0
2
4
6
8
10
y
comando con P, PI, PID e PID*
𝑃𝐼𝐷∗
Confronto tra sforzi di controllo con i quattro regolatori 𝑃, 𝑃𝐼, 𝑃𝐼𝐷∗ e 𝑃𝐼𝐷¦∗ (con derivata solo dall’uscita), in cui i guadagni sono dati dalla tabella di Ziegler-Nichols per ⁄𝜃 𝜏 = 0.5
gli altri tre regolatori sono fuori scala!
picco di controllo dovuto alla derivazione del gradino in 𝑡 = 1…
0 5 10 15 20 25 30 35 40 45 50t
-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
y
comando con P, PI e PID*
𝑃𝐼
𝑃
𝑃𝐼𝐷¦∗sforzi di controllo
in questo intervallo di ‘ritardo’, le azioni integraliaccumulano solo il valore del riferimento costante …
Automazione 45
Esempio #6 – 𝑷𝑰 e 𝑷𝑰𝑫∗ ‘tuned’ con Z-NSchemi Simulink dei due migliori regolatori: 𝑃𝐼 e 𝑃𝐼𝐷¦∗
0 5 10 15 20 25 30 35 40 45 50t
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
e
errore con PI e PID*
0 5 10 15 20 25 30 35 40 45 50t
0
0.2
0.4
0.6
0.8
1
1.2
1.4
e
uscita con PI e PID*
uscite
errori
Automazione
(-1,j0)
w
.
46
Tuning del 𝑷𝑰𝑫 – 2o metodo di Z-N2o metodo di Ziegler-Nichols (ad anello chiuso)[posizione di tuning b] 1. si chiude l’anello di controllo con la sola azione proporzionale2. si aumenta il guadagno K fino al valore critico Kc che porta il sistema in oscillazione3. si ricava il periodo Pc dell’oscillazione critica[posizione di operazione a] 𝑃𝐼𝐷 (o sue varianti), dopo la scelta dei guadagni come da tabella
interpretazionesul diagramma
di Nyquist
yd
➚KPc = 2p/wc
Automazione 47
Esempio #7 – 𝑷𝑰𝑫 ‘tuned’ con 2o Z-Nprocesso
da controllare(lo stesso dell’Esempio #5)
• risultato molto simile al caso precedente (anche nella versione digitale)
controllore 𝑃𝐼𝐷 sintonizzatousando la tabella con il
2o metodo di Ziegler-Nichols
• controllore 𝑃 con guadagno critico 𝐾% = 5• periodo di oscillazione (tra picchi) 𝑃% = 6.27 s
𝑃(𝑠) =1
(1 + 0.5𝑠) 1 + 𝑠 \(1 + 2𝑠)
𝐾m = 3, 𝑇i = 3.13, 𝑇r = 0.78, 𝑁 = 5
𝑃𝐼𝐷∗ 𝑠 = 𝐾m 1 +1𝑇i𝑠
+𝑇r𝑠
1 + ⁄𝑇r 𝑁 𝑠
𝑃%
Automazione 48
Tuning del 𝑷𝑰𝑫 – Variante del 2o metodo di Z-N2o metodo di Ziegler-Nichols (schema alternativo ad anello chiuso)[posizione di tuning b] 1. si chiude l’anello con una funzione a relè di ampiezza d2. la retroazione non lineare innesca una oscillazione critica (ciclo limite) ... 3. dalla teoria delle funzioni descrittive (vedi anche appunti sul sito)
• il segnale di uscita a regime è periodico quasi-sinusoidale di periodo Pc• la prima armonica dell’uscita ha un’ampiezza A = 4d/p
4. si misura il periodo Pc dell’oscillazione critica e dall’ampiezza A dell’uscita si ricava Kc
[posizione di operazione a] 𝑃𝐼𝐷 (o sue varianti), dopo la scelta dei guadagni come da tabella
yd𝐾% =
4𝑑𝜋𝐴