معماری
RaspiDuinoRover از سه بخش اصلی ساخته شده است:
- Raspberry Pi که دستورات را از طریق یک اتصال TCP از یک دستگاه راه دور دریافت می کند و این دستورات را از طریق یک اتصال I 2 C به Arduino Uno ارسال می کند. از همان کانال TCP برای ارسال داده های راه دور گرفته شده از آردوینو Uno در مورد موقعیت های سروو پان و شیب، وضعیت نور دوربین و استفاده فعلی موتور استفاده می شود. Raspberry Pi همچنین یک جریان ویدیویی MJPEG را از ماژول دوربین خود ارائه می دهد.
- Arduino Uno که دستورات را از Raspberry Pi از طریق یک اتصال I 2 C دریافت می کند و بر این اساس موتورهای کاوشگر (با کمک آردوینو موتور شیلد) را به حرکت در می آورد و سرووهای پان و شیب را در موقعیت مکانی قرار می دهد. مرتباً اطلاعاتی درباره موقعیتهای سروو پان و شیب، وضعیت نور دوربین و استفاده فعلی موتورها دریافت میکند و در صورت درخواست آن را به Raspberry Pi باز میفرستد.
- یک دستگاه iOS که به عنوان یک کنترل از راه دور برای مریخ نورد عمل می کند. از طریق یک اتصال TCP به Raspberry Pi متصل می شود و جریان ویدیوی MJPEG آن را نمایش می دهد.
پایه مریخ نورد از یک شاسی ردیابی داگو روور 5 ساخته شده است . ماژول دوربین Raspberry Pi روی یک ساپورت پان/تیلت با سرووها نصب شده است و یک ویژگی نورپردازی مبتنی بر سه LED سفید اضافه شده است تا امکان استفاده از دوربین در تاریکی را فراهم کند. در صورت تمایل/نیاز به روشنایی محتاطانه، باید بتوان ماژول دوربین را با ماژول دوربین NoIR و LED سفید با LED IR جایگزین کرد.
سروو موتورها، Raspberry Pi، Arduino Uno و نور دوربین توسط یک خط برق مشترک 5 ولت تغذیه می شوند. این برق 5 ولت ممکن است از منبع تغذیه دیواری (حداقل 2 آمپر) تامین شود، در حالی که موتورهای شاسی منبع تغذیه خود را دارند. ممکن است بتوان برای همه موارد، از جمله موتورهای شاسی، یک منبع تغذیه مشترک ایجاد کرد، اما این صفحه به این موضوع نمیپردازد.
الزامات
RaspiDuinoRover برای ساخت به موارد زیر نیاز دارد:
- یک رزبری پای.
- یک ماژول دوربین Raspberry Pi.
- یک Arduno Uno R3.
- یک آردوینو موتور شیلد R3.
- برخی از موارد در فایل "bill_of_materials.ods" فهرست شده است.
- برای بخش سرور:
- پایتون (با Debian / Raspbian: بستههای "python"، "python-dev").
- کتابخانه SMBus در Raspbian بسته “python-smbus” را نصب کنید.
- کتابخانه پیچ خورده در Raspbian بسته “python-twisted” را نصب کنید.
- MJPEG Streamer (اما نه نسخه از بستههای raspbian، در زیر ببینید)
- (اختیاری) نسخه جدیدتر raspimjpeg، در زیر ببینید
- برای قسمت آیفون:
- آیفون (یا آیپد یا آیپاد تاچ) با iOS 7
- XCode 5.0.x
برای کمک به مونتاژ، می توانید به فایل های زیر مراجعه کنید:
- RaspiDuinoRover.fzz: مجمع جهانی برای باز کردن با Fritzing ( http://fritzing.org/ ).
- CameraLighting.fzz: جزئیات مربوط به مجموعه پشتیبانی و نورپردازی دوربین، برای باز کردن با Fritzing.
- PowerRail.fzz: جزئیات مربوط به ریل های برق رایج.
مونتاژ تخته نان و شماتیک
نحوه استفاده از RaspiDuinoRover (سرور)
ابتدا باید طرح Arduino/Arduino.uno را در Ardunio Uno خود آپلود کنید و اسمبلی را بسازید.
مهم: فراموش نکنید که جامپر "Vin" را در پشت سپر ببرید.
سپس باید MJPEG Streamer را با دنبال کردن این مراحل (مرحله 1 تا 6) نصب کنید .
ممکن است بخواهید یک نسخه جدیدتر از raspimjpeg را نصب کنید ، حتی اگر یک باینری فعال ارائه شده باشد (در پوشه " ./RaspberryPi/bin/ ".
سپس فایل “ ./RaspberryPi/config.py ” را متناسب با نیاز خود به روز کنید.
وقتی کارتان تمام شد، فقط RaspiDuinoRover را با “ ./RaspberryPi/raspiduinorover.sh start ” به عنوان کاربر ریشه راه اندازی کنید. هنگامی که می خواهید / نیاز به توقف آن دارید، فقط " ./RaspberryPi/raspiduinorover.sh stop " را به عنوان کاربر ریشه اجرا کنید.