Sisällysluettelo:
- Vaihe 1: Mitä tarvitset
- Vaihe 2: Planeettakoordinaatit
- Vaihe 3: Planeettadatan käyttäminen
- Vaihe 4: Koodi
- Vaihe 5: Laitteiston liittäminen
- Vaihe 6: Kotelon suunnittelu
- Vaihe 7: Tulosteiden testaaminen
- Vaihe 8: Askelmoottorin laajentaminen
- Vaihe 9: Kiinnityspainikkeet ja LCD -näyttö
- Vaihe 10: Laippojen lisääminen
- Vaihe 11: Suorita käynnistyksen yhteydessä
- Vaihe 12: Liimaa kaikki yhteen
- Vaihe 13: Käyttö
- Vaihe 14: Valmis
Video: Raspberry Pi Planet Finder: 14 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Kaupunkini tiedekeskuksen ulkopuolella on suuri metallirakenne, joka voi kääntyä ja osoittaa kohti planeettoja taivaalla. En ole koskaan nähnyt sen toimivan, mutta ajattelin aina, että olisi maagista tietää, missä nämä saavuttamattomat muut maailmat todellisuudessa olivat suhteessa pieneen itseeni.
Kun kävelin äskettäin tämän kauan kuolleen näyttelyn ohi, ajattelin "Lyön vetoa, että voisin tehdä sen", ja niin tein!
Tämä on opas siitä, miten tehdä Planet Finder (mukana Kuu), jotta sinäkin tietäisit, mistä etsiä, kun tunnet avaruuden hämmästystä.
Vaihe 1: Mitä tarvitset
1 x Raspberry Pi (versio 3 tai uudempi sisäiselle wifi -yhteydelle)
1 x LCD -näyttö (16 x 2) (näin)
2 x askelmoottorit ohjaimilla (28-BYJ48) (kuten nämä)
3 x painike (kuten nämä)
2 x laippa liittimet (kuten nämä)
1 x painikekompassi (näin)
8 x M3 ruuvia ja mutteria
3D -tulostetut osat koteloon ja kaukoputkeen
Vaihe 2: Planeettakoordinaatit
On olemassa muutamia erilaisia tapoja kuvata, missä tähtitieteelliset esineet ovat taivaalla.
Meille järkevin käyttää on horisontaalinen koordinaattijärjestelmä, kuten yllä olevassa kuvassa näkyy. Tämä kuva on linkitetty Wikipedia -sivulta:
en.wikipedia.org/wiki/Horizontal_coordinat…
Vaakasuuntainen koordinaattijärjestelmä antaa sinulle kulman pohjoisesta (atsimuutti) ja ylöspäin horisontista (korkeus), joten se on erilainen riippuen siitä, mistä päin maailmaa katsot. Joten planeettamme etsijän on otettava sijainti huomioon ja löydettävä jokin tapa löytää pohjoinen referenssiksi.
Sen sijaan, että yrittäisimme laskea korkeuden ja atsimuutin, jotka muuttuvat ajan ja sijainnin mukaan, käytämme Raspberry Pi -laitteen wifi -yhteyttä etsimään nämä tiedot NASAlta. He seuraavat tätä, joten meidän ei tarvitse;)
Vaihe 3: Planeettadatan käyttäminen
Saamme tietomme NASAn Jet Propulsion Laboratoriosta (JPL) -
Näihin tietoihin pääsemiseksi käytämme kirjastoa nimeltä AstroQuery, joka on joukko työkaluja tähtitieteellisten verkkolomakkeiden ja tietokantojen kyselyyn. Kirjaston dokumentaatio löytyy täältä:
Jos tämä on ensimmäinen Raspberry Pi -projektisi, aloita noudattamalla tätä asennusopasta:
Jos käytät Raspbiania Raspberry Pi -laitteessasi (olet, jos noudatit yllä olevaa opasta), sinulla on jo python3 asennettuna, varmista, että sinulla on uusin versio (käytän versiota 3.7.3). Meidän on käytettävä tätä saadaksemme pipon. Avaa päätelaite ja kirjoita seuraava:
sudo apt asentaa python3-pip
Voimme sitten käyttää pipiä astroqueryn päivitetyn version asentamiseen.
pip3 install --pre --upgrade astroquery
Ennen kuin jatkat tämän projektin loppua, yritä käyttää näitä tietoja yksinkertaisella Python -komentosarjalla varmistaaksesi, että kaikki oikeat riippuvuudet on asennettu oikein.
osoitteesta astroquery.jplhorizons tuovat Horizons
mars = Horizons (id = 499, location = '000', epochs = None, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
Tämän pitäisi näyttää sinulle Marsin sijainnin yksityiskohdat!
Voit tarkistaa, ovatko nämä tiedot oikeita, käyttämällä tätä sivustoa etsimään eläviä planeettojen sijainteja:
Jos haluat katkaista tämän kyselyn hieman, id on numero, joka liittyy Marsiin JPL: n tiedoissa, aikakaudet ovat aika, jolta haluamme datan (mikään ei tarkoita juuri nyt), ja id_type pyytää aurinkokunnan tärkeimpiä kappaleita. Paikka on tällä hetkellä asetettu Yhdistyneeseen kuningaskuntaan, koska '000' on Greenwichin observatorion sijaintikoodi. Muut paikat löytyvät täältä:
Ongelmien karttoittaminen:
Jos saat virheilmoituksen: Ei moduulia nimeltä keyring.util.escape
kokeile seuraavaa komentoa terminaalissa:
pip3 install --upgrade avaimenperät.alt
Vaihe 4: Koodi
Tähän vaiheeseen on liitetty koko tässä projektissa käytetty python -komentosarja.
Jos haluat löytää oikeat tiedot sijainnillesi, siirry funktioon getPlanetInfo ja muuta sijaintia käyttämällä edellisen vaiheen observatorioiden luetteloa.
def getPlanetInfo (planeetta):
obj = Horisontit (id = planeetta, sijainti = '000', aikakaudet = Ei mitään, id_type = 'majorbody') eph = obj.ephemerides () return eph
Vaihe 5: Laitteiston liittäminen
Liitä kaksi askelmoottoria, nestekidenäyttö ja kolme painiketta ylläolevan kytkentäkaavion avulla leipälevyjen ja hyppyjohtojen avulla.
Jos haluat tietää, minkä numeron nastat ovat Raspberry Pi -laitteessasi, siirry terminaaliin ja kirjoita
Sokka irti
Tämän pitäisi näyttää yllä oleva kuva, jossa on GPIO -numerot ja hallituksen numerot. Käytämme taulunumeroita määrittääksemme, mitä nastoja käytetään koodissa, joten viittaan suluissa oleviin numeroihin.
Tässä on piirikaavion apuna seuraavat tapit, jotka on liitetty kuhunkin osaan:
1. askelmoottori - 7, 11, 13, 15
Toinen askelmoottori - 40, 38, 36, 32
Painike 1-33
Painike 2-37
Painike 3-35
LCD -näyttö - 26, 24, 22, 18, 16, 12
Kun tämä kaikki on yhdistetty, suorita python -komentosarja
python3 planetFinder.py
ja sinun pitäisi nähdä ruudulla asennusteksti ja painikkeiden pitäisi liikuttaa askelmoottoreita.
Vaihe 6: Kotelon suunnittelu
Kotelo on suunniteltu helposti 3D -tulostettavaksi. Se hajoaa erillisiksi osiksi, jotka liimataan yhteen, kun elektroniikka on kiinnitetty paikalleen.
Reiät on mitoitettu käyttämiäni painikkeita ja M3 -pultteja varten.
Tulostin kaukoputken osiin ja liimasin ne myöhemmin yhteen liiallisen tukirakenteen välttämiseksi.
STL -tiedostot on liitetty tähän vaiheeseen.
Vaihe 7: Tulosteiden testaaminen
Kun kaikki on tulostettu, varmista, että kaikki sopivat tiiviisti yhteen ennen liimausta.
Aseta painikkeet paikoilleen ja kiinnitä näyttö ja askelmoottorit M3 -pultteilla ja anna kaiken heilua hyvin. Viilaa kaikki karkeat reunat ja poista kaikki uudelleen ennen seuraavaa vaihetta.
Vaihe 8: Askelmoottorin laajentaminen
Askelmoottori, joka ohjaa teleskoopin korkeuskulmaa, istuu pääkotelon yläpuolella ja tarvitsee hieman löysää johtoja kääntyäkseen. Johtoja on pidennettävä leikkaamalla ne askelman ja ohjaimen väliin ja juottamalla uusi langan pituus väliin.
Työnsin uuden langan tukitorniin käyttämällä lankaa, joka auttaa houkuttelemaan sen läpi, koska käyttämäni lanka on melko jäykkä ja jumittuu jatkuvasti. Kun se on läpi, se voidaan juottaa askelmoottoriin, ja muista seurata, mikä väri on kytketty, jotta voit kiinnittää oikeat värit toiseen päähän. Älä unohda lisätä lämmön kutistumista johtoihin!
Kun juotettu, suorita python -komentosarja ja tarkista, että kaikki toimii edelleen, ja työnnä sitten johdot takaisin putkeen, kunnes askelmoottori on paikallaan. Se voidaan kiinnittää askelmoottorin koteloon M3 -pultilla ja muttereilla ennen kotelon takaosan liimaamista paikalleen.
Vaihe 9: Kiinnityspainikkeet ja LCD -näyttö
Aseta napit paikalleen ja kiristä mutterit kiinnittääksesi ne paikalleen ennen juottamista. Haluan käyttää yhteistä maadoitusjohtoa, joka kulkee niiden välillä siisteyden vuoksi.
Kiinnitä LCD -näyttö M3 -ruuveilla ja muttereilla. Nestekidenäyttö haluaa potentiometrin yhdelle nastastaan, jonka myös juotin tässä vaiheessa.
Testaa koodi uudelleen! Varmista, että kaikki toimii edelleen, ennen kuin liimaamme kaiken yhteen, koska se on paljon helpompi korjata tässä vaiheessa.
Vaihe 10: Laippojen lisääminen
3D -tulostettujen osien liittämiseksi askelmoottoreihin käytämme 5 mm: n laippakytkintä, joka sopii askelmoottorin pään päälle ja jota pidetään paikallaan pienillä ruuveilla.
Yksi laippa on liimattu pyörivän tornin pohjaan ja toinen kaukoputkeen.
Kaukoputken kiinnittäminen pyörivän tornin päällä olevaan moottoriin on yksinkertaista, koska siellä on paljon tilaa päästä käsiksi pieniin ruuveihin, jotka pitävät sen paikallaan. Toinen laippa on vaikeampi kiinnittää, mutta pääkotelon ja pyörivän tornin pohjan välillä on tarpeeksi rakoa pienen kuusiokoloavaimen asettamiseksi ja ruuvin kiristämiseksi.
Testaa uudestaan!
Nyt kaiken pitäisi toimia lopullisessa tilassaan. Jos ei, nyt on aika korjata virheet ja varmistaa, että kaikki yhteydet ovat suojattuja. Varmista, että paljaat johdot eivät kosketa toisiaan, kierrä sähköteipillä ja korjaa paikat, jotka voivat aiheuttaa ongelmia.
Vaihe 11: Suorita käynnistyksen yhteydessä
Sen sijaan, että ajaisimme koodia manuaalisesti joka kerta, kun haluamme löytää planeetan, haluamme tämän toimivan itsenäisenä näyttelynä, joten aiomme asettaa sen suorittamaan koodimme aina, kun Raspberry Pi käynnistyy.
Kirjoita päätelaitteeseen
crontab -e
Lisää avautuvassa tiedostossa seuraava osa tiedoston loppuun ja uusi rivi.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Koodini on tallennettu PlanetFinder -kansioon, joten /home/pi/PlanetFinder/planetFinder.py on tiedostoni sijainti. Jos omasi on tallennettu muualle, muista vaihtaa se täällä.
Lopussa oleva & on tärkeä, koska se antaa koodin toimia taustalla, joten se ei kestä muita prosesseja, jotka tapahtuvat myös käynnistyksen yhteydessä.
Vaihe 12: Liimaa kaikki yhteen
Kaikki, mikä ei ole jo liimattu paikalleen, on nyt kiinnitettävä.
Lisää lopuksi pieni kompassi pyörivän pohjan keskelle.
Vaihe 13: Käyttö
Kun Planet Finder käynnistyy, se kehottaa käyttäjää säätämään pystyakselia. Ylös- ja alaspainikkeiden painaminen siirtää kaukoputkea, yritä saada se vaakasuoraan osoittamaan oikealle ja paina sitten OK -painiketta (alareunassa).
Käyttäjää pyydetään sitten säätämään kiertoa, pyöritä kaukoputkea painikkeilla, kunnes se osoittaa pohjoiseen pienen kompassin mukaan, ja paina sitten ok.
Voit nyt selata planeettoja ylös/alas -painikkeilla ja valita haluamasi planeetan ok -painikkeella. Se näyttää planeetan korkeuden ja atsimuutin ja menee sitten osoittamaan sitä muutaman sekunnin ajan ennen kuin kääntyy takaisin pohjoiseen.
Vaihe 14: Valmis
Valmista!
Nauti tietää missä kaikki planeetat ovat:)
Ensimmäinen palkinto Space Challengessa
Suositeltava:
Ev3 Lego Gripper/Finder Robot: 7 vaihetta
Ev3 Lego Gripper/Finder -robotti: Hei! GrabBot on monikäyttöinen robotti, joka tykkää rullata ympäriinsä … Kun se törmää pieneen esineeseen, se ottaa sen ylös ja tuo sen takaisin alkuasentoonsa
Kitty Finder: 6 vaihetta
Kitty Finder: Jos luet tätä ohjeistusta, saatat olla väsynyt löytääksesi lemmikkisi kävelemässä ulkona joka ilta. Siksi keksin tämän suunnittelun kompaktista seurannasta, jonka avulla voit löytää pennut/kissanpennut helposti ulkopuolelta
Digital Stud Finder: 6 vaihetta (kuvilla)
Digital Stud Finder: Stud Studers on yksinkertainen käsite. Kaksi kapasitiivista anturia: toinen lähettää pulssi -aallon, toinen vastaanottaa ja mittaa jännitteen laskua materiaalien välillä kahden levyn välissä. Yrittäessäsi edistää tätä suunnittelua, tämä projekti asetettiin
Arduino Distance Finder: 3 vaihetta
Arduino Distance Finder: Tämä on leipälevypohjainen projekti, joka käyttää etäisyyttä Atmel Atmega 2560: n (Arduino Mega) avulla ultraäänianturin avulla. Tulos voidaan saada "cm" sekä 16x2 LCD -näytöllä että Arduino IDE -sarjan näytöllä. Voimme käyttää myös 16x2
Laituri 9: Smart Bone Fetch Finder ™: 4 vaihetta (kuvilla)
Laituri 9: Smart Bone Fetch Finder ™: Vuonna 2027 luotu Smart Bone Fetch Finder ™ antaa koirille mahdollisuuden hallita parhaita ystäviään. Tulevaisuudessa koirat lähestyvät ihmisiä puistoissa ja tarjoavat leikkihaun palveluna. Ensimmäinen nouto on ilmainen