Pengendali Relay via Infrared Arduino


Infrared (IR) detektor atau sensor infra merah adalah komponen elektronika yang dapat mengidentifikasi cahaya infra merah (infra red, IR). Sensor infra merah atau detektor infra merah saat ini ada yang dibuat khusus dalam satu modul dan dinamakan sebagai IR Detector Photomodules. IR Detector Photomodules merupakan sebuah chip detektor inframerah digital yang di dalamnya terdapat fotodiode dan penguat (amplifier).
Bentuk dan Konfigurasi Pin IR Detector Photomodules TSOP


IR

Konfigurasi pin infra red (IR) receiver atau penerima infra merah tipe TSOP adalah output (Out), Vs (VCC +5 volt DC), dan Ground (GND). Sensor penerima inframerah TSOP ( TEMIC Semiconductors Optoelectronics Photomodules ) memiliki fitur-fitur utama yaitu fotodiode dan penguat dalam satu chip, keluaran aktif rendah, konsumsi daya rendah, dan mendukung logika TTL dan CMOS. Detektor infra merah atau sensor inframerah jenis TSOP (TEMIC Semiconductors Optoelectronics Photomodules) adalah penerima inframerah yang telah dilengkapi filter frekuensi 30-56 kHz, sehingga penerima langsung mengubah frekuensi tersebut menjadi logika 0 dan 1. Jika detektor inframerah (TSOP) menerima frekuensi carrier tersebut, maka pin keluarannya akan berlogika 0. Sebaliknya, jika tidak menerima frekuensi carrier tersebut, maka keluaran detektor inframerah (TSOP) akan berlogika 1.
SISTEM SENSOR INFRARED
Sistem sensor infra merah pada dasarnya menggunakan infra merah sebagai media untuk komunikasi data antara receiver dan transmitter. Sistem akan bekerja jika sinar infra merah yang dipancarkan terhalang oleh suatu benda yang mengakibatkan sinar infra merah tersebut tidak dapat terdeteksi oleh penerima. Keuntungan atau manfaat dari sistem ini dalam penerapannya antara lain sebagai pengendali jarak jauh, alarm keamanan, otomatisasi pada sistem. Pemancar pada sistem ini tediri atas sebuah LED infra merah yang dilengkapi dengan rangkaian yang mampu membangkitkan data untuk dikirimkan melalui sinar infra merah, sedangkan pada bagian penerima biasanya terdapat foto transistor, fotodioda, atau inframerah modul yang berfungsi untuk menerima sinar inframerah yang dikirimkan oleh pemancar.
LED Infra Merah
LED adalah suatu bahan semikonduktor yang memancarkan cahaya monokromatik yang tidak koheren ketika diberi tegangan maju. Pengembangan LED dimulai dengan alat inframerah dibuat dengan galliumarsenide. Cahaya infra merah pada dasarnya adalah radiasi elektromagnetik dari panjang gelombang yang lebih panjang dari cahaya tampak, tetapi lebih pendek dari radiasi gelombang radio, dengan kata lain inframerah merupakan warna dari cahaya tampak dengan gelombang terpanjang, yaitu sekitar 700 nm sampai 1 mm.

     Bill Of Material


Check Data Remote..!!



Program Utama

=================================Source Code================================

#include "IRremote.h"

int RECV_PIN = 12;

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, HEX);
    irrecv.resume(); // Receive the next value
  }
}
Program Utama..!!!



Program Utama

=================================Source Code================================

#include "IRremote.h"
int RECV_PIN = 12;
String IRButton1 = "1FE48B7";
String IRButton2 = "1FE58A7";
String IRButton3 = "1FE7887";
String IRButton4 = "1FE40BF";
String IRButton5 = "1FE807F";
String IRButton6 = "1FEC03F";
String IRButton7 = "1FE20DF";
String IRButton8 = "1FE609F";
String IRButton9 = "FF906F";
const int Relay1 = 2;
const int Relay2 = 3;
const int Relay3 = 4;
const int Relay4 = 5;
const int TR1 = 6;
const int TR2 = 7;
const int TR3 = 8;
const int TR4 = 9;

IRrecv irrecv(RECV_PIN);

decode_results results;
String BUTTONPRESSED;
int button1 = 0;
int button2 = 0;
int button3 = 0;
int button4 = 0;
int button5 = 0;
int button6 = 0;
int button7 = 0;
int button8 = 0;



void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
  pinMode(Relay1, OUTPUT);
  pinMode(Relay2, OUTPUT);
  pinMode(Relay3, OUTPUT);
  pinMode(Relay4, OUTPUT);
  pinMode(TR1, OUTPUT);
  pinMode(TR2, OUTPUT);
  pinMode(TR3, OUTPUT);
  pinMode(TR4, OUTPUT);

}

void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(results.value, HEX);
    BUTTONPRESSED = String(results.value, HEX);
    BUTTONPRESSED.toUpperCase();
    Serial.print("BUTTONPRESSED ");
    Serial.println(BUTTONPRESSED);
    //delay(1000);

    //button 1
    if (BUTTONPRESSED == IRButton1) {
      if (button1 == 0) {
        button1 = 1;
      }
      else
        button1 = 0;
      if (button1 == 1) {
        digitalWrite(Relay1, HIGH);
      }
      else
        digitalWrite(Relay1, LOW);
    }

    //button 2
    if (BUTTONPRESSED == IRButton2) {
      if (button2 == 0) {
        button2 = 1;
      }
      else
        button2 = 0;
      if (button2 == 1) {
        digitalWrite(Relay2, HIGH);
      }
      else
        digitalWrite(Relay2, LOW);
    }

    //button 3
    if (BUTTONPRESSED == IRButton3) {
      if (button3 == 0) {
        button3 = 1;
      }
      else
        button3 = 0;
      if (button3 == 1) {
        digitalWrite(Relay3, HIGH);
      }
      else
        digitalWrite(Relay3, LOW);
    }

    //button 4
    if (BUTTONPRESSED == IRButton4) {
      if (button4 == 0) {
        button4 = 1;
      }
      else
        button4 = 0;
      if (button4 == 1) {
        digitalWrite(Relay4, HIGH);
      }
      else
        digitalWrite(Relay4, LOW);
    }

    //button 5
    if (BUTTONPRESSED == IRButton5) {
      if (button5 == 0) {
        button5 = 1;
      }
      else
        button5 = 0;
      if (button5 == 1) {
        digitalWrite(TR1, HIGH);
      }
      else
        digitalWrite(TR1, LOW);
    }

    //button 6
    if (BUTTONPRESSED == IRButton6) {
      if (button6 == 0) {
        button6 = 1;
      }
      else
        button6 = 0;
      if (button6 == 1) {
        digitalWrite(TR2, HIGH);
      }
      else
        digitalWrite(TR2, LOW);
    }

    //button 7
    if (BUTTONPRESSED == IRButton7) {
      if (button7 == 0) {
        button7 = 1;
      }
      else
        button7 = 0;
      if (button7 == 1) {
        digitalWrite(TR3, HIGH);
      }
      else
        digitalWrite(TR3, LOW);
    }

    //button 8
    if (BUTTONPRESSED == IRButton8) {
      if (button8 == 0) {
        button8 = 1;
      }
      else
        button8 = 0;
      if (button8 == 1) {
        digitalWrite(TR4, HIGH);
      }
      else
        digitalWrite(TR4, LOW);
    }
   
    irrecv.resume(); // Receive the next value
  }

}



Produk..!!


Download

Video..!!!

No comments

Dicky B_Mz. Powered by Blogger.