...has anyone done this already?
Yes, someone has already done this. (I believe his name is Helmut Sennewald).
The Yahoo LTSpice group has a set of potentiometers that work very well. You will have to register a Yahoo account and join the group to download them (by the way, I highly recommend doing this if you want to pursue LTSpice, the Yahoo group has one of the larger collection of third-party LTSpice models).
The relevant files are potentiometer_standard.lib
and potentiometer_standard.asy
, as well as some other supporting files.
The models provide linear, log, and other models, as well as a potentiometer symbol. The following is an excerpt from the readme file.
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
How would this taper be "controlled" during simulation?
These pots have a wiper
property which can be easily parameterized as a regular LTSpice parameter. For example, you might say wiper={GAIN}
, and then add a directive such as .step param GAIN 0 1.0 0.25
.