Tartalomjegyzék:
- 1. lépés: Amire szüksége van
- 2. lépés: Bolygókoordináták
- 3. lépés: Hozzáférés a bolygóadatokhoz
- 4. lépés: Kód
- 5. lépés: Hardver csatlakoztatása
- 6. lépés: A tok tervezése
- 7. lépés: A nyomatok tesztelése
- 8. lépés: A léptetőmotor meghosszabbítása
- 9. lépés: A gombok és az LCD képernyő rögzítése
- 10. lépés: Karimák hozzáadása
- 11. lépés: Futtassa az indításkor
- 12. lépés: Ragassza össze mindent
- 13. lépés: Használat
- 14. lépés: Kész
Videó: Raspberry Pi Planet Finder: 14 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:40
Városom Tudományos Központján kívül van egy nagy fémszerkezet, amely elfordulhat és oda mutathat, ahol a bolygók az égen voltak. Sosem láttam működőképesnek, de mindig azt gondoltam, hogy varázslatos lenne tudni, hol vannak valójában ezek az elérhetetlen más világok az én pici énemhez képest.
Amikor nemrég elmentem ezen a rég halott kiállítás mellett, azt gondoltam, hogy "meg tudom valósítani", és így is tettem!
Ez egy útmutató arról, hogyan készítsd el a Bolygókeresőt (a Holddal együtt), hogy te is tudja, merre nézzen, amikor elborzad az űr.
1. lépés: Amire szüksége van
1 x Raspberry Pi (3 -as vagy újabb verzió a fedélzeti wifi -hez)
1 x LCD képernyő (16 x 2) (így)
2 x léptetőmotor meghajtókkal (28-BYJ48) (mint ezek)
3 db nyomógomb (ilyenek)
2 x karimás csatlakozó (ilyenek)
1 x gombos iránytű (így)
8 x M3 csavar és anya
3D nyomtatott alkatrészek a tokhoz és a távcsőhöz
2. lépés: Bolygókoordináták
A csillagászati objektumok égen való elhelyezkedésének leírására néhány különböző módszer létezik.
Számunkra a legértelmesebb a vízszintes koordinátarendszer használata, ahogy a fenti képen látható. Ez a kép a linkelt Wikipédia oldalról származik:
en.wikipedia.org/wiki/Horizontal_coordinat…
A vízszintes koordinátarendszer északi (azimut) és a látóhatártól (a magasság) felfelé néző szöget biztosít, tehát ez attól függően változik, hogy honnan nézi a világot. Tehát bolygókeresőnknek figyelembe kell vennie a helyét, és valamilyen módon meg kell találnia Északot, hogy referenciaként szolgáljon.
Ahelyett, hogy megpróbálnánk kiszámítani a magasságot és az azimutot, amelyek változnak az idővel és a hellyel, a Raspberry Pi fedélzetén lévő wifi -kapcsolatot használjuk, hogy megkeressük ezeket az adatokat a NASA -tól. Ők nyomon követik az ilyesmit, hogy ne kelljen;)
3. lépés: Hozzáférés a bolygóadatokhoz
Adatainkat a NASA sugárhajtómű -laboratóriumából (JPL) szerezzük be -
Ezen adatok eléréséhez az AstroQuery nevű könyvtárat használjuk, amely eszközkészlet a csillagászati webes űrlapok és adatbázisok lekérdezésére. A könyvtár dokumentációja itt található:
Ha ez az első Raspberry Pi projektje, kezdje a következő beállítási útmutató követésével:
Ha Raspbian -t használ a Raspberry Pi -n (akkor lesz, ha követte a fenti útmutatót), akkor már telepítve van a python3, győződjön meg róla, hogy a legújabb verzió van telepítve (a 3.7.3 verziót használom). Ezt kell használnunk a pip megszerzéséhez. Nyisson meg egy terminált, és írja be a következőt:
sudo apt install python3-pip
Ezután a pip segítségével telepíthetjük az astroquery frissített verzióját.
pip3 install --pre --upgrade astroquery
Mielőtt folytatná a projekt többi részét, próbálja meg elérni ezeket az adatokat egy egyszerű Python -szkripttel, hogy megbizonyosodjon arról, hogy a megfelelő függőségek helyesen vannak -e telepítve.
az astroquery.jplhorizons import Horizons
mars = Horizons (id = 499, location = '000', epochs = nincs, id_type = 'majorbody') eph = mars.ephemerides () print (eph)
Ennek meg kell mutatnia a Mars helyének részleteit!
Ezen az oldalon ellenőrizheti, hogy helyesek -e az adatok az élő bolygóállások megkereséséhez:
Hogy ezt a lekérdezést egy kicsit lebonthassuk, az id a Marshoz társított szám a JPL adataiban, az epochs az az idő, amikor az adatokat akarjuk (a None jelenti jelenleg), az id_type pedig a Naprendszer főbb testeit kéri. A helyszín jelenleg az Egyesült Királyságban van beállítva, mivel '000' a greenwichi obszervatórium helykódja. További helyszínek itt találhatók:
Hibaelhárítás:
Ha a hibaüzenetet kapja: Nincs "keyring.util.escape" nevű modul
próbálja meg a következő parancsot a terminálon:
pip3 install --upgrade kulcstartók.alt
4. lépés: Kód
Ehhez a lépéshez csatoljuk a projektben használt teljes python -szkriptet.
A helyének megfelelő adatok megkereséséhez lépjen a getPlanetInfo függvénybe, és módosítsa a helyet az előző lépésben található megfigyelőállomások listájának használatával.
def getPlanetInfo (bolygó):
obj = Horizons (id = bolygó, hely = '000', korszakok = nincs, id_type = 'majorbody') eph = obj.ephemerides () return eph
5. lépés: Hardver csatlakoztatása
Kenyérpultok és áthidaló vezetékek segítségével csatlakoztasson két léptetőmotort, az LCD -képernyőt és három gombot a fenti kapcsolási rajz szerint.
Ha szeretné megtudni, hogy a Raspberry Pi -n milyen csapok vannak, menjen a terminálba, és írja be
kitűz
Ennek meg kell jelenítenie a fenti képet GPIO számokkal és táblaszámokkal kiegészítve. Táblaszámokat használunk annak meghatározására, hogy mely gombokat használják a kódban, ezért a zárójelben lévő számokra hivatkozom.
A kapcsolási rajz segítségéül itt vannak az egyes részekhez csatlakoztatott csapok:
1. léptetőmotor - 7, 11, 13, 15
2. léptetőmotor - 40, 38, 36, 32
Gomb 1-33
Gomb 2 - 37
Gomb 3 - 35
LCD képernyő - 26, 24, 22, 18, 16, 12
Ha mindez csatlakoztatva van, futtassa a python parancsfájlt
python3 planetFinder.py
és látnia kell a képernyőn a beállítási szöveget, és a gomboknak mozgatniuk kell a léptetőmotorokat.
6. lépés: A tok tervezése
A tokot 3D nyomtatásra tervezték. Külön részekre bomlik, amelyeket az elektronika rögzítése után összeragasztanak.
A lyukak az általunk használt gombokhoz és az M3 csavarokhoz vannak méretezve.
Részben kinyomtattam a teleszkópot, és később összeragasztottam, hogy elkerüljem a túl sok tartószerkezetet.
Az STL fájlok ehhez a lépéshez vannak csatolva.
7. lépés: A nyomatok tesztelése
Miután mindent kinyomtatott, minden ragasztás előtt győződjön meg arról, hogy minden szorosan illeszkedik egymáshoz.
Illessze a helyére a gombokat, és rögzítse a képernyőt és a léptetőmotorokat M3 csavarokkal, és adjon mindennek jó mozgást. A durva élek reszelése a következő lépés előtt mindent szétszed.
8. lépés: A léptetőmotor meghosszabbítása
A léptetőmotor, amely a teleszkóp magassági szögét szabályozza, a főház fölött fog ülni, és a vezetékek némi lazaságra van szüksége a forgatáshoz. A vezetékeket meg kell hosszabbítani úgy, hogy átvágják őket a léptető és a vezérlőlap közé, és új huzalhosszúságot forrasztanak közéjük.
Behelyeztem az új vezetéket a tartó toronyba egy szál segítségével, hogy segítsen átcsábítani, mivel az általam használt huzal elég merev és folyamatosan elakad. Miután áthaladt rajta, forrasztható a léptetőmotorhoz, ügyelve arra, hogy nyomon kövesse, melyik szín van csatlakoztatva, hogy a másik végén a megfelelő színeket rögzítse. Ne felejtsen el hőzsugorodást adni a vezetékekhez!
Forrasztás után futtassa a python parancsfájlt, hogy ellenőrizze, minden működik -e, majd nyomja le a vezetékeket a csőben, amíg a léptetőmotor a helyén van. Ezt követően M3 csavarokkal és anyákkal rögzíthető a léptetőmotor házához, mielőtt a ház hátulját a helyére ragasztanák.
9. lépés: A gombok és az LCD képernyő rögzítése
Helyezze be a gombokat, és húzza meg az anyákat a forrasztás előtt, hogy rögzítse a helyüket. Szeretek egy közös földelő vezetéket használni, amely köztük fut a tisztaság érdekében.
Rögzítse az LCD képernyőt M3 csavarokkal és anyákkal. Az LCD egy potenciométert akar az egyik csapjára, amelyet ebben a szakaszban is forrasztottam.
Teszteld újra a kódot! Győződjön meg arról, hogy minden továbbra is működik, mielőtt mindent összeragasztunk, mivel ebben a szakaszban sokkal könnyebb javítani.
10. lépés: Karimák hozzáadása
A 3D nyomtatott alkatrészek léptetőmotorokhoz való csatlakoztatásához 5 mm -es karimás csatlakozót használunk, amely a léptetőmotor végének tetejére illeszkedik, és apró csavarokkal tartja a helyén.
Az egyik karima a forgótorony alapjához, a másik a teleszkóphoz van ragasztva.
A teleszkóp rögzítése a forgó torony tetején lévő motorhoz egyszerű, mivel sok hely van a helyén lévő kis csavarok eléréséhez. A másik karima nehezebben rögzíthető, de elegendő rés van a fő tok és a forgótorony alja között ahhoz, hogy egy kis imbuszkulcs beilleszkedjen és meghúzza a csavart.
Teszteld újra!
Most mindennek úgy kell működnie, ahogy a végleges állapotában lesz. Ha nem, akkor itt az ideje a hibajavításnak, és győződjön meg arról, hogy minden kapcsolat biztonságos. Győződjön meg arról, hogy a fedetlen vezetékek nem érintkeznek egymással, járjon körbe elektromos szalaggal, és javítsa ki azokat a helyeket, amelyek problémát okozhatnak.
11. lépés: Futtassa az indításkor
Ahelyett, hogy minden alkalommal manuálisan futtatnánk a kódot, amikor bolygót akarunk találni, azt szeretnénk, hogy ez önálló tárlatként fusson, ezért úgy állítjuk be, hogy futtassa a kódunkat, amikor a Raspberry Pi bekapcsol.
A terminálban írja be
crontab -e
A megnyíló fájlban adja hozzá a következőt a fájl végéhez, majd egy új sort.
@reboot python3 /home/pi/PlanetFinder/planetFinder.py &
A kódomat a PlanetFinder nevű mappába mentettem, így a /home/pi/PlanetFinder/planetFinder.py a fájlom helye. Ha a tiédet máshová menti, mindenképpen módosítsa itt.
A végén található & fontos, mivel hagyja, hogy a kód a háttérben fusson, így nem tartja fenn más folyamatokat, amelyek szintén a rendszerindítás során történnek.
12. lépés: Ragassza össze mindent
Mindent, ami még nincs a helyére ragasztva, most rögzíteni kell.
Végül adja hozzá az apró iránytűt a forgó talp közepéhez.
13. lépés: Használat
Amikor a Planet Finder bekapcsol, a rendszer felszólítja a felhasználót a függőleges tengely beállítására. A fel és le gombok megnyomásával mozgathatja a távcsövet, próbálja meg a vízszintes helyzetet jobbra mutatni, majd nyomja meg az OK gombot (alul).
Ezután a felhasználó felkéri a forgás beállítására, a gombokkal forgassa el a távcsövet, amíg az észak felé mutat a kis iránytű szerint, majd nyomja meg az OK gombot.
Mostantól a fel/le gombokkal körbejárhat a bolygókon, és az ok gombbal kiválaszthat egyet. Megjeleníti a bolygó magasságát és azimutáját, majd néhány másodpercre rá mutat, majd visszafordul észak felé.
14. lépés: Kész
Minden kész!
Élvezze, hogy tudja, hol vannak az összes bolygó:)
Első díj az Űr Kihívásban
Ajánlott:
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: 7 lépés (képekkel)
Útmutató: A Raspberry PI 4 fej nélküli (VNC) telepítése Rpi-képalkotóval és képekkel: Ezt a Rapsberry PI-t tervezem használni egy csomó szórakoztató projektben a blogomban. Nyugodtan nézd meg. Vissza akartam kezdeni a Raspberry PI használatát, de nem volt billentyűzetem vagy egér az új helyen. Rég volt, hogy beállítottam egy málnát
Ev3 Lego Gripper/Finder Robot: 7 lépés
Ev3 Lego Gripper/Finder Robot: Helló! A GrabBot egy többcélú robot, aki szeret gurulni … Amikor egy kis tárgyra bukkan, felveszi és visszahozza a kiindulási helyzetbe
Kitty Finder: 6 lépés
Kitty Finder: Ha olvasod ezt az Instructable -t, akkor valószínűleg fáradt leszel, ha kedvenceidet minden este kint sétáltatod. Ezért találtam ki ezt a dizájnt egy kompakt nyomkövetőről, amely lehetővé teszi, hogy könnyen megtalálja kiskutyáit/cicáit kívülről. Csak nem
Sonar Range Finder: 4 lépés
Sonar Range Finder: Ebben az Instructable -ben egy teszttervet hoztak létre annak megállapítására, hogy a sonar range Finder képes -e meghatározni, hogy a laptop nyitva van -e vagy sem. Az alábbiakban utasításokat talál a szonár távolságmérő létrehozásáról, az Arduino programozásáról és kalibrálásáról
9. móló: Smart Bone Fetch Finder ™: 4 lépés (képekkel)
9. móló: Smart Bone Fetch Finder ™: A Smart Bone Fetch Finder ™, amelyet először 2027 -ben hoztak létre, képessé teszi a kutyákat arra, hogy irányítsák, kivel vannak a legjobb barátok. A jövőben a kutyák parkokban fogják megközelíteni az embereket, és szolgáltatásként felajánlják a letöltést. Az első lekérés ingyenes