Arduino ile Bluetooth Bağlantısı (HC-05 / HC-06)
- Arduino ile Bluetooth Bağlantısı (HC-05 / HC-06)
- 1. Bluetooth Modülü Nedir?
- 2. Gerekli Malzemeler
- 3. HC-05 / HC-06 Pin Yapısı
- 4. Arduino ve Bluetooth Bağlantı Şeması
- 5. Arduino Bluetooth Kodları (Temel Test)
- 6. Android Uygulaması ile Test Etme
- 7. Bluetooth ile LED Kontrolü
- 8. HC-05 AT Komut Modu (Gelişmiş Ayarlar)
- 9. Yaygın Hatalar ve Çözümleri
- 10. Bluetooth Tabanlı Proje Fikirleri
- 11. Teknik Özellikler (HC-05 ve HC-06)
- 12. Sonuç: Kablosuz İletişimin İlk Adımı
Arduino ile Bluetooth Bağlantısı (HC-05 / HC-06)
Kablosuz haberleşme artık neredeyse tüm elektronik projelerde standart hale geldi.
Arduino ile Bluetooth bağlantısı, akıllı telefonlar veya bilgisayarlarla veri alışverişi yapmanın en kolay yollarından biridir.
Bu yazıda, HC-05 ve HC-06 Bluetooth modüllerini Arduino ile nasıl bağlayacağınızı, nasıl kodlayacağınızı ve hangi sorunlarla karşılaşabileceğinizi adım adım öğreneceksiniz.
1. Bluetooth Modülü Nedir?
Bluetooth, kısa mesafeli kablosuz veri iletişim teknolojisidir.
Arduino ile kullanıldığında, bilgisayar veya akıllı telefon üzerinden kablosuz veri alışverişi yapılmasını sağlar.
İki popüler Bluetooth modülü vardır: HC-05 ve HC-06.
Bu iki modül neredeyse birbirine benzese de işlev bakımından fark gösterir.
HC-05 → Hem “Master” hem “Slave” modda çalışabilir.
HC-06 → Sadece “Slave” modda çalışır (yani veri alıcı konumundadır).
Bu fark, HC-05’in daha gelişmiş bir kullanım sunmasını sağlar.
2. Gerekli Malzemeler
Arduino ile Bluetooth bağlantısı için aşağıdaki parçalara ihtiyacınız olacak:
- 1 adet Arduino UNO / Nano / Mega
- 1 adet HC-05 veya HC-06 Bluetooth modülü
- Jumper kablolar
- Breadboard (isteğe bağlı)
- Bilgisayar (Arduino IDE yüklü)
- Android telefon (Bluetooth Terminal uygulaması yüklü)
3. HC-05 / HC-06 Pin Yapısı
Aşağıda Bluetooth modülünün pin açıklamaları sade metin formatında verilmiştir:
[HC-05 / HC-06 Pin Açıklamaları] -------------------------------- 1. EN / KEY → AT komut modu (isteğe bağlı) 2. VCC → +5V besleme 3. GND → Toprak (negatif) 4. TXD → Veri gönderme pini (Arduino RX'e bağlanır) 5. RXD → Veri alma pini (Arduino TX'e bağlanır) 6. STATE → Bağlantı durumu (isteğe bağlı) -------------------------------- Not: RX pini 3.3V toleranslıdır. Arduino TX çıkışı 5V olduğundan RX hattına 1K-2K direnç bölücü kullanılması önerilir.
4. Arduino ve Bluetooth Bağlantı Şeması
Aşağıdaki bağlantı şeması en stabil iletişim sağlayan düzendir:
[Arduino – HC-05 Bağlantı Şeması] -------------------------------- HC-05 VCC → Arduino 5V HC-05 GND → Arduino GND HC-05 TX → Arduino Pin 10 HC-05 RX → Arduino Pin 11 (direnç bölücü ile) --------------------------------
Bu bağlantıda SoftwareSerial kütüphanesi kullanılır,
çünkü Arduino UNO’nun donanımsal RX/TX pinleri (0 ve 1) USB iletişimiyle zaten meşguldür.
5. Arduino Bluetooth Kodları (Temel Test)
Aşağıdaki örnek, Bluetooth modülünün doğru çalışıp çalışmadığını test etmek içindir.
Bilgisayardan gelen veriyi telefona gönderir, telefondan geleni de seri portta gösterir.
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(10, 11); // RX, TX
void setup() {
Serial.begin(9600); // Bilgisayar iletişimi
BTSerial.begin(9600); // HC-05 iletişimi
Serial.println("Bluetooth modülü hazır.");
}
void loop() {
if (BTSerial.available()) {
char c = BTSerial.read();
Serial.write(c); // Telefonda gönderilen karakterleri PC'de göster
}
if (Serial.available()) {
char c = Serial.read();
BTSerial.write(c); // Bilgisayardan geleni telefona gönder
}
}Bu kod, Arduino Bluetooth haberleşmesi için temel altyapıyı oluşturur.
Artık telefon ve Arduino arasında çift yönlü veri alışverişi yapılabilir.
6. Android Uygulaması ile Test Etme
Bluetooth bağlantısını test etmek için Android cihazınıza bir terminal uygulaması kurabilirsiniz.
Kullanabileceğiniz popüler uygulamalardan bazıları:
- Bluetooth Terminal HC-05
- Serial Bluetooth Terminal
- Arduino Bluetooth Controller
Bağlantı Adımları:
- Telefonunuzda Bluetooth’u açın.
- HC-05 cihazını bulun.
- Eşleştirme kodu olarak genellikle “1234” veya “0000” girilir.
- Arduino IDE’den kodu yükleyin.
- Uygulamayı açıp “HC-05” cihazına bağlanın.
Artık gönderdiğiniz her karakter Arduino Seri Monitöründe görünecektir.
7. Bluetooth ile LED Kontrolü
Şimdi Bluetooth üzerinden LED kontrolü yapalım.
Telefon üzerinden “1” gönderilirse LED yansın, “0” gönderilirse sönsün.
#include <SoftwareSerial.h>
SoftwareSerial BTSerial(10, 11); // RX, TX
int ledPin = 8;
char veri;
void setup() {
pinMode(ledPin, OUTPUT);
BTSerial.begin(9600);
}
void loop() {
if (BTSerial.available()) {
veri = BTSerial.read();
if (veri == '1') {
digitalWrite(ledPin, HIGH);
} else if (veri == '0') {
digitalWrite(ledPin, LOW);
}
}
}Bu örnek, Arduino Bluetooth LED kontrolü projelerinde en çok kullanılan yaklaşımdır.
Aynı yöntemle röle, motor, servo gibi elemanlar da kontrol edilebilir.
8. HC-05 AT Komut Modu (Gelişmiş Ayarlar)
HC-05 modülü, AT komutları ile yapılandırılabilir.
Bu sayede cihaz adı, şifre veya baud hızı değiştirilebilir.
AT Moduna Geçmek İçin:
- Arduino bağlantısını kesin.
- HC-05 üzerindeki KEY (EN) pinini 3.3V’a bağlayın.
- LED yavaş yanıp sönmeye başladığında AT modu aktif olur.
Yaygın AT Komutları:
AT → Bağlantı testi (cevap: OK) AT+NAME=MyDevice → Cihaz adını değiştirir AT+PSWD=1234 → Şifreyi belirler AT+UART=9600,0,0 → Baud hızını değiştirir
Aşağıdaki kodla AT komutlarını gönderebilirsiniz:
#include <SoftwareSerial.h>
SoftwareSerial BT(10, 11);
void setup() {
Serial.begin(9600);
BT.begin(38400); // AT modu varsayılan hızı
Serial.println("AT komutları için hazır.");
}
void loop() {
if (BT.available()) Serial.write(BT.read());
if (Serial.available()) BT.write(Serial.read());
}Bu şekilde Arduino üzerinden doğrudan Bluetooth ayarlarını değiştirebilirsiniz.
9. Yaygın Hatalar ve Çözümleri
Bluetooth projelerinde sıkça görülen hatalar ve çözüm önerileri aşağıdaki gibidir:
[1] Cihaz Görünmüyor: - Modülün LED’i yanmıyorsa, VCC bağlantısını kontrol edin. - 5V yerine 3.3V bağlanmış olabilir. [2] Eşleştirme Başarısız: - Yanlış şifre girilmiş olabilir. (Varsayılan: 1234) - Cihazı telefondan kaldırıp yeniden eşleştirin. [3] Veri Gitmiyor: - TX ve RX pinleri karışmış olabilir. - RX hattında mutlaka direnç bölücü kullanın. [4] HC-05 LED'i Sürekli Yanıp Sönüyor: - Bu, bağlantı henüz kurulmadı anlamına gelir. - Bağlantı kurulduğunda LED sabit yanacaktır.
Bu çözümlerle Arduino Bluetooth bağlantısı kararlı şekilde çalışacaktır.
10. Bluetooth Tabanlı Proje Fikirleri
Bluetooth modülünü kullanarak geliştirebileceğiniz projelerden bazıları:
1. Bluetooth Kontrollü Araba - Telefon uygulamasıyla yönlendirilen iki tekerlekli robot araba. 2. Kablosuz Lamba Kontrolü - Evdeki LED veya röle devresini Bluetooth ile açıp kapatma. 3. Akıllı Sera Sistemi - Nem, sıcaklık ve sulama bilgilerini telefondan kontrol etme. 4. Bluetooth ile Röle Kontrolü - 220V cihazları güvenli şekilde aç/kapa yapma. 5. Sensör Verisi İzleme - Arduino sensör verilerini (sıcaklık, nem vb.) anlık olarak telefona gönderme.
11. Teknik Özellikler (HC-05 ve HC-06)
Bluetooth modüllerinin temel teknik bilgileri sade metin olarak aşağıda verilmiştir:
[HC-05 / HC-06 Teknik Özellikler] -------------------------------- Bağlantı Mesafesi : 10 metre (engelsiz ortam) Çalışma Voltajı : 3.3V – 6V Baud Hızı (varsayılan): 9600 bps Frekans Bandı : 2.4 GHz Akım Tüketimi : Yaklaşık 30–50 mA Veri Arayüzü : UART (seri iletişim) --------------------------------
12. Sonuç: Kablosuz İletişimin İlk Adımı
Bu rehberde, Arduino ile Bluetooth bağlantısı kurmayı,
HC-05 ve HC-06 modüllerinin farklarını, bağlantı şemasını, örnek kodları ve hata çözümlerini öğrendiniz.
Artık bilgisayar, telefon veya diğer mikrokontrolcülerle kablosuz veri iletişimi kurabilirsiniz.
Bluetooth sayesinde robotlarınızı, lambalarınızı, sensörlerinizi ve daha birçok cihazı kolayca kontrol etmeniz mümkün.