Arduino
OKUDUĞUNUZ KONU
Android Kontrollü RC Araba Yapımı
187

Android Kontrollü RC Araba Yapımı

Yazar : Murat Duran25 Haziran 2015
Projeyi Satın Al
Bu projeyi kurulu çalışır halde yada isterseniz demonte halde satın alabilirsiniz.Proje ile birlikle yapım aşaması resimleri bağlantı şemaları ve kodları açık kaynak olarak gönderilir. "Satın Almak İçin Yukarıda Butona Basınız"

Android telefonlarınızla hemen hemen birçok işlemi rahatlıkla yapabilmektesiniz.Bu projemizin sonunda android kontrollü rc araba sahibi olacaksınız.Aşağıdaki adımları uygulayarak sizde kendinize bir araba yapabilirsiniz.Projenin amacı cep telefonunuza yükleyeceğiniz program sayesinde arabanızı istediğiniz gibi bluetooth üzerinden kontrol etmektir.

Projenin ortalama maliyeti 150 ile 200 TL arasında bu kullanacağınız arabanın kalitesine göre değişir.Örneğin bu projede kullandığımız araba 90 tl civarında , siz oyuncakçılardan bozuk araba satın alabilirsiniz.Örneğin araba bozuktur çalışmıyordur ama motorlarında tekerleklerinde her hangi bir sorun yoktur.Zaten size elektronik kısmı lazım değil.Çok daha ucuza satın alabilirsiniz.

Seçeceğiniz arabanın voltajının 4.7 volt ve üstü olmasına dikkat edin.Eğer ki 3.6 voltluk bir araba alırsanız takacağınız piller arduino yu beslemeyecektir.Bu yüzden arabanız verimsiz çalışır.Arduino çalışma gerilimi 5volt tur.Ama 4.7 volt ile denenmiştir, sorunsuz çalışmakta.

Malzmeler

1- Arduino UNO
2-L293B Motor Sürücü
3- HC-06 Bluetooth Modülü
4- RC Oyuncak Araba

Öncelikle arkadaşlar aşağıdaki arduino kodlarını yüklüyoruz.Kodlarımız L298B motor sürücü entegresine göre hazırlanmıştır.Siz motor sürücü shield kullanacaksanız eğer kodları değiştirmeniz gerekecek.Örneğin adafruit motor sürücü ile devre kurmanıza gerek kalmadan direk arduino üzerine montajlaya biliyorsunuz.

Öncelikle bir motor sürücü kartı oluşturmanız gerekmekte.İster ufak bir breadboad üzerine kurun devreyi isterseniz delikli pertinaks ile hazırlayın, hangisi kolayınıza geliyorsa.

Motor sürücü bağlantı şeması resimdeki gibidir.Aynısını kurun , ardından yine değer resimde bluetooth bağlantısı mevcut aynı şekilde bağlantıyı gerçekleştirin.Bluetooth bağlantısın da dikkat etmeniz gereken şey, VCC girişini 3.3volt a bağlayacaksınız.RX girişini arduino da TX e ,TX çıkışını da arduino RX e bağlayacaksınız.

Andorid APK Dosyası İndir

// Proje Hocam - www.projehocam.com
// Android Kontrollü RC Araba Programı

char dataIn = 'S'; // Durma fonksiyonu için karakter
int pinileri = 3; //İleri sürüş için kontrol pini
int pingeri = 5; //Geri sürüş için kontrol pini
int pinsol = 6; //Sola sürüş için kontrol pini
int pinsag = 9; //Sağa sürüş için kontrol pini
char determinant; //Program döngüsü için karakter
char det; //Program döngüsü için karakter

void setup()
{
Serial.begin(9600); //HC-07 bluetooth modülü için btu 9600
pinMode(pinileri, OUTPUT);
pinMode(pingeri, OUTPUT);
pinMode(pinsol, OUTPUT);
pinMode(pinsag, OUTPUT);
}

void loop()
{
det = check();
while (det == 'F') //Telefondaki programda atanmış olan ileri sürüş butonunun harf eşdeğeri
{
digitalWrite(pinileri, HIGH);
det = check();
}
while (det == 'B') //Telefondaki programda atanmış olan geri sürüş butonunun harf eşdeğeri
{
digitalWrite(pingeri, HIGH);
det = check();
}

while (det == 'L') //Telefondaki programda atanmış olan sola dönüş butonunun harf eşdeğeri
{
digitalWrite(pinsol, HIGH);
det = check();
}
while (det == 'R') //Telefondaki programda atanmış olan sağa butonunun harf eşdeğeri
{
digitalWrite(pinsag, HIGH);
det = check();
}
while (det == 'G') //Telefondaki programda atanmış olan sağa butonunun harf eşdeğeri
{
digitalWrite(pinileri, HIGH);
digitalWrite(pinsol, HIGH);
det = check();
}
while (det == 'I') //Telefondaki programda atanmış olan sağa butonunun harf eşdeğeri
{
digitalWrite(pinileri, HIGH);
digitalWrite(pinsag, HIGH);
det = check();
}
while (det == 'H') //Telefondaki programda atanmış olan sağa butonunun harf eşdeğeri
{
digitalWrite(pingeri, HIGH);
digitalWrite(pinsol, HIGH);
det = check();
}
while (det == 'J') //Telefondaki programda atanmış olan sağa butonunun harf eşdeğeri
{
digitalWrite(pingeri, HIGH);
digitalWrite(pinsag, HIGH);
det = check();
}
while (det == 'S') //Telefondaki programda atanmış olan durma fonksiyonun harf eşdeğeri
{
digitalWrite(pinileri, LOW);
digitalWrite(pingeri, LOW);
digitalWrite(pinsol, LOW);
digitalWrite(pinsag, LOW);
det = check();
}

}

int check()
{
if (Serial.available() > 0) //Serial portun kontrollü
{
dataIn = Serial.read(); //Telefondan gelen verilerin kontrollü
if (dataIn == 'F')
{
determinant = 'F';
}
else if (dataIn == 'B')
{
determinant = 'B';
}
else if (dataIn == 'L')
{
determinant = 'L';
}
else if (dataIn == 'R')
{
determinant = 'R';
}
else if (dataIn == 'G')
{
determinant = 'G';
}
else if (dataIn == 'I')
{
determinant = 'I';
}
else if (dataIn == 'H')
{
determinant = 'H';
}
else if (dataIn == 'J')
{
determinant = 'J';
}
else if (dataIn == 'S')
{
determinant = 'S';
}

}
return determinant;
}
SİZCE NASIL OLMUŞ?
Beğendim
60%
İlginç
11%
Eh İşte
6%
Anlamadım
10%
Kötü
3%
Berbat
11%
YAZAR HAKKINDA
Murat Duran
Uzun zamandır internetle uğraşıyorum bu internet bilgimi gerçek mesleğimle bütünleştirip yararlı olacağını düşündüğüm Proje Hocam sitesini hayata geçirdim.Hep kendimi geliştirmeyi seven bir yapıya sahip oldum bir şeyi ezberlemektense o şeyi anlamayı tercih ediyorum.Mekanik ve elektronik hep ilgimi çekti bu internet sitesindede bu konularla ve diğer konularla ilgili projeler paylaşıyorum.Şu an Atatürk Üniversitesinde Makine Mühendisliği öğrencisiyim.
187 YORUMLAR
1 2 3 4
  • Sercan Bozma
    12 Şubat 2017 at 00:55

    Hocam arduino ya 4×1,5 volt veriyorum motor shield a 9 voltluk pil bağladım ama motorlar dönmüyor ama bilgisayardan verince motorlar dönüyor ne yapmam gerekiyor?

  • Bugra guven
    22 Şubat 2017 at 19:45

    hocam benim yaptığım arabanın arka tekerlekleri sorunsuz çalısıyor ama ön tekerlekler dönmüyor yardımcı olabilirmisiniz

  • Ekrem İnce
    2 Mart 2017 at 21:07

    Meraba hocam aracı yaptım fakat programı orduino’ya aktarırken şöyle bir hata alıyorum yardımcı olurmusunuz?;

    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xfb
    Karta yüklenirken sorun oluştu. Tavsiyeler için http://www.arduino.cc/en/Guide/Troubleshooting#upload adresine göz atabilirsiniz.
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xfb
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xfb

  • Emrah TUNÇ
    10 Mart 2017 at 19:59

    Benimde buna benzer projem var aracımın pili 9,6v-700mah bu aracı ne kadarlık bir paneller şarj ederim araba giderkende pillerin şarj olması lazım 2 tane 6v 1w panel alsam seri bağlasam olur mu yardımcı olurmusunuz?

  • Emre kara
    10 Mart 2017 at 21:01

    Ya ben bu arduino ve entegre için pilleri taktığımda araba çalışmadı nedenini soyleyebilirmisin

  • mustafa
    18 Mart 2017 at 02:04

    verdiğiniz kodları yüklrken hata veriyor yardımcı olun

  • Mustafa
    20 Mart 2017 at 00:50

    Kodları başka siteden yükledim, çalıştı emeğinize saygı teşekkürler, ancak sağdaki resimde, pilden gelen artı ➕ ucu L293d alttaki 8 nolu bacaktan 9 nolu bacağa bağlantıyı yapmadım, 8 nolu bacaktan 9 volt giriş yaptım 9 nolu bacağı 16 ya bağladım ➕ ya ekledim, proje çalıştı çok teşekkür ediyorum yeni proje çalışmalarınızı bekliyoruz

YORUM YAP