Skip to main content

Featured Post

Kerala's First 3D Printed Building

Created as a showcase project, AMAZE-28, the single-room summer house, was successfully constructed within 28 days on the grounds of the Kerala State Nirmithi Kendra. The 3D-printed building at the Kerala State Nirmithi Kendra in Thiruvananthapuram. (Photo: Shekunj)  The inauguration of Kerala's inaugural 3D-printed structure, a 380-square-foot single-room summer house, is scheduled to take place on October 10 at the Kerala State Nirmithi Kendra (Kesnik) campus located in PTP Nagar, Thiruvananthapuram.  Conceived as a showcase initiative, the summer house named AMAZE-28 was successfully finished within a mere 28 days. This impressive project was executed by Tvasta, a construction technology startup based in Chennai, founded by alumni of IIT-Madras, who have entered into a memorandum of understanding (MoU) with Kesnik.  AMAZE-28 is perched upon a concrete foundation atop a gentle elevation within the Kesnik campus. Febi Varghese, the Director and Chief Executive Officer of...

Creating different colours of light using RGB LED and Arduino

Hi Techies !!!!!!!!
Today we are going to make a very interesting project, that is creating any color of light with Red, Green and Blue LED (RGB). Here we will control the brightness of each color with Arduino, to create the desired color. Let's start the collecting the components which we will need for this project.

Circuit diagram or connections.


COMPONENTS NEEDED -

Components used.

  1. Solderless breadboard (1)
  2. Arduino UNO (1)
  3. RGB LED 5mm (1) / Red, Green and Blue LED 5mm (1 of each color)
  4. Power source 5V (1)
  5. Jumper Wires
  6. 1K ohm Resistor (1/3)

 Now we start to make circuit according to the pictures given below.

CIRCUIT -

STEP - 1
STEP - 2

In above circuit we have connected -
ANODE of RGB LED -
  • Red - to pin 9
  • Green - to pin 10
  • Blue  - to pin 11
CATHODE of RGB LED - to GND through 1K ohm resistor.
If you do not have RGB LED then you can use Red, Green and Blue LEDs (5mm) separately. Their connection is shown below.
 
 
Alternate Way to Make RGB LED
 
Now we have completed our circuit. Now let's focus on programming part of this project.

PROGRAMMING -


You can find the link to download the complete code at the end of discussion, but right now we are going to discuss the programming of our project.

--------------------------------------------------------------------------------------------------------------------------
int redLed = 9;
int greenLed = 10;
int blueLed = 11;

void setup()
{
  pinMode(redLed, OUTPUT);
  pinMode(greenLed, OUTPUT);
  pinMode(blueLed, OUTPUT);
}
--------------------------------------------------------------------------------------------------------------------------
In the above set of lines we just  set the pin for red, green and yellow LEDs. And also defined those pin of arduino with which our LEDs are connected (that are pin 9, 10 and 11) as OUTPUT pin. We must notice here that pin 9, 10 and 11 of arduino are PWM pins. Why we are choosing PWM ??? Let's find the answer of this question ahead.

Now we define a function -     void creatColor(int red, int green, int blue)
--------------------------------------------------------------------------------------------------------------------------
void creatColor(int red, int green, int blue)
{
  analogWrite(redLed, red);
  analogWrite(greenLed, green);
  analogWrite(blueLed, blue);

}
--------------------------------------------------------------------------------------------------------------------------
Here we defined a function which take integer values of color intensity of each color. Since arduino only no digital values (HIGH or LOW) and intensity of color may very from off to full brightness, so how we would tell to arduino represent intermediate brightness of LEDs ?? To overcome this problem we are using PWM. With the help of PWM we can represent analog value into digital form. here - 
OFF = 0
Full Brightness = 255
Intensity between off and full brightness will having the value between 0 to 255.
So with the help of analogWrite() we can assign the various intensties to the LEDs
--------------------------------------------------------------------------------------------------------------------------

void loop()
{
  creatColor(255, 0, 0);     //red
  delay(500);
  creatColor(0, 255, 0);      // green
  delay(500);
  creatColor(0, 0, 255);        // blue
  delay(500);
  creatColor(255, 255, 0);        // yellow
  delay(500);
  creatColor(80, 0, 80);      // purple
  delay(500);
  creatColor(0, 255, 255);     // aqua
  delay(500);
  creatColor(255, 255, 255); // white
  delay(500);

 }
--------------------------------------------------------------------------------------------------------------------------
Above part is the main loop of the code, which will run again and again. Here we used  our predefined function - creatColor(int red, int green, int blue).
This function will set the values of intensity of each color. By mixing up of different intensities of the three colors, new colors of light will form.



To download the complete code - CLICK HERE

SIMULATION -

Our task has completed, now let's see the working of our project.

To watch the simulation of complete project - CLICK HERE

 




Comments

Popular posts from this blog

Controlling LEDs over WiFi using NodeMCU and Blynk App.

This article is the base on the Internet of things ( IoT ) . IoT describes the network of physical objects—“things” or objects—that are embedded with sensors, software, and other technologies for the purpose of connecting and exchanging data with other devices and systems over the Internet. In this article 3 LEDs will be controlled by an android application (made using Blynk) over a wifi connection. How to use NodeMCU with Blynk  If you want to start learn the Internet of Things (IoT) concept, then controlling a LED over the  internet is the " Hello World!" of the IoT journey. Performing the " Hello World" task will be easy using NodeMCU micro-controller as the first client and Blynk as the 'broker' or server and Blynk android application as the second client. Now communication between two clients will happen through broker over the internet. Now lets, make this happen.  Components Required For this activity we will need following components: Nod...

How to Know the NodeMCU IP Address for Your Next IoT Project

  NodeMCU IP Address: The NodeMCU is a popular development board for IoT projects. It’s small, affordable, and comes with built-in Wi-Fi connectivity, making it the perfect choice for creating connected devices. But before you can start building your NodeMCU projects, you need to know the IP address of your device. This IP address is essential for communicating with the NodeMCU from another device, such as a computer or smartphone. In this article, we’ll show you how to find the NodeMCU IP address, so you can get started with your next IoT project. Method 1: To Know the NodeMCU IP Address One of the easiest ways to find the NodeMCU IP address is by using the serial monitor in the Arduino IDE. First, connect your NodeMCU board to your computer using a micro-USB cable. Then, upload the following code to the NodeMCU: #include <ESP8266WiFi.h> void setup() { Serial.begin(115200); Serial.println(); Serial.print("Connecting to "); Serial.println(...

Blinking of LED Using Arduino UNO

Hi !!!! Here we are going to learn very very simple use of Arduino, that is blinking of a LED. Here we will do simplest project using Arduino. So, here we go.... COMPONENTS REQUIRED - Bread Board Arduino UNO Jumper Wires Power Source (5V) / Battery Resistor (1K) CIRCUIT PREPA RATION - Take bread board and Arduino. Connect the +5V from Arduino to the +Ve line on Bread Board and GROUND from Arduino to -Ve line on bread board. Red Wire     : +5 V Black Wire  : GROUND     Now put a LED on bread board. Connect the Anode (+ / Longer terminal) of led to the pin 13 of Arduino. Connect Cathode (- / Shorter terminal)  to 1K ohm resistor and connect another terminal of resistor to the GND on breadboard.   Now our circuit is ready to work.  Our next aim is to build the code. Let's make our code. CODE -     To download the complete code -  CLICK HERE -----------------------------...