bluetooth IoT Projeleri
schedule 20 dakika okuma

Bluetooth ile Lamba Kontrolü

Arduino Uno ve HC-05 Bluetooth modülü ile kablosuz cihaz kontrolü yapalım. Akıllı ev sistemlerine giriş için mükemmel başlangıç!

memory Arduino Uno
bluetooth HC-05 Modül
electrical_services 5V Röle

Giriş

Telefonundan tek bir tuşa basıp masadaki lambayı açıp kapatmak… "Akıllı ev" hissini veren bu deneyimi çok basit bileşenlerle kurabiliriz. Bu projede HC-05 Bluetooth modülü, Arduino UNO ve 5V röle kullanarak düşük voltajlı bir cihazı kablosuz kontrol edeceğiz. Röle, mikrodenetleyicinin küçük sinyalini alıp daha "büyük" bir devreyi açıp kapatmaya yarayan elektronik anahtar gibidir.

⚠️ Güvenlik Uyarısı

İlk denemeleri düşük voltaj DC ile yapın. Şebeke (220VAC) işlerinde izolasyon kutusu, kablo kelepçesi, sigorta şarttır. Tehlikeli çalışmalara girmeden önce ehliyetli kişilere danışın.

Öğreneceklerin

  • HC-05 Bluetooth modülü kurulumu ve eşleşme
  • Seri komut tasarımı ve protokol oluşturma
  • Röle mantığı ve aktif-LOW çalışma prensibi
  • Düşük voltajla güvenli test yöntemleri
  • PlatformIO ile Arduino projesi geliştirme

Gerekli Parçalar

🖥️

Arduino Uno R3

Ana mikrodenetleyici kartı

📱

HC-05 Bluetooth

Kablosuz iletişim modülü

🔌

5V Röle Modül

Yüksek akım kontrolü

Bağlantı Şeması

HC-05 Bluetooth Bağlantısı:

  • TX → Arduino D10
  • RX → Arduino D11 (Seviye bölücü ile)
  • VCC → Arduino 5V
  • GND → Arduino GND

5V Röle Modül Bağlantısı:

  • IN → Arduino D7
  • VCC → Arduino 5V
  • GND → Arduino GND
⚠️ Röle Aktif-LOW: Çoğu 5V röle modülü aktif-LOW mantığıyla çalışır. Yani IN pini LOW olduğunda röle çeker, HIGH olduğunda bırakır.

PlatformIO Konfigürasyonu

[env:uno]
platform = atmelavr
board = uno
framework = arduino

Arduino Kodu

#include <Arduino.h>
#include <SoftwareSerial.h>

// Bluetooth için SoftwareSerial pinleri
SoftwareSerial BT(10, 11);  // RX, TX

// Röle pini
const int RELAY = 7;

void setup() {
  // Röle pinini çıkış olarak ayarla
  pinMode(RELAY, OUTPUT);

  // Röle başlangıçta kapalı (HIGH = röle açık, LOW = röle kapalı)
  digitalWrite(RELAY, HIGH);

  // Bluetooth seri haberleşmeyi başlat (9600 baud)
  BT.begin(9600);

  // Ana seri portu başlat (debug için)
  Serial.begin(9600);
  Serial.println("Bluetooth Lamba Kontrolu Basladi");
}

void loop() {
  // Bluetooth'tan veri geldi mi kontrol et
  if (BT.available()) {
    char command = BT.read();

    // Komutu işle
    if (command == '1') {
      // Lambayı aç (röleyi çek)
      digitalWrite(RELAY, LOW);
      Serial.println("Lamba ACILDI");
      BT.println("Lamba acildi");
    }
    else if (command == '0') {
      // Lambayı kapat (röleyi bırak)
      digitalWrite(RELAY, HIGH);
      Serial.println("Lamba KAPATILDI");
      BT.println("Lamba kapatildi");
    }
    else {
      // Bilinmeyen komut
      Serial.print("Bilinmeyen komut: ");
      Serial.println(command);
      BT.println("Gecersiz komut");
    }
  }

  // Debug için röle durumunu göster
  static int lastState = -1;
  int currentState = digitalRead(RELAY);
  if (currentState != lastState) {
    Serial.print("Role durumu: ");
    Serial.println(currentState == LOW ? "CEKILI" : "BIRAKILI");
    lastState = currentState;
  }

  delay(100); // CPU'yu meşgul etmemek için
}

Android Uygulaması (MIT App Inventor)

Telefonunuzdan Arduino'yu kontrol etmek için basit bir Android uygulaması yapabilirsiniz. MIT App Inventor kullanarak sürükle-bırak ile uygulama geliştirebilirsiniz:

App Inventor Tasarımı:

  • Button1: "Lamba Aç" - Bluetooth'tan "1" gönder
  • Button2: "Lamba Kapat" - Bluetooth'tan "0" gönder
  • BluetoothClient: HC-05'e bağlan
  • ListPicker: Eşleşmiş Bluetooth cihazlarını listele

Test Etme ve Sorun Giderme

Bluetooth Eşleşme

  1. Arduino'yu USB'ye bağlayın
  2. Kodu yükleyin
  3. HC-05'in LED'i yanıp sönmeli
  4. Telefonda Bluetooth ayarlarına gidin
  5. "HC-05" cihazını arayın ve eşleştirin
  6. Pin kodu: 1234 (veya 0000)

Sık Karşılaşılan Hatalar

Eşleşme Başarısız

  • Çözüm: HC-05'in LED'i yanıp sönüyor mu kontrol edin
  • Pin kodu: Varsayılan 1234 veya 0000 deneyin

Röle Ters Çalışıyor

  • Çözüm: Röle modülünüz aktif-HIGH olabilir
  • Deneme: digitalWrite(RELAY, HIGH) ve LOW'u değiştirin

Güvenlik Önlemleri

Düşük Voltaj Testi

Şebeke gerilimiyle (220V) çalışmadan önce mutlaka düşük voltaj DC ile test edin:

  • 5V LED şerit ile test
  • 12V DC fan ile test
  • İzolasyon kutusu kullanın
  • Sigorta ekleyin

Şebeke Bağlantısı

⚠️ Şebeke (220VAC) İçin:

  • Mutlaka izolasyon kutusu kullanın
  • Nötr ve faz hatlarını karıştırmayın
  • Topraklama yapın
  • Sigorta (fuse) ekleyin
  • Ehliyetli kişilere danışın

Genişletme Önerileri

Basit Geliştirmeler

  • Sıcaklık Kontrolü: DHT11 ile otomatik klima kontrolü
  • Zamanlayıcı: RTC modülü ile otomatik açma/kapama
  • Çoklu Cihaz: Birden fazla röle ile farklı cihazlar kontrolü

İleri Seviye Geliştirmeler

  • WiFi Entegrasyonu: ESP8266 ile internet kontrolü
  • Mobil Uygulama: Özel Android/iOS uygulaması
  • Ses Kontrolü: Google Assistant/Amazon Alexa entegrasyonu

Sonuç

Bu proje, IoT dünyasına adım atmak için mükemmel bir başlangıç noktasıdır. Bluetooth haberleşme, röle kontrolü ve güvenlik önlemleri gibi temel konuları öğrenirken aynı zamanda çalışır bir akıllı ev sistemi elde edersiniz.

✅ Proje Tamamlandı!

Artık kendi Bluetooth kontrollü cihazınızı yaptınız! Bu proje size kablosuz iletişim ve yüksek akım kontrolü konusunda sağlam bir temel sağlayacak.