Sommario:
- Passaggio 1: cosa ti serve
- Passaggio 2: coordinate planetarie
- Passaggio 3: accesso ai dati del pianeta
- Passaggio 4: codice
- Passaggio 5: collegamento dell'hardware
- Passaggio 6: progettazione della custodia
- Passaggio 7: test delle stampe
- Passaggio 8: estensione del motore passo-passo
- Passaggio 9: montare i pulsanti e lo schermo LCD
- Passaggio 10: aggiunta di flange
- Passaggio 11: esegui all'avvio
- Passaggio 12: incolla tutto insieme
- Passaggio 13: utilizzo
- Passaggio 14: finito
Video: Raspberry Pi Planet Finder: 14 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Fuori dal Science Center della mia città c'è una grande struttura metallica che potrebbe girare e indicare dove si trovavano i pianeti nel cielo. Non l'ho mai visto funzionare, ma ho sempre pensato che sarebbe stato magico sapere dove fossero effettivamente questi irraggiungibili altri mondi in relazione al mio piccolo io.
Quando sono passato davanti a questa mostra morta da tempo, di recente, ho pensato "Scommetto che potrei farcela" e così ho fatto!
Questa è una guida su come creare il Planet Finder (con la Luna) in modo che anche tu possa sapere dove guardare quando ti senti intimorito dallo spazio.
Passaggio 1: cosa ti serve
1 x Raspberry Pi (versione 3 o successiva per Wi-Fi integrato)
1 x schermo LCD (16 x 2) (come questo)
2 x motori passo-passo con driver (28-BYJ48) (come questi)
3 x pulsanti (come questi)
2 x giunti flangiati (come questi)
1 x Bussola a bottone (come questa)
8 x M3 bulloni e dadi
Parti stampate in 3D per la custodia e il telescopio
Passaggio 2: coordinate planetarie
Esistono diversi modi per descrivere dove si trovano gli oggetti astronomici nel cielo.
Per noi, quello che ha più senso usare è il sistema di coordinate orizzontali come mostrato nell'immagine sopra. Questa immagine è tratta dalla pagina di Wikipedia collegata qui:
en.wikipedia.org/wiki/Horizontal_coordinat…
Il sistema di coordinate orizzontali ti dà un angolo dal nord (l'azimut) e verso l'alto dall'orizzonte (l'altitudine), quindi è diverso a seconda di dove stai guardando nel mondo. Quindi il nostro cercatore di pianeti deve prendere in considerazione la posizione e avere un modo per trovare il nord per essere un riferimento.
Piuttosto che provare a calcolare l'altitudine e l'azimut che cambiano con l'ora e la posizione, utilizzeremo la connessione wifi a bordo del Raspberry Pi per cercare questi dati dalla NASA. Tengono traccia di questo genere di cose, quindi non dobbiamo farlo noi;)
Passaggio 3: accesso ai dati del pianeta
Stiamo ottenendo i nostri dati dal Jet Propulsion Laboratory (JPL) della NASA -
Per accedere a questi dati, utilizziamo una libreria chiamata AstroQuery che è un insieme di strumenti per interrogare moduli web e database astronomici. La documentazione per questa libreria si trova qui:
Se questo è il tuo primo progetto Raspberry Pi, inizia seguendo questa guida alla configurazione:
Se stai usando Raspbian sul tuo Raspberry Pi (lo farai se hai seguito la guida sopra), allora hai già installato python3, assicurati di avere la versione più recente installata (sto usando la versione 3.7.3). Dobbiamo usarlo per ottenere pip. Apri un terminale e digita quanto segue:
sudo apt install python3-pip
Possiamo quindi usare pip per installare la versione aggiornata di astroquery.
pip3 install --pre --upgrade astroquery
Prima di continuare con il resto di questo progetto, prova ad accedere a questi dati con un semplice script Python per assicurarti che tutte le giuste dipendenze siano state installate correttamente.
da astroquery.jplhorizons import Horizons
mars = Horizons(id=499, location='000', epochs=Nessuno, id_type='majorbody') eph = mars.ephemerides() print(eph)
Questo dovrebbe mostrarti i dettagli della posizione di Marte!
Puoi verificare se questi dati sono corretti utilizzando questo sito per cercare le posizioni dei pianeti in tempo reale:
Per suddividere un po' questa query, l'id è il numero associato a Marte nei dati di JPL, epochs è l'ora in cui vogliamo i dati (Nessuno significa in questo momento) e id_type richiede i corpi principali del sistema solare. La posizione è attualmente impostata nel Regno Unito poiché "000" è il codice della posizione per l'osservatorio di Greenwich. Altre posizioni possono essere trovate qui:
Risoluzione dei problemi:
Se ricevi l'errore: nessun modulo chiamato 'keyring.util.escape'
prova il seguente comando nel terminale:
pip3 install --upgrade keyrings.alt
Passaggio 4: codice
In allegato a questo passaggio è lo script Python completo utilizzato in questo progetto.
Per trovare i dati corretti per la tua posizione, vai alla funzione getPlanetInfo e modifica la posizione utilizzando l'elenco degli osservatori nel passaggio precedente.
def getPlanetInfo(pianeta):
obj = Horizons(id=planet, location='000', epochs=Nessuno, id_type='majorbody') eph = obj.ephemerides() return eph
Passaggio 5: collegamento dell'hardware
Usando breadboard e ponticelli, collegare due motori passo-passo, lo schermo LCD e tre pulsanti come mostrato nello schema del circuito sopra.
Per scoprire quale numero sono i pin sul tuo Raspberry Pi, vai al terminale e digita
piedinatura
Questo dovrebbe mostrarti l'immagine sopra completa di numeri GPIO e numeri di scheda. Stiamo usando i numeri della scheda per definire quali pin sono usati nel codice, quindi farò riferimento ai numeri tra parentesi.
Come aiuto per lo schema elettrico, ecco i pin che sono collegati a ciascuna parte:
Primo motore passo-passo - 7, 11, 13, 15
2° motore passo-passo - 40, 38, 36, 32
Pulsante1 - 33
Pulsante2 - 37
Pulsante3 - 35
Schermo LCD - 26, 24, 22, 18, 16, 12
Quando tutto questo è connesso, esegui lo script python
python3 planetFinder.py
e dovresti vedere lo schermo che mostra il testo di configurazione e i pulsanti dovrebbero muovere i motori passo-passo.
Passaggio 6: progettazione della custodia
La custodia è stata progettata per essere facilmente stampata in 3D. Si scompone in parti separate che vengono poi incollate insieme una volta che l'elettronica è stata fissata in posizione.
I fori sono dimensionati per i pulsanti che ho usato e i bulloni M3.
Ho stampato il telescopio in parti e le ho incollate insieme in seguito per evitare troppa struttura di supporto.
I file STL sono allegati a questo passaggio.
Passaggio 7: test delle stampe
Una volta che tutto è stato stampato, assicurati che tutto si adatti perfettamente prima di eseguire l'incollaggio.
Montare i pulsanti in posizione e fissare lo schermo e i motori passo-passo con bulloni M3 e dare a tutto una buona oscillazione. Lima i bordi irregolari e smonta tutto di nuovo prima del passaggio successivo.
Passaggio 8: estensione del motore passo-passo
Il motore passo-passo che controllerà l'angolo di elevazione del telescopio si troverà sopra il case principale e ha bisogno di un po' di gioco nei fili per poter ruotare. I fili devono essere estesi tagliandoli tra lo stepper e la sua scheda driver e saldando una nuova lunghezza di filo in mezzo.
Ho inserito il nuovo filo nella torre di supporto usando un pezzo di filo per aiutarlo a farlo passare poiché il filo che sto usando è piuttosto rigido e continuava a bloccarsi. Una volta attraversato, può essere saldato al motore passo-passo, assicurandosi di tenere traccia di quale colore è collegato per ricollegare quelli giusti all'altra estremità. Non dimenticare di aggiungere un termorestringente ai fili!
Una volta saldato, esegui lo script Python per verificare che tutto funzioni ancora, quindi spingi nuovamente i fili lungo il tubo finché il motore passo-passo non è in posizione. Può quindi essere fissato all'alloggiamento del motore passo-passo con bulloni e dadi M3 prima che il retro dell'alloggiamento venga incollato in posizione.
Passaggio 9: montare i pulsanti e lo schermo LCD
Inserire i pulsanti e serrare i dadi per fissarli in posizione prima della saldatura. Mi piace usare un filo di terra comune che corre tra di loro per la pulizia.
Fissare lo schermo LCD con bulloni e dadi M3. Il display LCD vuole un potenziometro su uno dei suoi pin che ho anche saldato in questa fase.
Prova di nuovo il codice! Assicurati che tutto funzioni ancora prima di incollare tutto insieme poiché è molto più facile da riparare in questa fase.
Passaggio 10: aggiunta di flange
Per collegare le parti stampate in 3D ai motori passo-passo, utilizziamo un accoppiamento flangiato da 5 mm che si inserisce nella parte superiore dell'estremità del motore passo-passo ed è tenuto in posizione da minuscole viti.
Una flangia è incollata alla base della torre rotante e l'altra al telescopio.
Fissare il telescopio al motore in cima alla torre rotante è semplice in quanto c'è molto spazio per accedere alle piccole viti che lo tengono in posizione. L'altra flangia è più difficile da fissare, ma c'è abbastanza spazio tra il case principale e la base della torre rotante per inserire una piccola chiave a brugola e stringere la vite.
Prova di nuovo!
Ora tutto dovrebbe funzionare come sarà nel suo stato finale. In caso contrario, ora è il momento di correggere i bug e assicurarsi che le connessioni siano tutte sicure. Assicurati che i fili scoperti non si tocchino, gira con del nastro isolante e rattoppa tutti i punti che potrebbero causare problemi.
Passaggio 11: esegui all'avvio
Piuttosto che eseguire il codice manualmente ogni volta che vogliamo trovare un pianeta, vogliamo che venga eseguito come una mostra indipendente, quindi lo configureremo per eseguire il nostro codice ogni volta che il Raspberry Pi si accende.
Nel terminale, digita
crontab -e
Nel file che si apre, aggiungi quanto segue alla fine del file, seguito da una nuova riga.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Ho salvato il mio codice in una cartella chiamata PlanetFinder, quindi /home/pi/PlanetFinder/planetFinder.py è la posizione del mio file. Se il tuo è salvato da qualche altra parte, assicurati di cambiarlo qui.
Il & alla fine è importante in quanto consente l'esecuzione del codice in background, quindi non sostiene altri processi che si verificano anche all'avvio.
Passaggio 12: incolla tutto insieme
Tutto ciò che non è già incollato dovrebbe ora essere riparato.
Infine, aggiungi la piccola bussola al centro della base rotante.
Passaggio 13: utilizzo
Quando il Planet Finder si accende, chiederà all'utente di regolare l'asse verticale. Premendo i pulsanti su e giù sposterai il telescopio, prova a farlo stare in piano, puntando a destra, quindi premi il pulsante ok (in basso).
All'utente verrà quindi chiesto di regolare la rotazione, utilizzare i pulsanti per far girare il telescopio fino a quando non punta a nord secondo la piccola bussola, quindi premere ok.
Ora puoi scorrere i pianeti usando i pulsanti su/giù e seleziona quello che desideri trovare con il pulsante ok. Mostrerà l'Altitudine e l'Azimut del pianeta, quindi andrà a puntarlo per alcuni secondi prima di voltarsi verso il Nord.
Passaggio 14: finito
Tutto fatto!
Divertiti a sapere dove sono tutti i pianeti:)
Primo Premio nella Sfida Spaziale
Consigliato:
IoT Keychain Finder utilizzando ESP8266-01: 11 passaggi (con immagini)
IoT Keychain Finder utilizzando ESP8266-01: sei come me che dimentichi sempre dove hai tenuto le chiavi? Non riesco mai a trovare le mie chiavi in tempo! E a causa di questa mia abitudine, sono arrivato in ritardo per il mio college, quella vendita di gadget di Star Wars in edizione limitata (ancora preoccupata!), una data (non ha mai scelto
Custodia rigida per telecomando Apple TV Siri con Bluetooth Tile Finder: 7 passaggi (con immagini)
Custodia rigida per telecomando Apple TV Siri con Bluetooth Tile Finder: una volta ho letto una descrizione dell'iPhone come un "bastone di burro imbevuto di olio e spruzzato con WD40 per buona misura!" Penso che sia stato quando è uscito il modello 6 e tutti stavano lasciando cadere i loro costosi nuovi telefoni e rompendo il vetro
Come installare Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: 7 passaggi (con immagini)
Howto: installazione di Raspberry PI 4 Headless (VNC) con Rpi-imager e immagini: ho intenzione di utilizzare questo Rapsberry PI in una serie di progetti divertenti nel mio blog. Sentiti libero di dare un'occhiata. Volevo tornare a usare il mio Raspberry PI ma non avevo una tastiera o un mouse nella mia nuova posizione. Era un po' che non installavo un Raspberry
Come smontare un computer con semplici passaggi e immagini: 13 passaggi (con immagini)
Come smontare un computer con semplici passaggi e immagini: questa è un'istruzione su come smontare un PC. La maggior parte dei componenti di base sono modulari e facilmente smontabili. Tuttavia è importante che tu sia organizzato al riguardo. Questo ti aiuterà a non perdere parti e anche a rendere più facile il rimontaggio
Pier 9: Smart Bone Fetch Finder™: 4 passaggi (con immagini)
Pier 9: Smart Bone Fetch Finder™: Smart Bone Fetch Finder™, creato per la prima volta nell'anno 2027, consente ai cani di prendere il controllo di chi sono i migliori amici. In questo futuro, i cani si avvicineranno alle persone nei parchi e si offriranno di giocare a riporto come servizio. Il primo recupero è gratuito, un