فهرست مطالب:

ARCA (Android Remote Controlled Android): 4 مرحله (همراه با تصاویر)
ARCA (Android Remote Controlled Android): 4 مرحله (همراه با تصاویر)

تصویری: ARCA (Android Remote Controlled Android): 4 مرحله (همراه با تصاویر)

تصویری: ARCA (Android Remote Controlled Android): 4 مرحله (همراه با تصاویر)
تصویری: Fortress Android: Building an Unbreakable Mobile Defense 2024, جولای
Anonim
ARCA (Android Remote Controlled Android)
ARCA (Android Remote Controlled Android)
ARCA (Android Remote Controlled Android)
ARCA (Android Remote Controlled Android)
ARCA (Android Remote Controlled Android)
ARCA (Android Remote Controlled Android)

این دستورالعمل برای برآوردن الزامات پروژه Makecourse در دانشگاه فلوریدا جنوبی (www.makecourse.com) ایجاد شده است.

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

عملکرد این ربات با نمایش احساسات مختلف بر روی ماتریس LED 8 در 8 است ، این احساسات شامل شادی ، خواب ، عشق ، عصبانیت ، احمقانه ، و نگاه به بالا ، چپ و راست است. این ربات نیز مانند یک ماشین RC عمل می کند و می تواند به جلو حرکت کرده و به چپ یا راست بپیچد. ربات با فعال کردن هر دو موتور چرخ جلو می رود ، با روشن کردن موتور راست به چپ می چرخد و با روشن کردن موتور چپ به راست می چرخد. طراحی بسیار ساده است اما فقط کار می کند ، و من می خواستم تمرکز زیادی بر برنامه نویسی آردوینو داشته باشم ، زیرا من یک برنامه نویس هستم.

آخرین نسخه های تمام فایل های مورد استفاده در این آموزش را می توانید در مخزن Github ARCA من پیدا کنید.

مرحله 1: لیست قطعات و چاپ سه بعدی

لیست قطعات و چاپ سه بعدی
لیست قطعات و چاپ سه بعدی
لیست قطعات و چاپ سه بعدی
لیست قطعات و چاپ سه بعدی

قطعات این پروژه را می توان به صورت سه بعدی چاپ کرد یا به صورت آنلاین خریداری کرد. وقتی به مونتاژ فکر می کردم ، می خواستم کارایی را کلید بزنم و همچنین سعی کنم چرخ (به معنای واقعی کلمه) را دوباره اختراع نکنم. چاپگر سه بعدی مورد استفاده برای این پروژه Makerbot Replicator بود ، اگر می خواهید مطمئن شوید که چاپ های سه بعدی شما با من مطابقت دارد ، از این چاپگر استفاده کنید.

اجزای سازه ای

  • جعبه ای با سوراخ در کناره ها برای چرخ ها و بازوها
  • درب جعبه با سوراخ برای چرخ های عقب و سوراخ برای سنسور IR
  • بازوی چپ
  • بازوی راست
  • محور برای دو چرخ عقب
  • دو اتصال دهنده محور برای اتصال درب به محور
  • 4 چرخ (موتورها نیز در این پیوند موجود است)
  • پیچ های کوچک (برای قرار گرفتن در موتورها)

قطعات الکتریکی

  • آردوینو اونو
  • نان برد کوچک (من کیت آردوینو را خریدم و همراه آن آمد)
  • دو ماتریس نقطه قرمز MAX7219 با کنترل MCU
  • گیرنده مادون قرمز و از راه دور
  • دو ترانزیستور TIP 120
  • اتصال سیم (من از سیمهای نر به ماده و همچنین از نر به نر استفاده کردم و توصیه می کنم سیمهای بلند را برخلاف سیمهای کوتاه بگیرید)
  • یک مقاومت 220 اهم
  • دو موتور دنده ای
  • پاورهای قابل اتصال USB (قابل حمل که برای تلفن های همراه استفاده می شود)

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

مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ
مونتاژ

مجمع ساختاری

قطعات چاپ شده سه بعدی به احتمال زیاد نیاز به تمیز کردن دارند ، و من توصیه می کنم آن را با ماسه ریز خرد کنید و از استون (پاک کننده لاک ناخن) برای از بین بردن بقایای چسب مورد استفاده در فرایند چاپ سه بعدی استفاده کنید. برخی از قطعات ممکن است کاملاً مناسب نباشند ، و لازم بود که محور را سنباده زنی کنم تا کاملا گرد باشد و به درستی از سوراخ ها عبور کند.

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

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

بقیه مونتاژ کاملاً مستقیم است:

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

مونتاژ برق

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

پشت تخته نان من پشتی چسبناکی داشت ، اما اگر چسب شما اینطور نیست می توانید از نوار برقی برای چسباندن آن استفاده کنید. نوار برقی همچنین برای چسباندن قطعات الکتریکی که در برد نیستند ، به دلایل ایمنی استفاده شد. MCU با نمایشگرهای LED با استفاده از نوار الکتریکی به پشت حفره چشم متصل شده و موتورها نیز با استفاده از نوار برقی به طرف جعبه نزدیک به سوراخ ها متصل شده اند. من از نوار برقی قرمز برای نامرئی شدن آن استفاده کردم ، و توصیه می کنم از نوار برقی با رنگ مشابه نسخه ARCA خود استفاده کنید.

تخته نان و پین ها مانند این تصویر Fritzing تنظیم شده اند. اگر می خواهید موارد بیشتری را برای سفارشی سازی ARCA به این نمودار اضافه کنید ، می توانید فایل Fritzing را در مخزن Github من بارگیری کرده و آن را به محتوای دلخواه خود ویرایش کنید.

من سیم ها را به حلقه های موتورهای چرخ دنده با خم شدن سیم ها در اطراف حلقه ها متصل کردم تا آنها را متصل نگه دارم. اگر به آهن لحیم کاری دسترسی دارید ، لحیم کاری این اتصالات احتمالاً ایده بهتری خواهد بود ، اما در صورت نداشتن این راه حل آسان است.

پاور به همان سیم مورد استفاده برای اتصال Arduino به رایانه برای بارگیری برنامه شما متصل شده است ، و این فقط در ربات شل شده است بنابراین می توان آن را به راحتی جدا و شارژ کرد.

مرحله 3: برنامه نویسی

برنامه نويسي
برنامه نويسي

در اینجا کدی است که می توانید در ARCA خود بارگذاری کنید تا عملکرد آن دقیقاً مانند من باشد ، همچنین برای استفاده از کد به دو کتابخانه زیر نیاز دارید.

با این حال ، به منظور وضوح و سفارشی سازی ، من کد شما را در اختیار شما قرار می دهم. اگر روبات خود را سفارشی نمی کنید یا قصد تغییر احساسات را ندارید ، می توانید این مرحله را کنار بگذارید.

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

در مرحله بعد ، من احساسات را تعریف کردم ، اشیاء لازم برای سنسور IR و نمایشگرهای 8 در 8 LED را اعلام کردم و برخی متغیرهای کلی را تعریف کردم. احساسات در یک آرایه بایت اعلام می شوند ، جایی که هر یک از اعداد هگز در آرایه نشان دهنده ردیف های نمایش 8 در 8 است. برای ایجاد احساسات سفارشی ، توصیه می کنم احساسی را که می خواهید در یک شبکه 8 در 8 ترسیم کنید ، و سپس هر ردیف 8 بیتی را که عدد خنثی آن 0 و چراغ روشن 1 است ، بنویسید و سپس ایجاد کنید یک عدد هگزا دسیمال از آن و آن را در یک آرایه با طول 8 قرار داده ام. همچنین برخی از متغیرهای جهانی را برای استفاده در حلقه تعریف کرده ام. متغیرهای مکانیسم چشمک زدن و اشاره گرها برای ذخیره احساسات و تنظیم آنها برای شروع در حالت خنثی.

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

در حلقه ، اساساً منتظر می ماند تا سیگنال IR وضعیت موجود ربات را تغییر دهد. بنابراین اگر یک سیگنال IR دریافت شود و با یکی از کدهای یک دکمه خاص مطابقت داشته باشد ، آن عبارت فعال می شود و مقدار چشم چپ و چشم راست را بر حسب احساسات تنظیم می کند. اگر دکمه حرکت را فشار دهید ، مانند چپ ، راست ، جلو و OK ، پین ها به صورت دیجیتالی نوشته می شوند تا بسته به دکمه فشرده روشن یا خاموش باشند. فقط به کدهای گیرنده IR توجه داشته باشید: یک کد نمونه در کتابخانه راه دور IR وجود دارد که به شما کدهای هگز را برای ریموت کنترل می دهد ، اگر با فشردن دکمه ها هیچ اتفاقی نیفتد ، این برنامه را باز کنید تا از صحت کدها مطمئن شوید. تنها کاری که باید انجام دهید این است که عدد شش ضلعی که با هر دکمه همراه است را تغییر دهید.

در نهایت ، شما عملکردی دارید که احساسات را در نمایشگرهای 8 در 8 چاپ می کند. این از توابع setRow از کتابخانه کنترل LED استفاده می کند و فقط آرایه هایی را که ایجاد کرده اید می گذراند و ردیف ها را بر این اساس تنظیم می کند. دو پارامتر دارد: آرایه برای چشم چپ و آرایه برای چشم راست. این می تواند نشانگر بایت یا خود آرایه بایت (یعنی نام "خنثی") باشد که مانند اشاره گر عمل می کند.

مرحله 4: نکات و ترفندهای پاداش

نکات و ترفندهای پاداش
نکات و ترفندهای پاداش

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

  • منابع آنلاین زیادی برای آردوینو وجود دارد و به نظر من مفیدترین آنها از وب سایت آردوینو به دلیل نمونه های کد روشن و مختصر آنها است.
  • چرخ را دوباره اختراع نکنید ، تعداد زیادی کیت و قطعات از پیش ساخته شده وجود دارد که می توانید از آنها برای سهولت پروژه خود استفاده کنید. من یک برنامه نویس هستم و یک مهندس مکانیک نیستم و برایم سخت بود که بفهمم چگونه می خواهم این ربات را به راه بیندازم ، اما به راحتی می توان چیزی را برای خرید آنلاین پیدا کرد و آن را در طراحی من پیاده کرد در حالی که به معنای واقعی کلمه از نو اختراع شد. چرخ
  • کتابخانه ها دوست شما در آردوینو و همچنین در همه زبان های شی گرا هستند و به دلایلی وجود دارند. این را با میکرو کنترلرها جفت کنید و برنامه ریزی LED 8 در 8 ساده است. من قبلاً یکی از این موارد را با دست برنامه ریزی کرده ام و فقط یک مورد از هر پین در آردوینو استفاده می کند و به یک تن کد نیاز دارد. بسیار آشفته و چندان سرگرم کننده نیست.
  • چاپگرهای سه بعدی عالی هستند اما بی نقص نیستند و نیازی نیست که برخی از وسایل را خرد کنید. به همین دلیل ترجیح می دهید هنگام چاپ سه بعدی بزرگتر شوید ، زیرا در بیشتر موارد می توانید کمی آن را سمباده بزنید تا به بهترین شکل برسید.
  • برق می تواند مشکل ساز باشد زیرا من در آخرین لحظه به مصرف برق فکر کردم و فکر کردم که یک باتری 5 ولت این کار را انجام می دهد. سپس ، به ظاهر تصادفی ، گاهی اوقات یک موتور یا یک صفحه نمایش LED کار نمی کند. هنگامی که به پاور پک ارتقاء دادم ، علیرغم حجیم بودن بیشتر درون ربات ، دیگر مشکلی وجود نداشت.

توصیه شده: