HN37-6

Module điều khiển động cơ bước A4988 8-35V 2A - Cái

24,000đ

Đơn vị tính:
Cái
Thông tin kho hàng
số 1 ngõ 89 đường Phạm Văn Đồng

số 1 ngõ 89 đường Phạm Văn Đồng - Phường Mai Dịch - Quận Cầu Giấy - Hà Nội

10 sản phẩm có sẵn

Mô tả chi tiết

Mạch điều khiển động cơ bước A4988 là driver điều khiển động cơ bước cực kỳ nhỏ gọn, hổ trợ nhiều chế độ làm việc, điều chỉnh được dòng ra cho động cơ, tự động ngắt điện khi quá nóng. Mạch điều khiển A4988 hỗ trợ nhiều chế độ hoạt động của động cơ bước lưỡng cực như: Full, 1/2, 1/4 , 1/8 và 1/16.

THÔNG SỐ KỸ THUẬT

  • Công suất ngõ ra lên tới 35V, dòng đỉnh 2A.
  • Có 5 chế độ: full bước, 1/2 bước, 1/4 bước, 1/8 bước, 1/16 bước
  • Điểu chỉnh dòng ra bằng triết áp, nằm bên trên Current Limit = VREF × 2.5
  • Tự động ngắt điện khi quá nhiệt.

CÁCH SỬ DỤNG

  • Lựa chọn chế độ full hay 1/2 hay 1/4.. sẽ được thông qua 3 pin MS1 MS2 MS3. Mình thường nối thẳng 3 pin này với công tắc bit 3p để dễ thiết lập từ trên phần cứng. Lưu ý là nếu thả nổi 3 pin này tức là mode full step.
  • Bật tắt động cơ thì thông qua pin ENABLE, mức LOW là bật module, mức HIGH là tắt module
  • Điều khiển chiều quay của động cơ thông qua pin DIR
  • Điều khiển bước của động cơ thông qua pin STEP, mỗi xung là tương ứng với 1 bước ( hoặc vi bước)
  • Hai chân Sleep với Reset luôn nối với nhau. Tìm đọc datasheet để biết nguyên nhân

Mạch Điều Khiển Động Cơ Bước A4988

  • Kết nối giữa một vi điều khiển nói chung với A4988
  • Kết nối giữa A4899 với Board Arduino

——————-CODE  THAM KHẢO——————-

Mạch Điều Khiển Động Cơ Bước A4988
Sơ đồ đấu dây mạch điều khiển động cơ bước A4988
 
const int stepPin = 3; 
const int dirPin = 4; 
 
void setup() {
  // Sets the two pins as Outputs
  pinMode(stepPin,OUTPUT); 
  pinMode(dirPin,OUTPUT);
}
void loop() {
  digitalWrite(dirPin,HIGH); // Enables the motor to move in a particular direction
  // Makes 200 pulses for making one full cycle rotation
  for(int x = 0; x < 800; x++) {
    digitalWrite(stepPin,HIGH); 
    delayMicroseconds(500); 
    digitalWrite(stepPin,LOW); 
    delayMicroseconds(50); 
  }
  delay(1000); // One second delay
  
  digitalWrite(dirPin,LOW); //Changes the rotations direction
  // Makes 400 pulses for making two full cycle rotation
  for(int x = 0; x < 800; x++) {
    digitalWrite(stepPin,HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin,LOW);
    delayMicroseconds(50);
  }
  delay(1000);
}