Investigamos en distintos espacios y así de este modo brindarte la solución a tu dilema, si tienes dudas puedes dejar tu inquietud y te respondemos con mucho gusto, porque estamos para ayudarte.
Solución:
…alguien ha hecho esto ya?
Sí, alguien ya lo ha hecho. (Creo que su nombre es Helmut Sennewald).
El grupo Yahoo LTSpice tiene un conjunto de potenciómetros que funcionan muy bien. Tendrá que registrar una cuenta de Yahoo y unirse al grupo para descargarlos (por cierto, le recomiendo hacer esto si desea buscar LTSpice, el grupo de Yahoo tiene una de las colecciones más grandes de modelos LTSpice de terceros).
Los archivos correspondientes son potentiometer_standard.lib
y potentiometer_standard.asy
así como algunos otros archivos de apoyo.
Los modelos proporcionan modelos lineales, logarítmicos y otros, así como un símbolo de potenciómetro. El siguiente es un extracto del archivo Léame.
pot_lin : ideal linear resistance dependency
pot_pow : ideal power function resistance dependency
pot_plog : ideal positive logarithm function resistance dependency
pot_nlog : ideal negative logarithm function resistance dependency
potr_tab: arbitrary(table) based resistance dependency
pot_piher_plog : pseudo logarithm function resistance dependency, Piher
pot_radiohm_plog : measured pseudo logarithm fucntion resistance dependency, Radiohm
¿Cómo se “controlaría” este estrechamiento durante la simulación?
Estas ollas tienen un wiper
propiedad que se puede parametrizar fácilmente como un parámetro LTSpice regular. Por ejemplo, podrías decir wiper=GAIN
y, a continuación, agregue una directiva como .step param GAIN 0 1.0 0.25
.
Intenté seguir las sugerencias anteriores, pero me tomó mucho tiempo crear un potenciómetro que se parece a un potenciómetro y que se puede instanciar desde el esquema principal. Entonces, para el beneficio de cualquiera que sea tan tonto como yo…
Simplemente copie estos 3 archivos en un directorio en la ruta de búsqueda de LTspice (borre los espacios iniciales en cada línea). Espero que los nombres se expliquen por sí mismos.
potenciometro_prueba.asc
Version 4
SHEET 1 880 680
WIRE 272 48 0 48
WIRE 528 48 272 48
WIRE 272 80 272 48
WIRE 528 80 528 48
WIRE 0 96 0 48
WIRE 0 192 0 176
WIRE 272 208 272 176
WIRE 528 208 528 176
FLAG 272 208 0
FLAG 0 192 0
FLAG 320 128 out1
FLAG 528 208 0
FLAG 576 128 out2
SYMBOL voltage 0 80 R0
SYMATTR InstName V1
SYMATTR Value 10
SYMBOL potentiometer 272 176 M0
SYMATTR InstName U1
SYMATTR SpiceLine2 wiper=0.2
SYMBOL potentiometer 528 176 M0
SYMATTR InstName U2
SYMATTR SpiceLine R=1
SYMATTR SpiceLine2 wiper=0.8
TEXT 140 228 Left 2 !.op
potenciómetro.asy
Version 4
SymbolType BLOCK
LINE Normal 16 -31 -15 -16
LINE Normal -16 -48 16 -31
LINE Normal 16 -64 -16 -48
LINE Normal 1 -9 -15 -16
LINE Normal 1 0 1 -9
LINE Normal 1 -94 1 -87
LINE Normal -24 -56 -16 -48
LINE Normal -24 -40 -15 -48
LINE Normal -47 -48 -15 -48
LINE Normal -16 -80 16 -64
LINE Normal 1 -87 -16 -80
WINDOW 0 30 -90 Left 2
WINDOW 39 30 -50 Left 2
WINDOW 40 31 -23 Left 2
SYMATTR Prefix X
SYMATTR ModelFile potentiometer.lib
SYMATTR SpiceLine R=1k
SYMATTR SpiceLine2 wiper=0.5
SYMATTR Value2 potentiometer
PIN 0 -96 NONE 8
PINATTR PinName 1
PINATTR SpiceOrder 1
PIN 0 0 NONE 8
PINATTR PinName 2
PINATTR SpiceOrder 2
PIN -48 -48 NONE 8
PINATTR PinName 3
PINATTR SpiceOrder 3
potenciómetro.lib
* This is the potentiometer
* _____
* 1--|_____|--2
* |
* 3
*
.SUBCKT potentiometer 1 2 3
.param w=limit(wiper,1m,.999)
R0 1 3 R*(1-w)
R1 3 2 R*(w)
.ENDS
Potenciómetro Google LTSpice, hay muchos ejemplos con diferentes grados de complejidad. La mayoría usa un subcircuito a lo largo de estas líneas:
* This is the potentiometer
* _____
* 1--|_____|--2
* |
* 3
*
.SUBCKT potentiometer 1 2 3
.param w=limit(wiper,1m,.999)
R0 1 3 Rtot*(1-w)
R1 3 2 Rtot*(w)
.ENDS
Reseñas y valoraciones del tutorial
Tienes la posibilidad dar recomendación a este tutorial si te fue útil.