Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Over temperature circuit

engr_joni_ee

Advanced Member level 3
Advanced Member level 3
Joined
Nov 3, 2018
Messages
820
Helped
2
Reputation
4
Reaction score
7
Trophy points
18
Activity points
6,852
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.
 
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

A thermostat may be what you're looking for, regardless of being or not the appropriate action to do.
 
Many microcontrollers these days have on chip die T sensor.

If yours does not use uC in sleep, wake up periodically, read T sensor,
and act on it.
 
There are analog solutions..
Example: Resistor, RTD, comparator

There are also digital solutions:
Example: LM73

There are NTC, PTC, thermocouples, diodes, transitors.... depending on your temperature range.

Nothing said so far about:
* supply voltage range
* is it a remote sensor? 3km away? 5m? 20cm? onBoard?
* accuracy
* hysteresis
* timing
* and so on...

Also unknown:
* What do you mean by "sending a shutdown signal". Ethernet, UART, SPI, I2C, hard wired, ... ?
* RESET ... just to stop operation
* POWER DOWN to decrease power consumption
* SOFTWARE CONTROLLABLE

*****
I mean: If you already build something like: RTD, ADC, microcontroller .... Why not just add a codeline: " if (actualTemperature > tempertureLimit) doOvertemparatureTask;"

Klaus
 
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.
How to do anything must follow all your defined needs to keep operating, detect faults, prevent or mitigate with cooling options and respond. Is this self-regulated heat, a major ambient swing or a fault condition?


How many of these metrics can you list? Let's call it part of a Design Spec.
 
 
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. ?
 
Hi,
The first step in over temperature protection circuit is to measure the temperature on the PCB
I only partly agree.
Usually "measurement" means that you are interested in a "range" of a value. You wrote "0...200°C.
Here you need to take care about the value of the whole range regarding linearity, offset, drift...

***
In opposite an "overtemperature" signal to "shut down" something.
This is a single point, not a full range.
You just have to decide the threshold of shutdown, then focus on this single point only.
So maybe you decide to shut down at 150°C then you need to focus on that point, without caring about linearity, without the need for runtime calculations.

It does not matter whether your "temperature measurement" has an error of 20°C around room temperature, when your threshold is at 150°C.

***

If I had to build a reliable overtemperature shutdown circuit, I´d probaly just use a couple of resistors and a comparator.
(and some capacitors for power supply decoupling and noise suppression)
Or I´d use a ready to buy thermostat.

Klaus
 
I agree that if purpose of temperature measurement is to compare and generate a over temperature shut down signal then the error of few degC does not matter.

Just a question regarding using PT1000 instead PT100. If I use PT1000 with 4 kOhm reference resistor (Rref), would the values and the formulas in Table 9 still be valid ? or there will be change in values ad formulas ?

The ADC codes from MAX31865 can be directly read by the microcontroller over I2C bus. The temperature can be internally compared to a threshold and shut down signal can be generated with hysteresis.
--- Updated ---

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 ?
 
Last edited:
I hope you trust then verify that the design will be able to shutdown the hot parts fast enough if over 100’C depending on rate of change. Also CMOS runs slower (latency, risetime) with higher temp. Also junctions will be hotter than PT100.
 


 
Last edited:
Hi,

In my eyes you change your requitement and your ideas with every post. I simply can´t process what you really need.

First it was a (simple) overtemperature shutdown.
Now it is a measurement using RTD, temperature measurement IC, interface translator, microcontroller and needs software and processing time.

And why - if you already have a microcontoller and I2C ... why not simply use the LM73 recommended in post#4?
No RTD needed
No temperature calculation needed
No interface translator needed
And it comes with an internal comparator to get an overtemperature signal directly from the LM73 ... without the need of continous processing power.

You come with new ideas every post, making every thing more complex and more complicated than before but don´t tell why.

Klaus
 
As you have mentioned quite high temperatures and a temperature measurement on the PXB (hot spot on the PCB), you should keep the glass transition temperature Tg and the maximum operating temperature MOT in mind. You have to select/produce your PCB accordingly, see here. But as pointed out by @KlausST you have to state your design constraints and target first, to get helpful feedback.

BR
 
Yes, we will be considering high Tg FR4 when it comes to the selection of dielectric material to be used in the PCB stackups.

LM73 is ±1°C Temperature Sensor with I2C/SMBus Interface. We are having some component placement issue on the PCB, so I think we can not use that component. The same is true for LM35 that gives + 10-mV/°C as analog output.

We need to use PT1000. For some reason we need to have both options open. The one with digital output for example using MAX31865 which is RTD to digital. And the analog output option. For this we need to find 1 mA current source that we connect to PT1000 gives the voltage across the PT1000 proportional to the change in resistance. Regarding the accuracy +/- 1 degC is totally fine. I have found some precise current sources but the circuit, how we connect to the PT1000 ? Any suggestion on circuity please ?
 
Hi,

I´m about to leave this thread, because - to me - it seems we get more riddles than useful informations.

So if you want me to give assistance, then please re read my posts, focus on what is unclear for me and give the related informations.

Klaus
 

LaTeX Commands Quick-Menu:

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top