Arduino + RTD: What is the maximum possible accuracy?

Dear Arduino-Experts,

I am pretty new to Arduino, played around a little with some small projects and becomming more and more a fan. Since my background in general electronics is not too well, I have a question which I hope can be answered by some experts around here:

Problem: I need to measure a thermal energy balance, i.e. the temperature before and after a component in an hydraulic circuit and the volume flow. Since the volume flow is high and the change in temperature (dT) is low, I need a precise differential temperature measurement. Since I want to measure dTs around 0.5K, "Precise" means around +-0.01K. The absolute temperature is not so important (+-1°C is ok), I only want the difference between the two sensors to be as accurate as possible.

What I got: The accurate flow measurement is no problem. I have PT100 RTDs (to be connected with 4wires) and can get my hands on a very accurate calibrator for those.

Question: Is this task solveable with an Arduino? I.e. is it possible, to set up a measurement chain, that will produce temperature difference values in a data file of that precision? Can I, for example, measure 3 energy balances (i.e. 6 temperatures) with a timestep of 3sec on one Arduino board?

Any answers would be highly appreciated.

Thanks, J

arduino can use a reference voltage of Vref=1.1V (lower than 1V is no good idea, IIRC)... @10bit and a sample rate of 5kS/sec u get about 1mV/LSB... a LM35 delivers 10mV/K... many arduinos can neither do differential ADC nor gain (e. g. the ATmega168 cant)...

the ATtiny25 can do differential ADC and can use a gain of appr. 20x... that means, that u can get about 50uV resolution and that is 0.005K... :D

the Arduino Due has a "16-channel 12-bit 1Msps ADC with differential input mode and programmable gain stage", that could do the same as (or better than) the ATtiny25...

the Arduino Mega 2560 can do the same as (or better than) the ATtiny25...

i forgot to mention: 1. oversampling might increase the resolution by some bit(s)... 2. if u use a thermocouple u might need some external circuitry (like one differential amplifier for each thermocouple...)...


thank you for the reply. I will read it a few more times and try to understand ... :blush:

Best regards, J

Your requirements are going to be very difficult to meet. .5K variation is like 1 degree F variation at ambient? Your choice of PT100 RTD sensors is a good one as it’s about the most accurate standard temperature sensor available outside special order laboratory sensors. However even PT100 sensors will probably not be matched that close to each other. You will probably need to have individual RTD sensor interface (normal bridge type) circuits so that you might be able to ‘calibrate’ the slight mismatch there might be between your two sensors, and not utilize a input multiplexer type interface which would have the interface bridge circuit be shared by the two sensors. Otherwise one might only be able to try and match two PT100 sensors from a large selection to try and find two that are matched close enough to each other.

Again it’s a demanding specification, +/- .01K, but perhaps if your calibration equipment is rated at 10X that precision, then you might be able to ‘tweak’ your sensors/interface circuits to met your objective, maybe. :wink:

Only once you have solved and verified the basic sensor precision can be met should you then worry or even think about the ADC part of the project.


your idea is very good possible, use a XTR105 as interface, with this you can set the offset and gain. the output is 4-20 mA so you can even use greater distance. either use two of these and have them calibrated or use a simple relais in between them. The accuracy is btw only 0.2 Celsius of a RTD however you can calibrate them in the arduino. I do this by using two good 25 ppm resistors of 80 ohm and 100 ohm this depends on the application. like metalfilm or MELF.

more info needed pm on

a year later.......

I too am looking for high accuracy. stumbled upon this thread.

since the OP is looking for differential and not absolute, it would appear that a simple Wheatstone bridge might offer readings in orders of magnitude greater than trying to read absolute temperatures.

I submit that here for reference for others.

my quest is to read within 0.1°F accurately. that would be some combination of hysteresis, repeatability and sensitivity. for HVAC, the zone of control is typically about 2 or 3 degrees. holding a set-point at 1 degree is not required, but to control a process, I believe that I should have a range of about 100 readings or more. Therefore, I would like to have about 400 readings over the 4 degree F range. (start to that first degree, between each of 3 degrees, then to the next degree)

as part of this project, I am also looking for 25 temperature sensors all reading in the same space, I need to be able to calibrate them individually. temperatures will vary over a 100 deg F range. currently looking at DS28EA00 the big brother - higher accuracy serial 1 wire device.