Мазмұны:

Raspberry Pi Planet Finder: 14 қадам (суреттермен)
Raspberry Pi Planet Finder: 14 қадам (суреттермен)

Бейне: Raspberry Pi Planet Finder: 14 қадам (суреттермен)

Бейне: Raspberry Pi Planet Finder: 14 қадам (суреттермен)
Бейне: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Қараша
Anonim
Image
Image
Сізге не керек
Сізге не керек

Менің қаламдағы Ғылыми орталықтың сыртында планеталардың аспанда тұрғанын көрсететін үлкен металл құрылымы бар. Мен оның жұмыс істегенін ешқашан көрген емеспін, бірақ мен қол жетпейтін басқа әлемдердің менің кішкентай болмысыма қатысты екенін білу сиқырлы болады деп ойладым.

Жақында мен өлген экспонаттың жанынан өтіп бара жатып, «мен жасай аламын» деп ойладым және солай жасадым!

Бұл планетаны қалай табуға болатындығы туралы нұсқаулық (Аймен бірге), сондықтан сіз ғарышқа таң қалғанда қайда қарау керектігін біле аласыз.

1 -қадам: Сізге не қажет

Сізге не керек
Сізге не керек

1 x Raspberry Pi (Wi -Fi үшін 3 немесе одан жоғары нұсқасы)

1 x СКД экран (16 x 2) (осылай)

Драйверлері бар 2 қадамдық қозғалтқыштар (28-BYJ48) (осылар сияқты)

3 x түймелері (мысалы)

2 x фланецті қосқыштар (мысалы)

1 x түймелік компас (осылай)

8 x M3 болттар мен гайкалар

Корпус пен телескопқа арналған 3D басып шығарылған бөлшектер

2 -қадам: Планеталық координаттар

Планеталық координаттар
Планеталық координаттар

Астрономиялық объектілер аспанда қай жерде орналасқанын сипаттаудың бірнеше түрлі әдістері бар.

Біз үшін ең мағыналысы - көлденең координаттар жүйесі, жоғарыдағы суретте көрсетілгендей. Бұл сурет Википедия бетінде орналасқан:

kk.wikipedia.org/wiki/Horizontal_coordinat…

Горизонтальды координат жүйесі сізге солтүстіктен (азимуттан) және көкжиектен (биіктіктен) жоғары бұрыш береді, сондықтан сіз әлемнің қай жерінен іздегеніңізге байланысты әр түрлі болады. Сондықтан біздің планетаны іздеушіге орынды ескеру қажет және сілтеме ретінде Солтүстікті табудың қандай да бір әдісі болуы керек.

Уақыт пен орынға байланысты өзгеретін биіктік пен азимутты есептеп көрудің орнына, біз бұл ақпаратты NASA -дан іздеу үшін Raspberry Pi бортында wifi байланысын қолданатын боламыз. Олар мұндай нәрсені қадағалайды, сондықтан бізге қажет емес;)

3 -қадам: Планета деректеріне қол жеткізу

Біз өз мәліметтерімізді NASA реактивті қозғалыс зертханасынан (JPL) аламыз -

Бұл деректерге қол жеткізу үшін біз AstroQuery деп аталатын кітапхананы қолданамыз, ол астрономиялық веб -формалар мен мәліметтер базасын сұрауға арналған құралдар жиынтығы. Бұл кітапханаға арналған құжаттарды мына жерден табуға болады:

Егер бұл сіздің Raspberry Pi бірінші жобаңыз болса, мына орнату нұсқаулығын орындап бастаңыз:

Егер сіз Raspberry Pi -де Raspbian қолдансаңыз (егер сіз жоғарыдағы нұсқаулықты ұстанатын болсаңыз), онда сізде python3 орнатылған, соңғы нұсқасы орнатылғанына көз жеткізіңіз (мен 3.7.3 нұсқасын қолданамын). Біз мұны пип алу үшін пайдалануымыз керек. Терминалды ашып, келесіні теріңіз:

sudo apt install python3-pip

Содан кейін біз жұлдызшаның жаңартылған нұсқасын орнату үшін pip пайдалана аламыз.

pip3 install --pre -astroquery жаңарту

Осы жобаның қалған бөлігін жалғастырмас бұрын, барлық дұрыс тәуелділіктер дұрыс орнатылғанына көз жеткізу үшін қарапайым Python сценарийімен осы деректерге қол жеткізіп көріңіз.

astroquery.jplhorizons сайтынан Горизонттарды импорттау

mars = Horizons (id = 499, location = '000', дәуірлер = Ешқайсысы, id_type = 'majorbody') eph = mars.ephemerides () print (eph)

Бұл сізге Марстың орналасқан жері туралы мәліметтерді көрсетуі керек!

Сіз бұл сайттың көмегімен планетаның тірі позициясын іздеу үшін осы мәліметтердің дұрыстығын тексере аласыз:

Бұл сұранысты қысқарту үшін, идентификатор - бұл JPL деректерінде Марспен байланысты сан, дәуір - бұл деректерді қалайтын уақыт (дәл қазір жоқ) және id_type күн жүйесінің негізгі денелерін сұрайды. Қазіргі уақытта бұл орын Ұлыбританияда орнатылған, өйткені '000' - Гринвичтегі обсерваторияның орналасу коды. Басқа орындарды мына жерден табуға болады:

Ақаулық себебін іздеу және түзету:

Егер сіз қате алсаңыз: 'keyring.util.escape' деп аталатын модуль жоқ

терминалда келесі пәрменді қолданып көріңіз:

pip3 install -keyrings.alt жаңарту

4 -қадам: код

Бұл қадамда осы жобада қолданылатын толық питон сценарийі бекітілген.

Орналасқан жеріңіз туралы дұрыс деректерді табу үшін getPlanetInfo функциясына өтіңіз және алдыңғы қадамдағы обсерваториялардың тізімін қолданып орнын өзгертіңіз.

def getPlanetInfo (планета):

obj = Көкжиектер (id = планета, орналасуы = '000', дәуірлер = Жоқ, id_type = 'majorbody') eph = obj.ephemerides () eph қайтарады

5 -қадам: Жабдықты қосу

Аппараттық құралдарды қосу
Аппараттық құралдарды қосу
Аппараттық құралдарды қосу
Аппараттық құралдарды қосу
Аппараттық құралдарды қосу
Аппараттық құралдарды қосу

Нан тақталары мен секіргіш сымдарды қолдана отырып, жоғарыдағы схемада көрсетілгендей екі сатылы қозғалтқышты, СКД экранын және үш түймені қосыңыз.

Raspberry Pi -де түйреуіштердің қандай нөмірі бар екенін білу үшін терминалға өтіп, теріңіз

түйреуіш

Бұл сізге GPIO нөмірлері мен тақта нөмірлері бар жоғарыдағы суретті көрсетуі керек. Біз кодта қандай түйреуіштер қолданылатынын анықтау үшін тақта нөмірлерін қолданамыз, сондықтан мен жақшалардағы сандарға сілтеме жасаймын.

Диаграммаға көмек ретінде әр бөлікке қосылған түйреуіштер:

Бірінші қадам қозғалтқышы - 7, 11, 13, 15

2 -ші қадамдық қозғалтқыш - 40, 38, 36, 32

Түйме 1 - 33

Түйме2-37

Түйме3 - 35

СКД экран - 26, 24, 22, 18, 16, 12

Мұның бәрі қосылған кезде, python сценарийін іске қосыңыз

python3 planetFinder.py

және сіз экранда орнату мәтінін көресіз және түймелер қадамдық қозғалтқыштарды жылжытуы керек.

6 -қадам: Істің дизайны

Істі жобалау
Істі жобалау
Істі жобалау
Істі жобалау
Істі жобалау
Істі жобалау

Корпус 3D басып шығаруға оңай жасалған. Ол жеке бөліктерге бөлінеді, содан кейін электроника бекітілгеннен кейін желімделеді.

Саңылаулар мен қолданған түймелер мен М3 болттары үшін өлшемді.

Мен телескопты бөлшектеп басып шығардым және тірек құрылымының тым көп болмау үшін оларды кейінірек желімдедім.

Бұл қадамға STL файлдары қосылады.

7 -қадам: басып шығаруды тексеру

Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру
Басып шығаруды тексеру

Барлығы басып шығарылғаннан кейін, желімдеуді бастамас бұрын бәрі бір -біріне тығыз сәйкес келетініне көз жеткізіңіз.

Түймелерді орнына қойыңыз және экран мен қадамдық қозғалтқыштарды M3 болттарымен бекітіңіз және бәріне жақсы айналдырыңыз. Кез келген өрескел жиектерді түсіріңіз, келесі қадамға дейін бәрін қайтадан бөліп алыңыз.

8 -қадам: Қозғалтқышты кеңейту

Қадамдық моторды кеңейту
Қадамдық моторды кеңейту
Қадамдық моторды кеңейту
Қадамдық моторды кеңейту
Қадамдық моторды кеңейту
Қадамдық моторды кеңейту

Телескоптың биіктік бұрышын басқаратын қадамдық қозғалтқыш негізгі корпустың үстінде орналасады және айналу үшін сымдардың босаңсуы қажет. Сымдарды степпер мен оның жүргізуші тақтасының арасына кесіп, арасына жаңа ұзындықтағы сымды дәнекерлеу арқылы ұзарту қажет.

Мен жаңа сымды тірек мұнарасына жіппен салып, оны өткізуге көмектесу үшін енгіздім, себебі мен қолданатын сым өте қатты және кептеліп қала берді. Оны бір қадамнан кейін қадамдық моторға дәнекерлеуге болады, сол кезде дұрыс түстерді екінші жағына қайта бекіту үшін қай түс қосылғанын қадағалаңыз. Сымдарға жылуды азайтуды ұмытпаңыз!

Дәнекерленгеннен кейін, бәрі жұмыс істеп тұрғанын тексеру үшін питон сценарийін іске қосыңыз, содан кейін сымдарды құбырдан төмен қарай итеріңіз. Содан кейін оны корпустың артқы жағы желімделмес бұрын М3 болттары мен гайкалары бар мотор корпусына бекітуге болады.

9 -қадам: Түймешіктер мен СКД экраны

Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны
Орнату түймелері мен СКД экраны

Дәнекерлеуден бұрын оларды бекіту үшін түймелерді салыңыз және гайкаларды қатайтыңыз. Мен ұқыптылық үшін олардың арасында өтетін жалпы жер сымын қолданғанды ұнатамын.

СКД экранын болттар мен гайкалармен M3 бекітіңіз. СКД мен осы сатыда дәнекерленген түйреуіштердің біріне потенциометр қажет.

Кодты қайтадан тексеріңіз! Барлығын бір -біріне жабыстырмас бұрын бәрі жұмыс істейтініне көз жеткізіңіз, себебі бұл кезеңде түзету әлдеқайда оңай.

10 -қадам: фланецтерді қосу

Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу
Фланецтерді қосу

3D басып шығарылған бөлшектерді қадамдық қозғалтқыштарға қосу үшін біз қадамдық қозғалтқыштың ұшына сәйкес келетін және кішкене бұрандалармен бекітілген 5 мм фланецті муфтаны қолданамыз.

Бір фланец айналмалы мұнараның түбіне, екіншісі телескопқа жабыстырылады.

Телескопты айналмалы мұнара үстіндегі қозғалтқышқа бекіту қарапайым, себебі оны ұстап тұратын кішкене бұрандаларға қол жеткізу үшін көп орын бар. Басқа фланецті бекіту қиынырақ, бірақ негізгі корпус пен айналмалы мұнараның негізі арасында кішкене аленді кілтке сай болу үшін және бұранданы қатайту үшін алшақтық жеткілікті.

Тағы да тест!

Енді бәрі жұмыс істеуі керек, себебі ол соңғы күйінде болады. Егер олай болмаса, қазір қателерді түзетіп, байланыстардың қауіпсіз екеніне көз жеткізіңіз. Ашық сымдардың бір -біріне тиіп кетпейтініне көз жеткізіңіз, электр таспамен айналдырыңыз және ақаулық тудыруы мүмкін жерлерді жабыңыз.

11 -қадам: Іске қосу кезінде іске қосыңыз

Біз планетаны тапқымыз келген сайын кодты қолмен іске қосудың орнына, біз мұны жеке көрме ретінде іске қосқымыз келеді, сондықтан біз оны Raspberry Pi қосылған сайын кодты іске қосатын етіп орнатамыз.

Терминалға теріңіз

crontab -e

Ашылған файлда файлдың соңына келесі жолды, содан кейін жаңа жолды қосыңыз.

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

Менің кодым PlanetFinder деп аталатын қалтада сақталған, сондықтан /home/pi/PlanetFinder/planetFinder.py - бұл менің файлымның орны. Егер сіздікі басқа жерде сақталса, оны осында өзгертіңіз.

& Соңында маңызды, себебі ол кодты фонда іске қосуға мүмкіндік береді, сондықтан ол жүктеу кезінде болатын басқа процестерді ұстамайды.

12 -қадам: Барлығын бірге жабыстырыңыз

Барлығын бірге жабыстырыңыз!
Барлығын бірге жабыстырыңыз!
Барлығын бірге жабыстырыңыз!
Барлығын бірге жабыстырыңыз!

Бұрын жабыстырылмағанның бәрін қазір бекіту керек.

Соңында, айналмалы негіздің ортасына кішкентай компасты қосыңыз.

13 -қадам: Қолдану

Қолданылуы
Қолданылуы

Planet Finder қосылған кезде, ол пайдаланушыны тік осьті реттеуге шақырады. Жоғары және төмен түймелерін басу телескопты жылжытады, оны оң жаққа қаратып деңгейге келтіруге тырысады, содан кейін ok түймесін басыңыз (төменде).

Содан кейін пайдаланушыға айналуды реттеу, телескопты кіші компас бойынша солтүстікке көрсеткенше айналдыру үшін түймелерді қолданыңыз, содан кейін OK түймесін басыңыз.

Енді сіз жоғары/төмен түймелерінің көмегімен планеталар арасында айнала аласыз және ok түймешігімен тапқыңыз келетінін таңдай аласыз. Ол планетаның биіктігі мен азимутын көрсетеді, содан кейін солтүстікке бұрылмай тұрып, оны бірнеше секундқа бағыттайды.

14 -қадам: Аяқталды

Аяқталды
Аяқталды

Бәрі дайын!

Барлық планеталардың қайда екенін білуден ләззат алыңыз:)

Space Challenge
Space Challenge
Space Challenge
Space Challenge

Ғарыштық шақырудағы бірінші жүлде

Ұсынылған: