Cryptonite
New Member
Offline
Posts: 2
|
Hi, I know this is an old thread now but I had a similar need & found this board just this week while trying (and failing) to find a solution.
I've now solved it myself & thought I'd share my solution which is to use an Arbitrary Behavioural Voltage Source combined with a 0V Voltage source as a current sensor like this:
.subckt ntc 1 2 Params: * these provide sensible defaults + R0=10k, + Beta=7660, + Rpar=1T, + t0 = 25, + TK = 273.15
* Arbitrary Behavioural Voltage source is used to generate * Voltage equal to the NTC resistance @ global temp (in °C) * multiplied by the current passing through it BTherm 1 3 V = I(Vsense) * R0 * exp (Beta/(temp + TK) - Beta/(t0 + TK))
* Current sensor Vsense 3 2 0
Rparallel 1 2 R = Rpar
.ends
If you make this a library, you can then add commercially available Thermistors, e.g.
* Vishay Surface Mount NTC0805E4 series 2k2 @ 25°C .subckt 2381_615_13222 1 2 x1 1 2 ntc Params: R0=2k2 Beta=3680 .ends
and predefined linearised sensors such as
*Oil Temperature Sensor .subckt OilTemp 1 2 x1 1 2 ntc Params: R0=50k Beta=1780 Rpar=18k .ends
or you can just use the select "ntc" as SpiceModel and define the parameters as you need in the LTSpice Component Attribute Editor e.g. Value as "R0=15k" , Value2 as "Beta=4660", SpiceLine as "T0=0", SpiceLine2 as "Rpar=1k5"
The model is obviously a simple one, with no account taken of frequency response, self-heating, etc. but it's much faster to run in LTSpice than the EPCOS ntc models available online.
Hope this is useful to somebody!
|