• Non ci sono risultati.

CONFRONTO DI CONTROLLORI PREDITTIVI MULTIVARIABILE APPLICATI A PROCESSI COMPLESSI DI DISTILLAZIONE

N/A
N/A
Protected

Academic year: 2021

Condividi "CONFRONTO DI CONTROLLORI PREDITTIVI MULTIVARIABILE APPLICATI A PROCESSI COMPLESSI DI DISTILLAZIONE"

Copied!
177
0
0

Testo completo

(1)
(2)

pressioni particolari e che mi `e stata sempre vicina nei momenti difficili che ho attraversato in questo lungo percorso.

(3)

1 Introduzione 6

1.1 Il controllo avanzato nell’industria di processo . . . 6

1.2 Dall’identificazione del modello al tuning del controllore . . . . 7

1.3 Obiettivi della tesi ed organizzazione del testo . . . 7

2 Controllo Predittivo: aspetti generali degli algoritmi industriali 9 2.1 Gerarchia della struttura di un sistema di controllo odierno . . 9

2.2 Considerazioni generali sulla tecnologia MPC . . . 13

2.2.1 Introduzione . . . 13

2.2.2 LQG . . . 14

2.2.3 IDCOM . . . 19

2.2.4 DMC . . . 21

2.2.5 QDMC . . . 23

2.2.6 IDCOM-M, HIECON, SMCA, e SMOC . . . 24

2.2.7 DMCplus e RMPCT . . . 28

2.2.8 Modellazione del MPC e tecnologia di identificazione . 29 2.3 Descrizione tecnica generale . . . 32

2.3.1 Feedback dell’uscita (stima degli stati) . . . 34

2.3.2 Determinazione dei sottoprocessi controllati . . . 36

2.3.3 Ottimizzazione locale di stazionario . . . 37

2.3.4 Ottimizzazione dinamica . . . 39

2.3.5 Formulazione dei vincoli . . . 41

2.3.6 Traiettorie ingressi e uscite . . . 43

2.3.7 Orizzonte delle uscite e parametrizzazione degli ingressi 45

(4)

3.3 Implementazione del controllore . . . 65

3.3.1 Modulo di stazionario . . . 66

3.3.2 Modulo di ottimizzazione dinamica . . . 71

3.4 Tuning del controllore on-line . . . 77

4 Simulazione del processo 79 4.1 Introduzione . . . 79

4.2 Descrizione del processo . . . 80

4.2.1 Processo lineare tempo variante . . . 81

4.2.2 Processo lineare tempo invariante . . . 83

4.2.3 Processo non lineare . . . 83

4.3 Descrizione dei disturbi . . . 84

4.3.1 Disturbi con dinamiche diverse . . . 85

4.3.2 Disturbi con la stessa dinamica . . . 87

4.4 Utilizzo del modulo di simulazione . . . 88

4.4.1 Processo lineare tempo variante . . . 88

4.4.2 Disturbi . . . 89

5 Applicazioni a processi lineari 91 5.1 Introduzione . . . 91

5.2 Processo e modello del processo . . . 92

5.3 Analisi del Modulo di Ottimizzazione di Stazionario . . . 94

(5)

5.3.2 Ottimizzazione di tipo quadratico (QP) . . . 98

5.4 Analisi del Modulo di Ottimizzazione Dinamica . . . 101

5.5 Simulazione di disturbi . . . 110

5.5.1 Analisi in anello aperto . . . 111

5.5.2 Analisi in anello chiuso . . . 116

5.6 Simulazione di mismatch . . . 119

5.6.1 Processo lineare tempo invariante . . . 120

5.6.2 Processo lineare tempo variante . . . 122

6 Il processo di topping 127 6.1 Introduzione . . . 127

6.2 Descrizione del processo di topping . . . 128

6.2.1 Preriscaldamento del grezzo . . . 129

6.2.2 Distillazione pre-flash . . . 129

6.2.3 Riscaldamento del grezzo ad alta temperatura . . . 130

6.2.4 Distillazione atmosferica (topping) . . . 130

6.2.5 Pumparound . . . 133

6.3 Modellazione del processo di topping . . . 134

6.3.1 Impostazione della simulazione . . . 134

6.3.2 Modellazione delle varie sezioni del processo . . . 135

6.3.3 Fasi della modellazione . . . 136

6.3.4 Specifiche dei prodotti . . . 136

6.3.5 Scelta del grezzo e suddivisione in pseudocomponenti . 138 6.4 Scelta del controllo di base . . . 141

6.5 MV e CV del controllo avanzato . . . 144

6.6 Identificazione del modello del processo . . . 147

7 Implementazione del controllore ed analisi dei risultati 150 7.1 Variazioni sulle ASTM . . . 150

7.2 Switch di alimentazione del grezzo . . . 154

7.3 Target delle MV a confronto . . . 167

(6)

tiche per una stessa categoria di prodotti non giocano pi`u un ruolo determi-nante come accadeva in passato. Ci`o che invece oggi permette alla grande industria di essere protagonista nel mercato mondiale `e la capacit`a di riusci-re a produrriusci-re prodotti con qualit`a sempriusci-re migliori sfruttando al massimo gli impianti esistenti; un esempio lampante di questo tipo `e rappresentato dal-l’industria petrolifera, dove la richiesta di prodotti con qualit`a chimico-fisiche sempre migliori aumenta notevolmente nel breve periodo e contemporanea-mente l’elevata concorrenza costringe le grandi societ`a di refining ad ottimiz-zare la gestione degli impianti con notevoli investimenti. Nuovi investimenti, quindi, mirati non a modificare gli impianti esistenti ma ad ottimizzarli. Da questo si intuisce immediatamente che per ottimizzare la gestione di un processo vi `e la necessit`a di sviluppare uno strumento di controllo che sia in grado di sfruttare al massimo l’impianto mantenendo le specifiche di qualit`a dei prodotti: tali caratteristiche di controllo sono quelle tipiche di un con-trollore avanzato.

Un controllore con queste caratteristiche fa parte appunto del cosiddetto li-vello di “Controllo Avanzato” e particolare importanza risiede nel Controllo Predittivo di processi multivariabile (noto con l’acronimo di MPC, dall’in-glese Model Predictive Control). Il controllo predittivo fa riferimento una classe di algoritmi che calcolano il futuro andamento delle variabili di control-lo per ottimizzare il comportamento del sistema in un orizzonte di predizione

(7)

definito. Questo consente di definire obiettivi di progetto diversi, a volte contrastanti, considerare esplicitamente vincoli sulle variabili di controllo e controllate e trattare sistemi multivariabile di grandi dimensioni.

1.2

Dall’identificazione del modello al tuning

del controllore

L’implementazione dei controllori avanzati richiede la conoscenza del model-lo del processo; la prima fase infatti `e costituita proprio dall’identificazione del modello, che viene eseguita attraverso varie metodologie illustrate breve-mente pi`u avanti e durante la quale la conduzione dell’impianto `e affidata “esclusivamente” al controllo di base. Per una buona identificazione del mo-dello `e necessario che i dati di impianto siano attendibili e da ci`o si intuisce che in questa fase giochi un ruolo di fondamentale importanza la corret-ta sintonizzazione dei controllori di base, sui quali poi il controllo avanzato andr`a ad agire. Un tuning errato del controllo di base si ripercuoterebbe inevitabilmente sull’identificazione del modello e quindi sulle prestazioni del controllo avanzato. Una volta identificato il modello si procede all’implemen-tazione del controllore, per il tuning del quale `e necessario avere una completa conoscenza del processo abbinata a una notevole esperienza pratica.

1.3

Obiettivi della tesi ed organizzazione del

testo

Oggetto del presente lavoro di tesi `e stato quello di studiare e sviluppare un software1 di controllo predittivo, basato sulla moderna formulazione in

variabili di stato, che racchiuda al suo interno molte delle caratteristiche possedute dai controllori commerciali attualmente impiegati nella grande in-dustria e compararlo, su alcune caratteristiche principali, con la versione attuale del controllore commerciale DMCplus della AspenTech Inc. nel con-trollo di un’unit`a simulata di distillazione complessa del grezzo.

Lo sviluppo di tale software di controllo e simulazione dinamica permette ad utenti, anche meno esperti, di acquisire dimestichezza nell’implementazione e nel tuning di un controllore multivariabile vincolato.

Il testo `e cos``ı organizzato:

(8)

quanto riguarda il processo, se ne analizza la struttura sia esso definito lineare o non lineare;

nel capitolo 5 si illustrano le caratteristiche principali del controllore avanzato progettato mediante una serie di simulazioni esemplificative; il capitolo 6 descrive il processo di topping del grezzo e le variabili manipolate e controllate che il controllore avanzato deve gestire per la conduzione ottimale del processo;

nel capitolo 7 vengono illustrati i risultati principali dell’applicazione del controllore in esame al processo di distillazione del grezzo in con-seguenza di variazioni di qualit`a dei prodotti e di disturbi tipici come switch del grezzo di alimentazione;

nel capitolo 8, infine, vengono riepilogati i principali obiettivi raggiunti in questo lavoro.

(9)

Controllo Predittivo: aspetti

generali degli algoritmi

industriali

2.1

Gerarchia della struttura di un sistema

di controllo odierno

La struttura di un sistema di controllo odierno pu`o essere schematizzata come in Figura 2.1. Come `e possibile osservare, il sistema di controllo assume nel suo complesso una struttura gerarchica, all’interno della quale ogni singola sezione deve svolgere determinate funzioni.

Partendo dal basso della struttura e risalendo verso l’alto, si incontra per primo il controllo di base; esso, in quanto agisce direttamente sul processo mediante gli attuatori, deve consentire il funzionamento continuo (in genere) del processo 24 ore su 24 senza l’intervento degli operatori (i quali devono intervenire soltanto in condizioni anomale). Oggi, l’hardware che gestisce il flusso di informazioni tra il processo e la sala quadro di un impianto si chiama DCS (Distributed Control System); a disposizione degli operatori ci sono vari computer, ognuno dei quali dedicato ad assolvere a particolari funzioni di controllo; i computer inoltre sono collegati in rete per scambiarsi informazioni circa le elaborazioni dei dati.

I tipici controllori che fanno parte del controllo di base e che si trovano in un impianto, in ordine di importanza, sono:

F C LC P C T C −→

(10)

Figura 2.1: struttura di un sistema di controllo odierno.

FC: controllore di portata; LC: controllore di livello; PC: controllore di pressione;

TC: controllore di temperatura.

Le prestazioni del controllo di base dipendono sia dal tuning che dalla di-namica del processo; mentre non `e possibile intervenire direttamente sulla

(11)

dinamica del processo, `e indispensabile focalizzare tutta l’attenzione sul con-trollo al fine di realizzare una prestazione ottimale dei concon-trollori di base anche mediante l’adozione di schemi di controllo pi`u complessi come il con-trollo in cascata, il concon-trollo split-range, etc. . .

Oltre alla dinamica e al tuning, una possibile terza causa di malfunzionamen-to a livello del controllo di base `e sicuramente il fatmalfunzionamen-to di assumere i sistemi lineari quando, nella realt`a, non lo sono affatto; un esempio tipico `e quello che fa riferimento alle valvole, le quali variano il loro comportamento (pi`u o meno lineare) in base a come sono state progettate e alle condizioni opera-tive. . .

Come si osserva in Figura 2.1, il livello immediatamente superiore al control-lo di base `e il controlcontrol-lo avanzato; le funzioni di questo livelcontrol-lo di controlcontrol-lo sono molteplici e fra quelle pi`u importanti citiamo le seguenti:

migliorare le prestazioni del controllo di base;

controllare la qualit`a dei prodotti; questo aspetto `e un qualcosa in pi`u rispetto alla semplice conduzione dell’impianto in automatico (ad esempio un aereo pu`o essere pilotato in automatico ma non avere una conduzione omogenea della rotta da seguire);

“ottimizzare il processo”.

Mentre il controllo di base scambia informazioni in maniera biunivoca con il controllo avanzato, quest’ultimo lo fa con il controllo di base ma non con il livello di controllo superiore; le variabili manipolate del controllo avanzato sono i set-point dei controllori di base. Lo scopo del controllo avanzato `e proprio quello di ottimizzare il processo da un punto di vista dinamico, for-nendo i set-point ai controllori di base nel rispetto dei vincoli presenti e degli obiettivi da perseguire; anche le prestazioni del controllo avanzato dipende-ranno, in generale, dal tuning dei vari moduli che lo compongono. Il tuning del controllo avanzato `e abbastanza complesso e richiede una conoscenza ap-profondita del processo da controllare per far s``ı che venga raggiunto un compromesso ottimale fra gli aspetti economici e i limiti oltre i quali non `e possibile portare l’impianto.

Il livello di controllo immediatamente superiore al controllo avanzato `e quello relativo all’ottimizzazione in tempo reale, indicato come “R.T.OPT.” (dal-l’inglese Real Time Optimization). A questo livello viene effettuata l’ot-timizzazione delle varie unit`a che compongono l’impianto e nel caso in cui l’impianto venga sezionato in pi`u parti, e cio`e che una singola sezione sia composta da pi`u di una unit`a, si procede all’ottimizzazione per sezioni di impianto. L’ottimizzazione in tempo reale comunica biunivocamente con il

(12)

Il livello “PLANNING” invece effettua una programmazione molto pi`u ampia sia su scala temporale che spaziale; alcuni dei principali aspetti che questo livello prende in considerazione sono i seguenti:

controllo dei vari siti di produzione;

soste programmate dei vari siti di produzione;

previsione del consumo di combustibile all’interno dei vari siti; variazione della temperatura stagionale, etc. . .

La struttura di controllo che qui `e stata descritta viene adottata solitamente per intero soltanto dalle grandi aziende, le quali hanno vari siti di produzione sparsi nel mondo e che hanno necessit`a di ottimizzare, oltre che il singolo sito produttivo, la produzione in senso lato, tenendo conto di molti fattori tra i quali quelli propri delle zone geografiche all’interno delle quali sono situati i siti produttivi. Una tale struttura analizza la produzione su scala mondiale. In genere, prima di adottare una struttura di controllo cos``ı complessa, viene fatta un’analisi iniziale basata sul “PAY-BACK”, ovvero sul tempo necessario a recuperare l’investimento da fare per l’ottimizzazione del processo; se il rap-porto “costi/benefici” `e elevato, si registrer`a un tempo di ritorno altrettanto elevato che non favorir`a l’investimento.

Normalmente le aziende richiedono un “PAY-BACK” inferiore ad un anno e per questo, nella fase iniziale, saranno messi in luce i potenziali benefici ricavabili dall’ottimizzazione; generalmente questa operazione viene esegui-ta in impianti di grandi dimensioni, dove piccole variazioni del prezzo del prodotto sul mercato fanno registrare notevoli aumenti di guadagno.

La sezione che ad oggi richiede un’attenzione pi`u accurata `e quella relati-va all’ottimizzazione in tempo reale; questa sezione `e costituita da software

(13)

avanzati1 e richiede una conoscenza accurata della modellistica delle varie

apparecchiature. Lo sviluppo di questo livello di controllo `e frenato non tan-to dall’aspettan-to tecnologico (in quantan-to il software `e statan-to sviluppatan-to), quantan-to dalla modellistica, la quale comporta tutta una serie di applicazioni costose in termini di ore di ingegneria e di capacit`a tecniche.

Nelle aziende di piccole e medie dimensioni si arriva in genere al livello di controllo avanzato.

2.2

Considerazioni generali sulla tecnologia

MPC

2.2.1

Introduzione

Il controllo predittivo (in inglese Model Predictive Control, MPC) si riferisce ad una classe di algoritmi di controllo che utilizza un modello esplic-ito del processo per predire la risposta futura di un sistema. Ad ogni tempo di campionamento, un algoritmo MPC cerca di ottimizzare il comportamen-to futuro di un processo calcolando una sequenza di valori delle variabili manipolate in un tempo futuro. Generalmente soltanto la prima azione di controllo viene inviata all’impianto, mentre al tempo di campionamento suc-cessivo, l’intero calcolo `e ripetuto.

Originariamente sviluppato per soddisfare le richieste del controllo specia-lizzato nella gestione di processi di produzione di energia e nell’industria petrolifera, la tecnologia MPC trova oggi spazio in un’ampia variet`a di aree applicative che include la chimica, processi alimentari, il settore automo-bilistico e le applicazioni aerospaziali. Le caratteristiche fondamentali che rendono ottimale il Model Predictive Control sono:

la facilit`a di gestione di sistemi multivariabili;

la facilit`a di gestione di vincoli sulle variabili controllate e su quelle manipolate (portare l’impianto verso i suoi limiti);

la facilit`a di gestione di dinamiche complicate (risposta inversa, ritardi, etc. . . );

applicabilit`a a schemi “feed-forward”, nel caso in cui alcuni disturbi siano misurabili.

(14)

Figura 2.2: genealogia approssimata degli algoritmi MPC lineari.

MPC pi`u significativi, illustrando peraltro le loro interconnessioni in modo conciso. In quello che segue verr`a analizzato in modo particolare l’algorit-mo di controllo, poich´e in letteratura non `e disponibile l’algorit-molto materiale sugli sviluppi delle tecnologie di identificazione industriali (Qin & Badgwell 2003a). Saranno analizzati un p`o pi`u nel dettaglio gli algoritmi chiave che fanno parte dell’evoluzione del Model Predictive Control.

2.2.2

LQG

Lo sviluppo dei moderni concetti di controllo pu`o essere tracciato seguendo il lavoro di Kalman e dei suoi collaboratori sviluppato intorno ai primi anni sessanta (Kalman 1960).

Una descrizione molto semplificata dei loro risultati sar`a assunta come punto di riferimento per la discussione all’interno della sezione.

Il processo considerato da Kalman pu`o essere descritto da un modello dis-creto, lineare e in variabili di stato:

xk+1 = Axk+ Buk+ Gwk (2.1a)

(15)

Nel problema 2.1 il vettore u ∈ Rm rappresenta l’ingresso al processo

(vari-abili manipolate) mentre il vettore y ∈ Rp descrive le misure in uscita dal

processo. Il vettore x ∈ Rn rappresenta invece gli stati del processo da

con-trollare. Il disturbo sugli stati wk ed il rumore sulle misure ξk sono assunti

indipendenti e distribuiti gaussianamente con media zero (gaussiane centrate sull’origine). Lo stato iniziale x0 `e assunto distribuito gaussianamente con

media diversa da zero (gaussiana non centrata sull’origine).

La funzione obiettivo φ da minimizzare ad ogni tempo di campionamento penalizza il quadrato delle deviazioni degli ingressi e degli stati dall’origine e include pesi separati per gli stati e per gli ingressi rispettivamente all’interno

delle matrici Q ∈ Rn×n ed R ∈ Rm×m per permettere di operare il tuning

opportuno: φ = Γ(J); J = X j=1 (kxk+jk2Q+ kuk+jk2R) (2.2)

Le norme che compaiono all’interno della funzione obiettivo sono definite come segue:

kxk+jk2Q = xk+jTQxk+j (2.3)

Implicito in questa formulazione `e l’assunzione che tutte le variabili siano scritte in termini di variabili scostamento, ovvero nei termini di deviazioni dai loro valori desiderati di stazionario. Si pu`o osservare che la soluzione a questo problema, nota come Linear Quadratic Gaussian controller (LQG), viene raggiunta mediante due passi separati. All’intervallo di tempo k, la misura yk (uscita del processo intesa come vettore) `e prima utilizzata per

ottenere una stima ottimale degli stati ˆxk|k:

ˆ

xk|k−1 = Aˆxk−1|k−1+ Buk−1, (2.4a)

ˆ

xk|k = ˆxk|k−1+ Kf(yk− C ˆxk|k−1) (2.4b)

Successivamente, l’ingresso ottimale uk`e calcolato utilizzando un controllore

proporzionale che agisce sugli stati:

uk = −Kcxˆk|k (2.5)

Si osserva che con la notazione ˆxi|j si indica la stima degli stati al tempo i

in base alle informazioni ottenute fino al tempo j. Il guadagno del filtro di Kalman Kf pu`o essere calcolato ad ogni tempo di campionamento k

risolven-do ogni volta l’equazione di Riccati nel discreto oppure pu`o essere calcolato fuori linea una volta per tutte risolvendo l’eq. di Riccati di stazionario sem-pre nel discreto (si pu`o far vedere che gli stati convergono ugualmente ai loro valori di stazionario). Il guadagno del controllore Kcpu`o essere determinato

(16)

gressi e sulle uscite, questa teoria diviene presto un approccio standard per risolvere problemi di controllo in una vasta area di applicazioni. Nel 2001 `e stato stimato che ci potrebbero essere migliaia di applicazioni LQG nel mondo con pressappoco 400 license all’anno basate sul filtro di Kalman. Nonostante ci`o, questa teoria non ha avuto un impatto significativo sullo sviluppo della tecnologia del controllo nei processi industriali e le ragioni principali sono le seguenti (J. Richalet & Papon 1976) (Garc´`ıa & Morari 1989):

presenza di vincoli;

non-linearit`a del processo;

incertezza sul modello (robustezza);

unico criterio di prestazione di tipo quadratico. `

E abbastanza noto che il punto operativo economico di una tipica unit`a di processo `e situato all’intersezione dei vincoli (Prett & Gillette 1980). Un con-trollore industriale soddisfacente per l’industria di processo deve mantenere perci`o il sistema il pi`u vicino possibile ai vincoli senza violarli. In aggiunta, le unit`a di processo sono generalmente complesse, non-lineari, sistemi mul-tivariabili vincolati il cui comportamento cambia nel tempo a causa di vari effetti tra i quali il cambiamento delle condizioni operative oppure l’invecchi-amento delle apparecchiature. Tali unit`a di processo sono inoltre individuali, per cui resta difficile giustificare economicamente ulteriori sviluppi di mod-elli che discendono dai principi della fisica e della chimica. Effettivamente, le aree applicative dove la teoria LQG ha avuto un impatto pi`u immediato, come l’industria aerospaziale, sono caratterizzate da sistemi fisici per i quali `e tecnicamente ed economicamente fattibile sviluppare modelli fondamentali accurati. La ragione principale per cui la teoria LQG non ha avuto un grosso

(17)

impatto, pu`o essere riferita alla cultura di quel tempo della comunit`a del controllo dell’industria di processo, nella quale gli strumenti tecnici e gli in-gegneri del controllo o non sono stati esposti ai concetti LQG oppure hanno visto tale teoria come non pratica.

Nell’industria questo atteggiamento ha indirizzato lo sviluppo verso una metodologia di controllo pi`u generale nella quale il problema di ottimiz-zazione dinamica `e risolto in linea ad ogni tempo di campionamento. In questa formulazione, gli ingressi del processo sono calcolati in modo da ot-timizzare il comportamento futuro del sistema in un intervallo di tempo conosciuto come “orizzonte di predizione”. In generale pu`o essere utilizzata una qualsiasi funzione obiettivo. La dinamica del processo `e descritta da un modello esplicito del processo il quale pu`o assumere, in via di principio, una richiesta forma matematica. I vincoli sugli ingressi e sulle uscite sono inclusi direttamente nella formulazione del problema cosicch´e eventuali violazioni fu-ture dei vincoli sono anticipate e prevenute. Generalmente soltanto il primo ingresso della sequenza ottimale calcolata `e applicato al processo e il proble-ma `e risolto nuovamente al tempo di campionamento successivo utilizzando le misure del processo aggiornate. In aggiunta allo sviluppo di metodologie di controllo pi`u flessibili, sono state sviluppate nuove tecnologie di identi-ficazione del processo per permettere la rapida stima di modelli dinamici empirici ricavati da dati provenienti da test, riducendo sostanzialmente il costo dello sviluppo di modelli. Questa nuova metodologia introdotta nella modellazione dell’industria di processo e del controllo `e quella alla quale `e stato assegnato il nome di MPC.

Come `e stato osservato precedentemente in Figura 2.1, il MPC fa parte di una struttura gerarchica di funzioni di controllo. Questo `e illustrato anche in Figura 2.3, la quale visualizza a sinistra una struttura convenzionale di controllo decentralizzato per una certa unit`a di processo 1 mentre a destra mette in evidenza la struttura MPC per l’unit`a 2 (controllo centralizzato). Al livello pi`u alto della scala gerarchica viene eseguita una ottimizzazione su larga scala temporale, la quale determina i set-point e i target ottimali per le varie unit`a che compongono il processo. I target possono essere inviati agli ottimizzatori locali di ogni unit`a, i quali a loro volta vengono eseguiti pi`u frequentemente e prendono in esame un modello pi`u dettagliato dell’unit`a. L’ottimizzatore dell’unit`a calcola uno stato stazionario economico ottimale e passa i target al sistema di controllo dinamico e vincolato per l’implemen-tazione (livello dell’MPC). Questo livello di controllo deve muovere il processo da uno stato stazionario vincolato ad un altro minimizzando la violazione dei vincoli.

Nella struttura convenzionale questo livello `e realizzato utilizzando una com-binazione di algoritmi PID, blocchi lead-lag (L/L) e selettori logici high/low.

(18)

Figura 2.3: gerarchia del sistema di controllo. A sinistra `e rappresentata una struttura convenzionale mentre a destra la struttura MPC.

Spesso `e difficile inserire le richieste del controllo a questo livello all’interno di una appropriata struttura di controllo convenzionale. Nella metodologia MPC questa combinazione di blocchi `e sostituita da un singolo controllore (MPC).

Anche se lo sviluppo e l’applicazione della tecnologia MPC sono stati guidati dall’industria, si fa presente che l’idea di controllare un sistema risolven-do una sequenza di ottimizzazioni dinamiche in anello aperto non `e nuova. Propoi (1963), ad esempio, descrisse un controllore con orizzonte variabile; Lee e Markus (1967) anticiparono la pratica del corrente MPC nel loro testo di controllo ottimale.

Il contributo essenziale dell’industria `e stato mettere tutte queste idee nella pratica delle unit`a operative. In parallelo a questo sviluppo si sono presentate tutta una serie di problematiche che hanno tenuto i teorici molto occupati.

(19)

2.2.3

IDCOM

La prima descrizione di applicazioni MPC viene presentata da Richalet e suoi collaboratori nella conferenza del 1976 e successivamente riassunta in un do-cumento del 1978. Essi descrivono il loro approccio come controllo predittivo euristico (in inglese MPHC). Alla soluzione software `e assegnato il nome di IDCOM, un acronimo di Identificazione e Comando. Le caratteristiche che contraddistinguono IDCOM sono:

modello di risposta all’impulso per il sistema, lineare negli ingressi o nelle variabili interne;

funzione obiettivo quadratica su un orizzonte di predizione finito; comportamento futuro delle uscite del processo specificato da una

tra-iettoria di riferimento;

vincoli sugli ingressi e sulle uscite inclusi nella formulazione del proble-ma;

ingressi ottimali calcolati utilizzando un algoritmo euristico iterativo, interpretato come il duale dell’identificazione.

Richalet e i suoi collaboratori scelgono una rappresentazione ingresso-uscita del processo nella quale gli ingressi del processo influenzano direttamente le uscite. Gli ingressi del processo sono divisi in variabili manipolate (MVs), le

quali sono variate dal controllore, e variabili di disturbo (DVs), le quali invece

non sono disponibili per il controllo. Tutte le uscite del processo sono indicate come variabili controllate (CVs). Essi decidono di descrivere la relazione tra

gli ingressi e le uscite del processo mediante un modello discreto di risposta all’impulso finito (FIR). Nel caso di singolo-ingresso singola-uscita (SISO), il modello FIR pu`o essere visto come segue:

yk+j = N

X

i=1

hiuk+j−i (2.6)

Questo modello predice che l’uscita a un determinato tempo dipende da una combinazione lineare dei valori dei passati ingressi; i pesi hi all’interno della

sommatoria sono i coefficienti della risposta all’impulso. La sommatoria `e troncata al punto in cui si ritiene che i passati ingressi non influenzino pi`u l’uscita; questa rappresentazione `e perci`o possibile soltanto per sistemi sta-bili.

(20)

L’algoritmo di controllo MPHC guida la traiettoria delle uscite predette il pi`u vicino possibile alla traiettoria di riferimento, definita come un percorso del primo ordine dal valore attuale dell’uscita fino al desiderato set-point. La velocit`a della risposta desiderata in anello chiuso `e regolata mediante la costante di tempo della traiettoria di riferimento. Nella pratica questo `e importante perch´e offre un modo naturale di controllare l’aggressivit`a dell’al-goritmo di controllo; aumentando la costante di tempo si avr`a un controllore pi`u lento ma pi`u robusto.

Richalet e i suoi puntualizzano il fatto che il controllo dinamico deve essere inserito all’interno di una gerarchia di controllo per essere veramente efficace. Essi descrivono quattro livelli di controllo, molto simili alla struttura vista prima:

livello 3 : programmazione della produzione nello spazio e nel tempo;

livello 2 : ottimizzazione dei set-point per minimizzare i costi ed assicurare quantit`a e qualit`a della produzione;

livello 1 : controllo dinamico multivariabile del sistema;

livello 0 : controllo dei sistemi subordinati e controllo dei PID delle valvole. Essi puntano sul fatto che i maggiori benefici non derivano semplicemente da una riduzione delle variazioni delle variabili controllate attraverso un migliore controllo dinamico al livello 1. I veri benefici economici vengono dal livello 2, dove un controllo dinamico migliore permette alle variabili controllate al set-point di muoversi molto vicino ai vincoli senza violarli. Queste caratter-istiche offrono le motivazioni economiche di base per l’utilizzo della tecno-logia MPC. Nel caso di un frazionatore i benefici sono stati riportati come 150.000 $/anno, a causa dell’aumento della produzione del prodotto di testa;

(21)

risparmi combinati di energia dalle due colonne nella produzione di PVC sono riportati come 220.000 $/anno (Qin & Badgwell 2003b).

2.2.4

DMC

Ingegneri della Shell Oil hanno sviluppato la propria tecnologia MPC in-dipendentemente dagli altri intorno ai primi anni ’70, con un’applicazione iniziale nel ’73. Cutler e Ramaker presentano i dettagli di un algoritmo di controllo non vincolato che essi nominano Matrice di Controllo Dinamico (in inglese DMC) al meeting National AIChE del 1979 (Cutler & Ramaker 1979) e al Joint Automatic Control Conference del 1980 (Cutler & Ramaker 1980). In un documento al meeting del 1980 Prett e Gillette descrivono un’appli-cazione di tecnologia DMC a FCCU reattore/rigeneratore in cui l’algoritmo `e stato modificato per prendere in esame non linearit`a e vincoli (Prett & Gillette 1980). Nessun documento ha discusso la loro tecnologia di identifi-cazione del processo.

Le caratteristiche chiave dell’algoritmo di controllo DMC sono le seguenti: modello del processo lineare ottenuto mediante risposta al gradino; criterio di prestazione quadratico su un orizzonte di predizione finito; comportamento futuro delle uscite del processo specificato tentando di

seguire i set-point il pi`u vicino possibile;

calcolo degli ingressi ottimali come soluzione di un problema dei minimi quadrati.

Il modello lineare utilizzato dall’algoritmo DMC relaziona le variazioni sulle uscite del processo a somme pesate delle variazioni degli ingressi passati, in riferimento alle variazioni sugli stessi. Per il caso SISO il modello SR (in inglese Step Response) diviene il seguente:

yk+j =

N −1X

i=1

si∆uk+j−i+ sNuk+j−N (2.7)

I pesi si sono i coefficienti della risposta al gradino.

Matematicamente la risposta al gradino pu`o essere definita come l’integrale della risposta all’impulso ed `e abbastanza semplice, dato il modello in una forma, passare all’altra. Ingressi multipli furono trattati mediante la sovrap-posizione degli effetti. Utilizzando il modello SR `e possibile scrivere le varia-zioni future delle uscite come combinazione lineare delle variavaria-zioni dei futuri

(22)

set-point nel senso dei minimi quadrati con termini di penalizzazione sulle variazioni delle variabili manipolate. Tutto ci`o si traduce in una minore vari-azione dell’ingresso calcolato (inteso come vettore) ed in una risposta meno aggressiva. Come nel caso della traiettoria di riferimento in IDCOM, questa tecnica offre un certo grado di robustezza sul modello; i cosiddetti “Move Suppression Factor” offrono anche un importante beneficio numerico nel senso che questi possono essere utilizzati direttamente per migliorare il con-dizionamento della soluzione numerica.

Prett e Gillette nel loro documento del 1980, dopo che l’algoritmo DMC era stato sperimentato in varie applicazioni con successo, descrivono una modifi-ca addizionale all’algoritmo DMC per prevenire la violazione dei vincoli sugli ingressi; quando un ingresso predetto futuro diviene molto vicino al vinco-lo, viene risolta una equazione aggiuntiva al modello del processo che deve guidare l’ingresso all’interno della regione di fattibilit`a. Questi sono definiti come vincoli tempo varianti.

Visto che la decisione di aggiungere tale equazione deve essere fatta in linea, il calcolo della matrice inversa deve essere eseguito ad ogni tempo di cam-pionamento; Prett e Gillette sviluppano una soluzione rapida nella quale la matrice inversa originale pu`o essere calcolata fuori linea, richiedendo soltan-to alla matrice inversa corrispondente di calcolare in linea il vincolo variante attivo.

Gli algoritmi iniziali IDCOM e DMC rappresentano la prima generazione della tecnologia MPC; essi hanno avuto un enorme impatto sul controllo del-l’industria di processo e sono serviti di esempio per avere una definizione dell’MPC industriale.

(23)

2.2.5

QDMC

Gli algoritmi originali IDCOM e DMC offrono un eccellente controllo di pro-cessi multivariabile anche se i vincoli non sono ancora trattati in maniera soddisfacente. Ingegneri della Shell Oil trattano questo aspetto modificando l’algoritmo DMC come programmazione quadratica, nella quale i vincoli su-gli ingressi e sulle uscite compaiono esplicitamente.

Le caratteristiche principali dell’algoritmo QDMC sono le seguenti: modello del processo lineare e ottenuto come risposta al gradino; criterio di prestazione quadratico su un orizzonte di predizione finito; comportamento futuro delle uscite del processo specificato tentando di

seguire i set-point il pi`u vicino possibile e soggetto ai termini “move suppression”;

ingresso ottimale (inteso come vettore) calcolato come soluzione di un problema quadratico.

Garc´`ıa e Morshedi mostrano come la funzione obiettivo del DMC possa essere riscritta nella forma del codice standard QP (in inglese Quadratic

Program) (Garc´`ıa & Morshedi 1986). Le uscite future progettate possono

essere relazionate direttamente alle variazioni degli ingressi passati mediante la matrice dinamica; questo permette a tutti i vincoli sugli ingressi e sulle uscite di essere raccolti in una matrice detta “matrice di disuguaglianza”, la quale a sua volta coinvolge il vettore delle variazioni sugli ingressi.

Anche se il QDMC `e un algoritmo d controllo abbastanza avanzato, il QP stesso `e uno dei pi`u semplici problemi di ottimizzazione che uno possa porsi e risolvere. Per sistemi lineari, l’hessiano del QP `e definito positivo e cos``ı il problema di ottimizzazione che ne deriva `e convesso; questo significa che la soluzione pu`o essere trovata in modo efficace utilizzando il codice standard commerciale.

Garc´`ıa e Morshedi registrano buoni risultati in molte applicazioni all’in-terno della Shell su sistemi di dimensioni abbastanza grandi (12 ingressi e 12 uscite); essi affermano soprattutto che l’algoritmo QDMC si `e dimostra-to particolarmente proficuo nell’ottimizzazione in linea, provvedendo ad una transizione smorzata da un punto operativo vincolato ad un altro.

L’impostazione QDMC pu`o essere presa come esempio per la seconda genera-zione della tecnologia MPC, compresa di algoritmi capaci di offrire in modo sistematico l’implementazione dei vincoli sugli ingressi e sulle uscite. Tutto ci`o viene messo in pratica trattando i problemi MPC come un QP, con la soluzione ottenuta dal codice standard QP.

(24)

proporzione ai relativi pesi; chiaramente alcuni vincoli sulle uscite sono pi`u importanti di altri e non dovrebbero mai essere violati.

Nella pratica capita spesso che uno o pi`u segnali in ingresso e/o in uscita non pervengano per un certo intervallo di tempo al controllore, a causa di problemi hardware, saturazione di valvole o interventi degli operatori; questi segnali possono per`o ritornare a far parte del problema di controllo ad un tempo di campionamento successivo qualsiasi. Questo `e illustrato in Figu-ra 2.4, la quale visualizza la forma che assume la matrice delle funzioni di trasferimento del processo nei tre casi generali. Il caso quadrato si verifica quando il sistema ha a disposizione tante MVs quante CVs e in questo caso

la soluzione `e unica; nella realt`a per`o questo caso `e raro.

Molto comune `e il caso sottodeterminato, ovvero il caso in cui si ha un nu-mero di manipolate disponibili maggiore del nunu-mero di uscite da controllare al set-point; in questa situazione, i gradi di libert`a disponibili possono essere utilizzati per scopi aggiuntivi, come ad esempio muovere il sistema il pi`u vi-cino possibile ad un punto operativo ottimale.

Quando le valvole si saturano o si perdono alcune azioni di controllo, il si-stema pu`o arrivare a condizioni in cui ci sono pi`u variabili in uscita che in ingresso; questo `e il caso di sistema sovradeterminato, in cui i gradi di libert`a sono minori di zero. In casi come questo non sar`a possibile raggiungere tutti gli obiettivi del controllo e le specifiche dovranno essere rilasciate in qualche modo, ad esempio minimizzando nel senso dei minimi quadrati le violazioni dei vincoli sulle stesse.

Un altro importante problema pratico `e quello legato alla tolleranza dell’er-rore. Quando un segnale viene perduto, piuttosto che effettuare un nuovo tuning, un controllore MPC efficace dovrebbe rimanere in linea e provare a migliorare la situazione del sistema che sta sotto il suo controllo. Lo scoglio maggiore al raggiungimento di questo scopo `e che un processo multivariabile ben condizionato pu`o contenere al suo interno un certo numero di

(25)

sottosiste-Figura 2.4: la struttura del processo determina i gradi di libert`a disponibili per il controllore.

mi malcondizionati. In pratica un controllore MPC deve riconoscere e tenere fuori dall’azione di controllo i sottosistemi malcondizionati prima che tutto ci`o si traduca in una azione di controllo errata.

`

E diventato difficile in maniera crescente tradurre tutte le richieste del con-trollo nei relativi pesi all’interno di una singola funzione obiettivo; questo significa che i pesi relativi alle violazioni dei set-point delle uscite control-late, i pesi relativi alle violazioni dei vincoli sulle uscite, quelli relativi agli ingressi e quelli relativi alle violazioni degli ingressi ottimali sono inclusi al-l’interno della stessa funzione. Per sistemi di grandi dimensioni non `e facile includere tutte queste richieste in un set consistente di pesi e addirittura in molti casi non ha senso includere tutte queste variabili nella stessa funzione obiettivo; ad esempio, guidare gli ingressi ai loro target ottimali pu`o condurre ad un’ampia violazione dei vincoli “soft” sulle uscite. Anche nel caso in cui si riuscisse a trovare un set consistente di pesi relativi, `e necessario trattare il problema con cura per evitare problemi di scala che condurrebbero ad una soluzione malcondizionata.

Prett e Garc´`ıa nel 1988 affrontano questo problema affermando che la com-binazione di obiettivi multipli all’interno di una singola funzione obiettivo non permette al progettista di riflettere le vere prestazioni richieste (Prett & Garc´`ıa 1988).

(26)

dizionamenti;

formulazione di una funzione multiobiettivo; ottimizzazione quadratica delle uscite seguita da ottimizzazione quadratica degli ingressi;

controllo di un insieme di punti futuri nel tempo per ogni uscita, chia-mati punti di coincidenza, facenti parte di una traiettoria di riferimento; calcolo di una singola mossa per ogni ingresso;

formulazione “hard” o “soft”dei vincoli, con quelli “hard” classificati in ordine di priorit`a.

Una caratteristica importante dell’algoritmo IDCOM-M `e che esso utilizza due funzioni obiettivo separate, una per le uscite e l’altra, nel caso in cui ci siano dei gradi di libert`a in eccesso, per gli ingressi. Prima viene minimizzata una funzione quadratica soggetta a vincoli “hard” sugli ingressi nella quale ogni uscita `e guidata il pi`u vicino possibile ai valori desiderati mediante i cosiddetti punti di coincidenza. Il nome viene dal fatto che in questi punti i valori desiderati e quelli predetti devono coincidere. I valori desiderati delle uscite derivano da una traiettoria del primo ordine che inizia al tempo in cui avviene la misura e che conduce agevolmente al set-point. Ogni uscita ha due parametri di tuning di base: i punti di coincidenza e il tempo della risposta in anello chiuso (costante di tempo), usati per definire la traiettoria di riferimento.

Ingegneri della Setpoint continuano a migliorare la tecnologia IDCOM-M, combinando le loro identificazioni, simulazioni, configurazioni e controllo dei prodotti all’interno di un singolo pacchetto software chiamato SMCA (Set-point Multivariable Control Architecture).

Verso la fine degli anni ’80 ingegneri della Shell Research in Francia svilup-pano il pacchetto Shell Multivariable Optimizing Controller (SMOC), nel

(27)

quale descrivono l’esistenza di una stretta connessione tra rappresentazione in variabili di stato e algoritmi MPC, cercando di strutturare i vincoli sfrut-tando le caratteristiche del MPC e con una migliore struttura per il feedback messa a disposizione dai metodi in variabili di stato.

L’algoritmo SMOC include molte caratteristiche che adesso sono considerate essenziali nella formulazione dei “moderni” MPC:

con l’utilizzo dei modelli in variabili di stato pu`o essere rappresentato tutto il range delle dinamiche lineari (stabili, instabili e integrali); a differenza dei modelli dei modelli di convoluzione, i quali hanno un

orizzonte di rappresentazione della dinamica finito, i modelli in variabili di stato non hanno limiti sull’asse dei tempi;

un esplicito modello del disturbo descrive l’effetto di disturbi non mis-urati; il “constant output disturbance” `e semplicemente un caso parti-colare di tale modello;

per la stima degli stati e di disturbi non misurati dalle misure delle uscite `e utilizzato un filtro di Kalman;

`e introdotta una distinzione fra variabili controllate che appaiono negli obiettivi del controllo e variabili “feedback”, le quali sono utilizzate per la stima degli stati;

i vincoli sugli ingressi e sulle uscite sono imposti all’interno della for-mulazione del QP.

Applicare un algoritmo SMOC `e quasi equivalente a risolvere un problema LQR con ingressi e uscite vincolati, con l’unica eccezione che SMOC `e ancora formulato su un orizzonte finito. Cos``ı strutturato, l’algoritmo SMOC non eredita ancora le notevoli propriet`a stabilizzanti dell’algoritmo LQR. La for-mulazione dell’algoritmo LQR su orizzonte infinito arriva soltanto dopo che gli accademici cominciano a prendere in esame gli esempi MPC degli anni ’90.

Gli algoritmi IDCOM-M, HIECON, SMCA e SMOC rappresentano la terza generazione della tecnologia MPC; alcuni includono anche l’algoritmo PCT venduto da Profimatics e l’algoritmo RMPC venduto da Honeywell.

Questa generazione distingue fra molti livelli di vincoli (hard, soft, per rango), offre alcuni meccanismi per recuperare una soluzione stabile da una situazio-ne irresolubile, risolve i problemi derivanti da una struttura di controllo che cambia in tempo reale, offre un ricco set di opzioni per il feedback e permette di controllare un’ampia tipologia di dinamiche di processi (stabili, integrali e instabili) con specifiche sul controllore.

(28)

Dal ’95 al 2000 circa, l’incremento della competitivit`a e la fusione di molte compagnie hanno generato notevoli cambiamenti nel panorama del MPC industriale. Alla fine del ’95 Honeywell acquista Profimatics e fonda Hon-eywell Hi-Spec Solution. L’algoritmo RMPC offerto da HonHon-eywell `e unito con il controllore PCT della Profimatics per dare origine al loro prodotto corrente RMPCT. Agli inizi del ’96 AspenTech acquista entrambi, Setpoint e DMC Corporation. Questo `e seguito dall’acquisto di Treiber Controls nel ’98. Le tecnologie SMCA e DMC vengono fuse successivamente per creare Aspen Technology’s il cui prodotto attuale `e DMCplus.

DMCplus e RMPCT sono rappresentativi della quarta generazione della tecnologia MPC venduta oggi, avente le seguenti caratteristiche:

interfacce grafiche per l’utente;

livelli multipli di ottimizzazione per seguire obiettivi di controllo prio-ritari;

migliore flessibilit`a nel calcolo dei valori ottimali di stazionario, incluso il QP ed obiettivi economici;

considerazioni dirette sull’incertezza del modello (progettazione di un controllore robusto);

migliore tecnologia di identificazione basata sull’errore di predizione e metodi Sub-Space.

(29)

2.2.8

Modellazione del MPC e tecnologia di

identifi-cazione

La Tabella 2.13 visualizza i dettagli essenziali della modellazione e la

te-cnologia di identificazione venduta oggi da ogni compagnia. I modelli sono usualmente sviluppati utilizzando i dati provenienti dall’impianto e ottenuti stimolando il processo attenendosi ad un preciso ed attento protocollo dei test. Alcuni produttori come Adersa e DOT Products difendono l’utilizzo di modelli a principi primi (in variabili di stato).

Protocollo dei test

I segnali test sono richiesti per stimolare il processo; sono necessari segnali a bassa frequenza per rilevare il comportamento di stazionario mentre segna-li a medio-alta frequenza servono per stimolare e rilevare il comportamen-to dinamico. Il modello `e perci`o identificacomportamen-to mediante dati ingresso-uscita provenienti dal processo. Molti esperti credono che questa sia la fase pi`u im-portante nell’implementazione dei controllori DMCplus. Prima di eseguire il test vero e proprio `e necessario in genere effettuare un pre-test per le seguenti ragioni:

- si rende necessario dare un gradino ad ogni variabile manipolata per

mettere a punto la strumentazione esistente nonch´e il tuning dei con-trollori che fanno parte del controllo di base (PI, PID);

- per ogni uscita `e necessario rilevare il tempo impiegato per raggiungere lo stazionario;

- ottenimento dei dati per l’identificazione iniziale.

Molti pacchetti di identificazione danno un gradino ad una o pi`u manipolate fissando le altre variabili di ingresso ai loro valori di stazionario. Questo approccio `e valido purch´e il processo sia assunto lineare e si possa applicare quindi il principio di sovrapposizione degli effetti. Alcuni pacchetti permet-tono di variare simultaneamente pi`u variabili manipolate mediante segnali scorrelati tra le varie MV . Durante il test di identificazione vero e proprio una squadra di ingegneri effettua un monitoraggio continuo del processo. Ogni MV `e stimolata con un gradino che ha la durata da 8 a 15 tempi di

3Per una descrizione accurata delle sigle che sono riportate in tabella si veda l’articolo (Qin & Badgwell 2003b).

(30)

Durante la fase di identificazione, vi `e la possibilit`a di eliminare dal test gli intervalli di tempo in cui i dati provenienti dal processo sono stati falsati da uno o pi`u disturbi.

Nel caso in cui a livello del controllo di base il tuning dei PID dovesse cam-biare in modo significativo allora pu`o essere necessario costruire un nuovo modello del processo. Il modello `e identificato per mezzo degli ingressi e delle uscite, e tutto ci`o `e messo insieme da una convoluzione discreta facen-do in mofacen-do che il nuovo set-point degli ingressi diventi il nuovo ingresso al modello.

Sembra che i primi pacchetti di identificazione abbiano utilizzato i segnali a gradino della tecnica PRBS (Pseudo Random Binary Sequence, sequenza binaria pseudo-random) (Qin & Badgwell 2003b). Il pacchetto GLIDE uti-lizza un segnale binario in cui la durata del gradino `e ottimizzata in modo dedicato. Altri utilizzano degli step di ampiezza casuale o altri ancora segnali di ingresso random simili al PRBS.

Identificazione lineare di un modello

Nei prodotti MPC, l’approccio principale per la stima dei parametri del modello `e principalmente basata sulla minimizzazione nel senso dei minimi quadrati della seguente funzione:

J =

L

X

k=1

kˆyk− ymkk2, (2.8)

utilizzando un approccio “equation error” oppure un approccio “output er-ror”.

Il primo metodo ipotizza di avere a disposizione delle misure perfette ma un modello che non rispecchia perfettamente la realt`a; compariranno quindi dei

(31)

termini di errore sia sull’evoluzione degli stati che in quella delle uscite; il secondo metodo invece suppone di avere a disposizione un modello perfet-to e che gli errori derivino soltanperfet-to dalle misure; vi sar`a perci`o un errore soltanto sulle uscite e non sull’evoluzione degli stati. Si osserva il fatto che i due metodi di identificazione citati esprimono concetti di identificazione diametralmente opposti e che la realt`a della fisica si colloca al loro interno (per ulteriori approfondimenti sulle tecniche di identificazione `e interessante consultare il lavoro di (Micchi 2005) e (?)).

La differenza maggiore fra i due approcci si trova nell’identificazione ARX o nei modelli in funzioni di trasferimento. Nella formulazione “equation error”, l’azione feedback `e esercitata dalle “misure” delle uscite passate:

yk = Φy(q−1)ykm+ Φu(q−1)uk+ Φv(q−1)vk (2.9)

mentre nel caso della formulazione “output error” tale azione `e esercitata dalle “stime” delle uscite:

yk= Φy(q−1yk+ Φu(q−1)uk+ Φv(q−1)vk (2.10)

Nel DMCplus-Model `e utilizzato un metodo dei minimi quadrati nella forma “velocit`a” per stimare i parametri dei modelli FIR:

∆yk = Nu X i=1 Hu i ∆uk−i+ Nv X i=1 Hv i∆vk−i+ Nw X i=1 Hw i ∆wk−i+ ∆ξk (2.11)

Il vantaggio di utilizzare un modello in questa forma `e che si riduce l’effetto di disturbi a gradino non misurati (Cutler & Yocum 1991); l’inconveniente `e che tale rappresentazione `e sensibile al rumore che ha frequenze elevate. Per questo motivo, all’interno del DMCplus-Model i dati possono essere filtrati prima di dare origine al modello. I coefficienti FIR sono poi convertiti in co-efficienti FSR per il controllo. Gli esperti utilizzano minimi quadrati ricorsivi nella formulazione dell’errore di predizione per implementare caratteristiche adattative.

`

E importante sottolineare il fatto che gli algoritmi SMI (Subspace Model Identification) sono implementati in molti algoritmi di modellazione MPC. SMOC utilizza l’analisi delle variabili aleatorie canoniche (CVA) per iden-tificare un modello in variabili di stato che `e anche la forma del modello utilizzata nell’omonimo controllore. Molti altri stanno sviluppando e tes-tando le loro versioni di algoritmi SMI.

(32)

La maggiore difficolt`a nella modellazione non lineare empirica non `e la se-lezione di una forma non lineare, sia essa polinomiale o in reti neurali, ma piuttosto la selezione di un algoritmo di identificazione robusto e affidabile.

2.3

Descrizione tecnica generale

I controllori MPC sono progettati per guidare il processo da uno stato sta-zionario vincolato ad un altro; normalmente ricevono i target di stasta-zionario ottimali da un ottimizzatore che si trova ad un livello di controllo superiore (come visto in Figura 2.1) e/o calcolano un punto operativo economicamente ottimale utilizzando un ottimizzatore interno per lo stazionario. Gli obiettivi generali di un controllore MPC sono, in ordine di importanza, i seguenti:

1. prevenire la violazione dei vincoli sugli ingressi e sulle uscite;

2. guidare le variabili controllate ai loro valori di stazionario (ottimiz-zazione dinamica delle uscite);

3. guidare le variabili manipolate ai loro valori di stazionario utilizzando i rimanenti gradi di libert`a (ottimizzazione dinamica degli ingressi);

4. prevenire eccessive variazioni degli ingressi;

5. anche quando alcuni segnali non pervengono o alcuni attuatori non

funzionano, controllare il sistema nel modo migliore.

La traduzione di questi obiettivi in termini matematici comporta un numero di approssimazioni e di limiti che definisce il carattere di base del controllore. Come accade in ogni progetto, in genere si presentano soluzioni alternative che danno origine a formulazioni differenti di MPC per raggiungere gli stessi

(33)

obiettivi.

Nell’articolo (Qin & Badgwell 2003b) la Tabella 4 mostra il percorso di ogni produttore in riferimento alla tecnologia MPC lineare.

Nella Figura2.5si pu`o osservare il flusso di calcolo eseguito ad ogni tempo di campionamento da un tipico algoritmo MPC. Il primo passo `e la lettura di

Figura 2.5: Flusso di calcolo MPC ad ogni esecuzione di controllo.

tutti i dati provenienti dal processo: variabili manipolate, disturbi ed uscite; oltre al valore numerico che la rappresenta, ogni variabile che venga rilevata (ingresso o uscita) porta con s´e un segnale derivante dal relativo sensore che indica al controllore se tale variabile `e attiva oppure no. Ogni MV sar`a anche portatrice di informazioni che ne indicano lo stato della funzione associata all’azione di controllo o della valvola; se ad esempio una valvola si `e saturata, allora ad essa `e permesso di muoversi in una sola direzione. Se il controllo di una MV `e disabilitato, allora tale MV non pu`o essere utilizzata per il controllo ma pu`o essere considerata un disturbo misurato (DV). I restanti passi del calcolo rispondono essenzialmente a tre questioni:

(34)

teoria LQG non hanno avuto successo nella tecnologia del MPC industriale, poich´e essa non prevede di separare il problema complessivo in due problemi pi`u semplici da impostare e da risolvere, cio`e stima degli stati e controllo degli stati. Molti prodotti MPC industriali contano su schemi creati ad hoc per incorporare il feedback. Questo ha molte implicazioni:

misure addizionali delle uscite del processo (non CV) che potrebbero

migliorare l’accuratezza della stima degli stati e che non `e facile incor-porare nella struttura del controllo;

`e richiesto uno sforzo addizionale per controllare combinazioni lineari degli ingressi del processo (ad esempio, la temperatura media di un letto), o per controllare uscite non misurate;

le opzioni sul modello di disturbi non misurati sono molto limitate; devono essere introdotte delle riparazioni ad hoc per rimuovere l’offset

di stazionario nel caso di sistemi integrali o instabili;

le misure del rumore sono trattate in maniera non ottimale.

Attualmente ci sono soltanto due prodotti MPC che espongono la tecnolo-gia del filtro di Kalman per il feedback dell’uscita. Come discusso prima, le limitazioni elencate motivano lo sviluppo originale dell’algoritmo SMOC. Il prodotto SMOC attualmente commercializzato trattiene ancora al suo inter-no il filtro di Kalman (Kalman 1960). Il prodotto di AspenTarget include un EKF per il feedback basato su una semplice estensione per sistemi non lineari.

(35)

del feedback, basata sul confronto fra le uscite misurate ym

k e quelle predette

ˆ

yk ad un certo istante di tempo k:

ek = ykm− ˆyk (2.13)

Il termine di deviazione ek `e aggiunto al modello per essere utilizzato nella

predizione:

ˆ

yk+j = g(ˆxk+j, uk+j) + ek (2.14)

Questa forma di feedback `e equivalente ad assumere che un disturbo a gradi-no si sovrapponga alle uscite e rimanga costante per tutto il tempo futuro. Muske e Rawlings (1993) fanno notare che `e possibile calcolare un’ampia variet`a di modelli del disturbo; in particolare essi osservano che “constant output disturbance model” indirizza verso una lenta reiezione dei disturbi che entrano nel processo. Questo problema pu`o essere affrontato diretta-mente costruendo un “input disturbance model”, in via di principio simile all’“Internal Model”.

Facendo riferimento al modello2.1discreto e lineare, un modello del disturbo del tutto generale pu`o essere scritto come:

ˆ xk+1 = Aˆxk+ Buuk+ Bvvk+ Bwwk+ Bssk (2.15a) ˆ sk+1 = ˆsk (2.15b) ˆ pk+1 = ˆpk (2.15c) ˆ yk= C ˆxk+ Duk+ ξk+ Cppˆk (2.15d)

dove ˆsk∈ Rms rappresenta un disturbo costante sugli stati e ˆpk∈ Rmp

rapp-resenta un disturbo costante sull’uscita. Chi progetta il controllore non ha la completa libert`a nella specifica del numero e della distribuzione dei disturbi, perch´e il disturbo sugli stati deve essere osservabile. Nella pratica questo significa che il numero totale dei disturbi non deve superare il numero di

uscite misurate(ms+ mp ≤ my), e che per un dato modello del processo,

al disturbo non `e permesso influenzare alcuni stati o direzioni delle uscite (Muske 1995). Il progetto accurato di modelli del disturbo per applicazioni MPC `e un materiale fertile per il futuro della ricerca, soprattutto nel caso di sistemi non lineari (Pannocchia & Rawlings 2003) (?).

Nel caso di processi stabili, il modello “constant output disturbance” offre azione integrale al controllore, rimuovendo effettivamente l’offset di stazio-nario causato da disturbi e/o mismatch (J. B. Rawlings & Muske 1994). Per sistemi integrali o instabili, invece, questo modello fallisce perch´e lo stimatore contiene i poli instabili del processo (Muske & Rawlings 1993). La maggior parte degli algoritmi MPC a livello industriale hanno superato questo proble-ma utilizzando delle soluzioni create ad hoc, da quando non incorporano pi`u

(36)

integrali, nella pratica la scelta di un opportuno fattore di rotazione non `e semplice ed il controllo di sistemi integrali rumorosi `e spesso insoddisfacente. In alcuni casi le misure delle CV possono non essere disponibili ad ogni tempo di campionamento, ad esempio quando alcune misure sono fornite da un analizzatore. Una soluzione tipica a questo inconveniente `e ignorare il termine di deviazione relativamente alle CV coinvolte per l’aggiornamento dell’algoritmo per un certo numero di tempi di campionamento, con l’aggiun-ta di un’apposil’aggiun-ta sezione che disabilil’aggiun-ta il controllo di queste CV se vengono effettuate troppe esecuzioni di controllo senza feedback.

2.3.2

Determinazione dei sottoprocessi controllati

Dopo che gli stati del processo sono stati stimati, il controllore deve de-terminare quali MV possono essere manipolate e quali CV devono essere controllate. In genere, se la misura di una CV `e disponibile e l’operatore ha abilitato il controllo di questa CV, allora essa deve essere controllata. Una variabile manipolata, per essere utilizzata dal controllore, deve soddisfare lo stesso criterio; in aggiunta, per le manipolate, deve essere disponibile anche il consenso del controllo di base. Se ad esempio una valvola `e saturata “high” oppure “low”, al problema dell’ottimizzazione pu`o essere aggiunto un vincolo “hard” su questa manipolata in modo da prevenire la mossa di questa MV nella direzione sbagliata. Se poi una certa MV viene disabilitata dal control-lo di base, alcontrol-lora essa non pu`o essere utilizzata dal controlcontrol-lo avanzato. In questo caso deve essere trattata come un DV.

Si osserva perci`o che da tutte queste decisioni ne consegue il controllo di un sottosistema, quindi di un processo, che cambia in tempo reale come si `e visto in Figura 2.4.

Nelle applicazioni `e tipico includere le uscite del controllo di base nella for-mulazione del controllo MPC come CV addizionali. Queste sono vincolate

(37)

a rimanere all’interno dei loro limiti di saturazione trattando l’intervallo da essi definito come una variabile per il controllo; tutto questo serve a far s``ı che a livello del controllo di base gli attuatori operino lontano dalle zone di saturazione, le quali ne comprometterebbero la prestazione.

In molti prodotti MPC, lo stop di un sensore cos``ı come una significativa deviazione e deriva di una certa variabile che per`o risulta compresa nei limiti non sono riconosciuti o identificati.

Il DMCplus, esperti e RMPCT distinguono fra stato critico di una CV e stato non critico. Se lo stato non `e ritenuto critico, RMPCT e DMCplus continuano la loro azione di controllo settando la misura della CV in questio-ne con il valore ottenuto dalla predizioquestio-ne del modello, il che significa niente feedback per questa variabile. Se la situazione non critica permane per un determinato intervallo di tempo, RMPCT elimina questa CV dalla funzione obiettivo del controllo. Se invece lo stato di una CV `e critico, DMCplus e RMPCT, ad esempio, fermano immediatamente il controllore.

2.3.3

Ottimizzazione locale di stazionario

Pressoch´e tutti i controllori che sono stati menzionati eseguono separata-mente un’ottimizzazione locale di stazionario ad ogni esecuzione di controllo per calcolare i target degli ingressi, degli stati e delle uscite. Questo `e nec-essario perch´e i target ottimali possono cambiare ad un qualsiasi istante di tempo a causa di disturbi che entrano nel processo e/o di operazioni in linea compiute dagli operatori. L’ottimizzazione locale di stazionario in genere si pone il problema di calcolare dei target il pi`u vicino possibile a quelli ricevu-ti dal livello di controllo superiore (otricevu-timizzazione economica locale), senza violare i vincoli sugli ingressi e sulle uscite. La stima dei disturbi costanti nel feedback dell’uscita appare esplicitamente in questo passo in modo da poter rimuovere i disturbi.

Questo livello di ottimizzazione utilizza un modello di stazionario che in genere `e semplicemente la versione di stazionario del modello dinamico uti-lizzato appunto nell’ottimizzazione dinamica. I controllori esperti utilizzano una programmazione lineare (LP) per eseguire l’ottimizzazione locale di sta-zionario. Le caratteristiche che contraddistinguono una soluzione LP `e che i target ottimali giacciono al vertice di un vincolo limite. Se il vincolo limite cambia frequentemente a causa di mismatch o rumore, la soluzione ottimale pu`o “rimbalzare” anche inutilmente da un vertice all’altro del dominio della funzione di ottimizzazione, causando una scadente prestazione di controllo. Soluzioni tipiche a questo problema comportano l’utilizzo di un filtraggio abbastanza elevato dei segnali di uscita e retuning dell’ottimizzatore

(38)

aggiun-indice di priorit`a (rango) in modo che il controllo della prestazione di una data CV non sar`a sacrificato per migliorare la prestazione di una CV che ha priorit`a pi`u bassa. La violazione dei vincoli pu`o essere suddivisa attraverso un set di CV aventi lo stesso livello di priorit`a; il calcolo procede cercando di ottimizzare prima le CV con priorit`a pi`u elevata, soggetto ai vincoli “hard” e “soft” sulle uscite prese in esame e a tutti i vincoli “hard” sugli ingressi. Allo stesso modo anche gli ingressi possono essere classificati per rango. Tutti i prodotti che sono stati esaminati fin qui rafforzano il concetto di vincoli “hard” sugli ingressi all’interno dell’ottimizzazione di stazionario; `e sempre possibile calcolare dei target nel pieno rispetto dei vincoli sugli in-gressi, purch´e tali vincoli siano definiti in maniera sensata. In generale lo stesso non vale per i vincoli sulle uscite. Questo accade perch´e se entra un disturbo elevato nel processo, non `e possibile, dato uno spazio degli ingressi, rimuovere completamente il disturbo allo stazionario. Per questo motivo, DMCplus, SMOC e MVC preferiscono una formulazione “soft” dei vincoli sulle uscite nell’ottimizzazione di stazionario. Questo ovviamente permette alcune violazioni dei vincoli sulle uscite, e comunque l’entit`a di queste vio-lazioni `e minimizzata nella funzione obiettivo.

Ad esempio il controllore NOVA-NLC non compie ottimizzazioni separate ma compie l’ottimizzazione di stazionario e quella dinamica simultaneamente; questo pu`o migliorare le prestazioni del controllore nel senso che gli obiettivi di stazionario e quelli dinamici non danno conflitti. Per esempio, con obi-ettivi separati `e possibile che il modulo di stazionario calcoli dei target che il modulo dinamico non pu`o raggiungere a causa della presenza di vincoli soltanto nel modulo dinamico.

Comunque, combinando gli obiettivi, si deve risolvere un problema pi`u com-plesso dal punto di vista numerico.

(39)

2.3.4

Ottimizzazione dinamica

Nell’ottimizzazione dinamica un controllore MPC deve calcolare un set di variazioni sulle MV che guideranno il processo allo stazionario senza vio-lazione dei vincoli. Tutti i prodotti MPC fin qui menzionati e dei quali si hanno informazioni, risolvono il problema dinamico (approssimativamente) come minimizzazione della seguente funzione obiettivo:

J(u) = P X j=1 {keyk+jkqQj + ksjkqT} + M −1X j=0 {keu k+jkqRj + k∆uk+jk q Sj} (2.17a)

soggetto ai vincoli di uguaglianza: ˆ

xk+j = f (ˆxk+j−1, uk+j−1) ∀ j = 1, . . . , P (2.17b)

ˆ

yk+j = g(ˆxk+j, uk+j) ∀ j = 1, . . . , P (2.17c)

e soggetto ai vincoli di disuguaglianza:

y − sj 6 ˆyk+j 6 y + sj ∀ j = 1, . . . , P (2.17d)

sj > 0 ∀ j = 1, . . . , P (2.17e)

u 6 uk+j 6 u ∀ j = 0, . . . , M − 1 (2.17f)

∆u 6 ∆uk+j 6 ∆u ∀ j = 0, . . . , M − 1 (2.17g)

La funzione obiettivo nell’eq. 2.17 coinvolge quattro termini. Il comporta-mento futuro delle uscite `e controllato penalizzando le deviazioni di queste dalla traiettoria di riferimento: eyk+j = yk+j−yk+jr , sull’orizzonte di predizione

P4; la violazione dei vincoli sulle uscite `e minimizzato mediante le variabili s

j

che rappresentano le violazioni dei vincoli; deviazioni degli ingressi futuri dai rispettivi target us sono controllati utilizzando penalizzazioni sugli ingressi

definite come eu

k+j ≡ uk+j − us, sull’orizzonte di controllo M; le variazioni

sugli ingressi sono penalizzate separatamente mediante un termine che coin-volge le variazioni ∆uk+j.

In tutti e quattro i termini, la misura delle deviazioni `e rilevata dalla norma

dei vettori, tipicamente norma L1 o L2 (q = 1, 2). L’importanza

relati-va dei quattro termini nella funzione obiettivo `e controllata settando op-portunamente le matrici dei pesi tempo varianti (oppure tempo invarianti) Qj,Tj,Sj,Rj; queste matrici devono essere strutturate in modo da risultare 4Dove P indica il numero di campionamenti nel futuro rispetto al tempo di campionamento attuale k.

(40)

vincolo che sta saturando ed il calcolo dell’ottimizzazione `e ripetuto senza la variabile manipolata in causa. L’algoritmo PFC esegue l’ottimizzazione senza vincoli e poi abbassa il valore degli ingressi calcolati se questi non rispettano i vincoli “hard”. Entrambe queste tecniche prevengono la violazione dei vin-coli “hard” sugli ingressi ma in generale questo comporter`a una perdita di prestazione che `e difficile da stimare. Tipicamente la prestazione risultante `e accettabile, anche se la soluzione non soddisfa il KKT (Karush Kuhn Tuck-er), condizione necessaria per l’ottimalit`a (Springer & Verlag 1999).

L’algoritmo SMOC e il DMCplus penalizzano soltanto l’ultima deviazione degli ingressi prima di portare il sistema verso lo stazionario ottimale:

Rj = 0 ∀j < M − 1, (2.19a)

RM −1 À 0. (2.19b)

Se il peso sull’ultimo ingresso `e grande abbastanza e il processo `e stabile, tutto questo `e approssimativamente equivalente ad avere un vincolo sullo stato terminale. Se la soluzione dinamica alla fine dell’orizzonte `e significa-tivamente differente dai target, il che significa che lo stato terminale non `e effettivamente vincolato, il controllore DMCplus si fermer`a automaticamente. RMPCT, HIECON, PFC e SMOC non penalizzano direttamente le variazioni sugli ingressi (Sj = 0); HIECON e PFC utilizzano una predefinita

traietto-ria di riferimento per l’uscita al fine di evitare azioni aggressive sulle MV. Il controllore RMPCT definisce un imbuto e cerca la traiettoria ottimale e le variazioni delle MV ottimali minimizzando la seguente funzione:

(u, y) = argmin

P

X

j=1

kˆyk+j− yrk+jk2Q+ kˆuk+M −1− usk2R (2.20)

soggetta al vincolo definito dall’imbuto.

In generale, utilizzare una singola funzione obiettivo nell’ottimizzazione dina-mica significa che la migliore prestazione fra i quattro termini di contributo

Figura

Figura 2.1: struttura di un sistema di controllo odierno.
Figura 2.3: gerarchia del sistema di controllo. A sinistra `e rappresentata una struttura convenzionale mentre a destra la struttura MPC.
Figura 2.4: la struttura del processo determina i gradi di libert`a disponibili per il controllore.
Figura 2.5: Flusso di calcolo MPC ad ogni esecuzione di controllo.
+7

Riferimenti

Documenti correlati

This theoretical result is consistent with the labor reform evidence generated by adoption of a common currency by some European countries, a clearly identi…ed and arguably

Trova questi oggetti nella tua casa e misurali con Quindi scrivi quanto sono lunghi.. Quanto

MATERIALE PESO SPECIFICO (Kg/dm 3 ) Polistirolo. (Polimerizzati) 0,04

del 14 gennaio 2008 gli acciai da carpenteria (laminati a caldo con profili a sezione aperta) devono appartenere al grado da S 235 a S 460 secondo le UNI EN 10025 - 95 (il numero

COMPARAZIONI QUALITÀ ACCIAIO SECONDO LE VARIE

de una culebra [que son] como cascabeles, y con no más ni menos gravedad que tendría un papa para coronar a un emperador, que era cosa notable la serenidad que les causaban

99 In this case, the acquisition of a limited number of shares by Telefónica in Telecom Italia did not cause any concern of minority shareholding within the European Union, but it

In Sicilia, quasi due anni fa la Delegazione regionale Caritas e Fio.psd (Federazione italiana degli organismi per le persone senza dimora) hanno avviato un progetto pilota di