Arduino ile TB6612 Motor Sürücü Kullanımı Nasıl Yapılır?

Arduino Uno ile TB6612 Motor Sürücü Kullanımı

Arduino Uno ve TB6612 Motor Sürücü Kartı ile  2 adet motor kontrolünü gerçekleştireceğiz. Bu proje için gerekli malzemeler:

TB6612 Motor Sürücü Özellikleri

TB6612FNG sadece çift motorlu bir sürücü değil, çift H-köprüsüdür. Bir H köprüsü, temel olarak, akım yönünü değiştirmenize izin veren belirli bir transistör kurulumudur. Yani bir motora bağlandığında bu da her iki yönde dönebildiği anlamına gelir ve PWM girişi ile, herhangi bir hızda dönmelerini sağlamak için Arduino kullanabilirsiniz. TB6612FNG’nin 2 adet H-köprüsüne sahip olması nedeniyle, sadece bir robotu ileri ve geri hareket ettirmekle kalmaz, aynı zamanda her bir tekerleğin farklı bir yönde dönmesini sağlayarak dönebilirsiniz.

tb6612fng-dual-motor-surucu-driver

arduino-TB6612FNG-baglanti-semasi

Teknik Özellikleri:

  • Motor besleme voltajı: 13.5V (Maks 15V) (Min 4.5V düşük akımlarda 2.5V’a kadar)
  • Daimi çıkış akımı: 1.2A(ortalama) (Maks 3.2A)
  • Çıkış ON-Direnci her H-köprüsü bacağı: 0.5Ohm
  • Aşırı ısınma kapatma: Var
  • Ters bağlantı koruması: Yok

arduino-TB6612FNG-baglanti-semasi-2

Bağlantıları şemaya uygun yaptıktan sonra kodumuzu Arduino Uno kartımıza yükleyip test edebiliriz.

TB6612FNG Arduino Kodu

int STBY = 10; //BEKLEME PINI
//Motor A
int PWMA = 3; //A MOTOR HIZ PINI
int AIN1 = 9; //YON1
int AIN2 = 8; //YON2
//Motor B
int PWMB = 5; //B MOTOR HIZ PINI
int BIN1 = 11; //YON1
int BIN2 = 12; //YON2
void setup(){
// PIN AYARLARI
pinMode(STBY, OUTPUT);
pinMode(PWMA, OUTPUT);
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
pinMode(PWMB, OUTPUT);
pinMode(BIN1, OUTPUT);
pinMode(BIN2, OUTPUT);
}
void loop(){
move(1, 255, 1); //MOTOR 1 TAM HIZDA
move(2, 255, 1); //MOTOR 2 TAM HIZDA
delay(1000); //1 saniye bekle
stop(); //motor durdur
delay(250); //250 ms bekle
move(1, 128, 0); //motor 1, yarım hıza al
move(2, 128, 0); //motor 2, yarım hıza al
delay(1000);
stop();
delay(250);
}
void move(int motor, int speed, int direction){
digitalWrite(STBY, HIGH); //MOTORLAR AKTIF
//istenen yön durumuna göre yön pinlerinin polarizesini değiştir
boolean inPin1 = LOW;
boolean inPin2 = HIGH;
if(direction == 1){
inPin1 = HIGH;
inPin2 = LOW;
}
if(motor == 1){
digitalWrite(AIN1, inPin1);
digitalWrite(AIN2, inPin2);
analogWrite(PWMA, speed);
}else{
digitalWrite(BIN1, inPin1);
digitalWrite(BIN2, inPin2);
analogWrite(PWMB, speed);
}
}
void stop(){
//MOTORLARI DURDUR
digitalWrite(STBY, LOW);
}

Arduino ile TB6612FNG Motor Sürücü Kullanımınıbu şekilde gerçekleştirebilirsiniz. Direnc.net Blog sayfamızda sürekli olarak yeni içerikler paylaşmaya devam edeceğiz. Lütfen sormak istediğiniz soruları yorum olarak bize gönderin!

Likes:
5 4
Views:
6387
Article Categories:
ArduinoEğitim

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir