06-28-2012 09:57 AM
Hello. I'm trying to make a multisim conponent for a NTC thermistor which uses the same temperature parameter as the rest of the components in the circuit (not a control voltage to control temperature of the NTC). The parameters for the thermistor are the resistance at 25C (10K) and the "B" value (3530). I successfully used the component wizard in multisim to make a new resistor with this model:
.SUBCKT NTC_10K 1 2 PARAMS: T0=25 R0=10k B=3530
R1 1 2 (R0*EXP(B*((1/TEMP)-(1/T0))))
The resistance of my new component is correct when I simulate it at 25C, however, when I try to do a temperature sweep analysis, the resistance does not change, it stays at the same 25C value. What is the Multisim SPICE temperature variable that is varied during a temperature sweep analysis? Based on a previous post, it supposedly is TEMP, but I have not verified that. I've attached my circuit with the NTC as used in a simple voltage divider.
07-03-2012 09:26 AM
During a temperature sweep analysis, the cahnging variable is one innate to the components that were made with a temperature variance in their models (such as a resistor which has a variable temperature value under the value tab in its properties). This temperature value does not work with the TEMP variable which you made with your SPICE model, since variables are not a supported parameter for analysis in multsim.
07-09-2012 08:48 AM
Thank you Miguel for the reply. If the temperature sweep analysis sweep variable is not accessable by any user controlled SPICE parts, what is the best way to simulate a circuit over temperature which has a thermistor and other temperature sensitive components that are included with Multisim, such as transistors and diodes. My end goal is to simulate using the thermistor to counteract the Vbe changes in a transistor in a circuit over large temperature swings, and to see how those two temperature sensitive components interact. I think NI may wish to include a default thermistor part in future revisions of Multisim (that uses T0 and B as parameters) because this to me is an excellent use case of the software. Thanks.
07-09-2012 10:00 AM - edited 07-09-2012 10:00 AM
I was looking at your circuit again, adn after checking up on a few available resources I realized my last comment was wrong. The TEMP variable being used in your SPICe model of thecomponenet is in fact correct and it should use the acquired temperature correctly. I'm attaching a chart so that you can see a small temperature sweep I did.
Past the 25 degrees of temperature. The voltage at R2 stars to become very small (voltage divider with a small resistance compared to the 1kohm from the other resistor), but at higher temperatures based on your equation for the resistance, the voltage propagates properly. From your equation for example, at 30 degress you basically end with a resistance in the microrange (E-7), bringing down the voltage to pretty much 0.
Sorry if my last post confused you. Please take a look at the file I'm sending you.
09-02-2013 03:23 PM
Here is an NTC part and a simulation circuit. This works very well and you can substitute whatever NTC model you want in the part. It uses a ramped voltage source as the temperature input to the thermistor model. This circuit is not optimized for any particular range or optimum linearity. Normally you can do OK with single order resistor linearization over about a 60-80C range.
To simulate just set the V source to cover the range (or greater than) desired and do a transient analysis with the time range equal to the temperature range you want. You put a neg value in the Vsource control offset if you want to simulate below 0C. In the grapher you can rename or label the time access degC.
For simulation from 0C up you don't have to fool with offsets in the source or the grapher. Just let time =deg C.