ویژگی های ماژول درایور موتور دو کاناله TB6612FNG
امروزه کنترل سرعت و جهت موتورهای DC به علت کاربردهای فراوان، از اهمیت زیادی برخوردار است. عمومیترین روش کنترل موتورهای DC پل H (H-Bridge) است. این روش به شما اجازه میدهد هم سرعت و هم جهت موتور را کنترل کنید. ماژول دو کاناله TB6612FNG نیز از همین روش برای کنترل دو موتور بهره میگیرد.
یکی از پین های کنترلی این ماژول PWM میباشد. این پین به پایه فرمان ترانزیستور وصل میشود و هرچه زمان روشن ماندن (Duty Cycle) آن بیشتر باشد، ولتاژ بیشتری در دو سر موتور قرار میگیرد و در نتیجه سرعت چرخش موتور نیز بیشتر میشود.
ولتاژ تغذیه موتور 2.5 تا 13.5 ولت و جریان مجاز پیوسته عبوری 1.2 آمپر میباشد.
نکته
بازدهی این ماژول 91 تا 95 درصد میباشد.
دیتاشیت آی سی TB6612FNG را می توانید از اینجا دانلود کنید.
معرفی پایه های (Pinout) ماژول درایور موتور دو کاناله TB6612FN
ماژول درایور موتور دو کاناله TB6612FNG دارای 16 پایه به شرح زیر است:
- VM: ولتاژ موتور
- VCC: ولتاژ تغذیه ماژول
- GND: زمین-در این ماژول سه زمین داریم که به یکدیگر متصل اند.
- A1: سر مثبت موتور A
- A2: سر منفی موتور A
- B1: سر مثبت موتور B
- B2: سر منفی موتور B
- PWMA: سیگنال کنترل سرعت موتور A
- PWMB: سیگنال کنترل سرعت موتور B
- AIN1: سیگنال کنترلی موتور A
- AIN2: سیگنال کنترلی موتور A
- BIN1: سیگنال کنترلی موتور B
- BIN2: سیگنال کنترلی موتور B
- STBY: برای فعال شدن وضعیت Standby بایستی این پین HIGH شود.
پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.
توجه شود که با حالت های مختلف سیگنالهای کنترلی، عملکرد موتورها متفاوت میشود. جدول زیر حالت های مختلف کاری را نشان میدهد.
لوازمی که به آن احتیاج دارید
قطعات مورد نیاز
نرم افزارهای مورد نیاز
راه اندازی ماژول درایور موتور دو کاناله TB6612FNG با آردوینو
گام اول: سیم بندی
مطابق مدار زیر ماژول را به آردوینو و سایر قطعات وصل کنید.
توجه
پایه STBY را به VCC متصل کنید.
گام دوم : کد
کد زیر را روی آردوینو خود آپلود کنید.
/*
TB6612FNG-Dual-Driver
made on 28 oct 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="“Home” — Electropeak" src="https://electropeak.com/learn/embed/#?secret=R8OtvWChdH" data-secret="R8OtvWChdH" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
*/
#define PWM1 3
#define AIN1 4
#define AIN2 5
#define PWM2 6
#define BIN1 7
#define BIN2 8
int pot;
int out;
void setup() {
Serial.begin(9600);
pinMode(PWM1,OUTPUT);
pinMode(AIN1,OUTPUT);
pinMode(AIN2,OUTPUT);
pinMode(PWM2,OUTPUT);
pinMode(BIN1,OUTPUT);
pinMode(BIN2,OUTPUT);
}
void loop() {
digitalWrite(AIN1,HIGH); //Motor A Rotate Clockwise
digitalWrite(AIN2,LOW);
digitalWrite(BIN1,HIGH); //Motor B Rotate Clockwise
digitalWrite(BIN2,LOW);
pot=analogRead(A0);
out=map(pot,0,1023,0,255);
analogWrite(PWM1,out); //Speed control of Motor A
analogWrite(PWM2,out); //Speed control of Motor B
}
برنامه بالا برای کنترل همزمان دو موتور DC میباشد. با چرخاندن پتانسیومتر سرعت موتورها در جهت عقربه های ساعت زیاد میشود.