Overtemperature protection

Thread Starter

engr_david_ee

Joined Mar 10, 2023
176
Hello, I am working with a new PCB design in which I just came to know that I need to add an over temperature circuit that will send a shut-down signal to the microcontroller in case the measured temperature is out of range. I am familiar with reading RTD circuit. I actually have made once temperature monitoring board with OpAmp, ADC and a microcontroller on the board. But how to get a over temperature protection analog circuit that send shut down signal to microcontroller in case the temperature is out of range.
 

Reloadron

Joined Jan 15, 2015
7,546
It all begins with you choosing a temperature sensor and for a simple overtempt a thermistor should do fine or a PN junction or options like a Dallas Semiconductor DS18B20 or even a simple LM35 temp sensor. Your choice of sensor depends on range you want and form, fit and function for your board. Since you make no mention of temperature range or exactly what you plan to measure such as ambient air around the board or a specific component and if a uC does it have onboard temperature sense? You want analog then run with a LM35 amplify it with a simple programmable gain op amp and use a simple comparator.

Ron
 

MisterBill2

Joined Jan 23, 2018
18,986
The other simple temperature sensor is the forward drop across a silicon diode, which the LM35 is an excellent variation of. The problem is that the circuit to produce a constant current across that diode is also temperature sensitive.
Is it the whole assembly that is subject to over temperature, or is it just one section?? What becomes challenging is that the temperature sensor will probably need to be located in the section where the power is and so not much room for sensor connection traces on the PCB, unless it is a multilayer PCB.
The other challenge will be calibration because probably some specific temperature is described as the "TOO HOT" level, and switching off sooner will be unpopular.
 

Reloadron

Joined Jan 15, 2015
7,546
The output of the LM35 is 10-mV/°C, so that signal likely could go directly to a comparator with trip voltage determined by an accurate voltage reference.
Thought about that and wondered mow well the signals would process less any help from an amplifier and I believe things would work well enough just leaving out any amplification. Thanks for pointing that out. :)

Ron
 

Thread Starter

engr_david_ee

Joined Mar 10, 2023
176
The first step in over temperature protection circuit is to measure the temperature on the PCB. The range of temperature on the PCB to be measured can be between 0 degC to +200 degC.

To measure the temperature on the PCB using PT RTD, I found MAX31865 which is RTD to digital.

https://www.analog.com/media/en/technical-documentation/data-sheets/max31865.pdf

I have some questions.

If I use four wire routing on the PCB then Rcable is the resistance of the copper traces, right ? I do not need to mount any SMD physical resistor for Rcable. Is that true ?

According to datasheet.

The capacitor C1 is 0.1 uF. The de-coupling capacitors for Vdd are 0.1 uF. These are the physical SMD capacitors on the PCB.

Datasheet also says that PT100 uses a 400 Ohm reference resistor (Rref), and a PT1000 uses a 4 kOhm reference resistor (Rref).

In my case I am planning to use PT100. Therefore, I will put 400 Ohm reference resistor (Rref).

I am wondering about the reading or converting the "temperature" from ADC code which I assume read by the I2C bus. The microcontroller will read ADC code and convert using the following formula into degC. The formula is mentioned on page 11 of 26.

Temperature (C) ≈ (ADC code/32) – 256.

There is a Table 9 on page 20 of 26. This table describe the values for Temperature (C), RTD Resistance (Ohm), RTD DATA Reg (01H-02H) (hex), ADC Code (dec), and the last column is (ADC code/32) – 256.

I was calculating if I read the ADC code 15901 (decimal) or 7C3Ah (hex), than

Temperature (C) ≈ (15901/32) – 256

Temperature (C) ≈ 240.91 degC

This value is written in the last column in Table 9 with the ADC code 15901 in the same line.

To calculate the RTD Resistance (Ohm). There is a formula on page 19 of 26.

Resistance_RTD = (ADC Code x Rref)/2^15
Resistance_RTD = (15901 x 400)/2^15
Resistance_RTD = 194.10 Ohm

This value also written in the second column of Table 9 in the same line where ADC code 15901 is written.

I am actually concerned about the correction of the measurement. The last column of Table 9 says 240.91 degC which match to my calculations. How do we get 250 degC, the first column value ? Is that corrected value ?

I tried to use the Callendar Van Dusen equation from page 10 of 26.

R(T) = R0(1 + aT + bT^2 + c(T - 100)T^3)

where,
a = 3.90830 x 10^-3
b = -5.77500 x 10^-7
c = -4.18301 x 10^-12 for -200 C < T < 0 C
c = 0 for 0 C < T < +850 C

The value of c parameter will be zero for positive temperature. The equation will be reduced to.
R(T) = R0 x (1 + aT + bT^2)

If I put the values of a and b parameters and the temperature T as 240.91 degC. Then I get 190 degC. How do I get 250 degC. ?
 

MisterBill2

Joined Jan 23, 2018
18,986
If you are using the "classic" 4-wire connection to the RTD sensor, with one pair of wires supplying the current and the second pair sensing the voltage, then the wire resistance will not affect the sensing accuracy or readings, unless it is great enough to affect the current. That is the whole purpose of the 4-wire scheme. I have used it and it works very well!
 

Thread Starter

engr_david_ee

Joined Mar 10, 2023
176
I just saw that MAX31865 has SPI interface. We actually have I²C as communication interface. It is possible to add more wires to the microcontroller which is located on another board.

I am wondering is that possible to use I²C instead SPI using this I²C-Bus to SPI Bridge "SC18IS602B". Would microcontroller be able to read data from MAX31865 ?
 
Top