Pages: [1]   Go Down
Author Topic: Newbie Project: Arduino Ear Thermometer using Thermopile  (Read 2866 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi!

I have a computer science / software engineering background and would like to start tinkering with hardware.

For my first project I'd like to create an Arduino based device that accurately and continuously measures core body temperature over a few days. After some research, I found that most ear thermometers use thermopiles to measure core body temperature.

I'd like to keep it relatively compact, light, and portable. I'm thinking of using a lilypad arduino and one of the following thermopiles e.g. TPS333 http://www.alliedelec.com/search/productdetail.aspx?SKU=70219621 , TPiD 012B or TPiD 022B http://www.excelitas.com/Downloads/TPiD%20012B%20TPiD%20022B%20Thermopile.pdf.

A few questions:
What hardware would you recommend i.e. which arduino, thermopile, modules, etc. ?
Can I directly connect one of these thermopiles to an Arduino?
How do I read the temperature data from the thermopile?
UPDATE for clarification: How can I store and retrieve the temperature readings so that I can analyze them on my computer (about 24 - 48 hours worth, read about once every second, so about 172800 readings, assuming a 2-byte integer, would yield about 337.5 kilobytes of data to store)?
What else would I need in terms of hardware besides an Arduino and Thermopile?
What kind of battery should I use?

Since I'm admittedly complete newbie to hardware, I would love to get more experienced users' design and implementation ideas. I'm very excited to get started!

Thank you!

bodhibyte
« Last Edit: May 16, 2012, 12:30:04 am by bodhibyte » Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 503
Posts: 19095
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I would be wondering about the infrastructure. For example, what battery would you use? What holds it all while you shove it into your ear? Where do you read out the temperature?

I'm no expert of thermopiles but it looks to me like Arduino / Atmega328 or similar would do the basic job.

You could probably run it off 2 x AA or AAA batteries, the processor can run at a reasonable rate with 3V power.

You probably want to investigate a compact LCD screen to show the temperature, or maybe a couple of 7-segment LEDs, providing you power them off quickly to save power.
Logged


Switzerland
Offline Offline
Faraday Member
**
Karma: 111
Posts: 5242
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

To give you an alternative for the sensor:

http://shop.boxtec.ch/product_info.php/cPath/39_71/products_id/40658

This one offers you medical accuracy (at least in the temperature window of a human body), is read using I2C (you don't have to twiddle with amps and the like, everything included) and is quite focussed (5°). I use it for something similar, although I use it only for a momentary measurement, not for constant wearing.

With a clever programming (longer sleep periods) you should be able to drive it from a not to big battery together with a minimal arduino setup (an ATtiny might be enough).
Logged

UK
Offline Offline
Shannon Member
****
Karma: 223
Posts: 12630
-
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I don't think body core temperature is usually measured in the ear - I think it's usually measured rather lower down.  smiley-wink
Logged

I only provide help via the forum - please do not contact me for private consultancy.

Switzerland
Offline Offline
Faraday Member
**
Karma: 111
Posts: 5242
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You might have some memory of your childhood... :-)

Today in-ear infrared thermometers are quite a fast way to get a good approximation of the body core temp. Go to your MD and ask for your temperature, most probably she will hold such a thermometer into your ear and tell you immediately.
Logged

UK
Offline Offline
Shannon Member
****
Karma: 223
Posts: 12630
-
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You might have some memory of your childhood... :-)

Today in-ear infrared thermometers are quite a fast way to get a good approximation of the body core temp. Go to your MD and ask for your temperature, most probably she will hold such a thermometer into your ear and tell you immediately.

Um ... don't think I'll risk it just in case, thanks. You never know, my GP might turn out to be 'old school' as well. smiley-grin
Logged

I only provide help via the forum - please do not contact me for private consultancy.

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I would be wondering about the infrastructure. For example, what battery would you use? What holds it all while you shove it into your ear? Where do you read out the temperature?
Basically, I'm thinking of having the thermopile inside an in-ear earphone-style earbud (yes, I like to use the word ear a lot... ear ; ) ) and wearing it like I would wear my earphones, expect I only really need it in one ear. I'm not too worried about the housing.
I'm no expert of thermopiles but it looks to me like Arduino / Atmega328 or similar would do the basic job.
Cool, thanks!
You could probably run it off 2 x AA or AAA batteries, the processor can run at a reasonable rate with 3V power.
Great!
You probably want to investigate a compact LCD screen to show the temperature, or maybe a couple of 7-segment LEDs, providing you power them off quickly to save power.
Hmm, I actually want to save the temperature readings to read them on my computer, so there's no need for a screen really. I'm trying to store and retrieve the temperature readings so that I can analyze them on my computer (about 24 - 48 hours worth, read about once every second, so about 172800 readings, assuming a 2-byte integer, would yield about 337.5 kilobytes of data to store).
« Last Edit: May 16, 2012, 12:29:45 am by bodhibyte » Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

To give you an alternative for the sensor:

http://shop.boxtec.ch/product_info.php/cPath/39_71/products_id/40658

This one offers you medical accuracy (at least in the temperature window of a human body), is read using I2C (you don't have to twiddle with amps and the like, everything included) and is quite focussed (5°). I use it for something similar, although I use it only for a momentary measurement, not for constant wearing.

With a clever programming (longer sleep periods) you should be able to drive it from a not to big battery together with a minimal arduino setup (an ATtiny might be enough).

Thanks for the alternative sensor info. I saw slightly cheaper model on Sparkfun before http://www.sparkfun.com/products/9570 but wasn't sure if it's as good as the ones I listed. Looks like it might be easier to use if the other don't have I2C.

I found more info on the  Melexis MLX9061 thermopiles here: http://mbed.org/users/4180_1/notebook/mlx90614-i2c-infrared-thermometer/

How can I store and retrieve the temperature readings so that I can analyze them on my computer (about 24 - 48 hours worth, read about once every second, so about 172800 readings, assuming a 2-byte integer, would yield about 337.5 kilobytes of data to store)?
« Last Edit: May 16, 2012, 12:29:12 am by bodhibyte » Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 503
Posts: 19095
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In that case you are talking about 86400 to 172800 readings. Even at a byte each, that is far more than the available EEPROM (1 Kb).

You could scale down a bit (a reading every couple of minutes) or get some external storage. An SD card in a small adapter might do the trick, eg.

https://www.adafruit.com/products/254

Or an EEPROM chip, eg.

http://www.gammon.com.au/forum/?id=10990
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

In that case you are talking about 86400 to 172800 readings. Even at a byte each, that is far more than the available EEPROM (1 Kb).

You could scale down a bit (a reading every couple of minutes) or get some external storage. An SD card in a small adapter might do the trick, eg.

https://www.adafruit.com/products/254

Or an EEPROM chip, eg.

http://www.gammon.com.au/forum/?id=10990


Thanks Nick! Microsd sounds great! And it's not too expensive.
Logged

Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 642
Posts: 50397
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
How can I store and retrieve the temperature readings so that I can analyze them on my computer (about 24 - 48 hours worth, read about once every second, so about 172800 readings, assuming a 2-byte integer, would yield about 337.5 kilobytes of data to store)?
Just how fast do you expect your subject's core body temperature to change? Once a minute is probably overkill.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Just how fast do you expect your subject's core body temperature to change?

That's exactly one of the questions I'm trying to answer! Which is why I want the higher sampling rate that would otherwise be way overkill.
Logged

Global Moderator
Offline Offline
Brattain Member
*****
Karma: 503
Posts: 19095
Lua rocks!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Just how fast do you expect your subject's core body temperature to change? Once a minute is probably overkill.

He might get frightened by having a microprocessor shoved up his ear. That might alter results. smiley-wink
Logged


Seattle, WA USA
Offline Offline
Brattain Member
*****
Karma: 642
Posts: 50397
Seattle, WA USA
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
That's exactly one of the questions I'm trying to answer!
I wouldn't think that you would need to collect data away from a PC for two days to determine that.

Get a volunteer subject to wear the device, while connected to a PC, and try different things to raise (strenuous exercise, exposure to heat, etc.) and lower (stick the subject in a walk in freezer) the subjects core temperature. Plot the temperature as you get it, and learn how quickly the core temperature changes under extreme conditions.

For people not subject to extreme conditions, the rate of change of core temperature is pretty low. Measuring the temperature every second will, I'm nearly positive, be unnecessary.

OI course, one of the hardest things to do with your test subject is going to be preventing outside factors from affecting the temperature reading that you get. That is, measuring what you think/hope you are measuring, and nothing else.
Logged

Pittsburgh, PA, USA
Offline Offline
Faraday Member
**
Karma: 98
Posts: 4813
I learn a bit every time I visit the forum.
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

You're not going to get core temperature in the ear but you will get solid information on how warm the body is running, the brain is a pig when it comes to blood supply.

I dunno if it's going to work but I have a $2 PIR sensor on order. No lens or board, just the sensor. I plan on masking one of the apertures and seeing if the difference reading gives me anywhere near right temperatures. I'm sure the mask will vary but I don't need high accuracy to check a house for heat leaks at night do I?

Logged

I find it harder to express logic in English than in Code.
Sometimes an example says more than many times as many words.

Pages: [1]   Go Up
Jump to: