Ever get a sunburn?  Prefer to avoid them in the future?  Mr. Burns combines information about your skin type and any sunscreen you're wearing with a realtime UV light measurement to let you know before the burn sets it! 

Here's a little demo;
Continue to the next page and I'll answer a few questions and show you how to make it

Step 1: FAQ

How does it work?

Sun exposure time is a factor of 3 things;
  1. Skin type.  Lighter complexions burn more quickly
  2. Sunscreen. Suncreen extends exposure time
  3. Ultraviolet Radiation.  UVA (315-400nm) is the main culprit, and it can vary widely throughout the day, geography, time of year, etc.
Skin type and sunscreen are easy - Mr. Burns just asks you to provide that information.  Measuring Ultraviolet radiation is complex;

Initially, I went to the usual sources to get a UV sensor, but I found out they were very expensive ($20 - $30).  If you take a regular LED and invert it (so the anode is connected to ground), it will generate a very weak voltage in response to light, but you need an op-amp circuit to amplify the voltage & I wanted something simpler. 

Finally, I came across this whitepaper from Mitsubishi - they had the problem of sensing when to turn on the light in your remote control; a capacitive sensor would turn it on when it's not needed and waste power.  They figured out a way to sense light using the backlight LED itself - and that's what Mr. Burns is based on.

When you use an LED as a photodiode, it's sensitive to wavelengths equal to it's output color and shorter.  By using a blue LED that generates light at 415nm, it's a perfect fit for sensing UVA, and it's cheap (<$1)

Once Mr. Burns has skin tone, UV level, and sunscreen info, it uses WHO data (pdf) to determine how long until you get a sunburn.

Here's a walkthrough of how it works.  Note that I'm using a Propeller Platform SD and LCD UI module, but this instructable will also show you how to do it on a breadboard.

How Accurate is it?

The sensor picks up the UVA and measures it correctly.  Exposure calculations are based on WHO research, too.  It's pretty accurate, the most likely cause of error is sunscreen;

Most people don't put on enough sunscreen - you're supposed to put on 1mg/cm2, which means about an ounce to cover an adult male.  You're also supposed to re-apply every 2 hours.  If you do this correctly, you're fine, but otherwise, you should under-estimate the SPF of your sunscreen.

Also, Mr. Burns measures incident UVA at the beginning of the exposure, but it doesn't re-adjust if UV changes.  The literature isn't clear as to whether your skin is equally sensitive throughout the exposure.  It's easy to implement, though - and if I find evidence that it is, I'll update the code.

What are the Technical Details?

It's a Parallax Propeller running at 80Mhz connected to an HD44780 8x2 character LCD (4-bit interface).  The Propeller stores the exposure table in RAM and measures incident UV through an R/C decay circuit. 
I think if you can turn this into a smaller package (using different microcontroller packages for example and a smaller LCD), you could sell these quite well during summer time. I mean I'm not into sun bathing related items and stuff, but i think this thing could be the next best invention to that field since sunscreen. <br>If you can, assuming you have mass purchases, injectionmolding and a factory at your disposal, design one that is not bigger than those odometers which are cheap enough to be put into cereal boxes which come complete with LCD, for about 2 USD production price maximum, the lower the better, then this thing might have a bright future ahead.
In Australia, I have my own sunburn alarm: IF Outside = 1 AND Visibility = 1 AND NaturalLight = 1 THEN AlarmState$ = &quot;PANIC!&quot;
I want to peel off a skin suit, so I'm all for sunburn :D
just when you have a bath, get a scour sponge and scrub your self. <br>it is a loy safer and won't hurt afterwards
Ha! I think in Australia it's safe to assume that UV is always at 10. But the challenge with UV is that the level can change independent of visible light. For example, UV penetrates cloud cover, so even if it looks cloudy and shady, you may still be getting a lot of UV.
Cloudy = NaturalLight, IF Visibility = 1 AND NaturalLight = 0 THEN Time = &quot;Night&quot; That means it's safe to spread one's wings and go for a night flight in search of food.
unless you get eaten by some other creature... then Alive = 0 and Game = over :c
if you want to avoid sunburn, you could probably just get a tan
A tan provides about the same protection as an SPF 4 sunscreen. Also, a tan doesn't protect your eyes, which are damaged from sun exposure. Wearing an SPF 40 sunscreen is a much better idea, just be sure to re-apply and use enough (about 1 ounce).
Good project, but the only problem that I can see is that if you leave an LCD display in the sun for long periods it goes all black and can't be read anymore.
True, but someone who's not as experianced in electronics may not realize this. Joe
Just to let you know. You need to rework your scematic of the propeller using the 4 sided chip. The current pins are in the wrong location. Joe
The schematic isn't a physical representation of the chip - the pins could go anywhere. You might notice the actual pin numbers next to each pin on the chip. You'll often see designers put all the Vdd or Vss pins next to each other.
How about america stops being lazy and just wears sunscreen!!!!
Could you use a pocket-calculator sized solar panel to power it? Seems like a pretty logical tweak.
You know, i stumbled upon that exact mitsubishi whitepaper a year or two ago and i thought it was such a novel idea. I've wanted to try it out but never had the funds to get the MC and associated components. It's awesome that you've found an application for this and I'd love to see more projects that implement this bizzare LED behavior. Overall great idea, and great instructable, but i'd have to agree with Treknology int sunburnAlarm(String location, int timeOfDay) { if ((location == &quot;Outdoors&quot;) &amp;&amp; (timeOfDay &gt; 700 &amp;&amp; timeOfDay &lt; 2100)) { printf(&quot;Get the hell inside!&quot;); } return 0; }
Give this to your daughter --- Repels sunburn -- AND first dates. :D
They make beads that change from clear to a certain color when you need to put on sunscreen to avoid sunburn I'm not sure what they are called but I'm sure they would be cheaper, waterproof, and lighter. But your idea is truely genius
or you can stay inside all the time ;) but great 'ible
This is nice. I may make a waterproof one for the pool.
Now, only to mount it into a hat, or hell, maybe even an integrated HUD/mini LCD for sunglasses! (???)

About This Instructable



More by Gadget Gangster:Hack Your Car Talking Resistor Calculator Bananaphone: A Touch Capacitance Synth 
Add instructable to: