Innholdsfortegnelse:
- Trinn 1: Det du trenger
- Trinn 2: Planetære koordinater
- Trinn 3: Få tilgang til Planet Data
- Trinn 4: Kode
- Trinn 5: Koble til maskinvare
- Trinn 6: Designe saken
- Trinn 7: Test utskriftene
- Trinn 8: Forlengelse av trinnmotoren
- Trinn 9: Monter knapper og LCD -skjerm
- Trinn 10: Legge til flenser
- Trinn 11: Kjør ved oppstart
- Trinn 12: Lim alt sammen
- Trinn 13: Bruk
- Trinn 14: Ferdig
Video: Raspberry Pi Planet Finder: 14 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Utenfor Science Center i byen min er det en stor metallkonstruksjon som kan snu og peke på hvor planetene var på himmelen. Jeg har aldri sett det fungere, men jeg har alltid tenkt at det ville være magisk å vite hvor disse utilgjengelige andre verdenene faktisk var i forhold til mitt lille jeg.
Da jeg gikk forbi denne lenge døde utstillingen nylig tenkte jeg "jeg vedder på at jeg kunne klare det", og det gjorde jeg!
Dette er en guide for hvordan du lager Planet Finder (med månen), slik at du også kan vite hvor du skal lete når du føler deg overveldet av verdensrommet.
Trinn 1: Det du trenger
1 x Raspberry Pi (versjon 3 eller høyere for innebygd wifi)
1 x LCD -skjerm (16 x 2) (som denne)
2 x Steppermotorer med drivere (28-BYJ48) (som disse)
3 x trykknapper (som disse)
2 x flenskoblinger (som disse)
1 x knappekompass (som dette)
8 x M3 bolter og muttere
3D -trykte deler til saken og teleskopet
Trinn 2: Planetære koordinater
Det er noen forskjellige måter å beskrive hvor astronomiske objekter er på himmelen.
For oss er det som er mest fornuftig å bruke, det horisontale koordinatsystemet som vist på bildet ovenfor. Dette bildet er fra Wikipedia -siden lenket her:
en.wikipedia.org/wiki/Horizontal_coordinat…
Det horisontale koordinatsystemet gir deg en vinkel fra nord (Azimuth) og oppover fra horisonten (høyden), så det er forskjellig avhengig av hvor du ser fra i verden. Så vår planetfinner må ta hensyn til plasseringen og ha en måte å finne Nord for å være en referanse.
I stedet for å prøve å beregne høyden og Azimuth som endres med tid og plassering, bruker vi wifi -tilkoblingen ombord på Raspberry Pi for å slå opp disse dataene fra NASA. De holder styr på denne typen ting, så vi slipper det;)
Trinn 3: Få tilgang til Planet Data
Vi henter dataene våre fra NASA Jet Propulsion Laboratory (JPL) -
For å få tilgang til disse dataene bruker vi et bibliotek kalt AstroQuery som er et sett med verktøy for å spørre etter astronomiske webskjemaer og databaser. Dokumentasjonen for dette biblioteket finnes her:
Hvis dette er ditt første Raspberry Pi -prosjekt, starter du med å følge denne oppsettguiden:
Hvis du bruker Raspbian på Raspberry Pi (det vil du gjøre hvis du fulgte guiden ovenfor), så har du allerede installert python3, sørg for at du har den siste versjonen installert (jeg bruker versjon 3.7.3). Vi må bruke dette for å få pip. Åpne en terminal og skriv inn følgende:
sudo apt installer python3-pip
Vi kan deretter bruke pip til å installere den oppgraderte versjonen av astroquery.
pip3 installere -før -oppgradere astroquery
Før du fortsetter med resten av dette prosjektet, kan du prøve å få tilgang til disse dataene med et enkelt Python -skript for å sikre at alle de riktige avhengighetene er installert riktig.
fra astroquery.jplhorizons importerer Horisonter
mars = Horizons (id = 499, location = '000', epochs = None, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
Dette skulle vise deg detaljene om plasseringen av Mars!
Du kan sjekke om disse dataene er riktige ved å bruke dette nettstedet til å finne posisjoner på levende planeter:
For å bryte ned denne spørringen litt, er id nummeret som er knyttet til Mars i JPLs data, epoker er tiden vi ønsker dataene fra (Ingen betyr akkurat nå) og id_type ber om de store kroppene i solsystemet. Stedet er for øyeblikket satt til Storbritannia som '000' er posisjonskoden for observatoriet i Greenwich. Andre steder finner du her:
Feilsøking:
Hvis du får feilen: Ingen modul som heter 'keyring.util.escape'
prøv følgende kommando i terminalen:
pip3 install -oppgrader nøkkelringer.alt
Trinn 4: Kode
Vedlagt dette trinnet er hele python -skriptet som ble brukt i dette prosjektet.
For å finne riktige data for posisjonen din, gå til funksjonen getPlanetInfo og endre plasseringen ved hjelp av listen over observatorier i forrige trinn.
def getPlanetInfo (planet):
obj = Horizons (id = planet, location = '000', epochs = None, id_type = 'majorbody') eph = obj.ephemerides () returner eph
Trinn 5: Koble til maskinvare
Koble sammen to trinnmotorer, LCD -skjermen og tre knapper som vist i kretsdiagrammet ovenfor ved hjelp av brødbrett og jumperkabler.
For å finne ut hvilket nummer pinnene er på din Raspberry Pi, gå til terminalen og skriv
pinout
Dette skal vise deg bildet ovenfor komplett med GPIO -tall og tavlenumre. Vi bruker tavlenumre for å definere hvilke pinner som brukes i koden, så jeg vil referere til tallene i parentes.
Som et hjelpemiddel for kretsdiagrammet, her er pinnene som er koblet til hver del:
Første trinnmotor - 7, 11, 13, 15
2. trinnmotor - 40, 38, 36, 32
Knapp 1 - 33
Knapp 2 - 37
Knapp 3 - 35
LCD -skjerm - 26, 24, 22, 18, 16, 12
Når alt dette er tilkoblet, kjører du python -skriptet
python3 planetFinder.py
og du bør se skjermen vise oppsetttekst og knappene skal flytte trinnmotorene.
Trinn 6: Designe saken
Etuiet er designet for å enkelt kunne skrives ut i 3D. Den brytes ned i separate deler som deretter limes sammen når elektronikken er festet på plass.
Hullene er dimensjonert for knappene jeg brukte og M3 bolter.
Jeg trykte teleskopet i deler og limte dem sammen senere for å unngå for mye støttestruktur.
STL -filer er vedlagt dette trinnet.
Trinn 7: Test utskriftene
Når alt er skrevet ut, må du kontrollere at alt passer godt sammen før limingen utføres.
Sett knappene på plass og fest skjermen og trinnmotorene med M3 -bolter og gi alt en god vrik. Fil ned eventuelle grove kanter ta alt fra hverandre igjen før neste trinn.
Trinn 8: Forlengelse av trinnmotoren
Steppermotoren som styrer teleskopets høydevinkel vil sitte over hovedhuset og trenger litt slakk i ledningene for å rotere. Ledningene må forlenges ved å kutte dem mellom stepper og driverbordet og lodde en ny trådlengde i mellom.
Jeg satte den nye ledningen inn i støttetårnet ved hjelp av et stykke tråd for å hjelpe til med å lokke den gjennom, da ledningen jeg bruker er ganske stiv og ble sittende fast. En gang gjennom kan den loddes til trinnmotoren, og sørg for å holde oversikt over hvilken farge som er koblet til for å feste de riktige i den andre enden. Ikke glem å legge til varmekrymping på ledningene!
Når du er loddet, kjører du python -skriptet for å kontrollere at alt fortsatt fungerer, og skyver deretter ledningene tilbake nedover røret til trinnmotoren er på plass. Den kan deretter festes til trinnmotorhuset med M3 -bolter og muttere før baksiden av huset limes på plass.
Trinn 9: Monter knapper og LCD -skjerm
Sett inn knappene og stram mutrene for å feste dem på plass før lodding. Jeg liker å bruke en vanlig jordledning som går mellom dem for ryddighet.
Fest LCD -skjermen med M3 bolter og muttere. LCD -skjermen ønsker et potensiometer på en av pinnene, som jeg også loddet på i dette stadiet.
Test koden igjen! Sørg for at alt fortsatt fungerer før vi limer alt sammen, da det er mye lettere å fikse på dette stadiet.
Trinn 10: Legge til flenser
For å koble de 3D -trykte delene til trinnmotorene bruker vi en 5 mm flenskobling som passer på toppen av enden av trinnmotoren og holdes på plass med små skruer.
Den ene flensen limes til bunnen av det roterende tårnet og den andre til teleskopet.
Det er enkelt å feste teleskopet til motoren på toppen av det roterende tårnet, da det er god plass til de små skruene som holder det på plass. Den andre flensen er vanskeligere å sikre, men det er nok mellomrom mellom hovedhuset og bunnen av det roterende tårnet for å passe til en liten unbrakonøkkel og stramme skruen.
Test igjen!
Nå burde alt fungere som det vil være i sin endelige tilstand. Hvis det ikke er det, er det på tide å feilsøke og sørge for at alle tilkoblinger er sikre. Sørg for at ledninger som ikke er utsatt for berøring av hverandre, gå rundt med elektrisk tape og lapp opp steder som kan forårsake et problem.
Trinn 11: Kjør ved oppstart
I stedet for å kjøre koden manuelt hver gang vi ønsker å finne en planet, vil vi at denne skal kjøres som en frittstående utstilling, så vi skal sette den opp for å kjøre koden vår når Raspberry Pi slås på.
I terminalen skriver du inn
crontab -e
I filen som åpnes, legger du til følgende i slutten av filen, etterfulgt av en ny linje.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Jeg har koden min lagret i en mappe som heter PlanetFinder, så /home/pi/PlanetFinder/planetFinder.py er plasseringen av filen min. Hvis din er lagret et annet sted, må du endre den her.
& På slutten er viktig da den lar koden kjøre i bakgrunnen, så den holder ikke andre prosesser som også skjer i oppstart.
Trinn 12: Lim alt sammen
Alt som ikke allerede er limt på plass, bør nå fikses.
Til slutt legger du det lille kompasset til midten av den roterende basen.
Trinn 13: Bruk
Når Planet Finder slås på, vil den be brukeren om å justere den vertikale aksen. Ved å trykke på opp- og nedknappene vil du flytte teleskopet, prøve å få det til å være i vater, peke til høyre, og trykk deretter på ok -knappen (nederst).
Brukeren blir deretter bedt om å justere rotasjonen, bruk knappene til å snu teleskopet til det peker nordover i henhold til det lille kompasset, og trykk deretter på ok.
Du kan nå bla gjennom planeter ved å bruke opp/ned -knappene og velge en du vil finne med ok -knappen. Den vil vise planetens høyde og azimut og deretter gå og peke på den i noen sekunder før den vender tilbake til nord.
Trinn 14: Ferdig
Ferdig!
Kos deg med å vite hvor alle planetene er:)
Førstepremie i Space Challenge
Anbefalt:
Slik gjør du det: Installere Raspberry PI 4 Headless (VNC) med Rpi-imager og bilder: 7 trinn (med bilder)
Howto: Installere Raspberry PI 4 Headless (VNC) Med Rpi-imager og bilder: Jeg planlegger å bruke denne Rapsberry PI i en haug med morsomme prosjekter tilbake i bloggen min. Sjekk det gjerne ut. Jeg ønsket å begynne å bruke Raspberry PI igjen, men jeg hadde ikke tastatur eller mus på min nye plassering. Det var en stund siden jeg konfigurerte en bringebær
Digital Stud Finder: 6 trinn (med bilder)
Digital Stud Finder: Stud Finders er et enkelt konsept. To kapasitive sensorer: en som sender en pulsbølge, den andre mottar og måler spenningsnedgangen mellom materialet mellom de to platene
Slik demonterer du en datamaskin med enkle trinn og bilder: 13 trinn (med bilder)
Slik demonterer du en datamaskin med enkle trinn og bilder: Dette er en instruksjon om hvordan du demonterer en PC. De fleste grunnkomponentene er modulære og fjernes lett. Det er imidlertid viktig at du er organisert om det. Dette vil bidra til å hindre deg i å miste deler, og også i å gjøre monteringen igjen
Attiny85 Distance Finder: 4 trinn (med bilder)
Attiny85 Distance Finder: Før jeg gjorde dette instruerbart, hadde jeg nettopp fått noen nye Attinys (Attinies?) Og ville lage noe med dem. Det var da jeg la merke til at min ultralydsavstandsmaskin helt alene var ubrukt. Denne ultralyd Attiny avstandssøkeren gir avstanden
Pier 9: Smart Bone Fetch Finder ™: 4 trinn (med bilder)
Pier 9: Smart Bone Fetch Finder ™: Smart Bone Fetch Finder ™, som først ble opprettet i 2027, gir hunder muligheten til å ta kontroll over hvem de er bestevenner med. I denne fremtiden vil hunder henvende seg til mennesker i parker og tilby å leke å hente som en tjeneste. Den første hentingen er gratis, en