L’elettrificazione sta stimolando l’utilizzo delle batterie per una serie di applicazioni, tra cui veicoli elettrici (come automobili e autobus), navi, velivoli elettrici a decollo e atterraggio verticale (eVTOL) e sistemi di accumulo dell’energia a batteria (BESS). Queste applicazioni prevedono requisiti diversi per la progettazione di sistemi di batterie in termini di selezione delle celle, progettazione del pacco batterie (densità di potenza/energia, volume, peso e durata) e sviluppo del sistema di gestione delle batterie (BMS).
La simulazione della progettazione di sistemi di batterie prima della fase di test fornisce informazioni sul comportamento dinamico del pacco batteria. Consente inoltre di esplorare e confrontare gli algoritmi del BMS, ampliare i casi di test operativi e accelerare il ciclo di sviluppo tecnologico dalla cella di batteria al sistema di batterie.
Il workflow di sviluppo di un sistema di batterie ha inizio con la modellazione della batteria, seguita da:
Utilizzando Simulink® e Simscape Battery™, il workflow per lo sviluppo del sistema di batterie inizia con la modellazione della batteria, prosegue con la progettazione del pacco batterie e si conclude con lo sviluppo degli algoritmi del BMS. Successivamente è possibile eseguire una simulazione desktop a circuito chiuso per validare la progettazione del pacco batterie e il BMS. La fase successiva consiste nella simulazione in tempo reale dei modelli mediante la prototipazione rapida e i test Hardware-In-the-Loop. Le fasi finali dello sviluppo prevedono l’implementazione, la distribuzione e il test dell’hardware.
Esistono tre diversi tipi di modelli di batterie: modelli di circuiti equivalenti (ECM), modelli elettrochimici e modelli basati sui dati. È possibile creare questi modelli ed eseguire simulazioni utilizzando i prodotti Simscape Battery e Simulink; inoltre, tutti questi modelli possono essere integrati in Simulink con il supporto per la generazione di codice.
Modelli di circuiti equivalenti
I modelli di circuiti equivalenti delle batterie (ECM) utilizzano elementi di circuiti elettrici come resistori, condensatori e sorgenti di tensione per replicare il comportamento dinamico di una cella di batteria. Grazie alla loro semplicità ed efficienza computazionale, i modelli ECM vengono utilizzati per la progettazione dei sistemi di gestione delle batterie (BMS) e per le simulazioni a livello di sistema. Simscape Battery offre un blocco ECM predefinito, il blocco Battery Equivalent Circuit, che modella la dinamica elettrotermica di una batteria e supporta l’isteresi della batteria sulla tensione a circuito aperto (OCV), il degrado della batteria (invecchiamento da cicli ripetuti e invecchiamento da calendario) e la simulazione dei guasti, inclusa la fuga termica.
Modelli elettrochimici di batteria
I modelli elettrochimici di batteria sono modelli matematici che descrivono i processi fisici e chimici interni che avvengono all’interno di una batteria durante la carica e la scarica. Rispetto ai modelli di circuiti equivalenti (ECM), i modelli elettrochimici di batteria forniscono informazioni dettagliate sui processi interni della batteria, risultando preziosi per la progettazione delle celle, lo studio del degrado, l’ottimizzazione della corrente di ricarica rapida e una previsione più accurata delle prestazioni in condizioni operative estreme.
Simscape Battery fornisce:
- Il blocco Battery Single Particle per rappresentare una batteria utilizzando un modello a singola particella con le dinamiche dell’elettrolita (SPMe), che include la placcatura del litio e la crescita dell’interfase solido-elettrolita (SEI).
- Il modello di batteria Doyle-Fuller-Newman (DFN), noto anche come modello di batteria pseudo-bidimensionale (P2D), utilizzato per simulare nel dettaglio i processi fisico-elettrochimici che si verificano all’interno di una batteria, come la diffusione del litio, le reazioni elettrochimiche, la conservazione della carica e la dinamica della generazione di calore.
Modelli di batteria basati sui dati
I modelli di batteria basati sui dati utilizzano dati empirici e metodi come l’identificazione di sistema, il Machine Learning e il Deep Learning per simulare e prevedere il comportamento delle batterie. Possono essere integrati in Simulink per la simulazione a livello di sistema e supportano la generazione di codice. I modelli di batterie basati sui dati sono ideali quando le dinamiche interne sono difficili da descrivere in modo analitico, ad esempio i meccanismi di degrado nelle modellazioni dell’invecchiamento delle batterie. I modelli basati sui dati sono adatti per la gestione delle flotte di veicoli elettrici, la manutenzione predittiva, la diagnostica avanzata e altre applicazioni in cui la disponibilità di grandi quantità di dati consente di migliorare l’accuratezza delle previsioni sulla durata della batteria.
È possibile utilizzare il Deep Learning per creare un modello non lineare di ordine ridotto di spazio degli stati. I dati di addestramento per questo tipo di modelli possono provenire da dati sperimentali oppure da simulazioni basate su modelli ad altissima fedeltà (ad esempio modelli di batteria FEA).
Punti chiave
- Utilizza il blocco ECM (modello di circuito equivalente) predefinito con il degrado della batteria (invecchiamento da cicli ripetuti e invecchiamento da calendario) e la simulazione dei guasti (fuga termica).
- Simula i processi elettrochimici utilizzando i modelli di batterie SPMe e DFN.
- Crea modelli di batterie basati sui dati integrati in Simulink e che supportano la generazione di codice.
Risorse
- Modellazione e simulazione di guasti in un sistema di batterie (30:23) - Video
- Caratterizzazione della fuga termica di una cella mediante test di calorimetria a velocità accelerata (ARC) - Documentazione
- Modellazione di ordine ridotto di un sistema di batterie per veicoli elettrici mediante un modello neurale di spazio degli stati - Documentazione
- Modellazione di batterie
- Simscape Battery Onramp - Corsi online autogestiti
Mediante l’app Battery Builder o l’API (Application Programming Interface) di Simscape Battery in MATLAB® è possibile sviluppare un pacco batteria. Gli elementi fondamentali della progettazione includono la progettazione delle celle, il gruppo parallelo, il modulo, il gruppo modulo e la progettazione del pacco batteria.
Sia con l'app Battery Builder sia con la relativa API è possibile:
- Sviluppare e visualizzare modelli di batterie con diverse geometrie e topologie, dalla cella al modulo e dal modulo al pacco.
- Modellare piastre di raffreddamento con percorsi del fluido e collegamenti al pacco batteria personalizzabili.
- Creare un modello di batteria utilizzando un componente di cella personalizzato.
- Modellare lo scambio termico tra le celle.
- Analizzare la variazione di temperatura da una cella all’altra e misurare l’efficienza di raffreddamento.
- Generare un modello di libreria Simulink personalizzato per la progettazione del pacco batteria.
- Impostare una risoluzione dei modelli adeguata per trovare un equilibrio tra la fedeltà dei modelli e la velocità di simulazione.
Punti chiave
- Sviluppa un pacco batteria personalizzato con varie risoluzioni di modello.
- Aggiungi effetti termici al modello di batteria.
- Genera modelli di pacchi batteria per la simulazione.
Risorse
- Dalla cella di batteria al sistema di batterie (2:44) - Video
- Introduzione all’app Battery Builder - Documentazione
- Creazione di un modello di batteria utilizzando un componente di cella personalizzato - Documentazione
- Creazione di un modello di modulo batteria con scambio termico tra le celle - Documentazione
Gli ingegneri possono utilizzare MATLAB e Simulink per progettare un sistema di gestione termica delle batterie al fine di regolare la temperatura di un pacco batteria nel rispetto di determinate specifiche e garantirne prestazioni ottimali in diverse condizioni operative.
Confronto basato su analisi termica tra una batteria agli ioni di litio nuova e una invecchiata con Simscape Battery.
Confronto basato su analisi termica tra una batteria agli ioni di litio nuova e una invecchiata con Simscape Battery.
Acquisizione del comportamento termico delle batterie
Con Simscape Battery, gli ingegneri possono modellare il comportamento termico delle batterie a diversi livelli di fedeltà, dalla cella al pacco batterie, per tenere conto delle variazioni di temperatura e del loro impatto sulle prestazioni, sulla sicurezza e sull’invecchiamento.
A livello di cella, è possibile discretizzare il modello termico lungo l’altezza della cella per aumentare il livello di fedeltà della modellazione termica e modellare il gradiente termico all’interno della cella.
A livello di modulo e di pacco batterie, i percorsi termici configurabili tra le celle consentono di rappresentare gli effetti della conduzione, della convezione e dell’irraggiamento, supportando l’analisi delle variazioni di temperatura da una cella all’altra e della propagazione termica.
Per bilanciare accuratezza e velocità di simulazione, Simscape Battery supporta anche modelli termici di ordine ridotto derivati da analisi agli elementi finiti o ai volumi finiti ad alta fedeltà, che preservano le dinamiche termiche dominanti consentendo al contempo la simulazione a livello di sistema, l’esecuzione in tempo reale e i test Hardware-In-the-Loop (HIL).
Questi modelli termici possono essere accoppiati direttamente a rappresentazioni dettagliate dei sistemi di raffreddamento, come piastre raffreddate a liquido con percorsi del flusso configurabili, consentendo di valutare la distribuzione della temperatura e l’efficacia del raffreddamento in condizioni operative realistiche. Simscape Battery fornisce blocchi di piastre di raffreddamento predefiniti che supportano diverse configurazioni di flusso, tra cui canali paralleli, canali rettangolari a U e raffreddamento dei bordi.
Blocco canale parallelo in Simscape Battery.
Blocco canale a U in Simscape Battery.
Blocco raffreddamento dei bordi in Simscape Battery.
Progettazione di controlli per la gestione termica delle batterie
Con Simulink è possibile progettare controlli a loop chiuso che combinano tecniche di feedforwarding e PID per i controlli del sistema di circolazione, come il controllo del flusso di alimentazione (valvola), il controllo del flusso di massa (pompa) e il controllo della selezione del percorso di scambio termico. Con Simscape Battery è possibile utilizzare blocchi predefiniti, come Battery Coolant Control e Battery Heater Control, per costruire algoritmi di controllo della gestione termica delle batterie. Con Stateflow è inoltre possibile progettare una logica di controllo di supervisione per passare da una modalità di funzionamento all’altra, come il riscaldamento o il raffreddamento, in base alla temperatura ambiente e alla temperatura della batteria.
Punti chiave
- Crea un modulo batteria con scambio termico tra le celle.
- Utilizza blocchi di piastre di raffreddamento predefiniti.
- Modella una cella discretizzata termicamente con raffreddamento a immersione.
- Modella la temperature della batteria mediante modelli termici di ordine ridotto.
“Mahinda Electric ha utilizzato la simulazione 1D per ottimizzare il sistema di gestione termica delle batterie (BTMS). In questo modello di sistema, la batteria, il circuito di raffreddamento e il circuito di refrigerazione sono stati implementati in maniera efficace con Simscape. Il modello del veicolo, del conducente e del circuito equivalente sono stati implementati sulla piattaforma Simulink.”
Un sistema di gestione di batterie influisce direttamente sulla sicurezza, l’efficienza e la longevità della batteria e, di conseguenza, sulle prestazioni e l’affidabilità del sistema nel suo complesso. Le funzioni principali di un sistema di gestione di batterie sono il monitoraggio, la stima dello stato, il bilanciamento delle celle, la gestione dell’energia, la gestione termica, la protezione e le comunicazioni.
Simulink e Simscape consentono di comprendere il comportamento dinamico del pacco batteria, esplorare le architetture software, testare vari casi operativi e avviare tempestivamente il test dell’hardware, riducendo così gli errori di progettazione. Gli ingegneri possono utilizzare i blocchi di controllo BMS integrati in Simscape Battery per valutare le prestazioni del pacco batteria progettato, sviluppare gli algoritmi BMS ed eseguire simulazioni a livello di sistema.
Stima dello stato di carica
I metodi per la stima dello stato di carica (SOC) vanno dalla semplice integrazione delle correnti (Coulomb Counting) e dal monitoraggio della tensione a metodi sofisticati basati su modelli e dati, come i filtri di Kalman e le reti neurali.
Lo sviluppo di algoritmi per la stima del SoC basata su modelli in un sistema di gestione di batterie richiede modelli di batterie accurati. Gli approcci tradizionali alla stima del SoC in un sistema di gestione delle batterie, come la ricerca della tensione ad anello aperto (OCV) e l’integrazione delle correnti (Coulomb Counting), sono facili da implementare e in alcuni casi relativamente accurati. Tuttavia, l’approccio basato su OCV richiede la misurazione dell’OCV, che deve essere preceduta da un lungo periodo di inattività. L’approccio del Coulomb Counting presenta problemi di scarsa inizializzazione e di accumulo di rumore di misurazione della corrente. Il filtro di Kalman esteso (EKF) e il filtro di Kalman unscented (UKF) sono approcci che hanno dimostrato di fornire risultati accurati con un relativo sforzo computazionale in implementazioni di BMS reali.
Simscape Battery offre diversi blocchi SOC Estimator predefiniti (con un’opzione per la capacità variabile) e supporta la generazione di codice: Coulomb Counting, filtro di Kalman adattivo e filtro di Kalman.
Rispetto all’uso di un filtro di Kalman, il ricorso a una rete neurale per sviluppare uno stimatore del SOC non richiede informazioni dettagliate sulla batteria o sul suo comportamento non lineare. Al contrario, la rete viene addestrata con dati sulla corrente, la tensione e la temperatura e il SoC come risposta. È possibile comprimere una rete neurale mediante la proiezione, che presenta passaggi in avanti più rapidi quando eseguita sulla CPU o implementata sull’hardware embedded del BMS utilizzando la generazione di codice C o C++ senza librerie.
Punti chiave
- Simscape Battery contiene tre stimatori del SOC: Coulomb Counting, un filtro di Kalman adattivo e un filtro di Kalman.
- È possibile sviluppare uno stimatore del SOC mediante una rete neurale senza disporre di informazioni dettagliate sulla batteria.
Stima dello stato di salute
Tutte le batterie, anche quelle che soddisfano le specifiche di prestazione al momento della produzione, si deteriorano nel tempo per ragioni di durata e a causa dei cicli ripetuti, subendo una graduale perdita di capacità di riserva e un aumento della resistenza interna. Mentre l’aumento della resistenza interna è relativamente semplice da stimare utilizzando misurazioni di breve durata, la stima del deterioramento richiede un’escursione di carica o scarica completa per un calcolo accurato, il che non è sempre realizzabile.
Questa sfida ha determinato un crescente interesse per la stima dello stato di salute (SOH) e lo sviluppo di formulazioni del filtro di Kalman adattivo ampliate per includere i parametri delle batterie oltre agli stati. Una stima accurata della resistenza interna istantanea è molto utile al BMS per stabilire i limiti di potenza.
Simscape Battery offre stimatori del SOH integrati per stimare la capacità della batteria, tra cui il filtro di Kalman, il metodo dei minimi quadrati con e senza pesi variabili e stimatori del SOH basati sulla resistenza e basati sulla capacità.
La stima del SOH è più soggettiva rispetto alla stima del SOC e non esiste un accordo universale sulla definizione di SOH. Di conseguenza, ciascuna organizzazione potrebbe utilizzare un proprio metodo specifico per quantificare una stima del SOH, rendendo impossibile l’impiego di soluzioni generiche e standard. Utilizzando Simulink e Simscape, è possibile sviluppare e simulare algoritmi di stima del SOH personalizzati, in linea con l’interpretazione specifica di salute della batteria da parte della propria organizzazione.
Punti chiave
- Simscape Battery offre blocchi predefiniti per stimare la capacità utilizzando il filtro di Kalman o algoritmi dei minimi quadrati.
Bilanciamento delle celle, carica delle batterie e monitoraggio delle batterie
Simscape Battery fornisce blocchi di libreria predefiniti per il bilanciamento delle celle, la carica delle batterie e la protezione delle batterie.
Le funzionalità di bilanciamento delle celle mantengono un SOC simile in tutte le celle dissipando la carica in eccesso attraverso un resistore di dispersione. Il bilanciamento è necessario per prolungare la vita utile delle celle, che possono essere danneggiate da sovraccarichi o scariche. Il bilanciamento delle celle migliora la capacità di diverse celle.
Bilanciamento delle celle in Simscape Battery in funzione del SOC e del tempo.
La carica della batteria è controllata con un algoritmo a corrente costante/tensione costante (CC-CV). Si tratta di un approccio comune che mantiene la durata della batteria evitando sovracorrenti e sovratensioni durante la carica. La corrente è limitata durante la carica fino al raggiungimento di una tensione preimpostata.
Per proteggere la batteria è necessario monitorare la corrente, la tensione e la temperatura. Simscape Battery fornisce blocchi che possono essere incorporati negli algoritmi BMS.
Blocchi di monitoraggio delle batterie implementati in un modello di BMS.
Punti chiave
- Simscape Battery fornisce blocchi per il bilanciamento delle celle, il controllo della corrente e della tensione e il monitoraggio di tensione, corrente e temperatura.
La simulazione desktop in Simulink consente di verificare gli aspetti funzionali della progettazione del sistema di batterie. Sul desktop, il sistema di batterie, l’ambiente e gli algoritmi vengono simulati utilizzando modelli comportamentali. Ad esempio, è possibile esplorare le configurazioni e gli algoritmi di bilanciamento attivo e passivo delle celle per valutare l’idoneità di ciascun approccio di bilanciamento per una determinata applicazione. È possibile utilizzare la simulazione desktop per esplorare nuove idee di progettazione e testare diverse architetture di sistema prima di procedere con un prototipo hardware. È inoltre possibile eseguire il test dei requisiti nelle simulazioni desktop: ad esempio, è possibile verificare che i contattori non si aprano o si chiudano quando viene rilevato un guasto di isolamento.
Quando il sistema di batterie in fase di sviluppo deve soddisfare requisiti di sicurezza, è possibile integrare nel processo di sviluppo software test basati su metodi formali, in conformità a standard quali IEC 61508, IEC 61851 e ISO® 26262.
"Durante lo sviluppo del modello di controller in Simulink, abbiamo verificato spesso la conformità alle linee guida di stile e agli standard di modellazione utilizzando Model Advisor. Abbiamo inoltre verificato la presenza di logica morta, errori di divisione per zero e altri errori di progettazione nei nostri modelli utilizzando Simulink Design Verifier™.”
In seguito alla validazione tramite simulazione desktop, è possibile utilizzare i modelli Simulink per generare codice C e HDL per la prototipazione rapida (RP) o i test Hardware-In-the-Loop (HIL) al fine di validare ulteriormente gli algoritmi BMS in tempo reale. Con l’RP, invece di scrivere il codice del software di controllo manualmente per i test in tempo reale, il codice viene generato dal modello di controller e viene distribuito su un computer in tempo reale che svolge le funzioni del microcontroller di produzione. Grazie alla generazione automatica del codice, le modifiche apportate agli algoritmi nel modello possono essere testate su hardware in tempo reale in poche ore, anziché in giorni. Inoltre, è possibile interagire con l’hardware di controllo in tempo reale direttamente da Simulink per modificare i parametri dell’algoritmo e registrare i dati di test.
Come nel caso della prototipazione rapida, i test HIL prevedono la generazione di codice da un modello Simulink e la relativa distribuzione su un computer in tempo reale. Nel caso dei test HIL, il codice viene generato dai modelli di sistema di batterie piuttosto che dai modelli di algoritmi di controllo, fornendo un ambiente virtuale in tempo reale che rappresenta il pacco batteria, gli elementi attivi e passivi del circuito, i carichi, il caricabatterie e altri componenti del sistema. Tale ambiente virtuale consente di validare la funzionalità del controller BMS in tempo reale prima dello sviluppo di un prototipo hardware e in un ambiente in cui l’hardware non viene danneggiato.
I test sviluppati durante la simulazione desktop possono essere trasferiti ai test HIL per garantire che i requisiti vengano soddisfatti durante l’intera progettazione del BMS. Sebbene i test HIL siano impiegati principalmente per testare il codice in esecuzione su un microcontroller o un FPGA, è possibile utilizzare un sistema di prototipazione rapida, come Simulink Real-Time™ e l’hardware target di Speedgoat®, e collegarlo alla configurazione HIL prima di selezionare l’hardware del controller di produzione.
“La progettazione Model-Based ci fornisce un processo di sviluppo integrato che parte dall’idea fino ad arrivare alla generazione del codice di produzione. Gli strumenti MathWorks ci hanno consentito di sviluppare una tecnologia chiave per la gestione delle batterie utilizzando le nostre competenze, in un ambiente che ha facilitato la verifica anticipata e continua del nostro progetto.”
Validazione di software BMS
La simulazione in tempo reale, che comprende sia la prototipazione rapida che i test HIL, fornisce agli ingegneri di sistemi di controllo dell’elettronica di potenza ulteriori informazioni sulle prestazioni della progettazione di un BMS sull’hardware. Sia nella prototipazione rapida che nei test HIL, l’obiettivo è emulare in hardware un aspetto della progettazione complessiva: il controller BMS nella prototipazione rapida e il bilanciamento del sistema di batterie nei test HIL. La simulazione in tempo reale offre diversi notevoli vantaggi nella progettazione di BMS poiché consente di:
- Eseguire la prototipazione rapida per iniziare a validare gli algoritmi prima di scegliere l’hardware definitivo del controller.
- Sfruttare la flessibilità di un sistema di test in tempo reale per una rapida iterazione di progettazioni e test.
- Eseguire test HIL prima che l’hardware del prototipo del sistema di batterie sia disponibile.
- Utilizzare una combinazione di test RP e HIL per addestrare gli algoritmi BMS per i casi di test che potrebbero essere difficili, costosi o distruttivi per l’hardware reale.
Test Hardware-In-the-Loop (HIL) del software di un sistema di gestione delle batterie. Il codice BMS è generato da algoritmi BMS modellati in Simulink e distribuiti su un microcontroller Texas Instruments® C2000. Il modello di impianto (pacco batteria, contattore, inverter, caricabatterie) è modellato in Simulink. Il codice viene generato e distribuito per essere eseguito sulla macchina Speedgoat in tempo reale con emulatore di batteria.
Test Hardware-In-the-Loop (HIL) del software di un sistema di gestione delle batterie. Il codice BMS è generato da algoritmi BMS modellati in Simulink e distribuiti su un microcontroller Texas Instruments® C2000. Il modello di impianto (pacco batteria, contattore, inverter, caricabatterie) è modellato in Simulink. Il codice viene generato e distribuito per essere eseguito sulla macchina Speedgoat in tempo reale con emulatore di batteria.
Riutilizzando i modelli di simulazione desktop in Simulink per generare codice per la simulazione in tempo reale, è possibile ridurre i tempi di sviluppo complessivi. È possibile generare codice C/C++ e HDL da eseguire su computer ottimizzati per le prestazioni in tempo reale. Il codice generato dai modelli Simulink per le simulazioni in tempo reale include interfacce che consentono di regolare i parametri di controllo durante la simulazione in tempo reale.
Esecuzione della prototipazione rapida
Durante il test dell’hardware, le modifiche al codice del controller possono causare ritardi e rischi aggiuntivi. Modificare il codice a mano, ricompilarlo e distribuirlo sul microcontroller o sull’FPGA richiede tempo, anche molto tempo se si tratta di fasi separate di sviluppo e modifica di algoritmi di controllo. A seconda dell’entità delle modifiche richieste, vi è anche il rischio di introdurre nuovi problemi nel codice implementato.
Invece di scrivere manualmente gli aggiornamenti al codice del software del controller, è possibile impiegare Simulink per generare codice che viene eseguito in tempo reale su un computer dedicato e utilizza I/O ad alta velocità per comunicare con l’hardware di test. Oltre a eliminare la codifica manuale e i relativi ritardi, un altro vantaggio di questo approccio RP consiste nella possibilità di validare le modifiche al software BMS eseguendo il modello di simulazione prima sul desktop per verificare che non siano stati aggiunti altri problemi.
Test Hardware-In-the-Loop
Poiché lo sviluppo e la modifica di prototipi hardware di un sistema di batterie possono richiedere un notevole sforzo e poiché tali prototipi sono spesso costosi da riparare, non possono essere sempre testati con il sistema elettrico in cui funzionerà il pacco batteria. Date queste restrizioni, anche piccole modifiche alla progettazione possono mettere a rischio i tempi di sviluppo e le progettazioni di BMS tendono a progredire lentamente poiché i team considerano troppo rischiosi gli scostamenti radicali dalla progettazione precedente.
Con Simulink, è possibile generare codice C/C++ e HDL dal modello dell’hardware del sistema di batterie e del sistema più ampio di cui fa parte, compresi l’alimentazione e il carico. Una volta distribuito il codice su un computer in tempo reale, è possibile eseguire simulazioni in tempo reale dell’hardware con il codice del controller prima di testare il controller in un prototipo di sistema di batterie. Di conseguenza, è possibile individuare e correggere eventuali errori di progettazione di controlli prima che danneggino l’hardware del prototipo, costoso e difficile da sostituire. È inoltre possibile individuare errori di progettazione dell’hardware, tra cui il dimensionamento errato dei componenti.
Molti sistemi HIL in tempo reale, compreso l’hardware target Speedgoat, incorporano emulatori di batterie, che consentono di emulare alimentatori portatili, pile di batterie per veicoli elettrici o di assorbire corrente per simulare batterie sotto carica.
“Credo che Speedgoat abbia sviluppato una vera e propria piattaforma plug-and-play in tempo reale per Simulink. Per noi, ciò si traduce in più tempo per testare i nostri sistemi di controllo e meno per sviluppare uno standard HIL di riferimento.”
Nella fase di implementazione dell’hardware, i modelli di controllo Simulink verificati tramite simulazione desktop, prototipazione rapida e test HIL vengono utilizzati per generare un codice efficiente e pronto per la produzione del BMS. Se necessario, la generazione del codice di produzione può essere integrata in workflow conformi agli standard di certificazione formale utilizzati nel settore automobilistico, aerospaziale e in altri settori regolamentati.
Generazione di codice pronto per la produzione
Simulink genera codice C/C++ e HDL leggibile, compatto ed efficiente da modelli di controller, pronto per essere implementato su microcontroller, FPGA e ASIC di produzione. A differenza del codice generato per la prototipazione rapida, quello generato per la produzione non include le ulteriori interfacce necessarie per supportare il monitoraggio in tempo reale, la regolazione dei parametri e la registrazione dei dati. Le impostazioni di ottimizzazione consentono di controllare con precisione le funzioni, i file e i dati generati per migliorare l’efficienza del codice e facilitare l’integrazione con codice, tipi di dati e parametri di calibrazione legacy.
Esecuzione di simulazioni Processor-In-the-Loop
Nella simulazione Processor-In-the-Loop (PIL), il codice C/C++ o HDL viene eseguito sul microcontroller o sull’FPGA mentre il dispositivo è in esecuzione con un modello Simulink dell’hardware BMS, limitando il rischio di danneggiare un prototipo hardware durante le valutazioni iniziali del codice BMS. Sebbene le simulazioni PIL non vengano eseguite in tempo reale, sono bit-true e consentono di verificare il codice in una serie di condizioni e di garantire che verrà eseguito correttamente una volta distribuito sul sistema reale.
Generazione di codice di produzione
Le simulazioni desktop, la prototipazione rapida, i test HIL e i test PIL consentono di verificare e validare gli algoritmi di controllo del BMS. Con Simulink, è possibile utilizzare questi stessi algoritmi come base per generare codice pronto per la produzione: codice C/C++ ottimizzato e stabile per l’implementazione su microcontroller o codice HDL sintetizzabile per la programmazione FPGA o l’implementazione ASIC. La generazione automatica di codice elimina gli errori di traduzione manuale degli algoritmi e produce codice C/C++ e HDL con equivalenza numerica agli algoritmi validati in Simulink. Simulando gli algoritmi di controllo in tutte le possibili condizioni di funzionamento e di guasto, è possibile garantire ulteriormente che il codice generato sia in grado di gestire le stesse condizioni nel sistema reale, anche senza testarle tutte. Se in seguito i test hardware rivelano la necessità modificare gli algoritmi, è sufficiente modificare gli algoritmi nel modello, eseguire nuovamente i casi di test di simulazione per verificare la correttezza delle modifiche e generare un nuovo codice aggiornato. Tutto il codice C/C++ e HDL generato è completamente portabile, ottimizzabile con una serie di opzioni e tracciabile bidirezionalmente al modello Simulink.
Codice di produzione BMS generato automaticamente da algoritmi BMS modellati in Simulink. Il codice è distribuito su un microcontroller Texas Instruments C2000.
Codice di produzione BMS generato automaticamente da algoritmi BMS modellati in Simulink. Il codice è distribuito su un microcontroller Texas Instruments C2000.
“Verifichiamo ogni requisito necessario per la certificazione tramite la simulazione in Simulink prima della verifica sul circuito reale e, avendo utilizzato Embedded Coder® per generare il codice direttamente dal nostro modello, non vi è alcun divario tra le nostre simulazioni e il software embedded reale.”
Risorse
- Generazione di codice di produzione - Casi dei clienti
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)