## NTC calculations. | |

- Introduction
- NTC characteristics
- Simulating variable resistors
- Simulating an Inrush Current Limiter
- Simulating temperature sensors
- Appendix A: Calculations
- References
- Copyright and disclaimer

This is some notes on NTCs and some simple Spice models for them.

Spice files shown in this page can be downloaded here.

Since Spice does not accept Greek characters and is case-insensitive, many common parameter names are written as text.

- The resistance value at 25 °C (R or R
_{25}) [Ω]. - Resistance tolerance in percent. Normally specified at 25 °C, but for some precision NTCs it is specified at several temperatures.
- Resistance vs. temperature at zero power:
- In form of a table listing the resistance at different temperatures as absolute values [Ω] or as values relative to R
_{25}[ΔR_{P}/R_{25}].

This is typically the most accurate way to specify an NTC, but it is only useful for simulations using the temperature as the independent variable.

You will most likely get convergence problems if you apply feedback around tabular data, e.g. to include the NTCs self-heating in the simulation.

Tables also often list the α at different temperatures. α is a linear approximation between 2 points. - A plot of resistance vs. temperature. This is normally a plot of a 2 point logarithmic approximation.
- A β value [K].

This is a 2 point logarithmic approximation of the NTCs resistance vs. temperature that is sufficiently accurate for many applications (all ICL applications).

The reference temperatures for the β value are normally 25 °C and 75 °C. - Steinhart-Hart coefficients.

This is a 3 point logarithmic approximation of the NTCs resistance vs. temperature that is very accurate, but the calculations are more complex than for using β.

- In form of a table listing the resistance at different temperatures as absolute values [Ω] or as values relative to R
- Maximum power dissipation at 25 °C (P or P
_{25}) [W]. - Dissipation factor or Dissipation constant (δ
_{th}) [W/K or W/°C].

This is the amount of power that will increase the NTCs temperature by 1 °. - Thermal time constant or Thermal cooling time constant (τ
_{C}) [s]. - Heat capacity (C
_{th}) [J/K or J/°C].

The amount of energy that will increase the NTCs temperature by 1 °.

C

The following is only specified for Inrush Current Limiters (ICLs):

- Maximum steady state current (I
_{max}) [A].

An ambient temperature is normally stated. - Maximum capacitance or Maximum permissible capacitance (C
_{test}) [F].

This is the maximum capacitance you can discharge into the NTC.

A capacitance value and a voltage is specified.

Further info is normally available in the manufacturer's application literature. - Current derating.

This is normally shown as a plot.

As most other power components, ICLs must be derated when they are used above a given ambient temperature, however they must also be derated when used below a given ambient temperature. - Maximum energy or Maximum recommended energy rating [J].

The maximum amount of energy an NTC can absorb in a given time ( normally not specified ). - Maximum body temperature [°C].

The maximum body temperature when the NTC is used within its designed operating range.

Basically a reminder to designers not to put NTCs near anything that can not resist this temperature.

Also note that the coated part of ICLs used for mains voltage are considered "live" by the safety testing agencies.

This is done with an Arbitrary Behavioral Current Source ( a B element ).

The basic syntax for the B element is:

Bnnn n001 n002 I=<expression> <several other parameters can be added - see the manual for the Spice you use>.

nnn is the name for the element and n001, n002 are the connections.

Fig.1: Some examples in LTSpice. The voltage on VCC is constant and the voltage on CTL is a dc sweep.

Example A, a linear resistor:

B1 VCC N1 i=V(VCC,N1)/R

The current through B1 is the voltage between nodes VCC and N1 divided with the value of R.

Plot V(VCC,N1)/I(B1) to see the resistor value.

Example B, a voltage dependent resistor:

B2 VCC N2 i=V(VCC,N2)/V(CTL)

The current through B2 is the voltage between nodes VCC and N2 divided with the value of VCTL.

Plot V(VCC,N2)/I(B2) to see that this is a resistor with the value of VCTL.

Example C, a resistor defined by a function:

B3 VCC N3 i=V(VCC,N3)/Rtest()

.func Rtest() {V(VCC,N3)+10}

The current through B3 is the voltage between nodes VCC and N2 divided with the value of VCTL+10.

Plot V(VCC,N3)/I(B3) to see that this is a resistor with the value of VCTL+10.

Example D, a table defined function:

E3 VE1 0 CTL 0 table=(0,0 10,6 12,50 20,50 100,100)

The voltage on VE1 is the function defined in the table in E1.

Plot V(VE1) to see the function.

This type of table is limited to "a few" entries as there is a limit to the string length that can be entered in E1's value box.

Example E, another table defined function:

In this case the table is defined in an model included in the file ntc_rvar_e2.cir:

* Table based NTC characteristic e2 VE2 0 CTL 0 table=(0,326.5 + 5,253.9 + 95,7.885 + 100,6.8)Plot V(VE2) to see the function.

This file can be as long as you want.

Note that resistors defined with Arbitrary Behavioral models do not generate thermal noise like the R element does.

Simulating the thermal properties is done by replacing them with electrical models using the following analogs:

- voltage [V] = temperature [K or °C]
- current [A] = power [W]
- capacitance [F] = thermal capacity [J/K or J/°C]
- resistance [Ω] = thermal resistance [K/W or °C/W]

Although Spice simulations are very accurate, ICLs are not precision components.

The tolerance on their specification varies from ±20% to "approximately" ( this is from an actual data-sheet ), so the output from Spice is "approximately" ( with 10..15 digits ).

When ICLs are used in mains circuits, testing the actual circuit under worst-case conditions is essential ( this is often the ICL in series with the fuse directly across the mains - the fuse should blow - not the ICL ).

Test the circuit in a closed box using proper mains wiring ( no test leads or clips ).

The failure mode for ICLs vary from cracking at slight overloads to very violent for large overloads ( 2 pins left in the pcb and some dust around in enclosure ).

When ICLs are used within the Absolutely Maximum Ratings specified by the manufacturer, they will generally last forever.

Fig.2: ICL simulation in LTSpice.

The parameters not shown on this schematic are:

- NTC_R25: The NTC resistance in Ω at 25 °C. ( 5 )
- NTC_Beta: The NTC beta in K. ( 3124 )
- NTC_DF: The NTC dissipation factor in W/K. ( 0.05 )
- NTC_HC: The NTC heat capacity in J/K. ( 10 )
- VAC: The RMS supply voltage V ( 265 ).
- RTSER: The circuit series resistance in Ω ( 1 ).
- TEMP: The global temperature variable in Spice in °C ( 27 ).

VCC, R1, R2 and BNTC is the electrical circuit.

BNTC_P, C_HC, R_DF and VAMB is the thermal circuit, where:

- I(BNTC_P) is the power dissipated in BNTC: 1 W corresponds to 1 A.
- NTC_T is the NTCs temperature: 1 °C corresponds to 1 V.
- C_HC is the NTCs heat capacity: 1 J/K corresponds to 1 F.
- R_DF is the NTCs thermal resistance to ambient: 1 K/W corresponds to 1 Ω.
- VAMB is the ambient temperature: 1 °C corresponds to 1 V.

BI2T integrates I(BNTC)

The function NTC_R calculates the resistance of the NTC from its R25, Beta and NTC_T.

The function INTC calculates the current through BNTC from the voltage across it and NTC_R.

The function PNTC calculates the power dissipated in BNTC from the voltage across it and the current through it.

Several manufacturers have very accurate models for their designs ( although you may have to sign an NDA to get them ).

Fig.3: Temperature sensor NTC simulation in LTSpice.

The parameters not shown on this schematic are:

- A, B, C: The Steinhart-Hart coefficients.
- NTC_DF: The NTC dissipation factor in W/K. ( 0.05 )
- NTC_HC: The NTC heat capacity in J/K. ( 10 )

BNTC_P, C_HC, R_DF, BTEMPK and VTEMPC is the thermal circuit, where:

- I(BNTC_P) is the power dissipated in BNTC: 1 W corresponds to 1 A.
- NTC_T is the NTCs temperature: 1 K corresponds to 1 V.
- C_HC is the NTCs heat capacity: 1 J/K corresponds to 1 F.
- R_DF is the NTCs thermal resistance to ambient: 1 K/W corresponds to 1 Ω.
- TEMPK is the ambient temperature: 1 K corresponds to 1 V.
- TEMPC is the ambient temperature: 1 °C corresponds to 1 V.

The functions NTC_X, NTC_Y and NTC_R calculates the resistance of the NTC from the Steinhart-Hart coefficients and TEMPK.

The function INTC calculates the current through BNTC from the voltage across it and NTC_R.

The function PNTC calculates the power dissipated in BNTC from the voltage across it and the current through it.

Resistances are in Ω and temperatures in K unless noted.

To find the temperature :

where:

R is the resistance, Rr is the resistance at Tr.

To find the Beta value, you need the resistances R, Rr at the 2 temperatures T, Tr.

To find the resistance:

To find the resistance using common data-sheet values:

where:

Beta is in K, R25 is the resistance at 25 °C and T is the temperature in °C.

Resistances are in Ω and temperatures in K.

To find the temperature :

where:

A, B, C are the Steinhart-Hart coefficients, R is the resistance and T is the temperature.

To derive the Steinhart-Hart coefficients, you need the resistances R1, R2, R3 at the 3 temperatures T1, T2 and T3.

To find the resistance:

This can be simplified a little by defining constants D and E ( you only need to calculate D and E once ):

[1] | Wikipedia: Steinhart-Hart equation. |

Copyright Notice.

This web-page, including but not limited to all text, drawings and photos, is the intellectual property of Poul Petersen, and is Copyright ©.

Reproduction or re-publication by any means whatsoever is strictly prohibited under International Copyright laws.

The author grants the reader the right to use this information for personal use only.

Any commercial use is prohibited without express written authorization from Poul Petersen.

The information is provided on an "as-is" basis and is believed to be correct, however any use of the information is your own responsibility.

This web-site may contain links to web-sites outside Poul Petersen domain ( www.poulpetersen.dk ).

Poul Petersen has no control over and assumes no responsibility for the content of any web-site outside Poul Petersen own domain.

Poul Petersen does not use cookies to "enhance your experience" on this website.

Poul Petersen, C/Faya 14, 35120 Arguineguín, Las Palmas, Spain.

E-mail: pp@poulpetersen.dk

Copyright © Poul Petersen 2019. Last update: 20191029. | Valid HTML! |