Introduzione alle simulazioni elettriche rapide
Quando si lavora con un modello Simscape Electrical™, è importante valutare se la simulazione viene eseguita alle prestazioni ottimali. A seconda dello scopo della tua simulazione, possono essere utilizzate diverse tecniche e best practice per diagnosticare il modello, individuare eventuali colli di bottiglia e migliorare le prestazioni di simulazione.
Questa guida fornisce alcuni passaggi da seguire per l’applicazione delle best practice di ottimizzazione e per aiutarti a ottenere prestazioni di simulazione ottimali, mantenendo al contempo l’accuratezza e soddisfando i tuoi requisiti specifici di simulazione.
Per saperne di più
Preparazione: Diagnostica del tempo di simulazione e dei tempi di campionamento del segnale
I metadati di simulazione registrati possono essere utilizzati per analizzare e confrontare i tempi di simulazione nei passaggi successivi. Per visualizzare queste informazioni, è possibile usare l’oggetto SimulationMetaData all’interno dell’oggetto Simulink.SimulationOutput.
Un’altra informazione rilevante per l’analisi delle prestazioni del risolutore è il tempo di campionamento dei blocchi. A seconda delle impostazioni del risolutore e dei blocchi, è possibile avere nel proprio modello tempi di campionamento variabili, sia discreti che continui. Questo può portare a comportamenti inaspettati. È possibile attivare la visualizzazione del tempo di campionamento dalla scheda Debug nella barra degli strumenti di Simulink®, e poi da Information Overlays > Sample Time > Colors. In questo modo si attiverà un aggiornamento del modello e verranno successivamente visualizzati i tempi di campionamento di tutti i segnali codificati per colore.
Simulink Profiler fornisce informazioni dettagliate sul tempo di esecuzione di un modello. Acquisisce il tempo complessivo delle simulazioni e identifica tempistiche di esecuzione dei blocchi che aiutano a individuare quali parti del modello richiedono più tempo per essere eseguite.
Utilizzo di Simulink Profiler per analisi runtime per blocco o sottosistema
Questo video mostra come utilizzare il Simulink Profiler per determinare quanto tempo di simulazione è necessario per ciascun blocco.
Il report di Solver Profiler visualizza la frequenza con cui i diversi blocchi nel modello vengono eseguiti e il tempo necessario per l’esecuzione. Ciò aiuta a individuare parti del modello più impegnative dal punto di vista computazionale. Il tempo di esecuzione della rete Simscape™ verrà riassunto nel blocco Solver Configuration. Se il tuo modello contiene molti scope, valuta se utilizzare invece Simulation Data Inspector.
Di seguito verranno trattati lo scopo della simulazione e il suo impatto sulle prestazioni e sulle impostazioni.
Scelta del giusto approccio per la simulazione
Le prestazioni del tuo modello dipendono dall’uso che ne vuoi fare. Scopi diversi richiedono tecniche e impostazioni specifiche. Questa sezione esamina due tipi di simulazione: la simulazione desktop e la simulazione Hardware-In-the-Loop.
Simulazione desktop
Nelle simulazioni desktop, l’intenzione principale è spesso quella di sviluppare un algoritmo di controllo e testarlo in una simulazione a loop chiuso sul modello dell’impianto fisico. Il modello dell’impianto potrebbe essere una rete Simscape e l’algoritmo potrebbe essere modellato in Simulink. In questo caso, è consigliabile che il modello dell’impianto utilizzi un risolutore variabile, ovvero un risolutore che possa utilizzare un’ampia fase temporale di simulazione ove consentito dalle dinamiche del modello. L’algoritmo può essere eseguito insieme a questo, in una fase temporale variabile o, se necessario, fissa.
Se questo corrisponde al tuo caso d’uso, vai alla sezione Considerazioni per la simulazione desktop riportata di seguito.
Simulazione Hardware-In-the-Loop
La simulazione Hardware-In-the-Loop (HIL) è una simulazione in tempo reale utilizzata per testare un algoritmo per controller eseguito in tempo reale sull’hardware del controller. Per la simulazione HIL viene utilizzato un computer in tempo reale per rappresentare il modello dell’impianto. A tal fine, è necessario configurare la rete Simscape affinché utilizzi un risolutore fisso prima della distribuzione sull’hardware in tempo reale.
Se questo corrisponde al tuo caso d’uso, vai alla sezione Considerazioni per la simulazione Hardware-In-the-Loop riportata di seguito.
Considerazioni per la simulazione desktop
Considerazioni sul risolutore per la rete fisica Simscape (impianto con risolutore variabile)
Per progettare l’algoritmo di controllo e testarlo sulla rete elettrica Simscape, è consigliabile iniziare con il modello fisico eseguito con un risolutore variabile. Ciò consente al risolutore di impiegare una fase temporale più piccola quando richiesto dalle dinamiche del modello e di scegliere una fase temporale più grande quando possibile. Ciò consente potenzialmente un miglioramento delle prestazioni complessive in assenza di un’esecuzione predeterminata con fase temporale fissa.
Per utilizzare un risolutore variabile per una rete Simscape, disabilita l’opzione utilizza risolutori locali nel blocco Solver Configuration. Ciò consente di accedere al risolutore globale, scelto in Model Settings. In genere per le reti Simscape sono consigliati risolutori impliciti come daessc, odes23t o ode15s.
Per saperne di più
- Scelta di un risolutore per la simulazione performante (10:55) - Video
- Simulazione con fase temporale variabile - Documentazione
Configurazione di algoritmi con tempo di campionamento fisso
La colorazione del tempo di campionamento indica in quale fase temporale del risolutore vengono eseguiti i blocchi specifici. Quando progetti l’algoritmo, in genere hai un determinato requisito sui tempi di campionamento per il/i loop di controllo. Per sfruttare i vantaggi di un risolutore variabile, puoi eseguire il modello dell’impianto con fase temporale variabile e l’algoritmo con fase temporale fissa. A questo scopo, il risolutore globale (impostato in Model Settings) dovrebbe essere di tipo variabile ed è possibile configurare i blocchi nel tuo modello in modo che siano eseguiti solo a determinate frequenze di campionamento (fisse).
Quando nei blocchi non vengono definiti esplicitamente i tempi di campionamento, spesso questi tempi vengono ereditati, il che può portare a un comportamento indesiderato. Per evitarlo, specifica frequenze di campionamento fisse nei blocchi rilevanti. Usa l’impostazione del tempo di campionamento ove applicabile per garantire tempistiche di esecuzione corrette. Consulta Specifica del tempo di campionamento.
Scelta della fedeltà del modello appropriata
La scelta della fedeltà del modello corretta è un passaggio fondamentale per ottenere prestazioni di simulazione ottimali. La tecnologia di Simscape Electrical e i suoi componenti ti consentono di scegliere tra diverse opzioni di modellazione e parametrizzazione a seconda della tua specifica attività.
Ad esempio, per l’analisi delle perdite di potenza potrebbero essere necessari modelli di commutazione dettagliati, mentre per l’analisi armonica può essere utilizzata la commutazione ideale. Per la progettazione di controlli, spesso è sufficiente un modello medio.
Per saperne di più
Consulta esempi di componenti di modellazione a fedeltà variabile:
Tecniche di modellazione per PWM
Un modello di elettronica di potenza in genere contiene un segnale PWM. Questo può essere ottimizzato, anche in combinazione con la fedeltà del modello dell’inverter.
Se il tuo modello contiene un segnale PWM, può essere un’altra fonte di miglioramento delle prestazioni.
Scopri quali aspetti devi considerare quando sviluppi un modello per la commutazione PWM ad alta velocità.
Utilizzo di Solver Profiler per la diagnostica
Quando si simula un modello con un risolutore variabile, Solver Profiler aiuta a individuare quando le prestazioni di simulazione peggiorano a causa di fasi temporali piccole o eventi di simulazione quali eccezioni dei risolutori e zero crossing. Per la rete Simscape del tuo modello, Solver Profiler ti consente di analizzare come diverse quantità fisiche possono contribuire a prestazioni di simulazione scarse.
Analisi delle prestazioni del risolutore variabile
Questo video mostra come il Solver Profiler possa aiutare a individuare i colli di bottiglia delle prestazioni nei modelli che utilizzano un solver a passo variabile.
Strumenti di diagnostica aggiuntivi
Validazione dell’inizializzazione del modello con Variable Viewer
Quando si esegue la simulazione per una rete fisica Simscape, il risolutore calcola le condizioni iniziali all’inizio della simulazione a \(t=0\). Le condizioni iniziali per la rete Simscape sono in genere configurate a livello dei blocchi, ma possono anche essere ricavate da dati precedentemente registrati. Consulta Inizializzazione delle variabili per saperne di più.
Il risolutore utilizza queste impostazioni per determinare una condizione iniziale adatta; questo processo può richiedere molto tempo e dare origine ad avvisi o errori. Variable Viewer può essere usato per verificare e validare i risultati del calcolo della condizione iniziale per la tua rete Simscape. Questo fornisce informazioni utili a determinare le potenziali cause principali di un’inizializzazione lenta o non convergente.
Analisi dell’inizializzazione dei modelli con Variable Viewer
Questo video mostra come Variable Viewer possa essere utilizzato per verificare i risultati dell’inizializzazione di un modello che utilizza Simscape.
Analisi dell’ampiezza delle variabili Simscape per la definizione di buoni valori di scalabilità
La definizione di valori nominali per le variabili Simscape fornisce l’opzione di specificare l’ampiezza prevista di una variabile. Consulta Scalabilità del sistema per valori nominali per saperne di più. Durante la simulazione, il risolutore opera su questi valori scalati e senza unità. Dei valori di scalabilità adatti per tutte le variabili ottimizzano sia la robustezza che le prestazioni della simulazione. Per prestazioni migliori, assicurati che le ampiezze delle variabili siano mantenute entro una scala simile.
Questo video mostra come Variable Scaling Analyzer possa essere utilizzato per scalare le variabili di Simscape e migliorare la robustezza e le prestazioni della simulazione.
Utilizzo di controlli automatizzati per impostazioni del modello ottimali
I seguenti strumenti sono progettati per modelli che contengono prevalentemente blocchi Simulink e forniranno solo alcuni elementi di diagnostica specifici per modelli che contengono reti Simscape.
Model Advisor può verificare il tuo modello e sottosistema per garantire che le configurazioni o funzionalità di modellazione soddisfino determinati standard di modellazione o per evitare simulazioni imprecise o inefficienti. Model Advisor dispone di controlli integrati che possono essere specifici per l’attività che si vuole realizzare (ad esempio, prestazioni o accuratezza).
Model Advisor esegue i controlli e fornisce report dettagliati con suggerimenti utili e può anche implementare automaticamente tali correzioni.
Performance Advisor è integrato nel framework di Model Advisor e contiene una serie predefinita di controlli per ricercare configurazioni che potrebbero causare il rallentamento delle simulazioni.
Controlli delle prestazioni per impostazioni del modello ottimali
Questo video mostra come Model Advisor venga utilizzato per eseguire diversi controlli delle prestazioni sul tuo modello specifico, individuando impostazioni o blocchi del modello non ottimali.
Esplorazione della complessità del modello con Variable Statistics Viewer
Statistics Viewer aggrega le statistiche del modello Simscape per un determinato modello con le relative configurazioni del risolutore. Lo studio delle statistiche è un modo per valutare la complessità di un modello che contiene blocchi Simscape, ancora prima della simulazione.
Esplorazione delle statistiche del modello
Questo video mostra come Statistics Viewer aggrega le statistiche di un modello Simscape per un determinato modello in base alle configurazioni del risolutore.
Ulteriori suggerimenti dopo l’ottimizzazione dei modelli
Modalità di simulazione e avvio rapido
Le modalità di simulazione possono avere un impatto sulla velocità di simulazione, soprattutto quando abbinate all’avvio rapido. Per impostazione predefinita, i modelli operano in modalità normale. Tuttavia, gli utenti possono sfruttare la modalità acceleratore e acceleratore rapido.
Sebbene queste modalità offrano miglioramenti delle prestazioni, implicano compromessi a livello della flessibilità dei modelli, dell’interattività e della granularità della diagnostica. Consulta Scelta di una modalità di simulazione. Quando si utilizzano modelli Simscape, gli aumenti delle prestazioni ottenuti tramite le modalità acceleratore e acceleratore rapido potrebbero essere meno consistenti rispetto ai modelli puramente Simulink.
Se eseguite ripetutamente un modello senza eseguire modifiche strutturali tra le esecuzioni (ad esempio, durante uno sweep dei parametri), potete ottenere risparmi di tempo saltando la fase di compilazione tramite la funzionalità di avvio rapido. Per ulteriori informazioni, consulta Come Iniziare con avvio rapido nel MATLAB Help Center. Per assicurarti che i parametri Simscape possano essere cambiati tra più esecuzioni della simulazione, configurali come parametri di runtime di Simscape.
Uso dei modelli di simulazione e avvio rapido
Utilizzo delle modalità Accelerator e Fast Restart per un’esecuzione più rapida dei modelli | Best practice di modellazione Simscape Electrical per simulazioni veloci
Calcolo parallelo
Per risparmiare tempo quando esegui più simulazioni indipendenti, puoi prendere in considerazione l’idea di distribuire queste simulazioni su più core o su un cluster. I casi d’uso includono gli sweep dei parametri, l’analisi Monte Carlo, i calcoli paralleli per un problema di ottimizzazione o i test sui modelli con Simulink Test™.
Esecuzione di modelli su più core o su un cluster
Scopri come puoi accelerare le simulazioni elettriche con il calcolo parallelo in modalità Normal o Accelerator.
Considerazioni per la simulazione Hardware-In-the-Loop
Anche se il tuo obiettivo è eseguire la rete Simscape in fase temporale fissa per una simulazione Hardware-In-the-Loop, è buona norma eseguire il debug, validare e migliorare il tuo modello utilizzando un risolutore variabile. A questo scopo, puoi seguire i passaggi a partire da “Considerazioni per le simulazioni desktop.” Una simulazione con risolutore fisso può anche nascondere problemi sottostanti che possono essere scoperti solo nelle simulazioni variabili.
Scelta di un risolutore per la simulazione performante
Scopri di più sui risolutori e sulle considerazioni relative ai modelli durante la simulazione di sistemi fisici.
Quando esegui la conversione a risolutore fisso, puoi usare il risolutore locale di Simscape o il risolutore globale fisso Simulink. Per prestazioni migliori, è generalmente consigliabile scegliere il risolutore locale Simscape. È possibile trovare ulteriori dettagli sul risolutore locale e le relative impostazioni nella documentazione di seguito Simulazioni con fase temporale fissa - Risolutori locali e globali fissi.
Un passaggio importante nella configurazione di un modello Simscape con un risolutore fisso per la distribuzione hardware è determinare in modo iterativo il risolutore corretto nell’impostazione della fase temporale, al fine di ottenere la fattibilità in tempo reale con risultati di simulazione accettabili. Simulazione in tempo reale illustra e spiega questo workflow.
Da Simscape a HDL
Per la simulazione in tempo reale, il modello Simscape è convertito in codice C. Per ottenere frequenze di campionamento più veloci, puoi lavorare con la tecnologia FPGA e codice HDL. Per trarre vantaggio da questo workflow per i modelli di rete elettrica in Simscape, il modello fisico deve essere convertito in una rappresentazione nello spazio degli stati in Simulink. Questo è l’obiettivo principale di Simscape HDL Workflow Advisor.
Conversione di modelli d’impianto elettrici in codice HDL
In questo esempio, impari come utilizzare il metodo di approssimazione a switch linearizzato per convertire un modello di motore Simscape in un modello pronto per l’implementazione HDL, utile per la generazione e la sintesi del codice HDL.
Conclusione
Questa guida ha presentato una metodologia per ottimizzare le prestazioni di simulazione di Simscape Electrical su una vasta gamma di applicazioni, dallo sviluppo di algoritmi desktop al test Hardware-In-the-Loop e l’implementazione FPGA. Seguendo il workflow descritto, iniziando dall’analisi della diagnostica, proseguendo con strategie di ottimizzazione specifiche per lo scopo e terminando con un miglioramento avanzato delle prestazioni, gli ingegneri possono ottenere notevoli miglioramenti della velocità di simulazione, mantenendo al contempo l’accuratezza e l’affidabilità.
Seguendo questa guida e sfruttando gli strumenti di diagnostica disponibili in MATLAB e Simulink, puoi trasformare simulazioni elettriche ad alta intensità computazionale in workflow di modellazione efficienti, accurati e affidabili.
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)