فهرست مطالب:

آردوینو - ربات حل کننده ماز (MicroMouse) ربات زیر دیوار: 6 مرحله (همراه با تصاویر)
آردوینو - ربات حل کننده ماز (MicroMouse) ربات زیر دیوار: 6 مرحله (همراه با تصاویر)

تصویری: آردوینو - ربات حل کننده ماز (MicroMouse) ربات زیر دیوار: 6 مرحله (همراه با تصاویر)

تصویری: آردوینو - ربات حل کننده ماز (MicroMouse) ربات زیر دیوار: 6 مرحله (همراه با تصاویر)
تصویری: Habot V5 Micromouse Maze Solver Robot in 9th National Robotic Competition of Iran (Babol) 2024, جولای
Anonim
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار
آردوینو | ربات حل ماز (MicroMouse) ربات دنبال کننده دیوار

خوش آمدید من ایزاک هستم و این اولین ربات من "Striker v1.0" است. این ربات برای حل یک پیچ و خم ساده طراحی شده است. در مسابقه ما دو پیچ و خم داشتیم و ربات توانست آنها را شناسایی کند. هرگونه تغییر دیگر در پیچ و خم ممکن است نیاز به تغییر در کد و طرح داشته باشد ، اما انجام همه این کارها آسان است.

مرحله 1: قطعات

قطعات
قطعات
قطعات
قطعات
قطعات
قطعات

اول از همه باید بدانید که با چه چیزی سر و کار دارید.

روبات ها = برق + سخت افزار + نرم افزار 1- برق: باتری ها دارای مشخصات زیادی هستند ، فقط باید بدانید که چقدر جریان و ولتاژ نیاز دارید.

2- سخت افزار: "بدنه ، موتور ، درایور موتور ، سنسورها ، سیمها و کنترلر" شما فقط باید قسمتهای مهمی را که وظیفه را انجام می دهند تهیه کنید ، بدون نیاز به خرید یک کنترلر گران قیمت فانتزی برای یک کار ساده.

3- نرم افزار: کد همه در مورد منطق است. هنگامی که نحوه عملکرد کنترلر را درک کردید ، انتخاب توابع و ساده سازی کد برای شما آسان می شود. زبان کد بر اساس نوع کنترل کننده تعیین می شود.

لیست قسمت ها:

  1. آردوینو UNO
  2. موتورهای 12 ولت DC (x2)
  3. چرخ (x2)
  4. درایور موتور (L298N)
  5. سنسور فاصله (فوق صوتی)
  6. سیم ها
  7. باتری 12 ولت (1000 میلی آمپر ساعت)

لیست ابزارها:

  1. شارژر باطری
  2. ورق اکریلیک
  3. آهن لحیم کاری
  4. سیم چین
  5. روکش زیپ نایلونی

برای لذت بیشتر می توانید از LED ها برای روشن کردن آن استفاده کنید ، اما این خیلی مهم نیست.

مرحله 2: طراحی بدن

طراحی بدنه
طراحی بدنه
طراحی بدنه
طراحی بدنه
طراحی بدنه
طراحی بدنه

ایده اصلی این بود که قسمت های بالای بدن را روی هم چیده و از نایلون Zip Wrap برای تثبیت آردوینو استفاده کنید و سیم ها بقیه را به لطف وزن سبک خود تثبیت می کنند.

من از CorelDRAW برای طراحی بدنه استفاده کردم و در صورت هرگونه تغییر در آینده حفره های اضافی ایجاد کردم.

من برای استفاده از برش لیزری به یک کارگاه محلی رفتم و سپس همه را با هم ساختم. بعداً ، برخی تغییرات را انجام دادم زیرا موتورها بیشتر از آنچه انتظار داشتم بودند. من می خواهم بگویم که لازم نیست ربات شما به روشی مشابه من ساخته شود.

فایل PDF و فایل CorelDRAW ضمیمه شده است.

اگر نمی توانید طرح را با لیزر برش دهید ، نگران نباشید. تا زمانی که یک آردوینو ، سنسورها و موتورهای مشابه دارید ، باید بتوانید کد من را با تغییرات جزئی روی ربات خود کار کنید.

مرحله 3: پیاده سازی (ساخت)

پیاده سازی (ساختمان)
پیاده سازی (ساختمان)
پیاده سازی (ساختمان)
پیاده سازی (ساختمان)
پیاده سازی (ساختمان)
پیاده سازی (ساختمان)

این طراحی باعث شده است که حسگرها بر روی بدنه به راحتی تعمیر شوند.

مرحله 4: سیم کشی

سیم کشی
سیم کشی
سیم کشی
سیم کشی
سیم کشی
سیم کشی

در اینجا یک نمودار کلی از این روبات است. این اتصالات مربوط به کد است. شما می توانید اتصالات را تغییر دهید اما مطمئن شوید که کد را با آن تغییر دهید. قطعات. سنسورها

من می خواهم "سنسور اولتراسونیک" را توضیح دهم

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

اتصال سنسور اولتراسونیک به آردوینو:

  1. پین GND به Ground متصل است.
  2. پین VCC به Positive (5v) متصل است.
  3. پین اکو به آردوینو متصل است. (هر پینی را انتخاب کرده و با کد مطابقت دهید)
  4. پین TRIG به آردوینو متصل است. (هر پینی را انتخاب کرده و با کد مطابقت دهید)

شما یک Ground مشترک ایجاد می کنید و همه GND ها را به آن وصل می کنید (سنسورها ، آردوینو ، درایور) همه زمینه ها باید متصل باشند.

برای پین های Vcc نیز 3 سنسور را به پین 5 ولت وصل کنید

(می توانید آنها را به Arduino یا Driver متصل کنید ، من درایور را توصیه می کنم)

توجه: سنسورها را به ولتاژ بالای 5 ولت وصل نکنید وگرنه خراب می شود.

راننده موتور

پل L298N H: این یک IC است که به شما امکان می دهد سرعت و جهت دو موتور DC را کنترل کنید یا یک موتور پله دوقطبی را به راحتی کنترل کنید. راننده پل L298N را می توان با موتورهایی که ولتاژ بین آنها دارند استفاده کرد. 5 و 35 ولت DC.

همچنین یک رگولاتور 5 ولت روی برد وجود دارد ، بنابراین اگر ولتاژ منبع تغذیه شما تا 12 ولت است ، می توانید 5 ولت را نیز از برد تامین کنید.

تصویر را در نظر بگیرید - اعداد را با لیست زیر تصویر مطابقت دهید:

  1. موتور DC 1 "+"
  2. موتور DC 1 "-"
  3. بلوز 12 ولت - در صورت استفاده از ولتاژ منبع تغذیه بیشتر از 12 ولت DC ، آن را بردارید. این تنظیم کننده 5 ولت را فعال می کند
  4. ولتاژ منبع تغذیه موتور خود را در اینجا ، حداکثر 35 ولت DC وصل کنید.
  5. GND
  6. خروجی 5 ولت در صورت جهش 12 ولت در محل
  7. موتور DC 1 بلوز را فعال می کند. بلوز را بردارید و برای کنترل سرعت موتور DC به خروجی PWM وصل شوید.
  8. کنترل جهت IN1
  9. کنترل جهت IN2
  10. کنترل جهت IN3
  11. کنترل جهت IN4
  12. موتور DC 2 بلوز را فعال می کند. برای کنترل سرعت موتور DC ، بلوز را برداشته و به خروجی PWM وصل شوید
  13. موتور DC 2 "+"
  14. موتور DC 2 "-"

توجه: این درایور در هر کانال 1A را مجاز می کند ، تخلیه جریان بیشتر به IC آسیب می رساند.

باتری

من از باتری 12 ولت با 1000 میلی آمپر ساعت استفاده کردم.

جدول بالا نحوه افت ولتاژ هنگام تخلیه باتری را نشان می دهد. باید آن را در نظر داشته باشید و باید دائماً باتری را شارژ کنید.

زمان تخلیه اساساً درجه Ah یا mAh تقسیم بر جریان است.

بنابراین برای باتری 1000 میلی آمپر ساعتی با باری که 300 میلی آمپر را جذب می کند ، موارد زیر را دارید:

1000/300 = 3.3 ساعت

اگر جریان بیشتری را تخلیه کنید زمان کاهش می یابد و غیره. توجه: مطمئن شوید که از جریان تخلیه باتری فراتر نروید وگرنه آسیب می بیند.

همچنین دوباره یک Ground مشترک ایجاد کنید و همه GND ها را به آن وصل کنید (سنسورها ، Arduino ، Driver) همه زمینه ها باید متصل شوند.

مرحله 5: کد نویسی

کد نویسی
کد نویسی
کد نویسی
کد نویسی

من اینها را به توابع تبدیل کردم و از برنامه نویسی این ربات لذت بردم.

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

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

پیچ و خم قرمز از الگوریتم زیر دیوار چپ استفاده می کند.

عکس بالا راه خروج را در هر دو پیچ و خم نشان می دهد.

جریان کد:

  1. تعیین پین ها
  2. تعیین پین های خروجی و ورودی
  3. قرائت سنسورها را بررسی کنید
  4. از خواندن سنسورها برای تعریف دیوارها استفاده کنید
  5. مسیر اول را بررسی کنید (اگر سمت چپ بود ، دیوار چپ را دنبال کنید ، اگر راست است ، دیوار راست را دنبال کنید)
  6. برای جلوگیری از برخورد با دیوارها و کنترل سرعت موتورها از PID استفاده کنید

می توانید از این کد استفاده کنید اما پین ها و اعداد ثابت را تغییر دهید تا بهترین نتایج را به دست آورید.

برای دریافت کد این لینک را دنبال کنید

create.arduino.cc/editor/is7aq_shs/391be92…

برای مشاهده کتابخانه و فایل کد آردوینو این پیوند را دنبال کنید.

github.com/Is7aQ/Maze-Solving-Robot

مرحله ششم: از آن لذت ببرید

اطمینان حاصل کنید که از آن لذت ببرید: D این همه برای سرگرمی است اگر کار نمی کند یا اگر مشکلی وجود دارد نگران نباشید. خطا را پیگیری کنید و تسلیم نشوید. با تشکر از خواندن و امیدوارم کمک کرده باشد. تماس با:

ایمیل: [email protected]

توصیه شده: