Module điều khiển động cơ TB6612FND

Từ ChipFC Wiki
Phiên bản vào lúc 11:47, ngày 2 tháng 3 năm 2018 của BS135 (Thảo luận | đóng góp) (Sử dụng)
(khác) ← Phiên bản cũ | xem phiên bản hiện hành (khác) | Phiên bản mới → (khác)
Bước tới: chuyển hướng, tìm kiếm

Editor.png

Bài viết này đang được phát triển hoặc chỉnh sửa lớn.
Bạn có thể đóng góp để bài viết hoàn thiện hơn.
Sau khi chỉnh sửa xong thông báo này sẽ được gỡ bỏ.

Giới thiệu

TB66 1.jpg
  • TB6612FND là 1 điều khiển động cơ kép, cũng là 1 H-Bridge kép.
  • Một H-Bridge là một thiết lập của transistors cho phép bạn chuyển đổi hướng dòng điện.
  • Gắn với một động cơ, có nghĩa là bạn có thể xoay nó theo cả hai hướng.

Đặc điểm

  • Điện áp cung cấp điện áp: VM = 15V max, VCC = 2.7-5.5V
  • Dòng điện đầu ra: Iout = 1.2A (trung bình) / 3.2A (đỉnh)
  • Chế độ chờ để tiết kiệm năng lượng
  • Chế độ điều khiển động cơ CW / CCW / interrup / stop
  • Tích hợp mạch tản nhiệt nhiệt và mạch phát hiện điện áp thấp
  • Tất cả các chân của TB6612FNG vỡ ra đến 0,1 khoảng cách pins
  • Lọc các tụ điện trên cả hai đường dây cung cấp
  • Kích thước: 0.8x0.8

Sử dụng

Sơ đồ kết nối

TB6612FND 2.png

Source code mẫu:

//motor A connected between A01 and A02
//motor B connected between B01 and B02

int STBY = 10; //standby

//Motor A
int PWMA = 3; //Speed control
int AIN1 = 9; //Direction
int AIN2 = 8; //Direction

//Motor B
int PWMB = 5; //Speed control
int BIN1 = 11; //Direction
int BIN2 = 12; //Direction

void setup(){
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, full speed, left
move(2, 255, 1); //motor 2, full speed, left

delay(1000); //go for 1 second
stop(); //stop
delay(250); //hold for 250ms until move again

move(1, 128, 0); //motor 1, half speed, right
move(2, 128, 0); //motor 2, half speed, right

delay(1000);
stop();
delay(250);
}

void move(int motor, int speed, int direction){
//Move specific motor at speed and direction
//motor: 0 for B 1 for A
//speed: 0 is off, and 255 is full speed
//direction: 0 clockwise, 1 counter-clockwise

digitalWrite(STBY, HIGH); //disable standby

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(){
//enable standby
digitalWrite(STBY, LOW);
}