Obsah:
- Krok 1: Co potřebujete
- Krok 2: Planetární souřadnice
- Krok 3: Přístup k datům planety
- Krok 4: Kód
- Krok 5: Připojení hardwaru
- Krok 6: Navrhování pouzdra
- Krok 7: Testování výtisků
- Krok 8: Rozšíření krokového motoru
- Krok 9: Namontujte tlačítka a obrazovku LCD
- Krok 10: Přidání přírub
- Krok 11: Spusťte při spuštění
- Krok 12: Lepte to všechno dohromady
- Krok 13: Použití
- Krok 14: Hotovo
Video: Vyhledávač planet Raspberry Pi: 14 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:20
Mimo centrum vědy v mém městě je velká kovová konstrukce, která se může otáčet a ukazovat na místo, kde byly planety na obloze. Nikdy jsem to neviděl fungovat, ale vždy jsem si myslel, že by bylo kouzelné vědět, kde tyto nedosažitelné jiné světy ve skutečnosti jsou ve vztahu k mému malému já.
Když jsem nedávno procházel kolem této dávno mrtvé expozice, napadlo mě „Vsadím se, že to zvládnu“a tak jsem také udělal!
Toto je průvodce, jak vytvořit vyhledávač planet (s Měsícem), abyste i vy věděli, kam se dívat, když vás prostor zaskočí.
Krok 1: Co potřebujete
1 x Raspberry Pi (verze 3 nebo vyšší pro integrovanou wifi)
1 x LCD displej (16 x 2) (takto)
2 x krokové motory s ovladači (28-BYJ48) (jako tyto)
3 x tlačítka (jako tato)
2 x přírubové spojky (jako tyto)
1 x Tlačítko kompas (takhle)
8 x šroubů a matic M3
3D tištěné díly pro pouzdro a dalekohled
Krok 2: Planetární souřadnice
Existuje několik různých způsobů, jak popsat, kde jsou astronomické objekty na obloze.
Pro nás je nejvhodnější použít horizontální souřadnicový systém, jak je znázorněno na obrázku výše. Tento obrázek je ze zde odkazované stránky Wikipedie:
en.wikipedia.org/wiki/Horizontal_coordinat…
Systém horizontálních souřadnic vám poskytuje úhel od severu (azimut) a nahoru od horizontu (nadmořská výška), takže se liší podle toho, odkud se na svět díváte. Náš vyhledávač planet tedy musí vzít v úvahu polohu a určitým způsobem najít sever jako referenci.
Spíše než zkoušet vypočítat nadmořskou výšku a azimut, které se mění s časem a místem, použijeme k vyhledání těchto údajů od NASA wifi připojení na palubě Raspberry Pi. Sledují tento druh věcí, abychom nemuseli;)
Krok 3: Přístup k datům planety
Data získáváme z NASA Jet Propulsion Laboratory (JPL) -
K přístupu k těmto datům používáme knihovnu AstroQuery, což je sada nástrojů pro dotazování astronomických webových formulářů a databází. Dokumentaci k této knihovně naleznete zde:
Pokud se jedná o váš první projekt Raspberry Pi, začněte podle tohoto průvodce nastavením:
Pokud na svém Raspberry Pi používáte Raspbian (budete, pokud jste postupovali podle výše uvedeného průvodce), pak již máte nainstalovaný python3, ujistěte se, že máte nainstalovanou nejnovější verzi (já používám verzi 3.7.3). Musíme to použít k získání pipu. Otevřete terminál a zadejte následující:
sudo apt install python3-pip
Můžeme pak použít pip k instalaci upgradované verze astroquery.
pip3 install --pre --upgrade astroquery
Než budete pokračovat ve zbytku tohoto projektu, zkuste k těmto datům přistupovat pomocí jednoduchého skriptu Pythonu, abyste se ujistili, že všechny správné závislosti byly nainstalovány správně.
z astroquery.jplhorizons importujte Horizons
mars = Horizons (id = 499, location = '000', epochs = None, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
To by vám mělo ukázat podrobnosti o poloze Marsu!
Pomocí těchto stránek můžete zkontrolovat, zda jsou tato data správná, a vyhledat pozice živých planet:
Abychom tento dotaz trochu rozdělili, id je číslo přidružené k Marsu v datech JPL, epocha je čas, ze kterého chceme data (None znamená právě teď) a id_type žádá o hlavní tělesa sluneční soustavy. Poloha je v současné době nastavena na Spojené království, protože „000“je kód polohy pro observatoř v Greenwichi. Další místa najdete zde:
Odstraňování problémů:
Pokud se zobrazí chyba: Žádný modul s názvem 'keyring.util.escape'
zkuste v terminálu následující příkaz:
pip3 install --upgrade keyrings.alt
Krok 4: Kód
K tomuto kroku je připojen úplný skript pythonu použitý v tomto projektu.
Chcete -li najít správná data pro vaši polohu, přejděte na funkci getPlanetInfo a změňte umístění pomocí seznamu observatoří v předchozím kroku.
def getPlanetInfo (planeta):
obj = Horizons (id = planet, location = '000', epochs = None, id_type = 'majorbody') eph = obj.ephemerides () return eph
Krok 5: Připojení hardwaru
Pomocí propojovacích vodičů a propojovacích kabelů propojte dva krokové motory, obrazovku LCD a tři tlačítka, jak je znázorněno na schématu zapojení výše.
Chcete -li zjistit, jaké číslo jsou piny na vašem Raspberry Pi, přejděte na terminál a zadejte
pinout
To by vám mělo ukázat výše uvedený obrázek s čísly GPIO a čísly desek. Čísla desek používáme k definování, které piny jsou použity v kódu, takže na čísla budu odkazovat v závorkách.
Jako pomůcka pro schéma zapojení jsou zde piny, které jsou připojeny ke každé části:
1. krokový motor - 7, 11, 13, 15
2. krokový motor - 40, 38, 36, 32
Tlačítko 1 - 33
Tlačítko 2 - 37
Tlačítko 3 - 35
LCD obrazovka - 26, 24, 22, 18, 16, 12
Když je toto vše připojeno, spusťte skript python
python3 planetFinder.py
a na obrazovce byste měli vidět text nastavení a tlačítka by měla pohybovat krokovými motory.
Krok 6: Navrhování pouzdra
Pouzdro bylo navrženo tak, aby bylo možné jej snadno vytisknout 3D. Rozpadá se na samostatné části, které jsou poté slepeny, jakmile je elektronika zajištěna na svém místě.
Otvory jsou dimenzovány pro tlačítka, která jsem použil, a šrouby M3.
Dalekohled jsem vytiskl po částech a později jsem je slepil, abych se vyhnul přílišné podpůrné struktuře.
K tomuto kroku jsou připojeny soubory STL.
Krok 7: Testování výtisků
Jakmile je vše vytištěno, ujistěte se, že vše těsně přiléhá k sobě, než je provedeno jakékoli lepení.
Nasaďte tlačítka na místo a zajistěte obrazovku a krokové motory pomocí šroubů M3 a dejte všemu pořádně zabrat. Před dalším krokem zapište všechny hrubé hrany a vše rozeberte.
Krok 8: Rozšíření krokového motoru
Krokový motor, který bude ovládat výškový úhel dalekohledu, bude umístěn nad hlavním pouzdrem a potřebuje nějaké vůle v drátech, aby se mohl otáčet. Dráty je třeba prodloužit oříznutím mezi stepperem a jeho deskou řidiče a pájením nové délky drátu mezi nimi.
Nový drát jsem vložil do podpůrné věže pomocí kusu závitu, abych ho pomohl přemístit, protože drát, který používám, je docela tuhý a stále se zasekává. Jakmile to projde, může být připájeno k krokovému motoru, ujistěte se, že budete sledovat, která barva je připojena, abyste znovu připojili ty správné na druhém konci. Nezapomeňte do vodičů přidat smršťování!
Po pájení spusťte skript pythonu, abyste zkontrolovali, zda vše stále funguje, a poté zatlačte vodiče zpět do trubice, dokud nebude krokový motor na svém místě. Poté může být připevněn ke skříni krokového motoru pomocí šroubů a matic M3, než se zadní část skříně nalepí na místo.
Krok 9: Namontujte tlačítka a obrazovku LCD
Před pájením vložte knoflíky a utáhněte matice, abyste je zajistili na místě. Rád používám společný zemnící vodič, který mezi nimi vede pro úhlednost.
Zajistěte obrazovku LCD šrouby a maticemi M3. LCD chce potenciometr na jednom ze svých kolíků, které jsem v této fázi také připájel.
Otestujte kód znovu! Než vše slepíme, ujistěte se, že vše stále funguje, protože v této fázi je oprava mnohem snazší.
Krok 10: Přidání přírub
Pro připojení 3D tištěných dílů k krokovým motorům používáme 5mm přírubu, která se vejde na konec konce krokového motoru a drží na místě pomocí malých šroubů.
Jedna příruba je přilepená k základně otočné věže a druhá k dalekohledu.
Připevnění dalekohledu k motoru na vrcholu otočné věže je jednoduché, protože je zde spousta prostoru pro přístup k malým šroubům, které jej drží na místě. Druhou přírubu je těžší zajistit, ale mezi hlavním pouzdrem a základnou otočné věže je dostatečná mezera, aby se vešel malý imbusový klíč a utáhl šroub.
Otestujte znovu!
Nyní by vše mělo fungovat tak, jak bude v konečném stavu. Pokud tomu tak není, je načase opravit chyby a ujistit se, že jsou všechna připojení zabezpečená. Ujistěte se, že se odkryté vodiče navzájem nedotýkají, obejděte elektrickou páskou a zalepte všechna místa, která by mohla způsobit problém.
Krok 11: Spusťte při spuštění
Spíše než spouštět kód ručně pokaždé, když chceme najít planetu, chceme, aby to běželo jako samostatná výstava, takže to nastavíme tak, aby náš kód běžel vždy, když se Raspberry Pi zapne.
Do terminálu napište
crontab -e
V souboru, který se otevře, přidejte na konec souboru následující a za ním nový řádek.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
Mám svůj kód uložen ve složce s názvem PlanetFinder, takže /home/pi/PlanetFinder/planetFinder.py je umístění mého souboru. Pokud je váš uložen někde jinde, změňte jej zde.
Důležitý je znak & na konci, protože umožňuje spuštění kódu na pozadí, takže nezdržuje další procesy, které se také vyskytují při spouštění.
Krok 12: Lepte to všechno dohromady
Vše, co již není nalepeno na místě, by nyní mělo být opraveno.
Nakonec přidejte malý kompas doprostřed rotující základny.
Krok 13: Použití
Když se vyhledávač planet zapne, vyzve uživatele k nastavení svislé osy. Stisknutím tlačítek nahoru a dolů se teleskop pohne, zkuste jej vyrovnat, směřujte doprava a poté stiskněte tlačítko ok (dole).
Uživatel bude poté požádán o nastavení rotace, pomocí tlačítek otáčejte dalekohledem, dokud neukáže na sever podle malého kompasu, poté stiskněte ok.
Nyní můžete procházet planetami pomocí tlačítek nahoru/dolů a pomocí tlačítka ok vyberte tu, kterou chcete najít. Zobrazí nadmořskou výšku a azimut planety, poté na ni na několik sekund ukážte a poté se otočte zpět na sever.
Krok 14: Hotovo
Vše hotovo!
Užijte si vědět, kde jsou všechny planety:)
První cena ve vesmírné výzvě
Doporučuje:
Vyhledávač klíčů IoT pomocí ESP8266-01: 11 kroků (s obrázky)
Vyhledávač klíčů IoT pomocí ESP8266-01: Jste jako já, že vždy zapomínáte, kde jste si nechali klíče? Nikdy nemohu najít své klíče včas! A kvůli tomuto mému zvyku jsem přišel pozdě na vysokou školu, ten limitovaný edice star wars dobrot (stále fretting!), Rande (nikdy si nevybrala
Digitální kompas a vyhledávač směru: 6 kroků
Digitální kompas a vyhledávač nadpisů: Autoři: Cullan Whelan Andrew Luft Blake Johnson Poděkování: Kalifornská námořní akademie Evan Chang-Siu Úvod: Základem tohoto projektu je digitální kompas se sledováním kurzu. To umožňuje uživateli sledovat směr na dlouhou vzdálenost
Vyhledávač polohy GPS: 5 kroků
Vyhledávač polohy GPS: Ahoj všichni, dnes se podíváme, jak vytvořit vyhledávač polohy GPS pomocí modulu GPS NEO-6m a arduina. Nejprve se podívejme, co je GPS
Vyhledávač dosahu Arduino: 6 kroků
Vyhledávač dosahu Arduino: Tento vyhledávač dosahu byl vytvořen za účelem sledování, zda jsou dveře otevřené. Měření vzdálenosti dveří nám umožní identifikovat, zda jsou dveře otevřené nebo zavřené
Ultrazvukový vyhledávač dosahu s Arduino a LCD: 5 kroků
Ultrazvukový vyhledávač dosahu s Arduino a LCD: Mnoho lidí vytvořilo instrukce, jak používat Arduino Uno s ultrazvukovým senzorem a někdy také s LCD obrazovkou. Vždy jsem však zjistil, že tyto další pokyny často přeskakují kroky, které nejsou zřejmé, aby mohly začít