Modellizzazione e Controllo Predittivo Ibrido di un ... - Ingegneria
Modellizzazione e Controllo Predittivo Ibrido di un ... - Ingegneria
Modellizzazione e Controllo Predittivo Ibrido di un ... - Ingegneria
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Università degli Stu<strong>di</strong> <strong>di</strong> Siena<br />
Facoltà <strong>di</strong> <strong>Ingegneria</strong><br />
Corso <strong>di</strong> Laurea in <strong>Ingegneria</strong> Informatica<br />
<strong>Modellizzazione</strong> e <strong>Controllo</strong><br />
<strong>Pre<strong>di</strong>ttivo</strong> <strong>Ibrido</strong> <strong>di</strong> <strong>un</strong> Motore ad<br />
Iniezione Diretta a Carica<br />
Stratificata<br />
Tesi <strong>di</strong> Laurea <strong>di</strong><br />
Giulio Ripaccioli<br />
Relatore:<br />
Chiar.mo Prof. Ing. A.Bemporad<br />
Correlatori:<br />
Dr. Ing. N. Giorgetti<br />
Dr. Ing. D. Hrovat<br />
Dr. Ing. I. Kolmanovski<br />
Anno Accademico 2005/2006<br />
SESSIONE del 25 SETTEMBRE 2006
Ai miei genitori,<br />
Siena, 25 Settembre 2006
In<strong>di</strong>ce<br />
Introduzione 2<br />
1 Sistemi ibri<strong>di</strong> 8<br />
1.1 I modelli ibri<strong>di</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />
1.2 DHA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />
1.2.1 Proprietà dei DHA . . . . . . . . . . . . . . . . . . . . 17<br />
1.3 Sistemi MLD . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />
1.3.1 Calcolo proposizionale e programmazione mista intera . 19<br />
1.3.2 Sistemi MLD . . . . . . . . . . . . . . . . . . . . . . . 23<br />
1.3.3 Proprietà dei sistemi MLD . . . . . . . . . . . . . . . . 25<br />
1.4 Sistemi PWA . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
1.4.1 Equivalenza fra DHA, Sistemi PWA e MLD . . . . . . 29<br />
1.4.2 Analisi <strong>di</strong> raggi<strong>un</strong>gibilità . . . . . . . . . . . . . . . . . 31<br />
2 <strong>Controllo</strong> pre<strong>di</strong>ttivo e forma esplicita 33<br />
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea . . . . . . . . . . . . . . . . . . . 34<br />
2.1.1 MPC per sistemi ibri<strong>di</strong> . . . . . . . . . . . . . . . . . . 35<br />
2.1.2 Convergenza ad anello chiuso . . . . . . . . . . . . . . 38<br />
2.1.3 Risolutori <strong>di</strong> problemi misti interi . . . . . . . . . . . . 40<br />
2.2 Forma esplicita del controllore . . . . . . . . . . . . . . . . . . 42
In<strong>di</strong>ce iii<br />
3 Meccanica del motore ad iniezione <strong>di</strong>retta a benzina 44<br />
3.1 Motore a combustione interna . . . . . . . . . . . . . . . . . . 45<br />
3.1.1 Schema <strong>di</strong> f<strong>un</strong>zionamento e definizioni . . . . . . . . . 45<br />
3.1.2 Alc<strong>un</strong>i approfon<strong>di</strong>menti . . . . . . . . . . . . . . . . . 48<br />
3.2 Il Motore DISC . . . . . . . . . . . . . . . . . . . . . . . . . . 50<br />
3.2.1 Sistema <strong>di</strong> combustione . . . . . . . . . . . . . . . . . . 51<br />
3.2.2 Sistema post-trattamento . . . . . . . . . . . . . . . . 53<br />
3.2.3 Sensori ed attuatori . . . . . . . . . . . . . . . . . . . . 54<br />
3.2.4 I nuovi traguar<strong>di</strong> per i motori DISC . . . . . . . . . . . 55<br />
4 Modello ibrido per il controllo 58<br />
4.1 Modello non lineare del motore DISC . . . . . . . . . . . . . . 59<br />
4.1.1 Modello della valvola . . . . . . . . . . . . . . . . . . . 65<br />
4.2 Modello ibrido per il controllo . . . . . . . . . . . . . . . . . . 68<br />
4.2.1 Linearizzazione e <strong>di</strong>scretizzazione . . . . . . . . . . . . 68<br />
4.2.2 Vincoli . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />
4.2.3 Il modello MLD . . . . . . . . . . . . . . . . . . . . . . 75<br />
5 Progetto del controllore 77<br />
5.1 La strategia <strong>di</strong> controllo . . . . . . . . . . . . . . . . . . . . . 78<br />
5.1.1 Generazione dei riferimenti . . . . . . . . . . . . . . . . 78<br />
5.1.2 <strong>Controllo</strong> MPC ibrido in-linea del motore DISC . . . . 80<br />
5.2 Risultati del controllo in simulazione . . . . . . . . . . . . . . 83<br />
5.2.1 Carico computazionale MPC in-linea . . . . . . . . . . 93<br />
5.3 <strong>Controllo</strong> ibrido MPC esplicito . . . . . . . . . . . . . . . . . . 94<br />
5.3.1 Carico computazionale per controllo MPC in forma<br />
esplicita . . . . . . . . . . . . . . . . . . . . . . . . . . 96<br />
Conclusioni 98
In<strong>di</strong>ce iv<br />
A HYSDEL 101<br />
A.1 Il linguaggio Hysdel . . . . . . . . . . . . . . . . . . . . . . . . 102<br />
A.1.1 Sezioni AD e DA . . . . . . . . . . . . . . . . . . . . . . 102<br />
A.1.2 Sezione LOGIC . . . . . . . . . . . . . . . . . . . . . . . 103<br />
A.1.3 Sezione CONTINUOUS . . . . . . . . . . . . . . . . . . . 103<br />
A.1.4 Sezione AUTOMATA . . . . . . . . . . . . . . . . . . . . . 104<br />
A.1.5 Sezione MUST . . . . . . . . . . . . . . . . . . . . . . . 104<br />
A.2 Listato HYSDEL del motore DISC . . . . . . . . . . . . . . . 104<br />
Bibliografia 108<br />
In<strong>di</strong>ce analitico 112
Elenco delle figure<br />
1.1 Modello <strong>di</strong> <strong>un</strong> sistema ibrido . . . . . . . . . . . . . . . . . . . 10<br />
1.2 Schema <strong>di</strong> <strong>un</strong> <strong>di</strong>screte hybrid automata (DHA) . . . . . . . . . 12<br />
1.3 Esempio <strong>di</strong> macchina a stati finiti (FSM) . . . . . . . . . . . . 16<br />
1.4 Partizione poliedrica dello spazio degli stati . . . . . . . . . . 28<br />
2.1 Schema <strong>di</strong> controllo retroazionato . . . . . . . . . . . . . . . . 34<br />
2.2 Filosofia orizzonte recessivo . . . . . . . . . . . . . . . . . . . 36<br />
3.1 Schema pistone biella-manovella . . . . . . . . . . . . . . . . . 45<br />
3.2 Ciclo <strong>di</strong> f<strong>un</strong>zionamento <strong>di</strong> <strong>un</strong> motore a 4 tempi . . . . . . . . . 47<br />
3.3 Diagramma <strong>di</strong> anticipo/ritardo valvole . . . . . . . . . . . . . 49<br />
3.4 Motore ad iniezione <strong>di</strong>retta a benzina . . . . . . . . . . . . . . 50<br />
3.5 Immissione del carburante nel cilindro tramite iniettore . . . . 51<br />
3.6 Flusso della miscela aria-carburante in a) Modo Omogeneo, b)<br />
Modo Stratificato . . . . . . . . . . . . . . . . . . . . . . . . . 52<br />
3.7 Sistema <strong>di</strong> post-trattamento degli scarichi . . . . . . . . . . . 54<br />
4.1 Andamento del rapporto aria-carburante . . . . . . . . . . . . 61<br />
4.2 Andamento della coppia in f<strong>un</strong>zione <strong>di</strong> δ . . . . . . . . . . . . 63<br />
4.3 Blocco simulink del motore DISC . . . . . . . . . . . . . . . . 64<br />
4.4 Blocco simulink del motore DISC con <strong>di</strong>namica della valvola . 66<br />
4.5 Rapporto fra Ath e angolo della valvola . . . . . . . . . . . . . 67
Elenco delle figure vi<br />
5.1 Coppia del motore τ(t) (linea tratteggiata: valore desiderato,<br />
linea continua: risposta del modello non-lineare) . . . . . . . . 84<br />
5.2 Modo <strong>di</strong> combustione ρ(t) . . . . . . . . . . . . . . . . . . . . 85<br />
5.3 rapporto aria-carburante λ(t) (linea tratteggiata rossa: valore<br />
desiderato, linea continua: risposta del modello non-lineare,<br />
linea tratteggiata nera: vincolo su λ) . . . . . . . . . . . . . . 86<br />
5.4 Deviazione anticipo accensione candela da MBT δmbt − δ . . . 87<br />
5.5 Flusso d’aria attraverso la farfalla Wth(t) (linea tratteggiata:<br />
valore desiderato, linea continua: risposta del modello non-<br />
lineare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87<br />
5.6 Pressione nel collettore <strong>di</strong> aspirazione pm(t) (linea tratteggia-<br />
ta: valore desiderato, linea continua: risposta del modello<br />
non-lineare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88<br />
5.7 Flusso <strong>di</strong> carburante nei cilindri Wf(t) (linea tratteggiata: val-<br />
ore desiderato, linea continua: risposta del modello non-lineare 89<br />
5.8 Velocità <strong>di</strong> rotazione del motore ω . . . . . . . . . . . . . . . . 90<br />
5.9 Coppia del motore τ(t) (linea tratteggiata: valore desiderato,<br />
linea continua: risposta del modello non-lineare) . . . . . . . . 90<br />
5.10 Modo <strong>di</strong> combustione ρ(t) . . . . . . . . . . . . . . . . . . . . 91<br />
5.11 rapporto aria-carburante λ(t) (linea tratteggiata rossa: valore<br />
desiderato, linea continua: risposta del modello non-lineare,<br />
linea tratteggiata nera: vincolo su λ) . . . . . . . . . . . . . . 91<br />
5.12 Flusso d’aria attraverso la farfalla Wth(t) (linea tratteggiata:<br />
valore desiderato, linea continua: risposta del modello non-<br />
lineare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Elenco delle figure vii<br />
5.13 Pressione nel collettore <strong>di</strong> aspirazione pm(t) (linea tratteggia-<br />
ta: valore desiderato, linea continua: risposta del modello<br />
non-lineare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92<br />
5.14 Flusso <strong>di</strong> carburante nei cilindri Wf(t) (linea tratteggiata: val-<br />
ore desiderato, linea continua: risposta del modello non-lineare 93<br />
5.15 Deviazione anticipo accensione candela da MBT δmbt − δ . . . 94<br />
5.16 Cross-section sul pm-λref e traiettoria simulata in anello chiu-<br />
so. figura in alto: ρ = 1, figura in basso: ρ = 0 . . . . . . . . . 96<br />
5.17 Simulazione <strong>di</strong> controllo con orizzonte <strong>di</strong> controllo N = 2 . . . 97
Elenco delle tabelle<br />
1.1 Proposizioni logiche e forme equivalenti . . . . . . . . . . . . . 20<br />
1.2 Trasformazione prop. logiche in <strong>di</strong>suguaglianze intere . . . . . 21<br />
3.1 Sensori ed Attuatori motori DISC . . . . . . . . . . . . . . . . 55<br />
4.1 P<strong>un</strong>ti <strong>di</strong> lavoro per il modello linearizzato . . . . . . . . . . . 69
Introduzione<br />
L’evoluzione del mercato automobilistico <strong>di</strong> questi ultimi anni ha determina-<br />
to lo sviluppo <strong>di</strong> continue innovazioni tecnologiche orientate principalmente<br />
al contenimento dei consumi, incrementrando al contempo le caratteristiche<br />
prestazionali, con <strong>un</strong>a crescente attenzione alla sostenibilità ambientale. I<br />
protocolli sulle emissioni ratificati negli ultimi anni dai paesi industrializzati<br />
impongono politiche sempre più stringenti nei confronti delle emissioni dei<br />
gas <strong>di</strong> scarico. Per far fronte a tali esigenze i centri <strong>di</strong> ricerca automobilistici<br />
hanno focalizzato l’attenzione sulle tecnologie motoristiche, sia nelle compo-<br />
nenti meccaniche che <strong>di</strong> gestione elettronica.<br />
I motori ad iniezione <strong>di</strong>retta a benzina si inseriscono in questo contesto con<br />
l’intenzione <strong>di</strong> garantire <strong>un</strong>a netta riduzione dei consumi e parallelamente <strong>un</strong><br />
controllo più deciso sulle emissioni dei gas <strong>di</strong> scarico. Autoveicoli con tali<br />
tipi <strong>di</strong> motori sono ormai <strong>di</strong>ffusi nei mercati giapponese ed europeo e, più<br />
recentemente, anche in quello stati<strong>un</strong>itense.<br />
Questi motori hanno la capacità <strong>di</strong> garantire <strong>un</strong> miglioramento dei consu-<br />
mi <strong>di</strong> carburante fino al 15% superiore rispetto ai motori tra<strong>di</strong>zionali e <strong>un</strong>a<br />
maggiore riduzione delle emissioni <strong>di</strong> CO2 grazie ad <strong>un</strong> sofisticato sistema<br />
<strong>di</strong> post-trattamento dei gas <strong>di</strong> scarico. Queste caratteristiche possono es-<br />
sere ottenute perchè il carburante viene iniettato <strong>di</strong>rettamente all’interno del
Introduzione 3<br />
cilindro. Questo aggi<strong>un</strong>ge <strong>un</strong> grado <strong>di</strong> libertà all’intero sistema in quanto<br />
consente <strong>di</strong> decidere quando iniettare il carburante durante le fasi <strong>di</strong> f<strong>un</strong>-<br />
zionamento del motore. Come più recente evoluzione, il sistema preso in<br />
esame in questo lavoro è <strong>un</strong> motore <strong>di</strong> ultima generazione a iniezione <strong>di</strong>retta<br />
a carica stratificata DISC (Direct Injection Stratified Charge), del quale è<br />
stato fornito <strong>un</strong> complesso modello numerico proprietario dal Ford Research<br />
Laboratory. Se il carburante viene iniettato all’interno del cilindro durante<br />
la fase <strong>di</strong> aspirazione c’è tempo sufficiente per generare <strong>un</strong> miscela omogenea<br />
<strong>di</strong> aria-carburante e il motore si comporta come i tra<strong>di</strong>zionali motori a carbu-<br />
razione. Tale modo <strong>di</strong> f<strong>un</strong>zionamento viene in<strong>di</strong>cato come regime omogeneo.<br />
Se il carburante è iniettato all’interno del cilindro durante la fase <strong>di</strong> compres-<br />
sione non c’è tempo sufficiente affinché la benzina si mescoli perfettamente<br />
con l’aria e si genera <strong>un</strong>a miscela ricca <strong>di</strong> benzina vicino alla candela ma<br />
povera nel resto del cilindro. Tale modo <strong>di</strong> f<strong>un</strong>zionamento viene denominato<br />
regime stratificato del motore. Quest’ultimo modo <strong>di</strong> f<strong>un</strong>zionamento con-<br />
sente <strong>di</strong> ottenere quei miglioramenti sui consumi, ai quali precedentemente<br />
si è fatto riferimento, in quanto si possono iniettare quantità <strong>di</strong> carburante<br />
inferiori a quelle <strong>di</strong> <strong>un</strong> tra<strong>di</strong>zionale motore a carburazione. La possibilità <strong>di</strong><br />
far f<strong>un</strong>zionare il motore con meno benzina se da <strong>un</strong> lato comporta il grande<br />
beneficio <strong>di</strong> <strong>un</strong>a riduzione dei consumi dall’altro determina <strong>un</strong> aumento non<br />
accettabile <strong>di</strong> elementi nocivi nei gas <strong>di</strong> scarico. Per tale motivo, a valle del<br />
sistema <strong>di</strong> combustione viene introdotto <strong>un</strong> sistema <strong>di</strong> post-trattamento che<br />
cattura le emissioni <strong>di</strong> CO, HC e NOx. I catalizzatori che costituiscono il<br />
sistema <strong>di</strong> post-trattamento hanno <strong>un</strong>a grande capacità <strong>di</strong> acquisizione ma<br />
si saturano molto velocemente. Per poter rigenerare la loro capacità <strong>di</strong> ac-<br />
quisizione è necessario alternare al f<strong>un</strong>zionamento in regime stratificato fasi<br />
in cui il motore lavora in regime omogeneo.
Introduzione 4<br />
Risulta evidente come sia fondamentale gestire il passaggio dall’<strong>un</strong>o all’altro<br />
regime in modo da permettere sia <strong>un</strong>a riduzione dei consumi che delle emis-<br />
sioni dei gas <strong>di</strong> scarico. Tale gestione deve essere compiuta da <strong>un</strong> sistema <strong>di</strong><br />
controllo il quale a partire da misurazioni provenienti dai <strong>di</strong>versi sensori pre-<br />
senti nel motore deve coor<strong>di</strong>nare opport<strong>un</strong>amente gli elementi <strong>di</strong> attuazione<br />
della legge <strong>di</strong> comando. Il controllore <strong>di</strong>venta quin<strong>di</strong> l’elemento chiave per<br />
ottenere i suddetti benefici. L’obiettivo del controllo sviluppato nel lavoro <strong>di</strong><br />
tesi è stato quello <strong>di</strong> sod<strong>di</strong>sfare la richiesta <strong>di</strong> coppia del guidatore, espressa<br />
dal pedale dell’acceleratore, minimizzando il consumo <strong>di</strong> carburante e rispet-<br />
tando il corretto f<strong>un</strong>zionamento del catalizzatore con il conseguente rispetto<br />
delle normative sulle emissioni. Le variabili <strong>di</strong> controllo su cui la centralina<br />
agisce i modo coor<strong>di</strong>nato sono: la selezione della modalità <strong>di</strong> f<strong>un</strong>zionamento<br />
(segnale logico), il tempo <strong>di</strong> accensione della candela, l’apertura della valvola<br />
dell’aria e l’iniezione <strong>di</strong> carburante (segnali continui).<br />
La duplice natura del motore ed i molteplici obiettivi <strong>di</strong> controllo, assieme<br />
a vincoli sullo stato <strong>di</strong> f<strong>un</strong>zionamento, hanno determinato la necessità <strong>di</strong><br />
modellare il sistema secondo la teoria dei sistemi ibri<strong>di</strong>. Tale teoria con-<br />
sente <strong>di</strong> descrivere in <strong>un</strong> modo compatto elementi <strong>di</strong> natura <strong>di</strong>versa: par-<br />
ti continue, come ad esempio le <strong>di</strong>namiche del motore, parti <strong>di</strong>screte, ad<br />
esempio la centralina elettronica, e le interfacce fra queste due. Questi tipi<br />
<strong>di</strong> sistemi si presentano in molte situazioni <strong>di</strong> interesse pratico, dal controllo<br />
<strong>di</strong> processo [BTM01], ad applicazioni automobilistiche [BBFH01, GBTH06].<br />
Per i sistemi ibri<strong>di</strong> sono state descritte <strong>di</strong>verse tecniche <strong>di</strong> modellizzazione<br />
tra le quali ci sono i Discrete Hybrid Automata (DHA) [TB04], i sistemi<br />
Mixed Logical Dynamical (MLD) [BM99, BM01b], ed i sistemi Piecewise<br />
Affine (PWA) [Son81, HDB01]. Grazie alla proprietà <strong>di</strong> equivalenza tra<br />
le suddette classi <strong>di</strong> modelli ibri<strong>di</strong> si possono utilizzare in<strong>di</strong>stintamente la
Introduzione 5<br />
rappresentazione MLD, PWA, DHA e gli strumenti teorici sviluppati per<br />
l’<strong>un</strong>a o l’altra rappresentazione.<br />
I sistemi MLD risultano <strong>di</strong> particolare interesse per la sintesi <strong>di</strong> leggi <strong>di</strong><br />
controllo. In particolare ai sistemi ibri<strong>di</strong> è stato esteso il controllo pre<strong>di</strong>t-<br />
tivo, il quale si basa sulla ben nota filosofia ad orizzonte recessivo. Questa<br />
consiste nel risolvere ad ogni istante <strong>di</strong> campionamento <strong>un</strong> problema <strong>di</strong> min-<br />
imizzazione soggetto a vincoli su <strong>un</strong> orizzonte <strong>di</strong> pre<strong>di</strong>zione futuro. Della<br />
sequenza <strong>di</strong> ingressi ottima trovata viene applicato al sistema soltanto il pri-<br />
mo elemento e scartato tutto il resto. Il processo viene reiterato a tutti gli<br />
istanti successivi. Questa strategia se da <strong>un</strong> lato garantisce l’asintotica sta-<br />
bilità ad anello chiuso dall’altro non è adatta per l’applicazione su sistemi<br />
con tempo <strong>di</strong> campionamento molto ridotti, come ad esempio nelle appli-<br />
cazioni automobilistiche. Per tale motivo sono state sviluppate tecniche che<br />
consentono <strong>di</strong> spostare fuori linea la procedura <strong>di</strong> ottimizzazione, determi-<br />
nando la forma esplicita della legge <strong>di</strong> controllo [BBM00], che risulta essere<br />
<strong>un</strong>a f<strong>un</strong>zione PWA dello stato del sistema. Se da <strong>un</strong> lato l’azione <strong>di</strong> controllo<br />
compiuta dalla forma esplicita è esattamente identica a quella del controllo<br />
con ottimizzazione in linea, dall’altro il carico computazionale si riduce ad<br />
<strong>un</strong>a valutazione <strong>di</strong> f<strong>un</strong>zioni lineari affini piuttosto che alla soluzione <strong>di</strong> <strong>un</strong><br />
problema <strong>di</strong> minimizzazione.<br />
Questa tesi ha l’obiettivo <strong>di</strong> mostrare come la teoria ibrida precedentemente<br />
in<strong>di</strong>cata risulti <strong>un</strong> ottimo strumento per la modellizzazione ed il controllo<br />
dei moderni motori ad iniezione <strong>di</strong>retta a carica straificata. In particolare<br />
si è voluto <strong>di</strong>mostrare come il modello ibrido riesca a rappresentare com-<br />
piutamente la duplice natura del motore e come tale modello possa essere<br />
utilizzato per lo sviluppo <strong>di</strong> <strong>un</strong> efficace controllore. Si vedrà infine come la<br />
strategia <strong>di</strong> controllo, articolata in due fasi, riesca a sod<strong>di</strong>sfare le specifiche
Introduzione 6<br />
imposte e gli obiettivi desiderati e come sia possibile ridurre il carico computazionale<br />
al fine <strong>di</strong> implementare la legge <strong>di</strong> controllo in <strong>un</strong>a centralina elettronica<br />
automibilistica standard.<br />
Organizzazione della tesi<br />
La tesi è organizzata come segue.<br />
• Nel capitolo 1 introdurremo la teoria dei sistemi ibri<strong>di</strong>, descrivendo<br />
<strong>di</strong>versi modelli.<br />
• Nel capitolo 2 si evidenzierà come i modelli matematici introdotti nel<br />
capitolo 1 possano essere utilizzati per derivare il controllore. Una volta<br />
descritto il controllo in linea analizzeremo la sua traduzione in forma<br />
esplicita.<br />
• Nel capitolo 3 descriveremo i principi <strong>di</strong> f<strong>un</strong>zionamento <strong>di</strong> base dei<br />
motori a combustione interna e le caratteristiche dei motori ad iniezione<br />
<strong>di</strong>retta a carica stratificata.<br />
• Nel capitolo 4 descriveremo il modello non lineare del motore ad iniezione<br />
<strong>di</strong>retta e come tale descrizione venga tradotta nell’opport<strong>un</strong>a forma<br />
MLD. Nel capitolo 5 presenteremo la doppia strategia <strong>di</strong> controllo<br />
sviluppata e riporteremo <strong>di</strong>verse prove <strong>di</strong> simulazione mettendo in<br />
evidenza i risultati raggi<strong>un</strong>ti.<br />
• In appen<strong>di</strong>ce A riporteremo <strong>un</strong>a descrizione del linguaggio HYSDEL<br />
(HYbrid Systems DEscription Language) [TB04], utilizzato per la<br />
modellizzazione ibrida del motore, e mostreremo con quale eleganza e<br />
pulizia viene scritto <strong>un</strong> listato HYSDEL.
Introduzione 7<br />
Riferimenti<br />
I risultati <strong>di</strong> questa tesi sono stati pubblicati nell’articolo:<br />
• Hybrid Model Pre<strong>di</strong>ctive Control of Direct Injection Stratified Charge<br />
Engines, N.Giorgetti, G.Ripaccioli, A.Bemporad, I.V. Kolmanovsky,<br />
D.Hrovat. Accettato per la pubblicazione in “IEEE/ASME Transac-<br />
tion on Mechatronics”. Vol.11, no. 5, August 2006<br />
Il lavoro si è basato in gran parte sui contenuti apparsi in [GBKH05] e [Gio01].<br />
Ringraziamenti<br />
Un particolare ringraziamento va al Dr. Ing. Ilya Kolmanovsky e al Dr. Ing.<br />
Davor Hrovat dei Laboratori <strong>di</strong> Ricerca Ford per il supporto fornito durante<br />
tutto il lavoro <strong>di</strong> tesi. Al professor Alberto Bemporad, che mi ha seguito in<br />
questi mesi correggendo gli errori e dando sempre nuovi sp<strong>un</strong>ti e obiettivi, ma<br />
soprattutto per l’opport<strong>un</strong>ità che mi ha dato <strong>di</strong> compiere questo lavoro. Un<br />
grazie anche ai ragazzi del Laboratorio <strong>di</strong> Automatica (Fabio, Alessandro,<br />
Stefano, Marcello) per i consigli utili così come per i momenti <strong>di</strong> svago.<br />
In ultimo <strong>un</strong> sentito ringraziamento va all’ Dr. Ing. Giorgetti che mi ha<br />
p<strong>un</strong>tualmente seguito, ma soprattutto all’amico Nicolò che è sempre stato<br />
<strong>di</strong>sponibile per ogni tipo <strong>di</strong> aiuto e chiarimento, per le l<strong>un</strong>ghe conversazioni<br />
telefoniche, le frequenti e-mail inviate e ricevute negli orari più improbabili.
Capitolo 1<br />
Sistemi ibri<strong>di</strong><br />
L’analisi accurata <strong>di</strong> <strong>un</strong> qual<strong>un</strong>que fenomeno o sistema fisico passa attraverso<br />
<strong>un</strong>a sua descrizione me<strong>di</strong>ante il linguaggio matematico. L’in<strong>di</strong>viduazione del<br />
sistema fisico presenta larghi margini <strong>di</strong> arbitrarietà, si intuisce infatti che<br />
le interazioni fra le parti <strong>di</strong> <strong>un</strong> sistema possono essere <strong>un</strong> numero molto ele-<br />
vato, e non è detto che sia ottimale cercare <strong>di</strong> rappresentarle tutte. Cercare<br />
<strong>di</strong> modellare tutte le <strong>di</strong>namiche porta a livelli <strong>di</strong> complessità alti, <strong>di</strong> <strong>di</strong>fficile<br />
gestione. Per descrivere <strong>un</strong> sistema bisogna, d<strong>un</strong>que, definire innanzitutto<br />
gli aspetti che ci interessano del suo comportamento complessivo e valutare<br />
l’equilibrio ottimale, in relazione agli scopi dell’analisi, tra accuratezza della<br />
rappresentazione e semplicità <strong>di</strong> f<strong>un</strong>zionamento. Negli ultimi anni è cresciu-<br />
ta in molti campi <strong>di</strong> ricerca, dall’informatica, all’elettronica, al controllo <strong>di</strong><br />
processi, la necessità <strong>di</strong> integrare i classici modelli matematici, in grado <strong>di</strong><br />
descrivere le <strong>di</strong>namiche continue dei sistemi, con componenti logiche, descriv-<br />
ibili con macchine a stati finiti o regole if-then-else. Tali sistemi descritti<br />
da interconnessioni <strong>di</strong> sistemi <strong>di</strong>namici e <strong>di</strong>spositivi logici vengono definiti<br />
con il termine sistemi ibri<strong>di</strong>.
1.1 I modelli ibri<strong>di</strong> 9<br />
In questo capitolo verranno inquadrati teoricamente i sistemi ibri<strong>di</strong>, ap-<br />
profondendone le tematiche <strong>di</strong> modellistica e <strong>di</strong> analisi. Saranno presentate<br />
le <strong>di</strong>verse rappresentazioni matematiche necessarie per formalizzare modelli<br />
matematici <strong>di</strong> sistemi ibri<strong>di</strong> e saranno introdotti gli strumenti teorici, algorit-<br />
mici e <strong>di</strong> supporto che verranno utilizzati nei capitoli successivi per la sintesi<br />
del controllore <strong>di</strong> coppia per <strong>un</strong> motore ad iniezione <strong>di</strong>retta a benzina a carica<br />
stratificata.<br />
1.1 I modelli ibri<strong>di</strong><br />
Il concetto <strong>di</strong> modello <strong>di</strong> <strong>un</strong> sistema è tra<strong>di</strong>zionalmente associato a equazioni<br />
<strong>di</strong>fferenziali ed alle <strong>di</strong>fferenze, tipicamente derivate da leggi fisiche che gov-<br />
ernano le <strong>di</strong>namiche del sistema sotto stu<strong>di</strong>o, e la teoria e gli strumenti <strong>di</strong><br />
controllo sono stati sviluppati per questo tipo <strong>di</strong> sistemi. D’altra parte in<br />
molte applicazioni il sistema che deve essere controllato è costituito da com-<br />
ponenti logiche, come ad esempio valvole, interruttori, selettori <strong>di</strong> velocità.<br />
Spesso per questi tipi <strong>di</strong> sistemi la progettazione del controllo è basata su<br />
regole euristiche derivanti dalla conoscenza pratica del sistema da controllare.<br />
Recentemente i ricercatori hanno iniziato a trattare i sistemi ibri<strong>di</strong>, ovvero<br />
processi che evolvono secondo <strong>di</strong>namiche continue e regole logiche, in par-<br />
ticolare sistemi costituiti da <strong>di</strong>namiche <strong>di</strong>screte, in genere a più alto livello,<br />
come ad esempio <strong>di</strong>spositivi elettronici, e da parti continue, in genere a più<br />
basso livello, come ad esempio motori, ve<strong>di</strong> Figura 1.1.<br />
L’importanza e l’utilità dei modelli ibri<strong>di</strong> è legata al crescente impiego<br />
<strong>di</strong> controllori logici che interagiscono con <strong>di</strong>namiche continue, in campi che<br />
variano dall’automobilistico [BBFH01, GBTH06] alle applicazioni domestiche,<br />
e alla conseguente necessità <strong>di</strong> realizzare modelli adeguati che ne permettano
1.1 I modelli ibri<strong>di</strong> 10<br />
<strong>di</strong>screte<br />
inputs<br />
A/D<br />
continuous<br />
variables<br />
exogenous<br />
inputs<br />
<strong>di</strong>screte<br />
outputs<br />
Logic<br />
Interface<br />
Dynamics<br />
exogenous<br />
inputs<br />
D/A<br />
command<br />
inputs<br />
Figura 1.1: Modello <strong>di</strong> <strong>un</strong> sistema ibrido<br />
lo stu<strong>di</strong>o. Inoltre molti sistemi fisici hanno intrinsecamente <strong>un</strong>a natura ibri-<br />
da, o ben descrivibile come tale, <strong>un</strong> esempio sono i circuiti elettrici con <strong>di</strong>o<strong>di</strong>,<br />
così come le reti biomolecolari [ABI + 01] o le reti idriche [OMPQI06].<br />
Diverse classi <strong>di</strong> modelli ibri<strong>di</strong> sono state presentate in letteratura, tipica-<br />
mente sviluppate ad hoc per il sistema in esame. In questo lavoro abbiamo<br />
rappresentato il sistema ibrido tramite la classe degli automi ibri<strong>di</strong> <strong>di</strong>screti,<br />
<strong>di</strong>screte hybrid automata (DHA), introdotta in [TB04]. I modelli DHA sono<br />
<strong>un</strong>a rappresentazione matematica astratta che integra <strong>un</strong>a macchina a stati<br />
finiti, che descrive la parte logica, con <strong>un</strong>o switched affine system, che ne<br />
rappresenta le <strong>di</strong>namiche continue, e due elementi <strong>di</strong> interconnessione fra le<br />
parti. Per lo stu<strong>di</strong>o ed il controllo del sistema saranno utilizzate le classi<br />
<strong>di</strong> sistemi ibri<strong>di</strong> piecewise affine (PWA) e mixed logical dynamical systems<br />
(MLD) che maggiormente si prestano ai meto<strong>di</strong> numerici ricorsivi e speci-<br />
ficamente in<strong>di</strong>rizzate al dominio ibrido. Le suddette classi <strong>di</strong> modelli ibri<strong>di</strong><br />
sono equivalenti, sotto alc<strong>un</strong>e ipotesi, ed è quin<strong>di</strong> possibile rappresentare<br />
lo stesso sistema con modelli <strong>di</strong> ogni classe. In particolare le classi piece-<br />
wise affine e mixed logical dynamical systems permettono <strong>di</strong> effettuare analisi
1.2 DHA 11<br />
<strong>di</strong> osservabilità, <strong>di</strong> sviluppare controllori pre<strong>di</strong>ttivi ibri<strong>di</strong> come problemi <strong>di</strong><br />
minimizzazione mista intera.<br />
1.2 DHA<br />
Sistemi il cui comportamento <strong>di</strong>namico è dettato dall’interazione <strong>di</strong> <strong>di</strong>namiche<br />
continue con <strong>di</strong>namiche <strong>di</strong>screte sono stati stu<strong>di</strong>ati nell’ambito <strong>di</strong> teoria dei<br />
sistemi fin dagli anni 60. Sono presenti in letteratura vari articoli <strong>di</strong> quel<br />
periodo in cui si propongono e si stu<strong>di</strong>ano sistemi a <strong>di</strong>namiche miste; an-<br />
che ricercatori come Kalman hanno cercato <strong>di</strong> definire <strong>un</strong>a struttura formale<br />
matematica per sistemi <strong>di</strong> questo tipo [KFA69, Wit66]. Negli anni sono stati<br />
poi proposti <strong>di</strong>verse classi <strong>di</strong> modelli per sistemi ibri<strong>di</strong> sviluppati spesso ad<br />
hoc, quin<strong>di</strong> privi <strong>di</strong> generalità. A partire dagli anni 90 assistiamo ad <strong>un</strong><br />
moltiplicarsi <strong>di</strong> pubblicazioni in merito a questa classe <strong>di</strong> sistemi per l<strong>un</strong>go<br />
tempo trascurata, ed è poco più <strong>di</strong> <strong>un</strong> decennio che sono stati introdotti gli<br />
hybrid automata (si veda ad esempio [GNRR93]), i quali hanno fornito <strong>un</strong><br />
concreto approccio formale, utile in primo luogo per l’analisi e la verifica dei<br />
sistemi ibri<strong>di</strong>.<br />
In questa tesi ci siamo concentrati sulla rappresentazione <strong>di</strong>screte hybrid<br />
automata. I DHA sono costituiti dalla connessione <strong>di</strong> <strong>un</strong>a macchina a stati<br />
finiti, finite state machine (FSM) , che raccoglie le <strong>di</strong>namiche <strong>di</strong>screte del<br />
sistema ibrido, con <strong>un</strong>o switched affine system (SAS) , che rappresenta la<br />
parte continua delle <strong>di</strong>namiche ibride (ve<strong>di</strong> Figura 1.2).<br />
L’interazione fra le due parti è affidata a due elementi <strong>di</strong> connessione: il gener-<br />
atore <strong>di</strong> eventi, event generator (EG) e il selettore <strong>di</strong> modo, mode selector (MS).<br />
L’event generator prende i segnali continui della parte continua e genera dei<br />
segnali <strong>di</strong>screti. Tali segnali <strong>di</strong>screti poi, insieme ad altri ingressi <strong>di</strong>screti
1.2 DHA 12<br />
δe(k)<br />
ub(k)<br />
(FSM)<br />
Finite<br />
State Machine<br />
C<br />
xb(k)<br />
ub(k)<br />
δe(k)<br />
(EG)<br />
Event xr(k)<br />
Generator<br />
ur(k)<br />
B<br />
D<br />
ur(k)<br />
(MS)<br />
Mode<br />
Selector<br />
i(k)<br />
(SAS)<br />
Switched<br />
Affine<br />
System<br />
Figura 1.2: Schema <strong>di</strong> <strong>un</strong> <strong>di</strong>screte hybrid automata (DHA)<br />
esterni, attivano il cambiamento <strong>di</strong> stato della macchina a stati finiti, finite<br />
state machine. Il mode selector combina tutte le varie componenti <strong>di</strong>screte<br />
per selezionare il modo operativo, ossia le <strong>di</strong>namiche continue, del sistema<br />
switched affine.<br />
Di seguito, ponendo che ogni variabile <strong>di</strong>screta che può assumere j possibili<br />
valori α ∈ {α1,...,αj} ammette <strong>un</strong>a co<strong>di</strong>fica binaria del tipo α ∈ {0, 1} d(j)<br />
dove d(j) è il numero <strong>di</strong> bit usato per rappresentare i possibili valori <strong>di</strong> α, ci<br />
riferiremo a <strong>un</strong>a variabile o alla sua co<strong>di</strong>fica binaria in<strong>di</strong>stintamente.<br />
1<br />
s-1<br />
s<br />
A
1.2 DHA 13<br />
A. Swiched Affine System<br />
Lo switched affine system è costituito da <strong>un</strong>a collezione <strong>di</strong> <strong>di</strong>namiche<br />
continue. Tra tali <strong>di</strong>namiche viene selezionata dal MS quella che rap-<br />
presenta l’evoluzione del sistema rispetto al modo attuale. Definiamo<br />
più formalmente il SAS come <strong>un</strong> insieme <strong>di</strong> sistemi lineari affini del<br />
tipo:<br />
x ′ r(k) = Ai(k)xr(k) + Bi(k)ur(k) + fi(k)<br />
yr(k) = Ci(k)xr(k) + Di(k)ur(k) + gi(k)<br />
dove k è <strong>un</strong> numero intero e rappresenta il tempo e<br />
x ′ r(k) = xr(k + 1).<br />
(1.1a)<br />
(1.1b)<br />
Inoltre si in<strong>di</strong>ca con xr ∈ X ⊆r R nr il vettore degli stati continui,<br />
con ur ∈ U ⊆r R mr il vettore degli ingressi continui esogeni e con<br />
yr ∈ Y ⊆r R pr il vettore delle uscite continue; mentre {Ai,Bi,fi,Ci,Di,gi}i∈I<br />
è <strong>un</strong> insieme <strong>di</strong> matrici <strong>di</strong> opport<strong>un</strong>e <strong>di</strong>mensioni.<br />
i(k) rappresenta invece il modo del sistema, i(k) ∈ I {1,...,s}) è<br />
il segnale che il SAS riceve in ingresso dal mode selector che seleziona<br />
<strong>un</strong>a delle s <strong>di</strong>namiche affini del sistema.<br />
Un SAS può essere equivalentemente espresso come <strong>un</strong>a combinazione<br />
<strong>di</strong> equazioni lineari con regole del tipo if-then-else, in questo modo<br />
la 1.1a si può riscrivere come:
1.2 DHA 14<br />
z1(k) =<br />
.<br />
zs(k) =<br />
⎧<br />
⎨<br />
⎩<br />
⎧<br />
⎨<br />
⎩<br />
x ′ r(k) = s<br />
zi(k)<br />
i=1<br />
A1xr(k) + B1ur(k) + f1, if (i(k) = 1)<br />
0, altrimenti<br />
Asxr(k) + Bsur(k) + fs, if (i(k) = s)<br />
0, altrimenti<br />
(1.2)<br />
dove zi(k) ∈ R nr con i = {1,...,s}, e analogamente può essere trasfor-<br />
mata l’equazione <strong>di</strong> uscita (1.1b).<br />
B. Event Generator<br />
Il generatore <strong>di</strong> eventi è l’elemento <strong>di</strong> interconnessione fra la parte<br />
continua e la parte logica rappresentata dalla macchina a stati finiti;<br />
ha come ingressi i segnali continui xr(k) e ur(k), rispettivamente il<br />
vettore <strong>di</strong> stati continui prodotto in uscita dal SAS e il vettore <strong>di</strong><br />
ingressi continui esogeni. L’EG genera <strong>un</strong> segnale logico in modo che<br />
vengano sod<strong>di</strong>sfatti i vincoli lineari affini:<br />
δe(k) = fH(xr(k),ur(k),k), (1.3)<br />
dove fH è <strong>un</strong> vettore <strong>di</strong> f<strong>un</strong>zioni che descrivono <strong>un</strong> iperpiano lineare:<br />
fH : Xr × Ur × Z + → D ⊆ {0, 1} ne . (1.4)<br />
Nei sistemi ibri<strong>di</strong> i cambiamenti <strong>di</strong> stato logico possono avvenire in<br />
conseguenza dell’evoluzione temporale o in seguito al superamento <strong>di</strong><br />
valori <strong>di</strong> soglia fissati. In particolare gli eventi temporali (time events),
1.2 DHA 15<br />
ossia gli eventi legati al tempo, sono modellati come in (1.5a), dove Ts<br />
è il tempo <strong>di</strong> campionamento e t0 è <strong>un</strong> determinato istante. Mentre<br />
i cambiamenti legati al superamento <strong>di</strong> soglie (threshold events) sono<br />
modellati come in (1.5b), dove ∗ i rappresenta l’ i-esima componente<br />
del vettore <strong>di</strong> f<strong>un</strong>zioni.<br />
C. Finite State Machine<br />
δ i e = 1 −→[kTs ≥ t0], (1.5a)<br />
δ i e = 1 −→[a T xr(k) + b t ur(k) ≤ c] (1.5b)<br />
Una macchina a stati finiti rappresenta <strong>un</strong> processo a <strong>di</strong>namiche <strong>di</strong>s-<br />
crete che evolve secondo <strong>un</strong>a f<strong>un</strong>zione logica <strong>di</strong> aggiornamento dello<br />
stato (1.6a) e a cui può essere associata <strong>un</strong>a uscita boolena (1.6b)<br />
x ′ b(k) = fB(xb(k),ub(k),δe(k)) (1.6a)<br />
yb(k) = gB(xb(k),ub(k),δe(k)) (1.6b)<br />
Dove le variabili in<strong>di</strong>cate con il pe<strong>di</strong>ce ∗b sono booleane, xb variabile <strong>di</strong><br />
stato e ub ingresso esogeno. δe(k) è l’ingresso proveniente dal generatore<br />
<strong>di</strong> eventi EG e<br />
fB : Xb × Ub × D → Xb<br />
è <strong>un</strong>a f<strong>un</strong>zione logica così come gB.<br />
Una macchina a stati finiti trova nei grafi la sua rappresentazione più<br />
intuitiva, ve<strong>di</strong> Figura 1.3, gli stati logici costituiscono i no<strong>di</strong>, mentre<br />
gli archi sono rappresentati dalle con<strong>di</strong>zioni <strong>di</strong> cambiamento <strong>di</strong> stato<br />
legate agli ingressi esogeni (ub(k)) ed endogeni (δb(k)).
1.2 DHA 16<br />
¬δ2 ∨ ub1<br />
¬δ1 ∨ ¬ub2<br />
xb2<br />
¬δ1<br />
xb1<br />
¬δ2<br />
¬δ1<br />
ub1 ∧ ¬δ3<br />
ub1 ∧ δ2<br />
xb3<br />
¬ub2 ∧ δ1<br />
Figura 1.3: Esempio <strong>di</strong> macchina a stati finiti (FSM)<br />
D. Mode Selector<br />
Il blocco <strong>di</strong> interconnessione fra la macchina a stati finiti e la parte a<br />
<strong>di</strong>namiche continue ha come ingressi lo stato logico attuale dell’FSM<br />
xb(k), l’input logico esogeno ub(k) e il segnale logico δe(k) generato<br />
dall’EG tramite i quali seleziona la <strong>di</strong>namica da attivare nel SAS.<br />
L’uscita i(k) della f<strong>un</strong>zione booleana fM<br />
i(k) = fM(xb(k),ub(k),δe(k)), (1.7)<br />
è definita modo attivo. Il cambiamento <strong>di</strong> modo avviene al tempo <strong>di</strong><br />
campionamento k se i(k) = i(k − 1). Diversamente dai modelli ibri<strong>di</strong><br />
a tempo continuo negli automi <strong>di</strong>screti ibri<strong>di</strong> il cambiamento <strong>di</strong> modo<br />
può avvenire solo in corrispondenza degli istanti <strong>di</strong> campionamento.<br />
Nei sistemi DHA è inoltre possibile definire delle <strong>di</strong>namiche speciali che ven-<br />
gono attivate per <strong>un</strong> singolo tempo <strong>di</strong> campionamento in corrispondenza del<br />
cambio <strong>di</strong> modo. Tali <strong>di</strong>namiche sono chiamate mappe <strong>di</strong> reset (reset maps) 1 .<br />
1 Per <strong>un</strong>a trattazione in merito estesa si veda [TB04].
1.2 DHA 17<br />
1.2.1 Proprietà dei DHA<br />
Date le con<strong>di</strong>zioni iniziali del sistema<br />
gli ingressi<br />
⎡<br />
⎡<br />
⎣ xr(0)<br />
xb(0)<br />
⎣ ur(k)<br />
ub(k)<br />
⎤<br />
⎤<br />
⎦ ∈ Xr × Xb, (1.8)<br />
⎦ ∈ Ur × Ub ∈ Z + , (1.9)<br />
lo stato del sistema x(k), k ∈ Z + , viene calcolato ricorsivamente:<br />
Passo 1): Inizializzazione<br />
Passo 2): Parte ricorsiva<br />
Ben Postezza<br />
x(0) =<br />
⎡<br />
⎣ xr(0)<br />
xb(0)<br />
⎤<br />
⎦ ;<br />
δe(k) = fH(xr(k),ur(k),k);<br />
i(k) = fM(xb(k),ub(k),δe(k));<br />
yr(k) = Ci(k)xr(k) + Di(k)ur(k) + gi(k);<br />
yb(k) = gB(xb(k),ub(k),δe(k));<br />
x ′ r(k) = Ai(k)xr(k) + Bi(k)ur(k) + fi(k);<br />
x ′ b (k) = fB(xb(k),ub(k),δe(k));<br />
E’ opport<strong>un</strong>o adesso introdurre la definizione <strong>di</strong> ben-postezza <strong>di</strong> <strong>un</strong> DHA.<br />
Definizione 1.1. Un DHA è ben⎡posto su Xr × Xb, Ur × Ub, Yr × Yb se per<br />
tutte le con<strong>di</strong>zioni iniziali x(0) = ⎣ xr(0)<br />
⎤<br />
⎦ ∈ Yr × Yb, e per tutti i k ∈ Z<br />
xb(0)<br />
+ ,
1.3 Sistemi MLD 18<br />
l’evoluzione dello stato x(k) =<br />
y(k) =<br />
⎡<br />
⎣ yr(k)<br />
yb(k)<br />
⎤<br />
⎡<br />
⎣ xr(k)<br />
xb(k)<br />
⎤<br />
⎦ ∈ Xr × Xb e la traiettoria <strong>di</strong> uscita<br />
⎦ ∈ Yr × Yb sono <strong>un</strong>ivocamente definite.<br />
In generale non è detto che <strong>un</strong> modello ibrido sia ben posto secondo la<br />
definizione (1.1), poichè le traiettorie potrebbero interrompersi dopo <strong>un</strong> tem-<br />
po finito (ad esempio nel caso in cui il vettore <strong>di</strong> stato x(k) esca dall’insieme<br />
Xr ×Xb), oppure a causa <strong>di</strong> non-determinismo (l’evoluzione dello stato x ′ r(k),<br />
x ′ b (k) potrebbe essere non <strong>un</strong>icamente definito).<br />
I DHA, per come sono definiti, sono deterministici e non ammettono tran-<br />
sizioni <strong>di</strong> modo istantanee, poichè tempo-<strong>di</strong>screti. In conseguenza <strong>di</strong> ciò<br />
i DHA non ammettono fenomeni <strong>di</strong> live-locks (transizioni infinite in tempo<br />
nullo), nè i comportamenti <strong>di</strong> Zeno [JELS99] (transizioni infinite in <strong>un</strong> tempo<br />
finito).<br />
1.3 Sistemi MLD<br />
I DHA sono <strong>un</strong>a astrazione matematica dei modelli ibri<strong>di</strong> molto intuitiva<br />
e rappresentativa del f<strong>un</strong>zionamento e dell’interazione fra la componente a<br />
<strong>di</strong>namiche <strong>di</strong>screte e quella a <strong>di</strong>namiche continue. Inoltre è il formalismo<br />
che viene impiegato in HYSDEL (HYbrid Systems DEscription Language) 2<br />
[TB04], <strong>un</strong> linguaggio ad alto livello che consente <strong>di</strong> descrivere i DHA e<br />
<strong>di</strong> inserire ulteriori vincoli sulle variabili caratterizzanti il sistema ibrido.<br />
Il compilatore <strong>di</strong> HYSDEL consente <strong>di</strong> tradurre la descrizione del sistema<br />
ibrido in altre classi <strong>di</strong> sistemi. In particolare il nostro interesse è rivolto<br />
2 ve<strong>di</strong> Appen<strong>di</strong>ce A
1.3 Sistemi MLD 19<br />
verso modelli maggiormente orientati al calcolo numerico e allo sviluppo <strong>di</strong><br />
strategie <strong>di</strong> controllo basate su tecniche pre<strong>di</strong>ttive. Queste richieste sono<br />
sod<strong>di</strong>sfatte dai sistemi MLD [BM99] (Mixed Logical Dynamical) descritti da<br />
equazioni <strong>di</strong>namiche lineari soggette a <strong>di</strong>suguaglianze lineari miste intere, cioè<br />
<strong>di</strong>suguaglianze che coinvolgono sia variabili intere che binarie. I sistemi MLD<br />
generalizzano <strong>un</strong> ampio insieme <strong>di</strong> modelli, tra i quali ci sono i sistemi ibri<strong>di</strong>,<br />
le macchine a stati finiti, alc<strong>un</strong>e classi <strong>di</strong> sistemi ad eventi <strong>di</strong>screti, sistemi<br />
lineari vincolati, e sistemi non lineari le cui non linearità possono essere<br />
descritte da f<strong>un</strong>zioni lineari a tratti. In questo capitolo focalizzeremo anche<br />
l’attenzione sull’equivalenza fra DHA e sistemi MLD e su come sia possibile<br />
passare da <strong>un</strong>a descrizione all’altra [TB04, BM99, MLMH94, RG91].<br />
1.3.1 Calcolo proposizionale e programmazione mista<br />
intera<br />
La traduzione <strong>di</strong> proposizioni logiche in <strong>un</strong> problema <strong>di</strong> ottimizzazione a vari-<br />
abili intere si basa sulla possibilità <strong>di</strong> trasformare <strong>un</strong>a proposizione logica in<br />
<strong>un</strong> sistema <strong>di</strong> vincoli lineari interi tali che sia mantenuta l’equivalenza logica<br />
delle espressioni tradotte [BM99, MLMH94, Mig01]. Il sistema risultante <strong>di</strong><br />
vincoli deve avere la stessa tabella <strong>di</strong> verità della proposizione originale, cioè,<br />
la verità o la falsità della proposizione è rappresentata dal sod<strong>di</strong>sfacimento o<br />
meno del corrispondente insieme <strong>di</strong> <strong>di</strong>suguaglianze lineari.<br />
In<strong>di</strong>chiamo con Pj la j-esima variabile logica che assume i valori “T” (true)<br />
o “F” (false) e rappresenta <strong>un</strong>a proposizione atomica descrivente <strong>un</strong>’azione<br />
o <strong>un</strong>a decisione. Associamo <strong>un</strong>a variabile intera con ogni tipo <strong>di</strong> azione (o<br />
decisione). Questa variabile, a cui ci si riferisce con il termine variabile<br />
binaria, è in<strong>di</strong>cata con δj e può assumere solo due valori: 1 o 0.
1.3 Sistemi MLD 20<br />
La connessione <strong>di</strong> questa variabile con la variabile Pj è definita da<br />
⎧<br />
⎨ 1 se Pj = T<br />
δj =<br />
⎩ 0 se Pj = F .<br />
Le variabili logiche possono essere <strong>un</strong>ite in modo da formare proposizioni<br />
più complesse tramite connettivi logici : “∧” (and), “∨” (or), “∼” (not),<br />
“→” (implica), “↔” (se e solo se), “⊕”(or esclusivo) (<strong>un</strong> trattamento più<br />
completo del calcolo booleano può essere trovato nei testi <strong>di</strong> progetto <strong>di</strong> cir-<br />
cuiti <strong>di</strong>gitali, ad esempio [Kat93]). Semplici proposizioni logiche e loro forme<br />
equivalenti sono in<strong>di</strong>cate in Tabella 1.1. E’ noto che tutti i connettivi pos-<br />
sono essere definiti in termini <strong>di</strong> <strong>un</strong> loro sottoinsieme, ad esempio {∨, ∼}, il<br />
quale è detto essere <strong>un</strong> insieme completo <strong>di</strong> connettivi.<br />
Proposizione Forma equivalente<br />
∼∼ P P<br />
(P ⊕ Q) (∼ P ∧ Q) ∨ (P ∧ ∼ Q) Esclusione<br />
∼ (P ∨ Q) ∼ P ∧ ∼ Q Leggi <strong>di</strong> De Morgan<br />
∼ (P ∧ Q) ∼ P ∨ ∼ Q<br />
P → Q ∼ P ∨ Q Implicazione<br />
Tabella 1.1: Proposizioni logiche e forme equivalenti<br />
Le proposizioni logiche elementari possono essere tradotte in <strong>di</strong>suguaglianze<br />
intere, come illustrato in Tabella 1.2, per <strong>un</strong> elenco più dettagliato vedere<br />
[MLMH94, Mig01].<br />
In generale <strong>un</strong>a proposizione logica può essere definita come <strong>un</strong>a f<strong>un</strong>zione logica<br />
quando è utilizzata per definire <strong>un</strong>a variabile logica Pn come <strong>un</strong>a f<strong>un</strong>zione <strong>di</strong><br />
P1,. . . ,Pn−1,<br />
Pn = f(P1,...,Pn−1) . (1.10)
1.3 Sistemi MLD 21<br />
Proposizione Vincolo<br />
∼ P δ1 = 0<br />
P1 ∨ P2<br />
P1 ∧ P2<br />
P1 → P2<br />
P1 ↔ P2<br />
δ1 + δ2 ≥ 1<br />
δ1 = 1, δ2 = 1<br />
δ1 − δ2 ≤ 0<br />
δ1 − δ2 = 0<br />
Tabella 1.2: Trasformazione prop. logiche in <strong>di</strong>suguaglianze intere<br />
L’equazione (1.10) può essere tradotta in forma normale congi<strong>un</strong>tiva (CNF)<br />
⎛<br />
k<br />
⎝ <br />
j=1<br />
i∈Pj<br />
δi<br />
<br />
i∈Nj<br />
∼ δi<br />
⎞<br />
⎠ ,Nj,Pj ⊆ {1,...,n} (1.11)<br />
e successivamente in <strong>un</strong> insieme <strong>di</strong> <strong>di</strong>suguaglianze lineari intere [RG91] 3<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
1 ≤ <br />
.<br />
1 ≤ <br />
i∈P1 δi + <br />
i∈Pk δi + <br />
i∈N1<br />
(1 − δi)<br />
i∈Nk (1 − δi) .<br />
(1.12)<br />
Una variabile binaria può essere definita in f<strong>un</strong>zione <strong>di</strong> <strong>un</strong>a con<strong>di</strong>zione del<br />
tipo<br />
[δ = 1] ←→ [f(x) ≤ 0] (1.13)<br />
dove f(x) : R n → R è <strong>un</strong>a f<strong>un</strong>zione lineare e x ∈ X, dove X è <strong>un</strong> insieme<br />
3 Un metodo alternativo <strong>di</strong> traduzione delle f<strong>un</strong>zioni logiche in <strong>di</strong>suguaglianze lineari<br />
intere è dato in [MBM99] e si basa su <strong>un</strong>a descrizione geometrica della tabella <strong>di</strong> verità.
1.3 Sistemi MLD 22<br />
limitato. Per tradurre la precedente equivalenza in <strong>di</strong>suguaglianze lineari<br />
miste intere è necessario conoscere <strong>un</strong> limite superiore ed <strong>un</strong>o inferiore della<br />
f<strong>un</strong>zione f(x)<br />
L’equivalenza (1.13) si traduce in<br />
⎧<br />
⎨ f(x) ≤ M(1 − δ)<br />
⎩<br />
M ≥ maxf(x)<br />
(1.14a)<br />
x∈X<br />
m ≤ min f(x) . (1.14b)<br />
x∈X<br />
f(x) ≥ ɛ + (m − ɛ)δ<br />
dove ɛ è <strong>un</strong>a piccola tolleranza (tipicamente la precisione <strong>di</strong> macchina).<br />
(1.15)<br />
Un’altra possibile descrizione <strong>di</strong> proposizioni logiche è il vincolo logico nella<br />
forma <strong>di</strong> implicazione, LCIF (Logic Constraint Implication Form), ovvero<br />
<strong>un</strong>a combinazione logica <strong>di</strong> semplici vincoli, definito come<br />
if antecedente then conseguente1<br />
else conseguente2<br />
dove antecedente è <strong>un</strong>a variabile binaria e conseguente1 \ conseguente2 è<br />
<strong>un</strong> vincolo lineare. Un tale vincolo logico può essere sempre tradotto in <strong>un</strong><br />
problema misto intero. Consideriamo ad esempio il seguente vincolo LCIF<br />
if δ then z = a ′ 1x − b1<br />
else z = a ′ 2x − b2<br />
dove δ ∈ {0, 1}, z ∈ R, x ∈ X. Il vincolo può essere tradotto come<br />
(m2 − M1)δ + z ≤ a ′ 2x − b2<br />
(m1 − M2)δ − z ≤ −a ′ 2x + b2<br />
(m1 − M2)(1 − δ) + z ≤ a ′ 1x − b1<br />
(m2 − M1)(1 − δ) − z ≤ −a ′ 1x + b1 ,<br />
(1.16)
1.3 Sistemi MLD 23<br />
dove<br />
Mi ≥ sup(a<br />
x∈X<br />
′ ix − bi), mi ≤ inf<br />
x∈X (a′ ix − bi), i = 1, 2<br />
sono i limiti superiori ed inferiori, rispettivamente, <strong>di</strong> (a ′ ix − bi). Ulteriori<br />
esempi <strong>di</strong> traduzione <strong>di</strong> proposizioni logiche in problemi misti interi possono<br />
essere trovati in [BM99].<br />
1.3.2 Sistemi MLD<br />
Le traduzioni illustrate nella sezione precedente sono alla base per la de-<br />
scrizione delle varie parti che compongono <strong>un</strong> sistema ibrido, riportato in<br />
Figura 1.1.<br />
Le parti logiche del sistema, automa ed eventuali proposizioni logiche, pos-<br />
sono essere tradotte in <strong>un</strong> insieme <strong>di</strong> vincoli lineari interi della forma (1.12).<br />
La legge <strong>di</strong> aggiornamento degli stati dell’automa può essere infatti descritta<br />
da proposizioni logiche comprendenti stati binari, i loro aggiornamenti tem-<br />
porali e segnali binari esterni, sotto l’ipotesi che le transizioni da <strong>un</strong>o stato<br />
all’altro siano sincronizzate con il tempo <strong>di</strong> campionamento delle equazioni<br />
<strong>di</strong>namiche continue:<br />
xl(k + 1) = F(xl(k),ul(k)),<br />
xl ∈ {0, 1} nl,ul ∈ {0, 1} ml, dove ul è l’insieme <strong>di</strong> ingressi che comandano la<br />
transizione da <strong>un</strong>o stato all’altro dell’automa.<br />
L’interfaccia che collega segnali continui a eventi <strong>di</strong>screti (A/D) può essere<br />
descritta tramite relazioni del tipo (1.13) e tradotta nell’insieme <strong>di</strong> vincoli<br />
lineari misti interi (1.15).<br />
L’interfaccia che collega eventi <strong>di</strong>screti a variabili continue (D/A) può es-<br />
sere descritta tramite la forma LCIF e viene tradotta nell’insieme dei vincoli<br />
lineari misti interi del tipo (1.16).
1.3 Sistemi MLD 24<br />
Infine, la <strong>di</strong>namica continua viene descritta da equazioni alle <strong>di</strong>fferenze, del<br />
tipo:<br />
x(k + 1) = Ax(k) + Bu(k) (1.17a)<br />
y(k) = Cx(k) + Du(k) . (1.17b)<br />
Se da <strong>un</strong> lato la modellizzazione tempo-<strong>di</strong>screto non consente <strong>di</strong> catturare<br />
fenomeni che avvengono solo nei sistemi ibri<strong>di</strong> tempo-continuo, come i com-<br />
portamenti <strong>di</strong> Zeno [JELS99], dall’altro essa consente <strong>di</strong> sviluppare schemi<br />
numericamente trattabili per risolvere problemi complessi <strong>di</strong> analisi e sintesi.<br />
E’ da osservare inoltre che la trattazione lineare non è limitativa dato che<br />
sistemi non lineari possono essere ricondotti a f<strong>un</strong>zioni lineari a tratti secon-<br />
do tecniche derivanti dalla letteratura dei circuiti <strong>di</strong>gitali [CD88, JJD98].<br />
Raccogliendo le uguaglianze e le <strong>di</strong>suguaglianze derivanti dalle rappresen-<br />
tazioni delle varie componenti del sistema ibrido si ottiene la forma generale<br />
<strong>di</strong> <strong>un</strong> sistema MLD [BM99, BM01b]<br />
x(k + 1) = Ax(k) + B1u(k) + B2δ(k) + B3z(k) (1.18a)<br />
y(k) = Cx(k) + D1u(k) + D2δ(k) + D3z(k) (1.18b)<br />
E2δ(k)+E3z(k) ≤ E1u(k) + E4x(k) + E5<br />
(1.18c)<br />
dove x ∈ R nc ×{0, 1} nℓ è <strong>un</strong> vettore <strong>di</strong> stati continui e binari, u ∈ R mc × {0, 1} mℓ<br />
sono gli ingressi, y ∈ R pc × {0, 1} pℓ le uscite, δ ∈ {0, 1} rℓ, z ∈ R rc rappre-<br />
sentano rispettivamente variabili ausiliarie binarie e continue, che sono in-<br />
trodotte nella trasformazione delle relazioni logiche in <strong>di</strong>suguaglianze lineari<br />
miste intere, e A, B1−3, C, D1−3, E1−5 sono matrici <strong>di</strong> <strong>di</strong>mensioni compatibili.
1.3 Sistemi MLD 25<br />
In appen<strong>di</strong>ce A è descritto il linguaggio HYSDEL (HYbrid Systems DE-<br />
scription Language) che consente <strong>di</strong> generare automaticamente modelli MLD<br />
in Matlab a partire da <strong>un</strong>a descrizione in forma DHA.<br />
1.3.3 Proprietà dei sistemi MLD<br />
Ben Postezza<br />
In linea teorica i vincoli (4.18c) possono essere sod<strong>di</strong>sfatti per molteplici<br />
valori <strong>di</strong> δ(k) e z(k); d’altra parte per garantire l’<strong>un</strong>icità delle traiettorie<br />
è necessario che <strong>un</strong>a volta fissati x(k) e u(k) possano essere determinati<br />
<strong>un</strong>ivocamente δ(k) e z(k), i quali sostituiti in (4.18a) e (4.18b) permettono<br />
<strong>di</strong> ricavare <strong>un</strong> <strong>un</strong>ico valore per x(k + 1) e y(k). Per tale scopo si fornisce la<br />
seguente:<br />
Definizione 1.2. Sia IB l’insieme degli in<strong>di</strong>ci i ∈ {1,...,rl} tali che [B2] i = 0.<br />
([B2] i denota la i-esima colonna <strong>di</strong> B2). Siano ID, JB e JD definiti in mo-<br />
do analogo, raccogliendo gli in<strong>di</strong>ci delle colonne non nulle <strong>di</strong> D2, B3 e D3<br />
<br />
rispettivamente. Sia I = IB ID e J = JB JD. Un sistema MLD (4.18)<br />
è detto ben posto se:<br />
• x(k) e u(k) sod<strong>di</strong>sfano le (4.18c) per qualche δ(k) ∈ {0, 1} rl, z(k) ∈ R rc<br />
e xl(k + 1) ∈ {0, 1} nl, yl(k) ∈ {0, 1} pl;<br />
• ∀i ∈ I e ∀j ∈ J la i-esima componente δi(k) e la j-esima componente<br />
zj(k) sono <strong>un</strong>ivocamente determinate da x(k) e u(k).<br />
Definizione 1.3. Un sistema è completamente ben posto se è ben posto e se<br />
I = {1,...,rl} e J = {1,...,rc}.<br />
Da ora in poi si assumerà che il sistema (4.18) sia ben posto 4 nel senso<br />
4 In [BM99] è descritto <strong>un</strong> semplice algoritmo per testare se <strong>un</strong> sistema è ben posto.
1.3 Sistemi MLD 26<br />
che <strong>un</strong>a volta assegnate x(k) e u(k), x(k + 1) e y(k) saranno <strong>un</strong>ivocamente<br />
definite. In particolare sarà in<strong>di</strong>cato con x(k,k0,x0,u k−1<br />
) la traiettoria gen-<br />
k0<br />
erata da (4.18) applicando la sequenza d’ingressi u(k0), u(k0+1), . . . , u(k−1)<br />
a partire dallo stato iniziale x(k0) = x0.<br />
Stabilità dei sistemi MLD<br />
Se si assume che<br />
<br />
xu<br />
xu n+m<br />
∈ C ∈ R : Fx + Gu ≤ H<br />
(1.19)<br />
con C insieme limitato 5 si possono estendere tutte le definizioni <strong>di</strong> stabilità<br />
standard ai sistemi MLD.<br />
Definizione 1.4. Un vettore xe ∈ R nc × {0, 1} nℓ è detto stato <strong>di</strong> equilibrio<br />
per (4.18) e l’ingresso ue ∈ R mc ×{0, 1} mℓ se [x ′ e u ′ e] ′ ∈ C e x(k,k0,xe,ue) = xe,<br />
∀k ≥ k0, ∀k0 ∈ Z. La coppia (xe,ue) è detta coppia <strong>di</strong> equilibrio.<br />
Definizione 1.5. Data <strong>un</strong>a coppia <strong>di</strong> equilibrio (xe,ue), xe ∈ R nc × {0, 1} nℓ<br />
si <strong>di</strong>ce stabile se, dato k0 ∈ Z, ∀ɛ > 0 ∃δ(ɛ,k0) tale che<br />
x0 − xe ≤ δ ⇒ x(k,k0,x0,ue) − xe ≤ ɛ, ∀k ≥ k0.<br />
Definizione 1.6. Data <strong>un</strong>a coppia <strong>di</strong> equilibrio (xe,ue), xe ∈ R nc × {0, 1} nℓ<br />
si <strong>di</strong>ce asintoticamente stabile se xe è stabile e ∃r > 0 tale che ∀x0 ∈ B(xe,r)<br />
e ∀ɛ > 0 ∃T(ɛ,k0) tale che x(k,k0,x0,ue) − xe ≤ ɛ, ∀k ≥ T.<br />
Definizione 1.7. Data <strong>un</strong>a coppia <strong>di</strong> equilibrio (xe,ue), xe ∈ R nc ×{0, 1} nℓ si<br />
<strong>di</strong>ce esponenzialmente stabile se xe è asintoticamente stabile e in più ∃δ > 0,<br />
α > 0, 0 ≤ β < 1 tale che ∀x0 ∈ B(xe,δ) e x(k,k0,x0,ue) − xe ≤<br />
αβ k−k0 x0 − xe.<br />
5 Considerare <strong>un</strong> insieme limitato non è <strong>un</strong>’ipotesi restrittiva dato che spesso per ragioni<br />
fisiche le componenti continue dello stato e dell’ingresso sono limitate e le componenti<br />
<strong>di</strong>screte lo sono per loro natura.
1.3 Sistemi MLD 27<br />
Osservabilità e Controllabilità<br />
Le definizioni <strong>di</strong> osservabilità e controllabilità possono essere estese ai sistemi<br />
MLD (4.18). In<strong>di</strong>chiamo con y(k,x,u) l’evoluzione dell’uscita all’istante k<br />
a partire dalla con<strong>di</strong>zione iniziale x(0) = x sotto l’azione dell’ingresso u(k),<br />
k = 0, 1, · · · ,k.<br />
Definizione 1.8. Sia X(0) ⊆ R nc × {0, 1} nl <strong>un</strong> insieme <strong>di</strong> stati iniziali,<br />
e sia U ⊆ R mc × {0, 1} ml <strong>un</strong> insieme d’ingressi. Il sistema MLD (4.18) è<br />
incrementalmente osservabile in T passi su X(0) <strong>un</strong>iformemente rispetto a<br />
U o semplicemte incrementalmente osservabile se esistono due norme · a<br />
(su R nc+nl) e ·b (su R pc+pl) ed <strong>un</strong>o scalare positivo w tale che ∀x1,x2 ∈ X(0)<br />
T −1<br />
e per ogni sequenza d’ingresso {u(k)} k=0 ⊆ U:<br />
T<br />
−1<br />
y(k,x1,u) − y(k,x2,u)b ≥ wx1 − x2a . (1.20)<br />
k=0<br />
Definizione 1.9. Siano X(0) e Xf, rispettivamente, insiemi non vuoti <strong>di</strong><br />
stati iniziali e finali. Il sistema MLD (4.18) è controllabile in T passi da X(0)<br />
T −1<br />
a Xf se, ∀x0 ∈ X(0), esiste <strong>un</strong>a sequenza d’ingresso ammissibile {u(k)} k=0<br />
tale che<br />
x(T) ∈ Xf . (1.21)<br />
In [BFM00] è descritto <strong>un</strong> algoritmo per testare l’osservabilità <strong>di</strong> sistemi<br />
ibri<strong>di</strong> basato sulla programmazione lineare mista intera.
1.4 Sistemi PWA 28<br />
1.4 Sistemi PWA<br />
Un’altra classe importante <strong>di</strong> modelli matematici che descrivono sistemi ib-<br />
ri<strong>di</strong> sono i sistemi PWA (Piecewise Affine) 6 . L’obiettivo <strong>di</strong> questo paragrafo<br />
è mostrare la relazione fra i sistemi MLD, i DHA e la classe <strong>di</strong> sistemi PWA<br />
[Son81].<br />
I sistemi PWA sono definiti partizionando lo spazio degli stati in regioni<br />
poliedrali, e associando ad ogn<strong>un</strong>a <strong>di</strong> esse <strong>un</strong>a <strong>di</strong>versa f<strong>un</strong>zione affine <strong>di</strong><br />
aggiornamento dello stato del tipo:<br />
x(k + 1) = Ai(k)x(k) + Bi(k)u(k) + fi(k)<br />
y(k) = Ci(k)x(k) + Di(k)u(k) + gi(k)<br />
se x(k) ∈ Ci(k) (1.22)<br />
dove Ci = {x : H i x ≤ K i }, i = 1, · · · ,s è la partizione poliedrica dello spazio<br />
degli stati, vedere Figura 1.4.<br />
Figura 1.4: Partizione poliedrica dello spazio degli stati<br />
6 Esistono com<strong>un</strong>que altri modelli ibri<strong>di</strong> <strong>di</strong> interesse scientifico come sistemi lineari<br />
complementari (LC), sistemi LC estesi (ELC) e sistemi Min-Max-Plus Scaling (MMPS).<br />
L’equivalenza tra questi sistemi ed i sistemi MLD e PWA è fornita in [HDB01].
1.4 Sistemi PWA 29<br />
1.4.1 Equivalenza fra DHA, Sistemi PWA e MLD<br />
Le classi <strong>di</strong> sistemi DHA, PWA e MLD sono equivalenti rappresentazioni<br />
<strong>di</strong> <strong>un</strong>o stesso sistema ibrido, ogn<strong>un</strong>a delle quali finalizzata ad <strong>un</strong> <strong>di</strong>fferente<br />
scopo, sia esso la compattezza e chiarezza <strong>di</strong> rappresentazione, l’analisi <strong>di</strong><br />
sistema, lo sviluppo <strong>di</strong> controllori. Introduciamo d<strong>un</strong>que la definizione <strong>di</strong><br />
equivalenza fra modelli ibri<strong>di</strong>.<br />
Definizione 1.10. Siano Σ1 e Σ2 modelli ibri<strong>di</strong> i cui ingressi sono rispetti-<br />
vamente:<br />
le cui uscite sono<br />
e siano gli stati<br />
u1(k) ∈ U1 ⊆ U e u2(k) ∈ U2 ⊆ U,<br />
y1(k) ∈ Y1 ⊆ Y e y2(k) ∈ Y2 ⊆ Y,<br />
x1(k) ∈ X1 ⊆ X e x2(k) ∈ X2 ⊆ X,<br />
con k ∈ Z + . I modelli ibri<strong>di</strong> Σ1 e Σ2 sono equivalenti su<br />
X, U, Y ⊆ X1 ∩ X2, U ⊆ U1 ∩ U2, Y ⊆ Y1 ∩ Y2<br />
se per tutte le con<strong>di</strong>zioni iniziali x1(0) = x2(0) ∈ X, e per tutti gli ingressi<br />
u1(k) = u2(k) ∈ U le traiettorie <strong>di</strong> uscita ed evoluzione dello stato coincidono,<br />
ossia<br />
y1(k) = y2(k) e x1(k) = x2(k) ∀k ∈ Z + .
1.4 Sistemi PWA 30<br />
Teorema 1.1. I DHA e sistemi PWA sono equivalenti.<br />
Dimostrazione. Sia ΣPWA <strong>un</strong> modello PWA ben posto 7 . definito sull’insieme<br />
<strong>di</strong> stati X ⊆ R n , sull’insieme <strong>di</strong> ingressi U ⊆ R m , e sull’insieme <strong>di</strong> uscite<br />
Y ⊆ R p . Tale modello ΣPWA può essere riscritto come <strong>un</strong> equivalente modello<br />
DHA, ΣPWA, ben posto e definito su U, X, Y.<br />
Le equazioni (1.22) sono i mo<strong>di</strong> dello switched affine system SAS (1.1). I<br />
vincoli H i x ≤ K i , i = 1, · · · ,s definiscono l’iperpiano lineare (1.4) dell’event<br />
generator EG, mentre l’uscita della f<strong>un</strong>zione booleana (1.7) del mode selector<br />
MS è definita come i(k) = H i x ≤ K i , dove se gli eventi associati all’iperpiano<br />
<strong>di</strong> H j x ≤ K j sono sod<strong>di</strong>sfatti allora i(k) = j .<br />
I sistemi PWA possono modellare <strong>un</strong> vasto numero <strong>di</strong> processi fisici,<br />
come i sistemi non lineari linearizzati su <strong>di</strong>fferenti p<strong>un</strong>ti <strong>di</strong> lavoro. Oltre<br />
all’equivalenza con gli automi ibri<strong>di</strong> vale anche il seguente risultato:<br />
Teorema 1.2. I sistemi MLD e sistemi PWA sono equivalenti.<br />
Dimostrazione. Proviamo che i sistemi MLD possono essere tradotti in forma<br />
PWA. Dall’ipotesi <strong>di</strong> ben postezza del sistema MLD, fissati x(k) e u(k), δ(k)<br />
e z(k) sono <strong>un</strong>ivocamente definiti, d<strong>un</strong>que<br />
δ(k) = F(x(k),u(k)) ∀(x(k),u(k)) .<br />
Dato che δ ∈ {0, 1} rl si potranno avere al più 2 rl possibili combinazioni δ i .<br />
Si può pensare d<strong>un</strong>que <strong>di</strong> partizionare lo spazio degli stati+ingressi in X i<br />
regioni tali che<br />
δ i = F(x(k),u(k)) ∀(x(k),u(k)) ∈ X i .<br />
7 Per i sistemi PWA la ben-postezza è definita in modo analogo alla Definizione(1.2.1);<br />
<strong>un</strong>a definizione esatta è riportata in [HDB01]
1.4 Sistemi PWA 31<br />
Fissato δ(k) = δ i i vincoli (4.18c) definiscono <strong>un</strong> poliedro P ⊆ R n+m+rc .<br />
Dalla linearità dei vincoli MLD (4.18c) e dalla ben postezza <strong>di</strong> z(k), possiamo<br />
scrivere<br />
z(k) = K i 4x(k) + K i 1u(k) + K i 5 ∀(x(k),u(k)) : F(x(k),u(k)) = δ i . (1.23)<br />
Sostituendo la (1.23) in (4.18a) e (4.18b) si ottiene la forma PWA (1.22)<br />
definita nel poliedro<br />
F i x(k) + G i u(k) ≤ h i .<br />
Per la <strong>di</strong>mostrazione che i sistemi PWA possono essere riscritti come sistemi<br />
MLD si rimanda a [BM99].<br />
Ulteriori conferme <strong>di</strong> questa equivalenza possono essere trovate in [Son96].<br />
La conseguenza applicativa dei precedenti teoremi è la rilevante oppor-<br />
t<strong>un</strong>ità <strong>di</strong> poter utilizzare in<strong>di</strong>stintamente gli strumenti teorici sviluppati per<br />
l’<strong>un</strong>o o l’altro modello, dato che in ogni momento sarà possibile passare<br />
dall’<strong>un</strong>a all’altra rappresentazione 8 .<br />
1.4.2 Analisi <strong>di</strong> raggi<strong>un</strong>gibilità<br />
L’analisi <strong>di</strong> raggi<strong>un</strong>gibilità dei sistemi ibri<strong>di</strong> permette <strong>di</strong> effettuare analisi <strong>di</strong><br />
sicurezza, verificando che <strong>un</strong> dato sistema non raggi<strong>un</strong>ga situazioni ritenute<br />
“pericolose”. A partire da <strong>un</strong> insieme <strong>di</strong> con<strong>di</strong>zioni iniziali e <strong>di</strong> segnali d’in-<br />
gresso, si vuole verificare che gli stati non sicuri non siano raggi<strong>un</strong>ti oppure<br />
fornire <strong>un</strong> controesempio. Si definisce il seguente<br />
8 Il linguaggio HYSDEL permette <strong>di</strong> descrivere i modelli ibri<strong>di</strong> come DHA e <strong>di</strong> tradurli<br />
sia in sistemi MLD che PWA.
1.4 Sistemi PWA 32<br />
Problema <strong>di</strong> analisi <strong>di</strong> raggi<strong>un</strong>gibilità. Dato <strong>un</strong> sistema ibrido Σ in for-<br />
ma PWA (1.22), <strong>un</strong> insieme <strong>di</strong> con<strong>di</strong>zioni iniziali X(0), <strong>un</strong> gruppo <strong>di</strong> insiemi<br />
obiettivo <strong>di</strong>sgi<strong>un</strong>ti Z1, Z2, ..., ZL, <strong>un</strong> insieme limitato <strong>di</strong> ingressi U, ed <strong>un</strong><br />
orizzonte temporale k ≤ Tmax, determinare (i) se Zj è raggi<strong>un</strong>gibile da X(0)<br />
in k ≤ Tmax passi per qualche sequenza {u(0), ..., u(k −1)} ⊆ U <strong>di</strong> ingressi;<br />
(ii) se si, il sottoinsieme <strong>di</strong> con<strong>di</strong>zioni iniziali XZj (0) <strong>di</strong> X(0) dal quale Zj<br />
può essere raggi<strong>un</strong>to in Tmax passi; (iii) per qualsiasi x1 ∈ XZj (0) e x2 ∈ Zj,<br />
la sequenza d’ingresso {u(0), ..., u(k−1)} ⊆ U, k ≤ Tmax, che porta x1 in x2.<br />
Il precedente problema può essere risolto analizzando tutte le sequenze <strong>di</strong><br />
commutazione I(T) {i(0),...,i(T − 1)}, ∀T ≤ Tmax che portano a Z1, o<br />
Z2, . . . , o ZL a partire da X(0), dove i(k) è l’in<strong>di</strong>ce della partizione poliedri-<br />
ca in cui si trova il sistema PWA all’istante k. In<strong>di</strong>cando con X(k, X(0))<br />
l’insieme raggi<strong>un</strong>gibile all’istante k a partire da qualsiasi x ∈ X(0) ed appli-<br />
cando qualsiasi ingresso u(k) ∈ U, 0 ≤ k ≤ k − 1, è sufficiente verificare che<br />
l’insieme raggi<strong>un</strong>to all’istante T sod<strong>di</strong>sfi X(T, X(0)) ∩ Zj = ∅ per tutte le<br />
sequenze ammissibili I(T).<br />
Per poter determinare tutte le sequenze I(T) è necessario analizzare la strut-<br />
tura dei sistemi PWA (1.22). Infatti tale struttura consente <strong>di</strong> calcolare in<br />
modo semplice l’insieme raggi<strong>un</strong>to fino a che l’evoluzione rimane all’interno<br />
<strong>di</strong> <strong>un</strong>a singola regione Ci della partizione poliedrale. Quando l’insieme rag-<br />
gi<strong>un</strong>to attraversa il limite della regione ed entra in <strong>un</strong>a nuova regione Cj,<br />
il calcolo del nuovo insieme raggi<strong>un</strong>to si basa sulle <strong>di</strong>namiche della j-esima<br />
regione.<br />
In [BTM00] è descritto <strong>un</strong> algoritmo che risolve il problema precedente-<br />
mente posto in maniera efficiente, evitando l’enumerazione <strong>di</strong> tutte le possibili<br />
sequenze I(T).
Capitolo 2<br />
<strong>Controllo</strong> pre<strong>di</strong>ttivo e forma<br />
esplicita<br />
Nel capitolo 1 abbiamo mostrato come sia possibile descrivere <strong>un</strong> sistema<br />
ibrido in forma DHA, MLD o PWA. Se ne sono inoltre osservate le proprietà<br />
e la loro equivalenza. In questo capitolo mostreremo come i sistemi MLD<br />
vengono utilizzati per derivare leggi <strong>di</strong> controllo. In particolare descrivere-<br />
mo la strategia del controllo pre<strong>di</strong>ttivo ed i limiti che la soluzione in-linea<br />
comporta. Sarà approfon<strong>di</strong>to l’aspetto computazionale mettendo in evidenza<br />
come la stessa azione compiuta dal controllore in linea possa essere tradotta<br />
in <strong>un</strong> forma esplicita computazionalmente più efficiente.
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 34<br />
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea<br />
L’idea <strong>di</strong> base nella teoria del controllo è la progettazione <strong>di</strong> <strong>un</strong> <strong>di</strong>spositivo<br />
automatico (il controllore) che consenta <strong>di</strong> garantire l’inseguimento <strong>di</strong> deter-<br />
minati riferimenti ed il sod<strong>di</strong>sfacimento <strong>di</strong> determinati vincoli, utilizzando i<br />
segnali provenienti dall’impianto stesso, in <strong>un</strong>o schema retroazionato, come<br />
descritto in Figura 2.1.<br />
RIFERIMENTI COMANDI<br />
CONTROLLORE IMPIANTO<br />
GRANDEZZE MISURATE<br />
Figura 2.1: Schema <strong>di</strong> controllo retroazionato<br />
GRANDEZZE<br />
NON MISURATE<br />
Una tecnica molto <strong>di</strong>ffusa per la progettazione <strong>di</strong> controllori si basa sul<br />
concetto <strong>di</strong> <strong>Controllo</strong> <strong>Pre<strong>di</strong>ttivo</strong>, MPC (Model Pre<strong>di</strong>ctive Control), tecnica<br />
ampiamente utilizzata nell’industria <strong>di</strong> processo per problemi <strong>di</strong> inseguimento<br />
<strong>di</strong> sistemi soggetti a vincoli.<br />
La tecnica MPC 1 , [BRM04], [BRO04] si basa sull’ottimizzazione in linea<br />
<strong>di</strong> <strong>un</strong> f<strong>un</strong>zionale <strong>di</strong> costo soggetto a vincoli dettati dalla <strong>di</strong>namica del sistema.<br />
Essa offre, a <strong>di</strong>fferenza <strong>di</strong> altre tecniche, la possibilità <strong>di</strong> includere vincoli sia<br />
sugli ingressi che sulle uscite del sistema in fase <strong>di</strong> progetto del controllore.<br />
La sigla MPC è acronimo <strong>di</strong> Model Pre<strong>di</strong>ctive Control dove<br />
• Model: in<strong>di</strong>ca il modello (in genere tempo-<strong>di</strong>screto 2 ) del sistema sul<br />
quale implementare il controllo.<br />
1 Per ulteriori informazioni consultare il sito internet: www.<strong>di</strong>i.<strong>un</strong>isi.it \˜ bemporad<br />
2 nel caso in cui sia tempo continuo viene effettuato <strong>un</strong> campionamento interno con<br />
intervallo Ts proprio del controllore
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 35<br />
• Pre<strong>di</strong>ctive: l’ottimizzazione è basata sull’evoluzione predetta del sistema.<br />
• Control: vengono considerati i vincoli imposti in fase <strong>di</strong> <strong>di</strong>chiarazione<br />
e ricavata la legge <strong>di</strong> controllo in rispetto degli stessi.<br />
Questa tecnica <strong>di</strong> controllo è basata sulla filosofia ad orizzonte recessivo,<br />
ve<strong>di</strong> Figura 2.2, secondo la quale ad ogni istante <strong>di</strong> campionamento, a partire<br />
dallo stato corrente del sistema, si determina, secondo <strong>un</strong> qualche criterio <strong>di</strong><br />
ottimalità, <strong>un</strong>a sequenza <strong>di</strong> coman<strong>di</strong> da applicarsi su <strong>un</strong> orizzonte temporale<br />
futuro T passi. Di questa sequenza verrà applicato al sistema soltanto il pri-<br />
mo campione, scartando tutto il resto. Questa procedura viene ripetuta per<br />
tutti gli istanti successivi del controllo. La soluzione ottimale viene ottenuta<br />
a partire da <strong>un</strong>a descrizione matematica del sistema considerando i vincoli<br />
sugli ingressi e sulle uscite e minimizzando <strong>un</strong> in<strong>di</strong>ce <strong>di</strong> prestazione. Tale in-<br />
<strong>di</strong>ce <strong>di</strong> prestazione in genere è <strong>di</strong> tipo lineare o quadratico e per tale motivo<br />
ci si riferisce al problema <strong>di</strong> controllo come ad <strong>un</strong> problema quadratico (QP)<br />
o lineare (LP).<br />
2.1.1 MPC per sistemi ibri<strong>di</strong><br />
Sia t l’istante <strong>di</strong> campionamento attuale, x(t) lo stato corrente del sistema,<br />
xe, ue <strong>un</strong>a coppia <strong>di</strong> equilibrio e δe, ze i corrispondenti equilibri delle variabili<br />
ausiliarie, suppondendo che y(t) debba inseguire il riferimento ye il problema
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 36<br />
PASSATO FUTURO<br />
riferimento<br />
riferimento<br />
K<br />
USCITE PREDETTE<br />
K+1<br />
K+1<br />
INGRESSI<br />
Figura 2.2: Filosofia orizzonte recessivo<br />
<strong>di</strong> controllo ottimo può essere formulato nel seguente modo:<br />
min<br />
T −1<br />
{v,δ,z} 0<br />
soggetto a<br />
T −1<br />
T −1<br />
J({v, δ, z} 0 , x(t)) <br />
K+T<br />
K+1+T<br />
<br />
Q1(v(k) − ue)p + Q2(δ(k|t) − δe)p+<br />
k=0<br />
Q3(z(k|t) − ze)p + Q4(x(k|t) − xe)p + Q5(y(k|t) − ye)p<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
x(T |t) = xe<br />
x(k + 1|t) = Ax(k|t) + B1v(k) + B2δ(k|t)+<br />
B3z(k|t)<br />
y(k|t) = Cx(k|t) + D1v(k) + D2δ(k|t)+<br />
D3z(k|t)<br />
E2δ(k|t) + E3z(k|t) ≤ E1v(k)+<br />
E4x(k|t) + E5<br />
umin ≤ v(t + k) ≤ umax,<br />
k = 0, 1, . . .,T − 1<br />
xmin ≤ x(t + k|t) ≤ xmax, k = 1, . . .,Nc ,<br />
(2.1a)<br />
(2.1b)<br />
(2.1c)
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 37<br />
dove T e Nc ≤ T sono, rispettivamente, gli orizzonti <strong>di</strong> pre<strong>di</strong>zione e <strong>di</strong> vincolo<br />
sullo stato, x(k|t) è lo stato predetto all’istante t + k risultante dall’ingresso<br />
u(t + k) = v(k) applicato a (4.18) a partire da x(0|t) = x(t), umin, umax e<br />
xmin, xmax sono, rispettivamente, vincoli sugli ingressi e sullo stato. In (2.1a)<br />
si ha che Qxp = x ′ Qx quando p = 2, Qxp = Qx∞ (Qx1) quando<br />
p = ∞ (p = 1) e<br />
Q1,4 = Q ′ 1,4 ≻ 0, Q2,3,5 = Q ′ 2,3,5 0 (p = 2)<br />
Q1−5 non singolari (p = ∞, 1).<br />
Se esiste la soluzione ottima<br />
{v ∗ t (0),...,v ∗ t (T − 1),δ ∗ t (0),...,δ ∗ t (T − 1),z ∗ t (0),...,z ∗ t (T − 1)}<br />
(2.2)<br />
secondo la filosofia ad orizzonte recessivo si applica al sistema reale soltanto<br />
u(t) = v ∗ t (0), (2.3)<br />
si scarta tutta la sequenza d’ingressi v ∗ t (1),...,v ∗ t (T − 1), e si ripete l’intera<br />
procedura all’istante t + 1. La legge <strong>di</strong> controllo (2.1)–(2.3) risulta essere<br />
<strong>un</strong>’estensione del controllo pre<strong>di</strong>ttivo ai sistemi ibri<strong>di</strong>. Le proprietà del con-<br />
trollo pre<strong>di</strong>ttivo classico possono essere estese, con opport<strong>un</strong>e mo<strong>di</strong>fiche, an-<br />
che al controllo MPC per sistemi ibri<strong>di</strong>. In [BM01b] sono presentati alc<strong>un</strong>i<br />
esempi <strong>di</strong> queste estensioni.<br />
Come si può notare dalla (2.1c), le equazioni che descrivono il modello MLD<br />
del sistema compaiono come vincoli nel problema <strong>di</strong> controllo ottimo. Dato<br />
che nel modello MLD ci sono variabili <strong>di</strong>screte il problema (2.1) risulta essere<br />
<strong>un</strong> problema misto intero. Se si utilizza la norma Euclidea, p = 2, il proble-<br />
ma è risolubile me<strong>di</strong>ante programmazione quadratica mista intera, (MIQP),
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 38<br />
altrimenti, se p = ∞ o p = 1, me<strong>di</strong>ante programmazione lineare mista intera<br />
(MILP) . La soluzione <strong>di</strong> questi problemi si determina me<strong>di</strong>ante risolutori<br />
misti interi (ve<strong>di</strong> paragrafo 2.1.3).<br />
2.1.2 Convergenza ad anello chiuso<br />
Il seguente teorema <strong>di</strong>mostra che l’anello <strong>di</strong> retroazione formato dal sistema e<br />
dal controllore MPC ottenuto da (2.1)–(2.3) risulta essere stabile [BM99, BM01b].<br />
Teorema 2.1. Siano (xe,ue) <strong>un</strong>a coppia <strong>di</strong> equilibrio e (δe,ze) la corrispon-<br />
dente coppia <strong>di</strong> equilibrio delle variabili ausiliarie. Assumiamo che lo stato<br />
iniziale x(0) sia tale che esista all’istante t = 0 <strong>un</strong>a soluzione ammissibile<br />
del problema (2.1). Allora per tutte le matrici Q1−5 che sod<strong>di</strong>sfano (5.3) la<br />
legge MPC (2.1)–(2.3) stabilizza il sistema in quanto<br />
lim x(t) = xe<br />
t→∞<br />
lim u(t) = ue<br />
t→∞<br />
lim<br />
t→∞ Q2(δ(t) − δe)p = 0<br />
lim<br />
t→∞ Q3(z(t) − ze)p = 0<br />
lim<br />
t→∞ Q5(y(t) − ye)p = 0<br />
e sono sod<strong>di</strong>sfatti i vincoli (4.18c) ed i vincoli dell’ingresso e dello stato<br />
umin ≤ u(t) ≤ umax, xmin ≤ x(t) ≤ xmax.<br />
Dimostrazione. Si tratta <strong>di</strong> <strong>di</strong>mostrare che <strong>un</strong>a f<strong>un</strong>zione <strong>di</strong> Lyap<strong>un</strong>ov è de-<br />
crescente ed inferiormente limitata. Sia U ∗ t la sequenza <strong>di</strong> controllo ottimale<br />
{v ∗ t (0),...,v ∗ t (T − 1)}, sia<br />
V (t) J(U ∗ t ,x(t))<br />
il corrispondente valore ottenuto dall’in<strong>di</strong>ce <strong>di</strong> prestazione, e sia U1 la sequen-<br />
za {v ∗ t (1),...,v ∗ t (T −2),ue}. Allora, U1 è ammissibile all’istante t+1, assieme
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 39<br />
con i vettori δ(k|t + 1) = δ(k + 1|t), z(k|t + 1) = z(k + 1|t), k = 0,...,T − 2,<br />
δ(T −1|t+1) = δe, z(T −1|t+1) = ze, dato che x(T −1|t+1) = x(T |t) = xe.<br />
Risulta che,<br />
V (t + 1) ≤ J(U1,x(t + 1)) =<br />
V (t) − Q4(x(t) − xe)p +<br />
−Q1(u(t) − ue)p − Q2(δ(t) − δe)p +<br />
−Q3(z(t) − ze)p − Q5(y(t) − ye)p<br />
(2.4)<br />
e quin<strong>di</strong> che V (t) è decrescente. Dato che V (t) è inferiormente limitato da<br />
0, allora esiste V∞ = limt→∞ V (t), che implica V (t + 1) − V (t) → 0. Inoltre,<br />
ogni termine della somma<br />
Q4(x(t) − xe)p + Q1(u(t) − ue)p +<br />
Q2(δ(t) − δe)p + Q3(z(t) − ze)p +<br />
converge a zero, e questo prova il teorema.<br />
Q5(y(t) − ye)p ≤ (2.5)<br />
V (t) − V (t + 1)<br />
Osservazione 1. Si può osservare che se Q2 (o Q3, Q5) è non singolare, si<br />
garantisce la convergenza <strong>di</strong> δ(t) (o z(t), y(t)).<br />
Osservazione 2. Il teorema (2.1) assicura stabilità ass<strong>un</strong>to che il proble-<br />
ma (2.1) sia ammissibile all’istante t = 0. L’insieme delle con<strong>di</strong>zioni iniziali<br />
x(0) per le quali il problema (2.1) è ammissibile verrà caratterizzato nel<br />
paragrafo 2.2.
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 40<br />
2.1.3 Risolutori <strong>di</strong> problemi misti interi<br />
Rimane da chiarire come possa essere determinata <strong>un</strong>a soluzione ottima del<br />
problema (2.1). Richiamiamo brevemente la forma generale <strong>di</strong> <strong>un</strong> problema<br />
misto intero<br />
min<br />
q<br />
l(qc,qd)<br />
soggetto a Gcqc + Gdqd ≤ S + Fx(t)<br />
(2.6)<br />
dove l(qc,qd) è il f<strong>un</strong>zionale <strong>di</strong> costo, qc, qd rappresentano, rispettivamente,<br />
le componenti continue e <strong>di</strong>screte del vettore <strong>di</strong> ottimizzazione q. x(t) è lo<br />
stato del sistema all’istante t che assumiamo come noto; mentre Gc,Gd,S,F<br />
sono matrici <strong>di</strong> <strong>di</strong>mensioni compatibili. Se il f<strong>un</strong>zionale <strong>di</strong> costo è del tipo<br />
l(qc,qd) = f T c qc + f T d qd<br />
il problema è detto lineare misto intero (MILP), mentre se è del tipo<br />
l(q) = 1<br />
2 qT Hq + c T q<br />
si parla <strong>di</strong> problema quadratico misto intero (MIQP).<br />
A parte particolari strutture, i problemi misti interi sono classificati come<br />
problemi NP-hard per i quali non è possibile trovare <strong>un</strong> algoritmo che li<br />
risolva in tempo polinomiale rispetto alla <strong>di</strong>mensione del problema 3 . Sebbene<br />
i problemi misti interi abbiano questa particolare natura, esistono <strong>di</strong>versi<br />
meto<strong>di</strong> per risolvere problemi misti interi:<br />
• Meto<strong>di</strong> basati su tagli, in cui nuovi vincoli sono aggi<strong>un</strong>ti al proble-<br />
ma misto intero in modo da ridurre il dominio ammissibile finchè la<br />
soluzione intera non viene trovata.<br />
3 Tale risultato, sebbene fortemente sospettato, non è ancora formalmente <strong>di</strong>mostrato.
2.1 <strong>Controllo</strong> pre<strong>di</strong>ttivo in-linea 41<br />
• Meto<strong>di</strong> <strong>di</strong> decomposizione, dove la struttura del problema viene inves-<br />
tigata tramite meto<strong>di</strong> <strong>di</strong> rilassamento e dualità.<br />
• Meto<strong>di</strong> basati su logica, dove sono utilizzate tecniche basate su inferenze<br />
e programmazione logica per esprimere le variabili binarie.<br />
• Meto<strong>di</strong> Branch and Cut e Branch and Bo<strong>un</strong>d, dove le combinazioni<br />
binarie sono esplorate attraverso <strong>un</strong> albero binario.<br />
Tra quelli precedentemente in<strong>di</strong>cati i meto<strong>di</strong> Branch and Bo<strong>un</strong>d risultano es-<br />
sere i più efficienti, come in<strong>di</strong>cato in [FL98], e sono tipicamente usati nei riso-<br />
lutori. Alc<strong>un</strong>i esempi <strong>di</strong> risolutori possono essere [ILO01, FL98, BM01a] per<br />
risolvere problemi MIQP, e [ILO01, Mak02, BM01a] per risolvere problemi<br />
MILP. In questo lavoro è stato sviluppato il controllo ottimo (2.1) in norma<br />
Euclidea, in particolare per risolvere il problema MIQP abbiamo utilizzato il<br />
risolutore CPLEX ([ILO01]).<br />
Un algoritmo Branch and Bo<strong>un</strong>d per problemi MILP/MIQP risolve e genera<br />
nuovi problemi LP/QP in accordo a tecniche <strong>di</strong> esplorazione <strong>di</strong> <strong>un</strong> albero <strong>di</strong><br />
ricerca, dove i no<strong>di</strong> dell’albero corrispondono a sottoproblemi LP/QP. Inizial-<br />
mente viene risolto il problema ra<strong>di</strong>ce in cui sono rilassate tutte le variabili<br />
binarie, δ ∈ {0, 1} → δ ∈ [0, 1], ed il valore del f<strong>un</strong>zionale <strong>di</strong> costo rappresen-<br />
ta <strong>un</strong> limite inferiore al valore ottimo. L’algoritmo procede generando i no<strong>di</strong><br />
figli fissando <strong>di</strong> volta in volta <strong>un</strong>a variabile <strong>di</strong>screta ad <strong>un</strong>o dei possibili valori<br />
(operazione <strong>di</strong> branch). Nel passaggio da <strong>un</strong> problema ai sottoproblemi figli<br />
il valore dell’ottimo non può <strong>di</strong>minuire. Ne segue che se ad <strong>un</strong>a iterazione il<br />
valore del problema LP/QP è peggiore del valore <strong>di</strong> <strong>un</strong>a soluzione ammissibile<br />
(che costituisce <strong>un</strong> limite superiore all’ottimo), ness<strong>un</strong>a eventuale soluzione<br />
mista intera che può essere trovata nel sottoalbero avente come ra<strong>di</strong>ce il
2.2 Forma esplicita del controllore 42<br />
nodo corrente potrà essere migliore della soluzione ammissibile, pertanto il<br />
sottoalbero non verrà esplorato (operazione <strong>di</strong> bo<strong>un</strong><strong>di</strong>ng).<br />
2.2 Forma esplicita del controllore<br />
Nella sezione 2.1.1 abbiamo mostrato come il controllo pre<strong>di</strong>ttivo, noto lo<br />
stato del sistema x(t), richieda la risoluzione <strong>di</strong> <strong>un</strong> problema <strong>di</strong> program-<br />
mazione MILP o MIQP ad ogni istante <strong>di</strong> campionamento t. Da <strong>un</strong> p<strong>un</strong>to<br />
<strong>di</strong> vista computazionale questa tecnica <strong>di</strong> controllo risulta adatta per sistemi<br />
con tempi <strong>di</strong> campionamento sufficientemente l<strong>un</strong>ghi, ad esempio dell’or<strong>di</strong>ne<br />
<strong>di</strong> decine <strong>di</strong> secon<strong>di</strong>, nei quali in genere è presente <strong>un</strong> hardware adatto a sup-<br />
portare la pesantezza computazionale richiesta. Tuttavia non è adeguato per<br />
sistemi con tempi <strong>di</strong> campionamento veloci, dell’or<strong>di</strong>ne dei 10 millisecon<strong>di</strong>,<br />
nei quali in genere è ad<strong>di</strong>rittura presente <strong>un</strong> <strong>di</strong>spositivo embedded, come ad<br />
esempio nelle applicazioni automotive. La ricerca <strong>di</strong> <strong>un</strong>a strategia <strong>di</strong> con-<br />
trollo pre<strong>di</strong>ttiva ibrida che fosse però implementabile su hardware semplici,<br />
come le centraline automobilistiche standard, ha portato allo sviluppo <strong>di</strong> <strong>un</strong>a<br />
legge <strong>di</strong> controllo che <strong>di</strong>pende esplicitamente dallo stato e che debba essere<br />
calcolata ad ogni iterazione.<br />
L’idea alla base della forma esplicita, come in<strong>di</strong>cato in [BMDP01], è quella <strong>di</strong><br />
gestire il vettore <strong>di</strong> stato x(t), che appare nel lato destro dei vincoli, come <strong>un</strong><br />
vettore <strong>di</strong> parametri. Se nel f<strong>un</strong>zionale <strong>di</strong> costo si adotta la norma-∞ il prob-<br />
lema <strong>di</strong> ottimizzazione <strong>di</strong>venta <strong>un</strong> problema MILP multiparametrico (mp-<br />
MILP) , altrimenti se si adotta la norma-2 si parla <strong>di</strong> problema <strong>di</strong> ottimiz-<br />
zazione MIQP multiparametrico . Risolvere <strong>un</strong> problema mp-MILP/MIQP<br />
consiste nell’esprimere la soluzione del problema MILP/MIQP come f<strong>un</strong>zione<br />
dei parametri. Una volta che la soluzione del problema multiparametrico è
2.2 Forma esplicita del controllore 43<br />
stata trovata, U ∗ t = f(x(t)), il controllore pre<strong>di</strong>ttivo è <strong>di</strong>sponibile esplicita-<br />
mente. La legge <strong>di</strong> controllo MPC può d<strong>un</strong>que essere espressa esplicitamente<br />
come <strong>un</strong> insieme <strong>di</strong> regioni nello spazio degli stati (f<strong>un</strong>zione piecewise affine);<br />
ad ogni regione è associata <strong>un</strong>a legge affine <strong>di</strong> retroazione dello stato. E’<br />
necessario sottolineare che la forma piecewise affine ed il controllore MPC-<br />
ibrido pre<strong>di</strong>ttivo (2.1) sono uguali, nel senso che entrambi producono la stessa<br />
azione <strong>di</strong> controllo, ed inoltre con<strong>di</strong>vidono le stesse proprietà <strong>di</strong> ottimalità e<br />
stabilità. La sola <strong>di</strong>fferenza sta nell’implentazione del controllore: in forma<br />
esplicita il calcolo in linea si riduce ad <strong>un</strong>a valutazione <strong>di</strong> <strong>un</strong>a f<strong>un</strong>zione PWA.<br />
Risulta quin<strong>di</strong> evidente come la forma esplicita sia interessante da <strong>un</strong> p<strong>un</strong>-<br />
to <strong>di</strong> vista implementativo. Oltre alla semplicità indotta dal metodo che la<br />
rende adatta per sistemi con tempo <strong>di</strong> campionamento veloci e con hardware<br />
economico, permette <strong>di</strong> comprendere la struttura matematica della legge <strong>di</strong><br />
controllo, altrimenti nascosta dal formalismo <strong>di</strong> ottimizzazione. Oltretut-<br />
to il fatto <strong>di</strong> poter rappresentare l’anello chiuso in forma PWA ci consente<br />
<strong>di</strong> riutilizzare gli strumenti per l’analisi <strong>di</strong> prestazione basati sull’analisi <strong>di</strong><br />
raggi<strong>un</strong>gibilità, come richiamato nel paragrafo 1.4.2, pagina 31.
Capitolo 3<br />
Meccanica del motore ad<br />
iniezione <strong>di</strong>retta a benzina<br />
Motivata dalla necessità <strong>di</strong> sod<strong>di</strong>sfare sia le regolamentazioni sulle emissioni<br />
dei gas <strong>di</strong> scarico che per venire incontro a nuove e crescenti richieste da parte<br />
del guidatore, la tecnologia dei motori ha raggi<strong>un</strong>to <strong>un</strong> grado elevato <strong>di</strong> com-<br />
plessità sia in termini <strong>di</strong> meccanica che <strong>di</strong> elettronica <strong>di</strong> controllo. I moderni<br />
motori a combustione interna contengono sofisticati sensori ed attuatori che<br />
offrono forti potenzialità per il miglioramento del consumo <strong>di</strong> carburante e<br />
per <strong>un</strong> maggiore controllo delle emissioni dei gas nocivi.<br />
In questo capitolo verrà descritto in modo generale il f<strong>un</strong>zionamento <strong>di</strong> <strong>un</strong><br />
motore a combustione interna e successivamente si analizzerà in dettaglio<br />
il motore ad iniezione <strong>di</strong>retta ad accensione comandata sottolineando le<br />
particolarità meccaniche e gli obiettivi che si sono posti in questo lavoro.
3.1 Motore a combustione interna 45<br />
3.1 Motore a combustione interna<br />
3.1.1 Schema <strong>di</strong> f<strong>un</strong>zionamento e definizioni<br />
I motori a combustione interna (MCI) [Bos97, Hey88], sono composti<br />
da <strong>un</strong>o o più cilindri in cui scorrono i pistoni, collegati tramite <strong>un</strong> sistema<br />
biella-manovella ad <strong>un</strong> albero motore, ve<strong>di</strong> Figura 3.1. Ciclicamente all’in-<br />
terno dei cilindri viene immesso del fluido e tramite <strong>un</strong> ciclo termico si ot-<br />
tiene <strong>un</strong> moto rotatorio all’albero motore. L’energia chimica del fluido viene<br />
trasformata in lavoro al pistone per mezzo <strong>di</strong> <strong>un</strong> processo <strong>di</strong> combustione<br />
all’interno del cilindro. Il lavoro che viene compiuto sul pistone viene poi<br />
trasformato in moto rotatorio <strong>un</strong>iforme applicato all’albero motore tramite<br />
il sistema biella-manovella. L’immissione del fluido all’interno del cilindro<br />
alberi<br />
a camme<br />
condotto<br />
aspirazione<br />
manovella<br />
albero motore<br />
candela<br />
valvole<br />
biella<br />
condotto<br />
scarico<br />
Figura 3.1: Schema pistone biella-manovella
3.1 Motore a combustione interna 46<br />
e la successiva fuoriuscita dei gas combusti avvengono grazie ad opport<strong>un</strong>e<br />
valvole, dette <strong>di</strong> aspirazione e scarico, poste in testa al cilindro, che sono<br />
comandate dall’albero a camme a sua volta mosso dall’albero motore (ve<strong>di</strong><br />
Figura 3.1).<br />
I motori MCI possono <strong>di</strong>stinguersi in motori MCI ad accensione coman-<br />
data e MCI ad accensione spontanea. Nel primo caso il fluido, general-<br />
mente <strong>un</strong>a miscela <strong>di</strong> aria (il comburente) e benzina (il combustibile), viene<br />
incen<strong>di</strong>ata per mezzo <strong>di</strong> <strong>un</strong>a scintilla fatta scoccare tra i due elettro<strong>di</strong> <strong>di</strong> <strong>un</strong>a<br />
candela che si affaccia all’interno del cilindro. Nel secondo caso, invece, il<br />
fluido, generalmente il gasolio, si incen<strong>di</strong>a autonomamente a causa dell’alta<br />
temperatura raggi<strong>un</strong>ta dall’aria a seguito della compressione. La miscela può<br />
essere ottenuta o <strong>di</strong>rettamente all’interno del cilindro, nel qual caso si parla<br />
<strong>di</strong> MCI ad iniezione <strong>di</strong>retta, o all’esterno del cilindro, riferendosi così a<br />
MCI a carburazione. Nei motori ad iniezione <strong>di</strong>retta si riempie il cilin-<br />
dro con l’aria e successivamente si immette la benzina (così come accade nei<br />
motori ad accensione spontanea con il gasolio). Nei motori a carburazione la<br />
miscela viene ottenuta all’esterno dei cilindri e poi immessa tramite l’aper-<br />
tura della valvola <strong>di</strong> aspirazione.<br />
La trasformazione dell’energia termica dei prodotti della combustione in la-<br />
voro meccanico utile avviene me<strong>di</strong>ante <strong>un</strong>a successione <strong>di</strong> fasi che formano il<br />
cosiddetto ciclo <strong>di</strong> f<strong>un</strong>zionamento. In generale, il ciclo <strong>di</strong> f<strong>un</strong>zionamento <strong>di</strong><br />
<strong>un</strong> motore a combustione interna si svolge in quattro fasi, ve<strong>di</strong> Figura 3.2:<br />
- Fase <strong>di</strong> aspirazione. In questa fase la miscela (motore a carburazione)<br />
o l’aria (motore ad iniezione) viene immessa nel cilindro. Il pistone<br />
si muove dall’estremo superiore, detto P<strong>un</strong>to Morto Superiore (PMS),<br />
all’estremo inferiore, detto P<strong>un</strong>to Morto Inferiore (PMI). La manovella<br />
ruota <strong>di</strong> 180 ◦ e la valvola <strong>di</strong> aspirazione rimane aperta;
3.1 Motore a combustione interna 47<br />
- Fase <strong>di</strong> compressione. La miscela o l’aria viene compressa ed il pis-<br />
tone passa dal PMI al PMS. L’albero motore compie <strong>un</strong>’altra rotazione<br />
<strong>di</strong> 180 ◦ e le valvole sono entrambe chiuse;<br />
- Fase <strong>di</strong> combustione ed espansione. La combustione può avvenire<br />
in modo più o meno rapido e a questa segue l’espansione dei gas com-<br />
busti. Il pistone passa dal PMS al PMI e l’albero motore compie ancora<br />
mezzo giro. Le valvole sono ancora chiuse;<br />
- Fase <strong>di</strong> scarico. Si apre la valvola <strong>di</strong> scarico ed il pistone passa dal<br />
PMI al PMS svuotando il cilindro dai gas combusti. Si è pronti così<br />
alla fase <strong>di</strong> aspirazione del ciclo successivo.<br />
Il motore a combustione che impiega due giri dell’albero motore per com-<br />
piere il ciclo <strong>di</strong> f<strong>un</strong>zionamento è detto motore a 4 tempi, come riportato in<br />
Figura 3.2. Se l’intero ciclo <strong>di</strong> f<strong>un</strong>zionamento è realizzato in <strong>un</strong> solo giro<br />
dell’albero motore, cioè in due corse del pistone, si parla <strong>di</strong> motore a 2 tempi<br />
(compressione-aspirazione, combustione-scarico).<br />
Aria<br />
Valvola<br />
<strong>di</strong> aspirazione<br />
Combustibile<br />
Valvola<br />
<strong>di</strong> scarico<br />
Aspirazione Compressione Espansione Scarico<br />
Figura 3.2: Ciclo <strong>di</strong> f<strong>un</strong>zionamento <strong>di</strong> <strong>un</strong> motore a 4 tempi
3.1 Motore a combustione interna 48<br />
3.1.2 Alc<strong>un</strong>i approfon<strong>di</strong>menti<br />
Il ciclo <strong>di</strong> f<strong>un</strong>zionamento precedentemente in<strong>di</strong>cato è <strong>un</strong>a rappresentazione<br />
ideale del f<strong>un</strong>zionamento del motore. E’ da osservare, ad esempio, che du-<br />
rante la fase <strong>di</strong> aspirazione, il fluido d’ingresso incontra nei canali e nelle valv-<br />
ole delle resistenze passive che ostacolano l’afflusso verso il cilindro. Risulta<br />
quin<strong>di</strong> evidente che è conveniente effettuare in pratica <strong>un</strong> anticipo nell’aper-<br />
tura della valvola <strong>di</strong> aspirazione ed <strong>un</strong> posticipo nella chiusura della valvola<br />
<strong>di</strong> scarico, ve<strong>di</strong> schema anticipo/ritardo Figura 3.3. La prima operazione<br />
permette <strong>di</strong> avere la valvola <strong>di</strong> aspirazione già aperta quando il pistone inizia<br />
la fase <strong>di</strong> aspirazione, mentre la seconda consente alla valvola <strong>di</strong> scarico <strong>di</strong> es-<br />
sere aperta quando il pistone conclude la fase <strong>di</strong> espulsione dei gas <strong>di</strong> scarico.<br />
Per favorire il riempimento del cilindro la valvola <strong>di</strong> aspirazione non si chiude<br />
quando il pistone raggi<strong>un</strong>ge il PMI, ma dopo <strong>un</strong> ritardo <strong>di</strong> (30 ◦ −40 ◦ ). Questo<br />
fatto corrisponde ad <strong>un</strong>a per<strong>di</strong>ta <strong>di</strong> <strong>un</strong>a parte della fase <strong>di</strong> compressione. Tale<br />
per<strong>di</strong>ta risulta com<strong>un</strong>que molto limitata. Per quanto riguarda la fase <strong>di</strong> es-<br />
pansione non si può garantire che possa usufruire della rimanente parte della<br />
corsa dato che la valvola <strong>di</strong> scarico si deve aprire per dar luogo al cosiddetto<br />
scarico spontaneo e per evitare che il pistone compia <strong>un</strong> eccessivo lavoro pas-<br />
sivo, in<strong>di</strong>cato come scarico forzato. Rimane da chiarire <strong>un</strong>’aspetto sulla fase<br />
<strong>di</strong> combustione. Il combustibile per poter bruciare deve venire a contatto con<br />
<strong>un</strong>a opport<strong>un</strong>a quantità <strong>di</strong> comburente e affinchè la combustione sia comple-<br />
ta, cioè tutto il carburante sia utilizzato per la combustione, quest’ultimo<br />
deve trovarsi in <strong>un</strong> determinato rapporto stechiometrico, anche detto rap-<br />
porto aria-carburante, determinabile in base alla composizione chimica del<br />
combustibile stesso. Nel caso della benzina il rapporto stechiometrico aria-<br />
combustibile vale 14.64. Nei motori ad iniezione <strong>di</strong>retta, come ad esempio<br />
il Diesel, la miscela aria-carburante si forma in <strong>un</strong> secondo tempo a seguito
3.1 Motore a combustione interna 49<br />
Figura 3.3: Diagramma <strong>di</strong> anticipo/ritardo valvole<br />
dell’iniezione e può <strong>di</strong>fferire anche <strong>di</strong> molto dal valore stechiometrico ideale,<br />
al contrario dei motori a carburazione in cui la miscela è già formata all’ester-<br />
no del cilindro e risulta molto prossima alle con<strong>di</strong>zioni stechiometriche. Se<br />
il rapporto stechiometrico è alto, la quantità d’aria è molto maggiore rispet-<br />
to al carburante e ci si riferisce a questo come ad <strong>un</strong>a combustione magra.<br />
Nelle situazioni in cui la miscela non è al rapporto stechiometrico si possono<br />
verificare situazioni in cui la combustione non avviene in modo regolare. In<br />
questi casi si possono verificare con<strong>di</strong>zioni <strong>di</strong> malf<strong>un</strong>zionamento come ad es-<br />
empio fenomeni <strong>di</strong> preaccensione o fenomeni <strong>di</strong> mancata accensione: i primi<br />
corrispondono ad accensioni non temporizzate della miscela che avvengono<br />
anche nel pieno della fase <strong>di</strong> compressione dovute a quantità elevate <strong>di</strong> car-<br />
burante e alle alte pressioni all’interno del cilindro; i secon<strong>di</strong> sono dovuti<br />
a quantità troppo ridotte <strong>di</strong> carburante che non consentono alla miscela <strong>di</strong><br />
incen<strong>di</strong>arsi. Risulta quin<strong>di</strong> evidente come il rapporto stechiometrico abbia<br />
<strong>un</strong> ruolo fondamentale per il corretto f<strong>un</strong>zionamento del motore.
3.2 Il Motore DISC 50<br />
3.2 Il Motore DISC<br />
Il motore su cui è stato svolto questo stu<strong>di</strong>o può essere classificato come <strong>un</strong><br />
motore a benzina ad iniezione <strong>di</strong>retta a carica stratificata, o brevemente mo-<br />
tore DISC (Direct Injection Stratified Charge).<br />
Throttle<br />
MAF<br />
EGR Valve<br />
W th<br />
W egr<br />
UEGO<br />
Intake Manifold<br />
TEMP<br />
MAP<br />
TEMP<br />
TWC LNT<br />
HEGO<br />
Swirl Control<br />
Spark plug<br />
Fuel Injector<br />
To Tailpipe<br />
Figura 3.4: Motore ad iniezione <strong>di</strong>retta a benzina<br />
Come mostrato in Figura 3.4 il motore DISC è caratterizzato da <strong>un</strong> sofisticato<br />
sistema <strong>di</strong> combustione, <strong>un</strong> sistema <strong>di</strong> post-trattamento dei gas combusti<br />
particolarmente adatto per motori a combustione magra, e particolari sensori<br />
ed attuatori. Ogni elemento in Figura 3.4 è critico per il f<strong>un</strong>zionamento del<br />
sistema DISC.
3.2 Il Motore DISC 51<br />
3.2.1 Sistema <strong>di</strong> combustione<br />
La caratteristica principale del motore DISC, come il nome suggerisce, è che<br />
il carburante viene iniettato <strong>di</strong>rettamente all’interno del cilindro invece che<br />
all’esterno <strong>di</strong> questo, tramite l’iniettore (ve<strong>di</strong> Figura 3.5) 1 . Ciò è reso pos-<br />
Figura 3.5: Immissione del carburante nel cilindro tramite iniettore<br />
sibile da <strong>un</strong> sistema <strong>di</strong> iniezione del carburante ad alta pressione il quale<br />
oltre ad essere <strong>un</strong>a tecnologia critica per l’iniezione <strong>di</strong>retta consente <strong>di</strong> de-<br />
cidere quando iniettare il carburante (a <strong>di</strong>fferenza dei motori tra<strong>di</strong>zionali)<br />
acquisendo così <strong>un</strong> ulteriore grado <strong>di</strong> libertà. In base ai tempi <strong>di</strong> iniezione<br />
del carburante il motore può f<strong>un</strong>zionare in due regimi <strong>di</strong>stinti. Se il car-<br />
burante viene iniettato in ritardo ovvero quando la fase <strong>di</strong> compressione ha<br />
luogo, il tempo <strong>di</strong>sponibile al carburante per mescolarsi con l’aria è breve e si<br />
forma <strong>un</strong>a miscela stratificata <strong>di</strong> aria-carburante (cioè non omogenea in tut-<br />
to il cilindro). In questo regime stratificato, la combustione può avvenire in<br />
<strong>un</strong>a regione vicina alla candela mentre allo stesso tempo nel resto del cilindro<br />
1 Figure 3.5 - 3.7 per gentile concessione Au<strong>di</strong>
3.2 Il Motore DISC 52<br />
a) b)<br />
Figura 3.6: Flusso della miscela aria-carburante in a) Modo Omogeneo, b) Modo<br />
Stratificato<br />
il rapporto <strong>di</strong> aria-carburante può essere estremamente elevato (fino 50:1).<br />
Questa non omogeneità della miscela è accentuata da <strong>un</strong>o speciale <strong>di</strong>segno<br />
del cilindro e dalla testa non piatta del pistone la quale durante la fase <strong>di</strong><br />
compressione induce moti vorticosi nel fluido rendendo la miscela più ric-<br />
ca <strong>di</strong> benzina intorno alla candela, si parla per questo <strong>di</strong> carica stratificata,<br />
ve<strong>di</strong> Figura 3.6b. Con <strong>un</strong> tempo <strong>di</strong> iniezione anticipato, ovvero durante la<br />
fase <strong>di</strong> aspirazione, la benzina ha tempo sufficiente per mescolarsi bene con<br />
l’aria, in modo da formare <strong>un</strong>a miscela omogenea <strong>di</strong> aria-carburante in tutto<br />
il cilindro, ve<strong>di</strong> Figura 3.6a. Nel regime <strong>di</strong> combustione omogeneo è possibile<br />
il f<strong>un</strong>zionamento del motore con rapporti aria-carburante più magri ma il<br />
range è limitato a rapporti aria-carburante fino a circa 23:1 a causa <strong>di</strong> vin-<br />
coli sulla rigi<strong>di</strong>tà del motore e a mancate accensioni. Il f<strong>un</strong>zionamento magro<br />
è benefico per l’economia del carburante poichè a più alte pressioni nel col-<br />
lettore <strong>di</strong> aspirazione a parità <strong>di</strong> coppia <strong>di</strong> uscita comporta minori per<strong>di</strong>te <strong>di</strong><br />
pompaggio.
3.2 Il Motore DISC 53<br />
L’ottimizzazione dell’economia del carburante e delle emissioni suggerisce che<br />
il regime <strong>di</strong> combustione stratificato sia utilizzato per bassi carichi e basse ve-<br />
locità del motore mentre a più alte velocità e carichi il regime <strong>di</strong> combustione<br />
omogeneo risulta vantaggioso.<br />
3.2.2 Sistema post-trattamento<br />
Le potenzialità dei motori DISC si basano sulla loro capacità <strong>di</strong> f<strong>un</strong>zionare<br />
con quantità magre <strong>di</strong> benzina. Se da <strong>un</strong> lato questa capacità consente <strong>un</strong>a<br />
maggiore economia del carburante dall’altro determina <strong>un</strong>a quantità <strong>di</strong> gas<br />
nocivi molto superiore rispetto a quella dei tra<strong>di</strong>zionali motori a carburazione<br />
(dove, si ricorda, il motore è fatto f<strong>un</strong>zionare molto prossimo alla stechiome-<br />
tria). A causa <strong>di</strong> questa con<strong>di</strong>zione a valle del motore sono posti in serie due<br />
catalizzatori a tre vie (TWC), <strong>di</strong> cui il primo serve per catturare prodotti <strong>di</strong><br />
scarico quali HC e CO, mentre il secondo, com<strong>un</strong>emente riferito come cataliz-<br />
zatore LNT (Lean NOx Trap), serve per assorbire gli ossi<strong>di</strong> <strong>di</strong> azoto presenti<br />
nei gas <strong>di</strong> scarico, ve<strong>di</strong> Figura 3.7. Ci sono <strong>di</strong>versi aspetti importanti legati<br />
a quest’ultimo catalizzatore. Primo, la capacità <strong>di</strong> pulizia del catalizzatore:<br />
l’LNT deve essere perio<strong>di</strong>camente ripulito per rigenerare la sua capacità <strong>di</strong><br />
catturare gli ossi<strong>di</strong> <strong>di</strong> azoto e questo può essere fatto facendo f<strong>un</strong>zionare il<br />
motore a valori <strong>di</strong> rapporto aria-carburante che sono generalmente <strong>di</strong> poco<br />
meno inferiori a quelli della stechiometria, in genere a 14, dopo che ha f<strong>un</strong>-<br />
zionato per <strong>un</strong> certo tempo in modalità magra. Secondo, i depositi sulfurei:<br />
l’LNT, a causa della sua composizione chimica, risulta molto propenso a de-<br />
positi sulfurei. Un processo <strong>di</strong> pulizia <strong>di</strong> tali depositi deve essere effettuato<br />
<strong>di</strong> tanto in tanto per mantenere l’efficienza del catalizzatore (anche in questo<br />
caso facendo f<strong>un</strong>zionare il motore per <strong>un</strong> breve tempo al ricco <strong>di</strong> stechiome-<br />
tria). Terzo, la sensibilità alla temperatura: i catalizzatori LNT attualmente
3.2 Il Motore DISC 54<br />
Sonda lambda<br />
Catalizzatore<br />
a 3 vie<br />
Sonda lambda<br />
Modo Stratificato<br />
Sensore <strong>di</strong> temperatura<br />
Catalizzatore LNT<br />
Figura 3.7: Sistema <strong>di</strong> post-trattamento degli scarichi<br />
Centralina<br />
Sensore NOx<br />
in produzione hanno <strong>un</strong>a finestra <strong>di</strong> f<strong>un</strong>zionamento <strong>di</strong> temperatura molto<br />
stretta oltre la quale sia l’efficienza che la capacità <strong>di</strong> assorbimento vengono<br />
ridotte drasticamente. Per tale motivo alla struttura del motore è stato<br />
aggi<strong>un</strong>to <strong>un</strong> sensore, TEMP, come descritto in Figura 3.7.<br />
3.2.3 Sensori ed attuatori<br />
I sensori e gli attuatori com<strong>un</strong>emente impiegati nei motori DISC sono quelli<br />
mostrati in Tabella 3.1. Oltre alle variabili <strong>di</strong> controllo tra<strong>di</strong>zionali (farfal-<br />
la, anticipo accensione candela) utilizzate anche nei motori a carburazione,<br />
vengono introdotti nuovi attuatori per ottimizzare il f<strong>un</strong>zionamento del mo-<br />
tore in <strong>di</strong>fferenti con<strong>di</strong>zioni.<br />
È stato introdotto il sensore MAF (Manifold<br />
Air Flow) per poter misurare la portata <strong>di</strong> aria che entra all’interno del col-<br />
lettore <strong>di</strong> aspirazione dalla farfalla, il sensore MAP (Manifold Air Pressure)
3.2 Il Motore DISC 55<br />
Attuatori Sensori<br />
Farfalla elettronica Sensore <strong>di</strong> posizione farfalla<br />
Pressione collettore aspirazione MAP<br />
Anticipo accensione candela Velocità del motore<br />
Valvole elettroniche MAF<br />
Tempo iniezione carburante Temperatura LNT<br />
Quantità <strong>di</strong> carburante UEGO e/o HEGO<br />
Tabella 3.1: Sensori ed Attuatori motori DISC<br />
per misurare la pressione all’interno del collettore <strong>di</strong> aspirazione, nel quale<br />
oltretutto si può misurare la temperatura tramite il sensore TEMP. Dato<br />
che nelle combustioni magre non tutta l’aria viene utilizzata per le reazioni<br />
chimiche <strong>un</strong>a parte se ne può trovare anche nei gas <strong>di</strong> scarico. Per tale mo-<br />
tivo questi motori includono <strong>un</strong> nuovo sistema <strong>di</strong> ricircolo dei gas combusti,<br />
denominato EGR, in cui è presente <strong>un</strong> attuatore che regola la quantità <strong>di</strong><br />
gas esausti che ritornano nel collettore <strong>di</strong> aspirazione. La quantità d’aria non<br />
combusta viene misurata dal sensore UEGO (Universal Exhaust Gas Oxy-<br />
gen), mentre la quantità <strong>di</strong> gas combusti dal sensore HEGO (Heated Exhaust<br />
Gas Oxygen).<br />
3.2.4 I nuovi traguar<strong>di</strong> per i motori DISC<br />
La particolare struttura dei motori DISC ha posto nuove esigenze <strong>di</strong> con-<br />
trollo. I cambiamenti delle richieste del controllo sono dovuti essenzialmente<br />
a due fatti: i nuovi sensori ed attuatori aggi<strong>un</strong>gono più gra<strong>di</strong> <strong>di</strong> libertà al<br />
sistema da controllare e aumentano significativamente la complessità stessa<br />
del sistema; i sottosistemi che compongono il motore sono altamente interat-
3.2 Il Motore DISC 56<br />
tivi e non possono essere <strong>di</strong>saccoppiati senza sostanziale degradazione delle<br />
prestazioni. La duplice natura dei motori a carica stratificata ha introdotto<br />
nuovi obiettivi che complicano ulteriormente il sistema <strong>di</strong> controllo. Primo, la<br />
gestione della coppia: la coppia è <strong>un</strong>a variabile chiave per catturare la richies-<br />
ta del guidatore in <strong>un</strong> motore a combustione magra come il DISC. In assenza<br />
<strong>di</strong> <strong>un</strong> sensore <strong>di</strong> coppia, il controllo <strong>di</strong> coppia <strong>di</strong>pende principalmente dalla<br />
pre<strong>di</strong>zione del modello. Secondo, le prestazioni in transitorio: per effettuare<br />
la pulizia dell’ LNT efficacemente, con la massima economia <strong>di</strong> carburante e<br />
la minima penalizzazione delle prestazioni <strong>di</strong> guida, le transizioni tra il modo<br />
<strong>di</strong> f<strong>un</strong>zionamento omogeneo e stratificato dovrebbero essere essere eseguite il<br />
più velocemente possibile ma evitando transizioni troppo brusche e <strong>di</strong>scon-<br />
tinue.<br />
Possono essere identificati due obiettivi principali che devono essere garantiti<br />
dal sistema <strong>di</strong> controllo:<br />
- il sod<strong>di</strong>sfacimento della richiesta <strong>di</strong> coppia, in modo da garantire le<br />
richieste da parte del guidatore.<br />
- la gestione del rapporto aria-carburante per definire lo stato <strong>di</strong> f<strong>un</strong>zion-<br />
amento del motore e garantire il corretto f<strong>un</strong>zionamento del sistema <strong>di</strong><br />
post-trattamento dei gas <strong>di</strong> scarico.<br />
Più precisamente il sistema <strong>di</strong> controllo dovrà garantire l’inseguimento <strong>di</strong> de-<br />
terminati riferimenti per la coppia e per il rapporto aria-carburante. Garan-<br />
tire la richiesta <strong>di</strong> coppia, determinata dal guidatore tramite il pedale del-<br />
l’acceleratore, è com<strong>un</strong>que la priorità più importante per la sicurezza degli<br />
occupanti l’autoveicolo. Il sistema <strong>di</strong> controllo deve assicurare che la coppia<br />
τ generata dal motore insegua la coppia richiesta τref sia in transitorio che in<br />
regime stazionario. In particolare è stato esplicitamente richiesto <strong>di</strong> garantire
3.2 Il Motore DISC 57<br />
che la coppia durante la transizione <strong>di</strong> modo possa temporaneamente scor-<br />
tarsi dal riferimento ma rimanendo all’interno <strong>di</strong> <strong>un</strong> determinato intervallo<br />
specificato dal seguente vincolo<br />
∆τ = ± min{5 Nm, 5% <strong>di</strong> τref} . (3.1)<br />
Allo stesso tempo si accettano escursioni transitorie del rapporto aria-<br />
carburante dal riferimento purchè i vincoli sul rapporto aria-carburante e<br />
l’anticipo accensione candela non siano violati. In stato stazionario il rap-<br />
porto aria-carburante, in<strong>di</strong>cato con λ, deve inseguire il valore desiderato λd.<br />
Lo sviluppo <strong>di</strong> <strong>un</strong>a adeguata tecnica <strong>di</strong> controllo per questi motori è quin<strong>di</strong><br />
complessa a causa sia della sua duplice natura ibrida, legata ai due pos-<br />
sibili regimi <strong>di</strong> combustione (stratificato ed omogeneo), sia dei vincoli <strong>di</strong><br />
stato e <strong>di</strong> controllo tempo varianti sugli intervalli <strong>di</strong> variabilità del rapporto<br />
aria-carburante e dell’anticipo accensione candela in modo che il motore pos-<br />
sa essere fatto f<strong>un</strong>zionare senza percepibili variazione <strong>di</strong> guidabilità, senza<br />
mancate accensioni e senza violazioni dei limiti sulle emissioni.
Capitolo 4<br />
Modello ibrido per il controllo<br />
Nel capitolo 3 è stato descritto in dettaglio il f<strong>un</strong>zionamento <strong>di</strong> <strong>un</strong> motore<br />
ad iniezione <strong>di</strong>retta a benzina evidenziando il ruolo delle varie parti che lo<br />
compongono e sottolineando i possibili vantaggi che si possono ottenere da<br />
<strong>un</strong> tale tipo <strong>di</strong> motore.<br />
È stato osservato che l’elemento chiave per questo<br />
sistema <strong>di</strong>venta il controllore, che coor<strong>di</strong>na le sue varie componenti e garan-<br />
tisce determinate specifiche.<br />
In questo capitolo verrà introdotto il modello matematico del motore DISC<br />
e verrà spiegato come la teoria dei sistemi ibri<strong>di</strong> presentata nei capitoli 1 e 2<br />
fornisca ottimi strumenti per caratterizzare i mo<strong>di</strong> <strong>di</strong> f<strong>un</strong>zionamento multi-<br />
pli del motore, consentendo <strong>di</strong> includere ulteriori specifiche non strettamente<br />
legate alla meccanica del motore.
4.1 Modello non lineare del motore DISC 59<br />
4.1 Modello non lineare del motore DISC<br />
La modellizzazione e la validazione del motore DISC, ampiamente illustrate<br />
in [JKB + 99, KDS00], è stata ottenuta su <strong>un</strong> motore DISC <strong>di</strong> produzione. Il<br />
motore è stato accoppiato ad <strong>un</strong> <strong>di</strong>namometro con cella <strong>di</strong> carico per misurare<br />
la coppia. In <strong>un</strong>o dei cilindri è stato inserito <strong>un</strong> trasduttore <strong>di</strong> pressione ed<br />
il segnale <strong>di</strong> pressione è stato campionato ad ogni angolo del sistema biella<br />
manovella. L’informazione della pressione è stata poi utilizzata per calcolare<br />
la pressione me<strong>di</strong>a <strong>di</strong> pompaggio ed altri parametri <strong>di</strong> combustione. Il motore<br />
è dotato oltre ai tra<strong>di</strong>zionali sensori <strong>di</strong> <strong>un</strong> sensore UEGO (Universal Exhaust<br />
Gas Oxigen Sensor) capace <strong>di</strong> misurare rapporti aria-carburante fino a 60:1.<br />
In questo lavoro <strong>di</strong> tesi, grazie al supporto del Ford Research and Ad-<br />
vanced Engineering, si è potuto sviluppare l’analisi e il controllo su <strong>di</strong> <strong>un</strong><br />
modello numerico avanzato proprietario Ford. Il modello a nostra <strong>di</strong>spo-<br />
sizione ha <strong>di</strong>namiche evolutive più prossime al motore reale rispetto ai modelli<br />
<strong>di</strong> simulazione precedentemente utilizzati [GBKH05]. Poichè il nostro inter-<br />
esse è incentrato sul controllo <strong>di</strong> coppia e rapporto aria-carburante, nonchè<br />
sul controllo del modo operativo, si considera la valvola EGR (Exhaust Gas<br />
Recirculation) chiusa (ve<strong>di</strong> Figura 3.4), o, equivalentemente, si assume <strong>di</strong><br />
avere <strong>un</strong> motore senza condotto <strong>di</strong> ricircolo dei gas.<br />
La <strong>di</strong>namica del collettore <strong>di</strong> aspirazione che descrive l’evoluzione tem-<br />
porale dell’aria all’interno del motore si ottiene <strong>di</strong>fferenziando la legge dei<br />
gas ideali sotto l’ass<strong>un</strong>zione <strong>di</strong> con<strong>di</strong>zioni isotermiche. I valori me<strong>di</strong> per ciclo<br />
della pressione nel collettore <strong>di</strong> aspirazione e le portate d’aria all’interno del
4.1 Modello non lineare del motore DISC 60<br />
collettore sono legati dalla seguente equazione:<br />
dove<br />
˙pm = cm (Wth − Wcyl),<br />
Wcyl = kcyl,0 + kcyl,1 · pmω,<br />
(4.1)<br />
• ω è la velocità <strong>di</strong> rotazione del motore, espressa in giri al minuto [rpm];<br />
• pm rappresenta la pressione all’interno del collettore <strong>di</strong> aspirazione,<br />
espressa in [kPa];<br />
• cm = RTm<br />
Vm dove Tm, in gra<strong>di</strong> Kelvin [K], è la temperatura nel collettore,<br />
R è la costante <strong>un</strong>iversale dei gas, e Vm è il volume del collettore <strong>di</strong><br />
aspirazione;<br />
• Wth [g/s] è la portata <strong>di</strong> aria che passa attraverso la farfalla elettroni-<br />
ca. Tale grandezza risulta <strong>un</strong>a f<strong>un</strong>zione non lineare <strong>di</strong> pm descritta in<br />
seguito in (4.6);<br />
• Wcyl è la portata <strong>di</strong> aria che entra all’interno dei cilindri, e kcyl,0, kcyl,1<br />
sono dei coefficienti che <strong>di</strong>pendono dalla velocità del motore ω e dalla<br />
temperatura nel collettore <strong>di</strong> aspirazione Tm. La rappresentazione <strong>di</strong><br />
Wcyl ed il valore dei coefficienti kcyl,0, kcyl,1 sono derivate dalle osser-<br />
vazioni dei dati <strong>di</strong> vari tipi <strong>di</strong> motori, compresi i motori DISC, come<br />
descritto in [JKB + 99].<br />
Il rapporto aria-carburante è definito come<br />
λ = Wcyl<br />
, (4.2)<br />
Wf
4.1 Modello non lineare del motore DISC 61<br />
dove Wf [g/s ] è la portata <strong>di</strong> carburante all’interno dei cilindri. Il ritardo del-<br />
l’iniezione del carburante rispetto alla fase <strong>di</strong> aspirazione, o <strong>di</strong> compressione,<br />
del motore è considerato implicitamente assumendo che il valore desiderato<br />
<strong>di</strong> Wf sia ritardato <strong>di</strong> <strong>un</strong>a fase del motore. In Figura 5.11 è riportato l’an-<br />
damento <strong>di</strong> λ in f<strong>un</strong>zione della pressione pm e della portata <strong>di</strong> carburante Wf.<br />
λ<br />
120<br />
100<br />
80<br />
60<br />
40<br />
20<br />
0<br />
120<br />
100<br />
80<br />
60<br />
Rapporto aria−carburante<br />
40<br />
p m [kPa]<br />
Figura 4.1: Andamento del rapporto aria-carburante<br />
Data l’inerzia me<strong>di</strong>a rotazionale Je, che include l’albero a camme ed il<br />
volano, la <strong>di</strong>namica rotazionale del motore segue la seguente equazione:<br />
20<br />
0<br />
2<br />
1.5<br />
π<br />
30 Je ˙ω = τ − τl , (4.3)<br />
dove τ [Nm], τl [Nm] sono la coppia del motore e la coppia <strong>di</strong> carico, ω il<br />
numero <strong>di</strong> giri per minuto [rpm], ed il fattore π<br />
30<br />
tra rpm e rad/sec.<br />
1<br />
Wf<br />
0.5<br />
è dovuto alla conversione<br />
0
4.1 Modello non lineare del motore DISC 62<br />
La coppia è definita come <strong>un</strong>a somma <strong>di</strong> tre componenti<br />
τ = τmfr + τpump + τind, (4.4)<br />
τmfr [Nm] e τpump [Nm] sono, rispettivamente, la coppia <strong>di</strong> frizione mecca-<br />
nica e la coppia <strong>di</strong> pompaggio, misurate in Nm. La coppia <strong>di</strong> pompaggio<br />
corrisponde alle per<strong>di</strong>te durante le fasi <strong>di</strong> aspirazione e scarico mentre la<br />
coppia <strong>di</strong> frizione corrisponde alla frizione meccanica necessaria per superare<br />
gli attriti delle parti in movimento del motore. Queste due coppie sono state<br />
modellate come f<strong>un</strong>zioni affini della pressione pm al collettore <strong>di</strong> aspirazione<br />
che <strong>di</strong>pendono inoltre della velocità ω del motore, secondo equazioni del tipo:<br />
τmfr = f 0 m + f 1 mpm + f 2 mω + f 3 mpmω + f 4 mω 2<br />
τpump = f 0 p + f 1 ppm + f 2 pω + f 3 ppmω + f 4 pω 2 ,<br />
dove f j<br />
i , con i = m,p e j = 0...4, sono opport<strong>un</strong>i coefficienti.<br />
Le coppie τmfr e τpump sono negative dato che corrispondono a per<strong>di</strong>te. Può<br />
essere verificato che l’aumento della pressione nel collettore <strong>di</strong> aspirazione<br />
riduce l’ampiezza delle per<strong>di</strong>te <strong>di</strong> pompaggio ma aumenta l’ampiezza delle<br />
per<strong>di</strong>te <strong>di</strong> frizione. Oltretutto, ad <strong>un</strong>a stessa pressione <strong>di</strong> collettore, la cop-<br />
pia generata dal motore nel regime <strong>di</strong> combustione omogeneo è più grande <strong>di</strong><br />
quella generata nel regime <strong>di</strong> combustione stratificato. Com<strong>un</strong>que, il f<strong>un</strong>zion-<br />
amento a bassi carichi con <strong>un</strong>a maggiore pressione <strong>di</strong> collettore nel regime<br />
stratificato rispetto al regime omogeneo riduce le per<strong>di</strong>te <strong>di</strong> pompaggio suf-<br />
ficientemente da bilanciare l’aumento degli attriti e qualche per<strong>di</strong>ta in effi-<br />
cienza.<br />
τind [Nm] è la coppia in<strong>di</strong>cata. La coppia in<strong>di</strong>cata è <strong>un</strong>a misura dell’efficienza<br />
termica nel convertire l’energia chimica del carburante in lavoro sul pistone<br />
durante il processo <strong>di</strong> combustione.
4.1 Modello non lineare del motore DISC 63<br />
In [JKB + 99] è proposta la seguente equazione per i motori DISC:<br />
τind = (θa + θb(δ − δmbt) 2 )Wf, (4.5)<br />
dove (δ − δmbt) è la deviazione dell’anticipo accensione candela dal valore <strong>di</strong><br />
efficienza massimo, δmbt, e θa, θb sono coefficienti che saranno descritti con<br />
maggiore dettaglio successivamente.<br />
In Figura 4.2 si riporta l’andamento della coppia in f<strong>un</strong>zione dell’anticipo<br />
accensione candela sia nel regime stratificato che nel regime omogeneo. Ad<br />
<strong>un</strong>a data con<strong>di</strong>zione <strong>di</strong> f<strong>un</strong>zionamento, esiste <strong>un</strong> anticipo ottimale, δmbt, che<br />
corrisponde alla massima coppia (MBT) e da qui la miglior economia del<br />
carburante. L’anticipo δmbt <strong>di</strong>pende dalle variabili <strong>di</strong> f<strong>un</strong>zionamento del mo-<br />
tore come velocità del motore, carico, rapporto aria-carburante e tempo <strong>di</strong><br />
iniezione. L’anticipo δmbt è utilizzato nell’equazione (4.5) per normalizzare<br />
gli effetti dell’anticipo accensione candela sulla coppia. Il modello <strong>di</strong> curva<br />
in Figura 4.2 si ottiene prendendo ∂τ<br />
∂δ<br />
= 0 e risolvendo poi per δ.<br />
Figura 4.2: Andamento della coppia in f<strong>un</strong>zione <strong>di</strong> δ
4.1 Modello non lineare del motore DISC 64<br />
I coefficienti nell’equazione della coppia in<strong>di</strong>cata θa, θb e δmbt sono f<strong>un</strong>-<br />
zioni del rapporto aria-carburante λ che <strong>di</strong>pendono dall’anticipo accensione<br />
candela δ, espresso in gra<strong>di</strong> <strong>di</strong> rotazione della manovella (ve<strong>di</strong> Figura 3.1),<br />
del regime <strong>di</strong> rotazione del motore ω e del modo operativo ρ.<br />
In particolare ρ = 0 corrisponde al regime stratificato, mentre ρ = 1 al<br />
regime omogeneo. Una tale natura binaria <strong>di</strong> ρ determina <strong>un</strong>a risposta <strong>di</strong><br />
coppia completamente <strong>di</strong>versa nei due <strong>di</strong>stinti regimi <strong>di</strong> f<strong>un</strong>zionamento del<br />
motore, ciò comporta l’ibridezza del modello e da qui la necessità <strong>di</strong> <strong>un</strong>a<br />
opport<strong>un</strong>a descrizione.<br />
In sintesi il modello utilizzato per lo sviluppo del controllore ha d<strong>un</strong>que i<br />
seguenti ingressi e uscite:<br />
ω pm<br />
pm<br />
Wth<br />
Wf<br />
ρ<br />
δ<br />
motore DISC<br />
.<br />
Wcyl<br />
τ<br />
λ<br />
Ath<br />
δmbt<br />
Figura 4.3: Blocco simulink del motore DISC
4.1 Modello non lineare del motore DISC 65<br />
4.1.1 Modello della valvola<br />
Tenuto conto della natura meccanica della valvola, si introduce l’equazione<br />
standard del flusso <strong>di</strong> <strong>un</strong> fluido attraverso <strong>un</strong> orifizio [Hey88] per rappre-<br />
sentare le <strong>di</strong>namiche del flusso d’aria attraverso la valvola del collettore <strong>di</strong><br />
aspirazione :<br />
dove<br />
Wth = AthPamb<br />
√<br />
Tamb<br />
<br />
pm<br />
· φ , (4.6)<br />
Pamb<br />
Ath = Ath · Cd<br />
√R , (4.7)<br />
• Pamb [kPa] è la pressione ambientale, considerata costante.<br />
• Tamb [K] è la temperatura ambientale, considerata costante.<br />
• Ath [m 2 ] è l’area effettiva <strong>di</strong> aperura della valvola.<br />
• R è la costante <strong>un</strong>iversale dei gas.<br />
• Cd è <strong>un</strong> coefficiente che tiene conto della <strong>di</strong>fferenza fra flusso ideale e<br />
flusso reale attraverso la valvola.<br />
• pm rappresenta la pressione all’interno del collettore <strong>di</strong> aspirazione,<br />
espressa in [kPa].<br />
La f<strong>un</strong>zione φ è definita come:<br />
⎧<br />
⎪⎨<br />
φ(x) =<br />
⎪⎩<br />
γ 1<br />
γ+1<br />
2 2(γ−1)<br />
2<br />
γ+1<br />
x 1 <br />
γ 2γ<br />
γ−1<br />
1 − x γ−1<br />
γ<br />
1<br />
2<br />
if x ≤ ( 2<br />
γ<br />
) γ−1<br />
γ+1<br />
if x > ( 2<br />
γ<br />
) γ−1<br />
γ+1<br />
, (4.8)
4.1 Modello non lineare del motore DISC 66<br />
dove γ = 1.4 è il rapporto dei calori specifici per l’aria ed è considerata<br />
costante.<br />
Nel modello ibrido utilizzato poi per lo sviluppo del controllore MPC ibrido,<br />
che introdurremo nella sezione seguente, le <strong>di</strong>namiche <strong>di</strong> flusso dell’aria (4.6)-<br />
(4.8) non vengono considerate; cioè il flusso viene interpretato come <strong>un</strong>a<br />
variabile <strong>di</strong>rettamente manipolabile. Tali <strong>di</strong>namiche sono invece considerate<br />
nel modello <strong>di</strong> simulazione come segue, ve<strong>di</strong> Figura 4.4.<br />
ω pm<br />
pm<br />
Wth<br />
Wf<br />
ρ<br />
δ<br />
Wth<br />
Valvola<br />
motore DISC<br />
Wthcontr<br />
pm<br />
.<br />
Wcyl<br />
τ<br />
λ<br />
Ath<br />
δmbt<br />
Figura 4.4: Blocco simulink del motore DISC con <strong>di</strong>namica della valvola<br />
pm
4.1 Modello non lineare del motore DISC 67<br />
Generata dal controllore la richiesta <strong>di</strong> flusso attraverso la farfalla (per chiarez-<br />
za <strong>di</strong> rappresentazione in<strong>di</strong>cato solo in Figura 4.4 con Wthcontr), il riferimento<br />
per pm e note Pamb, Tamb, l’equazione (4.6) viene dapprima invertita per cal-<br />
colare il valore <strong>di</strong> Ath richiesto. Il segnale uscente è quin<strong>di</strong> filtrato da <strong>un</strong> filtro<br />
passa basso del primo or<strong>di</strong>ne, poi passato attraverso <strong>un</strong> blocco <strong>di</strong> saturazione<br />
per evitare che si producano valori fuori dai limiti fisici. Infine questo segnale<br />
Ath richiesto, entra nella <strong>di</strong>namica (4.6) per poter calcolare Wth che andrà in<br />
ingresso al modello del motore.<br />
E’ inoltre da osservare che nei sistemi reali il controllore non può agire<br />
<strong>di</strong>rettamente sul flusso, ma solo sull’angolo <strong>di</strong> inclinazione della valvola. In<br />
Figura 4.5 è rappresentata la relazione, mappata come tabella in centralina,<br />
tra Ath e l’angolo <strong>di</strong> inclinazione della valvola. Nei motori reali, <strong>un</strong>a volta<br />
determinata l’area della valvola, la mappa non-lineare viene invertita per<br />
calcolare l’angolo <strong>di</strong> inclinazione che viene attuato dalla valvola.<br />
Figura 4.5: Rapporto fra Ath e angolo della valvola
4.2 Modello ibrido per il controllo 68<br />
4.2 Modello ibrido per il controllo<br />
La natura binaria dell’ingresso ρ, strettamente correlato con le <strong>di</strong>namiche<br />
continue del motore, impone <strong>un</strong> approccio alla modellizzazione e al controllo<br />
<strong>di</strong> tipo ibrido. La teoria dei sistemi ibri<strong>di</strong> permette <strong>di</strong> sviluppare modelli<br />
<strong>un</strong>ificati che racchiudono <strong>di</strong>namiche continue, <strong>di</strong>namiche <strong>di</strong>screte e relazioni<br />
logiche (ve<strong>di</strong> Capitolo 1).<br />
4.2.1 Linearizzazione e <strong>di</strong>scretizzazione<br />
Il modello matematico descritto dalle formule (4.1), (4.2) e (4.4) è <strong>un</strong> modello<br />
non lineare tempo continuo. Per poterlo descrivere secondo le tecniche de-<br />
scritte nel capitolo 1 è necessario effettuare prima <strong>un</strong>a linearizzazione a tratti<br />
delle parti non lineari e successivamente <strong>un</strong>a <strong>di</strong>scretizzazione nel tempo delle<br />
equazioni continue linearizzate.<br />
Si assumono come ingressi manipolabili i segnali Wth, Wf, δ, ρ e come segnali<br />
<strong>di</strong> uscita pm, τ, ∆δ = δmbt − δ e λ. Il numero <strong>di</strong> giri del motore ω è <strong>un</strong>a<br />
variabile misurabile, ma non controllabile; Ath è utilizzata per calcolare il<br />
flusso attraverso la farfalla.<br />
Per generare il modello linearizzato ed in seguito il modello MLD (sezione<br />
4.2.3), si è considerato il motore ad <strong>un</strong> numero <strong>di</strong> giri costante, in particolare<br />
ω = 2000 [rpm]. La ragione <strong>di</strong> questa ass<strong>un</strong>zione è motivata dal fatto che<br />
2000 rpm è la velocità del motore nell’intorno della quale si effettuano le tran-<br />
sizioni <strong>di</strong> modo; per regimi inferiori a 1500 rpm il motore non è in con<strong>di</strong>zioni<br />
<strong>di</strong> sovraccarico e il controllore tenderà ad operare in modo stratificato costan-<br />
temente, eccezion fatta per la perio<strong>di</strong>ca pulizia del filtro NOx. In regimi <strong>di</strong><br />
rotazione superiori il guidatore richiede prestazioni superiori al motore, ed il
4.2 Modello ibrido per il controllo 69<br />
controllore, per garantire l’inseguimento del riferimento <strong>di</strong> coppia, opera in<br />
modo omogeneo 1 . Inoltre la strategia <strong>di</strong> controllo, presentata nel capitolo 5,<br />
utilizza com<strong>un</strong>que l’informazione sulla velocità attuale del motore e permette<br />
<strong>di</strong> ottenere buoni risultati anche in con<strong>di</strong>zione <strong>di</strong>versi da quelle nominali.<br />
Per linearizzare il modello del DISC sono stati definiti due p<strong>un</strong>ti <strong>di</strong> lavoro,<br />
<strong>un</strong>o per ogni modo operativo, alla velocità nominale (ve<strong>di</strong> tabella 4.1) 2 .<br />
Modo Stratificato (ρ = 0) Modo Omogeneo (ρ = 1)<br />
Coppia [Nm] τ d (0) = 40 τ d (1) = 40<br />
Rapporto aria-carburante λ d (0) = 30 λ d (1) = 14<br />
Anticipo candela [gra<strong>di</strong>] δ d (0) = 16 δ d (1) = 16<br />
Tabella 4.1: P<strong>un</strong>ti <strong>di</strong> lavoro per il modello linearizzato<br />
Grazie alla collaborazione con il laboratorio <strong>di</strong> ricerca Ford, è stato pos-<br />
sibile utilizzare <strong>un</strong> accurato modello <strong>di</strong> motore DISC il quale, benchè basato<br />
sulle equazioni presentate, è <strong>di</strong> natura prettamente numerica. Ciò ha com-<br />
portato <strong>un</strong>o sviluppo dei modelli lineari, <strong>un</strong>o per ogni modo operativo, e <strong>un</strong>a<br />
successiva <strong>di</strong>scretizzazione tramite routine numeriche standard implementate<br />
in ambiente MATLAB . In particolare, <strong>un</strong>a volta definiti i p<strong>un</strong>ti <strong>di</strong> lavoro,<br />
i valori <strong>di</strong> W d<br />
th (ρ), W d f (ρ) e pd m(ρ) sono stati calcolati in modo che siano con-<br />
sistenti con il modo operativo e corrispondano in stato stazionario ai valori<br />
<strong>di</strong> coppia, rapporto aria-carburante e anticipo accensione candela definiti in<br />
tabella 4.1. Una volta ottenuti i due insiemi <strong>di</strong> p<strong>un</strong>ti <strong>di</strong> lavoro, costituiti<br />
1 Queste valutazioni sono <strong>di</strong> carattere generale. Per <strong>un</strong>a analisi accurata devono es-<br />
sere considerati numerosi fattori, tra i quali, in primo luogo, la tipologia <strong>di</strong> veicolo, la<br />
rapportatura del cambio e la pendenza della strada.<br />
2 [·] d rappresenta il p<strong>un</strong>to <strong>di</strong> lavoro per la variabile [·].
4.2 Modello ibrido per il controllo 70<br />
in ultimo da τ d (ρ), λ d (ρ), δ d (ρ), W d<br />
th (ρ), W d f (ρ) e pd m(ρ), si sono linearizzati<br />
e <strong>di</strong>scretizzati numericamente i due modelli del motore DISC con tempo <strong>di</strong><br />
campionamento T = 10 ms.<br />
In riferimento alle equazioni (4.1), (4.2) e (4.4) si riporta la linearizzazione<br />
analitica delle <strong>di</strong>namiche <strong>di</strong> coppia, rapporto aria-carburante e pressione.<br />
L’equazione (4.1) risulta essere già <strong>un</strong>’equazione <strong>di</strong>fferenziale lineare per la<br />
quale è sufficiente effettuare <strong>un</strong>a <strong>di</strong>scretizzazione nel tempo. Applicando la<br />
trasformata <strong>di</strong> Laplace a pm (uscita) e Wth (ingresso):<br />
sPm(s) = cmWth(s) − cmkcylPm(s)<br />
⇐⇒ Pm(s) [s + cmkcyl] = cmWth(s)<br />
⇐⇒ Pm(s)<br />
Wth(s)<br />
= G(s) =<br />
cm<br />
cmkcyl + s<br />
si ottiene <strong>un</strong>a f<strong>un</strong>zione <strong>di</strong> trasferimento tra pm and Wth. Introduciamo <strong>un</strong><br />
mantenitore <strong>di</strong> or<strong>di</strong>ne zero (Zero-Order Holder, ZOH) per determinare la<br />
f<strong>un</strong>zione <strong>di</strong> trasferimento G(z) nel dominio della variabile complessa z.<br />
con<br />
G(z) = Pm(z)<br />
Wth(z)<br />
<br />
−sT 1 − e<br />
= Z · G(s)<br />
s<br />
= (1 − z −1 <br />
cm<br />
)Z<br />
(cmkcyl + s)s<br />
= (1 − z −1 <br />
1<br />
1<br />
) R0Z + R1Z<br />
s s + cmkcyl<br />
= R0(1 − e−Tcmkcyl)z −1<br />
1 − z−1e−Tcmkcyl R0 = −R1 = 1<br />
kcyl
4.2 Modello ibrido per il controllo 71<br />
termini residuali. Ritorniamo nel dominio del tempo:<br />
Z −1 (1 − z −1 e −Tcmkcyl )Pm(z) = Z −1 R0(1 − e −Tcmkcyl )z −1 Wth(z) <br />
=⇒ pm(t) − e −Tcmkcyl pm(t − 1) = R0(1 − e −Tcmkcyl )Wth(t − 1)<br />
da cui otteniamo<br />
pm(t + 1) = e −Tcmkcyl pm(t) + 1<br />
kcyl<br />
(1 − e −Tcmkcyl )Wth(t) (4.9)<br />
Per le altre due equazioni, (4.2) e (4.4), è necessario definire due p<strong>un</strong>ti <strong>di</strong><br />
lavoro, <strong>un</strong>o per il regime stratificato e l’altro per il regime omogeneo. Infatti,<br />
a causa della natura ibrida del motore non è sufficiente <strong>un</strong>’<strong>un</strong>ica lineariz-<br />
zazione per caratterizzare le <strong>di</strong>namiche del rapporto aria-carburante e della<br />
coppia. In particolare l’equazione (4.2) <strong>di</strong>venta<br />
mentre la (4.4) <strong>di</strong>venta<br />
τ(t) = τ d (ρ) + ∂τ<br />
<br />
<br />
<br />
<br />
∂pm<br />
λ(t) = λ d (ρ) + kcyl<br />
W d f (ρ)pm(t) − kcylp d m(ρ)<br />
W d f (ρ)2 Wf(t), (4.10)<br />
d(ρ)<br />
˜pm + ∂τ<br />
∂Wf<br />
<br />
<br />
<br />
<br />
d(ρ)<br />
˜Wf + ∂τ<br />
<br />
<br />
<br />
<br />
∂δ<br />
d(ρ)<br />
˜δ + ∂τ<br />
<br />
<br />
<br />
<br />
∂λ<br />
d(ρ)<br />
˜λ, (4.11)<br />
dove [·] d in<strong>di</strong>ca il p<strong>un</strong>to <strong>di</strong> lavoro per la variabile [·], ˜<br />
[·] = [·] − [·] d , (ρ) in<strong>di</strong>ca<br />
la <strong>di</strong>pendenza dal regime ρ del motore, e la notazione d(ρ) in<strong>di</strong>ca le seguenti<br />
uguaglianze
4.2 Modello ibrido per il controllo 72<br />
<br />
∂τ<br />
<br />
<br />
<br />
∂pm<br />
<br />
∂τ<br />
<br />
<br />
<br />
∂Wf<br />
<br />
∂τ<br />
<br />
<br />
<br />
∂δ<br />
<br />
∂τ<br />
<br />
<br />
<br />
∂λ<br />
d(ρ)<br />
d(ρ)<br />
d(ρ)<br />
d(ρ)<br />
= d(τmfr<br />
<br />
+ τpump)<br />
<br />
<br />
= f<br />
dpm <br />
d(ρ)<br />
b m + f b p<br />
= ∂τind<br />
<br />
<br />
<br />
= θ<br />
∂Wf <br />
d(ρ)<br />
d a + θ d b(δ d − δ d mbt) 2<br />
= ∂τind<br />
<br />
<br />
<br />
= 2W<br />
∂δ <br />
d(ρ)<br />
d f θ d b(δ d − δ d mbt)<br />
= ∂τind<br />
<br />
<br />
<br />
<br />
∂λ <br />
d(ρ)<br />
= W d ⎧ <br />
⎨ <br />
dθa<br />
f + (δ<br />
⎩ dλ<br />
d − δ d mbt) 2dθb<br />
<br />
<br />
<br />
<br />
dλ<br />
d(ρ)<br />
d(ρ)<br />
− 2θ d b(δ d − δ d mbt) dδmbt<br />
dλ<br />
<br />
<br />
<br />
<br />
d(ρ)<br />
Per quanto riguarda il rapporto aria-carburante è da osservare che la<br />
<strong>di</strong>pendenza <strong>di</strong> λ da ρ non è così evidente come nella coppia τ. Nei motori<br />
reali, però, il rapporto deve rimanere limitato all’interno <strong>di</strong> <strong>un</strong> determinato<br />
intervallo e ci sono due intervalli <strong>di</strong>stinti per i due regimi <strong>di</strong> f<strong>un</strong>zionamento<br />
del motore.<br />
Al modello sono stati aggi<strong>un</strong>ti due integratori per ottenere offset nulli in<br />
con<strong>di</strong>zioni <strong>di</strong> regime stazionario<br />
⎫<br />
⎬<br />
⎭ .<br />
ɛτ(t + 1) = ɛτ(t) + T · (τref − τ) (4.12a)<br />
ɛλ(t + 1) = ɛλ(t) + T · (λref − λ), (4.12b)<br />
dove [·]ref rappresenta il valore <strong>di</strong> riferimento per la variabile [·]. L’aggi<strong>un</strong>ta<br />
<strong>di</strong> questi integratori assicura che τ e λ del modello non lineare inseguano<br />
τref e λref con offset nullo.<br />
È stato necessario effettuare questa aggi<strong>un</strong>ta in<br />
quanto i segnali d’ingresso che vengono generati dal controllore dovrebbero<br />
portare il sistema non lineare verso i valori <strong>di</strong> riferimento. In realtà, dato che
4.2 Modello ibrido per il controllo 73<br />
il controllore basa le proprie scelte in f<strong>un</strong>zione del modello lineare e quest’ul-<br />
timo introduce intrinsecamente <strong>un</strong> errore rispetto al modello non lineare, è<br />
risultato necessario aggi<strong>un</strong>gere al modello MLD due integratori che consen-<br />
tano <strong>di</strong> tenere traccia della “<strong>di</strong>stanza” dei segnali del modello non lineare dai<br />
riferimenti.<br />
Inoltre abbiamo aggi<strong>un</strong>to come uscita aggi<strong>un</strong>tiva del modello MLD la de-<br />
viazione dell’anticipo accensione candela dal valore <strong>di</strong> efficienza massimo,<br />
∆δ = δmbt −δ, poichè viene richiesto che insegua <strong>un</strong> determinato riferimento.<br />
4.2.2 Vincoli<br />
Il modello ibrido sarebbe già sufficiente per simulare il comportamento del<br />
motore. In realtà, ci sono alc<strong>un</strong>e con<strong>di</strong>zioni <strong>di</strong> f<strong>un</strong>zionamento, già descritte<br />
nel capitolo 3, che devono essere rispettate:<br />
Vincolo sul rapporto aria-carburante.<br />
È necessario rimanere al <strong>di</strong> sotto <strong>di</strong> <strong>un</strong><br />
limite superiore del rapporto aria-carburante in quanto è necessario limitare<br />
rapporti troppo magri che determinerebbero rigi<strong>di</strong>tà del motore e possibili<br />
mancate accensioni.<br />
È anche necessario porre <strong>un</strong> limite inferiore in quanto<br />
per rapporti troppo ricchi si produrrebbe <strong>un</strong> eccessivo aumento delle emis-<br />
sioni <strong>di</strong> gas <strong>di</strong> scarico e fenomeni <strong>di</strong> preaccensione. Il vincolo prende la<br />
forma<br />
λmin(ρ) ≤ λ(t) ≤ λmax(ρ). (4.13)<br />
Si noti che λmin(ρ), λmax(ρ) <strong>di</strong>pendono dal regime <strong>di</strong> combustione ρ.
4.2 Modello ibrido per il controllo 74<br />
I limiti adottati in tutte le simulazioni sono stati:<br />
⎧<br />
⎨ 12 nel regime omogeneo (ρ = 1),<br />
λmin =<br />
⎩ 19 nel regime stratificato (ρ = 0),<br />
⎧<br />
⎨ 21 nel regime omogeneo (ρ = 1),<br />
λmax =<br />
⎩ 38 nel regime stratificato (ρ = 0).<br />
Vincolo sulla portata <strong>di</strong> aria attraverso la farfalla elettronica. Si impone il<br />
seguente vincolo<br />
0 ≤ Wth ≤ K , (4.14)<br />
dove K è <strong>un</strong>a costante 3 . Questo vincolo rappresenta in sostanza la capacità<br />
della farfalla <strong>di</strong> variare la superficie <strong>di</strong> apertura del condotto da <strong>un</strong> mini-<br />
mo che corrisponde alla chiusura della farfalla, fino ad <strong>un</strong> massimo che cor-<br />
risponde alla sua completa apertura.<br />
Vincolo sull’anticipo accensione candela δ(t). Questo vincolo è necessario<br />
per evitare eccessive rigi<strong>di</strong>tà del motore e mantenere stabile la combustione<br />
nel cilindro:<br />
dove<br />
0 ≤ δ ≤ δmbt(ρ,pm,Wth,Wf,δ), (4.15)<br />
δmbt(ρ,pm,Wth,Wf,δ) = ℓ δ 1(ρ)pm +ℓ δ 2(ρ)Wth +ℓ δ 3(ρ)Wf +ℓ δ 4(ρ)δ +ℓ δ 5ρ (4.16)<br />
è modellata come <strong>un</strong>a f<strong>un</strong>zione switched affine.<br />
3 Un approccio molto più elaborato richiederebbe che K venisse rappresentata come<br />
<strong>un</strong>a f<strong>un</strong>zione PWA della pressione del collettore <strong>di</strong> aspirazione.
4.2 Modello ibrido per il controllo 75<br />
Vincolo sulla variazione della portata d’aria attraverso la farfalla. Questo<br />
vincolo è necessario poichè nel modello ibrido realizzato per lo sviluppo del<br />
controllore MPC ibrido le <strong>di</strong>namiche del flusso attraverso la farfalla (4.6)-<br />
(4.8) non vengono considerate, mentre sono presenti in simulazione. Si in-<br />
serisce quin<strong>di</strong> <strong>un</strong> vincolo su ˙ Wth per modellare il filtraggio operato dalla<br />
<strong>di</strong>namica della farfalla sul comando del controllore.<br />
˙W min<br />
th ≤ Wth(t) − Wth(t − 1)<br />
T<br />
dove ˙ W min<br />
th , ˙ W max<br />
th sono costanti <strong>di</strong> valore adeguato.<br />
4.2.3 Il modello MLD<br />
≤ ˙ W max<br />
th , (4.17)<br />
I modelli linearizzati e <strong>di</strong>scretizzati ed i vincoli (4.13)-(4.17) sono modellati<br />
in HYSDEL ed il listato è riportato in Appen<strong>di</strong>ce A.2.<br />
Il compilatore HYSDEL traduce l’equazioni alle <strong>di</strong>fferenze ed i vincoli nel<br />
sistema MLD<br />
x(t + 1) = Ax(t) + B1u(t) + B2γ(t) + B3z(t), (4.18a)<br />
y(t) = Cx(t) + D1u(t) + D2γ(t) + D3z(t), (4.18b)<br />
E2γ(t) + E3z(t) ≤ E1u(t) + E4x(t) + E5. (4.18c)<br />
Nel nostro caso,<br />
x = [pm ɛτ ɛλ Wth(t − 1) τref λref] ∈ R 6 ,<br />
y = [τ − τref λ − λref δmbt − δ] ′ ∈ R 3 ,<br />
u = [Wth Wf δ ρ] ′ ∈ R 3 × {0, 1},<br />
(4.19)<br />
dove Wth, Wf, δ, ρ sono le variabili manipolabili, i coman<strong>di</strong> <strong>di</strong> riferimento<br />
τref, λref sono modellati come stati (costanti) che consentano la pre<strong>di</strong>zione (e<br />
l’integrazione) degli errori <strong>di</strong> inseguimento futuri. γ, z sono, rispettivamente,
4.2 Modello ibrido per il controllo 76<br />
<strong>un</strong> vettore ausiliario binario e reale il cui valore è determinato <strong>un</strong>icamente<br />
dalle <strong>di</strong>suguaglianze (4.18c) <strong>un</strong>a volta che x(t) e u(t) sono fissate, secondo la<br />
definizione <strong>di</strong> ben postezza data nel paragrafo 1.3.3 a pagina 25. Nel nostro ca-<br />
so il vettore binario γ è vuoto, dato che ness<strong>un</strong>a variabile booleana aggi<strong>un</strong>tiva<br />
è necessaria per descrivere le <strong>di</strong>namiche del motore DISC, e z ∈ R 5 .
Capitolo 5<br />
Progetto del controllore<br />
Nel capitolo precedente è stata descritta la <strong>di</strong>namica non lineare del motore<br />
DISC ed è stato <strong>di</strong>mostrato come tale modello sia riconducibile ad <strong>un</strong>a forma<br />
adatta alla descrizione ibrida. Alla descrizione ibrida del motore sono stati<br />
aggi<strong>un</strong>ti dei vincoli necessari per garantire <strong>un</strong> corretto f<strong>un</strong>zionamento del<br />
motore. Il tutto poi è stato descritto in HYSDEL e tradotto, tramite il<br />
compilatore HYSDEL, in <strong>un</strong> modello MLD.<br />
In questo capitolo sarà mostrata la strategia <strong>di</strong> controllo adottata basata su<br />
due passi, la generazione dei riferimenti e il controllo pre<strong>di</strong>ttivo ibrido. Si<br />
vedrà come il modello MLD precedentemente ricavato possa essere utilizzato<br />
per progettare il controllore, secondo quanto è stato descritto nel capitolo 2.<br />
Sarà descritta la sintonizzazione in linea e saranno mostrati i risultati tramite<br />
simulazioni <strong>di</strong>mostrando come il controllore progettato riesca a garantire i<br />
vincoli e gli obiettivi posti nel capitolo 3. Infine si descriveranno i passi per<br />
ottenere la forma esplicita.
5.1 La strategia <strong>di</strong> controllo 78<br />
5.1 La strategia <strong>di</strong> controllo<br />
L’obiettivo <strong>di</strong> questo capitolo è la progettazione <strong>di</strong> <strong>un</strong>a legge <strong>di</strong> controllo che<br />
generi gli input Wth, Wf, δ, ρ come f<strong>un</strong>zione delle misure (o delle stime) <strong>di</strong><br />
pm, τ, ω e λ in modo che i riferimenti desiderati per τ, λ, ∆δ = δmbt − δ e ρ,<br />
ossia (τref, λref, ∆δref e ρref), siano accuratamente inseguiti e i vincoli (ve<strong>di</strong><br />
Capitolo 4) siano sod<strong>di</strong>sfatti, in modo da mantenere il motore all’interno <strong>di</strong><br />
<strong>un</strong> intervallo operativo ammissibile.<br />
La strategia <strong>di</strong> controllo adottata per raggi<strong>un</strong>gere tale obiettivo si basa su<br />
due passi <strong>di</strong>stinti: la generazione dei riferimenti e il controllo pre<strong>di</strong>ttivo.<br />
5.1.1 Generazione dei riferimenti<br />
Il primo passo della strategia <strong>di</strong> controllo sviluppata si basa sulla generazione<br />
ad ogni tempo <strong>di</strong> campionamento delle traiettorie delle variabili controllate<br />
del motore, in modo che siano consistenti con il regime attuale e corrispon-<br />
dano in stato stazionario ai valori <strong>di</strong> coppia e <strong>di</strong> rapporto aria-carburante<br />
richiesti, fornendo così <strong>un</strong> controllo in avanti (feedforward) del sistema.<br />
L’obiettivo <strong>di</strong> questa prima fase <strong>di</strong> controllo è la generazione dei riferimenti<br />
τref, λref, ∆δref e ρref basata sulle con<strong>di</strong>zioni operative del veicolo, compre-<br />
so il regime <strong>di</strong> rotazione del motore, la posizione del pedale dell’acceleratore<br />
e lo stato del catalizzatore LNT. Questi riferimenti vengono in<strong>di</strong>cati come<br />
riferimenti in<strong>di</strong>pendenti poichè non <strong>di</strong>pendono da scelte del controllore, ma<br />
da specifiche da rispettare o <strong>di</strong>rettamente dal giudatore. E’ importante no-<br />
tare che nell’insieme <strong>di</strong> riferimenti definiti come in<strong>di</strong>pendenti sia stata in-<br />
clusa la variabile logica ρ sulla quale è incentrato il controllo del sistema.<br />
Tale apparente incongruenza è giustificata dal fatto che la traiettoria del mo-<br />
do operativo, inclusa in modo fittizio, sarà utilizzata nella seconda fase <strong>di</strong>
5.1 La strategia <strong>di</strong> controllo 79<br />
controllo (ve<strong>di</strong> paragrafo 5.1.2) per prevenire fenomeni <strong>di</strong> cambiamento con-<br />
tinuo <strong>di</strong> modo operativo (chattering) che possono verificarsi in quei tempi<br />
<strong>di</strong> campionamento in cui lo stato del sistema è in con<strong>di</strong>zioni limite fra i due<br />
regimi, ossia nelle con<strong>di</strong>zioni in cui sia il f<strong>un</strong>zionamento in regime stratificato<br />
che omogeneo possono garantire le prestazioni richieste. I riferimenti in<strong>di</strong>pen-<br />
denti vengono generati come segue: la coppia τref è impostata dal guidatore<br />
tramite il pedale dell’acceleratore, il rapporto aria-carburante è f<strong>un</strong>zione del<br />
numero <strong>di</strong> giri e della coppia, ∆δref è fissato ad <strong>un</strong> valore costante e ρref è<br />
scelto in base ad <strong>un</strong> valore <strong>di</strong> soglia su λref.<br />
Una volta che questi riferimenti in<strong>di</strong>pendenti sono stati determinati è possi-<br />
bile calcolare i riferimenti <strong>di</strong>pendenti. I riferimenti sulle variabili controllate<br />
del motore, cioè la pressione nel collettore <strong>di</strong> aspirazione, la portata d’aria<br />
attraverso la valvola a farfalla e la portata <strong>di</strong> carburante all’interno dei cilin-<br />
dri (Wth,ref, Wf,ref e pm,ref) sono riferimenti la cui traiettoria viene generata<br />
dalla centralina e <strong>di</strong>pende da altre variabili. I riferimenti su Wth, Wf e pm,<br />
possono essere ottenuti numericamente cercando fra l’insieme delle possibili<br />
con<strong>di</strong>zioni operative i valori tali per cui la variazione <strong>di</strong> pressione nel collet-<br />
tore <strong>di</strong> aspirazione ˙pm, così come determinata nel Capitolo 4, sia nulla o più<br />
vicina possibile a zero. Ciò significa che ad ogni tempo <strong>di</strong> campionamento<br />
vengono calcolati i valori <strong>di</strong> Wth,ref, Wf,ref e pm,ref che corrispondano in sta-<br />
to stabile ( ˙pm = 0) alle uscite del sistema (τref, λref, ∆δref) richieste e che<br />
siano consistenti con il numero <strong>di</strong> giri attuale. Il primo passo <strong>di</strong> controllo<br />
non è basato sulla retroazione dello stato (feedback), ma è in-avanti (feed-<br />
forward) ed è fondamentale in quanto metterà a <strong>di</strong>sposizione del controllore<br />
MPC strumenti per prevenire effetti indesiderati, come il chattering, e so-<br />
prattutto riferimenti sulle variabili <strong>di</strong> controllo che <strong>di</strong>pendono dal regime <strong>di</strong><br />
rotazione del motore ω.
5.1 La strategia <strong>di</strong> controllo 80<br />
La generazione <strong>di</strong> Wth,ref, Wf,ref e pm,ref può essere effettuata sia in-linea,<br />
calcolando numericamente i valori ad ogni tempo <strong>di</strong> campionamento, sia<br />
fuori-linea (off-line), pre-calcolandoli e inserendo i valori in tabelle. La<br />
soluzione off-line è particolarmente in<strong>di</strong>cata per l’implementazione su cen-<br />
tralina automobilistiche standard in quanto richiede requisiti hardware e<br />
software limitati e garantisce tempi <strong>di</strong> calcolo ridotti.<br />
5.1.2 <strong>Controllo</strong> MPC ibrido in-linea del motore DISC<br />
In questa sezione viene mostrato come sia possibile derivare <strong>un</strong> controllore<br />
MPC per il motore DISC. Secondo quanto è stato descritto nel capitolo 2,<br />
l’idea base del controllo pre<strong>di</strong>ttivo è <strong>di</strong> utilizzare il modello dell’impianto per<br />
pre<strong>di</strong>re l’evoluzione futura del sistema. Nella strategia <strong>di</strong> controllo pre<strong>di</strong>ttivo,<br />
ad ogni istante <strong>di</strong> campionamento viene risolto <strong>un</strong> problema <strong>di</strong> ottimizzazione<br />
vincolata misto-intero a orizzonte finito, assumendo come con<strong>di</strong>zione iniziale<br />
del problema lo stato attuale. L’ottimizzazione fornisce <strong>un</strong>a sequenza <strong>di</strong><br />
controllo ottima, ma solo il primo campione è applicato al sistema ibrido:<br />
questo processo è ripetuto iterativamente ad ogni istante <strong>di</strong> tempo successivo.
5.1 La strategia <strong>di</strong> controllo 81<br />
Il problema <strong>di</strong> controllo ottimo è definito come segue:<br />
N−1 <br />
min J(ξ,x(t)) (uk − uref)<br />
ξ<br />
k=0<br />
T R(uk − uref)<br />
+(yk − yref) T N<br />
Q(yk − yref) + (xk − xref)S(xk − xref),<br />
subj. to<br />
⎧<br />
⎪⎨<br />
⎪⎩<br />
x0 = x(t),<br />
k=1<br />
xk+1 = Axk + B1uk + B2γk + B3zk,<br />
yk<br />
= Cxk + D1uk + D2γk + D3zk,<br />
E2γk + E3zk ≤ E1uk + E4xk + E5,<br />
(5.1a)<br />
(5.1b)<br />
dove N è l’orizzonte <strong>di</strong> controllo, x(t) è lo stato del sistema MLD all’istante<br />
t, ξ [u ′ 0,γ ′ 0,z ′ 0,..., u ′ N−1 ,γ′ N−1 ,z′ N−1 ]′ è il vettore <strong>di</strong> ottimizzazione, Q, R e<br />
S sono matrici <strong>di</strong> peso sullo scarto tra valore attuale e valore <strong>di</strong> riferimento<br />
rispettivamente sulle uscite, sugli ingressi e sugli stati.<br />
Secondo la definizione del problema (5.1), nel sistema in esame abbiamo<br />
yref [0 0 ∆δref] ′ , (5.2a)<br />
uref [Wth,ref Wf,ref δref ρref] ′ , (5.2b)<br />
xref [pm,ref 0 0 0 0 0] ′ , (5.2c)<br />
dove ∆δref è il riferimento per δmbt − δ, e
5.1 La strategia <strong>di</strong> controllo 82<br />
⎡<br />
⎤<br />
⎡ ⎤ rWth 0 0 0<br />
qτ 0 0 ⎢<br />
⎥<br />
⎢ ⎥ ⎢<br />
⎥<br />
⎢ ⎥ ⎢ 0 rWf 0 0 ⎥<br />
Q = ⎢ 0 qλ 0 ⎥,<br />
R = ⎢<br />
⎥<br />
⎣ ⎦ ⎢<br />
⎥<br />
⎢ 0 0 rδ 0 ⎥<br />
0 0 ⎣<br />
⎦<br />
q∆δ<br />
0 0 0 rρ<br />
S =<br />
(5.3a)<br />
⎡<br />
⎤<br />
spm ⎢ 0<br />
⎢ 0<br />
⎢ 0<br />
⎢ 0<br />
⎣<br />
0<br />
sɛτ<br />
0<br />
0<br />
0<br />
0<br />
0<br />
sɛλ<br />
0<br />
0<br />
0 0 0<br />
⎥<br />
0 0 0 ⎥<br />
0 0 0 ⎥<br />
⎥.<br />
0 0 0 ⎥<br />
0 0 0 ⎥<br />
⎦<br />
(5.3b)<br />
0 0 0 0 0 0<br />
I riferimenti (5.2) e i relativi pesi (5.3) hanno valori coerenti con la<br />
definizione del sistema MLD (ve<strong>di</strong> 4.2.3).<br />
L’ultimo elemento sulla <strong>di</strong>agonale della matrice R, è il peso sull’insegui-<br />
mento <strong>di</strong> ρref. Tale peso, generato come descritto nel paragrafo 5.1.1, costi-<br />
tuisce <strong>un</strong>a penalità sulla commutazione del regime <strong>di</strong> combustione ed è molto<br />
utile per evitare possibili fenomeni <strong>di</strong> chattering.<br />
Il problema (5.1) può essere tradotto in <strong>un</strong> problema <strong>di</strong> programmazione<br />
quadratica mista intera (MIQP), cioè nella minimizzazione <strong>di</strong> <strong>un</strong>a f<strong>un</strong>zione<br />
<strong>di</strong> costo soggetta a vincoli, dove alc<strong>un</strong>e variabili sono vincolate ad essere<br />
binarie.
5.2 Risultati del controllo in simulazione 83<br />
5.2 Risultati del controllo in simulazione<br />
Le <strong>di</strong>namiche del motore DISC in anello chiuso con il controllore MPC sono<br />
state ottenute in simulazione utilizzando il modello non lineare presentato nel<br />
Capitolo 4. In questa sezione saranno presentati due scenari <strong>di</strong> simulazione,<br />
il primo orientato alla valutazione del controllore nelle transizioni <strong>di</strong> modo<br />
operativo ed <strong>un</strong> secondo scenario più realistico.<br />
La strategia <strong>di</strong> controllo sviluppata si basa sulle due fasi descritte nei para-<br />
grafi precedenti. In primo luogo si determinano i riferimenti in<strong>di</strong>pendenti e<br />
<strong>di</strong>pendenti in modo che siano consistenti con la velocità <strong>di</strong> rotazione del mo-<br />
tore ω. In seguito tali riferimenti sono passati al controllore MPC descritto<br />
in 5.1.2.<br />
Per il progetto del controllore MPC in-linea abbiamo scelto <strong>un</strong> orizzonte <strong>di</strong><br />
controllo N = 1. Le matrici dei pesi Q, R, S sono state scelte in seguito a<br />
numerose prove su <strong>di</strong>versi scenari in quanto sono i parametri fondamentali<br />
<strong>di</strong> sintonizzazione del controllore. Devono garantire le prestazioni desiderate<br />
in ogni con<strong>di</strong>zione operativa, devono essere raggi<strong>un</strong>ti valori <strong>di</strong> compromesso<br />
fra l’aggressività del controllore sullo scenario che si intende simulare e la<br />
vali<strong>di</strong>tà <strong>di</strong> prestazioni anche in con<strong>di</strong>zioni <strong>di</strong>verse. I pesi utilizzati sono:<br />
qτ = 1, qλ = 10 −3 , q∆δ = 0.01<br />
rWth = 0.01, rWf = 10−3 , rδ = 0, rρ = 1,<br />
spm = 0.04, sɛτ = 1.5 · 10 3 , sɛλ = 0.01.<br />
Si noti che il peso sull’uscita τ − τref, qτ, è maggiore <strong>di</strong> qλ, così come il<br />
peso su ɛτ è molto maggiore <strong>di</strong> sɛλ , per enfatizzare l’inseguimento <strong>di</strong> coppia<br />
sia nei transitori che a regime come obiettivo principale del controllo. Molto<br />
importanti sono anche i pesi su rWth<br />
e rWf i quali devono essere consistenti<br />
con il peso sul riferimento del rapporto aria-carburante, in quanto sono gli
5.2 Risultati del controllo in simulazione 84<br />
ingressi che più <strong>di</strong>rettamente influenzano λ. Il valore <strong>di</strong> rρ è abbastanza<br />
piccolo da lasciare al controllore MPC la libertà <strong>di</strong> scegliere il modo operativo<br />
ad ogni istante <strong>di</strong> campionamento, ma sufficientemente grande da impe<strong>di</strong>re<br />
le indesiderate oscillazioni <strong>di</strong> modo, fenomeno già definito come chattering.<br />
Il primo scenario che an<strong>di</strong>amo a considerare è molto interessante dal p<strong>un</strong>to<br />
<strong>di</strong> vista dello sviluppo del controllore in quanto ci permette <strong>di</strong> osservare in<br />
modo isolato il comportamento del sistema motore-centralina nelle transizioni<br />
<strong>di</strong> modo. Si considera infatti il motore alla velocità nominale <strong>di</strong> 2000 rpm,<br />
regime al quale è stato linearizzato il modello, a richiesta <strong>di</strong> coppia costante<br />
(ve<strong>di</strong> Figure 5.1-5.7).<br />
41<br />
40.8<br />
40.6<br />
40.4<br />
40.2<br />
40<br />
39.8<br />
39.6<br />
39.4<br />
39.2<br />
0 1 2 3 4 5<br />
Figura 5.1: Coppia del motore τ(t) (linea tratteggiata: valore desiderato, linea<br />
continua: risposta del modello non-lineare)<br />
.
5.2 Risultati del controllo in simulazione 85<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
ρ<br />
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5<br />
Figura 5.2: Modo <strong>di</strong> combustione ρ(t)<br />
.<br />
E’ proprio lavorando in queste con<strong>di</strong>zioni a regime e coppia costante che il pi-<br />
lota più facilmente può avvertire i cambi <strong>di</strong> modo operativo e percepirli come<br />
<strong>di</strong>sturbi. Al tempo <strong>di</strong> campionamento t = 1 viene richiesta <strong>un</strong>a transizione<br />
da modo omogeneo (ρ = 1) a modo stratificato (ρ = 0) e al tempo t = 4<br />
è richiesta la trasizione inversa. Il controllore realizzato coor<strong>di</strong>na l’azione<br />
della valvola a farfalla, dell’iniettore, della candela e della selezione <strong>di</strong> modo<br />
con ottimi risultati. La variazione <strong>di</strong> coppia è inferiore ad 1 Nm, è quin<strong>di</strong><br />
ampiamente compresa nella finestra ammissibile presentata in (3.1) e asso-<br />
lutamente non percepibile dal guidatore. Si noti inoltre come al contempo<br />
vengano rispettati i vincoli definiti nel Capitolo 4 su ∆δ (4.15), λ (4.13) e<br />
Wth (4.14), (4.17)
5.2 Risultati del controllo in simulazione 86<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
0 1 2 3 4 5<br />
Figura 5.3: rapporto aria-carburante λ(t) (linea tratteggiata rossa: valore desiderato,<br />
linea continua: risposta del modello non-lineare, linea tratteggiata nera: vincolo<br />
su λ)<br />
.<br />
Il secondo scenario è mirato alla valutazione della strategia <strong>di</strong> controllo<br />
in regime <strong>di</strong> rotazione variabile. Tale scenario si basa su <strong>un</strong>a porzione <strong>di</strong> 20<br />
secon<strong>di</strong>, in particolare sul segmento <strong>di</strong> tempo che va da 965 s a 985 s, del<br />
ciclo <strong>di</strong> guida europeo, new european driving cycle (NEDC). Il NEDC è <strong>un</strong><br />
ciclo <strong>di</strong> guida standard che prevede <strong>di</strong>verse con<strong>di</strong>zioni operative del veicolo<br />
utilizzato per testarne consumi, emissioni nocive, ecc. Partendo dal profilo<br />
<strong>di</strong> guida imposto dal ciclo NEDC le traiettorie <strong>di</strong> τref e ω sono state generate<br />
in base a <strong>un</strong>o specifico veicolo e alle relative rapportature <strong>di</strong> cambio. Il<br />
modo stratificato viene attivato per regimi <strong>di</strong> rotazione inferiori a 2000 rpm<br />
e valori <strong>di</strong> coppia minori <strong>di</strong> 50 Nm. Per ρ = 0 il rapporto aria-carburante<br />
λref è pari a 30, o com<strong>un</strong>que più alto possibile. Invece in modo omogeneo il
5.2 Risultati del controllo in simulazione 87<br />
16<br />
14<br />
12<br />
10<br />
8<br />
6<br />
4<br />
2<br />
δ mbt−δ<br />
0<br />
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5<br />
Figura 5.4: Deviazione anticipo accensione candela da MBT δmbt − δ<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
.<br />
Wth<br />
−5<br />
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5<br />
Figura 5.5: Flusso d’aria attraverso la farfalla Wth(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
.
5.2 Risultati del controllo in simulazione 88<br />
80<br />
75<br />
70<br />
65<br />
60<br />
55<br />
50<br />
45<br />
40<br />
35<br />
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5<br />
Figura 5.6: Pressione nel collettore <strong>di</strong> aspirazione pm(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
.<br />
valore <strong>di</strong> riferimento per il rapporto aria-carburante è fissato a 14.64, rapporto<br />
stechiometrico standard per motori a benzina (ve<strong>di</strong> Capitolo 3). Il riferimento<br />
sulla deviazione dell’anticipo accensione candela da MBT ∆δref = δmbt − δ è<br />
fissato a 5 gra<strong>di</strong>. I risultati ottenuti in simulazione sono mostrati nelle figure<br />
(5.8)-(5.14)<br />
p m<br />
La simulazione inizia in regime stratificato ρ = 0, il riferimento per la cop-<br />
pia è basso 21 Nm e la velocità del motore inferiore ai 1800 giri al minuto.<br />
A t = 5 il guidatore richiede <strong>un</strong> incremento <strong>di</strong> coppia in risposta del quale<br />
il controllore effettua <strong>un</strong>a transizione da stratificato a omogeneo sinergica-<br />
mente con la variazione delle traiettorie del flusso d’aria attraverso la valvola,<br />
della pressione nel collettore, dell’anticipo accensione candela e del flusso <strong>di</strong><br />
carburante per inseguire i nuovi riferimenti su τ e λ. Da t = 5 s a t = 16 s
5.2 Risultati del controllo in simulazione 89<br />
0.85<br />
0.8<br />
0.75<br />
0.7<br />
0.65<br />
Wf<br />
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5<br />
Figura 5.7: Flusso <strong>di</strong> carburante nei cilindri Wf(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
.<br />
la coppia richiesta e la velocità del motore aumentano progressivamente, con<br />
alc<strong>un</strong>e piccole variazioni <strong>di</strong> τ, finchè i valori massimi <strong>di</strong> 70 Nm e 2450 rpm<br />
vengono raggi<strong>un</strong>ti a t = 15 secon<strong>di</strong>. A T = 16 s τref <strong>di</strong>minuisce a 40 Nm,<br />
mentre la velocità del motore oltre i 2000 rpm. In risposta a ciò il control-<br />
lore non cambia il modo operativo e il rapporto aria-carburante, ma riduce<br />
il flusso d’aria e benzina per inseguire la coppia. Successivamente la coppia<br />
richiesta e la velocità del motore scendono sotto 50 Nm e 1900 rpm cosicchè<br />
il controllore può tornare ad operare in modo stratificato.<br />
E’ importante sottolineare che, nonostante il motore lavori a velocità variabile<br />
in <strong>un</strong> ampio intervallo <strong>di</strong> giri, il controllore non ha come ingresso il numero <strong>di</strong><br />
giri ω e la <strong>di</strong>pendenza dal regime <strong>di</strong> rotazione attuale è inclusa implicitamente<br />
nel controllo attraverso la generazione <strong>di</strong>namica dei riferimenti.
5.2 Risultati del controllo in simulazione 90<br />
2500<br />
2400<br />
2300<br />
2200<br />
2100<br />
2000<br />
1900<br />
1800<br />
1700<br />
0 2 4 6 8 10 12 14 16 18 20<br />
70<br />
60<br />
50<br />
40<br />
30<br />
20<br />
rpm<br />
Figura 5.8: Velocità <strong>di</strong> rotazione del motore ω<br />
.<br />
10<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.9: Coppia del motore τ(t) (linea tratteggiata: valore desiderato, linea<br />
continua: risposta del modello non-lineare)<br />
.<br />
τ
5.2 Risultati del controllo in simulazione 91<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
ρ<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.10: Modo <strong>di</strong> combustione ρ(t)<br />
.<br />
10<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.11: rapporto aria-carburante λ(t) (linea tratteggiata rossa: valore desiderato,<br />
linea continua: risposta del modello non-lineare, linea tratteggiata nera:<br />
vincolo su λ)<br />
.<br />
λ
5.2 Risultati del controllo in simulazione 92<br />
25<br />
20<br />
15<br />
10<br />
5<br />
Wth<br />
0<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.12: Flusso d’aria attraverso la farfalla Wth(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
62<br />
60<br />
58<br />
56<br />
54<br />
52<br />
50<br />
48<br />
46<br />
.<br />
p m<br />
44<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.13: Pressione nel collettore <strong>di</strong> aspirazione pm(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
.
5.2 Risultati del controllo in simulazione 93<br />
1.4<br />
1.3<br />
1.2<br />
1.1<br />
1<br />
0.9<br />
0.8<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0 2 4 6 8 10 12 14 16 18 20<br />
Figura 5.14: Flusso <strong>di</strong> carburante nei cilindri Wf(t) (linea tratteggiata: valore<br />
desiderato, linea continua: risposta del modello non-lineare<br />
5.2.1 Carico computazionale MPC in-linea<br />
.<br />
Sono necessari circa 2.3 secon<strong>di</strong> per calcolare i riferimenti <strong>di</strong>pendenti (precal-<br />
colati fuori linea) e ulteriori 9.4 secon<strong>di</strong> per simulare il sistema in anello chiuso<br />
su <strong>un</strong> PC Intel Xeon 2.8 GHz che supporta l’Hybrid Toolbox [Bem04] imple-<br />
mentato in ambiente Matlab e il risolutore <strong>di</strong> programmazione quadratica<br />
mista-intera CPLEX [ILO01]. Di quei 9.4 s, 6.1 s sono utilizzati da CPLEX,<br />
con <strong>un</strong>a me<strong>di</strong>a <strong>di</strong> circa 3 ms per tempo <strong>di</strong> campionamento. Risulta evi-<br />
dente che il controllore MPC non è <strong>di</strong>rettamente implementabile, dato che<br />
richiederebbe la risoluzione <strong>di</strong> <strong>un</strong> MIQP in linea per ogni istante <strong>di</strong> campi-<br />
onamento, ed è chiaramente proibitivo nei sistemi <strong>di</strong> controllo automobilis-<br />
tici standard. Per superare tali problemi <strong>di</strong> implementazione nel prossimo<br />
paragrafo verrà sviluppata la versione esplicita del controllore MPC che non<br />
richiede ottimizzaziona mista-intera in linea.<br />
Wf
5.3 <strong>Controllo</strong> ibrido MPC esplicito 94<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
−5<br />
0 5 10 15 20<br />
Figura 5.15: Deviazione anticipo accensione candela da MBT δmbt − δ<br />
5.3 <strong>Controllo</strong> ibrido MPC esplicito<br />
.<br />
Una volta che il controllore MPC è stato sintonizzato in linea è possibile<br />
utilizzare i risolutori multiparametrici (mp-MIQP) per ottenere la forma<br />
esplicita.<br />
L’azione <strong>di</strong> controllo derivante dall’impiego della forma esplicita è del tutto<br />
equivalente a quella del controllo in linea con l’importante <strong>di</strong>fferenza però<br />
che il controllo si riduce alla valutazioni <strong>di</strong> regioni nello spazio degli stati<br />
rispetto alla risoluzione <strong>di</strong> problemi <strong>di</strong> programmazione mista intera.<br />
Lo sviluppo del controllore esplicito avviene in due passi <strong>di</strong>stinti: prima il<br />
controllore MPC ibrido viene sintonizzato in linea, fino al raggi<strong>un</strong>gimen-<br />
to delle prestazioni desiderate. In seguito la forma esplicita equivalente<br />
è calcolata fuori-linea usando <strong>un</strong>a combinazione <strong>di</strong> programmazione mul-
5.3 <strong>Controllo</strong> ibrido MPC esplicito 95<br />
tiparametrica quadratica e programmazione <strong>di</strong>namica, come presentato in<br />
[AB06], implementata nell’Hybrid Toolbox. La rappresentazione esplicita<br />
u(t) = f(θ(t)) della legge <strong>di</strong> controllo (5.1), con u = [Wth Wf δ ρ] ′ , è rap-<br />
presentata da <strong>un</strong> insieme <strong>di</strong> guadagni affini <strong>di</strong> controllo in retroazione dello<br />
stato e da <strong>un</strong>a corrispondente partizione poliedrica nello spazio degli stati<br />
θ = [pm ɛτ ɛλ Wf τref λref pm,ref Wth,ref Wf,ref δref] ′ , nella quale è possibile si<br />
verifichino sovrapposizioni (il riferimento <strong>di</strong> ∆δref su δmbt −δ nel nostro caso<br />
è fissato a 5 gra<strong>di</strong>).<br />
Considerando <strong>un</strong> orizzonte <strong>di</strong> controllo pari a N = 1 otteniamo <strong>un</strong>a f<strong>un</strong>zione<br />
PWA definita su 96 regioni poliedriche. Il numero <strong>di</strong> regioni può essere ridot-<br />
to a 42 se il vincolo (4.17) viene rimosso; il numero può essere ulteriormente<br />
ridotto rimuovendo i vicoli che tendono a non essere attivati in con<strong>di</strong>zioni<br />
operative realistiche.<br />
In Figura 5.16 si riporta <strong>un</strong>a sezione bi<strong>di</strong>mensionale (cross-section) della<br />
partizione poliedrica che, nel nostro caso, ha <strong>di</strong>mensione 10. In partico-<br />
lare in figura è riportata la cross-section della legge <strong>di</strong> controllo PWA sul<br />
piano pm-λref assumendo che ɛτ = 0, ɛλ = 0, Wf(t − 1) = 0, τref = 60 Nm,<br />
Wf,ref = 1, pm,ref = 55 kPa, Wth,ref = 20, δref = 16.<br />
In Figura 5.16 è inoltre riportata l’evoluzione <strong>di</strong> pm e λref con contrassegnati<br />
gli istanti <strong>di</strong> campionamento <strong>di</strong> inizio, fine e transizione <strong>di</strong> stato. Si noti che<br />
al cambiamento <strong>di</strong> ρ la traiettoria passa dal grafico inferiore a quello superi-<br />
ore e viceversa, rispettivamente a t = 5 e t = 17.<br />
Se consideriamo <strong>un</strong> orizzonte <strong>di</strong> controllo N = 2 il numero <strong>di</strong> regioni sale a<br />
3435 riducibili a 747 rimuovendo il vincolo (4.17). In Figura 5.17 si riportano<br />
le traiettorie <strong>di</strong> coppia e rapporto aria-carburante per tale orizzonte <strong>di</strong> con-<br />
trollo. Le <strong>di</strong>namiche del motore DISC in anello con il controllore per N = 2<br />
e N = 1 sono molto simili. Altre simulazioni con N superiore non migliorano
5.3 <strong>Controllo</strong> ibrido MPC esplicito 96<br />
lambda ref<br />
lambda ref<br />
40<br />
30<br />
20<br />
10<br />
ρ=1<br />
0<br />
30 35 40 45 50 55<br />
pm<br />
60 65 70 75 80<br />
40<br />
30<br />
20<br />
10<br />
t=17s<br />
t=20s<br />
t=17.01s<br />
t=5.01s<br />
ρ=0<br />
0<br />
30 35 40 45 50 55<br />
pm<br />
60 65 70 75 80<br />
Figura 5.16: Cross-section sul pm-λref e traiettoria simulata in anello chiuso. figura<br />
in alto: ρ = 1, figura in basso: ρ = 0<br />
.<br />
le prestazioni, ciò sembra suggerire che l’orizzonte <strong>di</strong> controllo N = 1 è la<br />
scelta più opport<strong>un</strong>a per il nostro sistema centralina-motore DISC.<br />
5.3.1 Carico computazionale per controllo MPC in for-<br />
ma esplicita<br />
Mentre il controllo del sistema con l’MPC ibrido in-linea o con la sua forma<br />
esplicita equivalente produce gli stessi risultati, il controllore esplicito richiede<br />
<strong>un</strong> carico computazionale molto minore. Infatti il tempo <strong>di</strong> simulazione si<br />
riduce a soli 3.9 secon<strong>di</strong> sullo stesso calcolatore utilizzato per valutare i tempi<br />
t=5s<br />
t=0s
5.3 <strong>Controllo</strong> ibrido MPC esplicito 97<br />
Figura 5.17: Simulazione <strong>di</strong> controllo con orizzonte <strong>di</strong> controllo N = 2<br />
<strong>di</strong> calcolo del controllore MPC. Tuttavia il dato più significativo è il tempo<br />
<strong>di</strong> calcolo della legge <strong>di</strong> controllo esplicita per tempo <strong>di</strong> campionamento che<br />
è <strong>di</strong> circa 8 µs; da notare che il tempo <strong>di</strong> campionamento è pari a T = 10 ms.<br />
τ<br />
λ
Conclusioni<br />
In questa tesi è stato affrontato lo stu<strong>di</strong>o e lo sviluppo <strong>di</strong> <strong>un</strong> controllore pred-<br />
ittivo ibrido <strong>di</strong> <strong>un</strong> motore ad iniezione <strong>di</strong>retta a carica stratificata. Questa<br />
tipologia <strong>di</strong> motori è <strong>un</strong> esempio perfetto <strong>di</strong> sistema ibrido soggetto a vincoli,<br />
poichè alle <strong>di</strong>namiche continue dei motori a combustione interna si aggi<strong>un</strong>ge<br />
<strong>un</strong>a modalità <strong>di</strong> combustione binaria: il modo omogeneo e il modo stratificato.<br />
Il duplice modo <strong>di</strong> f<strong>un</strong>zionamento ha determinato la necessità <strong>di</strong> stu<strong>di</strong>-<br />
are e sviluppare <strong>un</strong> modello del motore che fosse in grado <strong>di</strong> caratterizzare<br />
in modo semplice e completo questi due mo<strong>di</strong> <strong>di</strong> f<strong>un</strong>zionamento e che fosse<br />
inoltre orientato al controllo, al fine <strong>di</strong> progettare <strong>un</strong> controllore in grado <strong>di</strong><br />
coor<strong>di</strong>nare in modo opport<strong>un</strong>o gli attuatori presenti nel sistema che garantis-<br />
cano determinate specifiche e obiettivi <strong>di</strong> prestazione. A partire dal modello<br />
non lineare del motore, derivato da <strong>un</strong>o stu<strong>di</strong>o dei laboratori <strong>di</strong> ricerca Ford,<br />
si è presentato il processo <strong>di</strong> modellizzazione ibrida del motore a carica strat-<br />
ificata. Il modello ibrido è stato descritto tramite il linguaggio HYSDEL,<br />
il quale è risultato particolarmente idoneo per la definizione <strong>di</strong> strategie <strong>di</strong><br />
controllo ottimo basato su tecniche pre<strong>di</strong>ttive.<br />
L’obiettivo del controllo sviluppato nel lavoro <strong>di</strong> tesi è stato quello <strong>di</strong> sod<strong>di</strong>s-<br />
fare la richiesta <strong>di</strong> coppia del guidatore, espressa dal pedale dell’acceleratore,<br />
minimizzando il consumo <strong>di</strong> carburante e rispettando il corretto f<strong>un</strong>ziona-<br />
mento del catalizzatore con il conseguente rispetto delle normative sulle emis-
Conclusioni 99<br />
sioni. Le variabili <strong>di</strong> controllo su cui la centralina agisce i modo coor<strong>di</strong>nato<br />
sono: la selezione della modalità <strong>di</strong> f<strong>un</strong>zionamento (segnale logico), il tempo<br />
<strong>di</strong> accensione della candela, l’apertura della valvola dell’aria e l’iniezione <strong>di</strong><br />
carburante (segnali continui).<br />
La strategia <strong>di</strong> controllo è stata poi definita tramite i seguenti passi:<br />
- Generazione dei riferimenti. Ad ogni istante <strong>di</strong> campionamento ven-<br />
gono calcolate le traiettorie delle variabili controllate del motore (quali<br />
pressione nel collettore <strong>di</strong> aspirazione, portata d’aria attraverso la far-<br />
falla e la portata <strong>di</strong> benzina all’interno del cilindro), in modo che siano<br />
consistenti con il regime attuale e corrispondano in stato stazionario ai<br />
valori <strong>di</strong> coppia e <strong>di</strong> rapporto aria-carburante richiesti.<br />
- <strong>Controllo</strong> pre<strong>di</strong>ttivo in linea. La strategia <strong>di</strong> controllo pre<strong>di</strong>ttiva basa-<br />
ta su modello (model pre<strong>di</strong>ctive control, MPC), che si basa sulla filosofia<br />
ad orizzonte recedente, ad ogni istante <strong>di</strong> campionamento risolve <strong>un</strong><br />
problema <strong>di</strong> ottimizzazione misto-intero vincolato ad orizzonte finito,<br />
assumendo lo stato attuale come con<strong>di</strong>zione iniziale. Ottenuta la se-<br />
quenza <strong>di</strong> controllo solo il primo campione viene applicato al sistema<br />
ibrido e l’intero processo viene nuovamente applicato all’istante suc-<br />
cessivo. Il controllore MPC è ottenuto considerando il modello MLD<br />
generato a numero <strong>di</strong> giri costante come parte dei vincoli del proble-<br />
ma <strong>di</strong> ottimizzazione. Il controllo MPC raggi<strong>un</strong>ge buone prestazioni <strong>di</strong><br />
inseguimento su coppia e rapporto aria-carburante anche in con<strong>di</strong>zioni<br />
<strong>di</strong>verse da quelle nominali.<br />
- <strong>Controllo</strong> MPC esplicito. Il controllo pre<strong>di</strong>ttivo in linea, pur fornen-<br />
do ottime prestazioni, è tuttavia inapplicabile in centralina motore, a<br />
causa delle ridotte risorse hardware e software. Il controllo ottimo,<br />
sintonizzato in linea al passo precedente, viene allora tradotto nella<br />
sua forma esplicita con l’ausilio <strong>di</strong> <strong>un</strong> risolutore multi-parametrico. La<br />
forma esplicita consiste concretamente in <strong>un</strong>a tabella <strong>di</strong> regioni nello
Conclusioni 100<br />
spazio degli stati a cui ad ogni regione è associato <strong>un</strong> legge affine <strong>di</strong><br />
retroazione dello stato. Tale legge, del tutto equivalente alla strategia<br />
in linea, si riduce quin<strong>di</strong> alla valutazione <strong>di</strong> <strong>un</strong>a tabella e può pertanto<br />
essere introdotta in hardware con risorse limitate, come la centralina<br />
motore.<br />
Il lavoro presentato, sebbene abbia mostrato come la teoria dei sistemi ib-<br />
ri<strong>di</strong> sia molto utile e possa fornire buoni risultati in <strong>un</strong> applicazione reale,<br />
ha delle limitazioni e si ritengono necessari ulteriori sviluppi <strong>di</strong> ricerca. La<br />
strategia <strong>di</strong> controllo adottata non è in grado <strong>di</strong> catturare completamente il<br />
comportamento del modello non lineare e <strong>di</strong> controllarlo in maniera perfor-<br />
mante su l’intero arco <strong>di</strong> regime <strong>di</strong> rotazione. Un possibile miglioramento<br />
potrebbe prevedere l’implementazione <strong>di</strong> <strong>un</strong>a cascata <strong>di</strong> controllori pre<strong>di</strong>ttivi<br />
ibri<strong>di</strong> ciasc<strong>un</strong>o attivabile in <strong>un</strong> range <strong>di</strong> giri del motore limitato.<br />
Inoltre si osserva che la forma esplicita genera molte regioni nello spazio <strong>di</strong><br />
stato ma solo <strong>un</strong> sottoinsieme <strong>di</strong> queste è attivabile durante le con<strong>di</strong>zioni <strong>di</strong><br />
f<strong>un</strong>zionamento reale. Un obiettivo da porsi è lo stu<strong>di</strong>o sistematico <strong>di</strong> tecniche<br />
per la riduzione delle regioni. Questo ovviamente avrebbe <strong>un</strong>a ricaduta molto<br />
positiva nell’implementazione in centralina.<br />
Un ulteriore vasto argomento da approfon<strong>di</strong>re appare indubbiamente la stima<br />
dello stato, soprattutto se si intende implementare il controllore su modelli<br />
ancora più complessi o ad<strong>di</strong>rittura su sistemi motori-centralina reali. Infatti<br />
questo tema è fondamentale in quanto nei sistemi reali le misure sono af-<br />
flitte da rumore e alc<strong>un</strong>e componenti dello stato non sono accessibili, come<br />
la coppia (non esiste attualmente ness<strong>un</strong> sensore <strong>di</strong> coppia nelle auto in<br />
produzione), nonostante che il modello considerato sia stato ass<strong>un</strong>to senza<br />
incertezza e con la conoscenza totale dello stato.
Appen<strong>di</strong>ce A<br />
HYSDEL<br />
La possibilità <strong>di</strong> poter generare in modo automatico la descrizione MLD <strong>di</strong><br />
<strong>un</strong> sistema ibrido, a partire da <strong>un</strong>a descrizione più orientata alla program-<br />
mazione, risulta essere <strong>un</strong>’aspetto fondamentale per l’utilizzo dei sistemi ib-<br />
ri<strong>di</strong>. Il linguaggio HYSDEL si prefigge proprio questo obiettivo, in modo<br />
tale da rendere più intuitivo, facile e generale il processo <strong>di</strong> generazione delle<br />
matrici del sistema MLD.<br />
In questa appen<strong>di</strong>ce verrà fatta <strong>un</strong>a panoramica sui costrutti del linguaggio<br />
e verrà portato come esempio proprio il modello del motore DISC per far<br />
vedere con quale semplicità si può descrivere <strong>un</strong> problema reale come quello<br />
in esame.
A.1 Il linguaggio Hysdel 102<br />
A.1 Il linguaggio Hysdel<br />
Il cuore del linguaggio HYSDEL (HYbrid Systems Description Language) è<br />
<strong>un</strong>a procedura <strong>di</strong> traduzione <strong>di</strong> <strong>un</strong> sistema <strong>di</strong>namico ibrido in forma <strong>di</strong> <strong>di</strong>s-<br />
uguaglianze miste intere che genera automaticamente <strong>un</strong>a descrizione MLD,<br />
come quella descritta nel paragrafo 1.3.2 a pagina 23, a partire da <strong>un</strong>a<br />
descrizione ad alto livello. Questo linguaggio <strong>di</strong> programmazione è stato<br />
sviluppato presso il Laboratorio <strong>di</strong> Controlli Automatici (IfA), ETH, Zurigo.<br />
Una descrizione completa del linguaggio è riportata in [TB04]. Il compila-<br />
tore è integrato nell’Hybrid Toolbox [Bem04] rispettivamente <strong>di</strong>sponibili agli<br />
in<strong>di</strong>rizzi:<br />
http://control.ethz.ch/ hybrid/hysdel<br />
http://www.<strong>di</strong>i.<strong>un</strong>isi.it/hybrid/toolbox<br />
Data <strong>un</strong>a descrizione testuale delle parti logiche e <strong>di</strong>namiche del sistema<br />
ibrido, HYSDEL restituisce le matrici A, B1−3, C, D1−3, E1−5 della cor-<br />
rispondente forma MLD (4.18).<br />
Un programma HYSDEL è composto <strong>di</strong> due parti. La prima, dettaINTERFACE,<br />
contiene la <strong>di</strong>chiarazione <strong>di</strong> tutti gli stati continui e binari, le variabili d’in-<br />
gresso e <strong>di</strong> uscita, ed i parametri utilizzati nel programma. La seconda parte,<br />
detta IMPLEMENTATION, è composta da sei sezioni specializzate dove sono<br />
descritte le relazioni tra le variabili, come in<strong>di</strong>cato <strong>di</strong> seguito.<br />
A.1.1 Sezioni AD e DA<br />
Queste due sezioni definiscono le interazioni <strong>di</strong> interfaccia tra variabili con-<br />
tinue e <strong>di</strong>screte. La sezione AD definisce le variabili binarie da con<strong>di</strong>zioni <strong>di</strong><br />
soglia lineare su variabili continue. Per esempio, [d = 1] ↔ [a1x1 + a2x2 ≤ b],<br />
x1,x2,a1,a2 ∈ R n , b ∈ R, d ∈ {0, 1}, con (a1x1 + a2x2 − b) ∈ [min, max]. In<br />
HYSDEL questa con<strong>di</strong>zione è rappresentata come:<br />
AD { d = a1*x1+a2*x2-b
A.1 Il linguaggio Hysdel 103<br />
HYSDEL traduce la sezione AD in accordo all’equivalenza (1.13)→(1.15).<br />
La sezione DA specifica con<strong>di</strong>zioni che accoppiano variabili continue con vari-<br />
abili binarie, ma al contrario della sezione AD, i segnali analogici sono definiti<br />
sul valore delle variabili Booleane, ad esempio con<strong>di</strong>zioni del tipo, “if [d = 1]<br />
then z = a1x + b1 else z = a2x + b2”, dove (a1x + b1) ∈ [min1, max1] e<br />
(a2x + b2) ∈ [min2, max2]:<br />
DA { z = {IF d THEN a1*x-b1<br />
ELSE a2*x-b2};}<br />
HYSDEL traduce la sezioneDA in <strong>di</strong>suguaglianze lineari intere come in (1.16).<br />
A.1.2 Sezione LOGIC<br />
La sezione LOGIC è rivolta a specificare f<strong>un</strong>zioni <strong>di</strong> variabili binarie come<br />
(1.10). Ad esempio, la formula d1 = d2 ∨ (∼ d3 ∧ d4) è rappresentata in<br />
HYSDEL come<br />
LOGIC { d1 = d2 | (~d3 & d4); }<br />
e tradotta in <strong>di</strong>suguaglianze miste intere calcolando prima la CNF relativa e<br />
poi utilizzando le (1.12)<br />
A.1.3 Sezione CONTINUOUS<br />
Questa sezione descrive le <strong>di</strong>namiche lineari come equazioni alle <strong>di</strong>fferen-<br />
ze. Ad esempio l’equazione della tensione <strong>di</strong> <strong>un</strong> condensatore ideale, i(t) =<br />
C d u(t), è convertita in tempo-<strong>di</strong>screto, applicando la regola delle <strong>di</strong>fferenze<br />
dt<br />
in avanti, nella forma u(k + 1) = u(k) + T i(k). In HYSDEL la precedente si<br />
C<br />
riscrive come:<br />
CONTINUOUS { u = u + T/C*i; }
A.2 Listato HYSDEL del motore DISC 104<br />
A.1.4 Sezione AUTOMATA<br />
Questa sezione specifica le equazioni <strong>di</strong> transizioni <strong>di</strong> stato dell’automa, sotto<br />
l’ipotesi che le transizioni siano sincronizzate con il tempo <strong>di</strong> campionamento<br />
delle equazioni <strong>di</strong>namiche continue.<br />
A.1.5 Sezione MUST<br />
Questa sezione permette <strong>di</strong> specificare vincoli su variabili continue e binarie,<br />
come ad esempio, vincoli lineari o f<strong>un</strong>zioni logiche. Ad esempio se la variabile<br />
x deve rimanere limitata nell’intervallo [xmin,xmax], in HYSDEL si traduce:<br />
MUST{ x - xmax
A.2 Listato HYSDEL del motore DISC 105<br />
}<br />
}<br />
REAL xtau [-1e3, 1e3];<br />
REAL xlam [-1e3, 1e3];<br />
REAL taud [0, 100];<br />
REAL lamd [10, 60];<br />
OUTPUT {<br />
}<br />
REAL lambda; /* [10, 50]; */<br />
REAL tau; /* [0, 100]; */<br />
REAL ddelta;<br />
INPUT{<br />
}<br />
REAL Wth [0,38.5218];<br />
REAL Wf [0, 2];<br />
REAL delta [0, 40];<br />
BOOL rho;<br />
PARAMETER{<br />
}<br />
REAL Ts; /* Tempo <strong>di</strong> campionamento */<br />
REAL pm1, pm2;<br />
REAL l01, l02,l03,l04, l0c;<br />
REAL l11,l12,l13,l14, l1c;<br />
REAL tau01,tau02,tau03,tau04,tau0c;<br />
REAL tau11,tau12,tau13,tau14,tau1c;<br />
REAL dmbt01, dmbt02, dmbt03,dmbt04, dmbt0c;<br />
REAL dmbt11, dmbt12, dmbt13,dmbt14, dmbt1c;
A.2 Listato HYSDEL del motore DISC 106<br />
IMPLEMENTATION{<br />
AUX{<br />
}<br />
DA{<br />
REAL lam;<br />
REAL taul;<br />
REAL lmin,lmax;<br />
REAL dmbtl;<br />
lam={IF rho THEN l11*pm+l12*Wth+l13*Wf+l14*delta+l1c<br />
ELSE l01*pm+l02*Wth+l03*Wf+l04*delta+l0c};<br />
taul={IF rho THEN tau11*pm+tau12*Wth+tau13*Wf+tau14*delta+tau1c<br />
ELSE tau01*pm+tau02*Wth+tau03*Wf+tau04*delta+tau0c };<br />
dmbtl={IF rho THEN dmbt11*pm+dmbt12*Wth+dmbt13*Wf+dmbt14*delta+dmbt1c+7<br />
ELSE dmbt01*pm+dmbt02*Wth+dmbt03*Wf+dmbt04*delta+dmbt0c-1};<br />
lmin ={IF rho THEN 13 ELSE 19};<br />
lmax ={IF rho THEN 21 ELSE 38};<br />
}<br />
CONTINUOUS{<br />
}<br />
pm=pm1*pm+pm2*Wth;<br />
xtau=xtau+Ts*(taud-taul);<br />
xlam=xlam+Ts*(lamd-lam);<br />
taud=taud;<br />
lamd=lamd;<br />
OUTPUT {<br />
}<br />
lambda=lam-lamd;<br />
tau=taul-taud;<br />
ddelta=dmbtl-delta;
A.2 Listato HYSDEL del motore DISC 107<br />
}<br />
}<br />
MUST{<br />
}<br />
lmin-lam
Bibliografia<br />
[AB06] A. Alessio and A. Bemporad. Feasible mode enumeration and<br />
cost comparison for explicit quadratic model pre<strong>di</strong>ctive control<br />
of hybrid systems. In 2th IFAC Conf. On Analysis and Design<br />
of Hybrid Systems, Alghero, Italy, 2006.<br />
[ABI + 01] E. Alur, C. Belta, F. Ivančic, V. Kumar, M. Mintz, G. Pappas,<br />
H. Rubin, and J. Schug. Hybrid modeling and simulation of<br />
biomolecular networks. In Hybrid Systems: Comp. and Contr.,<br />
volume 2034, pages 19–33. M. Di Benedetto, A.S. Vincentelli,<br />
Eds New York:Springer-Verlag, 2001.<br />
[BBFH01] F. Borrelli, A. Bemporad, M. Fodor, and D. Hrovat. A hybrid<br />
approach to traction control. In A. Sangiovanni-Vincentelli and<br />
M.D. Di Benedetto, e<strong>di</strong>tors, Hybrid Systems: Computation and<br />
Control, number 2034 in Lecture Notes in Computer Science,<br />
pages 162–174. Springer-Verlag, 2001.<br />
[BBM00] F. Borrelli, A. Bemporad, and M. Morari. Piecewise linear<br />
optimal controllers for hybrid systems. In American Control<br />
Conference, pages 1190–1194, Chicago, IL, J<strong>un</strong>e 2000.<br />
[Bem04] A. Bemporad. Hybrid toolbox - user’s guide. Technical report,<br />
2004. http://www.<strong>di</strong>i.<strong>un</strong>isi.it/hybrid/toolbox.
BIBLIOGRAFIA 109<br />
[BFM00] A. Bemporad, G. Ferrari-Trecate, and M. Morari. Observability<br />
and controllability of piecewise affine and hybrid systems. IEEE<br />
Trans. Automatic Control, 45(10):1864–1876, October 2000.<br />
[BM99] A. Bemporad and M. Morari. Control of systems integrating<br />
logic, dynamics, and constraints. Automatica, 35:407–427, 1999.<br />
[BM01a] A. Bemporad and D. Mignone. MIQP. ETH Zurich, Switzer-<br />
land, 2001. http://www.control.ethz.ch/~hybrid/miqp.<br />
[BM01b] A. Bemporad and M. Morari. Optimization-based hybrid control<br />
tools. Proc. American Contr. Conf., 2001.<br />
[BMDP01] A. Bemporad, M. Morari, V. Dua, and E.N. Pistikopoulos.<br />
The explcit quadratic regulator for constrained systems. Proc.<br />
American Contr. Conf., 2001.<br />
[Bos97] A. Bosio. Note su Sistemi Energetici. SGE E<strong>di</strong>toriali, 1997.<br />
[BRM04] A. Bemporad, N.L. Ricker, and M. Morari. Mod-<br />
el Pre<strong>di</strong>ctive Control Toolbox for Matlab, 2004.<br />
http://www.mathworks.com/access/helpdesk/help/toolbox/mpc/.<br />
[BRO04] A. Bemporad, N.L. Ricker, and J.G. Owen. Model pre<strong>di</strong>ctive<br />
control – New tools for design and evaluation. In American<br />
Control Conference, pages 5622–5627, Boston, MA, 2004.<br />
[BTM00] A. Bemporad, F.D. Torrisi, and M. Morari. Optimization-based<br />
verification and stability characterization of piecewise affine and<br />
hybrid systems. In B. Krogh and N. Lynch, e<strong>di</strong>tors, Hybrid Sys-<br />
tems: Computation and Control, volume 1790 of Lecture Notes<br />
in Computer Science, pages 45–58. Springer Verlag, 2000.<br />
[BTM01] A. Bemporad, F.D. Torrisi, and M. Morari. Discrete-time hy-<br />
brid modeling and verification of the batch evaporator process
BIBLIOGRAFIA 110<br />
benchmark. European Journal of Control, 7(4):382–399, July<br />
2001.<br />
[CD88] L.O. Chua and A. Deng. Canonical piecewise-linear<br />
representation. IEEE Trans. Circuits Syst. I, 35, 1988.<br />
[FL98] R. Fletcher and S. Leyffer. Numerical experience with low-<br />
er bo<strong>un</strong>ds for MIQP branch-and-bo<strong>un</strong>d. SIAM J. Optim.,<br />
8(2):604–616, May 1998.<br />
[GBKH05] N. Giorgetti, A. Bemporad, I.V. Kolmanovsky, and D. Hrovat.<br />
Explicit hybrid optimal control of <strong>di</strong>rect injection stratified<br />
charge engines. Proc. IEEE Int. Symp. on Industrial Electronics,<br />
pages 247–252, 2005.<br />
[GBTH06] N. Giorgetti, A. Bemporad, H.E. Tseng, and D. Hrovat.<br />
Hybrid model pre<strong>di</strong>ctive control application towards optimal<br />
semi-active suspension. International Journal of Control,<br />
79(5):521–533, 2006.<br />
[Gio01] N. Giorgetti. <strong>Modellizzazione</strong> e controllo ibrido <strong>di</strong> <strong>un</strong> motore<br />
ad iniezione <strong>di</strong>retta a benzina. Tesi <strong>di</strong> Laurea, Università degli<br />
Stu<strong>di</strong> <strong>di</strong> Firenze, 2001.<br />
[GNRR93] R.L. Grossman, A. Nerode, A.P. Ravn, and H. Rischel. Hybrid<br />
systems. Lecture Notes in Computer Science, 736, 1993.<br />
[HDB01] W.P.M.H. Heemels, B. De Schutter, and A. Bemporad. Equiva-<br />
lence of hybrid dynamical models. Automatica, 37(7):1085–1091,<br />
July 2001.<br />
[Hey88] J.B. Heywood. Internal Combustion Engine F<strong>un</strong>damentals.<br />
McGraw-Hill, Inc., 1988.
BIBLIOGRAFIA 111<br />
[ILO01] ILOG, Inc. CPLEX 7.1 User Manual. Gentilly Cedex, France,<br />
2001.<br />
[JELS99] K.H. Johansson, M. Egerstedt, J. Lygeros, and S. Sastry. On the<br />
regulation of zeno hybrid automata. System & Control Letters,<br />
38:141–150, 1999.<br />
[JJD98] P. Julian, M. Jordan, and A. Desages. Canonical piecewise-<br />
linear approximation of smooth fuinctions. IEEE Trans.<br />
Circuits Syst. I, 45(5):567–571, May 1998.<br />
[JKB + 99] J.S<strong>un</strong>, I.V. Kolmanovsky, D. Brehob, J. Cook, J. Buckland,<br />
and M. Haghgooie. Modelling and control problems for gaso-<br />
line <strong>di</strong>rect injection engines. In Proc. 1999 IEEE Conf. Control<br />
Applications, pages 471–477, Hawaii, 1999.<br />
[Kat93] R.H. Katz. Contemporary Logic Design. Benjamin<br />
Cummings/Ad<strong>di</strong>son Wesley Publishing Company, 1993.<br />
[KDS00] I.V. Kolmanovsky, M.V. Druzhinina, and J. S<strong>un</strong>. Nonlinear<br />
torque and air-to-fuel ratio controller for <strong>di</strong>rect injection strat-<br />
ified charge gasoline engines. In Procee<strong>di</strong>ngs of AVEC 2000, 5-<br />
th International Symposium on Advanced Vehicle Control, Ann<br />
Arbor, Michigan, August 2000.<br />
[KFA69] R.E. Kalman, P.L. Falb, and M.A. Arbib. Topics in<br />
Mathematical System Theory. McGraw-Hill, Inc., 1969.<br />
[Mak02] A. Makhorin. GNU Linear Programming Kit, 3.0.5 e<strong>di</strong>tion,<br />
2002. http://www.gnu.org/software/glpk/glpk.html.<br />
[MBM99] D. Mignone, A. Bemporad, and M. Morari. Framework for con-<br />
trol, fault detection, state estimation and verification of hybrid<br />
systems. In Proc. American Contr. Conf., 1999.
BIBLIOGRAFIA 112<br />
[Mig01] D. Mignone. The REALLY BIG collection of logic propositions<br />
and linear inequalities. Technical Report AUT01-11, Automatic<br />
Control Laboratory, ETH Zürich, Switzerland, September 2001.<br />
[MLMH94] G. Mitra, C. Lucas, S. Moody, and E. Hadjiconstantinou. Tools<br />
for reformulating logical forms into zero-one mixed integer pro-<br />
grams. European Journal of Operational Research, 72:262–276,<br />
1994.<br />
[OMPQI06] C. Ocampo-Martínez, V. Puig, J. Quevedo, and A. Ingim<strong>un</strong>dar-<br />
son. Fault tolerant optimal control of sewer networks: Barcelona<br />
case study. International Journal of Measurement and Control:<br />
Special Issue on Fault tolerant systems, 39:151–156, J<strong>un</strong>e 2006.<br />
[RG91] R. Raman and I.E. Grossman. Relation between MILP modeling<br />
and logical inference for chemical process synthesis. Computers<br />
Chem. Engng., 15(2):73–84, 1991.<br />
[Son81] E. Sontag. Nonlinear regulation: Th piecewise linear approach.<br />
IEEE Trans. Automatic Control, 26:346–358, April 1981.<br />
[Son96] E. D. Sontag. Interconnected automata and linear systems: A<br />
theoretical framework in <strong>di</strong>screte-time. In Hybrid Systems III–<br />
Verification and Control, volume 1066, pages 436–448. R. Alur,<br />
T.A. Henzinger, and E.D. Sontag, Eds Berlin:Springer-Verlag,<br />
1996.<br />
[TB04] F.D. Torrisi and A. Bemporad. HYSDEL - a tool for gener-<br />
ating computational hybrid models for analysis and synthesis<br />
problems. IEEE TCST, 12(2):235–249, 2004.<br />
[Wit66] H.S. Witsenhausen. A class of hybrid-state continous-time dy-<br />
namic systems. IEEE Trans. Automatic Control, 11:161–167,<br />
February 1966.
In<strong>di</strong>ce analitico<br />
analisi <strong>di</strong> raggi<strong>un</strong>gibilità, 31<br />
carica stratificata, 52<br />
ciclo<br />
f<strong>un</strong>zionamento, 46<br />
CNF, 21<br />
connettivi logici, 20<br />
controllo pre<strong>di</strong>ttivo, 5, 33, 34, 37,<br />
42, 77, 78, 80<br />
<strong>di</strong>screte hybrid automata (DHA), 4,<br />
10, 11, 17, 18, 29, 33<br />
event generator (EG), 11, 14<br />
finite state machine (FSM), 11,<br />
15<br />
mode selector (MS), 11, 16<br />
reset maps, 16<br />
switched affine system (SAS), 11,<br />
13, 30<br />
equilibrio, 26<br />
fase<br />
coppia <strong>di</strong>, 26<br />
asintoticamente stabile, 26<br />
esponenzialmente stabile, 26<br />
stabile, 26<br />
stato <strong>di</strong>, 26<br />
113<br />
aspirazione, 46<br />
combustione, 47<br />
compressione, 47<br />
scarico, 47<br />
fenomeni<br />
mancata accensione, 49<br />
preaccensione, 49<br />
forma normale congi<strong>un</strong>tiva, 21<br />
f<strong>un</strong>zione logica, 20<br />
HYSDEL, 18, 75, 77, 80, 101<br />
meto<strong>di</strong><br />
Branch & Bo<strong>un</strong>d, 41<br />
Branch & Cut, 41<br />
decomposizione, 41<br />
logici, 41<br />
tagli, 40<br />
modello<br />
non lineare, 6, 59, 68, 72, 77, 83<br />
modello <strong>di</strong> <strong>un</strong> sistema, 9<br />
modo<br />
omogeneo, 52, 56, 62, 64, 71, 79,<br />
85, 88<br />
stratificato, 51, 56, 57, 62–64,<br />
68, 71, 79, 85, 86, 88
INDICE ANALITICO 114<br />
motore<br />
transizioni <strong>di</strong>, 18, 56, 57, 68, 83–<br />
85, 88<br />
a 2 tempi, 47<br />
a 4 tempi, 47<br />
accensione comandata, 46<br />
accensione spontanea, 46<br />
carburazione, 46<br />
combustione interna, 45<br />
DISC, 50, 58, 60, 69, 76, 77, 80,<br />
96<br />
iniezione <strong>di</strong>retta, 46<br />
MCI, 45<br />
MPC, 34, 36, 43, 66, 75, 79, 83, 93,<br />
96<br />
esplicito, 42, 94, 96, 99<br />
orizzonte recessivo, 5, 35, 37<br />
problema<br />
lineare, 35<br />
MILP, 38, 40<br />
MIQP, 37, 40–42, 82<br />
misto intero, 37<br />
mpMILP, 42<br />
mpMIQP, 42<br />
multiparametrico, 42<br />
quadratico, 35<br />
proprietà DHA<br />
ben postezza, 17<br />
proprietà MLD<br />
ben postezza, 25<br />
stabilità, 26<br />
rapporto aria-carburante, 48, 53, 56,<br />
59, 63, 69, 71, 73, 78, 79, 89<br />
rapporto stechiometrico, 48, 88<br />
sistemi, 8<br />
valvola<br />
equivalenza tra, 30<br />
ibri<strong>di</strong>, 9<br />
MLD, 10, 18, 19, 25, 26, 28, 29,<br />
33, 37, 68, 73, 75, 77, 81,<br />
101<br />
PWA, 4, 10, 28, 30–33, 43, 95<br />
switched affine, 11<br />
aspirazione, 46<br />
scarico, 46<br />
variabile<br />
binaria, 19<br />
logica, 19<br />
vincoli LCIF, 22<br />
vincolo<br />
accensione candela, 74<br />
farfalla, 74<br />
rapporto AF, 73, 86<br />
variazione portata, 75, 95, 104