CAPITOLO 6
PROGETTO DEL SISTEMA DI
CONTROLLO
6.1 Introduzione
Nei capitoli precedenti sono stati introdotti i modelli matematici utili a studiare il problema del controllo delle sospensioni nei motoveicoli. In particolare, sono state sviluppate varie metodologie di controllo e per ciascuna di esse sono state calcolate le risorse computazionali occorrenti per la loro implementazione. A questo punto rimane da definire quali sensori e attuatori siano necessari per il completamento del sistema di controllo. La scelta dei sensori permetterà anche di definire le specifiche dei filtri numerici necessari per il loro condizionamento e quindi di valutare in modo esaustivo le risorse computazionali richieste per l’implementazione di ciascun algoritmo di controllo. Alla fine di questo capitolo avremo quindi una visione completa delle risorse hardware necessarie all’implementazione dei controllori analizzati, che, insieme alle loro prestazioni discusse nel capitolo 4, potranno essere impiegate per la scelta del controllore di una sospensione semi‐attiva per motoveicoli.
6.2 Sensori
Per ricavare le variabili di stato, come spiegato nel capitolo precedente, sono necessari dei sensori per misurare opportune grandezze fisiche; le tipologie di sensori necessarie sono: accelerometri e potenziometri lineari.
6.2.1 L’accelerometro
Analizziamo inizialmente le caratteristiche di questo sensore e della corrispondente elettronica di condizionamento. Mediante simulazione è stato possibile valutare che una precisione del 10% è sufficiente a garantire il corretto funzionamento dei controllori presi in esame.
Poiché l’uscita di questo sensore può essere utilizzata per ricavare un’altra grandezza di interesse, che è la velocità, è opportuno eliminare l’offset che affligge questo tipo di sensori, perché ciò può portare alla deriva degli integratori: per tale ragione si decide di piazzare, in uscita al sensore, un filtro passa alto realizzato in modo numerico.
Sia quindi assegnata la funzione di trasferimento tempo‐continua di un filtro passa‐alto del primo ordine riportata di seguito: t s s s G ω + = ) ( Dove ωt =2πft è la pulsazione di taglio del filtro. Tale pulsazione va scelta in base a dati sperimentali in modo da tagliare fuori la continua (non significativa per le accelerazioni) senza distorcere il segnale.
Trasformando la relazione tempo continua nel dominio z mediante il metodo bilineare: ) 1 ( ) 1 ( 2 + − = z T z s c si ricava: 1 c t c t c t c t 1 z ) z ( X T 2 2 ) z ( X T 2 2 T 2 T 2 z ) z ( Y ) z ( Y − ⋅ ⋅ − ω + − ⋅ ω + + ω + ω − ⋅ ⋅ = Posto: c t c t T T a ω ω + − = 2 2 ; c tT b ω + = 2 2
e antitrasformando si ricava l’equazione alle differenze finite del filtro ricorsivo: )] 1 ( ) ( [ ) 1 ( ) (n =a⋅y n− +b⋅ x n −x n− y
(
)
a z z b z a z b z H − − ⋅ = ⋅ − − ⋅ = −− 1 1 ) 1 ( ) ( 1 1 Se si riscrive l’uscita come segue : ( )⋅1 = ⋅y(n−1)+[x(n)−x(n−1)] b a b n yPer ottenere l’operazione di filtraggio bisogna quindi effettuare una somma, una differenza e 1 prodotto (considerando che la costante può essere inglobata con le altre)
6.2.2 Il potenziometro
Il potenziometro viene generalmente fornito insieme alla sospensione semiattiva con una precisione tale da non dare problemi per i controllori proposti.
6.2.3 Derivazione
Nel caso in cui si decida di derivare l’uscita del potenziometro è buona norma inserire un filtro passa basso per filtrare il rumore : G(s) = t t s+ω ω
Dove ωt =2πft è la pulsazione di taglio del filtro. Trasformando la precedente relazione nel dominio z mediante il metodo bilineare: ) 1 ( ) 1 ( 2 + − = z T z s c si ricava: t c t z T z z X z Y z G ω ω + + − = = ) 1 ( ) 1 ( 2 ) ( ) ( ) ( Sviluppando la precedente relazione, dopo alcuni passaggi si ottiene: 1 c t t c t t c t c t 1 z ) z ( X T 2 ) z ( X T 2 T 2 T 2 z ) z ( Y ) z ( Y − ⋅ ⋅ − ω + ω + ⋅ ω + ω + ω + ω − ⋅ ⋅ = Posto: a = c t c t T 2 T 2 ω + ω − ; b = c t t T 2+ω ω e antitrasformando si ricava l’equazione
[
( ) ( 1)]
) 1 ( ) (n =a⋅y n− +b⋅ x n +x n− y . Si può riscrivere l’ultima equazione inmodo analogo a quanto fatto in precedenza, ottenendo che l’implementazione di tale filtro richiede due somme e un prodotto.
6.3 Valutazione complessiva delle risorse
computazionali
A fronte di quanto appena visto va riconsiderato il numero di operazioni necessarie per realizzare ogni algoritmo. Nei controllori che lo prevedono, è quindi possibile ricavare la velocità della massa non sospesa per derivazione (dal sensore potenziometrico) oppure per integrazione da un accelerometro posto sul mozzo della ruota. Sebbene la derivazione implichi un minor numero di operazioni può non essere la scelta ottimale per quanto riguarda la propagazione dell’errore, in funzione delle caratteristiche dei due segnali. Non potendo fare, a priori tale scelta, si riporta, dove possibile, entrambe le possibilità.Il numero di operazioni divise per derivazioni, integrazioni, filtraggio e somme(o differenze) necessarie per ricavare le variabili di stato è riportata in seguito : Skyhook ∂
∫
Filtro ‐/+ Possibilità 1 0 2 2 1 Possibilità 2 1 1 2 0 Skyhook On/Off Possibilità 1 0 2 2 1 Possibilità 2 1 1 2 0 Skyhook_P Possibilità 1 0 2 2 1 Possibilità 2 1 1 2 0 H2 Possibilità 1 0 0 2 0 LQRY2 Possibilità 1 0 3 2 1 Possibilità 2 1 2 2 2Adesso si esprimono tali grandezze in funzione del tempo di campionamento, ricordando che le grandezze da integrare vengono campionate a 10 kHz e poi decimate (e analogamente quelle da derivare). Si ottiene il seguente numero di operazioni per secondo : Skyhook ∂
∫
Filtr ‐/+ Possibilità 1 0 20000 20000 1000 Possibilità 2 10000 10000 20000 0 Skyhook On/Off Possibilità 1 0 20000 20000 1000 Possibilità 2 10000 10000 20000 0 Skyhook_P Possibilità 1 0 20000 20000 1000 Possibilità 2 10000 10000 20000 0 H2 Possibilità 1 0 0 20000 0 LQRY2 Possibilità 1 0 30000 20000 1000 Possibilità 2 10000 20000 20000 2000L’operazione di integrazione, derivazione e filtraggio possono essere scomposte in prodotti, somme e differenze, ottenendo : * +/‐ Integrazione 1 2 Derivazione 0 1 HP 1 2 LP 1 2
Se si considera la tabella precedente si può calcolare che per le operazioni necessarie a ricavare le variabili di stato sono necessarie le seguenti operazioni per ogni secondo : Skyhook * +/‐ Possibilità 1 40000 81000 Possibilità 2 30000 70000 Skyhook On/Off Possibilità 1 40000 81000 Possibilità 2 30000 70000 Skyhook_P Possibilità 1 40000 81000 Possibilità 2 30000 70000 H2 Possibilità 1 20000 40000 LQRY2 Possibilità 1 50000 101000 Possibilità 2 40000 92000
Il numero di operazioni unicamente necessarie a risolvere l’algoritmo risulta invece :
skyhook On/Off Skh_P H2 LQRY2
Prodotti 4000 1000 2000 340000 6000 somme 3000 1000 1000 250000 5000 Divisioni 1000 0 0 10000 1000 Istr cond 1000 2000 4000 10000 1000 saturazioni 2000 0 0 30000 3000 val assoluti 2000 0 1000 20000 2000
Il numero complessivo di operazioni, quelle necessarie a risolvere l’algoritmo e quelle necessarie a ricavare le variabili di stato diventa quindi il seguente :
Skyhook_1 On/Off_1 Skh_P_1 H2 LQRY_1
Prodotti 44000 41000 42000 360000 56000 somme 84000 82000 82000 290000 106000 Divisioni 1000 0 0 10000 1000 Istr cond 1000 2000 4000 10000 1000 saturazioni 2000 0 0 30000 3000 val assoluti 2000 0 1000 20000 2000
Skyhook_2 On/Off_2 Skh_P_2 LQRY_2
Prodotti 34000 31000 32000 46000 somme 73000 71000 71000 97000 Divisioni 1000 0 0 1000 Istr cond 1000 2000 4000 1000 saturazioni 2000 0 0 3000 val assoluti 2000 0 1000 2000
6.4 Implementazione hardware dell’algoritmo di
controllo
Appare subito evidente che la scelta più naturale per implementare l’algorimo di controllo risulti un DSP (Digital Signal Processor) con capacità in virgola mobile. A questo punto occorre andare a valutare le prestazioni che il DSP (in termini, per esempio, di milioni di operazioni in virgola mobile che è grado di eseguire in un secondo) deve possedere per poter eseguire ogni algoritmo proposto. Per effettuare tale valutazione bisogna decidere di quante operazioni elementari è composta ogni operazione complessa. Si decide di considerare che somme, prodotti, istruzioni condizionali, saturazioni e valori assoluti contino come una sola operazione elementare. Per quanto riguarda la divisione si decide invece di conteggiarla come 6 operazioni elementari [17].
Si può quindi calcolare il numero di operazioni in virgola mobile al secondo necessari per risolvere ogni algoritmo (e calcolare le variabili di stato necessarie) :
Algoritmo
FLOPS
Skyhook 139000 Skyhook (2) 118000 Skyhook On/Off 125000 Skyhook On/Off(2) 104000 Skyhook_P 129000 Skyhook_P(2) 108000 H2 770000 LQRY2 174000 LQRY2(2) 155000 SofComputing 2010La tabella precedente dà un’indicazione della potenza necessaria per risolvere ogni algoritmo. La tecnica soft computing presenta una complessità molto inferiore rispetto agli altri algoritmi. Per quanto riguarda gli algoritmi skyhook e simili richiedono circa le medesime risorse hardware e quindi è preferibile scegliere quello che ha le prestazioni migliori. Si noti anche che l’algoritmo LQRY presenta ottime prestazioni senza incrementare troppo il numero di operazioni per secondo. Infine il controllore H2 è quello che presenta il maggior numero di operazioni risultando davvero molto più complesso rispetto agli altri.
6.5 Attuatore
Nel primo capitolo sono state introdotte varie tipologie di sospensioni semi‐attive (CDC, ER, MR) introducendone alcune caratteristiche. Si era quindi scelto di utilizzare ammortizzatori di tipo ER e MR poiché fornivano tempi di risposta più brevi e quindi più adatti a essere controllati in tempo reale. In questo paragrafo si spiegheranno i motivi che conducono alla scelta di una tipologia MR a fronte di una ER ; successivamente verrà presentata una possibile realizzazione pratica e infine si parlerà del circuito di pilotaggio che è in grado di fornire la corrente necessaria al controllo dell’attuatore.
6.5.1 Fluidi Magnetoreologici
I fluidi magnetoreologici sono un materiale che presenta un cambiamento di alcune proprietà fisiche (elasticità, duttilità, viscosità) al variare del campo magnetico. Tali effetti si presentano nella misura massima quando tale campo è applicato in modo normale al flusso del fluido MR. Esistono materiali con proprietà analoghe, che reagiscono invece al campo elettrico : sono detti materiali elettroreologici. I materiali ER, rispetto a quelli MR, presentano diversi lati negativi tra cui: variazione ridotta delle proprietà fisiche in funzione campo elettrico e grossa dipendenza dalla temperatura. Infine, per quanto riguarda il consumo di potenza, sebbene sia circa uguale, i fluidi MR richiedono piccole correnti e tensioni, mentre quelli ER richiedono piccolissime correnti ma grosse tensioni. Per tutte queste ragioni la scelta è ricaduta sulle sospensioni MR. La realizzazione di tali ammortizzatori è relativamente semplice perché consiste nella
sostituzione dell’olio con fluido magnetoreologico e nella sostituzione delle valvole meccaniche comunemente presenti nelle sospensioni.
6.5.2 Realizzazione di una sospensione MR
Un fluido magnetoreologico si realizza sospendendo particelle con proprietà ferromagnetiche in un liquido di supporto : tali particelle sono spesso di carbonile, poiché molto economiche. Esistono materiali come ferro‐cobalto o ferro‐nichel che garantiscono prestazioni molto migliori, ma ad un costo decisamente maggiore. Per quanto riguarda i fluidi di supporto possono essere utilizzati diversi materiali, come olio sintetico o kerosene : facendo particolare attenzione che possano sopportare agevolemente le alte temperature a cui verranno portati e che non presentino proprietà fisiche che si modifichino irreversibilmente durante l’utilizzo. A tali fluidi andranno, inoltre, aggiunti degli additivi che prevengano il deposito delle particelle ferromagnetiche e che, al contrario, ne favoriscano la dispersione. Uno schema di massima può essere quello di Figura 6.1.
Figura 6.1 Schema di massima di una sospensione semi‐attiva
Il fluido passa da sopra a sotto il pistone, e viceversa, tramite la valvola MR : questa consiste in un orifizio di misura fissa in grado di applicare un
campo magnetico nel volume. Questo porta ad una variazione della viscosità del fluido MR, e quindi ad una variazione della forza di resistenza al movimento dello stantuffo.
6.5.3 Circuito di pilotaggio
Come è stato spiegato precedentemente la sospensione semi‐attiva è pilotata in corrente : nel nostro caso si ha una corrente massima di 3 A e una potenza dissipata massima di circa 9 W. All’uscita del DSP sarà quindi necessario uno stadio di potenza per pilotare la sospensione. Un esempio di circuito in grado di svolgere tale funzione è il seguente :
Figura 6.2 ‐ Circuito di potenza per pilotare lʹattuatore
Il transistor di potenza viene pilotato da un driver che è collegato all’uscita del DSP, l’uscita del driver sarà una PWM a 100 kHz. La sospensione semi‐attiva è schematizzata come una resistenza e un’induttanza, tale induttanza avrà anche un effetto filtrante. Il diodo di flyback serve per
permettere il ricircolo della corrente quando il transistor si spegne. Per avere un controllo attivo della corrente viene prelevata la tensione sul Rsensing, tale tensione viene mandata in ingresso al DSP, dopo un’opportuna conversione AD che provvederà a variare il duty‐cycle in modo da mantenere la corrente voluta nella sospensione. Nella figura seguente si riporta il valore della corrente a regime al variare del duty‐cycle : Figura 6.3 ‐ Valor medio della corrente nella sospensione (a regime) al variare del duty cycle
Figura 6.4 ‐ Corrente nella sospensione semi‐attiva durante il transitorio di accensione
La Figura 6.4 mostra il transitorio di corrente di accensione nella sospensione semi‐attiva, come si vede il ripple è molto contenuto grazie all’effetto filtrante della sospensione.
6.6 Specifiche principali del sistema di sospensioni
semi‐attive
Nel corso di questo lavoro sono stati sviluppate le parti principali che compongono un sistema di controllo per sospensioni semi‐attive come mostrato in Figura 6.1.
Figura 6.5 ‐ Sistema di controllo per sospensioni semi‐attive
Per la realizzazione del sistema di controllo sarà necessario un DSP che effettui un numero di operazioni per secondo abbastanza grande da supportare l’algoritmo scelto (come calcolato nel paragrafo 6.4).
I sensori necessari sono strettamente legati alla scelta dell’algoritmo, comunque essi consisteranno, nel caso più generale, di un sensore poteziomentrico (fornito dal costruttore in una sospensione semi‐attiva) e uno o più accelerometri con caratteristiche non molto spinte (precisione di almeno il 10%).
Infine, per quanto riguarda l’attuatore sarà necessario un circuito di pilotaggio che consiste di un transistor di potenza (pilotato da un driver) e di un diodo di flyback; in aggiunta a questi sarà necessario un amplificatore differenziale per prelevare una tensione proporzionale alla corrente nella sospensione. Saranno infine necessari alcuni convertitori analogico digitale per poter mandare in ingresso al DSP le grandezze provenienti dai sensori e dall’amplificatore differenziale.