ماژول درایور L298N ، با استفاده از تراشه L298N ST می تواند به طور مستقیم سرعت و جهت دو موتور 3-30 ولت DC را مستقل از هم هدایت کند
و یا می توانید یک موتور پله ای 2 فاز ماشین هوشمندتان را کنترل کنید
با یک مبدل سطح منطقی 5 ولت می تواند ارتباط آن را به 3.3VMCU نیز فراهم کند
از ویژگیهای L298N میتوان به توانایی عملکرد دقیق ، تولید گرمای کم و فیلتر نویز قوی اشاره کرد
جامپر برای تفکیک ولتاژ موتور ، نمایشگر پاور، ترمینالها جهت سهولت، آیسی رگولاتور جهت مصرف داخلی و خازنهای تثبیت از مزایای آن هستند
پین +12V برق موتور را تأمین می کند. از 5 تا 35 ولت را می توان اعمال کرد.
بخاطر داشته باشید ، اگر جامپر 5V-EN بسته است ، برای اینکه موتور در حداکثر سرعت خود کار کند باید 2 ولت بیشتر از ولتاژ واقعی موتور را تأمین کنید.
GND پایه مشترک زمین است.
پین 5 ولت برق را به مدار منطقی سوئیچینگ داخل IC L298N می رساند.
اگر جامپر 5V-EN در جای خود باشد ، این پین به عنوان خروجی عمل می کند و می تواند برای تغذیه آردوینو از آن استفاده کنید. اگر جامپر 5V-EN برداشته شود ، باید آن را به پایه 5 ولت آردوینو وصل کنید.
پین های ENA برای کنترل سرعت موتور A. مورد استفاده قرار می گیرند.
اگر این پایه 5 ولت باشد باعث چرخش موتور A می شود و گرنه باعث توقف موتور می شود.
برداشتن جامپر و اتصال این پایه به ورودی PWM این امکان را می دهد تا سرعت موتور A را کنترل کنیم.
از پین های IN1 و IN2 برای کنترل جهت موتور A. استفاده می شود
اگر IN1 بالا و IN2 پایین باشد ، موتور A در یک جهت خاص می چرخد.
برای تغییر جهت ، IN1 را پایین و IN2 را بالا قرار دهید.
اگر هر دو ورودی بالا یا پایین باشند ، موتور A متوقف می شود.
از پین های IN3 و IN4 برای کنترل جهت موتور B استفاده می شود.
اگر IN3 بالا و IN4 پایین باشد ، موتور B در یک جهت خاص می چرخد.
برای تغییر جهت ، IN3 را پایین و IN4 را بالا قرار دهید.
اگر هر دو ورودی بالا یا پایین باشند ، موتور B متوقف می شود.
می توان از پین ENB برای کنترل سرعت موتور B استفاده کرد.
اگر این پین 5 ولت باشد باعث چرخش موتور B می شود و صفر کردن آن باعث توقف موتور می شود.
حذف جامپر و ارتباط این با سیگنال PWM به ما امکان می دهد تا سرعت موتور B را کنترل کنیم.
پین های OUT1 & OUT2 به موتور A متصل می شوند.
پین های OUT3 & OUT4 به موتور B متصل می شوند.
برنامه ریزی درایور بسیار ساده است. از آنجا که کتابخانه ای به نام L298N Dual H-Bridge Motor Controller برای آن وجود دارد
کافیست آن را به برنامه خود اضافه کرده و اعلام کنید که کنترل کننده به کدام پایه های دیجیتال آردواینو متصل است.
برای دریافت کتابخانه به منوی tools/manage libraries بروید و L298 را جستجو کنید و آن را نصب کنید. سپس به منوی File/Examples رفته و L298 را پیدا کنید و نمونه کد های راه اندازی درایور را ببینید.
مانند شکل بالا یک موتور و یک آردواینو و درایور را به هم متصل کنید
پین 12 ولت را به منبع ولتاژی متناسب با ولتاژ موتور متصل کنید
زمین مشترک آنها را نیز فراموش نکنید که به هم متصل شوند
حالا برنامه را بر روی آردواینو بارگزاری کنید
این مثال بدون استفاده از کتابخانه L298 کار می کند و نیازی به نصب کتابخانه ندارید
بعد از بارگزاری پنجره سریال را باز کنید
در قسمت پایین پنجره سریال جایی برای نوشتن وجود دارد که دستورات زیر را به برنامه ارسال میکند.
با حروف بزرگ دستورات A و یا S و یا C را نوشته و Enter را بزنید
C موتور در یک جهت حرکت می کند
S موتور متوقف می شود
A موتور در جهت عکس حرکت می کند
int dir1PinA = 6;
int dir2PinA = 7;
void setup() {
Serial.begin(9600); // baud rate
lcd.begin(20, 4);
pinMode(dir1PinA,OUTPUT);
pinMode(dir2PinA,OUTPUT);
}
void loop() {
if (Serial.available() > 0) {
int inByte = Serial.read();
switch (inByte) {
case 'C': // Clockwise rotation
digitalWrite(dir1PinA, LOW);
digitalWrite(dir2PinA, HIGH);
Serial.println("Clockwise rotation");
Serial.println(" ");
break;
case 'S': // No rotation
digitalWrite(dir1PinA, LOW);
digitalWrite(dir2PinA, LOW);
Serial.println("No rotation");
Serial.println(" ");
break;
case 'A': // Anti Clockwise rotation
digitalWrite(dir1PinA, HIGH);
digitalWrite(dir2PinA, LOW);
Serial.println("Anti Clockwise rotation");
Serial.println(" ");
break;
}