Adersh B
Published © GPL3+

IR Home Automation With Intelligent Lighting

With help of this device we can control multiple household appliances with help of an IR remote.

IntermediateShowcase (no instructions)12 hours5,056
IR Home Automation With Intelligent Lighting

Things used in this project

Story

Read more

Schematics

CIRCUIT DIAGRAM

COMPONENTS:
Arduino UNO × 1
16×2 LCD display × 1
5V Relay × 3
IC ULN2003 × 1
TSOP1738 (IR RECEIVER) × 1
10K POT × 1
JUMPERS, BATTERY, AC SOURCE... so on.

Code

Arduino Code

C/C++
#include<LiquidCrystal.h>
#include <IRremote.h>
const int RECV_PIN=14;
IRrecv irrecv(RECV_PIN);
decode_results results;
#include<LiquidCrystal.h>
LiquidCrystal lcd(6,7,8,9,10,11);
#define Fan 3
#define auto 2
#define Light 4
#define TV 5
int a = 12;
//const int LED=13;
int val=0;
int i=0,j=0,k=0,p=0,q=0,r=0,n=0;
void setup()
{
  Serial.begin(9600);
  lcd.begin(16,2);
  pinMode(Fan, OUTPUT);
  pinMode(Light, OUTPUT);
  pinMode(TV, OUTPUT);
  pinMode(auto, OUTPUT);
  pinMode(a, OUTPUT);
  //pinMode(LED,OUTPUT);
  //digitalWrite(13,HIGH);
  lcd.print("Remote Controlled"); 
  lcd.setCursor(0,1);
  lcd.print("Home Automation"); 
  delay(2000);
  lcd.clear();
  lcd.print("INTRODUCTION TO");
  lcd.setCursor(0,1);
  lcd.print("SUSTAINABLE ENGG");
  delay(2500);
  lcd.clear();
  lcd.print("**** ADERSH ****");
  lcd.setCursor(0,1);
  delay(2500);
  lcd.print("System Ready...");
  delay(1000);
  irrecv.enableIRIn(); // Start the receiver
  irrecv.blink13(true);
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print("Fan   Light  LED ");
  lcd.setCursor(0,1);
  lcd.print("OFF   OFF    OFF");
}
void loop() 
{
   
   val= analogRead(1);
  //Serial.println(results.value,DEC);
  
  if (irrecv.decode(&results)) 
   {
     Serial.println(val);
    
   Serial.println(results.value,DEC);
     delay(100);
     lcd.setCursor(0,0);
     lcd.print("Fan   Light  LED"); 
     if(results.value==2640478335)
     {
        i++;
        int x=i%2;
        digitalWrite(Fan, x);
        lcd.setCursor(0,1);
        if(x)
        lcd.print("ON  ");
        else
        lcd.print("OFF ");
       // delay(200);
     }
    
     else if(results.value==2640462015)    //  key 1 
     {
        j++;
        int x=j%2;
        digitalWrite(Light, x);
        lcd.setCursor(6,1);
        if(x)
        lcd.print("ON   ");
        else
        lcd.print("OFF  ");
       // delay(200);
     }
   
    else if(results.value==2640494655)
     {
        k++;
        //int x=k%2;
       // int h=(k/3);
        //Serial.println(k);
       // digitalWrite(TV, x);
        lcd.setCursor(12,1);
        if(k==1)
        {
          lcd.print(" ON ");
          digitalWrite(TV, k);
        }
        else if(k==2)
        {
          
          lcd.print("AUTO");
          digitalWrite(a, HIGH);
          digitalWrite(auto, 1);
          digitalWrite(TV, 0);
          
          
         
         //Serial.println(val);
          }
          
          
        
        else if(k==3)
        {
          lcd.print(" OFF");
          k=0;
          digitalWrite(auto, k);
          digitalWrite(a, 0);
          digitalWrite(TV, k);
          
        }
       
           
       
       // delay(200);
     }
       
       
       else if(results.value==2640474255)
       {
        n++;
        int x=n%2;
        digitalWrite(TV, x);
        digitalWrite(Fan,x);
        digitalWrite(Light,x);
        lcd.setCursor(0,1);
        if(x)
        lcd.print("ON     ON    ON ");
        else
        lcd.print("OFF    OFF   OFF");
        //delay(200);
       }
       
       /*else if(results.value==2640474255)
       {
        p++;
        int x=k%2;
        //digitalWrite(TV, x);
        lcd.setCursor(13,1);
        if(x)
        lcd.print("AUTO");
        else
        lcd.print("OFF");
       }*/
     irrecv.resume(); // Receive the next value
     //delay(100);
   }
}

Credits

Adersh B

Adersh B

1 project • 8 followers
An Engineer unrestricted by trade. Makers are meant be "Jack of all".

Comments