IR Remote Controlled Color Changing Cloud (Arduino)

89,979

671

59

Introduction: IR Remote Controlled Color Changing Cloud (Arduino)

CLICK HERE FOR THE UPDATED INSTRUCTABLE: https://www.instructables.com/id/IR-Rainbow-Cloud-ver-1/

This is a project I created for a Digital Art and Installations class.   The class covered basics of several types of programming, and our projects were meant to be an interactive cross between art and technology.  This was a fun and easy project with really impressive results (if I do say so myself) .  The same technology could be applied to many different types of types of projects.  The technology is very easily altered as well, for example, I was considering using a distance sensor or a light sensor.  I had everything on hand, so it cost nothing. This is my first instructable :] Sorry the photos don't really do it justice! Check out the video to see it in action:


Supplies:
    -Light weight, transparent container. example
    -Mesh Spackle tape. example 
    -Pollyfill stuffing
    -Fishing line or thread to hang
    -Arduino
    -LEDs, Wires, Resistors, Infrared sensor and Remote
    -Battery or power source for arduino
    -Breadboard or blank circuit board, I used this one from Radio Shack.


Tools:
    -Hot Glue
    -Soldering iron (optional)
    -Wire cutter, strippers

Step 1: Circuit and Code

Install the IR remote library
http://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html

Set up the bread board with the attached schematic.
2 red leds to pin 2,
4 yellow leds to pin 3,
1 green to pin 4,
1 blue to pin 5,
1 pink/purple to pin 6,
2 white to pin 7,
1 RGB flashing to pin 8 (I had to use a resistor to dim it)

The reason I used multiple leds in parallel was so that the light would be dimmer from each individual one and be more defused

Connect the left leg on the IR sensor to 11, middle to ground, and right to 5 volts

Use the IRrecv Demo included with the examples to "configure" your remote. To do this run the sketch and open the serial monitor. Press buttons on the remote and note what numbers apear.

Open the attached IR Rainbow code and scroll down to each case statement   Change the number after the word case to match the button you want to use. 

My code has 
sun (white and yellow)
rain (blue and white)
lightning (blue and purple with flashing white)
??? (RGB flashing led)
stop
and also on/off for each individual color.

Step 2: The Housing

I didnt take pictures while building but it was very easy.

Take the plastic container; something light weight, and clear. Mine was from spinach. Like this one.
Attach fishing line or thread to the corners of main part of the container, not to the lid. Secure them in the middle so that it hangs evenly. 

With the lid off, hang the container at a comfortable height to work on it.  Attach the mesh tape in arches to help disguise the squareness of the box.  To do this, cut lengths between about 6 inches and a foot, hot glue down one end, and then the other making sure the tape is arching away from the container.  Creating an X with the arches helps to give more support. (in the picture my cloud was starting to look a bit square-ish from being squished while transporting it. But before it was much puffier looking)

Next, hot glue puffs of poly fill around the whole container. 

Next, Poke wholes in the lid of the box, and use twist ties, wire scraps or cable ties to secure the breadboard or circuit board and arduino to the lid of the container.  If you used a battery secure that down as well, if you are using a power cord, poke a whole in the top of the container in the middle and feed it through.  

Flip the lid over and cover it and create puffs on top the same way you did on the outside of the container.

Step 3: Hang and Enjoy!

Put the lid on, and enjoy the light show!
In the future, there are some changes I would like the make.
- Replace power cord with a battery
- Build my own circuit board to replace the arduino
- Sound effects? perhaps recorded, or for example a small shaker for rain, etc
- Add fading. For some reason, as soon as I added fading the lights flashed instead (even when using a ~ pin). I would have liked "sun" to be fading between yellow and white, same for blue and white with "rain." I would have also liked to fade between functions.

Questions, Comments, Feedback welcome :]
Have fun with it!

Instructables Design Competition

Finalist in the
Instructables Design Competition

Make It Glow

Second Prize in the
Make It Glow

UP! Contest

Participated in the
UP! Contest

Holiday Gifts Contest

Participated in the
Holiday Gifts Contest

3 People Made This Project!

Recommendations

  • Big and Small Contest

    Big and Small Contest
  • Make It Bridge

    Make It Bridge
  • For the Home Contest

    For the Home Contest

59 Comments

0
hiedyxluvx
hiedyxluvx

Question 2 years ago on Introduction

if we don't have the IR remote, then we cannot do the project right?

0
BobD152
BobD152

3 years ago

Reason for flashing has to do with how excited the led becomes. As you dim and decrease power not like a light bulb, LEDs will get excited and fire at different speeds hince the flashing effect.

1
nightmarexx009
nightmarexx009

6 years ago

ALL HAIL THE MIGHTY GLOW CLOUD

0
dablondeemu
dablondeemu

Reply 3 years ago

Do not look directly at the dog park.

0
OhYeahThatGuy81
OhYeahThatGuy81

7 years ago on Step 3

Wow, this is amazing! I really love how it looks!

Perhaps you can improve it with sound and light effects (like lightning in a cloud + thunderstorm sound).

0
dablondeemu
dablondeemu

Reply 7 years ago on Step 3

I always thought it would be fun to add sound to this, maybe I will revisit it someday

0
sinnaevesimon

Nice 'ible :)

I only 've got a question... Could you change the pin number of your IR reciever?

I'm new in the big world of arduino ^^

sorry for my poor english.

0
dablondeemu
dablondeemu

Reply 8 years ago on Introduction

Yea, was aware of this, but needed it to be as bright as possible because it was being displayed in a lit room.

The updated version has proper resistors
https://www.instructables.com/id/IR-Rainbow-Cloud-ver-1/

0
lornajade1
lornajade1

9 years ago on Introduction

Hi, this is simply amazing ! I am just wondering about the script, i would like to try recreate this but wiothout using a remote, possible using LDRs to contol when the lighting changes, I am a rooky at this kind of stuff and so was just looking for any advice?

Thank you in advance

0
dablondeemu
dablondeemu

Reply 8 years ago on Introduction

Hi, Im sorry I missed this, Im sure it would be possable. I considered using them, but was afraid it wouldnt be reliable due to the light coming from the cloud itself.

0
rhonardoost
rhonardoost

10 years ago on Introduction

Also, when I use the IRrec demo, it gives me different numbers (like 4885BBD6 and 890). I assume this isn't supposed to happen.

0
dablondeemu
dablondeemu

Reply 9 years ago on Introduction

Also, most remotes will give one code when the button is pressed, then another to when the button is being held. Is that what is happening?

0
dudelectric
dudelectric

Reply 9 years ago on Introduction

i really dig this awsome project,
NEC protocol (results.value):
1=50167935
2=50151615
3=50184255
4=50143455
5=50176095
6=50159775
7=50192415
8=50139375
9=50172015
0=50135295

:-)

0
romwhite
romwhite

10 years ago on Introduction

Well removing the second #include line allowed it to compile and upload correctly. I can tell the board is receiving signals from the remote and using a library from Adafruit it will decode the signals for each button I press but nothing is lighting up. The remote I'm using is based on NEC codes (https://www.adafruit.com/product/389).

0
dablondeemu
dablondeemu

Reply 10 years ago on Introduction

Im not sure what NEC is. I was using DEC if that helps? Sorry, I dont know that much about coding. Send me your code and Ill try to take a look at it.

0
dudelectric
dudelectric

Reply 9 years ago on Introduction

@romwhite im using the same NEC protocol remote.you can test the receiving signal using this sketch, just press 2 or 3 button to togle the pin13 Led on your Arduino:



#include

int RECV_PIN = 11;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}

void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, DEC);
irrecv.resume(); // Receive the next value
}
switch(results.value){


case 50151615:
digitalWrite (13, HIGH);
break;
//red off
case 50184255:
digitalWrite (13, LOW);
break;


}
}

@dablondeemu this is great instructables for basic IR remote bro!good work