Electronic Chameleon

by Vishwas Navada in Circuits > Arduino

6367 Views, 55 Favorites, 0 Comments

Electronic Chameleon

Screenshot_20180405-005448.png

Ever wondered how the chameleon changes its colour through the changes in environmental colours?

There's something called Melanocyte Stimulating Hormone or MSH. If you want to dig more into this please follow this Link. The stories apart, I wanted to build ambient lighting system or something like the chameleon. This looks cool and also it helps eyes. I had neopixel LED strip and a spare colour sensor. So I just built my Chameleon (Electronic) using Arduino (Microcontroller for everyone) as the brain.

Things You Will Need

temp_3231177895833648652.jpg

1. Arduino Nano (Any Arduino is fine) Amazon Link for Arduino Uno

2. Colour Sensor TCS3200 Amazon Link for Colour Sensor

3. Neopixel LED Strip Amazon Link for Neo Pixel LED

4. Jumper wires and power source

Brief Intro to Parts

temp_8973343465401212889.jpg
temp_4437746624269612929.jpg

Arduino: Microcontroller which gets the RGB colour sensor data from TCS 3200 and generates the respective PWM signal to control the colour of Neopixel LED Lights.

TCS 3200 Colour Sensor: This sensor contains an array of photodiodes which respond differently to different colours hence it gives out the colour of light falling on the photodiode array. This data can be used to replicate those colours.

Neo Pixel LED: This can generate a lot of colours based on the signal given to it. The name of the IC is WS2812B.

Connecting Everything

temp_1264791352297458388.jpg
Chameleon.jpg

Connection - Reaction..
The connection has to be done in such a way that Arduino has to read the data from 4 different photodiodes in the TCS 3200.
And reflect back those value as data to neopixel LEDs to replicate the same colour.
4 photodiodes on the sensors are sensitive to 4 different colour combinations. These produce current signals which are converted into frequency signals i.e I to F conversion
This is read by Arduino pins and then given as input to the Neopixel LEDs.
I don't want to go deep into the working of sensors. This can be understood by referring the data sheets of TCS 3200 sensor.

Coding

Capture.PNG

The code for this project is here.

You can download this and unzip the file to find necessary libraries and code. Please put the libraries into the libraries folder of Arduino IDE.
The compile the code and upload it.
The code is self-explanatory. I improve my coding by looking at others codes. Any suggestions to optimise the code are always welcome.

Viola... It Works

temp_7378950005009397142.jpg

Here it works.
It's now replicating any colours you are showing it to the sensor. Good applications are
1. Ambient lighting for TV's and PC's
this reduces eye strain as it mimics maximum colour in your screen.
2. Room lighting
3. Mood lighting

4. You can 3D print a chameleon and place all electronics to make it as a real 3D printed chameleon.


Please don't forget to vote me in contests.

Working Video

DIY Electronic chameleon

Here's a working video.