La regolazione con Arduino

presentazione_2

In un precedente articolo abbiamo trattato ARDUINO e i sensori di temperatura. I sensori sono i componenti fondamentali di un sistema di controllo e l’intento era di arrivare ad implementare un completo sistema di regolazione con ARDUINO. Questa seconda parte tratta  la teoria della regolazione. Una  parte successiva  descriverà il software su ARDUINO che realizza la regolazione di un generico processo ,permettendo di selezionare la tipologia più opportuna  a prescindere dalla variabile da controllare.

Un  sistema di controllo puo' essere schematizzato a blocchi come in figura 1. Un generico processo P è contraddistinto da una grandezza regolata  X. La grandezza regolata X è nello schema a blocchi della figura 1 la grandezza d'uscita del processo, che è conseguenza delle condizioni operative che si realizzano all’interno del processo stesso. Questa grandezza viene  rilevata dal trasduttore T e perviene al  nodo di confronto in cui viene determinata la differenza fra il valore rilevato ed  il suo valore di setpoint (il valore della grandezza X impostato nel processo). Il trasduttore rappresenta complessivamente sia l’elemento sensibile che l’insieme dei componenti  che convertono questa variazione in un segnale “comprensibile “ alla logica di controllo (tipicamente un segnale elettrico). Il regolatore costituisce l’elemento intelligente che confronta il segnale d’ingresso con il suo valore di setpoint ed agisce sul processo, tramite l’attuatore, attraverso una grandezza regolante che chiameremo Y . L’attuatore può essere un semplice interruttore il cui stato è tipicamente on-off commutando l’accensione o lo spegnimento di una qualsiasi apparecchiatura elettrica. Può essere una valvola, ed in questo caso la grandezza regolante è la sua corsa  che ne definisce il grado di apertura. Questo caso corrisponde ad un attuatore modulante, in grado  di realizzare una potenza variabile da un valore minimo ad uno massimo. Ammettiamo che il sistema sia inizialmente in una situazione di equilibrio in cui X0 è il valore di setpoint della grandezza regolata e Y0 il corrispettivo valore della grandezza regolante. Un  generico disturbo D altera la grandezza regolata X  e, di conseguenza, il regolatore cercherà di ripristinare le condizioni impostate di setpoint. Il termine disturbo è significativo di qualunque situazione operativa in grado di alterare la grandezza  regolata, senza che possa essere previsto a priori la relazione fra l’entità del disturbo e la variazione della grandezza regolata.

Applicando queste considerazioni alla climatizzazione (riscaldamento) di un ambiente, possiamo affermare che  la temperatura dell’ambiente è la grandezza regolata X. Questa  varia in funzione dell'equilibrio  termico fra la potenza termica introdotta WR  e la potenza termica dispersa WD  verso l’ ambiente esterno a temperatura inferiore. L'attuatore è il generico elemento scaldante  che fornisce la potenza termica WR, che è la grandezza regolante Y. La temperatura esterna è identificabile come il  disturbo D che altera l’equilibrio fra WR e WD e quindi la temperatura dell’ambiente. Il primo presupposto della regolazione è la conoscenza dei processi. Una stretta correlazione sussiste fra il tipo di processo e il tipo di regolazione. In un precedente articolo abbiamo trattato ARDUINO e i sensori di temperatura. I sensori sono i componenti fondamentali di un sistema di controllo e l’intento era di arrivare ad implementare un completo sistema di regolazione con ARDUINO. Questa seconda parte tratta  la teoria della regolazione. Una parte successivan descriverà il software su ARDUINO che realizza la regolazione di un generico processo, permettendo di selezionare la tipologia più opportuna  a prescindere dalla variabile da controllare.

La teoria della regolazione

Figura 1:schematizzazione dei sistemi di controllo

LA REGOLAZIONE ON-OFF

La più semplice, ed anche la più comune delle regolazioni è quella  denominata ON-OFF (FIGURA 2). In questo caso l’organo regolante, l’attuatore, puo’ assumere solo 2 stati: acceso(ON) o spento (OFF). E’ comune che questa  regolazione venga effettuata, ad esempio, con un termostato. Le condizioni operative  sono così definite (si considera un processo di riscaldamento):

  • tSP =temperatura di setpoint (la temperatura voluta ed impostata sul regolatore)

  • ∆ =differenziale di temperatura ossia l’intervallo di temperatura fra lo stato di spegnimento(OFF) e quello di accensione(ON)

 Quando la temperatura è in salita, l'elemento scaldante viene spento quando t> tSP +∆/2

Quando la temperatura è in discesa (elemento scaldante disattivato), l'elemento scaldante viene riattivato quando t< tSP -∆/2.

Le fasi sono quindi 3:

  • Una fase iniziale in cui la temperatura sale da tiniz a tSP + ∆/2, e l'elemento scaldante è attivo

  • Una fase di raffreddamento in cui l'elemento scaldante è spento e la temperatura si abbassa da tSP +∆/2 a tSP – ∆/2

  • Una successiva fase di riscaldamento in cui l'elemento scaldante è acceso e la temperatura si rialza da tSP -∆/2 a tSP + ∆/2

Nei tempi successivi si alternano le fasi 2 e 3.

A regolare i tempi saranno le costanti caratteristiche del sistema. La costante di tempo CT=MC/KS  regola il tempo di raffreddamento tC e quello di riscaldamento tH  mentre il rapporto W/KS regola il solo tempo di riscaldamento tH, che è quindi il solo ad essere influenzato dalla potenza termica scaldante W.

Un aumento della potenza termica  W comporta un tempo tH minore, mentre un aumento della costante di tempo  comporta sia un maggior tempo tH  che  tC. Un aumento del differenziale comporta un aumento  di entrambi i tempi  tH  e  tC e  una minore frequenza di intervento del termostato, viceversa una diminuzione.

Con questo tipo di funzionamento la temperatura t sarà uguale a quella di setpoint solo quando la curva della temperatura tocca la linea t=TSP .

Figura 2: la temperatura in funzione del tempo nella regolazione ON-OFF

 

LA REGOLAZIONE PROPORZIONALE

Nella regolazione proporzionale tra l'azione regolante, il cui valore chiameremo y ed il valore della variabile regolata, che chiameremo x, sussiste il legame:

 Y-Y0=KP(x-x0)     

Dove KP è una costante di proporzionalità, x0 il valore di setpoint della variabile regolata, y0 il corrispondente valore   della variabile regolante. Il campo di variazione della variabile regolata  viene denominato banda proporzionale BP, mentre il campo di variazione della variabile regolante Y viene denominato banda d’azione.

Figura 3: grafico della potenza termica in funzione della temperatura ambiente per l’ azione proporzionale

 

Con riferimento alla figura 3 la banda proporzionale BP è in questo caso 2°C, ±1°C rispetto al setpoint=20°C(setpoint al centro della banda proporzionale). La banda d’azione è 1000 watt, corrispondente alla variazione di potenza termica, tra i valori estremi della banda proporzionale  t=20+1°C =21°C (0 watt)  e t= 20-1°C=19°C (1000 watt). Più spesso la banda d’azione si esprime in percentuale rispetto al valore massimo e quindi la variabile Y varierebbe da 0 al 100%. Ad un aumento della variabile regolata corrisponde una diminuzione della variabile regolante: è l’azione cosiddetta normale. Viceversa, il regolatore è ad azione invertita (come potrebbe essere ad esempio nel caso del condizionamento estivo). La figura 4 rappresenta entrambi i casi.

 

Figura 4: azione normale (riscaldamento invernale) e invertita (condizionamento estivo)

 

Il regolatore R confronta la temperatura di setpoint  tsp impostata con la temperatura del processo  t  e modula la potenza termica scaldante per il processo. La retta visualizza la corrispondenza fra la grandezza regolante (la potenza termica) e la grandezza regolata (la temperatura). Nella posizione di setpoint  la potenza termica W  è 500 watt,  corrispondente  ad una temperatura esterna di 7,5 °C. Se le condizioni di equilibrio del sistema vengono alterate, ad esempio per una diminuzione della temperatura esterna, la potenza termica dispersa aumenta con conseguente diminuzione della temperatura ambiente. La nuova condizione di equilibrio non potrà più sussistere per il valore di temperatura di setpoint ma dovrà spostarsi, secondo la retta della figura 1 verso sinistra, con un aumento della potenza termica. La tabella 1 riporta le condizioni che si verificano, al variare della temperatura esterna, con due diversi valori di banda proporzionale. Lo scostamento permanente della variabile regolata , denominato OFFSET, è tanto minore quanto minore  è la banda proporzionale.

  

 

 

Con banda proporzionale=2°C

test[°C]

tamb[°C]

Potenza termica

[watt]

-5

19,07

960

7,5

20

500

20

20,93

37

 

 

 

 

 

Con banda proporzionale=1°C

Test['C]

Tamb['C]

Potenza termica[watt]

-5

19,52

981

7,5

20

500

20

20,48

20

 

 

 

 

 

 

Tabella 1: valori di temperatura e potenza termica nella regolazione proporzionale al variare della temperatura esterna

 

Nell’immagine di presentazione il grafico della temperatura con azione  proporzionale+integrale. BP=4°C  setpoint=32°C , tempo integrale 1 minuto. Si noti l’effetto dei due disturbi( uno con abbassamento della temperatura e l’altro con innalzamento)

L’ AZIONE INTEGRALE

dove (t-t0) è lo scostamento, dt  l'intervallo di tempo, kI una costante, t il tempo generico. Nell'esempio il valore di kI è di 0,003 . L'integrale fra il tempo zero ed il tempo t dello scostamento è uguale all'area sottesa la curva che rappresenta l'andamento dello scostamento stesso in funzione del tempo. L'azione integrale, attraverso una costante  kI  è pertanto proporzionale a questa area che rappresenta in pratica l’errore .

Riprendiamo l'esempio  e adottiamo  ora una regolazione PI con i valori di:

  • BP=2°C

  • setpoint=20°C

 

Figura 5: andamento della temperatura per diversi valori di Ki.

 

Supponiamo che la temperatura esterna test vari bruscamente da 7,5 a 0°C. La figura 5 rappresenta l'andamento della temperatura del corpo nei casi in cui la costante integrale Ki abbia i valori indicati in figura. Quando Ki=0  l'azione integrale è nulla e quindi ricadiamo nella sola azione proporzionale: vi è uno scostamento permanente dal setpoint. All'aumentare di Ki  gli scostamenti massimi diminuiscono e aumentano le oscillazioni, in ogni caso la temperatura tende a tornare al valore di setpoint. In questo esempio la potenza termica disponibile WMAX  è pari alla potenza  termica  dispersa WD con un salto termico di 25°. Quindi, nelle condizioni sopra citate (salto termico 20°C) essendo WMAX>WD la temperatura del corpo può salire oltre i 20°C. Quando la potenza termica dispersa aumenta la temperatura del corpo, essendo W<Wd diminuisce. L’azione proporzionale interviene aumentando  la potenza W. Essendo comunque WD>W la temperatura diminuisce. In funzione del tempo cresce l’azione integrale, che si somma all’azione proporzionale. In corrispondenza del valore minimo della temperatura raggiunta dal corpo, la somma delle 2 azioni uguaglia la potenza termica dispersa. Essendo ora t<20°C si ha W>WD e la temperatura aumenta fino a raggiungere asintoticamente il valore di setpoint. Nella tabella 2 sono riportati i dati della figura 6 che è relativo al caso ki=50 della figura 5.

 

Figura 6: temperatura in funzione del tempo con azione PI

L’AZIONE DERIVATIVA

L'azione derivativa aggiunge un'ulteriore azione di controllo. Con riferimento all'esempio 2, regolazione di livello,  l’azione derivativa sarebbe data  da:

azione derivativa = Kd dh/dt

Cioè proporzionale alla velocità di variazione del livello. L'azione derivativa, che è teoricamente immediata, anticipa la variazione della variabile controllata determinando quindi  una diminuzione dell'ampiezza degli scostamenti rispetto alla regolazione integrale.

 

punto

Tempo

secondi

temperatura °C

scostamento

area

area tot

az integrale

az proporz

az totale

1

9

19,90

0,10

-0,49

-0,49

0,41

55,22

55,63

2

23

19,78

0,22

-2,30

-2,79

2,32

61,09

63,41

3

44

19,88

0,12

-3,45

-6,24

5,20

55,87

61,07

4

61

20,00

0,00

-1,01

-7,25

6,04

50,00

56,04

5

86

20,09

-0,09

1,14

-6,10

5,09

45,43

50,52

6

117

20,00

0,00

1,43

-4,68

3,90

50,00

53,90

 Tabella 2: le aree totali sono quelle sottese dalla curva di figura 6 relativamente alla retta di equazione t=20°C.

 

CONCLUSIONI

Nel prossimo articolo implementeremo la teoria della regolazione di cui abbiamo discusso oggi su ARDUINO, sviluppando un controllore universale, in cui è possibile selezionare il tipo di regolazione on off, ad uno o due stadi, proporzionale, proporzionale integrale, ed i parametri (setpoint, banda proporzionale etc). Riprendendo l'articolo precedente, attraverso Processing, il PC potrà comunicare con Arduino e visualizzare il grafico temperatura-tempo.

6 Comments

  1. Gianluca Angelone 29 agosto 2013
  2. Gianluca Angelone 29 agosto 2013
  3. Gianluca Angelone 3 ottobre 2013
  4. taraschi.nicola 9 ottobre 2013
  5. taraschi.nicola 25 settembre 2013
  6. taraschi.nicola 25 settembre 2013

Leave a Reply