En mi circuito, hay un generador de corriente. Este generador genera valores dependientes de un parámetro, lo llamamos N. Pero quiero usar el parámetro como variable. Si los valores cambian linealmente, usaré la función .step. Pero mis valores tienen una distribución gaussiana y un valor diferente de 10k. Por lo tanto, la función .step no es adecuada para mí.
Mi pregunta es, ¿podría cambiar el valor del parámetro N de un archivo .txt de salida continuamente como función .step?
Ahora, estoy usando LTSpice. Dime si conoces alguna aplicación SPICE útil. Sé que la función PWL() cambia los valores actuales del generador con un archivo. Pero hay una fórmula matemática en I2() y el parámetro N que se usa en eso.
Al volver a leer esto ahora, creo que entiendo lo que OP quiere: usar una secuencia personalizada de números que se pueden usar en un .step
comando. Si este es el caso, intentaré responder.
Normalmente, para una secuencia no lineal de números que no es logarítmica, list
se utiliza la palabra clave. Desafortunadamente, no permite evaluaciones, es decir, los valores deben ser numéricos {cos(1)}
o {2*5}
fallarán. Entonces, la única solución sería generar los números externamente, en un archivo de texto sin formato, como una sola línea o como una línea concatenada (al frente +
de cada nueva línea) y agregar:
.step param x list <sequence_of_numbers>
al principio. Este archivo se puede agregar al esquema con el comando .inc
(o .include
). No olvide que LTspice XVII clasifica los números en orden ascendente antes del inicio de la simulación. Puede que te guste o no, pero así es ahora. La única forma de eludir esto es usar LTspice IV.
Para probar esto, el contenido del archivo de texto se ve así:
.step param x list 7.254322142991044e-12 2.974321522582202e-10
+ 5.94864415973779e-9 7.733237831307738e-8 7.346575989515156e-7
+ 5.436466237528063e-6 3.261879742903331e-5 1.630939871486926e-4
+ 6.931494453849666e-4 0.02292014166076882 0.05730035415192529
+ 0.1278238669542985 0.2556477339086 0.4601659210354829 0.7477696216826623
+ 1.099661208356858 1.466214944475812 1.774891774891774 1.952380952380952
y el esquema da esto después de un .op
:
Los números tienen una forma de campana gaussiana. La salida parece una línea recta, pero al usar View > Mark Data Points
muestra que la distribución no es lineal. El uso .tran
mostrará diferentes niveles de CC, como se esperaba.
Tiene algunas opciones aquí, sin embargo, esto suena como un problema XY.
En primer lugar, las funciones .step son para ejecutar diferentes simulaciones.
Si desea ejecutar una simulación transitoria con sus propios valores personalizados para una fuente o carga, puede usar archivos PWL o Wave para la entrada a las fuentes en LT Spice. (o simplemente puede usar la opción PWL incorporada, que sería tedioso ingresar miles de valores).
En el primer circuito, V1 tiene una entrada de archivo de ondas que establecerá la Res neta en V1. Por el bien de los intereses, incluí configurar una resistencia al valor del archivo de onda, lo que hará que la resistencia R2 sea variable a lo que sea el archivo de onda.
V3 tiene una entrada de archivo PWL.
I1 tiene una entrada de vuelo PWL.
Recuerde que PWL puede ser complicado al establecer puntos, no puede tener dos puntos al mismo tiempo y PWL simplemente dibuja una línea entre los puntos.
Esta es la única forma de importar valores a un archivo lt Spice.
También puede usar fuentes b (ya sea de corriente o de voltaje) con funciones matemáticas que controlan la entrada de la fuente.
Las funciones más útiles si intenta crear una fuente de ruido serían white, random y rand, que le permiten crear fuentes con propiedades gaussianas en el dominio del tiempo y simulación .trans.
broma
agente
agente
broma
un ciudadano preocupado
bi
obi2
. Consulte el manual para saber cómo usarlo:LTspice > Circuit Elements > B. Arbitrary behavioural ...
.agente
un ciudadano preocupado
.step
"? "cambiar el parámetro N deout.txt
"? "fórmula matemática enI2()
"? Lo siento, pero ¿podrías pedirle a alguien que conozcas que tenga un mejor inglés que te lo traduzca? Yo, por mi parte, no puedo entender realmente qué mensaje estás tratando de transmitir, lo siento, pero tal vez solo soy yo.