کنترل موتور DC با آردینو

0
22
کنترل موتور DC با آردینو
کنترل موتور DC با آردینو

با اتصال آی سی پل L298 به آردینو می‌توانید یک موتور DC را کنترل کنید.

مقدمه

موتور جریان مستقیم یا DC متداول ترین نوع موتور است. موتو dc دو سر دارد یک سر مثبت و یک سر منفی دارد. اگر این دو سر را مستقیم به باتری متصل کنیم موتور شروع به چرخیدن می‌کند. اگر جای مثبت و منفی را عوض کنید موتور بر عکس می‌چرخد.

برای کنترل جهت چرخش موتور بدون جا به جا کردن دو سر موتور می‌توان از مدار که به آن پل H می‌گویند استفاده کرد. پل H یک مدار الکترونیکی است که با آن می‌توان موتور را به هردو جهت هدایت کرد.

پل H

پل H در مدارات مختلفی به کا ر می‌رود یکی از انها کنترل موتورها در ربات‌ها است. به این علت پل H می‌گویند که چهار ترانزیستور به نحوی قرار داده شده که شکل شماتیک ان شبیه حرف H است.

می‌توان از ترانزیستور‌های مجزا برای درست کردن این مدار استفاده کنید. اما در اینجا  از L298 h BRIDGE استفاده می‌کنیم. L298 می‌تواند سرعت و جهت موتور DC و استپر موتور را کنترل کند.

رنج جریان 2 آمپر برای هر موتور است. در این جریان‌ها چه بسا باید از HEAT SINK  استفاده کرد.

شکل پایه‌های L298 در شکل زیر نمایان است.

کنترل موتور DC با آردینو
کنترل موتور DC با آردینو

سخت افزار مورد نیاز:

  • L298 BRIDGE IC
  • DC MOTOR
  • ARDUINO MEGA 2560
  • BREADBOARD
  • 10 * سیم جامپر

 

کنترل موتور DC با آردینو
کنترل موتور DC با آردینو

شماتیک بالا نشان می‌دهد که آی سی L298 برای کنترل موتور چگونه متصل شده است.

سه پین ورودی برای هر موتور وجود دارد که شامل ورودی 1 IN1, ورودی دوم IN2 پایه ی ENABLE 1 برای موتور اول و ورودی 3 و ورودی 4 و ENABLE 2 برای موتور دوم است.

تا زمانی که در این آزمایش یک موتور را کنترل می‌کنیم ما آردوینو را به In1 , in2 ,enable1 آی سی L298 متصل می‌کنیم.

جدول زیر نشان می‌دهد که موتور به کدام سمت می‌‌چرخد براساس مقادیر in1 , in2

کنترل موتور DC با آردینو
کنترل موتور DC با آردینو

پین in1  از آی سی l298 به پایه 8 اردوینو متصل شده و in2 به پین 9  متصل شده است.

این دو پین دیجیتال آردوینو  جهت موتور را مشخص می‌کنند. پین EN A آی سی به pwm (pin2) آردوینو متصل شده است. این سرعت موتور را کنترل می‌کند.

برای تنظیم مقادیر پین 8 و 9 آردوینو ما از توابع دیجیتال استفاده می‌کنیم و  برای تنظیم مقادیر پین 2 از توابع آنالوگ استفاده می‌کنیم.

 

کنترل موتور DC با آردینو
کنترل موتور DC با آردینو

کد:

 

                 const int pwm = 2 ;        //initializing pin 2 as pwm

const int in_1 = 8 ;

const int in_2 = 9 ;

//For providing logic to L298 IC to choose the direction of the DC motor

void setup()

{

pinMode(pwm,OUTPUT) ;     //we have to set PWM pin as output

pinMode(in_1,OUTPUT) ;    //Logic pins are also set as output

pinMode(in_2,OUTPUT) ;

}

void loop()

{

//For Clock wise motion , in_1 = High , in_2 = Low

digitalWrite(in_1,HIGH) ;

digitalWrite(in_2,LOW) ;

analogWrite(pwm,255) ;

/*setting pwm of the motor to 255

we can change the speed of rotaion

by chaning pwm input but we are only

using arduino so we are using higest

value to driver the motor  */

//Clockwise for 3 secs

delay(3000) ;

//For brake

digitalWrite(in_1,HIGH) ;

digitalWrite(in_2,HIGH) ;

delay(1000) ;

//For Anti Clock-wise motion – IN_1 = LOW , IN_2 = HIGH

digitalWrite(in_1,LOW) ;

digitalWrite(in_2,HIGH) ;

delay(3000) ;

//For brake

digitalWrite(in_1,HIGH) ;

digitalWrite(in_2,HIGH) ;

delay(1000) ;

 }

تنظیمات :

  1. اتصال تغذیه 5 ولت و زمین آی سی به زمین و تغذیه آردوینو
  2. اتصال موتور به پین 2 و 3 آی سی
  3. اتصال IN 1 آی سی به پین 8 آردوینو
  4. اتصال IN2 آی سی به پین 8 آردوینو
  5. اتصال sens a آی سی به زمین .
  6. اتصال EN1 آی سی به پین 2 آردوینو
  7. اتصال آردوینو با استفاده از کابل usb آردوینو و آپلود کردن برنامه به آردوینو با استفاده از نرم افزار IDE آردوینو
  8. فراهم کردن تغذیه برد آردوینو با استفاده از منبع تغذیه و باتری و یا کابل USB

 

موتور ابتدا باید به مدت 3 ثانیه در جهت عقربه‌های ساعت بچرخد سپس باید به مدت 3 ثانیه در خلاف جهت عقربه‌های ساعت.

 

 

 

مطلب قبلیآشنایی با محیط PCB در آلتیوم دیزاینر
مطلب بعدیروش‌های كاهش نويز در مدارهای الكترونيكی (دانلود مقاله)

پاسخ دهید

لطفا نظر خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید