TV Kumandası ile Lamba Kontrolü Arduino Project


13.05.2019 14:14:40 Elektronik Projeler Bilgi Yolunda

Klima ,Tv kumandanız ile lambanızı,perdenizi vb. nesneleri kontrol etmemiz mümkün.Bu projemizi IR alıcı ile gerçekleştireceğiz.

IR Sinyal okuyucu Sensor kumandaların tuşları için atanmış olan sinyali hexadecimal olarak okur ve okuduğu değere göre basılan tuşları tanımamızı sağlar.

1-Devre Elemanları

-Arduino(Tercihen uno,nano)

-IR Sensor

-Tv,klima vb. kumandası

-Breadboard

-Röle

-Duy

-Lamba

-Elektrik kablosu

-Jumper kablolar

2-Kumandaların Kodunu Çözme

Kumandanın her bir tuşuna atanan IR kodlarını çözeceğiz.

IR alıcısını aşağıdaki şemalara göre bağlayın.

IR alıcısını kontrol etmek için, IRremote Library'yi   Arduino IDE'ye kurmanız gerekir . 

  1. IRremote kütüphanesini indirmek için buraya tıklayın . İndirmelerinizde bir .zip klasörü olmalıdır
  2.  .Zip klasörünü açın ve IRremote-master  klasörünü edinmelisiniz.
  3. Klasörünüzü IRremote olarak yeniden adlandırın İrRemote-Master 
  4. IRremote  klasörünü Arduino IDE kurulum kütüphaneleri klasörünüze taşıyın 

Daha sonra aşağıdaki kodu arduinomuza yüklüyoruz.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
#include <IRremote.h>
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, HEX);
    irrecv.resume();
  }
  delay(100);
}

Kodumuzu arduinomuza yükleyip seri monitörü açıyoruz. Kumandamızı IR alıcısına tutup kullanmak istediğimiz tuşların kodunu çözüyoruz.

Hexadecimal olarak gelen kodu decimal e çevirmemiz gerekiyor.

Bunun için web sitesine gidiniz:  www.binaryhexconverter.com/hex-to-decimal-converter

Convert işlemlerini gerçekleştirip bir kenara not alın.

3-Devre Şeması

Devre bağlantılarını aşağıdaki gibi yapınız.

4-Devre Kodları

Kodları kendi kumanda şifrenize göre ayarlayıp yükleyiniz.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <IRremote.h>
int IR_Alici = 11;   
int Lamba = 10;
IRrecv irrecv(IR_Alici);
decode_results results;
void setup(){
  Serial.begin(9600);
  irrecv.enableIRIn();
  pinMode(Lamba, OUTPUT);
}
void loop(){
  if (irrecv.decode(&results)){
    long int decCode = results.value;
    Serial.println(results.value);
    if(results.value==3249168798)
    {
       digitalWrite(Lamba, HIGH);
    }
    else if(results.value==3249148398)
    {
      digitalWrite(Lamba, LOW);  
    }
    irrecv.resume();
  }
  delay(10);
}

Önemli:Konu sonundaki çalışma videosunuda izlemeyi unutmayınız


Robotik Kodlama Eğitimi



Yorum Yap :


Robotik Kodlama Eğitimi

Site içi Arama


En Çok Okunanlar

Sorusu Olan Varmı?

Paylaştıgım video,dosya yada projelerle ilgili sorularınızı buradan sorabilirsiniz.
Not:Projemi siz yaparmısınız demeyin lütfen :)

Sorunuz mu var?