Site Haritası

Bluetooth Kontrollü Arduino Araba Yapımı

Evet arkadaşlar, bu makalemizde arduino ile bluetooth kontrollü araba yapımı için gerekli bağlantı ve kodları paylaşacağım.

Kullanılan Malzemeler:

– Arduino Uno

– L298n Motor Sürücü Kartı

– 2 Adet Motor

– 2 Adet Tekerlek

– Sarhoş Teker

– HC-06 Bluetooth Modülü

– Jumper Kablolar(Erkek-Erkek, Dişi-Erkek)

Araba şasesi için 12’e 20 ebatlarında düz sunta parçası kullanılmıştır. Sizde istediğiniz şekilde şase yapabilirsiniz.

Diğer ihtiyaçlar; Şaseye, arduino’yu, motor sürücü kartını ve diğer parçaları yapıştırmak için silikon tabancası ve silikon kullanılmıştır. Sarhoş tekerleği yükseltmek için 20 mm’lik aralayıcı kullanılmıştır. Arabaya güç sağlamak için 2 adet 9v pil ve pil yuvası kullanılmıştır.

Araba bağlantıları şu şekildedir;

Öncelikle motor sürücü kartı ile motorlarımızın bağlantısını yapıyoruz. Her iki motora da iki adet kablo ekliyoruz. Bağlantılar sağlam olması için lehimlemeniz tercihimizdir. Daha sonra sol motoru motor sürücü kartının sol tarafına, sağ motoru ise motor sürücü kartının sağ tarafındaki ilgili girişlere bağlayıp vidalarını sıkıyoruz.

L298N motor sürücü kartı motor bağlantısı

 

 

Şimdi motor sürücü kartının pinlerini arduino’ya bağlayalım. Sürücü kartındaki ENA, IN1 ve IN2 pinleri sol taraftaki motorun, IN3, IN4 ve ENB pinleri ise sağ taraftaki motorun kontrolünü sağlamamızı sağlar. Bu pinleri şu şekilde arduino’ya bağlıyoruz. (kodlarımızı bu bağlantıya göre yazdığımız için böyle yapmanızı öneririz, ancak bağlantı pin yerleriniz değiştirebilir ve kodları yeni bağlantıya göre düzenleyebilirsiniz.)

Motor Sürücü Kartı Arduino
ENA 10
IN1 3
IN2 4
IN3 5
IN4 6
ENB 11

 

Daha sonra motor sürücü kartının pil bağlantısı için ön tarafında bulunan 12v girişe pil kutusunun kırmızı kablosunu bağlayıp vidasını sıkıyoruz. Hemen yanındaki gnd girişine ise pil kutusunun siyah kablosunu ve arduino üzerindeki gnd pinini jumper kablo ile bağlayıp vidasını sıkıyoruz.

Bağlantıları bu şekilde yaptıktan sonra motor sürücü kartı ile arduino bağlatısı tamamlanmış olur.

Şimdi de bluetooth modülü ile arduino bağlantısını yapmamız gerekiyor. Bu bağlantıyı ise şu şekilde yapıyoruz.

Bluetooth Modülü (HC- 06) Arduino
VCC 5v
GND GND
RXD TX
TXD RX

Görüldüğü gibi RX ve TX pinleri ters bağlantı yapılıyor.

Burada dikkat edilmesi gereken bir nokta da arduino’ya kodlarımızı yüklerken bluetooth bağlantısını kesmeniz gerekmektedir. Bunun için kod yüklemesi yapacağımız sırada bluetooth bağlantısının 5v jumper kablosunu arduinodan çıkartıp kodlar yüklendikten sonra bağlayabilirsiniz.

Buraya kadar bağlantıları tamamladıktan sonra şu kodları yazıyoruz.

int state; //Bluetooth cihazından gelecek sinyalin değişkeni 

void setup() { //Pinlerimizi çıkış pini olarak tanımlıyoruz. 

pinMode(3,OUTPUT); 
pinMode(4,OUTPUT); 
pinMode(5,OUTPUT); 
pinMode(6,OUTPUT); 
pinMode(10,OUTPUT); 
pinMode(11,OUTPUT); 
Serial.begin(9600); 
}
int state; //Bluetooth cihazından gelecek sinyalin değişkeni
void setup() {

//Pinlerimizi çıkış pini olarak tanımlıyoruz.
pinMode(3,OUTPUT); 
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
Serial.begin(9600);

}
void loop() {
state=0;
if(Serial.available()>0){//Bluetooth bağlantısı var mı kontrol ediyoruz.
state = Serial.read(); 
if(state=='F'){ // 'F' harfi mobil uygulamadan gelen ileri komutunu temsil ediyor.
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(10,250);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
analogWrite(11,250);

}
else if(state=='B'){ // Geri komutu
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
analogWrite(10,250);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
analogWrite(11,250);
}
else if(state=='L'){ // Sola dön komutu
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(10,250);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
analogWrite(11,250);

}
else if(state=='G'){ // Sol çapraz git komutu.
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(10,250);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
analogWrite(11,100);
}
else if(state=='H'){// Geri sol çapraz git komutu.
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
analogWrite(10,250);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
analogWrite(11,100);
}
else if(state=='R'){ // Sağa dön komutu.
digitalWrite(3, LOW);
digitalWrite(4, LOW);
analogWrite(10,250);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
analogWrite(11,250);
}
else if(state=='I'){// Sağ çapraz git komutu.
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
analogWrite(10,100);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
analogWrite(11,250);
}
else if(state=='J'){ // Geri sağ çapraz git komutu.
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
analogWrite(10,100);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
analogWrite(11,250);
}
else{ // hiç bir tuşa basılmıyorsa dur komutu.
digitalWrite(3, LOW);
digitalWrite(4, LOW);
analogWrite(10,250);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
analogWrite(11,250);
}
}
}

 

Evet, kodlarımızı yazıp arduino’ya yükledikten sonra telefonumuza Arduino Bluetooth RC Car uygulamasını indiriyoruz ve uygulamamızı deniyoruz. Bluetooth ismi HC-06, şifresi: 1234 

5 1 vote
Article Rating
Subscribe
Bildir
guest
15 Yorum
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Osm
Osm
1 yıl önce

Hocam bu kodlar hata veriyor

mhmt
mhmt
1 yıl önce

&nbsb hiç bir yerde göremedim ama yine de hata veriyor başka ne yapılabilir

çağdaş
çağdaş
1 yıl önce

Arduino:1.8.9 (Windows 7), Kart:”Arduino/Genuino Uno”

Çalışmanız programın 2308 bayt (7 %) saklama alanını kullandı. Maksimum 32256 bayt.
Global değişkenler belleğin 184 byte kadarını (8%) kullanıyor. Yerel değişkenler için 1864 byte yer kalıyor. En fazla 2048 byte kullanılabilir.
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x56
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x65
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x72
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x73
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x69
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x6f
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x6e
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3a
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x20
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x30
Taslak yüklenirken bir hata oluştu

This report would have more information with
“Show verbose output during compilation”

hocam bu hata çıkıyor nasıl çözeceğiz

çağdaş
çağdaş
1 yıl önce

arduino çalışıyor aslında başka devreler kurunca sorun çıkmadı bilgisayarda ne gibi sorun olabilir ki hocam

çağdaş
çağdaş
1 yıl önce

sağol hocam bir deneyeyim bakalım aygıtı mı görmüyor acaba ama com24 tıklayınca arduinomdaki ışıklar devreye giriyor aslında. aynı arduino ile ışık devresi kurmuştum basit devreler yani ve çalışıyordu. olmazsa size tekrar yazacağım.

Çağdaş
Çağdaş
1 yıl önce

Hocam kodu yükledim basarıyla ama arac harekete gecmıyor tık tık dıye ses gelıyor yön tusuna her bastıgımda. Ama hareketlenmıyor aracım. Motor surucusunun de ısıgı yanıp sonuyor telefondan tuslara basınca. Sorun nerede

Çağdaş
Çağdaş
1 yıl önce

Pillerim 6 v toplamda ondan mı calısmıyor hocam peki 4 adet kalem pil kullandım

Çağdaş
Çağdaş
1 yıl önce

Sadece saga sola hareket ettırebılıyorum yanı 2 tekere guc veriyo 4 tekere veremıyor sanırım güçten dolayı bu da. Sız 2 adet 9 v demıssınız daha guclu olur sanırım dönmesi değil mi hocam? Telefon programındaki hız tusunu artırınca da hıza etkı etmedıgını gordum yanılıyor muyum yanı dönüş hızı değişmedi tekerin bu da mı pille alakalı sizce

çağdaş
çağdaş
1 yıl önce

çok teşekkürler hocam bilgiler için

15
0
Düşüncelerinize bayılırım, lütfen yorum yapın.x
()
x