Simulazioni Monte Carlo vs. Analisi della sensibilità: qual è la differenza?

Zachariah Peterson
|  Creato: May 12, 2022  |  Aggiornato: November 9, 2023
Simulazione Monte Carlo vs. Analisi della sensibilità

In un articolo precedente sulla simulazione e l'affidabilità dei circuiti, ho esaminato il modo in cui l'analisi Monte Carlo (Monte Carlo simulation) viene comunemente utilizzata per valutare i circuiti soggetti a variazioni casuali nei valori dei componenti. Se consideriamo nello specifico i componenti, ci saranno sempre delle tolleranze che creeranno variazioni nei punti operativi elettrici di un circuito. Queste si traducono in alcune variazioni nello stato di output del circuito e nella gamma probabile di caratteristiche operative del circuito.

L'analisi di sensibilità è un po' diversa e indica come cambiano le caratteristiche operative del circuito in una direzione specifica. Rispetto a un'analisi Monte Carlo, l'analisi di sensibilità offre un modo conveniente per prevedere esattamente come cambieranno le caratteristiche operative se si dovesse aumentare o diminuire deliberatamente il valore di un componente. È una tecnica molto utile per giustificare determinate decisioni di progettazione al di là dell'analisi dell'affidabilità da un punto di vista statistico e fornisce indicazioni importanti su come il circuito risponde a variazioni specifiche nei valori dei componenti.

Simulazione Monte Carlo vs. Analisi di sensibilità

Nelle simulazioni Monte Carlo e nell'analisi di sensibilità, si fa essenzialmente la stessa cosa: si variano uno o più componenti di un circuito e si misura la risposta dell'uscita. La differenza sta nella modalità di esecuzione: una simulazione Montecarlo applica variazioni casuali, mentre l'analisi di sensibilità applica una variazione in un intervallo specifico scelto dall'ingegnere.

Prendi come esempio i valori dei componenti; in Monte Carlo, so che le tolleranze dei componenti significano che il valore di un componente varierebbe in qualsiasi punto dell'intervallo di +/- (%tolerance), ma non posso prevedere quali saranno tali valori specifici. Nell'analisi di sensibilità, voglio prevedere come cambia l'output se modifico deliberatamente il valore di un componente di una determinata quantità, cosa che posso scegliere come ingegnere. Il motore di simulazione SPICE nei tuoi strumenti di progettazione esegue semplicemente i calcoli del circuito standard utilizzando i valori di componenti casuali o selezionati.

La tabella seguente confronta la natura delle variazioni del valore dei componenti nelle Monte Carlo simulations rispetto all'analisi di sensibilità, nonché il modo in cui il motore SPICE viene utilizzato per generare risultati.

 

 

Monte Carlo

Analisi della sensibilità

Come vengono generati gli output misurati

SPICE viene utilizzato per calcolare un output utilizzando valori di componenti generati in modo casuale

SPICE viene utilizzato per generare output utilizzando un intervallo specifico di valori dei componenti; gli output possono anche essere calcolati a mano

Significato dell'output misurato

Indica la probabile portata operativa di un circuito in base a fattori imprevedibili

Indica come cambia l'output del circuito in base a un cambiamento specifico (forse prevedibile) nel valore di un componente

Come vengono utilizzati i valori dei componenti

Valori dei componenti scelti in modo casuale in base a parametri statistici

Valori dei componenti scelti all'interno di un intervallo specifico selezionato dall'ingegnere

Cosa viene modellato con valori di componenti casuali

Tolleranze dei componenti, che sono totalmente casuali e possono essere controllate solo entro un certo intervallo

Modifiche intenzionali al valore di un componente

Nella tabella precedente, ho menzionato i valori dei componenti poiché è così che vengono utilizzati più spesso Monte Carlo e l'analisi di sensibilità. Tuttavia, altri fattori come le variazioni del livello di alimentazione o le variazioni di temperatura possono essere esaminati con entrambi i tipi di simulazione.

Se dovessi descrivere il funzionamento di un circuito basato sull'analisi Monte Carlo, la mia descrizione apparirebbe così:

  • "Il circuito ha il 95% di probabilità di produrre tra la tensione A e la tensione B; esiste un 5% di probabilità che sia al di fuori di questo intervallo. Il punto operativo più probabile, con una probabilità dell'X%, è la tensione Y".

Ora, se dovessi descrivere il funzionamento di quello stesso circuito in base ai risultati dell'analisi di sensibilità, la mia descrizione apparirebbe così:

  • "Se il valore del componente X aumenta di Y%, l'output del circuito passerà dalla tensione A alla tensione B"

Tenendo presente questo, vediamo un esempio di come utilizzare i risultati dell'analisi di sensibilità per comprendere meglio il comportamento del circuito.

Esempio con un regolatore di tensione

Per questo esempio, torneremo al nostro fidato circuito regolatore di tensione che ho presentato nell'articolo precedente sulle simulazioni Monte Carlo. Di seguito è riportato uno schematico per questo circuito.

Schematico esempio per l'analisi di sensibilità vs. Monte Carlo

In questo esempio, vogliamo estrarre un modello lineare specifico che definisce come varia la tensione di uscita rispetto alle modifiche in un componente specifico. Solo per questo esempio, esamineremo le variazioni in L1. Invece di variare L1 in modo casuale, come potremmo fare in una simulazione Montecarlo, lo faremo variare in un intervallo specifico in modo da vedere come cambia l'oscillazione dell'output per una determinata modifica dell'induttore L1. Ciò si applicherebbe sia in modalità di conduzione continua che in modalità di conduzione discontinua/critica.

Configurazione della simulazione

In questo esempio, supponiamo di voler vedere cosa accade all'ondulazione di tensione se modifichiamo il valore di L1 del +/-5% e +/-10%. Per impostare questi limiti, puoi aprire la finestra Impostazioni dalla dashboard di simulazione. Poi, apri la scheda Sensibilità per configurare la simulazione.

Simulazione Monte Carlo vs analisi della sensibilità convertitore
Impostazione dei limiti di valore dei componenti per l'analisi della sensibilità.

Nella finestra precedente è possibile impostare i limiti dei componenti personalizzati per parti specifiche in modo che varino di una frazione desiderata durante la simulazione. Ad esempio, nelle caselle di testo, digita semplicemente 0,05 per spostare il valore del componente verso l'alto del 5%. Puoi anche impostare le variazioni di tolleranza nella casella nella parte superiore della finestra. Una volta impostate, puoi eseguire una delle simulazioni standard e l'analisi della sensibilità verrà eseguita insieme al resto delle simulazioni.

Risultati analisi di sensibilità

Di seguito vengono mostrati i risultati dell'analisi transitoria fino a circa 0,3 ms. Questa finestra mostra come varia la tensione di uscita nel tempo e come varia l'ondulazione in base ai valori dei componenti.

Risultati dell'analisi transitoria convertitore buck
Risultati dell'analisi della sensibilità.

Da ciò possiamo vedere che aumentando l'induzione in L1 diminuisce l'ondulazione. Questo è ciò che ci aspetteremmo in base alla formula di ondulazione standard per un convertitore buck. Ma possiamo spingerci un po' più in là nella quantificazione? In effetti, possiamo selezionare i valori di ondulazione da picco a picco e poi tracciarli in funzione dell'induttanza. Di seguito viene mostrato un grafico per i miei dati.

Monte Carlo vs analisi di sensibilità grafico risultati
La linea di tendenza che mostra la sensibilità nell'ondulazione di uscita alle variazioni del valore del mio induttore.

Dalla pendenza della linea di tendenza, possiamo aspettarci una diminuzione di circa 2,9 mV dell'ondulazione da picco a picco per ogni uH di induttanza aggiunto a L1. Questa relazione vale fino a +/- 10 uH. C'è un piccolo errore di quantizzazione nella lettura dei dati dai grafici mostrati sopra, ma lo scopo di questa analisi è chiara: possiamo vedere esattamente come cambia la metrica delle prestazioni di nostro interesse con una semplice simulazione numerica.

Normalmente, potremmo calcolare tale cambiamento per questo particolare circuito se ci prendessimo il tempo per ricavare come il filtro LC di output (C2 e L2) trasforma l'output del regolatore. È un calcolo un po' complicato che coinvolge una derivata, ma si può fare a mano.

Circuiti più complessi

E se il circuito fosse molto più complesso? L'analisi di sensibilità si applica anche se si dispone di un circuito molto complesso con più componenti lineari o non lineari. Ad esempio, supponiamo che il circuito utilizzi più modelli di componenti a scatola nera (come il modello di transistor di cui sopra) e che abbia molti componenti non lineari in disposizioni complesse (circuiti con diodi, transistor saturi, ecc.). In tal caso, l'analisi della sensibilità in SPICE fornirà le stesse risposte in modo molto rapido, proprio perché si tratta di una simulazione numerica.

Riepilogo e confronto tra simulazione Monte Carlo ed Analisi di sensibilità 

Per riassumere, l'analisi di sensibilità adotta un approccio simile all'analisi dei circuiti Monte Carlo, ma l'interpretazione dei risultati è molto diversa. L'analisi Monte Carlo indica l'intervallo operativo statisticamente probabile del circuito, date le tolleranze note dei componenti. L'analisi di sensibilità indica esattamente come cambia un sistema con una modifica selezionata nel valore di un componente.

Se stai analizzando la stabilità e l'affidabilità del circuito, entrambe le analisi sono importanti. Se stai facendo l'analisi del caso peggiore (WCA), utilizzerai entrambi i metodi insieme per analizzare il comportamento del circuito. Esaminerò meglio la WCA in un prossimo articolo poiché è molto importante nell'elettronica ad alta affidabilità, così come nel settore: aerospaziale, automobilistico, medico, nelle misurazioni e nei controlli di precisione e in qualsiasi altra area in cui le tolleranze possono creare problemi di affidabilità.

Se sei interessato a eseguire simulazioni Monte Carlo e analisi di sensibilità per i tuoi circuiti all'interno di Altium Designer®, troverai questi strumenti di simulazione integrati nel motore SPICE nell'editor dello schematico. Una volta che hai completato il tuo PCB e sei pronto per condividere le tue progettazioni con collaboratori o produttori, puoi condividere le tue progettazioni completate tramite la piattaforma Altium 365™. Tutto ciò di cui hai bisogno per progettare e produrre elettronica avanzata è disponibile in un unico pacchetto software.

Questo è solo un assaggio di tutto ciò che è possibile fare con Altium Designer su Altium 365. Inizia oggi stesso la tua prova gratuita di Altium Designer + Altium 365.

Sull'Autore

Sull'Autore

Zachariah Peterson ha una vasta esperienza tecnica nel mondo accademico e industriale. Prima di lavorare nel settore dei PCB, ha insegnato alla Portland State University. Ha condotto la sua Fisica M.S. ricerche sui sensori di gas chemisorptivi e il suo dottorato di ricerca in fisica applicata, ricerca sulla teoria e stabilità del laser casuale. Il suo background nella ricerca scientifica abbraccia temi quali laser a nanoparticelle, dispositivi semiconduttori elettronici e optoelettronici, sistemi ambientali e analisi finanziaria. Il suo lavoro è stato pubblicato in diverse riviste specializzate e atti di conferenze e ha scritto centinaia di blog tecnici sulla progettazione di PCB per numerose aziende. Zachariah lavora con altre società del settore PCB fornendo servizi di progettazione e ricerca. È membro della IEEE Photonics Society e dell'American Physical Society.

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.