Introduction: The Awesome Rainbow Tornado Lamp

Picture of The Awesome Rainbow Tornado Lamp

Lamps. Pretty boring by themselves huh? Lets change that!

In this instructable, I will show you how to make an awesome rainbow tornado lamp - mostly from easily acquired supplies as well.

This is my first instructable as well so please give me all the feedback you can in the comments section at the end.

Step 1: Gather Your Materials

Picture of Gather Your Materials

This project is made from materials that are very easy to find, if not available already.

These are the materials you will need but you can improvise a little if you need to. They are broken down into the major parts they compose:

Lamp:

  • 1 round bottle. I used a Sparkling ICE bottle because it was a nice size too
  • 1 Foam Plate (or a bowl, doesn't really matter)
  • 1 metal paperclip.
  • Non - stick spray (you will see the need for this later)

Lamp base:

  • Thin wood sheets. You can also print out a pattern of choice on paper and use that instead.
  • 1 small cardboard box
  • Hot Glue. You will use this for everything, but mainly for the lamp base.

Electronics:

  • 1 Arduino Mega. You can use other models if you want, but more on that later.
  • Thin wire. Lots of it.
  • 4 RGB multicolor LEDs. I used common anode LEDs. You can use common cathode, more on that later too.
  • Lead Solder. Mine has flux in it already
  • 1 slide switch
  • 1 Potentiometer, if you want later on
  • 1 mini motor with a tiny gear on the end
  • 1 9V battery
  • 1 9V battery clip
  • 4 Arduino cables that fit the pins
  • 1 USB type B cable (printer USB cable)
  • 1 two part phone charger. (you only need the wall plug end)

As for the tools, nothing too complex either. All I used were some small files, soldering iron for the solder, hot glue gun for the hot glue, scissors, a pair of pliers (Because I don't have wire strippers), and an x-acto blade.

Step 2: The Bottle

Picture of The Bottle

For the lamp, I used a simple plastic bottle. To make it look nice though, I needed a round bottle, without any ridges. Many drink brands are in this type of bottle. Smart water and Sparkling ICE are the two obvious ones. Some other drink bottles may also have this shape but don't get a bottle that is too big.

I chose the Sparkling ICE bottle over the Smart Water bottle because it was lighter and at the same dimension ratio I wanted. If you want a wider lamp, go for it. Your choice, as long as the bottle is round and light for a cardboard box to support easily.

To begin with, remove the label from the bottle and be careful to not make any dents in the bottle. You will probably get a sticky residue left by the label, and here are ways to get rid of it:

  • Simply rub it off
  • spray with non stick spray and wash later with soap
  • use rubbing alcohol
  • use WD-40 and then wash off with soap

I'd say that the non-stick spray method works the best for me but it also would depend on the type of glue that the manufacturer used on the bottle.

Anyways after that, put aside the bottle for later and get the paperclip out.

You will now need to make a small hole in the cap of the bottle. It must be able to spin freely on the shaft of your mini-motor (without the gear), but not leak water out. to do so, bend the paperclip straight. Next, heat it over an open flame and make a small hole in the exact center of the cap. next use a pencil or a tapering rod to widen the hole until it is just enough to spin freely on the motor shaft. This will keep from water leaking out of your lamp, if done right that is. Don't worry, there are other ways to seal the lamp too. On to the next step.

Step 3: The Spinner

Picture of The Spinner

To begin making the spinner, you will need to take the small gear off the motor first.It should already be off after you used the motor's shaft to test it in the previous step.If not, here is how you should take it off:

  1. Do not use needle nose pliers. The pressure they put on the gear can easily break it.
  2. Get a thin object like a blade or the edge of a metal ruler
  3. Slide it under the gear
  4. pull up and the gear should pop off.

One you take the gear off, take you foam plate and make 4 symmetrical rectangles. The dimensions aren't set in stone because cap sizes and gear diameters vary, and also because the spinner will be able to form a tornado even if it is a bit smaller. For now though, make the rectangle's width half of you cap's diameter and the height the same as you cap's.

Next, use hot glue to position the rectangles on the gear in a + pattern. Make it as symmetrical as you can- this will reduce vibration, noise, and will make better tornadoes when it spins underwater. Also, It is fine if the rectangles extend from one end of the gear, but they must not go beyond the other end. If done properly, the gear should still be able to fit flush with the motor on the shaft. You can see an example of this in the second picture, where only one end of the rectangle goes past the gear.

Also, to secure the foam rectangles into place better, I like to put a bead of glue directly on the gear in between all the foam pieces. You don't have to do this, but it may save you the effort of doing so later in case it breaks. So far with this technique, my spinner has never broken.

Step 4: Put the "spin" in Spinner

Picture of Put the "spin" in Spinner

What is the point of a spinner if it doesn't spin right? In this step we will put together the working spinner assembly.

To do so, start off with your mini motor. Using sandpaper, make scratches all over the front end and edges of the motor and bottle cap. This will help stick the bottle cap on later and will prevent water from leaking out.

Speaking of which, grab the bottle cap with the hole from before and make sure it spins freely on the motor. If it doesn't, no worries; you can widen it easily. If it a bit too loose on the motor, then you might have a problem. I will discuss how to waterproof it better in the next step.

Using hot glue, stick the cap on the front of the motor, but make sure you don't glue the shaft and it is still able to spin. You can see this in the third picture. Now to waterproof it, put PLENTY of hot glue on the motor and cap. You can see how mine turned out in the fourth picture once I had waterproofed it.

Waterproofing is the most important step here and chances are, you will end up coming back here to waterproof again. Here are some tips to making a tight seal:

  • make sure you glue gun is fully heated up.
  • make sure there are no air pockets when you stick the cap on.
  • make sure you have made scratches wherever you will be putting hot glue
  • make sure you allow the glue to cool down completely and then five minutes more to be sure.

Step 5: Testing for Leaks

Picture of Testing for Leaks

To test the spinner, first make sure the bottle cap can fit on the bottle. If the foam pieces are a bit too big, simply trim them evenly and then attach the spinner to the motor shaft. Then fill up your water bottle with water, leaving some space at the top for air. Twist on the cap from above, and flip the whole thing over. Check for leaks now.

In case you do see a leak, use a marker or a pencil to mark where the leak came from and using the troubleshooting steps in the end of the last step, you can waterproof the spinner again.

In case you do not see any leaks, go ahead and hold a 9 volt battery to the two terminals. The motor should start spinning and you will see a tornado start to form, and finally touch down on the bottle cap. When this happens, the motor might speed up. This is normal and happens because of the air in the tornado. On top of this, you might see smaller bubbles swirling around like debris around the bottom of the tornado, making it seem realistic as well.

Once you have made sure it is waterproof, you can move on the next step.

Otherwise you can try this simple solution I came up with:

  1. Carefully remove the spinner off the shaft
  2. Using the foam plate, make a small foam disk that can fit inside the cap.
  3. Make a tiny hole for the shaft, but make it a little smaller.
  4. Using PVC cement, glue the disk to the bottom of the cap. Don't worry if you get cement on the shaft itself, that is what we want to do.
  5. Turn on the motor a bit. This will move excess cement off the shaft by itself.
  6. Wait for the cement to cure/dry/harden/whatever. In the meantime, you will notice the foam plate dissolving into a sticky gray substance. Once it hardens up, it will become rock solid.
  7. Turn the motor on again and check if it spins.
  8. Place the spinner back on the shaft and check for leaks again.

Step 6: Creating the Base

Picture of Creating the Base

To create the base, start off with a box that has a at least one dimension similar to that of you arduino. We can cut the box to match the other dimension.

As you can see in the first picture, the length of my arduino is the width of the box. Using a pencil and a ruler, mark a line at where the box needs to be cut. It helps to make the line all around the box as it is easier to cut that way. Also, make sure you leave a small amount of room extra while cutting the box - about 1 cm should do.

The second picture is the cut box with the arduino on top. This is the perfect shape I need, except there is a side missing!

Using the leftover cardboard form the other half of the lid of the box, I traced out a side plus about one inch. This one extra inch will be what allows the side to attach securely to the lamp base. To attach it to the lamp base, first make a score along the line where you will bend the side, which should be one inch from the side assuming that's the amount of extra cardboard you cut out. In picture 4, I used a scissor to make the score because I felt an x-acto might cut completely through the cardboard. Remember, the score it only there to help the cardboard bend.

To attach the side panel on, hot glue the extra one inch to the inside bottom of the lamp base, picture five. You can then bend the panel along the score and hot glue the edges of the lamp base to complete the box. Make sure the box's lid can still fit on. (the lid of my box opens outwards, you can see how this works if you look at the fifth picture)

Step 7: Add in the Arduino and Spinner

Picture of Add in the Arduino and Spinner

The first picture shows that my arduino doesn't fit in perfectly into the lamp base. This is a good thing. The reason it doesn't is because the USB and the power components are jutting out. At the back of the lamp base, make a mark with pencil so that you can cut out holes for the arduino. Nothing too fancy, I just eyeballed it (second picture).

Using the x-acto blade, i made the holes and verified that the arduino can fit well in the bottom of the lamp base. As you can see in picture three, the arduino sticks out a little. This will allow us to upload code to the arduino and then simply plug it in from then on to turn on the lamp.

As for the motor and spinner, I found the exact center of the lid and traced out a circle for the bottle cap. Once I cut it out with an x-acto, I hot glued it into place. To make sure that you are not tilting the motor, attach the (empty) bottle to the spinner and make sure it points straight up. Reinforce the spinner assembly with hot glue from the inside as well.

Also, in the fifth picture, you can see how much I ended up trimming the foam rectangles. It may seem that this is too small but hey, it works!

Step 8: Add in the Lights

Picture of Add in the Lights

There are different ways you can add in you lighting. For example, I have traced out a pattern for a hexagonal light pattern on the lid. To poke out the holes, I used a wooden skewer. Just try not to damage the lid too much.

I went ahead and decided that I will add in four LEDs, in a square configuration. I have no idea why I decided on make it diagonal, but it does look kind of cool once the outer finish is completed.

To make things easier for yourself, find the common leg of each led. This is where what we will connect to the 3.3 volt pin on the arduino.

Step 9: Wiring the LEDs

Picture of Wiring the LEDs

Ok I will admit beforehand, the way I wired the LEDs wasn't the best way. First off, they are wired in parallel so there was no point in me attaching the fourth LED back to the first one in the first picture above. I guess I just did it for symmetry but considering this job takes a while, I recommend against it. I actually realized I could have saved myself 1/4 of the effort while I was writing this instructable... oh well.

Anyways, to wire the LEDs in parallel, start off connecting all the negative pins of the led to each other. To do so, all I did was cut a small piece of wire and hook it on to the leg of the LED. After this, I used solder to make it stay in place. After this, I wired the red pin. A trick to find out the red pin is simply wire the only pin on the edge of the LED that is also next to the negative pin. That way even if your LED is glued in place backwards, you can find the red pin. Next connect all the blues, which are the other edge pins, and lastly all the greens.

It is critical that you make sure that none of the wires that shouldn't be touching are away from each other. To make sure of this, I just added hot glue on all the points which I soldered - another bad way to insulate wires but as someone with zero electrical experience, I think I did okay.

Next I soldered the a yellow arduino wire to the negative terminal of a LED. A red wire for a red LED leg, green for green, and blue for blue.

Next attach the yellow wire to the 3.3 volt in on the arduino, the red one to analog pin 2, green on 3, and blue on 4. If you want to test out the lights, you can also do so by plugging in the arduino with a USB type B and then hooking the color you want to test to a ground pin.

You will also want to hook up two wires to the motor. It doesn't have to be arduino wires like the ones I used, but I had them just to see if my arduino can support it with the 5 volt pin, which it can't. No worries, we can fix that on the next step.

Step 10: The Motor Circuit

Picture of The Motor Circuit

Ok so here was where I came across a major problem. The arduino can support the motor, or the LEDs, but not both. To solve this, I will need to make a separate circuit. This also allows us to keep the lights on, keep the tornado on, or both.

If you wanted to, You could use a NPN or a PNP transistor to control the motor, except I don't have experience with transistors. Besides, I was unsure if the small transistor I had would handle the voltage that I will be providing to the motor. To be safe, I wired the motor directly to the 9 volt battery using a slide switch.

To do so, attach on of the wires of the 9 volt battery clip to the slide switch. Then attach one of the wires from the motor to the other side of the slide switch. Finally attach the last motor wire and battery clip wire together.

As you can see in the third picture, the battery and the switch fits perfectly on top of my arduino.

Speaking of which, just make a rectangular hole where you will put the switch and hot glue the switch in place. Make sure the slider can still move once you have secured the switch on the lamp base.

Also, I wanted to be able to adjust the speed of the tornado so I tried wiring in a potentiometer. It didn't really give me enough precision to control the speed of the motor. Perhaps a voltage regulator might work but I didn't have any. Also on top of that, the potentiometer make sparks here and there which created a minute amount of smoke, so that idea was out the window already.

Step 11: Outer Finishing

Picture of Outer Finishing

To make this lamp to aesthetically pleasing, I got some thin wood boards. As you can see in the first picture, they are thin enough to be cut by an x-acto blade, although that is also the reason why I accidentally messed up twice, wasting a total of three boards :(

However, it was definitely worth it since it looks much nicer than cardboard. All I did was eyeball the dimensions and mark a line where I will be cutting the wood. Next, cut the panels out with an x-acto knife and hot glue it in place. Make sure you do not bend the board as you glue it.

If need be, you can also double check measurements with a millimeter ruler before attaching the board. I also used the ruler to make out precise holes for the switch and USB cable on the back panel (last picture).

As for the top, I used the ruler again to cut out a hole that for the LEDs (last two pictures)

I sanded all the rough edges I cut with sandpaper and made the exact edges of the hole for the top panel using a small file, although sandpaper can work here too.

Step 12: Programming the Arduino

At this point, we have a tornado maker. Now to add in lights. I have already written up the code for you! Just copy and paste this into the arduino program software and upload to your arduino:

void setup(){
pinMode(4, OUTPUT); //blue pinMode(3, OUTPUT); //green pinMode(2, OUTPUT); //red } void loop(){

analogWrite(2, 255); analogWrite(3, 255); analogWrite(4, 255); //all off int d = 100; // delay between each color fading in or out. // This delay times 2.04 is the exact number // of seconds one full cycle will take. for(int a=255; a>0; a--){ analogWrite(2, a); delay(d); }//fade in red for(int a=255; a>0; a--){ analogWrite(3, a); delay(d); }//fade in green for(int a=0; a<255; a++){ analogWrite(2, a); delay(d); }//fade out red for(int a=255; a>0; a--){ analogWrite(4, a); delay(d); }//fade in blue for(int a=0; a<255; a++){ analogWrite(3, a); delay(d); }//fade out green for(int a=255; a>0; a--){ analogWrite(2, a); delay(d); }//fade in red for(int a=255; a>0; a--){ analogWrite(3, a); delay(d); }//fade in green for(int a=0; a<255; a++){ analogWrite(2, a); analogWrite(3, a); analogWrite(4, a); delay(d); }//fade out all }

The code above is for common anode LEDs. If you want to change up the program, such as changing how fast the colors cycle, you can edit the code easily. I have added in comments that should make it easy for a novice to programming to understand the basic function of my program. Also, above the code looks kinda messy but if you copy and paste it into the arduino software, it will look normal.

Step 13: ENJOY!!!

Picture of ENJOY!!!

Add water into the bottle, plug in the arduino, place on a corner and enjoy!

The pictures above shows that the arduino cycles through the colors Red, Orange, Yellow, Green, Blue, Purple, White, and turns off momentarily before going back to Red. See all the pictures there... they look really nice. (sorry the white one is blurry though)

I did realize that my motor leaked water very slowly, for which I'm going to try and seal with silicon. If I make another version, I might find a way to power the motor through the arduino or a separate USB cable- which you can do with this version too if you want. Just find a spare USB cable, cut the outer covering, and wire the red and black wires into the circuit as if they were the two terminals of the battery.

In the meantime try out these other ideas I had:

  • Using dry ice to make a tornado out of fog
  • Use Tonic water and UV LEDs for a glowing effect.
  • Take out the spinner and just keep it a nightlight!
  • Take out the lights and keep it a tornado!

Anyways, this build was a very fun one and I will try to make a better version if you guys enjoyed this. This instructable was originally meant for the make it glow contest, but I thought it would fit on arduino and the FSL contest too - the arduino contest since it uses arduino, and the Full Spectrum Laser contest because I could have used a hobby laser to make my lamp base. This shows that I could put a Laser cutter or a 3D printer to great use. If you agree or simply like this project, please vote for me and give me any feedback in the comments below. Thanks for all you time!

Comments

goroberts56. (author)2016-09-15

Here's another thought. Since the air is inside the bottle/jar (and needed for the tornado effect) will warm and cool, pressure will increase/decrease which depending how this is built could result in some leakage. To help take some of that pressure, insert some small, thin-walled plastic balls inside. Before inserting them however, make a pin hole to equalize the pressure inside the ball to the pressure outside. Thin walled plastic is best because it will expand and contract to the air (in the bottle/jar) around it. Water will not compress so it's important these are air tight to stay afloat. Seal the holes in the balls with a glue gun dab, silicone or whatever as long as it isn't water soluble. Once everything is all sealed up, they will also bring some added visual effect to the tornado but unseen to the viewer be providing some equalization as well.

Excellent build SidA2, great idea!

SidA2 (author)goroberts56.2016-09-16

That is an interesting pointer. I never actually considered how the air would warm and cool and affect the pressure inside the bottle. The outside temperature could also have a play in it.

In the design, after a bit of wear (like a month or so) the cap does leak a teensy bit and I simply changed the cap, but adding a O ring would probably help too. My only other thought on your idea is, since the bottle is thin walled plastic as well, wouldn't it just expand and contract as needed? Or even if it doesn't, would the plastic balls change shape before water begins to leak out.

A simple solution would be to add air vents in the bottle, but because of the water inside it's probably not a good idea.

Thanks for the feedback, I appreciate it! :D

asharma173 (author)2016-01-30

Other alternate of arduino.?.... Not available in my city

SidA2 (author)asharma1732016-01-31

Any micro controller would do, although you will need to know the programming for it. A raspberry pi might work as well.

Pretty much anything that will be able to control an LED.

DEEJAY642 (author)2016-01-25

this is soooo cool im gonna do and make this as soon as possible

SidA2 (author)DEEJAY6422016-01-26

Let me know how it turns out!

ThomasK19 (author)2016-01-22

Rather than penetrating the cup with the motor axis I guess it would be better to have a magnet rotating outside and placing a coated magnet inside the bottle. This is actually how it's done in chemical devices.

SidA2 (author)ThomasK192016-01-22

I had thought of that idea except with the motor spinning at high speeds and the resistance the water gives, I don't think it would be effective.

ThomasK19 (author)SidA22016-01-23

For sure it will not be that effective. You will likely need to slowly turn up the motor speed. But this way the bottle will be water tight.

SidA2 (author)ThomasK192016-01-23

That might work. I have a few neodymium magnets that I can try and use. My concern is if the magnets will fit inside the lid though. Maybe a bigger bottle would allow for that?

ThomasK19 (author)SidA22016-01-23

You would not need to have the magnet in the cap. If you have a bottle with round bottom you can simply sink it inside.

SidA2 (author)ThomasK192016-01-25

Having the water bottle be airtight could also allow the bottle to be removed from the base easier. For mine I need to flip the bottle over before removing the lid so that water doesn't spill everywhere. I will make sure I experiment around with magnets on a second version! Thanks for pointing that out.

SidA2 (author)ThomasK192016-01-22

It might be possible with neodymium magnets and a ball bearing though... I'll try and see if that can work.

mick__326 (author)2016-01-24

Nice but the water will leak!!!

SidA2 (author)mick__3262016-01-25

I did have a little water leak, but not through the lid I sealed. The mini- motor I had was kind of slow so I had taken it apart to add in WD-40. I don't think I put it back together as tight as the manufacturer did though.

Heyup (author)2016-01-24

Nice instructable Sid well done..John :) .........

SidA2 (author)Heyup2016-01-25

Thanks!

p8662 (author)2016-01-23

perhaps adding glitter or something that float in there would be nice touch

SidA2 (author)p86622016-01-24

Yes it would. If you add in a pinch of mica powder then it makes the whole things look pearlacent. As long as the things you add in aren't big enough to damage the foam spinner, it's fine

Dashing Rainbow Dash (author)2016-01-22

Maybe instead of sealing the motor, just use magnetic coupling instead.

tomatoskins (author)2016-01-22

I started a project like this about a year ago. So great!

SidA2 (author)tomatoskins2016-01-22

It looks really nice in person actually.

About This Instructable

14,826views

222favorites

License:

Bio: I love to build things that look cool in general or have a nice use to it... pretty much anything really then. If you are ... More »
More by SidA2:Snowflake SpinnerSnowflake SpinnerAwesome Rainbow Tornado Lamp 2
Add instructable to: