Finding myself in need of a temperature sensor to complete a XBee project, I went on the hunt for the right component.
I require either a:
- LM35 (−55°C to 150°C),
- LM35C (−40°C to 110°C) ± 0.25°C – 0.75°C
or the slightly less precise LMx35 series ± <1°C:
- LM135 (−55°C to 150°C) TO-46
- LM235 (−40°C to 125°C) TO-92
- LM335 (−40°C to 100°C) SOIC
Also, in the same family is the LM34. From How to Build a LM335 Temperature Sensor Circuit
The difference between an LM335 and LM34 and LM35 temperature sensors is the LM335 sensor gives out the temperature in degrees Kelvin, while the LM35 sensor gives out the temperature in degrees Celsius and the LM34 sensor gives out the temperature in degrees Fahrenheit. All 3 are calibrated different to output the millivolt voltage reading in proportional to these different units of measurement.
There are also the:
- Analogue Devices TMP36 (-40 to 150C). It is very similar to the LM35/TMP35 (Celsius output) and LM34/TMP34 (Fahrenheit output). This sensor has a very wide range and doesn’t require a negative voltage to read sub-zero temperatures. Otherwise, the functionality is basically the same. See also TMP36 Instructions: Simple Sensor Network:
The TMP36 is simpler to install because it does not require any passive components.
- DS18B20 – The DS18B20 digital thermometer provides 9-bit to 12-bit Celsius temperature measurements and has an alarm function with nonvolatile user-programmable upper and lower trigger points. The DS18B20 communicates over a 1-Wire® bus that by definition requires only one data line (and ground) for communication with a central microprocessor. It has an operating temperature range of -55°C to +125°C and is accurate to ±0.5°C over the range of -10°C to +85°C. In addition, the DS18B20 can derive power directly from the data line (“parasite power”), eliminating the need for an external power supply.
The first half of this video, from EEEnthusiast, is a simple Arduino tutorial using LM35DZ.
There is also the Adafruit Temperature Sensor Tutorial! on Instructables.
Specifications from Adafruit
- Usable temperature range: -55 to 125°C (-67°F to +257°F)
- 9 to 12 bit selectable resolution
- Uses 1-Wire interface- requires only one digital pin for communication
- Unique 64 bit ID burned into chip
- Multiple sensors can share one pin
- ±0.5°C Accuracy from -10°C to +85°C
- Temperature-limit alarm system
- Query time is less than 750ms
- Usable with 3.0V to 5.5V power/data