Renkleriyle gözlerimize hitap eden, ledlerle yapılan projeler genellikle en çok eğlendiren projeler olmuştur. Bu projemizde kullanacağımız IR Kumanda ve RGB led elemanlarımızı başlamadan önce sizlere kısaca tanıtalım.

RGB LED

RGB yani Red-Green-Blue led 4 bacaklı, 1 bacağı anot ya da katot ortak bacağı içeren diğer bacaklar ise anlaşılacağı üzere kırmızı, yeşil ve mavi renk verebilen bacaklardır.  Bu bacakları arduino üzerindeki PWM destekli bacaklara bağlamamız gerekmektedir.

IR Kumanda ve Sensörü

IR kumanda sensörü ise, 3 bacaklı kumandaya sinyal gönderen sensör ve bu sensörün sinyalini alan kumandadan oluşmaktadır. Sensörün 3 bacağı bulunmaktadır, bu pinler toprağa, 5V’a ve arduino üzerinden kontrol etmek için kullanılan yine PMW destekli bacaklardan birine bağlanmalıdır.

Projede Kullanacağımız Malzemeler

1 Adet Arduino UNO

1 Adet IR Sensör ve Kumanda

1 Adet RGB led

3 adet 220 Ohm direnç

Yeterli sayıda kablo

Devremizi şekildeki gibi bağlıyoruz,

RGB

 

 

 

 

 

 

Kod kısmına geçmeden önce, IR kumanda sensörü için kullanacağımız IRremote.h kütüphanesini arduinomuza yüklememiz gerekiyor. Bu kütüphaneyi yükledikten sonra, elinizdeki herhangi bir kumandanın hangi tuşunun hangi hex koduna sahip olduğunu öğrenmek için,  File>Example>IRremote>IRDump kodlarını arduinoya yükleyip, serial monitörü açıyoruz. İstediğimiz butona bastığımızda, o butonun hex kodları karşımıza çıkacaktır bunları kopyalayıp not ediyoruz. (Video’da bu kısım detaylı gösterilmiştir, lütfen videoyu izleyiniz.)

Daha sonra arduino’ya aşağıdaki kodları yüklüyoruz. Bu kodları inceleyerek istediğiniz gibi düzenleyebilirsiniz.

 

#include <IRremote.h>
 
int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;
 
#define BUTON1 0xFF6897

#define BUTON2 0xFF9867

#define BUTON3 0xFFB04F


 
int kirmizi = 9;
int mavi = 3;
int yesil = 5;
 
void setup()
{
 pinMode(kirmizi, OUTPUT);
 pinMode(mavi, OUTPUT);
 pinMode(yesil, OUTPUT);
 
 Serial.begin(9600);
 irrecv.enableIRIn();
}
void loop() {
 
 
 
 if (irrecv.decode(&results))
 {
 irrecv.resume();
 if (results.value == BUTON1)
 {
 digitalWrite(kirmizi, !digitalRead(kirmizi));
 if (digitalRead(kirmizi) == HIGH)
 {
 Serial.println("kirmizi yandi");
 }
 else
 {
 Serial.println("kirmizi sondu");
 }
 }
 if (results.value == BUTON2)
 {
 digitalWrite(mavi, !digitalRead(mavi));
 if (digitalRead(mavi) == HIGH)
 {
 Serial.println("mavi yandi");
 }
 else
 {
 Serial.println("mavi sondu");
 }
 }
 if (results.value == BUTON3)
 {
 digitalWrite(yesil, !digitalRead(yesil));
 if (digitalRead(yesil) == HIGH)
 {
 Serial.println("yesil yandi");
 }
 else
 {
 Serial.println("yesil sondu");
 }
 }
 }
 
 }
 

 

 

Kodlarımızı tamamladıktan sonra, arduinomuza yüklüyoruz ve tanımladığınız butonlara basıp nasıl çalıştığını görebilirsiniz. Nasıl olduğunu merak ediyorsanız videomuzu izleyiniz 🙂