Mekatronik Mühendisliği Forum


l293d Adafruit dc motor shield(4XDC MOTOR CONTROL) BLUETOOTH PROJECT //
Değerlendir:
  • 1 Oy - 5 Yüzde
  • 1
  • 2
  • 3
  • 4
  • 5


Konu: 38
Mesaj: 66
Cinsiyet: Erkek
Kıdem: Apr 2017

L293d Adafruit Dc Motor Shield




Hello friends



Selam arkadaşlar.



Günümüzde çokça kullanılan L293D motor sürücüsü hakkında kısa dipnotlar verip çalışma mantıgı ve örnek projeler olmak üzere güzel bir çalışma yapıcaz. Mekatronikmuhendisligi forumu ailesi olarak sizleri bilgilendirmek ve güzel fikirler ile ufkunuzu enişletmek icin elimizden gelen her türlü yardımı yapmaya devam edicez Smile



l293d Adafruit dc motor shield  datasheet ve cok güzel ayrıntılı bir döküman hazırlamıs daha cok ayrıntı isteyen arkadaşlar bu linkten indirebilir:Linki görebilmek için giriş yapmanız ya da üye olmanız gerekir.









[Resim: LnRYqb.gif]
















Adafruit dc motor shield :  4x Dc motor   2X Step motor   2x Servo motor sürmektedir.

Kart  yapı itibari ile arduino uno üstüne takılabilecek şekilde tasarlanmıştır.

genellikle  9V besleme ile sürülebilen  bu kart  diger H köprülü motor sürücüsüne göre daha cok motor tipi sürebilme yetenegi nedeniyle kullanılmaktadır.    L293D entegresi bulunan bu kartı istersek kendimiz entegresini kullanarak daha farklı bir devre tasarlayabiliriz.



Kartımızın MOTOR1 MOTOR 2 MOTOR 3 MOTOR 4 KISIMLARINA DC MOTORLARIMIZI BAGLIYORUZ .

ŞAYET DÖNME YÖNÜNÜ AYARLAMA KISMINI İLK ETAPTA YAPICAKSANIZ MOTORLARI SINIFLANDIRINIZ YADA 5V DC İLE MOTORLARA AKIM VEREREK YÖN TAYİNİ YAPABİLİRSİNİZ. YADA KOD YÜKLENDİKTEN SONRA EN SON YÖN TAYİNİ YAPABİLİRSİNİZ .



[Resim: ERAbl8.jpg]

RESİMDE GÖSTERİLEN KISIM BESLEME KISMI  9V İLE BESLEME YAPABİLİRSİNİZ.



BÜTÜN BU İŞLEMLER BİTTİKTEN SONRA  



BLUETOOTH MODÜLU BAGLANTISI :

BT modul         Arduino

Tx--------------RX

RX--------------TX

5V(3.3V)-------5V(3.3V)

GND------------GND



BU BAGLANTIDA BİTTİGİNE GÖRE ARTIK ÖNÜMÜZDE TEK ENGEL KODLAR KALDI Smile



library yani kütüphanesini bu linkten indiriniz.  Kütüphane eklemeyi bilmiyorsanız :Forumdaki  paylaşımtıgım kütüphane ekleme yöntemi ile bunu ekleyebilirsiniz.

Linki görebilmek için giriş yapmanız ya da üye olmanız gerekir.



Kod:
#include <AFMotor.h>
//ALPER ARSLANTAŞ

AF_DCMotor motor1(1,MOTOR12_64KHZ);
AF_DCMotor motor2(2,MOTOR12_64KHZ);
AF_DCMotor motor3(3,MOTOR12_64KHZ);
AF_DCMotor motor4(4,MOTOR12_64KHZ);
char command;

void setup()
{      
 Serial.begin(9600);  //Set the baud rate to your Bluetooth module.
}

void loop(){
 if(Serial.available() > 0){
   command = Serial.read();
   Stop(); //initialize with motors stoped
   //Change pin mode only if new command is different from previous.  
   //Serial.println(command);
   switch(command){
   case 'F':  
     forward();
     break;
   case 'Y':  
      back();
     break;
   case 'C':  
     left();
     break;
   case 'M':
     right();
     break;

     case 'W': /MOTORLARI DURDUR
     stos();
     break;
   }
 }
}

void forward()
{
 motor1.setSpeed(255); //Define maximum velocity
 motor1.run(FORWARD); //rotate the motor clockwise
 motor2.setSpeed(255); //Define maximum velocity
 motor2.run(FORWARD); //rotate the motor clockwise
   motor3.setSpeed(255); //Define maximum velocity
 motor3.run(FORWARD);
   motor4.setSpeed(255); //Define maximum velocity
 motor4.run(FORWARD);
}

void back()
{
 motor1.setSpeed(255);
 motor1.run(BACKWARD); //rotate the motor counterclockwise
 motor2.setSpeed(255);
 motor2.run(BACKWARD); //rotate the motor counterclockwise
   motor3.setSpeed(255);
 motor3.run(BACKWARD); //rotate the motor counterclockwise
   motor4.setSpeed(255);
 motor4.run(BACKWARD); //rotate the motor counterclockwise
}

void left()
{
   motor3.setSpeed(0);
 motor3.run(RELEASE);
   motor4.setSpeed(0);
 motor4.run(RELEASE);
 motor1.setSpeed(255); //Define maximum velocity
 motor1.run(FORWARD);
  motor2.setSpeed(255); //Define maximum velocity
 motor2.run(FORWARD);//rotate the motor clockwise


}
void stos()
{   motor1.setSpeed(0);
motor2.setSpeed(0);
 motor3.setSpeed(0);
  motor4.setSpeed(0);
  }
void right()
{
 motor1.setSpeed(0);
 motor1.run(RELEASE); //turn motor1 off

 motor2.setSpeed(0); //Define maximum velocity
 motor2.run(RELEASE);
 
   motor3.setSpeed(255);
 motor3.run(FORWARD); //turn motor1 off
 
 motor4.setSpeed(255); //Define maximum velocity
 motor4.run(FORWARD);//rotate the motor clockwise
}

void Stop()
{
 motor1.setSpeed(0);
 motor2.run(RELEASE); //turn motor1 off
 motor2.setSpeed(0);
 motor2.run(RELEASE); //turn motor2 off
  motor3.setSpeed(0);
 motor3.run(RELEASE);
  motor4.setSpeed(0);
 motor4.run(RELEASE);
 
}
ŞİMDİ KODU YÜKLEDİKTEN SONRA BİR ADET bluetooth terminale ihtiyacımız var aslında çok basit bir uygulama zaman bulunca onunda android programlamasını göstericem sizlere. Şimdilik hazır bir program edinelim.

link:Linki görebilmek için giriş yapmanız ya da üye olmanız gerekir.



Bluetooth terminalinden gönderilen char yani karakter W A S D gibi ifadeler ile motorlar aktif oluyor bu işlemi android programlamada butonlara ekliyerek ileri butonu farz edinki bluetooth ile W  harfini yolluyacak böylece ileri gitme motoru active olucaktır.



Herhangi Bir işlem sırasında hata ile karşılaşırsanız bize kolaylıkla sorabilirsiniz Smile

Forumumuzu ziyaret ettiginiz için teşekkür ederiz.

Cevapla
Teşekkür Edenler
(Bu mesajı son düzenleyen: 23-07-2017, 20:53 PM Alper_Arslantas.) .


Benzeyen Konular
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Arduino Gsm Shield Alper_Arslantas 0 840 19-05-2017, 14:53 PM
Son Mesaj: Alper_Arslantas
  Arduino SMD L298 Çift Motor Sürücü Shield Emre Dölek 0 913 11-02-2016, 15:04 PM
Son Mesaj: Emre Dölek
  LCD Shield Kit w/ 16x2 Character Display (Mavi - Beyaz) Emre Dölek 0 811 11-02-2016, 15:03 PM
Son Mesaj: Emre Dölek
  3x3 Kapasitif Dokunmatik Keypad Shield Emre Dölek 0 904 11-02-2016, 14:59 PM
Son Mesaj: Emre Dölek
  Arduino Uno R3 Proto Shield Emre Dölek 0 880 11-02-2016, 14:57 PM
Son Mesaj: Emre Dölek

Foruma atla:


Konuyu görüntüleyenler: 1 Misafir

Türkçe Çeviri : MyBB Türkiye
MyBB, © 2002-2018 MyBB Group.