آردوینو آموزش آردوینو درایور موتور پروژه های آردوینو

هوشمند سازی ربات با مدار تشخیص مانع آلتراسونیک SRF و درایور موتور L293D

Obstacle-protect-with-arduino-l293d-and-srf-module-digispark
نوشته شده توسط پریسا پوربلورچیان

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

 


درایور موتور L293D


درایور موتور L293 همانطور که از نامش مشخص است، جهت کنترل موتور DC به کار برده می‌شود. تراشه به کار رفته در این شیلد از نوع L293D می‌باشد. این تراشه توانایی درایو موتور تا ۳۶ ولت را خواهد داشت. درایور موتور L293D دارای ۴ رابط کانکتور برای اتصال استپر موتور Stepper Motor و موتور ( ۲ استپر موتور + ۲ موتور DC) است. شیلد درایور موتور L293 دارای ۶ پین برای اتصال دو سرو موتور Servo Motor است که با نام‌های SER1 و SERVO_۲ بر روی شیلد مشخص شده است. جهت مطالعه اطلاعات کامل تر به لینک های زیر مراجعه کرده و بررسی کنید.

 

آموزش شیلد درایور موتور L293D با برد آردوینو بخش اول سرو Servo motor

آموزش شیلد درایور موتور L293D با برد آردوینو بخش دوم کنترل جهت موتور DC

 


ماژول تشخیص مانع آلتراسونیک SRF


ماژول فاصله سنج SRF، اجسام قرار گرفته شده در مسیر سنسور را تشخیص داده و سپس فاصله شی تا سنسور را اندازه گیری می‌کند. ولتاژ کاری ماژول فاصله سنج SRF بین ۴٫۵ تا ۵٫۵ ولت DC است. فرکانس کاری ماژول SRF در حدود ۴۰ کیلوهرتز است. این ماژول از ۵ پایه Trigger, Echo, Out, Vcc, Gnd تشکیل شده است. جهت محاسبه فاصله اندازه گیری شده از شی تا سنسور از فرمول زیر استفاده می‌شود. در آموزش‌های قبل کامل به توضیح آن پرداخته شده است. جهت مطالعه اطلاعات بیشتر به لینک زیر مراجعه کرده و بررسی نمایید.

آموزش شیلد مولتی فانکشن آردوینو ساخت فاصله سنج فراصوت با SRF05

هوشمند سازی ربات با مدار تشخیص مانع آلتراسونیک SRF و درایور موتور L293D - دیجی اسپارک

 


اجرای پروژه درایور موتور


در بخش سوم آموزش درایور موتور L293D، میخواهیم کنترل موتور DC و جهت حرکت آن را با ماژول تشخیص مانع آلتراسونیک SRF اجرا کنیم. به این ترتیب که پس از تشخیص مانع توسط ماژول آلتراسونیک SRF، هر دو موتور گیربکس دار DC به سمت عقب حرکت خواهد کرد. این اصول در ربات جهت حفاظت از برخورد با مانع پیاده سازی می‌شود. در پهپاد فانتوم Phantom DJI از تکنولوژی آلتراسونیک به همراه IR جهت تشخیص مانع و جلوگیری از برخورد پهپاد با مانع استفاده شده است. در ادامه به بررسی کد آردوینو Arduino و اتصالات آن خواهیم پرداخت.

 

 


اتصالات درایور موتور آردوینو


اتصال ماژول آلتراسونیک SRF

  • پایه تریگر Trigger ماژول آلتراسونیک SRF را به پایه ۲۱ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه اکو Echo ماژول آلتراسونیک SRF را به پایه ۲۰ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.

 

اتصال موتور گیربکس دار DC

  • موتور اول را به ترمینال M1 از شیلد درایور موتور L293 اتصال دهید.
  • موتور دوم را به ترمینال M21 از شیلد درایور موتور L293 اتصال دهید.

 


فراخوانی کتابخانه آردوینو


جهت راه اندازی موتور DC و ماژول آلتراسونیک نیاز به فراخوانی کتابخانه های آن ها داریم.

  • کتابخانه AFMotor

کتابخانه AFMotor جهت فراخوانی توابع موتور DC به کار برده می‌شود. لینک دانلود کتابخانه در صفحه محصول زیر در سایت دانشجوکیت قرار گرفته شده است. آن را دانلود و سپس ضمیمه کنید. شیلد درایور موتور L293D

  • کتابخانه Ultrasonic

کتابخانه Ultrasonic جهت فراخوانی توابع ماژول آلتراسونیک SRF به کار برده می‌شود.  لینک دانلود کتابخانه در صفحه محصول زیر در سایت دانشجوکیت قرار گرفته شده است. آن را دانلود و سپس ضمیمه کنید. ماژول آلتراسونیک تشخیص فاصله SRF05 Ultrasonic

تشخیص مانع با آردوینو Arduino درایور موتورL293 و ماژول آلتراسونیک SRF - دیجی اسپارک

 


کد آردوینو Arduino


جهت اجرای پروژه کدهای زیر را در کامپایلر آردوینو Arduino IDE وارد کنید.

 

مهمان گرامی، جهت دسترسی به کدهای این پروژه، اسپارکر شوید.

 


عملکرد پروژه


پس از کامپایل کد، با قرار گرفتن مانع در فاصله بین ۰ تا ۱۰ سانتی متر، سنسورها عمل کرده و هر دو موتور DC ب سمت عقب حرکت خواهد کرد. برای بررسی دقیق تر عملکرد پروژه سریال مانیتور را باز کرده و روی باد ریت ۹۶۰۰ تنظیم کنید. سپس یک مانع در رو به روی ماژول آلتراسونیک SRF قرار دهید. چنانچه فاصله مانع با سنسور در محدوده ۰ تا ۱۰ سانتی متر باشد، هر دو موتور به حرکت در خواهد آمد. همچنین با دور کردن مانع و فاصله بیش از ۱۰ سانتی متر هر دو موتور متوقف خواهد شد.

 

پروژه تشخیص مانع با ماژول SRF برد آردوینو و درایور موتور L293D - دیجی اسپارک


وسایل مورد نیاز


برد آردوینو Arduino Mega2560

شیلد درایور موتور L293

ماژول آلتراسونیک SRF

موتور DC گیربکس دار

برد برد کوچک مخصوص آردوینو Arduino

کابل جامپر مخصوص برد برد Breadboard

 

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 


پروژه و دریافت بن ارسال رایگان


طی چند قسمت قبلی که طرح پروژه را پیاده سازی کردیم، با استقبال شما کاربران مواجه شدیم. در این سری برای اینکه گستره بیشتری از افراد بتوانند فرصت استفاده از بن خرید را داشته باشند؛ روال دیگری را در پیش گرفتیم. در این روش تصمیم گرفته‌ایم به ۱۰ نفر از کاربران بن خرید ارایه شود. برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و بسته به خلاقیت، مدار جدیدی ایجاد کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ «#دیجی_اسپارک» و «#دانشجوکیت» و «#digispark» و «#daneshjookit» منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۰۳۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۲ دیدگاه

  • سلام و خسته نباشید
    از اینکه به نظرات اهمیت میدید بسیار ممنونم
    چند وقت پیش درخواست این پروژه را داشتم و الان با یک آموزش جامع و خوب رو به رو شدم
    باز هم ممنون