Controllo automatico

Da Wikipedia, l'enciclopedia libera.

Il controllo automatico di un dato sistema dinamico (di un motore, di un impianto industriale, di una funzione biologica come il battito cardiaco) si prefigge di modificare il comportamento del sistema da controllare (ovvero le sue uscite) attraverso la manipolazione delle grandezze d'ingresso. Ad esempio può richiedersi che l'uscita rimanga costante ad un valore prefissato al variare dell'ingresso (controllo semplice) oppure segua fedelmente la dinamica dell'ingresso stesso (sistema di asservimento) a meno di amplificazioni e ritardi.

Il controllo del sistema in esame viene affidato ad un altro sistema costruito appositamente, detto sistema controllante o controllore, che viene progettato dopo uno studio preliminare del sistema da controllare per individuarne il modello matematico esatto, servendosi degli strumenti messi a punto dalla teoria dei sistemi. Il controllo automatico di un sistema è possibile solo se il sistema stesso è raggiungibile e osservabile, cioè se è possibile portarlo in un dato stato interno agendo sui suoi ingressi, e risalire allo stato attuale del sistema basandosi sulle sue uscite.

Esempio di sistema di controllo[modifica | modifica wikitesto]

In un moderno motore a combustione interna, ad esempio, il sistema riceve in ingresso la posizione del pedale dell'acceleratore o un setpoint di velocità ed alcuni dati ambientali e deve garantire determinate velocità e coppia in uscita ed una corretta composizione dei gas di scarico. Il sistema controllante è tipicamente una centralina che elabora i dati di ingresso e quelli di feedback (velocità di rotazione, portata di alimentazione, presenza di ossigeno allo scarico...) ed agisce su una serie di grandezze fisiche come posizione della valvola a farfalla, istante e durata dell'iniezione di carburante, istante di accensione, eventuale anticipo variabile della distribuzione, eccetera.

Cenni storici[modifica | modifica wikitesto]

Regolatore centrifugo in un motore del 1788 di Boulton e Watt.

Il primo esempio di applicazione della teoria dei controlli è dato dal Regolatore centrifugo, sul quale James Clerk Maxwell affrontò uno studio di analisi dinamica nel suo scritto del 1868 intitolato On Governors.[1]

In seguito Edward John Routh (allievo di Maxwell) generalizzò le conclusioni di Maxwell per la classe dei sistemi lineari.[2] Indipendentemente da Ruth, Adolf Hurwitz analizzò nel 1877 la stabilità del sistema servendosi di equazioni differenziali. Il risultato di Ruth e Hurwitz è noto come teorema di Routh-Hurwitz. [3] [4]

Negli anni 1890 Aleksandr Michajlovič Ljapunov elabora le basi della teoria della stabilità.

Negli anni 1930 Harry Nyquist elabora il criterio di stabilità di Nyquist, che permette di studiare la stabilità di un sistema in retroazione unitaria.

Con la Seconda guerra mondiale la teoria dei controlli espanse il suo campo di applicazione ai sistemi di puntamento, ai sistemi di guida, e all'elettronica. Con la corsa allo spazio anche la guida dei veicoli spaziali divenne oggetto di studio della teoria dei controlli.

Negli anni quaranta anche l'informatica diventa studio della teoria dei controlli, grazie agli studi sulla programmazione dinamica di Richard Bellman. Sempre negli anni '40 nasce la cibernetica, una scienza multidisciplinare che sfrutta i risultati della teoria dei controlli.

Negli anni cinquanta John R. Ragazzini contribuisce introducendo i concetti di controllo digitale e trasformata zeta. Altri campi di applicazione della teoria dei controlli sono l'economia e l'ingegneria chimica.

Teoria dei controlli[modifica | modifica wikitesto]

La teoria dei controlli è quella branca della scienza ed ingegneria che studia il comportamento di un sistema che sia interessato a variazioni nel tempo. Questa scienza, che ha un vastissimo campo di applicazione, è nata nell'ambito dell'elettronica industriale e dell'automazione.

Il controllo può avvenire solo in un regime temporale. Spesso lo studio (matematico, con modelli matematici) nel dominio del tempo diventa molto difficile, causa la necessità di risolvere equazioni differenziali. Quindi, attraverso delle trasformazioni (in gergo, le trasformate, di cui le più famose sono quelle di Fourier e quelle di Laplace), si studia lo stesso sistema con tecniche di tipo algebrico nel dominio della frequenza, e una volta ottenuto il risultato si antitrasforma (antitrasformata) per tornare nel dominio del tempo.

La rappresentazione grafica di un sistema o processo si attua mediante 'schemi a blocchi' oppure 'grafi di flusso' dove ogni singolo processo è individuato da una 'trasferenza' dinamica.

Exquisite-kfind.png Per approfondire, vedi Analisi dei sistemi dinamici.

Ingressi e uscite[modifica | modifica wikitesto]

Ogni sistema può avere uno o più ingressi e può avere una o più uscite Con il termine SISO (acronimo di Single Input - Single Output) si intende un sistema a singolo ingresso e a singola uscita, mentre con il termine MIMO (acronimo di Multi Input - Multi Output) si intende un sistema a ingressi multipli e a uscite multiple.

Ad ogni variazione delle variabili in ingresso segue una determinata risposta del sistema, ovvero una variazione di altre variabili all'uscita. Le variazioni delle variabili in ingresso più comuni sono: l'impulso di Dirac, il gradino, la rampa e la sinusoide).

Le variabili in ingresso (o in entrata) si differenziano in:

  • variabili manipolabili (o variabili di controllo o variabili di manipolazione): hanno la caratteristica di essere sempre misurabili
  • disturbi (o sollecitazioni esterne): possono essere anche non misurabili e la loro presenza è indesiderata dal punto di vista del controllo.

Tra le variabili in uscita si hanno:

  • variabili di prestazione: sono le variabili controllate (da non confondere con le variabili di controllo), e possono essere misurabili direttamente o indirettamente
  • variabili intermedie: sono delle variabili fisiche misurabili, che possono essere utilizzate per la misura indiretta delle variabili di prestazione.

La misurazione diretta delle variabili da controllare viene detta misurazione primaria, mentre la misurazione indiretta delle variabili da controllare viene detta misurazione secondaria. Esempi di misurazione secondaria sono il controllo in cascata, il controllo adattativo e il controllo inferenziale.

Controllo ad anello aperto[modifica | modifica wikitesto]

Schema del controllo diretto

Un sistema automatico di controllo può funzionare essenzialmente in due modi: come controllo ad anello aperto o come controllo in retroazione (vedi dopo).

Il controllo ad anello aperto (o in avanti o predittivo o feed-forward) si basa su una elaborazione degli ingressi eseguita senza conoscere il valore dell'uscita del sistema controllato, essendo note alcune proprietà del sistema da controllare.

In questo caso è fondamentale avere un buon modello matematico che descriva in maniera abbastanza precisa il comportamento del sistema. Tanto più il modello matematico su cui si basa l'azione del controllo feedforward è esatto, tanto più questo tipo di controllo è affidabile.

I motori elettrici della maggior parte dei ventilatori oggi in vendita sono controllati mediante un sistema di asservimento di questo tipo.

Controllo ad anello chiuso (retroazione)[modifica | modifica wikitesto]

Schema del controllo in retroazione

Il controllo ad anello chiuso (o retroazionato o all'indietro o feed-back), più complesso ma molto più flessibile del primo, può rendere stabile un sistema che di per sé non lo è affatto.

In questo caso l'anello di controllo riporta, all'ingresso del processo che si vuole controllare (o rendere stabile), una funzione dell'uscita che va sommata algebricamente al segnale già presente in ingresso.

Se chiamiamo y_{ref} il segnale in ingresso al sistema prima dell'innesto della retroazione, y_{out} il segnale in uscita dal sistema da controllare, y_{fb} il segnale in uscita dal controllore (che quindi dipende da y_{out} e dalla struttura dello stesso controllore), si può distinguere in:

  • retroazione positiva: al segnale y_{ref} viene sommato y_{fb}, e la somma viene inviata in ingresso al sistema;
  • retroazione negativa: al segnale y_{ref} viene sottratto y_{fb}, in modo da avere in ingresso al sistema il cosiddetto segnale errore, e_f

A seconda della tipologia della retroazione, si possono fare considerazioni diverse circa la stabilità del sistema complessivo ottenuto (oscillazioni ed energia del segnale in uscita); in generale si può affermare che la retroazione positiva porta a sistemi instabili, mentre la retroazione negativa apre la strada a strategie di controllo molto efficaci per il raggiungimento della stabilità del sistema.

Exquisite-kfind.png Per approfondire, vedi Retroazione.

Controllo in retroazione di sistemi L.T.I. e L.I.T.[modifica | modifica wikitesto]

Ogni blocco componente un sistema L.T.I. può essere rappresentato tramite una funzione di trasferimento applicando al sottosistema che modella il blocco stesso rispettivamente la trasformata di Laplace o la trasformata Zeta, a seconda che si tratti di sistemi a tempo continuo o a tempo discreto. Perciò, il controllo LTI in retroazione è essenzialmente un sistema di controllo formato:

  • dalla cascata di controllore C(s) (o C(z)) e processo P(s) (o P(z)) il cui ingresso è l'errore E(s) (o E(z)) tra riferimento R(s) (o R(z)) e uscita del processo Y(s) (o Y(z)); le funzioni complesse in s (o in z) sono rispettivamente le trasformate di Laplace (o Zeta) dei sistemi che rappresentano i blocchi e le trasformate di Laplace (o Zeta) dei segnali in ingresso e in uscita ai blocchi stessi.
  • dal processo P(s) (o P(z)) la cui uscita Y(s) (o Y(z)) è prelevata da un compensatore dinamico C(s) (o C(z)) (ottenuto come sintesi di un osservatore dello stato e di un controllo in retroazione dallo stato; ne è un esempio il regolatore lineare quadratico) che genera l'ingresso di controllo U(s) (o U(z)) che andrà sommato al riferimento R(s) (o R(z)).

Le posizioni nel piano complesso dei poli e degli zeri della funzione di trasferimento determinano i modi di risposta e in particolare la stabilità del sistema. Nei sistemi causali LTI, quali i sistemi fisici LTI, ovvero nei sistemi LTI le cui uscite non dipendono dai valori futuri degli ingressi, gli elementi della matrice di trasferimento sono frazionari ed hanno un polinomio a denominatore di grado non inferiore al grado del polinomio a numeratore. Se gli zeri dei denominatori, detti poli della trasformata, appartengono al semipiano a parte reale positiva del piano complesso, il sistema è instabile e la risposta all'impulso yδ(t) tende all'infinito al crescere di t. Se invece i poli della trasformata appartengono al semipiano a parte reale negativa del piano complesso, il sistema è asintoticamente stabile e yδ(t) tende asintoticamente a 0 al crescere di t. Se, infine, i poli della trasformata appartengono alla retta verticale a parte reale nulla del piano complesso ed hanno molteplicità singola, il sistema è semplicemente stabile e yδ(t) è maggiorata in valore assoluto da un certo valore al crescere di t. Per determinare come varino le posizioni dei poli e degli zeri al variare della funzione di trasferimento del compensatore che si vuole progettare, si usano particolari grafici, quali il diagramma di Bode, il diagramma di Nyquist e il luogo delle radici.

Due proprietà fondamentali dei sistemi LTI sono la raggiungibilità e la osservabilità. Se queste due proprietà sono verificate allora per il sistema di controllo (cioè il sistema ottenuto retroazionando il sistema dinamico LTI con un controllore LTI) esiste sempre un controllore che rende il sistema di controllo asintoticamente stabile.

Esistono differenti tipologie di controllori. Le prime tecnologie di controllori si basavano essenzialmente su circuiti analogici (reti correttrici) appositamente creati per un dato problema. Attualmente vengono utilizzati sistemi di controllo digitale che permettono di sfruttare le potenzialità dei computer garantendo un minor costo e una maggiore versatilità.

Esempio: controllo della temperatura[modifica | modifica wikitesto]

Un'applicazione pratica del controllo in retroazione è rappresentato dal sistema di riscaldamento degli ambienti domestici.

Esempio classico di controllo in retroazione è un sistema di controllo di temperatura di una stanza. Supponiamo di voler mantenere la temperatura di una stanza a 20 °C. Un termostato controlla la temperatura e comanda l'afflusso di acqua ai caloriferi della stanza. Il valore a cui vogliamo tenere la temperatura viene definito in un sistema di controllo set point. A seconda della temperatura letta dal sensore quindi si apre o si chiude l'afflusso dell'acqua al calorifero. La temperatura della stanza oscillerà così attorno ai 20 °C a seconda della dissipazione del calore e della capacità dei caloriferi. Un tipo di regolazione in retroazione in questo senso può essere definito regolazione on-off in quanto prevede come retroazione un semplice comando acceso-spento. Un tipo di controllo del genere può essere usato per la regolazione del riscaldamento di una stanza di un'abitazione, dove oscillazioni di 1 °C sono tollerate da chi dovrà utilizzare la stanza.

Soluzioni di controllo[modifica | modifica wikitesto]

Esistono diverse tecniche per sintetizzare controllori in anello chiuso, di seguito saranno illustrate brevemente le soluzioni più note.

Controllo PID[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo PID.

Rappresenta una delle soluzioni di controllo più semplici, permette di ottenere buone prestazioni con sistemi prevalentemente lineari, mentre risulta deludente per sistemi con carattere fortemente non lineare (es.: sistemi LTV[5]). La semplicità delle tre azioni elementari che lo costituiscono ne rende semplice l'implementazione sia con tecnologie pneumatiche che elettroniche. Per via della sua larga diffusione non è raro trovarne implementazione anche in elettronica digitale dove le potenzialità della CPU permetterebbero l'implementazione di algoritmi ben più complessi.

Controllo Sliding Mode[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo sliding mode.

Utilizzando una visione elementare può essere considerato come una estensione del controllo on/off utilizzato per la regolazione della temperatura di caldaie e frigoriferi. Sfruttando la teoria di stabilità secondo Lyapunov e la possibilità di applicare segnali di controllo in alta frequenza, permette di ottenere controllori semplici ed estremamente robusti. Il limite principale è rappresentato dalla frequenza massima del segnale di controllo e dalla presenza di oscillazioni sull'uscita, note come chatter. Tuttavia la teoria alla base del controllo sliding mode permette di svilupparne varianti leggermente più complesse, ma prive di chatter ma allo stesso tempo robuste anche per sistemi con caratterizzazioni fortemente non lineari.

Controllo adattativo[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo adattativo.

In questa categoria rientrano gli algoritmi di controllo con capacità di adattarsi al sistema da controllare, possono esserci diverse forme di adattabilità che vanno dalla modifica dei parametri di controllo lungo opportune curve (Gain scheduling) alla possibilità di cambiare completamente o parzialmente la struttura del controllore. Rispetto alle soluzioni di controllo che non prevedono una variabilità nei parametri o nella struttura, scontano un maggiore peso computazionale che ne rende difficile l'implementazione su hardware commerciale. Offrendo come contropartita migliori prestazioni ed una maggiore robustezza.

Controllo ottimo[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo ottimo.

Il controllo ottimo si prefigge di stabilizzare il sistema dinamico tramite l'ottimizzazione di una funzione di costo J(x,u) (dove per x si intende lo stato del sistema e per u il controllo generato da un opportuno controllore ottenuto a seguito della minimizzazione). Minimizzando la funzione di costo J e manipolando opportuni parametri si riesce ad ottenere un controllore che rende la dinamica del controllo grande e veloce o piccola e lenta. Minimizzare J significa far tendere x a zero in tempo finito o infinito (e quindi anche u che è un controllo in retroazione dallo stato) e quindi stabilizzare x. Il controllo ottimo è efficace sotto ipotesi di stabilizzabilità del sistema e di rivelabilità del sistema. Se il sistema è rivelabile (cioè se lo stato x va stimato) è necessario un osservatore anche esso ottimo: il filtro di Kalman.

La teoria sviluppata per il controllo ottimo permette la sintesi di controllori noto il modello ed esclusivamente per sistemi lineari.

Controllo robusto[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo robusto.

È una soluzione di controllo che permette di imporre sia le prestazioni nominali, sia le prestazioni robuste (sotto ipotesi di incertezze parametriche sul modello del sistema). Valido solo per sistemi lineari, giunge alla definizione di una serie di vincoli che il controllore dovrà garantire. In tal senso non è una soluzione di controllo robusta per natura (come il Controllo sliding mode), ma semplicemente un'imposizione di vincoli su un controllore in retroazione di stato.

Nel caso lineare MIMO il sistema P0, detto processo nominale, viene controllato con un apposito compensatore K in retroazione dallo stato stimato (conterrà quindi un controllore e un osservatore dello stato). La matrice K viene sintetizzata tramite appositi algoritmi di controllo robusto che, dati vincoli di prestazione, forniscono un compensatore ottimo tramite sintesi LQR - LTR (anche detta LQG), tramite sintesi in H-infinito o tramite i classici metodi della compensazione di sistemi SISO previa operazione di disaccoppiamento del sistema.

Controllo deadbeat[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Controllo deadbeat .

Il controllo deadbeat è una tecnica nata per sistemi tempo-continuo e poi estesa ai sistemi tempo-discreto. Consente di ottenere sistemi che garantiscono delle ottime proprietà dinamiche ed errore a regime nullo in funzione di un dato segnale in ingresso. È una tecnica sviluppata essenzialmente per sistemi lineari. Il suo utilizzo per i sistemi non lineari è ancora un problema aperto.

Schema riassuntivo di confronto[modifica | modifica wikitesto]

Di seguito vengono confrontate le diverse possibilità di controllo:

Strutture del controllore
  • Controllo feedback - Vantaggi: robustezza, controlla anche i disturbi non misurabili o imprevisti - Svantaggi: essendo in anello chiuso, può introdurre instabilità nella risposta se tarato male, non agisce in tempo reale
  • Controllo feedforward - Vantaggi: agisce prima che il sistema risenta del disturbo, non introduce instabilità nella risposta - Svantaggi: il sistema deve scostarsi poco dal modello, è richiesta una buona conoscenza del sistema, il disturbo deve essere misurabile, non controllo i disturbi imprevisti o non misurabili
  • Controllo misto - Unisce i vantaggi delle singole soluzioni senza presentare svantaggi significativi.
  • Controllo in cascata - Vantaggi: Sforzo di taratura minore, maggiore robustezza ai disturbi
Tipi di controllore
  • Controllo PID - Vantaggi: Semplice e funzionale, implementabile in diverse tecnologie - Svantaggi: Prestazioni modeste con sistemi fortemente non lineari, come gli LTV.
  • Controllo adattativo - Vantaggi: Sforzo di taratura ridotto, prestazioni elevate anche al variare dei parametri per fenomeni di invecchiamento. - Svantaggi: Costo computazionale maggiore, implementazione possibile solo con dispositivi elettronici digitali.
  • Controllo Sliding Mode - Vantaggi: Basso costo computazionale, elevata robustezza - Svantaggi: Alcune soluzioni possono essere affette da 'chatter'.
  • Controllo Ottimo - Vantaggi: Permette di sintetizzare un controllore basandosi su un indice di costo, valido anche per sistemi lineari MIMO - Svantaggi: Peso computazione delle operazioni di sintesi elevato, valido solo per sistemi lineari.
  • Controllo Robusto - Vantaggi: Robustezza a variazioni parametriche - Svantaggi: Valido solo per sistemi lineari

Applicazioni[modifica | modifica wikitesto]

Controllo dei processi[modifica | modifica wikitesto]

Esempio di schema di controllo di un reattore chimico CSTR.

Note[modifica | modifica wikitesto]

  1. ^ Maxwell, J.C., On Governors in Proceedings of the Royal Society of London, vol. 16, 1867, pp. 270–283, DOI:10.1098/rspl.1867.0055. URL consultato il 14 aprile 2008.
  2. ^ Routh, E.J., Fuller, A.T., Stability of motion, Taylor & Francis, 1975, ISBN.
  3. ^ Routh, E.J., A Treatise on the Stability of a Given State of Motion, Particularly Steady Motion: Particularly Steady Motion, Macmillan and co., 1877, ISBN.
  4. ^ Hurwitz, A., On The Conditions Under Which An Equation Has Only Roots With Negative Real Parts in Selected Papers on Mathematical Trends in Control Theory, 1964.
  5. ^ Con la sigla LTV si fa riferimento a sistemi Lineari con parametri Tempo Varianti

Bibliografia[modifica | modifica wikitesto]

  • Katsuhiko Ogata. Modern Control Engineering. Prentice Hall, 2002.
  • Paolo Bolzern, Riccardo Scattolini, Nicola Schiavoni. Fondamenti di controlli automatici. McGraw-Hill Companies, giugno 2008. ISBN 978-88-386-6434-2.
  • Eduardo D. Sontag (1990): Mathematical Control Theory, Springer, ISBN 3-540-97366-4
  • Alain Bensoussan (1992): Stochastic Control of Partially Observable Sysytems, Cambridge University Press, ISBN 0-521-35403-X
  • Hector O. Fattorini (1999): Infinite dimensional optimization and Control theory, Cambridge University Press, ISBN 0-521-45125-6
  • Jiongmin Yong, Xun Yu Zhou (1999): Stochastic Controls. Hamiltonian Systems and HJB Equations, Springer, ISBN 0-387-98723-1
  • Christopher Kilian, Modern Control Technology, Thompson Delmar Learning, 2005, ISBN 1-4018-5806-6.
  • Vannevar Bush, Operational Circuit Analysis, John Wiley and Sons, Inc., 1929.
  • Robert F. Stengel, Optimal Control and Estimation, Dover Publications, 1994, ISBN 0-486-68200-5.
  • Franklin et al., Feedback Control of Dynamic Systems, 4ª ed., New Jersey, Prentice Hall, 2002, ISBN 0-13-032393-4.
  • Joseph L. Hellerstein, Dawn M. Tilbury, and Sujay Parekh, Feedback Control of Computing Systems, John Wiley and Sons, 2004, ISBN 0-471-26637-X.
  • Diederich Hinrichsen and Anthony J. Pritchard, Mathematical Systems Theory I - Modelling, State Space Analysis, Stability and Robustness, Springer, 2005, ISBN 0-978-3-540-44125-0 .
  • Andrei, Neculai, Modern Control Theory - A historical Perspective, 2005.
  • Eduardo Sontag, Mathematical Control Theory: Deterministic Finite Dimensional Systems. Second Edition, Springer, 1998, ISBN 0-387-98489-5.
  • Giovanni Marro, Controlli automatici, 4a edizione, Zanichelli, 1997, ISBN 88-08-00015-X.
  • Gottardo Marco, Let's program a PLC !!!, seconda edizione (2.1) 14 novembre 2012, italiano, ISBN 9781291189322. editore online LULU.

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

Controlli automatici Portale Controlli automatici: accedi alle voci di Wikipedia che trattano di Controlli automatici