فهرست مطالب:

Raspberry Pi Planet Finder: 14 مرحله (همراه با تصاویر)
Raspberry Pi Planet Finder: 14 مرحله (همراه با تصاویر)

تصویری: Raspberry Pi Planet Finder: 14 مرحله (همراه با تصاویر)

تصویری: Raspberry Pi Planet Finder: 14 مرحله (همراه با تصاویر)
تصویری: On the traces of an Ancient Civilization? 🗿 What if we have been mistaken on our past? 2024, نوامبر
Anonim
Image
Image
آنچه شما نیاز دارید
آنچه شما نیاز دارید

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

وقتی به تازگی از کنار این نمایشگاه قدیمی مرده عبور کردم ، فکر کردم "شرط می بندم که می توانم آن را بسازم" و همین کار را کردم!

این یک راهنمای نحوه ساختن سیاره یاب (با ویژگی ماه) است ، بنابراین شما نیز می توانید بدانید وقتی احساس فریب از فضا می کنید به کجا نگاه کنید.

مرحله 1: آنچه شما نیاز دارید

آنچه شما نیاز دارید
آنچه شما نیاز دارید

1 عدد Raspberry Pi (نسخه 3 یا بالاتر برای wifi داخلی)

1 x صفحه نمایش LCD (16 2 2) (مانند این)

2 موتور استپر با درایورها (28-BYJ48) (مانند اینها)

3 دکمه فشاری (مانند این)

2 عدد اتصال دهنده فلنج (مانند این)

قطب نما 1 دکمه ای (مانند این)

8 پیچ و مهره M3 8

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

مرحله 2: مختصات سیاره ای

مختصات سیاره ای
مختصات سیاره ای

چند روش مختلف برای توصیف مکان اجسام نجومی در آسمان وجود دارد.

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

fa.wikipedia.org/wiki/Horizontal_coordinat…

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

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

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

ما اطلاعات خود را از آزمایشگاه پیشرانش جت ناسا (JPL) دریافت می کنیم -

برای دسترسی به این داده ها ، ما از کتابخانه ای به نام AstroQuery استفاده می کنیم که مجموعه ای از ابزارهای جستجوی فرم های وب و پایگاه های داده نجومی است. اسناد این کتابخانه در اینجا یافت می شود:

اگر این اولین پروژه رزبری پای شما است ، با دنبال کردن این راهنمای تنظیم شده شروع کنید:

اگر از Raspbian در Raspberry Pi خود استفاده می کنید (اگر از راهنمای بالا پیروی کرده باشید) ، در حال حاضر python3 را نصب کرده اید ، مطمئن شوید که آخرین نسخه را نصب کرده اید (من از نسخه 3.7.3 استفاده می کنم). برای بدست آوردن پیپ باید از این استفاده کنیم. یک ترمینال را باز کرده و عبارت زیر را تایپ کنید:

sudo apt python3-pip را نصب کنید

سپس می توانیم از pip برای نصب نسخه ارتقا یافته astroquery استفاده کنیم.

pip3 install --pre -astroquery را ارتقا دهید

قبل از ادامه کار با بقیه پروژه ، سعی کنید با یک اسکریپت ساده پایتون به این داده ها دسترسی پیدا کنید تا مطمئن شوید همه وابستگی های مناسب به درستی نصب شده اند.

از astroquery.jplhorizons Horizons وارد کنید

mars = Horizons (id = 499 ، location = '000' ، epochs = هیچکدام ، id_type = 'majorbody') eph = mars.ephemerides () print (eph)

این باید جزئیات مکان مریخ را به شما نشان دهد!

شما می توانید بررسی کنید که آیا این داده ها با استفاده از این سایت برای جستجوی موقعیت سیارات زنده درست هستند:

برای کمی شکستن این پرس و جو ، شناسه عدد مربوط به مریخ در داده های JPL است ، دوره ها زمانی است که ما داده ها را از آن می خواهیم (هیچکدام در حال حاضر به این معنا نیست) و id_type بدن اصلی بدن منظومه شمسی را درخواست می کند. این مکان در حال حاضر بریتانیا تعیین شده است زیرا "000" کد محل رصدخانه در گرینویچ است. مکانهای دیگر را می توانید در اینجا پیدا کنید:

عیب یابی:

در صورت دریافت خطا: هیچ ماژولی به نام 'keyring.util.escape' وجود ندارد

دستور زیر را در ترمینال امتحان کنید:

pip3 install -upgrade keyrings.alt

مرحله 4: کد

ضمیمه این مرحله اسکریپت پایتون کامل مورد استفاده در این پروژه است.

برای یافتن اطلاعات صحیح محل سکونت خود ، به تابع getPlanetInfo بروید و با استفاده از لیست رصدخانه ها در مرحله قبل ، مکان را تغییر دهید.

def getPlanetInfo (سیاره):

obj = Horizons (id = planet، location = '000'، epochs = no، id_type = 'majorbody') eph = obj.ephemerides () eph return

مرحله 5: اتصال سخت افزار

اتصال سخت افزار
اتصال سخت افزار
اتصال سخت افزار
اتصال سخت افزار
اتصال سخت افزار
اتصال سخت افزار

با استفاده از تخته نان و سیم های جامپر ، دو موتور پله ای ، صفحه LCD و سه دکمه را همانطور که در نمودار مدار بالا نشان داده شده است ، وصل کنید.

برای اطلاع از تعداد پین های رزبری پای خود ، به ترمینال بروید و تایپ کنید

پین کردن

این باید تصویر بالا را به همراه شماره GPIO و شماره برد نشان دهد. ما از شماره های تابلو برای تعریف پین هایی که در کد استفاده می شوند استفاده می کنیم ، بنابراین من به اعداد داخل براکت اشاره می کنم.

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

موتور استپر اول - 7 ، 11 ، 13 ، 15

استپر موتور دوم - 40 ، 38 ، 36 ، 32

دکمه 1 - 33

دکمه 2 - 37

دکمه 3 - 35

صفحه LCD - 26 ، 24 ، 22 ، 18 ، 16 ، 12

وقتی همه اینها متصل شد ، اسکریپت پایتون را اجرا کنید

python3 planetFinder.py

و باید متن تنظیمات صفحه را مشاهده کنید و دکمه ها باید موتورهای پله ای را حرکت دهند.

مرحله 6: طراحی مورد

طراحی مورد
طراحی مورد
طراحی مورد
طراحی مورد
طراحی مورد
طراحی مورد

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

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

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

فایل های STL به این مرحله ضمیمه شده است.

مرحله 7: آزمایش چاپ ها

آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها
آزمایش چاپ ها

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

دکمه ها را در جای خود قرار دهید و صفحه و موتورهای پله ای را با پیچ M3 محکم کنید و همه چیز را تکان دهید. فایلهای لبه ناصاف را قبل از مرحله بعدی دوباره از هم جدا کنید.

مرحله 8: گسترش موتور پله ای

گسترش استپر موتور
گسترش استپر موتور
گسترش استپر موتور
گسترش استپر موتور
گسترش استپر موتور
گسترش استپر موتور

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

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

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

مرحله 9: نصب دکمه ها و صفحه LCD

نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD
نصب دکمه ها و صفحه LCD

دکمه ها را وارد کرده و مهره ها را محکم کنید تا قبل از لحیم کاری محکم شوند. من دوست دارم از سیم معمولی استفاده کنم که برای نظافت بین آنها قرار می گیرد.

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

کد را دوباره آزمایش کنید! قبل از اینکه همه چیز را به هم بچسبانید ، مطمئن شوید که همه چیز هنوز کار می کند زیرا تعمیر در این مرحله بسیار ساده تر است.

مرحله 10: افزودن فلنج

افزودن فلنج
افزودن فلنج
افزودن فلنج
افزودن فلنج
افزودن فلنج
افزودن فلنج
افزودن فلنج
افزودن فلنج

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

یک فلنج به پایه برج دوار و دیگری به تلسکوپ چسبانده شده است.

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

دوباره تست کن!

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

مرحله 11: راه اندازی را اجرا کنید

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

در ترمینال ، تایپ کنید

crontab -e

در فایلی که باز می شود ، موارد زیر را به انتهای فایل و سپس یک خط جدید اضافه کنید.

reboot python3 /home/pi/PlanetFinder/planetFinder.py &

من کد خود را در پوشه ای به نام PlanetFinder ذخیره کرده ام ، بنابراین /home/pi/PlanetFinder/planetFinder.py محل فایل من است. اگر دستگاه شما در جایی دیگر ذخیره شده است ، حتماً آن را در اینجا تغییر دهید.

& در انتها مهم است زیرا اجازه می دهد کد در پس زمینه اجرا شود ، بنابراین دیگر پروسه هایی را که در بوت اتفاق می افتد نگه نمی دارد.

مرحله 12: همه را با هم بچسبانید

همه را با هم بچسبانید!
همه را با هم بچسبانید!
همه را با هم بچسبانید!
همه را با هم بچسبانید!

همه چیزهایی که قبلاً در جای خود چسبانده نشده اند ، اکنون باید ثابت شوند.

در نهایت ، قطب نما کوچک را به وسط پایه چرخان اضافه کنید.

مرحله 13: استفاده

استفاده
استفاده

هنگامی که Planet Finder روشن می شود ، کاربر را مجبور به تنظیم محور عمودی می کند. با فشار دادن دکمه های بالا و پایین ، تلسکوپ حرکت می کند ، سعی کنید آن را یکنواخت کنید ، به سمت راست اشاره کنید ، سپس دکمه ok (در پایین) را فشار دهید.

سپس از کاربر خواسته می شود که چرخش را تنظیم کند ، با استفاده از دکمه ها تلسکوپ را بچرخانید تا مطابق قطب نمای کوچک به سمت شمال حرکت کند ، سپس ok را فشار دهید.

اکنون می توانید با استفاده از دکمه های بالا/پایین در سیارات دوچرخه سواری کرده و یکی را که می خواهید با دکمه ok پیدا کنید ، انتخاب کنید. ارتفاع و آزیموت سیاره را نشان می دهد ، سپس می رود و برای چند ثانیه به آن اشاره می کند و سپس به سمت شمال بر می گردد.

مرحله 14: تمام شد

تمام شده
تمام شده

تمام شد!

از دانستن اینکه همه سیارات کجا هستند لذت ببرید:)

چالش فضایی
چالش فضایی
چالش فضایی
چالش فضایی

جایزه اول در چالش فضایی

توصیه شده: