Instructables

Multifunction Digital Thermometer

Featured
Picture of Multifunction Digital Thermometer
This instructable will show you how to create a multifunction platform with a thermometer, chronograph (count up timer), count down timer, and light display. It is also intended to be a platform for other analog sensors or any other functions you can think of.
 
Remove these adsRemove these ads by Signing Up

Step 1: Gather Materials

Picture of Gather Materials
To build the digital thermometer you will need:
- Wire
- Altoids tin
- Breadboard
- Variable Resistor
- Dual-digit Common Anode 7 Segment Display
- 4 2N2222 Transistors
- 2 220 k ohm Resistors
- Thermistor(preferably linear output)
- 2 Momentary Push Buttons
- 2 2.2 k ohm Resistors
- 5 volt Regulator
- 2 Leveling Capacitors for the Power Supply (I used 220 uF)
- Power Switch
- ATMEGA168 Microcontroller
- 16 MHz Crystal
- 1 k ohm Resistor
- Printable Label (Larger then the front of the Altoids tin)
- Sockets (any you think you may need)

Needed tools:
- Soldering iron
- Desoldering Pump (optional)
- Wire Stripper (optional)
- Wire Cutters

Step 2: Start Building

Picture of Start Building
DSCN0263.JPG
For this step, use the attached schematic (word or AutoCAD) to build the circuit. I always find it helpful to first build it on a solderless breadboard. This makes it easy to fix any problems that arise before you want to pull your hair out :)

Before you start soldering it is probably best to first cut the breadboard to the final size and arrange all of the larger parts on the board (as seen in the 2nd image below). Don't forget to allow room for the buttons above the board and a power button off to the side.

It should be noted that in the schematic that R5 is a comparison resistor for the thermistor, and it might be included in your thermistor, so you should check your data sheet for how to implement your specific thermistor.
1-40 of 49Next »
007chrisac64 years ago
Can i get an exact parts list? Im buying from Sparkfun. For example, I wanted to know the exact thermistor i need. Is it a10k thermistor or a LM series temperature sensor?
J-Five4 years ago
One word ingenious!!!
I misread the title thought it read "malfunctioning" thermometer.
do you have an instructable on how to make this but without a thermometer? I'm new to all of this and I'm wanting to learn how to make these for pinhole camera I make.
dnhoshor5 years ago
I like the treatment you did on the Altoids box. I've been looking over Arduino projects, and your Altoids box treatment looks good.
Thanks
another noob question. The comparison resistor, if I have a 10k thermistor would that imply at 10k comparison resistor? I have the datasheet, but I guess I'm being dim. Thanks for the information.
J_Hodgie (author)  gunterhausfrau6 years ago
If the thermistor is 10k at room temp, then yes. You want to choose the comparison resistor so that it roughly equals the average of the varying resistor (it creates a 'voltage divider', if you want to look up how it works). This is because the voltage at the measurement point is in the middle of the measurement range, allowing the most sensitivity.
hinokon6 years ago
I supposed that you had used LM35 as the thermal sensor but i wonder what is the need for variable resistor? And according to the schematic the 7-segment was connected as in common-anode...but u mentioned it is common-cathode so i wonder if u can explain it? Lastly i wonder will it be a problem if i programmed atmega168 using 4Mhz crystal? (The programmer that i use is the following link: http://electronics-diy.com/avr_programmer.php )
thanks :)
J_Hodgie (author)  hinokon6 years ago
I also forgot to mention that the program will need to be changed and recompiled depending on that type of LED configuration you use(it is currently set for common anode).
i think that you are using arduino to program atmega168 through the board. may i know the hex file that i should burn my chip is "calibration.hex" ? Can i compile the code through the arduino software and download the hex file through another hardware programmer? thx again ; )
J_Hodgie (author)  hinokon6 years ago
You should probably re-compile the program using the latest Arduino software, and the .hex you should look for is whatever the file name is .hex. I use AVR studio 4 and an AVR ISP mk.II to then load the .hex file onto the chip.
J_Hodgie (author)  hinokon6 years ago
The variable resistor isn't needed, but it is useful. It is there to dim the LEDs, change numbers for input, or change execution speed depending on the current mode. Thanks, for catching about that about the LED display type, it is now fixed (it is common anode). It also shouldn't matter what speed you program the microcontroller at, as long as it uses the faster crystal to run.
PAPADOC6 years ago
Since you've built this, do you know where I can find a DIY for a temperature controller? I'd like to build a controller that will display the temperature with large, say 2" LEDs, be able to set a high and low temperature that will send a signal to a relay or solonoid valve to turn on or off. To purchase one, I'd have to spend over $100 and still not get the large LEDs. The large LEDs are needed to read the temperature from a distance. If you can help, please advise. Thanks, PAPADOC
J_Hodgie (author)  PAPADOC6 years ago
I'm not really sure I could find anything faster than you could, but if you know how edit the code you might be able to do that with this.
MrRodrigez6 years ago
sorry man, but you got your terminology mixed up, a chronograph is a precision instrument used for finding velocities of projectiles by use of waves in a controlled environment. nice instructable btw and good idea : )
J_Hodgie (author)  MrRodrigez6 years ago
That is one use of a chronograph, but as wikipedia puts it: "A chronograph is a timepiece or watch with both timekeeping and stopwatch functions. Pocket watch chronographs were produced as early as the 18th century but did not become popular until the 1820s". What you are thinking of is a gun chronograph. And thanks for the comment.
TomP6 years ago
You could easily replace the thermistor with a DS18x20 thermometer chip, which is precalibrated and gives a direct digital temperature reading accurate to 0.5 C. A number of people have written about how to use these with Arduino. You can pick up a DS1822 for less than $4 (or sample one for free from Maxim) and save yourself the joy of having to calibrating thermistors.
Thanks for the details on the microcontroller our only problem now is the suppplies store that we got all of out other materials does not have that specific one we would order it online but we are running out of time and the shipping is too much for the time we need it by Do you happen to have a microcontroller or an extra thermometer that you could sell us that already works and is setup? Please
funwithmicros.com sells a similar kit. It's cheaper than buying all the parts your own.
J_Hodgie (author)  purplewhalesrock6 years ago
Sorry, no. If the store can't get it to you in time, I doubt I could.
bradly6 years ago
I would like to make a correction here. The kit that I have is different from this project because it does not have 2 buttons, a slider or an on/off switch. It merely reads a temperature sensor and uses a pwm signal and strobing to show adc readings on a larger green dual 7-segment display. I do not sell the altoids tin. The kit was developed independetly of this instructables at the request of a client who wanted a digital thermometer for a kids science fair project.
Shifrin6 years ago
Wow, this is a really great instructable! I've been wanting to do a project like this for a long time! I'm guessing the thermometer is on celsius, is there a way to make it fahrenheit? If not It does not make a big difference... Thanks for the great Instructable! +1 ~Shifrin
J_Hodgie (author)  Shifrin6 years ago
It does also do Fahrenheit, or even kelvin if the programming was changed.
Thanks, what should I do?
J_Hodgie (author)  Shifrin6 years ago
Fahrenheit is already programmed in, just push button 2 to switch.
Awesome!
Hi again i was just wondering about some details on one last thing... for the ATMEGA 168 Microcontroller when we went to the store they said we needed way more details and that there are all different types so do you know what kind we need??
J_Hodgie (author)  purplewhalesrock6 years ago
The chip I use says ATMEGA168-20PU, it is a dual in-line package (DIP)
Can you give me specifics on these materials please?Like what type of wire, do i need a positive or negative Cathode exactly what type of variable resistor do i need? and what is the white board in step three is that listed in the materials?
J_Hodgie (author)  purplewhalesrock6 years ago
I use solid core speaker wire from radio shack, I find it easier to work with. The display needs to be common cathode (as opposed to common anode). The type of variable resistor doesn't matter, I just used a sliding one, it could also be rotary. The white board in step 3 is not in the materials, it is a solderless breadboard, I use it to make prototyping easier. I bought most of the parts from sparkfun electronics. Good luck on your project, and let me know if there is anything else
So you don't need that board? How much wire do i need to buy? I went to Skycraft to see if they could help me but they said i needed more specifics... i dont have wire a variable resistor,2 220 k ohm resistors or the 1 k ohm resistor was there any specific terms for those or not ? i also dont have the ATMEGA 168 Microcontroller i think they said they didnt have any of those or something....one more thing what is the black strip towards the bottom of the breadboard on step tow ? Thank you soooo much i will definitely be adding this site to our bibliography for the project! = )
J_Hodgie (author)  purplewhalesrock6 years ago
I'm not sure how much wire I used, I just draw from a 75' spool as I need it. Alfonso is correct, they are 1/4 watt 5% resistors. As for the microcontroller, i can only point you to an online store I buy from, such as Sparkfun Electronics or Digikey. I'm not sure what you mean by the black thing, there is the variable resistor I used in the lower right (in picture 1).
Hey, just below my post there is a post that says that the variable resistor is 1KOhm to 11MOhm. As for the regular resistors, I think that 1/4 watt 5% resistors would work fine.
klim1420026 years ago
Out of curiosity, what is the range on your variable resistor? I don't have that equilizer and I have some pots laying around.
J_Hodgie (author)  klim1420026 years ago
It ranges from 1 kOhm to 11 MOhm
cry_wolf6 years ago
This is one of the cleanest and most ingenious Altoids instructables i have seen. Good work!
peckerface6 years ago
does it measure Celsius or F, and whats the most it can measure.
J_Hodgie (author)  peckerface6 years ago
It measures Celsius and Fahrenheit, and the limit really depends on your thermistors and other parts. My thermistor can measure up to 100 C, but I would never push it there because the components around it would break.
i like it but how many pieces does it take?
J_Hodgie (author)  knexmaster556 years ago
I count 20 electrical components, let me know if this isn't what you meant
1-40 of 49Next »