Earlier I presented a project on how to measure temperature with a LM35 and an Atmega8 microcontroller and display it on LCD. In the current project an Arduino board is used and the temperature reading is sent to a PC. A software is written for PC to display the data received on USB from the Arduino. It shows temperature value both in Celsius and Fahrenheit, numerical and as a bar-graph and a histogram with 100 data points.
The sensor is connected to one of the analog inputs of the Arduino. The code for microcontroller is very simple since all it does is convert the analog output of the sensor to digital and send it to PC and it does that every second.
The PC software is written in Processing, all code is available in the link.
Arduino Thermometer: [Link]
Here is a very good looking thermometer project showing the reading as a discrete value and as a bar-graph on a LCD. The idea is simple, we have a sensor, the LM35, who outputs a voltage depending on the ambient temperature, LM35’s rating is 10mV/ degree Celsius. Since the sensor’s output is analog we need to convert it to digital in order to display the value on LCD. The ATmega8 microcontroller will handle the A/D conversion, with a 4.8mV resolution it is within the accuracy range of the sensor.
Once the LM35’s output has been converted to digital, the microcontroller will make the calculations necessary to determine the temperature and display that value. The LCD is a 20×4 type so the bar-graph will show 20 levels. ATmega8’s port C0Â reads the analog data from the sensor and port D controls the LCD. The code was written in BASCOM AVR which has some built-in functions to handle the A/D converter of the microcontroller. For Fahrenheit measurement use LM34 sensor.
All in all it is easy to build, as a school project perhaps,Â with possibility for upgrade, for example to be able to change the bar-graph’s scale.
Digital Thermometer: [Link]
Here is another project which proves the versatility of the Nokia 3310 display, with a few components you can have a thermometer with graphical display. In many cases the 3310 display is to small, well for this application it fits like a glove, the sensor is the DS1621 with i2c interface, this way you can learn also how to use the AVR two wire interface to, don’t be afraid of the graphical display, you will find plenty of example source code and library.
Estimating from the price drop of LCD technology, the commonly used two row alpha numeric displays will be obsolete in a few years, its time to migrate to graphical!
AVR thermometer+Nokia display: [Link]
The circuit uses a constant current drive and a four wire connection to the probes. This allows almost any length of probe connecting cable without re-calibration. Surface mount chips are wonderful, but for prototype work these can be difficult to use. If you only have SMD parts available to make it easier you can construct a SO to DIP adapter.
Two Channel Thermometer: [Link]
This simple circuit is designed to report the temperature via any standard FM broadcast band radio at regular intervals. It uses a simple low bit rate tone signalling scheme which can be interpreted easily by both humans and machines. Such a device can be used stand-alone or as part of a PC-based weather station or HVAC system.
There are endless practical applications for such a device, just think about how many time you wanted to measure a temperature and for that you needed to run wires to the sensor. Now with this circuit you can place the device where you need the temperature reading and no more wires need to be connected.
Wireless Digital Thermometer: [Link]