ربات پیشخدمت و سطل زباله هوشمند با رزبریپای
دنیای رباتیک پر از ایدههای خلاقانه و کاربردیه. یکی از این ایدههای جذاب، ساخت رباتیه که هم بتونه مسیر رو تشخیص بده و هم به عنوان یه پیشخدمت کوچیک یا سطل زباله هوشمند متحرک تو محیط حرکت کنه. ترکیب سنسورهای التراسونیک، ماژول مسیریاب و یه میکروکنترلر قدرتمند مثل رزبریپای پیکو، به ما این امکان رو میده که یه ربات تعاملی خفن بسازیم.
این ربات میتونه روی خطوط مشخص حرکت کنه، موانع رو تشخیص بده و با استفاده از یه سروو موتور، در سطل زباله کوچیکی که روش نصب شده رو باز و بسته کنه. طراحی مکانیکی این پروژه طوریه که میتونی قطعاتش رو با پرینتر سهبعدی چاپ کنی و یه شاسی محکم براش بسازی.
تو این آموزش از آیسیمدار، میخوایم قدمبهقدم این ربات دوستداشتنی رو مونتاژ کنیم. از سرهم کردن شاسی و وصل کردن موتورها تا سیمکشی سنسورها و برد اصلی رو با هم پیش میبریم. قطعاتت رو آماده کن تا بریم سراغ ساخت این پروژه هیجانانگیز.
قطعات موردنیاز
- سروو موتور مدل SG90 یا MG90
- دو عدد ماژول التراسونیک HC-SR04
- دو عدد موتور گیربکسدار TT به همراه چرخ
- باتری لیتیومی 9 ولت
- قطعات چاپ شده با پرینتر سهبعدی
- بلبرینگ 13 میلیمتری برای چرخ هرزگرد
- سیمهای جامپر
- ماژول مسیریاب
- یه سطل زباله اسباببازی و کوچیک
- ماژول کاهنده ولتاژ MP2307
- سوکتهای پینهدر مادگی
- پینهدرهای نری
- سیمهای جامپر (نری به مادگی و مادگی به مادگی با طول 20 تا 30 سانتیمتر)
- ترمینالهای پیچی روبردی
- درایور موتور مدل DRV8833
- مقاومتهای 330 اهم، 2 کیلواهم و 1 کیلواهم
- الایدی برای نشانگر روشن بودن مدار
- ترانزیستور مدل S8050
- بازر یا بلندگوی کوچیک روبردی
طراحی برد کنترلر
هسته اصلی این ربات بر پایه برد رزبریپای پیکو طراحی شده که روی یه برد سوراخدار (پرفبرد) مونتاژ میشه. البته تو میتونی از هر کنترلر دیگهای استفاده کنی، به شرطی که بتونه دو تا سنسور التراسونیک، دو تا موتور DC، یه سروو موتور و ماژول مسیریاب رو پشتیبانی کنه.
اضافه کردن یه بازر به عنوان بوق کاملا اختیاریه و وقتی ربات برای مدت طولانی جایی گیر میکنه، میتونه با بوق زدن هشدار بده. همچنین یه رابط I2C هم در نظر گرفته شده تا در آینده بتونی سنسوری مثل ژیروسکوپ رو بهش اضافه کنی تا اگه ربات افتاد یا کسی هلش داد، سریع متوجه بشه.
یکی از قطعات سهبعدی این پروژه مخصوص نگه داشتن همین برد کنترلر طراحی شده. پس اگه تصمیم گرفتی از یه میکروکنترلر دیگه استفاده کنی، احتمالا باید ابعاد این قطعه نگهدارنده رو هم متناسب با بردت تغییر بدی.
آمادهسازی شاسی و قطعات سهبعدی
بدنه اصلی این ربات از قطعات چاپ سهبعدی تشکیل شده و پرینت گرفتن همهشون یه مقدار زمانبره. این قطعات با نرمافزارهای طراحی آماده شدن و فایلهاشون به راحتی در دسترسه تا بتونی به دلخواه خودت ویرایششون کنی.
طرح سهبعدی اولیه شامل یه سطل زباله ساده هم میشه، اما برای اینکه رباتت ظاهر خیلی تمیزتر و جذابتری داشته باشه، پیشنهاد میکنم مثل این پروژه از یه سطل زباله رومیزی و اسباببازی آماده استفاده کنی و فقط قطعات مربوط به شاسی و پایههای نگهدارنده رو پرینت بگیری.
کدهای برنامه و راهاندازی نرمافزار
کدهای این پروژه رو میتونی به راحتی تو اینترنت پیدا کنی و روی برد پیکو آپلود کنی. خوبی داشتن کدها اینه که حین مونتاژ کردن میتونی از برنامههای تست کوچیک برای بررسی عملکرد درست سنسورها و سیمکشیها استفاده کنی.
ساختار اصلی برنامه روی دنبال کردن خط تمرکز داره و مدام دادههای دو تا سنسور التراسونیک رو چک میکنه تا ربات به موانع برخورد نکنه. این کدها با زبان میکروپایتون نوشته شدن. اگه خواستی از یه برد دیگه مثل آردوینو استفاده کنی، باید زحمت بازنویسی کدها رو با زبان همون برد بکشی.
مونتاژ قطعات مکانیکی ربات
- سیمهای جامپر رو به پایههای موتورهای TT لحیم کن تا برای اتصال به برد کنترلر آماده بشن.
- موتورها رو روی شاسی قرار بده و با پیچهای 40 میلیمتری M3 سر جای خودشون محکم کن.
- چرخها رو به شفت موتورها وصل کن، با پیچ سفتشون کن و سیمهای موتور رو از سوراخ وسط شاسی رد کن.
- پایههای مربوط به چرخهای هرزگرد رو با پیچهای M3 به زیر شاسی ببند و یه بلبرینگ داخل هر کدومشون جا بزن تا ربات کاملا تراز بایسته.
- جا باتری رو با دو تا پیچ روی شاسی نصب کن.
- سنسورهای التراسونیک رو با پیچ و مهرههای ظریف M2 روی پایههای نگهدارندهشون ببند. حواست باشه پینهای سنسور رو به پایین باشن.
- پایههای نگهدارنده ماژول مسیریاب رو به شاسی متصل کن.
- چهار تا سیم جامپر مادگی به نری به سنسور التراسونیک پایینی وصل کن، سیمها رو از سوراخ مرکزی رد کن و نگهدارنده سنسور رو جلوی شاسی ببند.
- نه تا سیم جامپر مادگی به مادگی به ماژول مسیریاب وصل کن، سیمها رو رد کن و ماژول رو با پیچ و مهره محکم کن.
- برای کالیبره کردن، سروو موتور رو موقتا به پین GPIO 9 وصل کن و کد کالیبره رو اجرا کن تا بازوی سروو تو حالت استراحت رو به پایین قرار بگیره.
- بازوهای مکانیکی رو به سروو موتور و خود سروو رو به نگهدارندهاش متصل کن.
- پشت سطل زباله رو اندازه بگیر و سه تا سوراخ برای نصب سروو دریل کن. یه سوراخ هم پایینش برای رد شدن سیمها بزن. دو تا سوراخ هم کف سطل برای نصب روی شاسی ایجاد کن.
- سطل زباله رو با پیچ و مهرههای M3 روی شاسی اصلی ببند.
- کابل کنترل سروو رو از سوراخی که کف سطل زدی رد کن و سروو رو از داخل سطل پیچ کن.
- چهار تا سیم جامپر مادگی به نری به سنسور التراسونیک بالایی وصل کن و سنسور رو روی برجک نگهدارنده قرار بده.
- برجک سنسور رو با پیچ روی بدنه نصب کن و زاویهاش رو طوری تنظیم کن که دیدش از بالای سطل زباله کور نشه.
- در نهایت، پایه نگهدارنده برد اصلی رو با دو تا پیچ در قسمت عقب شاسی متصل کن.
حالا کار مونتاژ قطعات مکانیکی و بدنه ربات کاملا تموم شده و آماده سیمکشیه.
سیمکشی و اتصالات نهایی
سیمهای زیادی تو این مرحله داریم، اما برای اینکه گیج نشی، اونا رو بخشبندی میکنیم. اول از همه میریم سراغ تغذیه و موتورها.
- سیمهای جا باتری رو از سوراخ پشت شاسی رد کن و با رعایت قطب مثبت و منفی، اونا رو به ترمینالهای پیچی روی برد کنترلر وصل کن.
- سیمهای موتورها رو جفتجفت به سوکتهای مربوطه روی برد وصل کن.
- برد رو به کامپیوتر وصل کن و یه کد تست موتور اجرا کن تا مطمئن بشی هر دو موتور به سمت جلو میچرخن. اگه موتوری برعکس چرخید، جای دو تا سیمش رو روی برد عوض کن.
برای سنسورهای التراسونیک از سیمهای مادگی به نری استفاده میکنیم:
- سیمهای سنسور بالایی رو به کانکتور وسطی برد وصل کن. ترتیب پایهها از وسط به این شکله: GND، بعد ECHO، بعد TRIGGER و در نهایت VCC.
- سیمهای سنسور پایینی رو به کانکتور بیرونی روی برد متصل کن. ترتیب پایهها دقیقا مثل قبلیه.
- حالا با اجرای یه برنامه تست، دستت رو جلوی سنسورها حرکت بده تا مطمئن بشی فاصلهها رو به درستی تشخیص میدن و پیامها تو مانیتور سریال چاپ میشن.
بخش بعدی مربوط به اتصال سروو موتوره:
- سوکت سروو رو با دقت به پایههای مربوط به پین GPIO 9 متصل کن.
- یه کد ساده برای تست سروو اجرا کن. در سطل زباله باید یه بار کامل باز و بسته بشه.
ماژول مسیریاب نه تا پایه داره که تو این نسخه از ربات از همهشون استفاده نمیکنیم، اما سیمهاش رو وصل میکنیم تا برای ارتقای ربات تو آینده آماده باشه.
پایههای VCC و GND رو به پینهای تغذیه کنار پایه GPIO 28 وصل کن. از خود پین GPIO 28 هم برای اندازهگیری ولتاژ باتری استفاده میشه. برای تست ماژول مسیریاب، یه برنامه تست خطخوان رو اجرا کن.
یه تیکه کاغذ سفید که روش یه خط کلفت کشیده شده رو زیر سنسورها بگیر. سنسورها باید خط رو تشخیص بدن و الایدیهای روی ماژول روشن بشن تا مطمئن بشیم همهچیز درست کار میکنه.
ایدههایی برای ارتقای ربات
این ربات در حال حاضر یه نمونه اولیهست و وقتی کارکردش رو میبینی، کلی ایده خفن برای ارتقاش به ذهنت میرسه.
- میتونی بیخیال مکانیزم باز شدن در بشی و از یه سطل بدون در یا سطلهای بادبزنی استفاده کنی.
- مکانیزم باز کردن در سطل الان داخله، میتونی طراحیش رو عوض کنی و بیاریش بیرون تا فضای بیشتری برای زباله بمونه.
- اضافه کردن یه سنسور وزن برای اینکه بفهمه سطل کی پر شده.
- نصب یه سوئیچ ایمنی که وقتی سطل پره، اجازه نده در بسته بشه.
- تعیین ایستگاههای توقف روی خطوط مسیریاب تو بخشهای مختلف اتاق.
- اضافه کردن قابلیتی که بتونی ربات رو به یه ایستگاه خاص صدا بزنی.
- طراحی یه ایستگاه مخصوص برای تخلیه اتوماتیک زبالهها.
- میتونی کاربریش رو عوض کنی و یه سینی روش نصب کنی تا بتونه نوشیدنی، بیسکویت یا ظرفهای کثیف رو جابهجا کنه و واقعا بشه یه پیشخدمت!
- اضافه کردن سیستم کنترل پایداری با سنسور ژیروسکوپ تا اگه کسی هلش داد، تعادلش رو حفظ کنه.
- میشه یه نسخه سایز بزرگ ازش ساخت تا کاربرد واقعیتری تو محیط خونه داشته باشه.
- بهینهسازی کدهای سنسور التراسونیک تو پردازنده اصلی و اضافه کردن سنسورهای ارتباطی بیشتر.
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.








































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!