خانه / آردوینو ( Arduino ) / آموزش پروژه محور آردوینو – جلسه پانزدهم چرخش معکوس موتور DC

آموزش پروژه محور آردوینو – جلسه پانزدهم چرخش معکوس موتور DC

به نام خدا

آموزش پروژه محور آردوینو – جلسه پانزدهم چرخش معکوس موتور DC

در این جلسه می خواهیم کنترل سرعت یک موتور  DC را در دو جهت ساعت گرد و پادساعتگرد توسط آی سی L293D و برد آردوینو آموزش دهیم .

learn_arduino_overview

 

قطعات مورد نیاز پروژه :

– موتور DC کوچک

learn_arduino_dc_motor

 

– آی سی L293D

L293d

 

–  پتانسیومتر ۱۰ کیلو اهم

learn_arduino_pot

 

– میکروسوئیچ

learn_arduino_switch_click

 

– بردبورد

learn_arduino_breadboard_half_web

 

– برد آردوینو UNO

learn_arduino_uno_r3_web

 

– تعدادی سیم

learn_arduino_jumpers_web

 

یک آزمایش :

موتور را طبق مدار زیر به آردوینو وصل کنید . اگر جای سیم های سبز و زرد را عوض کنید خواهید دید که جهت چرخش موتور معکوس می شود .

learn_arduino_fritzing_pwr_only

 

ما باید این عمل معکوس کردن چرخش موتور ها را بدون دخالت دست انجام دهیم ، برای این کار از آی سی L293D استفاده خواهیم کرد .

مدار زیر را ببندید .

learn_arduino_fritzing_chip_only

 

سه پین اصلی از آی سی L293D که مورد نیاز ما است ، پین ۱ ( Enable ) ، پین ۲ ( In1 ) و پین ۷ ( In2 ) می باشد . پین ۱ توسط سیم بنفش به زمین یا ۵ ولت وصل می شود ، پین ۲ و ۷ توسط سیم های زرد و نارنجی به آردوینو وصل می شوند ( البته ما در مدار بالا این دو پایه را به زمین و ۵ ولت وصل کرده ایم تا عملکرد آی سی را نشان دهیم ) .

بیشتر بخوانید...  آموزش ساخت مدار ارتباط صوتی دو طرفه

اگر پین ۱ یعنی پین Enable به زمین وصل شود صرف نظر از این که پین های ۲ و ۷ ولتاژ دارند یا ندارند موتور کار نخواهد کرد و متوقف خواهد شد . به عبارتی می توان گفت ما برای کنترل سرعت چرخش موتور باید پالس PWM خود را به این پایه ( پایه Enable ) بدهیم .

پایه های ۲ و ۷ اگر هر دو مثبت یا هر دو منفی باشند موتور متوقف می شود ، اگر یکی مثبت و دیگری منفی باشد در یک جهت می چرخند و اگر جای این دو با هم عوض شود در خلاف جهت قبلی خواهد چرخید .

In1

In2

Motor

GNDGNDتوقف
۵VGNDچرخش در جهت A
GND۵Vچرخش در جهت B
۵V۵Vتوقف

 

مدار زیر را ببندید .

learn_arduino_fritzing

 

کد های برنامه را از لینک زیر دانلود کنید و بر روی برد آردوینو آپلود کنید .

 

دانلود فایل

 

پین ها در تابع setup تعریف شده اند .

بیشتر بخوانید...  تولید تن صدا با ضربه زدن به انگشتان دست با استفاده از آردوینو

در حلقه اصلی برنامه عدد خوانده شده از واحد ADC که به پتانسیومتر وصل است را بر ۴ تقسیم می کنیم و این عدد را به پین ۱ آی سی L293D می دهیم . دلیل این کار این است که واحد ADC ما ۱۰ بیتی است و عددی که دریافت می کند بین ۰ تا ۱۰۲۳ می باشد اما PWM ما ۸ بیتی است و عددی بین ۰ تا ۲۵۵ لازم دارد . با فشار دادن میکروسوئیچ جهت چرخش موتور عوض می شود . این کار در تابع setmotor که در برنامه آمده انجام می شود .

شکل زیر پایه های آی سی L293D را شرح می دهد .

learn_arduino_L293d

آی سی L293D برای دو موتور طراحی شده است . پایه های IN3 و IN4 معادل IN1 و IN2 هستند ، پایه های OUT3 و OUT4 معادل OUT1 و OUT2 هستند و پایه EN2 معادل پایه EN1 است .

 

درباره‌ی Admin

همچنین بخوانید...

دماسنج دیجیتال با استفاده از آردوینو و سنسور دما LM335

پروژه ی دماسنج دیجیتال با آردوینو و سنسور دما LM335 به همراه کد

به نام خدا پروژه ی دماسنج دیجیتال با آردوینو و سنسور دما LM335 به همراه …

نمایش دما و رطوبت روی lcd بوسیله آردوینو و سنسور DHT22

نمایش دما و رطوبت روی lcd بوسیله آردوینو و سنسور DHT22

به نام خدا نمایش دما و رطوبت روی lcd بوسیله آردوینو و سنسور DHT22   …

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سلام ،خوش آمدید
آیا می خواهید آموزش ها و پروژه های جدید برای شما ارسال شود؟
مشخصات خود را وارد نمایید
متشکرم
منتظر فایل های ما باشید