این ماژول یک درایور استپ موتور بر پایه چیپ TB6560 شرکت TOSHIBA می باشد . TB6560 قابلیت راه اندازی یک استپ موتور دو قطبی با حداکثر جریان 3 آمپر را دارد . ولتاژ کنترل این ماژول 5 ولت است لذا به راحتی می توان آن را توسط برد های آردوینو کنترل نمود . بر روی این برد دیپ سوئیچ و کلید هایی وجود دارد که می توان با استفاده از آن ها میزان استپ های موتور را بر روی مقادیر مختلف تنظیم نمود . این درایور قابلیت تنظیم حداکثر جریان خروجی را دارد به طوری که با استفاده از کلید های موجود بر روی ماژول می توان جریان خروجی را بر روی 14 حالت مختلف تنظیم نمود . این قابلیت در جهت کنترل گشتاور موتور ها می باشد . ماژول TB6560 دارای ترمینال هایی است که برقراری اتصالات ماژول را بسیار ساده می کند . ولتاژ تغذیه ماژول بین 10 تا 35 ولت می باشد .

مشخصات :
– درایور استپ موتور های دو قطبی
– حداکثر جریان خروجی 3A
– ولتاژ تغذیه 10V تا 35V
– امکان تنظیم استپ ها در حالات استپ کامل ، 2 / 1 استپ ، 4 / 1 استپ ، 8 / 1 استپ
و 16 / 1 استپ
– امکان تنظیم حداکثر جریان خروجی در 14 حالت مختلف جهت کنترل گشتاور موتورها
– دارای بافر های سرعت بالا در خروجی ( جهت از دست نرفتن پالس های خروجی)
– دارای ترمینال هایی جهت اتصال ورودی ، خروجی و تغذیه

ورودی و خروجی های این ماژول یه صورت زیر می باشد :

پین های A+ ، B+ ، A- و B- به قطب های استپ موتور متصل می شوند . ورودی های Pulse signal جهت کنترل دور موتور می باشد . ورودی های Direction نیز جهت کنترل جهت چرخش موتور می باشند .

راه اندازی ماژول TB6560 توسط آردوینو :
راه اندازی این ماژول با سایر درایور های استپ موتور تفاوتی ندارد . در تصویر زیر نحوه اتصال آن به برد آردوینو نشان داده شده است :

کد های آردوینو :

 

 

#define dirPin 2
#define stepPin 3
#define stepsPerRevolution 1600
void setup() {
  // Declare pins as output:
  pinMode(stepPin, OUTPUT);
  pinMode(dirPin, OUTPUT);
}
void loop() {
  // Set the spinning direction clockwise:
  digitalWrite(dirPin, HIGH);
  // Spin the stepper motor 1 revolution slowly:
  for (int i = 0; i < stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(2000);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(2000);
  }
  delay(1000);
  // Set the spinning direction counterclockwise:
  digitalWrite(dirPin, LOW);
  // Spin the stepper motor 1 revolution quickly:
  for (int i = 0; i < stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(1000);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);
  // Set the spinning direction clockwise:
  digitalWrite(dirPin, HIGH);
  // Spin the stepper motor 5 revolutions fast:
  for (int i = 0; i < 5 * stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);
  // Set the spinning direction counterclockwise:
  digitalWrite(dirPin, LOW);
  // Spin the stepper motor 5 revolutions fast:
  for (int i = 0; i < 5 * stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);
}

 

Tags:
About Author: USER_4