Arduino ile uzaktan kumanda kullanarak cihazları kontrol etmek, projelerinizde kablosuz bir kontrol sağlamak için etkili bir yöntemdir. Bu yazıda, IR alıcı kullanarak Arduino ile nasıl uzaktan kumanda edilebileceğini adım adım açıklayacağız. IR alıcılar, çeşitli cihazları uzaktan kumanda etmek için geniş bir uygulama yelpazesi sunar.
Gerekli Malzemeler ve Bağlantılar
Uzaktan kumanda ile cihaz kontrolü için aşağıdaki malzemelere ihtiyacınız olacak:
- Arduino kartı (Arduino Uno veya benzeri)
- IR alıcı modülü
- IR uzaktan kumanda
- LED (veya başka bir kontrol edilmesi gereken cihaz)
- 220Ω direnç (LED için)
- Jumper kabloları
- Breadboard (isteğe bağlı)
IR alıcıyı Arduino'ya bağlamak için şu adımları takip edin:
- IR alıcının VCC pinini Arduino'nun 5V pinine
- IR alıcının GND pinini Arduino'nun GND pinine
- IR alıcının OUT pinini Arduino'nun dijital pinlerinden birine (örneğin, D2)
LED'i Arduino'ya bağlamak için şu adımları takip edin:
- LED'in uzun bacağını (anot) bir dijital pine (örneğin, D13) bağlayın
- LED'in kısa bacağını (katot) 220Ω direnç ile Arduino'nun GND pinine bağlayın
Arduino Kodunu Yazma ve Yükleme
Bağlantılar tamamlandıktan sonra, Arduino IDE'yi açın ve aşağıdaki kodu yazın:
#include
const int recv_pin = 2; // IR alıcının bağlı olduğu pin IRrecv irrecv(recv_pin); decode_results results;
const int led_pin = 13; // LED'in bağlı olduğu pin
void setup() { Serial.begin(9600); irrecv.enableIRIn(); // IR alıcısını başlat pinMode(led_pin, OUTPUT); }
void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); // Uzaktan kumanda kodunu seri monitöre yazdır irrecv.resume(); // Bir sonraki sinyali almak için IR alıcısını hazırlayın } }
Bu kod, IR alıcının aldığı sinyalleri seri monitöre yazdırır. Bu şekilde, uzaktan kumandadan gelen komutların kodlarını öğrenebilir ve LED'i bu komutlara göre kontrol edebilirsiniz.
Uzaktan Kumanda Komutları ile LED Kontrolü
LED'i uzaktan kumanda komutları ile kontrol etmek için, önce kumandadan gelen komutları öğrenmeniz gerekecek. Kodun seri monitöründe göreceğiniz HEX kodlarını kullanarak aşağıdaki kodu güncelleyebilirsiniz:
#include
const int recv_pin = 2; // IR alıcının bağlı olduğu pin IRrecv irrecv(recv_pin); decode_results results;
const int led_pin = 13; // LED'in bağlı olduğu pin
void setup() { Serial.begin(9600); irrecv.enableIRIn(); // IR alıcısını başlat pinMode(led_pin, OUTPUT); }
void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); // Uzaktan kumanda kodunu seri monitöre yazdır
scss
Kodu kopyala
if (results.value == 0x123456) { // Örnek HEX kodu
digitalWrite(led_pin, HIGH); // LED'i aç
} else if (results.value == 0x654321) { // Örnek HEX kodu
digitalWrite(led_pin, LOW); // LED'i kapat
}
irrecv.resume(); // Bir sonraki sinyali almak için IR alıcısını hazırlayın
} }
Bu kod, belirli uzaktan kumanda komutlarına yanıt verir. Örnek HEX kodlarını kendi kumandanızın kodlarına göre değiştirerek LED'inizi kontrol edebilirsiniz.