Arduino Bluetooth Kontrollü Araba

Arduino robotlarımı paylaşmaya devam ediyorum. Yapması ve denemesi çok zevkli olan uzaktan kumandalı arabayı ardiuno olarak tasarladık.Yarış arabası gövdesine

  • Arduino Uno
  • L298N motor sürücü kartı
  • hc-05 bluetooth kartı

yerleştirdim.Ayrıntılı bilgi videoda dır.

Adsız

 

video

devre

 

 

 

 

 

 

yazilim

 

 


char dataIn = 'S'; // Durma fonksiyonu için karakter
int SolMotorileri = 9; //**
int SolMotorgeri = 10;  //**
int SagMotorileri = 12;   //**ARACIN İLERİ ,GERİ, SAĞ ,SOL KOMUT ÇIKIŞ PİNLERİ**
int SagMotorgeri = 13;   //**


int mavi_bir = 4;
int mavi_iki = 3;
int korna = 6;
int onfar = 7;
int arkafar = 2;

int bluetooth_vcc = 8;
int motor_vcc = 11;   //**


char determinant; //Program dongüsü için karakter
char det; //Program dongüsü için karakter

void setup()
{
  Serial.begin(9600); //HC-07 bluetooth modülü için btu 9600
  pinMode(SolMotorileri, OUTPUT);
  pinMode(SolMotorgeri, OUTPUT);
  pinMode(SagMotorileri, OUTPUT);
  pinMode(SagMotorgeri, OUTPUT);

  pinMode(mavi_bir, OUTPUT);
  pinMode(mavi_iki, OUTPUT);
  pinMode(onfar, OUTPUT);
  pinMode(arkafar, OUTPUT);
  pinMode(korna, OUTPUT);


  pinMode(bluetooth_vcc, OUTPUT);
  pinMode(motor_vcc, OUTPUT);
  digitalWrite(motor_vcc, HIGH);
  digitalWrite(bluetooth_vcc, HIGH);
}

void loop()
{
  det = check();

  Serial.print ("det = ");  Serial.println (det);
  while (det == 'F') //İLERİ
  {
    digitalWrite(SolMotorileri, HIGH);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, LOW);

    digitalWrite(korna, LOW);
    det = check();
  }
  while (det == 'B') //GERİ

  { digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, HIGH);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, LOW);


    det = check();
  }

  while (det == 'L') //SOL
  {

    digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, HIGH);
    digitalWrite(SagMotorgeri, LOW);
    det = check();
  }
  while (det == 'R') //SAĞ
  {
    digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, HIGH);
    det = check();
  }
  while (det == 'G') //İLERİ SOL

  {

    digitalWrite(SolMotorileri, HIGH);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, HIGH);
    digitalWrite(SagMotorgeri, LOW);
    det = check();
  }
  while (det == 'I') //İLERİ SAĞ
  { digitalWrite(SolMotorileri, HIGH);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, HIGH);
    det = check();
  }
  while (det == 'H') //GERİ SOL
  { digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, HIGH);
    digitalWrite(SagMotorileri, HIGH);
    digitalWrite(SagMotorgeri, LOW);
    det = check();
  }
  while (det == 'J') //GERİ SAĞ
  { digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, HIGH);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, HIGH);
    det = check();
  }
  if (det == 'W') // oN LAMBA YAKMA
  { digitalWrite(onfar, HIGH);
    det = check();
  }
  if (det == 'w') // oN LAMBA  SoNDÜRME
  { digitalWrite(onfar, LOW);
    det = check();
  }
  if (det == 'U') //ARKA IŞIK YAKMA
  { digitalWrite(arkafar, HIGH);
    det = check();
  }
  if (det == 'u') //ARKA LAMBA SoNDÜRME
  { digitalWrite(arkafar, LOW);
    det = check();
  }
  if (det == 'V')// KORNA  ÇALMA
  {
    digitalWrite(korna, HIGH);
    det = check();
  }
  if (det == 'v')//KORNA  SUSTURMA
  {
    digitalWrite(korna, LOW);
    det = check();
  }
  if (det == 'X')// DoRTLÜ YAKMA
  {
    digitalWrite(onfar, LOW);
    digitalWrite(arkafar, LOW);
    for (int a = 0; a < 10; a++)
    {
      digitalWrite(mavi_bir, HIGH);
      delay(100);
      digitalWrite(mavi_bir, LOW);
      delay(100);
      digitalWrite(mavi_bir, HIGH);
      delay(100);
      digitalWrite(mavi_bir, LOW);
      delay(100);

      digitalWrite(mavi_iki, HIGH);
      delay(100);
      digitalWrite(mavi_iki, LOW);
      delay(100);
      digitalWrite(mavi_iki, HIGH);
      delay(100);
      digitalWrite(mavi_iki, LOW);
      delay(100);
    }
    det = check();
  }
  if (det == 'x')//DoRTLÜ SoNDÜRME
  {
    digitalWrite(onfar, LOW);
    digitalWrite(arkafar, LOW);
    det = check();
  }
  while (det == 'S') //Telefondaki programda atanmış olan durma fonksiyonun harf eşdeğeri
  {
    digitalWrite(SolMotorileri, LOW);
    digitalWrite(SolMotorgeri, LOW);
    digitalWrite(SagMotorileri, LOW);
    digitalWrite(SagMotorgeri, 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 == 'W')
    {
      determinant = 'W';
    }
    else if (dataIn == 'w')
    {
      determinant = 'w';
    }
    else if (dataIn == 'U')
    {
      determinant = 'U';
    }
    else if (dataIn == 'u')
    {
      determinant = 'u';
    }
    else if (dataIn == 'V')
    {
      determinant = 'V';
    }
    else if (dataIn == 'v')
    {
      determinant = 'v';
    }
    else if (dataIn == 'X')
    {
      determinant = 'X';
    }
    else if (dataIn == 'x')
    {
      determinant = 'x';
    }
    else if (dataIn == 'S')
    {
      determinant = 'S';
    }

  }
  return determinant;
}

Sosyal Medyada Paylaş Facebook Twitter Google+

Etiketler: , ,
Eklenme Tarihi: 13 Ocak 2019

Konu hakkında yorumunuzu yazın

Arduino Bluetooth Kontrollü Araba (19 Yorum)

  1. Devreyi kurdum bluetoothu telefon gormuyor ne yapmam gerekiyor baglantilari aynisi gibi yaptm. Daha once bluetooth modulu hic kullanmadm.

  2. ya hacım sonda bi sıkıntı var bak kod böyle
    }

    }
    return determinant;
    }

    oradaki boşluğa ne gelecek ?

    • Programın başı olmadan anlaşılmaz ki. Belki boşluk olmalı zaten. Ic içe yazılan komutlarda o şekilde yazım olur.

  3. bluetooth kontrollü arabada bende bi kod ve sema vardı ama calismiyor kod hata vermedi ama araba hiç bir şekilde calismiyor bide siz kodu ve semavi maili adresime gonderebilirmisiniz

    usta bende aynı projeyi yapıyorum da sıkıntı çıktı yardimci olun

  4. Yazılım da herhangi bir hata yok. Tüm tırnakları silip tekrar yazmanız gerekmektedir .

HOŞ GELDİNİZ

Youtube kanalıma Abone Olabilirsiniz.