آموزش راه اندازی ماژول درایور موتور دو کاناله L9110 ساخت YwRobot با آردوینو

ویژگی های ماژول درایور موتور دو کاناله L9110

موتورهای DC یکی از پرکاربرد ترین قطعات در رباتیک و الکترونیک می‌باشند. ماژول‌های مختلفی برای کنترل موتور DC وجود دارد. یکی از این ماژول‌ها که می‌تواند همزمان دو موتور DC را کنترل کند، ماژول درایور دو کاناله بر پایه آی‌سی L9110 می‌باشد. از جمله ویژگی‌های این ماژول می‌توان به موارد زیر اشاره کرد:

  • جریان مجاز پیوسته عبوری برای هر کانال 800 میلی‌آمپر می‌باشد.
  • ولتاژ کاری این ماژول 2.5 تا 12 ولت است.
  • دارای دو پین کنترل برای هر موتور DC
  • قابلیت استفاده در موتورهای ماشین اسباب بازی
  • قابلیت کنترل یک عدد استپر موتور
نکته

از این ماژول فقط می‌توان برای کنترل جهت چرخش موتورهای DC استفاده کرد.

دیتاشیت آی سی L9110 را می توانید از اینجا دانلود کنید.

معرفی پایه های (Pinout) ماژول درایور موتور دو کاناله L9110

ماژول درایور موتور دو کاناله L9110 دارای پایه‌هایی به شرح زیر است:

  • VCC: ولتاژ موتور
  • GND: زمین
  • OUTB: موتور B
  • OUTA: موتور A
  • INA: پایه اول کنترل موتور A
  • INB: پایه دوم کنترل موتور A
  • INC: پایه اول کنترل موتور B
  • IND: پایه دوم کنترل موتور B

پین اوت (Pinout) این ماژول را می‌توانید در تصویر زیر مشاهده کنید.

توجه شود که با حالت‌های مختلف سیگنال‌های کنترلی، عملکرد موتورهای DC متفاوت می‌شود. جدول زیر حالت‌های مختلف کاری را نشان می‌دهد.

لوازمی که به آن احتیاج دارید

قطعات مورد نیاز

آردوینو UNO R3 × 1
ماژول درایور موتور دو کاناله L9110 × 1
موتور DC ساده 6 ولت × 2
سیم جامپر نری-مادگی × 1

نرم افزارهای مورد نیاز

آردوینو IDE

راه اندازی ماژول درایور موتور دو کاناله L9110 با آردوینو

گام اول: سیم بندی

توجه

GND آردوینو را به GND منبع تغذیه متصل کنید.

هشدار

دقت کنید به دلیل اینکه موتورهای شما 6 ولت می‌باشد از منبع تغذیه با ولتاژ بالاتر از 6 ولت استفاده نکنید.

گام دوم: کد

کد زیر را روی آردوینو خود آپلود کنید.

   /*
  YwRobot-L9110-Dual-Motor-Drive
  made on 24 Nov 2020
  by Amir Mohammad Shojaee @ Electropeak
  Home<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; clip: rect(1px, 1px, 1px, 1px);" title="&#8220;Home&#8221; &#8212; Electropeak" src="https://electropeak.com/learn/embed/#?secret=9Dosrfflb9" data-secret="9Dosrfflb9" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>

*/
#define AIN1 3
#define AIN2 4
#define BIN1 8
#define BIN2 9

void setup() {
  Serial.begin(9600);
  
  pinMode(AIN1,OUTPUT);
  pinMode(AIN2,OUTPUT);
  pinMode(BIN1,OUTPUT);
  pinMode(BIN2,OUTPUT);
}
 
void loop() {
  digitalWrite(AIN1,HIGH); 
  digitalWrite(AIN2,LOW);
  digitalWrite(BIN1,HIGH); 
  digitalWrite(BIN2,LOW);

  delay(2000);
  
  digitalWrite(AIN1,LOW); 
  digitalWrite(AIN2,HIGH);
  digitalWrite(BIN1,LOW); 
  digitalWrite(BIN2,HIGH);
  
  delay(2000);
  
}
Arduino

با آپلود کد فوق روی آردوینو، موتور ابتدا 2 ثانیه در جهت مستقیم شروع به چرخش می‌کند، سپس 2 ثانیه در جهت معکوس می‌چرخد.

آموزش های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.