پروژه الکترونیکپروژه های آردوینوپروژه های ربات

پروژه ربات دنبال کننده خط با آردوینو (آموزش کامل ساخت مسیریاب Arduino)

سلام.پروژه ربات دنبال کننده خط با آردوینو (آموزش کامل ساخت مسیریاب Arduino) را آماده کردیم. فیلم عملکرد مدار را از دست ندهید!

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

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

ربات مسیریاب (مسیر یاب، دنبال کننده خط) یک ماشین است که به دنبال یک خط سفید یا سیاه است. اساسا دو نوع ربات دنبال کننده خط وجود دارد. یکی دنبال کننده خط سیاه و دیگری دنبال کننده خط سفید است. مفهوم کار این ربات به نور بستگی دارد. در این پروژه آردوینو کار ما دنبال کردن خط سیاه با ربات است. وقتی که نور بر یک سطح سفید بتابد، تقریبا کاملا منعکس میشود و وقتی که سطح سیاه باشد جذب میشود. این قضیه باعث میشود ربات مسیر یاب ما کار کند.

توضیحات مدار پروژه رباط مسیر یاب آردوینو

این ربات به 3 بخش تقسیم میشود:

  1. بخش سنسور
  2. بخش کنترل
  3. بخش راننده

بخش سنسور : این بخش شامل سنسور های IR، پتانسیومتر، ال ای دی، کمپراتور (آپ آمپ) است. پتانسیومتر برای تعیین ولتاژ مرجع در ترمنیال اول استفاده میشوند. و سنسور های مادون قرمز برای حس کردن خط و تغییر ولتاژ ترمینال دوم استفاده میشوند. سپس مقایسه کننده هر دو ولتاژ را مقایسه میکند و یک سیگنال را در خروجی خود تولید میکند. در این پروژه ما از LM358 به عنوان مقایسه کننده استفاده میکنیم.

 

ربات مسیریاب
ربات مسیریاب
ربات دنبال کننده خط
ربات دنبال کننده خط

در این ربات دنبال کننده خط، ما از فرستنده ها و گیرنده IR استفاده کردیم. ماژول های IR مبتنی به مادون قرمز هستند و برای ارسال و دریافت نور از آن ها استفاده میشود. با توجه به تصویر بالا، وقتی اشعه مادون قرمز به  سطح سفید بتابد، سطح آن را بازتاب میدهد به سمت گیرنده مادون قرمز. و وقتی به سطح سیاه بتابد، آن اشعه توسط سطح سیاه جذب میشو و هیچ اتفاقی نمی افتد!

حتما ببینید :  پروژه سرعت سنج GPS با آردوینو و نمایشگر OLED

بخش کنترل : از Arduino Pro Mini برای کنترل محاسبات ربات مسیریاب استفاده میکنیم. خروجی مقایسه کننده به پین شماره 2 و 3 آردوینو متصل میشود. آردوینو این سیگنال ها را میخواند و دستورات را به مدار درایور ارسال میکند تا ربات مسیر صحیح را دنبال کند.

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

همچنین ببینید : آموزش کامل ساخت ماشین دنبال کننده خط ( پروژه ربات مسیریاب PIC )

نحوه کار با پروژه دنبال کننده خط

کار با این ربات خیلی جالب است، این ربات با استفاده از سنسور ها خط سیاه را حس میکنند و سیگنال را به Arduino میفرستند و بعد آردوینو اطلاعات حرکت را به موتور ها اعلام میکند!

در این پروژه همانطور که گفتیم از 2 سنسور استفاده میکنیم که یکی در سمت راست و یکی در سمت چپ است. وقتی که دو سنسور سمت چپ و راست سطح سفید را حس کنند ربات به جلو حرکت میکند.

اگر سنسور سمت چپ روی سطح سیاه قرار بگیرد، ربات به سمت چپ حرکت میکند.

آموزش نحوه کار ربات مسیریاب آردوینو
آموزش نحوه کار ربات مسیر یاب آردوینو

اگر سنسور سمت راست روی خط سیاه قرار بگیرد، ربات به سمت راست میچرخد.

مسیریاب - پروژه آردوینو
مسیریاب – پروژه آردوینو

اگه هر دو سنسور روی خط سیاه باشند، ربات متوقف میشود!

توقف ربات دنبال کننده خط
توقف ربات دنبال کننده خط

تصاویر بالا را میتوانید با جدول زیر مقایسه کنید تا بهتر متوجه شوید :

اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید.
ورودیخروجیحرکت ربات
سنسور چپسنسور راستموتور چپRight موتور راست
LSRSLM1LM2RM1RM2
توقف ربات
11چرخش به راست
11چرخش به چپ
1111حرکت به جلو

قطعات مورد نیاز پروژه مسیریاب Arduino

  1. برد آردوینو Pro mini
  2. ماژول سنسور مادون قرمز – دو عدد
  3. موتور DC – دو عدد
  4. موتور درایور L293D 
  5. مقاومت 1 کیلو اهم – چهار عدد
  6. مقاومت 10 کیلو اهم – دو عدد
  7. پتانسیومتر 10 کیلو اهم – دو عدد
  8. مقایسه کننده آپ امپ LM358 – دو عدد
  9. باتری 9 ولت
  10. رگولاتور 7805
حتما ببینید :  آموزش ساخت اسکنر کد QR با رزبری پای و OpenCV

توضیحات کد پروژه

در قسمت اول کد ما پین های سنسور و موتور ها را تعریف میکند:

#define LS 2      // سنسور چپ
#define RS 3      // سنسور راست
#define LM1 4       // موتور چپ
#define LM2 5       // موتور چپ
#define RM1 6       // موتور راست
#define RM2 7       // موتور  راست

سپس در این قسمت ما حالت این پین ها را تعریف میکنیم، پین های سنسور به عنوان ورودی و پین های موتور به عنوان خروجی معرفی میشوند.

  pinMode(LS, INPUT); // ورودی
  pinMode(RS, INPUT); // ورودی
  pinMode(LM1, OUTPUT); // خروجی
  pinMode(LM2, OUTPUT); // خروجی
  pinMode(RM1, OUTPUT); // خروجی
  pinMode(RM2, OUTPUT); // خروجی

در قسمت پایین ما برای نمونه یک عملکرد ربات را توضیح میدهیم، ما در این قسمت تعریف میکنیم در چه حالت ربات باید به سمت راست بپیچد:

  if(!(digitalRead(LS)) && digitalRead(RS))     // هنگامی که سنسور سمت راست روی خط سیاه برود
  {
    digitalWrite(LM1, LOW); // موتور سمت چپ خاموش
    digitalWrite(LM2, LOW); // موتور سمت چپ خاموش
    digitalWrite(RM1, HIGH); // موتور سمت راست فعال
    digitalWrite(RM2, LOW); // موتور سمت راست
}

فیلم عملکرد پروژه : کلیک کنید !

موارد موجود در فایل : شماتیک کامل ، فایل Hex ، فایل آردوینو ، و …
برای دانلود فایل های پروژه ثبت نام کنید، تنها چند ثانیه زمان لازم است. از طریق فرم زیر اقدام کنید.

ایمیل خود را وارد کنید

نظرتان را در مورد این مطلب با ستاره دادن اعلام کنید امیدوارم این مطلب برای شما مفید بوده باشد. نظرات ، مشکلات و پیشنهادات خود را در پایین صفحه اعلام کنید
برچسب ها

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید)

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

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

دکمه بازگشت به بالا
بستن