Simulación de Monte Carlo vs. análisis de sensibilidad: ¿cuál es la diferencia?

Zachariah Peterson
|  Creado: May 12, 2022  |  Actualizado: September 18, 2022
Simulación de Monte Carlo vs. análisis de sensibilidad

En un artículo anterior sobre simulación de circuitos y fiabilidad, observé cómo el análisis de Monte Carlo se utiliza comúnmente para evaluar circuitos sujetos a variaciones aleatorias en los valores de los componentes. Cuando observamos específicamente los componentes, siempre habrá algunas tolerancias que crearán variaciones en los puntos de operación eléctricos de un circuito. Esto se traduce en una cierta variación en el estado de salida del circuito y en el intervalo probable de características de funcionamiento del circuito.

El análisis de sensibilidad es un poco diferente y te indica cómo cambian las características operativas del circuito en una dirección específica. En comparación con una simulación de Monte Carlo, el análisis de sensibilidad te ofrece una forma cómoda de predecir exactamente cómo cambiarán las características operativas si aumentaras o disminuyeras deliberadamente el valor de un componente. Es una técnica muy útil para justificar ciertas decisiones de diseño más allá de abordar la fiabilidad desde un punto de vista estadístico, y te da información importante sobre cómo tu circuito responde a cambios específicos en los valores de los componentes.

Simulación de Monte Carlo vs. análisis de sensibilidad

En la simulación de Monte Carlo y en el análisis de sensibilidad, esencialmente estamos haciendo lo mismo: variar uno o más componentes en un circuito y medir cómo responde el resultado. La diferencia está en cómo se hace: La simulación de Monte Carlo aplica variaciones aleatorias, mientras que el análisis de sensibilidad aplica una variación en un intervalo determinado elegido por el ingeniero.

Tomemos el ejemplo de los valores de los componentes. Con el análisis de Monte Carlo, sé que las tolerancias de los componentes significan que el valor de un componente puede variar en cualquier parte del intervalo de +/- (% de tolerancia), pero no puedo predecir cuáles serán esos valores específicos. En el análisis de sensibilidad, quiero predecir cómo cambia el resultado si cambio deliberadamente el valor de un componente en cierta magnitud, algo que puedo elegir como ingeniero. El motor de simulación SPICE de tus herramientas de diseño simplemente ejecuta los cálculos de circuito estándar utilizando los valores de componente aleatorios o seleccionados.

La siguiente tabla compara la naturaleza de los cambios en el valor de los componentes en las simulaciones de Monte Carlo con las del análisis de sensibilidad, así como la forma en que se utiliza el motor SPICE para generar resultados.

 

 

Simulación de Monte Carlo

Análisis de sensibilidad

Cómo se generan los resultados medidos

Se utiliza SPICE para calcular una salida utilizando valores de componentes generados al azar.

Se utiliza SPICE para generar salidas usando un intervalo específico de valores de componentes. Las salidas también se pueden calcular manualmente.

Qué significa el resultado medido

Te indica el intervalo de funcionamiento probable de un circuito basado en factores impredecibles.

Te indica cómo cambia la salida de tu circuito ante un cambio específico (quizás predecible) en el valor de un componente.

Cómo se utilizan los valores de los componentes

Valores de componentes seleccionados aleatoriamente en función de parámetros estadísticos.

Valores de componentes seleccionados dentro de un intervalo específico elegido por el ingeniero.

Lo que se está modelando con valores de componentes aleatorios

Tolerancias de los componentes, que son totalmente aleatorias y solo se pueden controlar dentro de un intervalo.

Cambios deliberados en el valor de un componente.

En la tabla anterior he mencionado los valores de los componentes, ya que estos son los factores más utilizados en la simulación de Monte Carlo y el análisis de sensibilidad. Sin embargo, otros factores, como las variaciones en el nivel de la fuente de alimentación o las variaciones en la temperatura, se pueden examinar con cualquier tipo de simulación.

Si tuviera que describir el funcionamiento de un circuito basado en el análisis de Monte Carlo, mi descripción sería esta:

  • "El circuito tiene un 95% de probabilidad de ofrecer una salida entre los voltajes A y B, y existe un 5% de probabilidad de que quede fuera de ese intervalo. El punto de funcionamiento más probable, con una probabilidad de X%, es el voltaje Y".

Ahora, si tuviera que describir el funcionamiento de ese mismo circuito basándome en los resultados del análisis de sensibilidad, mi descripción sería así:

  • "Si el valor del componente X aumenta en un Y%, la salida del circuito cambiará entre los voltajes A y B".

Teniendo esto en cuenta, veamos un ejemplo de cómo utilizar los resultados del análisis de sensibilidad para entender mejor el comportamiento del circuito.

Ejemplo con un regulador de voltaje

Para este ejemplo, volvamos al circuito regulador de voltaje que presenté en un artículo anterior sobre las simulaciones de Monte Carlo. Asegúrate de leer ese artículo si deseas saber cómo son tus resultados de Monte Carlo y cómo se analizan estadísticamente. A continuación, se muestra un diagrama esquemático para este circuito.

Diagrama esquemático de análisis de sensibilidad vs. Monte Carlo
Circuito de convertidor buck que usaré en este ejemplo de simulación de análisis de sensibilidad.

En este ejemplo, queremos extraer un modelo lineal específico que defina cómo varía el voltaje de salida con respecto a los cambios en un componente determinado. Solo para este ejemplo, veremos variaciones en L1. En lugar de variar L1 aleatoriamente, como podríamos hacer en una simulación de Monte Carlo, la variaremos en un intervalo específico para ver cómo cambia la ondulación de salida para un determinado cambio en el inductor L1. Esto se aplicaría tanto en el modo de conducción continua como en el modo de conducción discontinua/crítica.

Configuración

En este ejemplo, supongamos que queremos ver qué sucede con el voltaje de la ondulación si cambiamos el valor de L1 en +/-5 % y +/-10 %. Para establecer estos límites, puedes abrir la ventana "Configuración" desde el Panel de Simulación. A continuación, abre la pestaña "Sensibilidad" para configurar la simulación.

Simulación de Monte Carlo vs. un convertidor buck de análisis de sensibilidad
Configuración de límites de los valores de los componentes para el análisis de sensibilidad.

En la ventana anterior, se pueden establecer límites de componentes personalizados para piezas específicas, que variarán según la fracción deseada durante la simulación. Por ejemplo, en los cuadros de texto, simplemente escribe 0,05 para aumentar el valor del componente en un 5%. También puedes establecer variaciones de tolerancia en el área de la mitad superior de la ventana. Una vez configuradas, puedes ejecutar una de las simulaciones estándar y el análisis de sensibilidad se ejecutará junto con el resto de las simulaciones.

Resultados

A continuación, se muestran resultados de análisis transitorios de hasta 0,3 ms. Esta ventana muestra cómo varía la tensión de salida a lo largo del tiempo y cómo varía la ondulación con los valores de los componentes.

Simulación de Monte Carlo vs. un convertidor buck de análisis de sensibilidad
Resultados del análisis de sensibilidad.

De esto podemos ver que el aumento de la inducción en L1 disminuye la ondulación. Esto es lo que esperaríamos basándonos en la fórmula de ondulación estándar para un convertidor buck. ¿Pero podemos ir un poco más allá para cuantificarlo? De hecho, podemos seleccionar los valores de ondulación de pico a pico y luego trazarlos como una función de la inductancia. A continuación, se muestra el gráfico que se obtiene con mis datos.

Simulación de Monte Carlo vs. un convertidor buck de análisis de sensibilidad
Tendencia que muestra la sensibilidad en la ondulación de salida a los cambios en el valor de mi inductor.

Desde la pendiente de la línea de tendencia, podemos esperar una disminución de aproximadamente 2,9 mV en la ondulación de pico a pico por uH de inductancia agregada a L1. Esta relación se mantiene hasta +/- 10 uH. En este caso, hay algo de error de cuantificación al leer los datos de los gráficos mostrados anteriormente, pero el objetivo para hacer este análisis es claro: podemos ver exactamente cómo cambia nuestra métrica de rendimiento de interés con una simulación numérica sencilla.

Normalmente, podríamos calcular dicho cambio para este circuito en particular si nos tomáramos el tiempo de derivar cómo el filtro LC de salida (C2 y L2) transforma la salida del regulador. Es un cálculo un poco complicado que implica una derivada, pero se puede hacer manualmente.

Circuitos más complejos

¿Y si el circuito fuera mucho más complejo? El análisis de sensibilidad sigue aplicándose, aunque tengas un circuito muy complejo con varios componentes lineales o no lineales. Por ejemplo, supongamos que tu circuito ha utilizado varios modelos de componentes de caja negra (como nuestro modelo de transistor anterior) y que tuviéramos muchos componentes no lineales en arreglos complejos (circuitos con diodos, transistores saturados, etc.). En ese caso, el análisis de sensibilidad en SPICE te dará las mismas respuestas con rapidez, precisamente porque es una simulación numérica.

Resumen y comparación

En resumen, el análisis de sensibilidad adopta un enfoque similar al de Monte Carlo para analizar el circuito, pero la interpretación de los resultados es muy diferente. La simulación de Monte Carlo te indica el intervalo de funcionamiento estadísticamente probable de tu circuito dadas las tolerancias conocidas de los componentes. El análisis de sensibilidad te indica exactamente cómo cambia un sistema con un cambio seleccionado en el valor de un componente.

Si vas a analizar la estabilidad y fiabilidad del circuito, ambos análisis son importantes. Si quieres analizar el peor de los casos (Worst-Case Analysis, WCA), utilizarás ambos métodos juntos para analizar el comportamiento del circuito. Analizaré más a fondo el WCA en un próximo artículo, ya que es un concepto muy importante en la electrónica de alta fiabilidad, tales como la industria aeroespacial, la automotriz, la médica, la medición y control de precisión y cualquier otra área en la que las tolerancias puedan crear problemas de fiabilidad.

Si te interesa ejecutar simulaciones de Monte Carlo y análisis de sensibilidad para tus circuitos dentro de Altium Designer®, encontrarás estas herramientas de simulación integradas en el motor SPICE dentro del editor de esquemas. Una vez que hayas completado tu PCB y estés listo para compartir tus diseños con colaboradores o con el fabricante, podrás hacerlo a través de la plataforma Altium 365™. Todo lo que necesitas para diseñar y producir electrónica avanzada se encuentra en un solo paquete de software.

Esto es solo una muestra de todo lo que es posible con Altium Designer en Altium 365. Empieza hoy mismo tu la prueba gratuita de Altium Designer + Altium 365.

Sobre el autor / Sobre la autora

Sobre el autor / Sobre la autora

Zachariah Peterson tiene una amplia experiencia técnica en el mundo académico y la industria. Actualmente brinda servicios de investigación, diseño y marketing a empresas de la industria electrónica. Antes de trabajar en la industria de PCB, enseñó en la Universidad Estatal de Portland y realizó investigaciones sobre la teoría, los materiales y la estabilidad del láser aleatorio. Su experiencia en investigación científica abarca temas de láseres de nanopartículas, dispositivos semiconductores electrónicos y optoelectrónicos, sensores ambientales y estocástica. Su trabajo ha sido publicado en más de una docena de revistas revisadas por pares y actas de congresos, y ha escrito más de 1000 blogs técnicos sobre diseño de PCB para varias empresas. Es miembro de IEEE Photonics Society, IEEE Electronics Packaging Society, American Physical Society y Printed Circuit Engineering Association (PCEA), y anteriormente se desempeñó en el Comité Asesor Técnico de Computación Cuántica de INCITS.

Recursos Relacionados

Volver a la Pàgina de Inicio