فهرست مطالب:

سومو ربات سومو چاپی آردوینو: 6 مرحله
سومو ربات سومو چاپی آردوینو: 6 مرحله

تصویری: سومو ربات سومو چاپی آردوینو: 6 مرحله

تصویری: سومو ربات سومو چاپی آردوینو: 6 مرحله
تصویری: Lesson 37: Using BME280 Humidity, Barometric Pressure and Temperature Sensor 2024, جولای
Anonim
ربات سومو پرینت سه بعدی آردوینو
ربات سومو پرینت سه بعدی آردوینو

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

  1. یکی از هر قسمت چاپ سه بعدی در اینجا یافت می شود.
  2. یک باتری 7.4 ولت یا دو باتری 18650.
  3. در صورت نیاز دارای نگهدارنده باتری
  4. آردوینو اونو
  5. سپر شکست آردوینو uno.
  6. کابل USB برای آردوینو
  7. منبع تغذیه روی میز (اختیاری).
  8. شارژر (اختیاری)
  9. سیم و تعداد زیادی از آنها.
  10. سرویس های چرخشی پیوسته دنده فلزی با اندازه استاندارد.
  11. دو سنسور سوئیچ ir.
  12. چرخ سروو 7 سانتی متری
  13. کلید روشن و خاموش.

این کد مدام در حال تغییر است. کد این ربات را می توانید در اینجا پیدا کنید. این به روزترین نسخه کد پروژه است. لذت بردن!

مرحله 1: مونتاژ

مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
  1. این ربات از دو سرو دنده فلزی استفاده می کند. شما می خواهید آنها را با استفاده از پیچ و مهره m3 و سرویس های داخل شاسی رو به بیرون در هر دو جهت پیچ کنید. تنها یک راه وجود دارد که سروها می توانند به داخل ربات بروند ، بنابراین این کار بسیار مستقیم خواهد بود.
  2. چرخ های سروو را وصل کنید.
  3. سنسورهای ir را به گونه ای متصل کنید که روبه رو به پایین در جلوی روبات قرار داشته باشند. آنها توسط دو پیچ از طریق سوراخ M3 در جلوی ربات متصل می شوند. در قسمت پایینی ربات شکاف هایی وجود دارد که می توانند از طریق آنها مشاهده شوند. شما می خواهید مراقب باشید سنسورها شاسی را بر نمی دارند و می توانند تمام شکاف ها را مشاهده کنند. بعداً با آزمایش روبات در مورد اینکه آیا کار دستی شما کار کرده است یا خیر ، در این باره بیشتر خواهید آموخت.
  4. سنسور HC-SR04 را در داخل دو سوراخ رو به روبوت از داخل قرار دهید. سوراخ ها در جلوی شاسی قرار دارند.
  5. Arduino Uno را داخل شاسی قرار دهید و سپر روی آن قرار گیرد.
  6. مطابق لیست گلوله های زیر همه چیز را به هم وصل کنید.

    1. از منبع تغذیه مورد نظر خود به سوئیچ تغذیه کنید. شما سیم مثبت یا منفی را به سوئیچ وصل می کنید. اگر برتری منفی را انتخاب کرده اید ، این زمینه شما خواهد بود در حالی که اگر سرور مثبت را انتخاب کرده اید ، منبع قدرت شما خواهد بود. سیم دیگر بسته به مثبت یا منفی بودن آن مثبت یا منفی شما خواهد بود.
    2. سرور مثبت را به آردوینو به وین و سرورهای پست را به سرو متصل کنید.
    3. در سرووها و آردوینو زمین را به زمین وصل کنید.
    4. 5v را از رگولاتور 5 ولت آردوینو به تمام ترمینال های مثبت هر یک از سنسورها وصل کنید.
    5. سنسورها را روی آردوینو وصل کنید.
    6. در نهایت پین 7 را روی آردوینو به سنسور ir راست ، پین 6 را به سنسور IR سمت چپ ، پین 8 را به یکی از سرووها ، پین 9 را به آخرین سروو وصل کنید.

هشدار: عدم سیم کشی صحیح روبات می تواند منجر به سیگار کشیدن ربات و از بین رفتن وسایل الکترونیکی شود

مرحله 2: اولین نشانه های زندگی

هشدار: روبات را به کامپیوتر متصل نکنید در حالی که برق کار می کند یا سرویس ها در حال وصل شدن هستند. عدم انجام این کار می تواند به کامپیوتر شما آسیب برساند

حالت int = 3 ؛

این خط کد بالا متغیر مهم برای ربات است. اگر برابر هر عدد ذکر شده در زیر باشد موارد زیر را انجام می دهد.

  1. در حالی که مساوی صفر است ، ربات در یک الگوی خاص حرکت می کند.
  2. اگر حالت برابر با یک باشد ، ربات خروجی هر یک از قرائت سنسورها را در رایانه چاپ می کند.
  3. هنگامی که این ربات برابر دو شود ، از لبه ها و موانع در صورت برخورد با آنها جلوگیری می کند.
  4. این ربات با ربات های دیگر مبارزه می کند.

اینها حالت های مختلف ربات هستند که برای آزمایش و کمک به پیشرفت ربات استفاده می شوند. در مرحله اول این آموزش باید آن "3" را به صفر تغییر دهید.

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

مرحله 3: قابل مشاهده است

حالت int = 0 ؛

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

نگران سنسور پینگ نباشید. به هر حال هنوز کار نکرده ام این ربات در حال توسعه شدید است.

مرحله 4: می تواند از لبه میز جلوگیری کند

void اجتناب () {

int sensorStateLeft = digitalRead (leftSensor) ؛

int sensorStateRight = digitalRead (rightSensor) ؛

تأخیر (50) ؛

if (Ping.ping_cm ()> = 15 && sensorStateLeft == 0 && sensorStateRight == 0) {

left.write (0)؛ right.write (90) ؛

}

if (Ping.ping_cm () <= 15 && Ping.ping_cm ()! = 0 || sensorStateLeft == 1 || sensorStateRight == 1) {

left.write (90)؛

right.write (0)؛ }

}

این کد بالا وقتی فراخوانی می شود که حالت برابر دو باشد. اگر مرحله قبلی به پایان رسیده است حالت را برابر با "2" کنید.

اگر سنسورها وارونه هستند ، می توانید "sensorStateLeft" و "sensorStateRight" را در هر یک از "اگر" معادل عدد متفاوتی نسبت به آنها که "1" یا "0" است معکوس کنید.

اکنون این ربات می تواند از حاشیه ورزشگاه سومو اجتناب کند. تقریباً آماده جنگ است. با خیال راحت آن را آزمایش کنید تا ببینید آیا کار می کند یا نه.

مرحله 5: نبرد

سومو شما با چند تغییر کد آماده جنگ است. حالت را برابر با "3" تغییر دهید و منطق را در خلاء "سومو" برعکس کنید. اکنون ربات شما باید از لبه عرصه اجتناب کند اما نمی تواند روبات های دیگر را تشخیص دهد. اساساً از لبه های عرصه اجتناب می کند و آنقدر سریع حرکت می کند که امیدوارم بتواند یک ربات را از لبه میز بیرون کند. لذت بردن!

مرحله ششم: نتیجه گیری

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

توصیه شده: