Android Kontrollü Arduino Araba

0
8077
Android Kontrollü Arduino Araba
Android Kontrollü Arduino Araba

Android Kontrollü Arduino Araba

Android işletim sistemine sahip cihazımız için bir mobil uygulama tasarladıktan sonra, Arduino temelli oyuncak arabamız ile bluetooth iletişime geçip oyuncak arabamızı ileri, sağa ve sola hareket ettireceğiz. Arabamızın devre elemanları tabloda listelenmiştir. Mobil uygulama için gerekli olan ekran ve blok tasarımı, arabayı harekete geçirecek Arduino kodlama projemizde anlatılmıştır.

Kullanılan Malzemeler

  • Bir adet Arduino Uno kartı,
  • Bir adet oyuncak araba kasası,
  • Bir adet HC-06 Bluetooth Modülü,
  • Üç adet 1K ohm direnç,
  • Üç adet BC237 transistor,
  • Üç adet 12 volt DC motor,
  • Üç adet oyuncak araba tekerleği,
  • Üç adet 1 nf kondansatör,
  • Üç adet 1n4001 diyot,
  • Bir adet 12 volt batarya,
  • Bir adet akıllı tablet/telefon.

Tasarım

Oyuncak arabamızın önünde, sağında ve solunda birer adet olmak üzere 12 volt dc motor ve bunlara bağlı tekerlekler olacaktır. Dc motorlar, 1 nf kondansatör ile 1n4001 diyotlara bağlanacaktır. Motor, kondansatör ve diyot üçlüsünden oluşan devre parçasının bir ucu 12 volt değerindeki bataryanın pozitif ucuna, diğer ucu ise BC237 transistörlerine eklenir. Bataryanın ve transistörlerin diğer uçları topraklanır. Transistörlerin beyaz uçları 1K ohm direnç ile Arduino kartının dijital uçlarına sürülür.

HC-06 Bluetooth modülünün TX ucu, Arduino kartın RXD; RX ucu, TXD pinine bağlıdır. Modülün Vcc pini Arduino 3V3, Gnd pini GND pinlerine sürülür.

Kodlama

Mobil kodlama yapabilmek için öncelikle Google hesabımız ile ai2.appinventor.mit.edu adresine girip yeni proje oluşturuyoruz. Projemizde “Viewer” ekranına Label, ListPicker, Buton (3 adet), TableArrangement ve BluetoothClient elemanlarını ekliyoruz. Label bileşeninde “Arduino Araba Kontrol” yazmaktadır. Onun hemen altında Bluetooth cihazlarını seçmek için ListPicker elemanı vardır. ListPicker elemanında “Cihaza Bağlan” yazmaktadır. “İleri” buton’u için Button bileşeni kullanılır. “İleri” buton’unun altında iki adet “sağ” ve “sol” butonları yer alacaktır. Bu butonların yanyana durabilmesi için TableArrangement bileşeni kullanılır. Sol olarak bluetooth iletişimi kurabilmek için BluetoothClient bileşeni ekrana çekilir. Bileşen özelliklerinden tasarım elemanlarının görünümleri istenilen şekilde ayarlanır.

Kodlar

int on_motor_pin=4;

int sag_motor_pin=2;

int sol_motor_pin=3;



String readString;



void setup()

{

  Serial.begin(9600);

  pinMode(on_motor_pin,INPUT);

  pinMode(sag_motor_pin,INPUT);

  pinMode(sol_motor_pin,INPUT);

  

  analogWrite(on_motor_pin,1);

  analogWrite(sag_motor_pin,1);

  analogWrite(sol_motor_pin,1);

  delay(1000);

}

void loop()

{

  while(Serial.available())

  {

    delay(3);

    char c=Serial.read();

    readString+=c;

  }

  if(readString.length()>0)

  {

    Serial.println(readString);

    if(readString=="ileri")

    {

      analogWrite(on_motor_pin,250);

      analogWrite(sag_motor_pin,250);

      analogWrite(sol_motor_pin,250);

      delay(1000);

    }

    if(readString=="sag")

    {

      analogWrite(on_motor_pin,250);

      analogWrite(sag_motor_pin,50);

      analogWrite(sol_motor_pin,250);

      delay(1000);

    }

    

    if(readString=="sol")

    {

      analogWrite(on_motor_pin,250);

      analogWrite(sag_motor_pin,250);

      analogWrite(sol_motor_pin,50);

      delay(1000);

    }

    readString="";

  }

}

 

CEVAP VER

Please enter your comment!
Please enter your name here