Esercitazione di Laboratorio - claudiocancelli.it · richiamate le nozioni teoriche relative ad un...

20
1 UNIVERSITA' DEGLI STUDI DI BERGAMO Scuola Interuniversitaria Lombarda di Specializzazione per l’Insegnamento Secondario Sezione di Bergamo e Brescia Esercitazione di Laboratorio Didattica dei Controlli Automatici Prof. Antonio Visioli Classe di Abilitazione: A034 Prof. Claudio Cancelli Anno Accademico 2006/2007

Transcript of Esercitazione di Laboratorio - claudiocancelli.it · richiamate le nozioni teoriche relative ad un...

1

UNIVERSITA' DEGLI STUDI DI BERGAMO

Scuola Interuniversitaria Lombarda di Specializzazione per l’Insegnamento Secondario

Sezione di Bergamo e Brescia

Esercitazione di Laboratorio Didattica dei Controlli Automatici

Prof. Antonio Visioli

Classe di Abilitazione: A034 Prof. Claudio Cancelli

Anno Accademico 2006/2007

2

OOGGGGEETTTTOO

TTaallee ddooccuummeennttoo èè iill rriissuullttaattoo ddeellll’’aattttiivviittàà ddii llaabboorraattoorriioo ssvvoollttaa nneellll’’aammbbiittoo ddeellllee lleezziioonnii tteennuuttee ddaall pprrooff.. VViissiioollii,, ee ppuuòò ccooiinnvvoollggeerree ggllii ssttuuddeennttii ddeell 55°° aannnnoo ddeellll’’ IITTIISS –– IInnddiirriizzzzoo ““EElleettttrroonniiccoo””,, cchhee nneellll’’aammbbiittoo ddeellllee aattttiivviittàà ddii llaabboorraattoorriioo ddii ““SSiisstteemmii”” hhaannnnoo llaa nneecceessssiittàà ddii ccoommpprreennddeerree ggllii eeffffeettttii ddeell gguuaaddaaggnnoo pprrooppoorrzziioonnaallee eedd iinntteeggrraattiivvoo ssuull ssiisstteemmaa ooggggeettttoo ddeellll’’aannaalliissii ..

LLoo ssccooppoo ddii ttaallee ddooccuummeennttoo èè dduupplliiccee:: ddaa uunn llaattoo vveennggoonnoo rriicchhiiaammaattee llee nnoozziioonnii tteeoorriicchhee rreellaattiivvee aadd uunn ssiisstteemmaa tteerrmmiiccoo ddeell pprriimmoo oorrddiinnee,, ppeerr ccoonnsseennttiirree aaggllii ssttuuddeennttii ddii rriipprreennddeerree llee nnoozziioonnii tteeoorriicchhee aaffffrroonnttaattee dduurraannttee llaa ttrraattttaazziioonnee tteeoorriiccaa iinn ccllaassssee,, ddaallll’’aallttrroo vveennggoonnoo ddooccuummeennttaattee llee pprroovvee ssvvoollttee ccoonn MMaattllaabb ee SSiimmuulliinnkk ppeerr ccoommpprreennddeerree iill ssiiggnniiffiiccaattoo ddeeii ccoonncceettttii eessppoossttii mmeeddiiaannttee llaa ssiimmuullaazziioonnee ddeell ccoommppoorrttaammeennttoo ddiinnaammiiccoo ddeell ssiisstteemmaa,, ee cciiòò vviieennee ffaattttoo ccoonn qquueessiittii aaii qquuaallii vviieennee ffoorrnniittaa llaa ppoossssiibbiillee rriissppoossttaa..

IINNDDIICCEE

1. OObbiieettttiivvii 22.. DDeessttiinnaattaarrii 3. RRiiffeerriimmeennttii 4. LLaa tteeoorriiaa 5. SSttrruummeennttaazziioonnee uuttiilliizzzzaattaa 6. LLaabboorraattoorriioo 7. VVeerriiffiiccaa AAzziioonnee PPrrooppoorrzziioonnaallee 8. CCoonncclluussiioonnii ssuull ssiisstteemmaa ddeell 11oo oorrddiinnee ccoonn AAzziioonnee PPrrooppoorrzziioonnaallee 9. VVeerriiffiiccaa AAzziioonnee IInntteeggrraallee 10. CCoonncclluussiioonnii ssuull ssiisstteemmaa ddeell 11oo oorrddiinnee ccoonn AAzziioonnee IInntteeggrraallee 11. AAppppeennddiiccee AAzziioonnee PPrrooppoorrzziioonnaallee 12. AAppppeennddiiccee AAzziioonnee IInntteeggrraallee

3

SISTEMA TERMICO DEL 1° ORDINE

1. Obiettivi

Tale esercitazione si prefigge lo scopo di far acquisire le competenze necessarie per valutare il comportamento dinamico di un sistema continuo del primo ordine dando agli studenti la possibilità di:

utilizzare MATLAB/SIMULINK per verificare la risposta temporale del sistema ad anello aperto e del sistema ad anello chiuso e valutarne le differenze; utilizzare MATLAB/SIMULINK per valutare l’impatto sul guadagno e sulla frequenza di taglio; valutare l’azione di controllo proporzionale ed integrale di un regolatore PID.

Non risulta oggetto di tale esercitazione:

il problema dell’indentificazione del modello;

l’effetto dei disturbi sul sistema retroazionato;

la regolazione del PID.

2. Destinatari

Classe: Quinta

Indirizzo: Elettronica e Telecomunicazioni - ITIS

Materia : Sistemi Elettronici Automatici

3. Riferimenti

Libro di testo: Corso di Sistemi - Volume 3 – Fabrizio Cerri – Hoepli Informatica

MATLAB Vers.6.5.0

Programmazione Modulare - Modulo 2 “Sistemi di Controllo Analogici” – Unità Didattica 2.2 “Sistemi retroazionati: analisi e simulazione”

4

4. La teoria

4.1 Grandezze fisiche

Temperatura

La Temperatura è una qualità fisica indice dello stato termico di un corpo ed è connaturata con il calore di un corpo che rappresenta una forma di energia. Mettendo a contatto due corpi nasce un movimento di energia termica, un flusso di calore, dal corpo a temperatura maggiore al corpo a temperatura minore.

Flusso (termico) di calore

Differenti fenomeni possono essere associati alla stessa produzione di calore, ma con caratteristiche molto diverse. Si pensi ad esempio al calore prodotto da una stufa in alcuni minuti e quello prodotto da un’esplosione. Si definisce Flusso (termico) di Calore, FQ, la quantità di calore che transita nella sezione del mezzo interposto tra due corpi nell’unità di tempo:

(4.1.1) FQ = ? Q/? t [W=J/sec]

Resistenza Termica E' evidente che il flusso di calore dipende dal gradiente di temperatura, ma anche dalle caratteristiche del mezzo attraversato. Tale caratteristica si riassume nella Resistenza Termica, RT, ossia in quella proprietà di un materiale di ostacolare il passaggio del flusso di calore da un corpo ad un altro vale la relazione:

(4.1.2) FQ = ? T/ RT RT [K/W][oC*sec/J]

Esempio 1): Supponiamo che un flusso di calore costante attraversi una parete di resistenza termica RT senza che avvenga alcun accumulo di calore. La relazione tra flusso di calore FQ e la differenza tra T1 e T2, è uguale a T = FQ * RT

Capacità Termica La capacità termica, CT, esprime l’attitudine di un corpo a scaldarsi e quindi ad accumulare energia sotto forma di calore; è legata alla caratteristica intrinseca del corpo, il suo calore specifico, ed alla sua massa (CT = M * c). Per definizione è la quantità di calore che un corpo scambia con l’ambiente quando la sua temperatura cambia di 1 oC. Si definisce calore specifico la capacità termica per unità di massa. Risulta quindi:

(4.1.3) CT = ? Q/? T [J/K]

FQ FQ

5

Esempio 2) L’atmosfera, il suolo terrestre, un oceano, un fiume, un lago, possono ritenersi con buona approssimazione delle riserve di calore poiché sono da considerarsi sistemi con capacità termica infinitamente alta. Quanto più grande è la capacità termica di un sistema tanto più piccolo è l’aumento di temperatura necessario a scambiare una determinata quantità di calore; è per questo motivo che il mare durante l’inverno cede lentamente l’energia immagazzinata durante i mesi caldi e quindi il clima in prossimità è più mite.

Dalla 4.1.1 e dalla 4.1.3 si deduce che:

(4.1.4) ? Q = CT * ? T = FQ * ? t da cui:

(4.1.5) FQ = CT * ? T/? t

Tale formula indica che il flusso di calore entrante in un corpo è pari al prodotto della sua capacità termica per la velocità di variazione della temperatura. Si noti l’analogia con la capacità di un condensatore per il quale la corrente è proporzionale alla variazione della tensione cfr. al tempo, moltiplicata per la capacità dello stesso.

Esempio 3): Supponiamo che un flusso di calore venga accumulato da una parete di

capacità termica CT senza che avvenga alcuna dispersione di calore. La relazione tra l’energia accumulata e la temperatura T, come differenza tra T1 e T2 è uguale a: Q = CT * T ed il modello matematico risulta:

FQ = CT * dT/dt

Esempio4) Consideriamo un corpo investito da un flusso di calore FQ costante; risulta dalla 3.1.2 che ? T/? t è costante e quindi la temperatura aumenta linearmente in modo indefinito nel tempo.

4.2 Modello matematico del sistema termico

Si consideri un corpo a temperatura Ti, messo a contatto con un corpo a temperatura Te mantenuta costante. Tra i due corpi si crea uno scambio di calore, dal corpo a temperatura maggiore al corpo a temperatura minore fino alla condizione di equilibrio termico.

Risulta: FQ = (Te-Ti)/ RT ð Te = RT * FQ + Ti

F

6

Per il corpo a temperatura Ti risulta: (4.2.1) FQ = CT * ? Ti/? t Quindi: (4.2.2) Te = RT * CT* ? Ti/? t + Ti Il prodotto RT * CT rappresenta la costante di tempo del sistema; posto allora: (4.2.3) τ = RT * CT

l’equazione alle differenze finite che governa il processo di riscaldamento risulta:

(4.2.4) Te = τ * ?Ti/? t + Ti

che porta il sistema dinamico ad essere descritto dall’equazione differenziale del 1o ordine:

(4.2.5) Tidt

dTi* Te += τ

E trasformando con Laplace:

Te = τ * s * Ti + Ti

ò (4.2.6)

τs+=

11

TeTi

si ottiene la Funzione di Trasferimento, come rapporto tra la trasformata di Laplace della variabile di uscita (temperatura interna) e la variabile di ingresso (temperatura esterna), con un polo reale negativo per s = - 1/ τ.

Per uno scalino di ampiezza unitaria, l’antitrasformata sulla variabile di uscita assume la relazione:

(4.2.7) ti(t) = te(t) * (1-e-t/τ)

Nel caso in cui per un sistema termico lineare del primo ordine si voglia considerare la F.d.T., Flusso di Calore-Temperatura, si avrebbe:

FQ = T/Rt + CT * dT/dt e trasformando con Laplace:

(4.2.8) τs

R+

=1F

TeQ

7

Esempio 5) Uno scambiatore di calore ha una resistenza termica RT pari a 0,02 K/W, e deve provvedere a rendere costante il flusso termico di calore tra 25 oC e 75 oC, avendo la capacità di ricevere una quantità di calore pari a 10.000 J. Calcolare la costante di tempo τ ed il flusso termico di calore.

FQ = ? T/ RT = 50/0,02 = 2500 W

C T = ? Q/? T = 10.000/50 = 500 J/oC

τ = C T * RT = 10 sec.

5 Strumentazione utilizzata L’esercitazione è condotta nel laboratorio di informatica, con installato il pacchetto MATLAB/SIMULINK.

8

6 Laboratorio

6.1 Il sistema di riferimento

Il sistema di riferimento per le prove di laboratorio è quello richiamato nell’esempio 5), ossia un corpo che si riscalda a contatto con una fonte a temperatura costante Te. Lo scambio di calore avviene fino a quando il corpo raggiungere l’equilibrio termico, ossia la temperatura Ti diventa prossima alla temperatura Te. Quindi il sistema va a regime fino ad una successiva variazione di Te. La

funzione di trasferimento risulta: τs+

=1

1TeTi

Lo schema a blocchi del sistema controllato tramite PID risulta:

6.2 Simulink

Lanciare Matlab e selezionare l’icona “New Simulink Model” per entrare nell’ambiente simulink.

Facendo uso delle librerie disponibili, sinks, source, continous, signal routing, control system toolboks, e del PID si creano due schemi:

Ø il primo, interattico con l’ambiente matlab, Interactive Kp and T, per simulare le condizioni legate alla costante di tempo T, alla costante proporzionale Kp ed alla costante di integrazione Ki.

Ø il secondo, manuale, Manual T, Kp and Ki, gestibile direttamente da simulink. Cambiando i parametri del PID e la costante di tempo, si possono simulare le varie condizioni. Ad ogni variazione si dovrà selezionare “Simulation start” dal

Scambio termico

Te Ti

T

PID

T

VAPORE

9

menù e visualizzare i grafici con click su “Scope1” . Il file è salvato come termico.mdl.

6.3 MATLAB

Lo schema a blocchi mette in evidenza le semplici operazioni che si vogliono attuare in modo interattivo con l’ambiente workspace e che in sintesi si riportano:

Ø acquisire i valori di Kd, Ki e Kp per calcolare numeratore e denominatore delle FdT ad anello aperto (C_P) ed anello chiuso (H);

Ø digitare “1” per visualizzare i grafici di ampiezza e di fase della FdT ad anello chiuso, “2” per visualizzare le FdT ed i poli ad anello chiuso, “0” per uscire;

Ø iterare i calcoli fino ad uscire con input uguale a “0”.

Dopo aver creato il file di estensione .m, denominato “start” , si provvederà a scrivere il programma che implementa il flow-chart riportato.

start

leggi Kp, Ki, Kd

if x=2 if x=1

Calcola e visualizza Fdt ad anello

aperto e chiuso

while x~=0

if x=0

end

Calcola FdT ad Anello chiuso e Visualizza Bode

Calcola num e den delle FdT

ad anello chiuso ed

leggi x

10

7 Verifica AZIONE PROPORZIONALE

7.1 Per il sistema ad anello aperto, valuta la risposta del sistema con due valori di costante di tempo, T=1 e T=4. Cosa deduci?

T=input ('inserisci il valore di T '); Kp=input ('inserisci il valore di Kp '); Ki=input ('inserisci il valore di Ki '); num_C=[Kp Ki]; den_C=[1 0]; sys_C=tf(num_C,den_C); num_P=[1]; den_P=[T 1]; [num_C_P,den_C_P]=series(num_C,den_C,num_P,den_P); [num_H,den_H]=cloop(num_C_P,den_C_P,-1);

x=input ('Digita "1" per visualizzare i diagrammi di Bode, "2" per visualizzare le FdT ed i poli, "0" per uscire')

if x == 1 sys_H=tf(num_H,den_H); bode(sys_H)

if x == 2 disp('FdT AD ANELLO APERTO') sys_P=tf(num_P,den_P) pole(sys_P) disp('FdT AD ANELLO CHIUSO') sys_H=tf(num_H,den_H) pole(sys_H)

if x=0

τ = 1

leggi Kp, Ki, Kd

Calcola num e den delle FdT ad anello chiuso ed

anello aperto

Calcola FdT ad Anello chiuso e Visualizza Bode

Calcola e visualizza Fdt ad anello

aperto e chiuso

end

leggi x

11

Risposta

Dopo 5 sec, nel primo caso con T=1, e dopo 20 sec. nel secondo caso, il transitorio è esaurito. Quindi un tempo pari a 5 volte la costante di tempo è sufficiente affinché il sistema vada a regime.

Quanto più piccola è la costante di tempo tanto più il sistema è veloce a recepire le variazioni di ysp.

Nel caso in cui si vogliano vedere i due grafici sovrapposti si duplica lo schema e si dirigono le due uscite al MUX.

7.2 Confronta e commenta, per T=2, le risposte ad anello aperto ed anello chiuso per Kp=2 e Kp=5. Riporta i diagrammi di Bode.

τ = 1 τ = 4 τ = 4

τ = 1 τ = 4

τ = 2 Kp = 2

τ = 2 Kp = 5

12

Risposta All’aumentare di K, la costante di tempo del sistema reazionato migliora in modo

proporzionale, il polo si sposta verso destra e l’errore a regime diminuisce.

7.3 Supporre i valori di Kp uguali rispettivamente a 1, 10 e 50. La costante di tempo è pari nei tre casi a 2,5. Riporta le tue considerazioni e riferisci in quale caso il controllo proporzionale è più efficace.

Risposta Al crescere del guadagno Kp, la specifica y = ysp è sempre meglio soddisfatta; quindi per Kp=50,il controllo ha maggiore efficacia (Vedi appendice 11).

7.4 Per due differenti valori di Kp graficare l’uscita per tre diversi valori di costante di tempo.

τ = 2,5 Kp=1 Kp = 10 Kp = 50

13

7.5 Cosa provocano piccoli scostamenti della costante di tempo al variare di Kp.

Considera i valori di Kp uguali a 1, 10, 100 e varia del 10% la costante di tempo nei tre casi. Riporta le tue considerazioni.

R. All’aumentare di Kp, variazioni dei parametri del sistema influenzano sempre meno l’uscita.

7.6 Calcola il guadagno statico per Kp = 1 e per Kp = 10. Calcola l’errore nei due casi.

R. Poiché il guadagno statico coincide con la risposta a regime nel caso in cui l’ingresso sia un gradino unitario, risulta pari a Kp/(1+Kp), e quindi il risultato è 2 e 0,909. L’errore è rispettivamente, dato uguale a 1/(1+Kp), uguale a 0,5 e 0,09. L’errore, ovviamente è tanto più basso quanto più alto è Kp, e a regime si mantiene costante. (Vedi appendice 11).

7.7 Cosa succede all’aumentare di Kp? Valuta il quesito da un punto di vista sperimentale e da un punto di vista analitico nel caso in cui il polo ad anello aperto sia pari a -2. (vedi appendice)

Kp=1 τ = 2/2,4

Kp=10 τ = 2/2,4

Kp=50 τ = 2/2,4

Kp = 10 τ = 1 τ = 10 τ = 100

Kp = 2 τ = 1 τ = 10 τ = 100

14

R. Al variare di Kp i poli si spostano verso l’infinito o verso gli zeri (se presenti).

8 Conclusioni sul sistema del 1° ordine con Controllo Proporzionale Il regolatore proporzionale è usato solo per soddisfare prestazioni statiche che non richiedano elevati guadagni e nessuna azione integrale. L’aumento del guadagno migliora l’errore a regime, allarga la banda (risposta più pronta) e riduce il margine di fase.

L’errore a regime è costante e si riduce al crescere di Kp (DISCRETA PRECISIONE, diventa ottima con l’azione integrale). Al crescere di K la risposta dipende sempre meno dai parametri dell’impianto.

Il sistema riduce di 1+Kp la costante di tempo (BUONA VELOCITA’ DI RISPOSTA, diventa ottima con l’azione derivativa)

Con il sistema del primo ordine il controllore proporzionale non introduce fenomeni di instabilità. Con un solo accumulatore di energia, ci sono solo risposte strutturalmente aperiodiche (BUONA STABILITA’)

Al crescere di Kp la costante di tempo tende a zero rendendo il sistema più veloce. (OTTIMA STABILITA’ ED OTTIMA PRECISIONE).

Poiché l’errore a regime è costante, il sistema (di tipo zero, la F.d.T. ad anello aperto non ha poli nell’origine) è ottimo come regolatore, ma non come servosistema poichè l’uscita non segue la variazione dell’ingresso (rampa o parabola).

9 Verifica AZIONE INTEGRALE

9.1 Confronta e commenta, per T=1, le risposte ad anello aperto ed anello chiuso per Ki=2 e Ki=5. Riporta i diagrammi di Bode. Commenta.

Ki=1 τ = 1

Ki=5 τ = 1

15

Risposta Il picco di risonanza si accentua all’aumentare di Ki. All’aumentare di Ki la risposta oscillatoria è sempre meno smorzata (Vedi appendice 12)

9.2 Cosa provocano piccoli scostamenti della costante di tempo al variare di Ki. Considera

i valori di Ki uguali a 1 e 10 e varia del 10% la costante di tempo nei tre casi.

Risposta

Il controllo integrale non avverte le differenze sulla costante di tempo all’aumentare di Ki. All’aumentare di Ki, inoltre, la frequenza di oscillazione è sempre più alta. 9.3 Considera i valori della costante di tempo paria a 1, 2,4, per un valore di Ki = 1.

Grafica l’uscita.

Ki=1 τ =2/2,4

Ki=10 τ =2/2,4

16

9.4 Confronta separatamente l’azione integrale con Ki = 2 e l’azione proporzionale con Kp = 2 e per T=1. Quindi commenta.

Risposta Il tempo di risposta dell’azione proporzionale è immediato ma con un notevole margine di errore. L’azione integrale accusa un ritardo ma con un errore a regime nullo. L’azione PI annulla l’effetto oscillatorio, annulla l’errore a regime ed introduce un ritardo rispetto al solo effetto proporzionale.

Ki=1 τ = 1

Ki=1 τ = 4

Ki=1 τ = 1,2,4

Ki=2 τ=1

17

9.5 Confronta il diagramma temporale e di Bode per diversi valori di Ki e Kp quando l’azione è combinata.

10 Conclusioni sul sistema del 1° ordine con Controllo Integrale Il regolatore integrale con la presenza del polo nell’origine è utilizzato per la precisione statica.

Il ritardo di fase è un effetto collaterale del controllo integrale (anticipo di fase migliora con l’azione derivativa)

Al crescere di Ki la risposta a regime è sempre più soddisfatta (OTTIMA PRECISIONE)

Ki=2, Kp=0,1 τ=1

Ki=0,1, Kp=2 τ=1

18

Al crescere di Ki aumenta la risposta oscillatoria (BASSA STABILITA’, diventa buona con il controllo proporzionale ). Il polo nell’origine peggiora il grado di stabilità..

Poiché l’errore a regime è costante, il sistema (di tipo uno, F.d.T. ad anello aperto con un polo nell’origine) è ottimo come regolatore e come servosistema con ingresso a rampa in quanto la variazione dell’uscita e costante con l’ingresso.

11 Appendice – Azione Proporzionale

Error!

KpsC =)(

)(*)(1)(*)(

)(sPsC

sPsCsG

+=

)1()(

KpsTKp

sG++

=

)1/(1)1/(

)(KpsT

KpKpsG

+++

=

sTsP

+=

11

)(

Costante di tempo

DIMINUISCE di (1+Kp)

Costante di tempo = T

sTKpTKp

sG++

=/)1(

/)(

Polo AUMENTA di

Kp

sTT

sP+

=/1

/1)(

Polo in s = -1/T

C(s) P(s) y

_

+ u

e ysp

G(s) y ysp

19

P(s) ha un polo ð T

s1

−=

H(s) ha un polo ð TKp

TTKp

s −−=+

−=1)1(

Guadagno statico ad anello aperto = 1

Guadagno d’anello = Kp

Guadagno statico ad anello chiuso = Kp/(1+Kp)

Errore a regime ð )1(

1*ysp

Kpe

+= ossia l’errore è inversamente proporzionale

al guadagno d'anello

Teorema del valore INIZIALE (con ingresso a gradino)

Teorema del valore FINALE (con ingresso a gradino)

Kp (Kp+1)

20

12 Appendice – Azione Integrale

Error!

Che vista sotto la forma

Pulsazione naturale ð TKi

n =ω

Smorzamento ð KiT21

Guadagno statico ad anello aperto = 1

Guadagno d’anello = ∝ Guadagno statico ad anello chiuso = 1

)(*)(1)(*)(

)(sPsC

sPsCsG

+=

KisTsKi

sG++

= 2)(

sTsP

+=

11

)( sT

TsP

+=

/1/1

)(

C(s) P(s) y

_

+ u

e ysp

G(s) y ysp

sKi

sC =)(