Elektronik projelerinizle evinizi daha akıllı hale getirmeye ne dersiniz? Bu projede, bir IR (kızılötesi) kumanda, Arduino ve bir röle modülü kullanarak uzaktan kontrol edilebilen bir mini fan sistemi yapacağız. Böylece oturduğunuz yerden kalkmadan fanınızı açıp kapatabileceksiniz. Bu proje sayesinde hem uzaktan kumanda sinyallerini okumayı hem de yüksek akım çeken cihazları röle ile güvenli bir şekilde kontrol etmeyi öğreneceksiniz!
Bu projeyi tamamlamak için ihtiyacın olan tüm malzemeler aşağıda listelenmiştir. Bu bileşenlerin çoğu elektronik hobi kitlerinde bulunur.
Devre bağlantılarını doğru yapmak, projenin başarılı bir şekilde çalışmasını sağlar. Özellikle IR alıcının pin sıralamasına ve diyotun yönüne dikkat edin.
1. IR Alıcı Modülü Bağlantıları:
2. Röle Modülü Bağlantıları:
3. DC Motor, Diyot ve Harici Güç Bağlantıları:
4. Genel Güç Bağlantısı:
Devre bağlantılarını tamamladıktan sonra sıra projenin beynini oluşturan koda geldi. Arduino IDE'yi açın ve aşağıdaki kodları kopyalayıp yapıştırın. Bu kod, IR kumandadan gelen sinyalleri okuyacak ve belirlenen tuşa basıldığında fanı açıp kapatacaktır.
Not: Bu kod, "IRremote" kütüphanesini gerektirir. Kütüphaneyi kurmak için Arduino IDE'de Taslak > Kütüphaneleri Dahil Et > Kütüphaneleri Yönet yolunu izleyip "IRremote" aratarak kurabilirsiniz.
Önce Kumanda Tuş Kodlarını Öğrenelim:
Her IR kumandanın her tuşu, benzersiz bir onaltılık (hex) kod gönderir. Kendi kumandanızın tuş kodlarını öğrenmek için önce aşağıdaki "IR Kumanda Kodu Öğrenme" kodunu yükleyin, Seri Monitör'ü açın ve kumandanızın tuşlarına basın. Gelen kodları not alın.
C++
#include <IRremote.h>
const int RECV_PIN = 11; // IR alıcı sinyal pini
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // IR alıcıyı başlat
Serial.println("IR Kumanda Kodu Öğrenme Modu Basın Tuşlara!");
}
void loop() {
if (irrecv.decode(&results)) {
Serial.print("IR Kodu: ");
Serial.print(results.value, HEX); // Kodu HEX formatında yazdır
Serial.print(" (");
Serial.print(results.bits);
Serial.println(" bit)");
irrecv.resume(); // Bir sonraki değeri beklemeye devam et
}
delay(100);
}
Kumandanızdan fanı açıp kapatmak için kullanmak istediğiniz tuşa basarak Seri Monitör'den çıkan HEX kodunu bir yere not alın. Örneğin, "Açma/Kapama" tuşu için FFC23D gibi bir kod görebilirsiniz.
Uzaktan Kontrollü Fan Kodu:
Kumanda kodunu öğrendikten sonra, aşağıdaki fan kontrol koduyla devam edelim. Not aldığınız kodu IR_BUTTON_TOGGLE_FAN değişkenine girin.
C++
#include <IRremote.h>
const int RECV_PIN = 11; // IR alıcı sinyal pini
const int RELAY_PIN = 4; // Röle kontrol pini
IRrecv irrecv(RECV_PIN);
decode_results results;
// Kendi kumandanızın tuş kodunu buraya girin
#define IR_BUTTON_TOGGLE_FAN 0xFFC23D // Örnek: Kumandadaki "Güç" tuşu
bool fanState = false; // Fanın mevcut durumu (başlangıçta kapalı)
void setup() {
Serial.begin(9600);
irrecv.enableIRIn(); // IR alıcıyı başlat
pinMode(RELAY_PIN, OUTPUT);
// Başlangıçta röleyi kapalı tutuyoruz (fan kapalı)
// Genellikle röle modüllerinde HIGH sinyal röleyi kapatır.
digitalWrite(RELAY_PIN, HIGH);
Serial.println("Uzaktan Kontrollü Fan Sistemi Hazır!");
Serial.println("Kumandanızdan belirlediğiniz tuşa basarak fanı kontrol edin.");
}
void loop() {
if (irrecv.decode(&results)) {
Serial.print("Algılanan IR Kodu: ");
Serial.println(results.value, HEX);
// Eğer belirlenen tuşa basıldıysa
if (results.value == IR_BUTTON_TOGGLE_FAN) {
fanState = !fanState; // Fanın durumunu tersine çevir
if (fanState) {
digitalWrite(RELAY_PIN, LOW); // Röleyi aç (fanı çalıştır)
Serial.println("Fan Açık");
} else {
digitalWrite(RELAY_PIN, HIGH); // Röleyi kapat (fanı durdur)
Serial.println("Fan Kapalı");
}
}
irrecv.resume(); // Bir sonraki değeri beklemeye devam et
}
}
Bu projede, IR alıcı modülü uzaktan kumandadan gelen kızılötesi sinyalleri yakalar. Arduino, "IRremote" kütüphanesi sayesinde bu sinyalleri çözerek hangi tuşa basıldığını temsil eden HEX kodunu alır. Kodumuz, algılanan bu HEX kodu önceden belirlediğimiz tuş koduyla karşılaştırır. Eşleşme durumunda, röle modülü aracılığıyla fanın güç devresi açılıp kapanır. Diyot ise motor dururken oluşan zararlı akımları emerek devreyi korur.
Bu projeyi daha da geliştirmek isterseniz:
Bu proje, uzaktan kontrol, güç elektroniği ve devre korumasının birleşimini anlamak için harika bir adımdır. Kendi akıllı fanınızı geliştirerek elektronik bilginizi bir üst seviyeye taşıyın!