Yazılardaki ürünleri komponentci.net'te inceleyebilir, hemen sipariş verebilirsiniz.komponentci.net →
KomponentciBlog Mağaza
Blog  ›  Projeler

Bluetooth Kontrollü Araba Yapımı: HC-05 ve L298N ile

Bluetooth Kontrollü Araba Yapımı: HC-05 ve L298N ile
Kısa cevap

Bluetooth kontrollü araba; Arduino Uno, HC-05 Bluetooth modülü, L298N motor sürücü ve 2WD şaseyle yapılır. Telefondaki bir Bluetooth terminal uygulaması F, B, L, R ve S harflerini gönderir. Arduino bu harfe göre motorları ileri, geri, sola, sağa sürer ya da durdurur. HC-05'in RX ucuna basit bir gerilim bölücü takılır.

Telefonla yönettiğiniz bir araba, okul projeleri arasında en çok ilgi gören işlerden biridir. Bu yazıda Arduino Uno, HC-05 Bluetooth modülü ve L298N motor sürücüyle iki tekerlekten çekişli bir araba kuruyoruz. Malzemeleri, bağlantıyı, kodu ve telefondan kontrolü adım adım anlatıyoruz. Sonda ödevinizi bir hız deneyiyle nasıl sunacağınızı bulacaksınız.

Bluetooth kontrollü araba nedir?

Bluetooth kontrollü araba, telefondan kablosuz gönderilen komutlarla hareket eden, motorlu ve mikrodenetleyicili bir robot araçtır. Telefon bir harf gönderir, HC-05 modülü bu harfi alıp Arduino'ya iletir. Arduino harfe bakar ve motor sürücüye hangi motorun hangi yöne döneceğini söyler.

Motor sürücü gereklidir, çünkü Arduino'nun pinleri motoru döndürecek kadar akım veremez. L298N, Arduino'dan gelen küçük sinyallerle pilden gelen büyük akımı motorlara yönlendirir. Ayrıntıları L298N motor sürücü yazısında bulabilirsiniz.

Hangi malzemeler gerekir?

Bluetooth kontrollü araba için bir Arduino Uno, HC-05 modülü, L298N motor sürücü, motorlu 2WD şase, 4'lü AA pil yuvası ve Arduino için 9V pil yuvası yeterlidir. Gerilim bölücü için 1 kΩ ve 2,2 kΩ direnç gerekir.

Malzeme listesi

MalzemeAdetNe işe yarar?
Arduino Uno R3 (CH340)1Komutları okur, motorları yönetir
HC-05 Bluetooth modülü1Telefondan gelen harfleri alır
L298N çift motor sürücü kartı1İki DC motoru ileri ve geri sürer
2WD şeffaf şase araba kiti1Gövde, iki motor, tekerlekler ve sarhoş teker
4'lü AA pil yuvası1Motorlara 6 V verir
9V pil yuvası (jaklı)1Arduino'yu ayrı besler
1 kΩ ve 2,2 kΩ direnç1+1HC-05'in RX ucunu korur

Kitin içeriği satıcıya göre değişebilir; motor ve tekerleklerin kutuda olduğunu ürün sayfasından kontrol edin. Ayrıca birkaç erkek-dişi jumper kablo ve küçük bir tornavida hazırlayın.

2WD mi 4WD şase mi seçilmeli?

İlk araba için 2WD şase daha uygundur, çünkü daha ucuzdur, daha az akım çeker ve tek L298N ile kolayca sürülür. 4WD şase düz olmayan zeminde daha iyi tutunur, ama dört motoru beslemek için daha güçlü pil gerekir.

Özellik2WD şase4WD şase
Motor sayısı2 + sarhoş teker4
DönüşKolay, yerinde dönebilirTekerlekler kayarak döner
BağlantıHer motor bir kanalaAynı taraftaki iki motor paralel bağlanır
ZeminDüz zemin, sınıf ve koridorHalı, bahçe yolu

Devre nasıl bağlanır?

HC-05 Arduino'nun D10 ve D11 pinlerine, L298N ise D5-D9 ve D12 pinlerine bağlanır. Motor pili L298N'e, 9V pil Arduino'ya gider; bütün GND uçları birleştirilir.

  • HC-05: VCC → 5V, GND → GND, TXD → D10, RXD → gerilim bölücü üzerinden D11.
  • Gerilim bölücü: D11 → 1 kΩ → RXD; RXD → 2,2 kΩ → GND.
  • L298N kontrol: ENA → D5, IN1 → D7, IN2 → D8, IN3 → D9, IN4 → D12, ENB → D6.
  • Besleme: 4'lü AA pilin artısı L298N'in +12V ucuna, eksisi GND ucuna. L298N GND → Arduino GND.
  • Motorlar: Sol motor OUT1-OUT2, sağ motor OUT3-OUT4 vidalı uçlarına.
Bluetooth kontrollü araba bağlantı şeması: HC-05 modülünün TXD ucu Arduino Uno D10 pinine, RXD ucu 1 kΩ ve 2,2 kΩ gerilim bölücü üzerinden D11 pinine bağlı; L298N motor sürücünün ENA ucu D5, IN1 D7, IN2 D8, IN3 D9, IN4 D12, ENB D6 pinine bağlı; sol motor OUT1-OUT2, sağ motor OUT3-OUT4 uçlarında; 4 AA pil (6 V) L298N +12V ve GND ucuna, L298N 5V ucu Arduino 5V pinine bağlı; Arduino 9V pille DC jakından besleniyor
HC-05 D10 ve D11'e, L298N D5-D9 ve D12'ye bağlanır; RXD hattındaki 1 kΩ ve 2,2 kΩ dirençler 5 V'u yaklaşık 3,4 V'a indirir.

HC-05'in RX ucu 3,3 V ile çalışır, Arduino ise 5 V gönderir. Gerilim bölücü bu 5 V'u 5 × 2,2 / (1 + 2,2) ≈ 3,4 V'a indirir. TXD ucu ise 3,3 V verir ve Arduino bunu doğrudan okuyabilir. Konunun ayrıntısı lojik seviye dönüştürücü yazısında.

4 AA pil yaklaşık 6 V verir. L298N'deki 5V regülatörü 7 V'un altında düzgün çalışmaz. Bu yüzden kartın 5V-EN jumper'ını çıkarın ve L298N'in 5V ucunu Arduino'nun 5V pinine bağlayın. ENA ve ENB üzerindeki jumper'ları da çıkarın; bu pinleri Arduino süreceği için hız ayarı yapabilirsiniz.

Bluetooth kontrollü araba adım adım nasıl yapılır?

Araba, önce şase ve motorlar, sonra elektronik kısım bağlanıp kod yüklenerek yapılır. Kod yüklerken pilleri takmayın.

  1. Motorları ve tekerlekleri kitteki vidalarla şaseye takın. Sarhoş tekeri öne ya da arkaya monte edin.
  2. L298N'i, Arduino'yu ve pil yuvalarını şasenin üstüne çift taraflı bantla sabitleyin.
  3. Motor kablolarını L298N'in OUT uçlarına vidalayın, ardından yukarıdaki listeye göre kontrol kablolarını takın.
  4. HC-05'i ve gerilim bölücüyü bağlayın. Dirençleri mini breadboard'a ya da kabloya lehimleyerek yerleştirebilirsiniz.
  5. Arduino'yu USB ile bilgisayara bağlayın ve aşağıdaki kodu yükleyin.
  6. USB'yi çıkarın, 9V pili ve AA pilleri takın. HC-05'in LED'i hızlı yanıp sönmeye başlamalıdır.
#include <SoftwareSerial.h>
SoftwareSerial bt(10, 11);          // RX = D10, TX = D11
const int ENA = 5, IN1 = 7, IN2 = 8; // sol motor
const int ENB = 6, IN3 = 9, IN4 = 12; // sağ motor
int hiz = 200;                       // 0-255 arası

void motorlar(int a, int b, int c, int d) {
  digitalWrite(IN1, a); digitalWrite(IN2, b);
  digitalWrite(IN3, c); digitalWrite(IN4, d);
}

void setup() {
  bt.begin(9600);
  int pinler[] = {ENA, ENB, IN1, IN2, IN3, IN4};
  for (int i = 0; i < 6; i++) pinMode(pinler[i], OUTPUT);
  analogWrite(ENA, hiz);
  analogWrite(ENB, hiz);
}

void loop() {
  if (bt.available()) {
    char k = bt.read();
    if (k == 'F') motorlar(1, 0, 1, 0);      // ileri
    else if (k == 'B') motorlar(0, 1, 0, 1); // geri
    else if (k == 'L') motorlar(0, 1, 1, 0); // sola dön
    else if (k == 'R') motorlar(1, 0, 0, 1); // sağa dön
    else if (k == 'S') motorlar(0, 0, 0, 0); // dur
  }
}

HC-05, veri modunda varsayılan olarak 9600 baud hızıyla haberleşir. Araba F komutunda geri gidiyorsa o motorun iki kablosunun yerini değiştirin. Hız değişkeni küçüldükçe araba yavaşlar; çok düşük değerlerde motor hiç dönmeyebilir.

Telefondan nasıl kontrol edilir?

Telefon, Android'de bir Bluetooth terminal ya da Arduino Bluetooth kontrol uygulamasıyla HC-05'e bağlanıp harf göndererek arabayı yönetir. Önce telefonun Bluetooth ayarlarında HC-05'i bulun ve eşleştirin; şifre genellikle 1234 ya da 0000'dır.

Uygulamada düğmelere F, B, L, R ve S harflerini atayın. Bağlantı kurulunca HC-05'in LED'i yavaş yanıp sönmeye başlar. HC-05 klasik Bluetooth kullanır ve iPhone ile çalışmaz; iPhone için BLE modülü gerekir. Farkı HM-10 BLE modülü yazısında anlattık.

Hangi güvenlik kurallarına dikkat edilmeli?

Bu araba düşük gerilimle çalışır; yine de pillerle ilgili kurallara mutlaka uyun:

  • 220V şebeke elektriğiyle hiçbir bağlantı yapmayın. Araba yalnızca pille ya da USB ile çalışır.
  • Pilleri en son takın. Bağlantıyı değiştirmeden önce pilleri çıkarın.
  • Pil uçlarını birbirine değdirmeyin. Kısa devre olan pil çok ısınır ve yangına yol açabilir.
  • Isınan, şişen ya da akan pili hemen çıkarın ve bir yetişkine haber verin.
  • Lehim yapacaksanız bunu bir öğretmen ya da velinin gözetiminde yapın.
  • Arabayı merdiven ve masa kenarı gibi düşebileceği yerlerden uzakta sürün.

Ödevinizi nasıl sunarsınız?

Ödevinizi, arabanızla hız ve menzil ölçen küçük bir deney yaparak sunabilirsiniz. Böylece yalnızca çalışan bir oyuncak değil, ölçülmüş sonuçlar göstermiş olursunuz.

  • Hız deneyi: Yere 2 metrelik bir yol işaretleyin. Hız değerini 150, 200 ve 255 yapıp her biri için süreyi üç kez ölçün.
  • Hesap: Hız = yol / zaman. Örneğin 2 metre 4 saniyede gidiliyorsa hız 0,5 m/s'dir.
  • Menzil deneyi: Telefonla arabadan her adımda biraz uzaklaşın ve komutların hangi mesafede kesildiğini not edin.

Örnek hipotez: "Hız değeri arttıkça araba 2 metreyi daha kısa sürede alır." Sonuçları bir tabloya ve grafiğe aktarın. Afişinizde devre şemasını ve gerilim bölücü hesabını da gösterin. Başka gövde ve tekerleklere robotik ürünler ve kitler kategorisinden bakabilirsiniz.

Sık sorulan sorular

HC-05 telefonla eşleşiyor ama araba neden hareket etmiyor?

En sık neden, HC-05'in TXD ve RXD kablolarının yer değiştirmesidir. TXD, Arduino'nun D10 pinine; RXD ise gerilim bölücü üzerinden D11'e gitmelidir. Sonra GND bağlantılarını kontrol edin; L298N, Arduino ve pillerin eksileri ortak olmalıdır. Uygulamanın büyük harf gönderdiğinden emin olun, çünkü kod "f" ile "F" harfini farklı görür.

Gerilim bölücü takmazsam ne olur?

Modül çoğu zaman bir süre çalışır, ama RX ucu sürekli 5 V'a maruz kalır. HC-05'in yongası 3,3 V ile çalışır ve bu durum zamanla modüle zarar verebilir. Bazı kartlarda koruma devresi bulunsa da bunu bilmek zordur. İki direnç çok ucuzdur; takmak, modülü kaybetme riskinden her zaman daha iyidir.

Araba neden yavaş gidiyor ya da hiç gitmiyor?

Araba yavaşsa önce pilleri kontrol edin; zayıf AA pillerin gerilimi yük altında hızla düşer. L298N, üzerinde yaklaşık 2 V kadar gerilim kaybeder, bu yüzden 6 V'luk pilden motorlara yaklaşık 4 V ulaşır. Koddaki hız değerini 255 yapmayı deneyin. Yine yavaşsa yeni alkalin ya da tam dolu şarjlı piller kullanın.

Arduino'yu motor piliyle birlikte besleyebilir miyim?

Bu projede ayrı beslemek daha güvenlidir. Motorlar kalkışta yüksek akım çeker ve pil gerilimi kısa süre düşer; Arduino bu sırada kendini yeniden başlatabilir. 9V pil yerine USB powerbank da kullanabilirsiniz. Hangi yolu seçerseniz seçin, bütün GND uçlarını birleştirmeyi unutmayın; aksi halde sinyaller doğru okunmaz.

Bluetooth menzili ne kadardır?

HC-05 gibi klasik Bluetooth modüllerinin menzili açık alanda genellikle 10 metre civarındadır. Duvarlar, insanlar ve metal eşyalar bu mesafeyi kısaltır. Sınıf ve koridor için bu menzil yeterlidir. Daha uzun mesafe gereken projelerde nRF24L01 gibi radyo modülleri kullanılır, ama telefonla doğrudan kontrol edilemezler.

Özet

  • Bluetooth kontrollü araba; Arduino, HC-05, L298N ve motorlu bir şaseden oluşur.
  • Telefon F, B, L, R ve S harflerini gönderir; Arduino motorları bu harflere göre sürer.
  • HC-05'in RXD ucuna 1 kΩ ve 2,2 kΩ'luk gerilim bölücüyle yaklaşık 3,4 V gider.
  • Motorlar 4 AA pille, Arduino ayrı bir 9V pil ya da powerbank ile beslenir; GND'ler ortaktır.
  • HC-05 Android ile çalışır; iPhone için BLE modülü gerekir.
  • Ödev için farklı hız değerleriyle 2 metrelik yolun süresini ölçüp grafik çizin.

Bu yazıdaki ürünler

Diğer yazılar