Съдържание:
- Стъпка 1: Какво ви трябва
- Стъпка 2: Планетарни координати
- Стъпка 3: Достъп до данни за планетата
- Стъпка 4: Код
- Стъпка 5: Свързване на хардуер
- Стъпка 6: Проектиране на калъфа
- Стъпка 7: Тестване на отпечатъците
- Стъпка 8: Удължаване на стъпковия двигател
- Стъпка 9: Бутони за монтиране и LCD екран
- Стъпка 10: Добавяне на фланци
- Стъпка 11: Стартирайте при стартиране
- Стъпка 12: Залепете всичко заедно
- Стъпка 13: Използване
- Стъпка 14: Готово
Видео: Raspberry Pi Planet Finder: 14 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Извън Научния център в моя град има голяма метална конструкция, която може да се обърне и да сочи къде са били планетите в небето. Никога не съм го виждал да работи, но винаги съм смятал, че би било вълшебно да знам къде всъщност са тези недостижими други светове във връзка с моето мъничко аз.
Когато мина покрай този отдавна мъртъв експонат, си помислих „Обзалагам се, че бих могъл да го направя“и така го направих!
Това е ръководство за това как да направите Finder на планетата (с участието на Луната), така че и вие да знаете къде да търсите, когато се чувствате страхопочитани от космоса.
Стъпка 1: Какво ви трябва
1 x Raspberry Pi (версия 3 или по -нова за вграден wifi)
1 x LCD екран (16 x 2) (като този)
2 x стъпкови двигатели с драйвери (28-BYJ48) (като тези)
3 x бутони (като тези)
2 x Фланцови съединители (като тези)
1 x Бутон за компас (като този)
8 x M3 болтове и гайки
3D отпечатани части за корпуса и телескопа
Стъпка 2: Планетарни координати
Има няколко различни начина да се опише къде са астрономическите обекти в небето.
За нас най -смислената за използване е хоризонталната координатна система, както е показано на изображението по -горе. Това изображение е от страницата на Уикипедия, свързана тук:
en.wikipedia.org/wiki/Horizontal_coordinat…
Хоризонталната система за координати ви дава ъгъл от север (азимута) и нагоре от хоризонта (надморската височина), така че той е различен в зависимост от това къде гледате в света. Така че нашият търсач на планети трябва да вземе предвид местоположението и да има някакъв начин да намери Север за ориентир.
Вместо да се опитваме да изчислим надморската височина и азимута, които се променят с времето и местоположението, ние ще използваме wifi връзката на борда на Raspberry Pi, за да потърсим тези данни от НАСА. Те следят такива неща, така че не се налага;)
Стъпка 3: Достъп до данни за планетата
Получаваме нашите данни от Лабораторията за реактивни двигатели на НАСА (JPL) -
За достъп до тези данни използваме библиотека, наречена AstroQuery, която е набор от инструменти за запитване към астрономически уеб формуляри и бази данни. Документацията за тази библиотека се намира тук:
Ако това е първият ви проект на Raspberry Pi, започнете, като следвате това ръководство за настройка:
Ако използвате Raspbian на вашия Raspberry Pi (ще бъдете, ако следвате горното ръководство), тогава вече имате инсталиран python3, уверете се, че имате инсталирана най -новата версия (използвам версия 3.7.3). Трябва да използваме това, за да получим пип. Отворете терминал и въведете следното:
sudo apt инсталирате python3-pip
След това можем да използваме pip, за да инсталираме обновената версия на astroquery.
pip3 install --pre --upgrade astroquery
Преди да продължите с останалата част от този проект, опитайте да получите достъп до тези данни с прост скрипт на Python, за да се уверите, че всички правилни зависимости са инсталирани правилно.
от astroquery.jplhorizons импортират Horizons
mars = Horizons (id = 499, location = '000', epochs = Няма, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
Това трябва да ви покаже подробностите за местоположението на Марс!
Можете да проверите дали тези данни са верни, като използвате този сайт, за да потърсите позиции на планетата на живо:
За да разбием малко тази заявка, id е числото, свързано с Марс в данните на JPL, epochs е времето, от което искаме данните (Няма означава точно в момента), а id_type иска основните тела на Слънчевата система. Понастоящем местоположението е зададено на Обединеното кралство като „000“е кодът за местоположение на обсерваторията в Гринуич. Други места могат да бъдат намерени тук:
Отстраняване на неизправности:
Ако получите грешката: Няма модул с име „keyring.util.escape“
опитайте следната команда в терминала:
pip3 install --upgrade keyrings.alt
Стъпка 4: Код
Към тази стъпка е приложен пълният скрипт на python, използван в този проект.
За да намерите правилните данни за вашето местоположение, отидете на функцията getPlanetInfo и променете местоположението, като използвате списъка с обсерватории в предишната стъпка.
def getPlanetInfo (планета):
obj = Хоризонти (id = планета, location = '000', epochs = Няма, id_type = 'majorbody') eph = obj.ephemerides () връщане eph
Стъпка 5: Свързване на хардуер
С помощта на платки и джъмперни проводници свържете два стъпкови двигателя, LCD екрана и три бутона, както е показано на схемата по -горе.
За да разберете какъв номер са щифтовете на вашия Raspberry Pi, отидете на терминала и въведете
pinout
Това би трябвало да ви покаже горното изображение в комплект с GPIO номера и номера на таблото. Използваме номера на табла, за да определим кои пинове се използват в кода, така че ще посочвам числата в скоби.
Като помощ за електрическата схема, тук са щифтовете, които са свързани към всяка част:
1 -ви стъпков двигател - 7, 11, 13, 15
2 -ри стъпков двигател - 40, 38, 36, 32
Бутон 1 - 33
Бутон 2 - 37
Бутон 3 - 35
LCD екран - 26, 24, 22, 18, 16, 12
Когато всичко това е свързано, стартирайте скрипта на python
python3 planetFinder.py
и трябва да видите екрана да показва текст за настройка, а бутоните трябва да преместват стъпковите двигатели.
Стъпка 6: Проектиране на калъфа
Калъфът е проектиран за лесно 3D отпечатване. Той се разпада на отделни части, които след това се залепват, след като електрониката е фиксирана на място.
Дупките са оразмерени за използваните от мен бутони и болтовете M3.
Отпечатах телескопа на части и ги залепих по -късно, за да избегна твърде много опорна структура.
Към тази стъпка са прикачени STL файлове.
Стъпка 7: Тестване на отпечатъците
След като всичко бъде отпечатано, уверете се, че всичко прилепва плътно заедно, преди да се извърши лепило.
Поставете бутоните на място и закрепете екрана и стъпковите двигатели с болтове М3 и придайте на всичко добро движение. Напилете всички груби ръбове, разглобете отново всичко преди следващата стъпка.
Стъпка 8: Удължаване на стъпковия двигател
Стъпковият двигател, който ще контролира ъгъла на повдигане на телескопа, ще седи над основния корпус и се нуждае от малко отпускане на проводниците, за да се върти. Проводниците трябва да бъдат удължени, като се отрежат между стъпката и платката на драйвера и запояват нова дължина жица между тях.
Вмъкнах новия проводник в носещата кула с помощта на парче конец, за да го помогна да го преодолее, тъй като жицата, която използвам, е доста твърда и продължава да се забива. Веднъж преминал през него, той може да бъде запоен към стъпковия двигател, като внимавате да следите кой цвят е свързан, за да прикрепите отново правилните в другия край. Не забравяйте да добавите термосвиване към проводниците!
След като сте запоени, стартирайте скрипта на python, за да проверите дали все още работи, след това избутайте проводниците обратно надолу по тръбата, докато стъпковият двигател е в позиция. След това може да се прикрепи към корпуса на стъпковия двигател с болтове и гайки М3, преди задната част на корпуса да бъде залепена на място.
Стъпка 9: Бутони за монтиране и LCD екран
Поставете бутоните и затегнете гайките, за да ги закрепите на място преди запояване. Обичам да използвам общ заземен проводник, който минава между тях за чистота.
Закрепете LCD екрана с болтове и гайки М3. LCD дисплеят иска потенциометър на един от неговите щифтове, който също запоех на този етап.
Тествайте кода отново! Уверете се, че всичко продължава да работи, преди да залепим всичко заедно, тъй като е много по -лесно да се поправи на този етап.
Стъпка 10: Добавяне на фланци
За да свържем 3D отпечатаните части към стъпковите двигатели, използваме 5 мм фланец, който се вписва в горната част на края на стъпковия двигател и се държи на място с малки винтове.
Единият фланец е залепен към основата на въртящата се кула, а другият към телескопа.
Прикрепването на телескопа към двигателя на въртящата се кула е лесно, тъй като има много място за достъп до малките винтове, които го държат на място. Другият фланец е по -труден за закрепване, но има достатъчно разстояние между основния корпус и основата на въртящата се кула, за да се постави малък шестостен ключ и да се затегне винтът.
Тествайте отново!
Сега всичко трябва да работи, както ще бъде в крайното си състояние. Ако не е, сега е моментът да поправите грешки и да се уверите, че всички връзки са защитени. Уверете се, че откритите проводници не се допират един друг, заобиколете с електрическа лента и закърпете всички места, които могат да причинят проблем.
Стъпка 11: Стартирайте при стартиране
Вместо да стартираме кода ръчно всеки път, когато искаме да намерим планета, ние искаме това да се изпълнява като самостоятелна експозиция, затова ще го настроим да изпълнява кода ни винаги, когато се включи Raspberry Pi.
Въведете в терминала
crontab -е
Във файла, който се отваря, добавете следното в края на файла, последвано от нов ред.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Кодът ми е запазен в папка, наречена PlanetFinder, така че /home/pi/PlanetFinder/planetFinder.py е местоположението на моя файл. Ако вашият е запазен някъде другаде, не забравяйте да го промените тук.
& В края е важен, тъй като позволява на кода да работи във фонов режим, така че не задържа други процеси, които също се случват при зареждане.
Стъпка 12: Залепете всичко заедно
Всичко, което още не е залепено на място, сега трябва да бъде фиксирано.
Накрая добавете малкия компас към средата на въртящата се основа.
Стъпка 13: Използване
Когато Finder на планетата се включи, той ще подкани потребителя да регулира вертикалната ос. Натискането на бутоните нагоре и надолу ще премести телескопа, опитайте се да го изравните, сочейки надясно, след което натиснете бутона ok (най -долу).
След това потребителят ще бъде помолен да регулира въртенето, използвайте бутоните, за да завъртите телескопа, докато сочи на север според малкия компас, след което натиснете ok.
Вече можете да обикаляте планети с помощта на бутоните нагоре/надолу и да изберете тази, която искате да намерите с бутона OK. Той ще покаже надморската височина и азимута на планетата, след което отидете и го насочете за няколко секунди, преди да се обърнете обратно на север.
Стъпка 14: Готово
Готово!
Насладете се да знаете къде са всички планети:)
Първа награда в космическото предизвикателство
Препоръчано:
IoT Keychain Finder Използване на ESP8266-01: 11 стъпки (със снимки)
IoT Keychain Finder Използване на ESP8266-01: Искате ли като мен винаги да забравя къде сте държали ключовете си? Никога не мога да намеря ключовете си навреме! И поради този мой навик, закъснях за колежа си, тази лимитирана серия разпродажба на екстри от Междузвездни войни (все още се тревожа!), Среща (тя никога не избра
LED светлина (и) със захранване от батерията със слънчево зареждане: 11 стъпки (със снимки)
LED светлини (и), захранвани от батерии, със слънчево зареждане: Жена ми учи хората как да правят сапун, повечето от часовете й бяха вечер и тук през зимата се стъмва около 16:30 ч. Някои от нейните ученици имаха проблеми с намирането на нашите къща. Имахме табела отпред, но дори и с улично осветление
Digital Stud Finder: 6 стъпки (със снимки)
Digital Stud Finder: Finder на Stud са проста концепция. Два капацитивни сензора: единият изпраща импулсна вълна, вторият приема и измерва намаляването на напрежението в материала между двете плочи
Pier 9: Smart Bone Fetch Finder ™: 4 стъпки (със снимки)
Pier 9: Smart Bone Fetch Finder ™: Smart Bone Fetch Finder ™, създаден за първи път през 2027 г., дава възможност на кучетата да поемат контрола над това с кого са най -добри приятели. В бъдеще кучетата ще се приближават до хората в парковете и ще предлагат да играят извличане като услуга. Първото изтегляне е безплатно
Персонализиран часовник със стрелки за снимки: 5 стъпки (със снимки)
Персонализиран часовник със стрелки за снимки: Някои хора наблюдават часовника. Сега всеки може да бъде часовник. Други проекти персонализират лицето на часовника. Този персонализира стрелките на часовника. Изглежда скъп, но е по -малко от 5 долара и около 30 минути на часовник. Перфектен за Chr