Мазмұны:
- 1 -қадам: Сізге не қажет
- 2 -қадам: Планеталық координаттар
- 3 -қадам: Планета деректеріне қол жеткізу
- 4 -қадам: код
- 5 -қадам: Жабдықты қосу
- 6 -қадам: Істің дизайны
- 7 -қадам: басып шығаруды тексеру
- 8 -қадам: Қозғалтқышты кеңейту
- 9 -қадам: Түймешіктер мен СКД экраны
- 10 -қадам: фланецтерді қосу
- 11 -қадам: Іске қосу кезінде іске қосыңыз
- 12 -қадам: Барлығын бірге жабыстырыңыз
- 13 -қадам: Қолдану
- 14 -қадам: Аяқталды
Бейне: Raspberry Pi Planet Finder: 14 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Менің қаламдағы Ғылыми орталықтың сыртында планеталардың аспанда тұрғанын көрсететін үлкен металл құрылымы бар. Мен оның жұмыс істегенін ешқашан көрген емеспін, бірақ мен қол жетпейтін басқа әлемдердің менің кішкентай болмысыма қатысты екенін білу сиқырлы болады деп ойладым.
Жақында мен өлген экспонаттың жанынан өтіп бара жатып, «мен жасай аламын» деп ойладым және солай жасадым!
Бұл планетаны қалай табуға болатындығы туралы нұсқаулық (Аймен бірге), сондықтан сіз ғарышқа таң қалғанда қайда қарау керектігін біле аласыз.
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 -қадам: Аяқталды
Бәрі дайын!
Барлық планеталардың қайда екенін білуден ләззат алыңыз:)
Ғарыштық шақырудағы бірінші жүлде
Ұсынылған:
IoT Keychain Finder ESP8266-01: 11 қадамдарын қолданады (суреттермен)
ISP Keychain Finder ESP8266-01 көмегімен: Сіз кілттерді қайда сақтағаныңызды үнемі ұмытып кетесіз бе? Мен ешқашан кілттерді уақытында таба алмаймын! Бұл әдетіме байланысты мен колледжге кешігіп келдім, жұлдызды соғыстардың шектеулі шығарылымы (әлі күнге дейін ренжітуде)
Ev3 Lego Gripper/Finder роботы: 7 қадам
Ev3 Lego Gripper/Finder роботы: Сәлеметсіз бе! GrabBot-айналдыруды ұнататын көп мақсатты робот … Кішкене затқа соғылып қалғанда, оны көтеріп алып, бастапқы орнына қайтарады
Kitty Finder: 6 қадам
Kitty Finder: Егер сіз осы Нұсқаулықты оқып отырсаңыз, сіз үй жануарларыңызды әр кеш сайын далада қыдырып жүруден шаршайтын шығарсыз. Сондықтан мен сіздің күшіктеріңізді/мысықтарды сыртта оңай табуға мүмкіндік беретін ықшам трекер туралы осы дизайнды ойлап таптым
Digital Stud Finder: 6 қадам (суреттермен)
Digital Stud Finder: Stud Finders - қарапайым ұғым. Екі сыйымдылық сенсоры: екіншісі импульстік толқын жіберіп, екі пластина арасындағы материалдағы кернеудің төмендеуін өлшейді
Pier 9: Smart Bone Fetch Finder ™: 4 қадам (суреттермен)
9 -пирс: Smart Bone Fetch Finder ™: Ақылды сүйектерді іздеуші &сауда; алғаш рет 2027 жылы құрылған, иттерге кіммен жақсы дос екенін бақылауға мүмкіндік береді. Болашақта иттер саябақтардағы адамдарға жақындап, қызмет ретінде алып кетуді ұсынады. Бірінші алу тегін