• Non ci sono risultati.

ImplementazioneImplementazione modellomodello

N/A
N/A
Protected

Academic year: 2021

Condividi "ImplementazioneImplementazione modellomodello"

Copied!
14
0
0

Testo completo

(1)

Capitolo 4

Capitolo 4

Implementazione

Implementazione

modello

modello

4.1 Simulink vs. Spice

La scelta di utilizzare un equivalente elettrico per modellare la cella litio polimero in un primo momento aveva indotto a pensare che l'ambiente più adatto per implementare il modello fosse il simulatore circuitale Spice. Tale scelta però nascondeva delle incognite. In primo luogo ci trovavamo a dover modellare dei

componenti passivi variabili nel tempo, non lineari, dipendenti dalla corrente Ibatt e

dallo stato di carica della cella stessa. La soluzione pensata in questa fase fu quella di sostituire i componenti passivi del modello con dei generatori controllati di tensione e di corrente, che ne simulassero il comportamento. Se in un primo momento questa soluzione sembrò buona, quando si dovette unire il comportamento in carica e scarica (inizialmente sviluppati separatamente) in un unico modello, l'utilizzo di Spice mostrò tutti i suoi limiti. Infatti, era si possibile sostituire gli elementi passivi con generatori controllati da più sorgenti, ma la dipendenza da queste poteva essere espressa solo in forma polinomiale. I piani così ottenuti, essendo appunto delle polinomiali, non potevano approssimare in modo soddisfacente il reale andamento di tensione e di corrente sulle resistenze e sulle capacità, che presentavano discontinuità soprattutto nel passaggio tra carica e scarica.

Nacque quindi la necessità di trovare un altro ambiente in cui realizzare il modello. La scelta è caduta sull'utilizzo di Simulink. Tale scelta fu giustificata dal fatto (poi non sfruttato) di poter utilizzare librerie di componenti circuitali, e soprattutto dalla la potenza e flessibilità del programma. Inoltre l'ambiente scelto risulta adatto anche in previsione del possibile proseguo di questo lavoro di tesi, ovvero la

(2)

modellizzazione di un pacco batterie (di cui il modello qui presentato dovrebbe andare a costituire uno dei blocchi base) con cui poi andare a testare e valuta le scelte architetturali per la realizzazione di un BMS per applicazioni automotive.

Ma cos'è Simulink? Simulink è un ambiente grafico per la simulazione di sistemi complessi., che ci permette la simulazione di sistemi costituiti da diversi blocchi (che possono descrivere elementi statici o dinamici) interconnessi tra loro. Compito dell'utente sarà quello di realizzare lo schema a blocchi del sistema che intende simulare, partendo da delle librerie messe a disposizione dall'ambiente stesso. Partendo dallo schema, Simulink si occuperà di generare automaticamente le equazioni del sistema e di risolvere il problema numerico di simulazione richiesto.

4.2 Realizzazione Simulink

Vediamo ora come è stato, effettivamente, implementato il modello presentato nel capitolo 3.

Il modello (figura 4.1) preleva dal workspace Matlab i dati relativi alla Ibatt che scorre

sulla batteria. Questi valori vengono utilizzati nel blocco “SOC” per la

determinazione dello stato di carica della cella. Dopodiché SOC e Ibatt fungono da

ingressi per cinque look-up table da cui si ricavano i valori della Rseries e dei

componenti delle due squadre RC con cui sono modellate le due costanti tempo. Questi dati vengono quindi utilizzati per la determinazione delle cadute di tensioni che si hanno sulle resistenze. A questo punto non resta che sommare questi valori di

tensione all'OCV ottenendo la Vbatt della cella litio polimero. Ho così un modello

che, data la corrente fornita/richiesta alla batteria, mi da informazioni sull'andamento della tensione e dello stato di carica della batteria.

Alcune considerazioni sulla costruzione della look-up table da cui vengono estratti i

valori di OCV, Rseries e dei restanti quattro componenti legati ai transitori. Per quanto

riguarda queste ultime cinque, sono state create passando a Simulink delle tabelle 11x8 contenenti i dati estratti delle misure, dove i valori sono organizzati in modo da avere sulla stessa riga i dati riguardanti una stessa corrente al variare del SOC. Da questi punti, il sistema si ricava quelli necessari alla simulazione compiendo una

(3)
(4)

interpolazione lineare (ottenendo così un piano come quello visto in figura 2.18). Discorso diverso per quanto riguarda l'OCV. In questo caso infatti, inserire solo gli undici punti ricavati dalle misure nella look-up table, ed utilizzare l'interpolazione lineare messa a disposizione dal blocco per determinare i punti mancati, dava come risultato una tensione della cella a vuoto lineare a tratti, che male approssimava il vero andamento dell'OCV. Si è dunque deciso di utilizzare sempre una look-up table, ma, invece di passare solamente gli undici punti ricavati dalla procedura di test, di inserire un vettore di cento dati, ottenuto dagli undici sopracitati mediante un'operazione di interpolazione di tipo cubic spline, e poi tra questi far compiere a Simulink un'interpolazione lineare. Si ottiene così, per modellare l'andamento dell'OCV, sempre una tensione lineare a tratti, ma con passo più fine, che meglio approssima il comportamento della vera OCV.

L'ultima parte dello schema a blocchi (visibile sulla destra della figura 4.1) serve solamente per poter confrontare i valori di tensione ottenuti tramite misura, con quelli ricavati dal modello, monitorando di quanto si discostano in termini percentuali e di tensione, permettendo così di avere un indice sulla bontà del lavoro svolto.

Scendiamo un po' più nel dettaglio nella descrizione del modello andando ad analizzare i blocchi “SOC” e “Vt_l” (“Vt_s” è analogo).

“SOC”

(5)

Nel blocco “SOC”, visibile in figura 4.2, abbiamo la determinazione dello stato di carica. Vediamo le operazioni che svolge il subsystem per giungere a questo risultato. Per prima cosa preleva dal blocco superiore i valori relativi alla capacità, alla resistenza di auto-scarica, allo stato di carica iniziale e ovviamente della corrente che

scorre sulla cella, quindi converte il valore di Ccapacity in Farad. A questo punto risolve

la seguente espressione (si ricordi che il SOC è modellato come la tensione ai capi della capacità):

(4.1) dove il 100 a moltiplicare l'integrale della corrente è messo perché vogliamo lo stato di carica compreso tra 0 e 100, mentre il cambio di segno alle correnti è legato alla convenzione adottata nel modello (visibile in figura 4.4) che prevede segno positivo per le correnti di scarica e negativo per quelle di carica. Per quanto riguarda l'espressione della Iself_discharge, questa è data da:

(4.2) A questo punto abbiamo i dati relativi all'andamento dello stato di carica della cella al variare del tempo e della Ibatt.

“Vt_l” e “Vt_s”

SOC=SOC

init

100

C

capacity

−

i

batt

i

self discharge

dt

i

self discharge

=

SOC

R

self discharge

(6)

I blocchi “Vt_l” e “Vt_s” non fanno altro che determinare le cadute che si ha sulle due squadre RC con cui sono modellati i transitori nella cella. Per fare questo la subsystem ha bisogno dei dati relativi al valore della resistenza e della capacità presenti sul parallelo, e del valore di corrente che scorre nella batteria. Una volta disponibili i dati, il blocco risolve questa equazione:

(4.3)

dove ic(t), la corrente che scorre sulla capacità, risulta essere uguale a:

(4.4) Abbiamo così in uscita dal blocco il valore della caduta di tensione ai capi di un

parallelo RC. Collegando “Vt_l” con i dati relativi a Rt_l e Ct_l avremo il valore della

componente legata al transitorio più lungo (dovuto all'activation polarization),

mentre collegando “Vt_s” con le look-up table contenenti i valori di Rt_s e Ct_s,

ricaviamo la componente legata al transitorio breve (legato alla concentration polarization).

Si è visto quindi come è stato implementato, tramite ambiente Simulink, il modello presentato al capitolo 3 (che di fatto è valido per celle di una qualunque chimica) inserendo i valori estratti tramite misura da una cella litio polimero Kokam SLPB723870H. Nei paragrafi successivi mostreremo il comportamento del suddetto modello, sia rispetto alla cella campione, sia rispetto ad altre cella della stessa tipologia.

4.3 Validazione modello su cella campione

In questa sezione, per fare una validazione del modello per la cella SLPB723870H che ci siamo costruiti, metteremo a confronto i dati ottenuti dalle misure con quelli ricavati tramite simulazione. Questa operazione varrà compiuta per diverse prove, tutte compiute sulla cella campione. Si rimanda al paragrafo successivo per una prova della qualità del modello su celle differenti da quella campione, ma della stessa

v t=

i

c

t 

C t

dt

i

c

t=i

batt

i

r

t=i

batt

vt 

(7)

tipologia.

Le prime prove che riportiamo, sono quelle da cui si è proceduto all'estrazione dei parametri, ovvero carica e scarica con 5 minuti di pausa al raggiungimento di ogni determinato stato di carica.

Come si può vedere dalle figure 4.4 e 4.5, che riportano i grafici per carica a C/2 e scarica a 5C nella modalità di misura, si ha un buon comportamento del modello nella simulazione delle prove che hanno portato alla determinazione dei parametri. Risulta esserci però un discostamento tra l'andamento della misura e del modello per

Figura 4.4: Carica C/2 con pause ogni 9.5% di SOC a partire da 1%

(8)

bassi stati di carica, tra il 20% e il 30% del SOC ed in particolare per bassissimi SOC durante la scarica. Questo fenomeno è da imputare all'errore di cui è affetta la determinazione dell'OCV, argomento già trattato al capitolo 3, ovvero al fatto che piuttosto che il reale valore della tensione a vuoto, quello che abbiamo determinato è una fascia in cui questa cade. L'errore maggiore tra modello e simulazione risulta essere proprio in quei punti in cui questa fascia risulta più larga. Di fatto, comunque, si tratta di un errore di poche decine di millivolt. In tabella 4.1 sono riportati l'errore massimo e quello medio che il modello commette rispetto alla misura, per cariche e scariche impulsate. Pulse Charge Current [A] Max. Error Voltage (mV) Mean Error Voltage (mV) Max. Percent1 Error [%] Mean Percent Error [%] 0.75 65 7 1.9 0.2 1.5 64 8 1.8 0.2 Pulse Discharge Current [A] Max. Error Voltage (mV) Mean Error Voltage (mV) Max. Percent Error [%] Mean Percent Error [%] 0.75 155 16 5.2 0.4 1.5 50 12 1.7 0.3 3 122 12 4.1 0.3 7.5 95 14 2.8 0.4 15 185 14 5.8 0.4 30 93 10 2.6 0.3

Tabella 4.1: Andamento errore modello per carica e scarica impulsata

Non ci si faccia ingannare dall'alto valore dell'errore, soprattutto per la scarica. L'errore massimo infatti risulta sempre essere nell'intorno della completa scarica della cella. Tale dato risulta trascurabile se si pensa alle applicazioni cui questo modello è destinato, ovvero alla simulazione di celle facenti parte di pacchi batteria per veicoli ibridi o plug-in. In queste applicazioni infatti, la cella risulta lavorare in zone centrate sul 50% dello stato di carica (per gli ibridi) o in una fascia solitamente compresa tra il 20% e 80% di SOC per quanto riguarda i veicoli elettrici plug-in (PHEV), quindi proprio in quelle zone dove il modello presentato risulta essere più

1 Percent Error =100⋅VmodelVtest

(9)

accurato, con errori inferiori al mezzo punto percentuale.

Riportiamo ora come si comporta il modello applicato a delle ipotetiche prove di utilizzo.

Come si vede in figura 4.6, si ha un buon comportamento del modello per un test che prevede il susseguirsi di cariche e scariche a varie correnti e momenti di pausa. Si inizia però ad intravedere un discostarsi progressivo del valore simulato da quello reale con l'andar dl tempo. Questa tendenza è ulteriormente sottolineata in un secondo test, riportato in figura 4.7, in cui si ha una serie di scariche.

Figura 4.6: Test con diverse correnti di carica e scarica

(10)

Si vede infatti come il modello sia affidabile nei primi minuti di test, e vada via via a peggiorare le proprie prestazioni.

Da cosa può essere dovuto un comportamento di questo tipo? Bisogna dire che per la realizzazione del modello, sino ad ora non si è tenuto conto di un fattore determinante che influisce sul comportamento di una cella, ed in particolare di una cella a litio polimero, ovvero della temperatura. Nell'estrarre potenza elettrica da una cella, avremo anche una parte di energia dispersa in calore. Avremo quindi che la cella si riscalda, tanto più quanto è maggiore la corrente richiesta ai suoi capi. Nel modello visto sino a qui non si è tenuto conto di ciò, ma abbiamo estratto i parametri con prove effettuate a temperatura ambiente, non termostatando la cella. Si può dire quindi che l'influenza della temperatura è intrinsecamente contenuta nei parametri estratti (ovvero il parametro è valido per quel dato SOC, a quella data corrente e per quella temperatura che la cella ha raggiunto in quel dato momento del test). Ma di fatto una cella sottoposta ad una scarica impulsiva a corrente costante si scalda in maniera differente da una cella sottoposta a scariche a diversi valori di corrente o ad una scarica continua. L'andamento anomalo nei test riportati in figura 4.6 e 4.7 si può quindi ricondurre al fatto che la temperatura della cella, a parità di stato di carica e di

Ibatt, è differente da quello che si aspetta il modello che è intrinsecamente contenuta

nei parametri che noi abbiamo inserito in Simulink.

(11)

Tale anomalia del modello è riscontrabile anche nelle scariche in corrente continua. In questo caso abbiamo buoni comportamenti per bassi valori di corrente in carica e scarica, fino a pochi C infatti la quantità di calore prodotto dalla cella è molto basso, mentre il comportamento del modello non è buono per alti valori di corrente, dove la produzione di calore è elevata e si discosta dalla produzione che si raggiunge nei test impulsivi da cui si sono estratti i parametri.

4.4 Comportamento modello su celle SLPB723870H

Analizziamo ora il comportamento del modello nel simulare celle SLPB723870H, differenti da quella utilizzata per l'estrazione dei parametri. Nel capitolo 3 si è fatto riferimento al fatto che i parametri estratti riescano a modellare con buona accuratezza celle dello stesso tipo, avendo l'accortezza di caratterizzare la singolo cella solo con il proprio valore di resistenza di auto-scarica e di capacità. Tale affermazione è suffragata dal grafico in figura 4.10, dove è riportato l'andamento in carica delle 13 celle, che assieme a quella campione, costituiscono la popolazione analizzata nel corso di questo lavoro. Nel grafico si può vedere come l'andamento della tensione ai capi della cella sia fondamentalmente lo stesso, salvo una lieve traslazione sull'asse delle ascisse. Tale traslazione è da ricondursi alla piccola variazione nel valore di carica immagazzinabile tra cella e cella. Di fatto comunque,

(12)

mantenendo i parametri estratti dalla cella campione (fatto salvo valore della Rself_discharge e Ccapacity) per tutte le batterie di una stessa tipologia, si commette un errore

che è confrontabile a quello di cui il modello è affetto, e quindi trascurabile.

Mean Error Voltage (mV) Mean Percent Error [%] Battery 1 10 0.3 Battery 2 30 0.8 Battery 3 19 0.5 Battery 4 28 0.7 Battery 5 26 0.7 Battery 6 15 0.4 Battery 7 23 0.6 Battery 9 23 0.6 Battery 10 24 0.6 Battery 11 16 0.4 Battery 12 32 0.8 Battery 13 25 0.6 Battery 14 23 0.6

Tabella 4.2: Errore commesso dal modello, sulle 14 celle SLPB723870H studiate, per carica a C

(13)

Considerazioni analoghe possono essere, ovviamente, fatte per il modello in fase di scarica. Abbiamo quindi visto come, preso un modello capace di simulare il comportamento di una cella di una chimica qualsiasi, tramite un appropriata procedura di misura e di estrazione dei parametri, è possibile ottenere un modello valido per caratterizzare il comportamento di una cella Li-poly, nel nostro caso una cella Kokam SLPB723870H, valido per applicazioni automotive.

Rimane aperta la questione della dipendenza dalla temperatura. Per avere un modello efficiente, questo parametro non può essere trascurato. Nei capitolo successivi

Figura 4.11: Carica C su batteria 3

(14)

affronteremo questo problema, presentando il progetto per un termostato in cui inserire la cella durante le misure, e introducendo all'interno del modello l'influenza della temperatura sul comportamento della batteria.

Figura

Figura 4.1: Battery.mdl
Figura 4.2: Blocco determinazione SOC
Figura 4.3: Blocco determinazione transitorio
Figura 4.5: Scarica 5C con pause ogni 9.5% di SOC a partire da 96%
+7

Riferimenti

Documenti correlati

Nella Toscana meridionale in particolare (Bertini et alii, 1991), il sovrascorrimento verso Est delle Unità Liguri (s.s.) sul Dominio Toscano determina lo scollamento della

«Come già previsto per le vittime di violenza sessuale — propone Giordano — si dovreb- be estendere il gratuito patroci- nio anche alle vittime degli infortuni sul lavoro.. Che

Si ritiene di fondamentale importanza continuare le analisi per angoli maggiori di 10°, in modo da trovare il valore dell’ angolo ottimale che meglio relazioni la luce riflessa

Scritture segrete e e testi sacri testi sacri Bibbia: tre tecniche di cifratura. – Atbash: alfabeto rovesciato (Aleph, taw, beth, shin) cifratura di “Babilonia” nel libro di

Con l'introduzione della Biopsia del linfonodo sentinella (SLNB) e la comprensione dell'importanza delle caratteristiche biologiche del tumore primitivo si è

L'architettura di Fluent consiste nel risolvere le equazioni di conservazione della massa e della quantità di moto a cui si può aggiungere, nel caso sia

Fuel rich combustion can’t release all the available heat, on the other hand an air rich combustion lead to heat losses through exhaust and case larger than heat losses

Per ogni deposito i la quantità totale di prodotto inviata da esso deve essere pari alla quantità di prodotto a i in esso immagazzinata... Modello matematico -