¿LTSpice qué valores se usaron en una ejecución?

Ejecutar una simulación del peor de los casos, como se indica aquí: LTspice: análisis de circuito del peor de los casos con ejecuciones de simulaciones mínimas
¿Cómo se puede averiguar qué valores de circuito se usaron durante una ejecución? En mi sim tengo 12 resistencias, entonces corre 4096. En la ejecución 265 hubo un cambio decente en la salida, por lo que me gustaría saber qué valores de resistencia se usaron durante una ejecución específica.

Respuestas (3)

Mirando la forma en que definen la función wcy binaryen el artículo, el índice del valor parametrizado es el "bit" en el número de ejecución (comenzando desde el LSB), que es el último parámetro de la función wc que crearon.

Entonces, en la figura 3 del artículo, R4 es el bit 0, R1 es el bit 1, R2 es el bit 2 y R3 es el bit 3:

figura 3

Luego, para decodificar qué valor tiene cada resistencia, solo necesita codificar el número de ejecución en binario, y si el bit específico es 0, está en el valor mínimo, y si es 1, está en el valor máximo. Un caso especial es cuando el índice de ejecución es igual a 2 norte . En este caso, todas las resistencias se ajustan al valor nominal.

Como ejemplo, tome la ejecución 5 del ejemplo que dan en el artículo. En binario de 4 bits esto es 0101, por lo que el valor de las 4 resistencias viene dado por:

R 4 = 22.5 ( 1 + 0.05 ) k Ω R 1 = 22.5 ( 1 0.01 ) k Ω R 2 = 22.5 ( 1 + 0.01 ) k Ω R 3 = 22.5 ( 1 0.05 ) k Ω

Si tiene una definición diferente para wco binary, entonces el orden podría ser diferente.

En su caso, la ejecución 265 es 000100001001, por lo que cualquiera que sea el índice 0, 3 y 8 son el valor máximo y todos los demás son el valor mínimo.

Hay varias buenas respuestas aquí. Este fue el que mi cerebro asimiló más fácilmente.
Usando el método anterior, pude identificar y reducir el peor de los casos a 4 resistencias, luego volver a ejecutar los sims para verificar.

No recuerdo haber visto esa página que vinculaste antes y no he necesitado hacer pruebas en el peor de los casos de muchas partes en LTspice. Así que me enfrentaste con una pregunta novedosa (para mí). Pero la respuesta no fue difícil de encontrar.

Tomemos un caso simple (para evitar que escriba más) de un divisor de resistencia:

ingrese la descripción de la imagen aquí

Creo que he representado con precisión un caso del enlace que proporcionó, arriba. Cuando ejecuto esto y hago clic en V DIV , y agrego un par de rastros más, obtengo el siguiente gráfico:

ingrese la descripción de la imagen aquí

El eje x es el número de ejecución, el trazo rojo es el voltaje de salida del divisor sin carga, el trazo verde es el valor de R 3 y la huella turquesa es el valor de R 1 . Puedes simplemente leerlos directamente fuera de la trama.

El único problema es que debe ser creativo al especificar qué trazar.

También puede utilizar la tarjeta .MEAS. Como esto:

.MEAS R1 FIND V(N001,VDIV)/I(R1) WHEN run=RUNSELECT

Es decir, si ha identificado el número de ejecución que le interesa. En este caso, capturará estos valores por usted y los almacenará en el "Registro de errores de Spice", al que puede acceder usando Ver / Registro de errores de Spice desde el sistema de menú.

Puede espolvorear tantos de estos como crea que necesita. Pero en ese caso, es posible que desee crear un PARAM y usarlo en su lugar. Entonces, digamos que quería los valores para R 1 y R 2 en ejecución=2. Podría hacer lo siguiente:

.PARAM RUNSELECT=2
.MEAS R1 FIND V(N001,VDIV)/I(R1) WHEN run=RUNSELECT
.MEAS R3 FIND V(vdiv)/I(R3) WHEN run=RUNSELECT

Encontraría esto en el archivo de registro:

r1: v(n001,vdiv)/i(r1)=4750 at 2
r3: v(vdiv)/i(r3)=5250 at 2

Todo muy bien captado.

...y la ventaja del .MEASscript es que se puede escribir como un archivo externo, llamado externamente a través del menú Archivo > Ejecutar .MEAS Script (con el visor de forma de onda activo), y todo esto sin necesidad de volver a ejecutar el simulación.

Cree una fuente de voltaje de comportamiento para cada dispositivo (R), luego simplemente pegue etiquetas y valores de funciones esquemáticas. Ejecute un DC .op (punto operativo) para obtener un valor por ejecución de prueba. Trace cada voltaje (R). Puede pegar estos valores en un archivo de texto para obtener una tabla de valores R frente a la ejecución de prueba.

También puede programar un script en un lenguaje como matlab, para generar los valores, usando los mismos pasos de programación que LTspice (confirmé que funciona bien).

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí