Sisällysluettelo:

Raspberry Pi Planet Finder: 14 vaihetta (kuvilla)
Raspberry Pi Planet Finder: 14 vaihetta (kuvilla)

Video: Raspberry Pi Planet Finder: 14 vaihetta (kuvilla)

Video: Raspberry Pi Planet Finder: 14 vaihetta (kuvilla)
Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024, Heinäkuu
Anonim
Image
Image
Mitä tarvitset
Mitä tarvitset

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

Mitä tarvitset
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

Planeettakoordinaatit
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

Laitteiston yhdistäminen
Laitteiston yhdistäminen
Laitteiston yhdistäminen
Laitteiston yhdistäminen
Laitteiston yhdistäminen
Laitteiston yhdistä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

Kotelon suunnittelu
Kotelon suunnittelu
Kotelon suunnittelu
Kotelon suunnittelu
Kotelon suunnittelu
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

Tulosteiden testaaminen
Tulosteiden testaaminen
Tulosteiden testaaminen
Tulosteiden testaaminen
Tulosteiden testaaminen
Tulosteiden testaaminen
Tulosteiden testaaminen
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

Askelmoottorin laajentaminen
Askelmoottorin laajentaminen
Askelmoottorin laajentaminen
Askelmoottorin laajentaminen
Askelmoottorin laajentaminen
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ö

Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
Kiinnityspainikkeet ja LCD -näyttö
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

Laippojen lisääminen
Laippojen lisääminen
Laippojen lisääminen
Laippojen lisääminen
Laippojen lisääminen
Laippojen lisääminen
Laippojen lisääminen
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

Liimaa kaikki yhteen!
Liimaa kaikki yhteen!
Liimaa kaikki yhteen!
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ö

Käyttö
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

Valmis
Valmis

Valmista!

Nauti tietää missä kaikki planeetat ovat:)

Avaruushaaste
Avaruushaaste
Avaruushaaste
Avaruushaaste

Ensimmäinen palkinto Space Challengessa

Suositeltava: