Really accurate temperature sensor?

Hello,
I am searching for a really accurate and quick temperature sensor that would cooperate with my Arduino UNO. It must be water proof (it will measure the temperature of a liquid). I need accuracy of +-0,1 degree Celsius, and scope of 0-150 degrees Celsius. Also it should ideally reach the 0,9 times of the true value in less than a second in liquid. (not necessarily). Is there such a sensor? I have not found it.
Thank you
Mim

You can get DS18B20's in metal tubes on the end of a lead, which might be able to withstand 150C,
and they have a resolution of 1/16th deg C and good accuracy.

I was going to comment about the limits of the Arduino A/D resolution, but the device MarkT mentioned has it's own A/D so ... good luck.

I have been trying to use the TMP36, but the resolution is around 0.5 degC and power supply voltage has to be compensated for since the A/D reference voltage changes. My results changed 10 deg F with power supply change from 5.5v to 2.4v (Arduino Primo).

Thank you very much for your reply, but DS18B20 does not have sufficient accuracy (+-0,5degC on the interval -10 to 85degC)...

Yes, the DS18B20 datasheet specifies the best resolution as 0.0625 degrees C, but accuracy is specified as 0.5 degrees C over a restricted range, and worse over the operating range.

Maybe a DS1722 based thermometer, you will have to do some thinking about construction.

For 0.1 degree accuracy you'll have to calibrate, and you'll probably multi-point calibration. Do you have an accurate-calibrated thermometer to calibrate the one you're building?

And, you'll probably get more than 1/10th of a degree variation of the liquid within the container, so I'm not sure how meaningful such precise measurements are...

Whatever you do to electrically isolate the sensor will also thermally insulate so that will slow-down your readings.

Theoretically, a thermocouple is very accurate and since it works on "basic physics" so it's stable, reliable, and accurate. However... They have low-voltage outputs which have to be amplified and you need a temperature reference (typically an ice bath) or a simulated temperature reference (very common) so in the real world they are finicky, the amplifier can be noisy, and not always as accurate as the theory.

I have been trying to use the TMP36, but the resolution is around 0.5 degC

It's analog so the "resolution" is determined by noise.

But, on the digital side the Arduino ADC gives you about 1000 steps that doesn't quite get you to 0.1 degree, even with a custom/optimized voltage reference (so you can use the whole 0-1023 range).

and power supply voltage has to be compensated for since the A/D reference voltage changes. My results changed 10 deg F with power supply change from 5.5v to 2.4v (Arduino Primo).

If you're trying to build such a precision instrument I'd suggest a rock-solid power supply! (Or, at least a stable voltage reference.)

Miroslava:
Hello,
I am searching for a really accurate and quick temperature sensor that would cooperate with my Arduino UNO. It must be water proof (it will measure the temperature of a liquid). I need accuracy of +-0,1 degree Celsius, and scope of 0-150 degrees Celsius. Also it should ideally reach the 0,9 times of the true value in less than a second in liquid. (not necessarily). Is there such a sensor? I have not found it.
Thank you
Mim

Hi,
The accuracy you need: is for the sensor itself or for the whole system (arduino + sensor)?
Regards.

DVDdoug:
...
But, on the digital side the Arduino ADC gives you about 1000 steps that doesn't quite get you to 0.1 degree, even with a custom/optimized voltage reference (so you can use the whole 0-1023 range).
...

@DVDdoug: excellent post.
Just one precision: 0.1 degree on a span of 100 ºC; the OP asks for 0..150 ºC
Regards.
(I like the º notation)

To vffgaston: Unfortunately I need precision +- 0.1 ºC for the whole system. I was thinking of connecting an ADC and a hub (like e.g I2C) that would lead the signal to Arduino. I cannot use Arduino's analog pins, because they only have 10bits (1024 values)... Does anyone see any solution?

DVDdoug: I think you are right in every point you wrote.

Hi,
What is the application?
Do you have the facilities to check/calibrate such a device?
For 0.1 accuracy you will have to have some way of guaranteeing that accuracy.

Response time of under a second means you need a sensor of low thermal inertia.

For all your criteria to be met, you would be best consulting a laboratory supply house. or an instrument supplier.

At my workplace we have a PT100 sensor which is as thin as 22 gauge wire, not sure of the supplier, that may do the job.

What is the media that you will be immersing the sensor into? (corrosive?)

Thanks… Tom… :slight_smile:

DaleScott:
I have been trying to use the TMP36, but the resolution is around 0.5 degC and power supply voltage has to be compensated for since the A/D reference voltage changes. My results changed 10 deg F with power supply change from 5.5v to 2.4v (Arduino Primo).

Don't know the Arduino Primo, but on an Uno it shouldn't be a big problem to get a TPM36 to a 0.1C resolution that is independent of the power supply.
You need to average analogReads, and use 1.1volt Aref for that.

TMP36/LM35/DS18B20/etc. are not rated for 150C (125C max).
Thermistors with Arduino's A/D only have the required resolution in the middle of the temp range.
That leaves PT100 or PT100 sensors with external A/Ds.
Adafruit.com has a selection of them.
Leo..

There are contactless thermometers. I think they work by measuring infrared light somehow. They should be fast enough but I am not sure if they will have such precision.

It is for research purposes in medical sphere and it really must as precise as +-0,1°C (to monitor thermal changes of a system and their course). The liquid is not corrosive. It seems we will have to calibrate the sensor. However, there is a problem how to calibrate - what is the ethalon. I will try if some laboratory can help with the calibration.

Miroslava:
Thank you very much for your reply, but DS18B20 does not have sufficient accuracy (+-0,5degC on the interval -10 to 85degC)...

Then you probably need PT100 sensors and breakouts - a lot more expensive.

Miroslava:
To vffgaston: Unfortunately I need precision +- 0.1 ºC for the whole system. I was thinking of connecting an ADC and a hub (like e.g I2C) that would lead the signal to Arduino. I cannot use Arduino's analog pins, because they only have 10bits (1024 values)... Does anyone see any solution?

Precision is not the same thing as accuracy. Precision is about the minimum difference than can be
repeatably distinquished, accuracy is absolute. High accuracy usually involves a chain of calibration certificates
and regular re-calibration.

MarkT:
Precision is not the same thing as accuracy. Precision is about the minimum difference than can be
repeatably distinquished, accuracy is absolute. High accuracy usually involves a chain of calibration certificates
and regular re-calibration.

Yes, sorry, I need accuracy +-0,1°C

PT100 is likely the best approach then. Thermistors with a good calibration curve are also possible, but
are more susceptible to drift with age.

It is for research purposes in medical sphere and it really must as precise as +-0,1°C (to monitor thermal changes of a system and their course). The liquid is not corrosive. It seems we will have to calibrate the sensor. However, there is a problem how to calibrate

It depends on where you live, but usually there are strict requirements for medical applications. Here in the U.S., there are FDA requirements. Most labs (including non-medical labs) have their equipment routinely/periodically calibrated.

Many manufacturing/production companies (including non-medical companies) are ISO9000 certified which requires that measurement equipment be periodically calibrated. I work in (non-medical) electronics manufacturing and in my work-area I have 3 calibrated multimeters, two calibrated oscilloscopes, and a one calibrated oven (I think the oven has a tolerance of a one or two degrees). Over a few years, I'm sure we've spent more on calibrating the hand-held multimeters than the original cost of the meters.

If you buy a commercial digital thermometer you can simply have it calibrated once or twice a year by an independent lab that can certify the calibration is [u]NIST tracable[/u].

One company I worked for a long time ago had their own in-house NIST traceable calibration lab. The company I work for now uses [u]PMC[/u].

"Homemade" or custom made equipment can be problematic because of the calibration/certification requirements. If you custom build something, the independent lab won't have a calibration procedure and if they will do it at all, you'll have to work-out a special procedure with them, and they'll probably have to charge you extra.

...And that's assuming you can actually build something that's reliable and accurate enough for your needs.