Sisukord:
- Samm: registreerige astronoomiateabe saamiseks
- 2. samm: komponendid
- Samm: arvutitarkvara
- 4. samm: vooluring
- Samm: kood
- 6. etapp: lõplik kokkupanek
Video: Juhtmeta Kuufaasi jälgija: 6 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Kuufaasi jälgija on väike, poolenisti kaasaskantav seade, mis võimaldab koguda Kuu kohta olulist teavet. Seade teatab sellistest parameetritest nagu nähtav valgustus, faas, kuu tõus ja määratud ajad ja palju muud.
See seade on hädavajalik kõigile, kes on huvitatud teadusest või astronoomiast ning pakub suurepärast töölaua kontori kaunistust ja on kindlasti vestluse algataja.
Projekt on üsna lihtne ja nõuab Interneti -ühendusega seadet, näiteks ESP32, kuid saate koodi alati kohandada nii, et see töötaks WiFi -kilbi, Etherneti kilbi või mõne muu Interneti -ühendusega seadmega, mis teil võib olla. Lunar Phase Tracker on loodud töötama liitium-polümeerpatareide ja väga energiasäästliku E-tindiekraaniga, mis mitte ainult ei näe imelist ekraani, vaid hoiab ka viimast pilti, isegi kui toide katkeb!
Samm: registreerige astronoomiateabe saamiseks
See samm on hädavajalik (kuigi igav), kuna kasutame teabe kogumiseks veebipõhist API -d. Kuigi kuu faase, valgustust jne on võimalik arvutada, on see tüütu ülesanne. Meie kasutatav API pakub ajakohast teavet reaalajas ilmajaamade ja seiresüsteemide kohta, nii et saadud andmed on reaalmaailma tulemused, mitte arvutatud väärtused.
Minge Weather Undergroundi, klõpsake "registreeru" ja täitke kogu oma teave. Konto on täiesti tasuta, nii nagu ka teie API -kõned, kui te ei taotle liiga palju tulemusi minutis ega ületa 500 taotlust päevas. Veenduge, et lisate sellele lehele järjehoidjad, saate alati hiljem tagasi tulla ja kasutada ilmastiku statistika ja muu suurepärase teabe API -d. Kui olete oma konto loonud, minge API saidile, klõpsake "ostmise võti" ja valige tasuta plaan, peate lihtsalt sisestama mõned üksikasjad ja teil on probleeme devoloperi võtme ID -ga. See isikutunnistus on teie jaoks ainulaadne ja seda tuleks hoida privaatsena. Esitasin oma võtme Arduino näite näites, mida vaatame veidi hiljem. Olete rohkem kui teretulnud kasutama minu võtme ID -d testimiseks, kuid soovitan soojalt registreeruda.
Kui olete oma unikaalse ID saanud, võite minna Astronomy API teabe juurde, mis on ausalt öeldes väga tühi. Leiate lihtsa näite, mis näeb välja selline:
api.wunderground.com/api/8c6dc2e5c6f36de9/a…
See URL on äärmiselt oluline, kuna just see annab meile kogu projekti tegemiseks vajaliku teabe. Jätkake, klõpsake linki, näete Sydney tulemusi, nagu kuu faas, valgustus ja muud head teavet. Vaadake URL -i, näeme Sydneyt, Austraaliat ja pikka koodi, mis algab tähega "8c6dcwe…". See kood on teie võtme ID, mille me varem hankisime. Muutke see kood oma unikaalse ID -ga ja vaadake, kuidas see toimib, peaksite saama täpselt sama tulemuse. Proovige asukohtadega mängida. Enda jaoks Lõuna -Aafrikas kasutan Johannesburgi ja ZA -d.
2. samm: komponendid
Nii et nüüd huvitavate asjade juurde. Vajame mõnda komponenti, mitte palju ja ükski neist pole eriti kallis, ja olen kasutanud kasutatud komponentide jaoks Amazoni linke. Pidage meeles, et kui teil on programmeerimine hea, kasutage julgelt mis tahes kuvarit või Interneti -seadet. Oma ehituse jaoks kasutasin järgmist:
Waveshare E-Ink SPI 4,2-tolline SPI-ekraan
- ESP32 arendusplaat (üldine)
- Adafruit Power Boost 500
- 5000mAh Lipo aku
- Stripboard (Protoboard)
Tõenäoliselt vajate selliseid põhivahendeid nagu:
- Jootekolb
- Jootma
- Multimeeter
- Nihikud
- Puurotsik protoboardi radade eraldamiseks
- Traat
- Juhtmed
- Liim (kuum liim töötab)
- Sülearvuti, kuhu on installitud Arduino IDE
Ainus täiustatud tööriist, mida vajate, on korpuse valmistamiseks 3D -printer. Kui teil seda pole, tehke oma korpus puidust ja käsisaagidest või muust olemasolevast. Ja jah, minu 3D -printer on vana ja tolmune.
Samm: arvutitarkvara
Enne vooluringi ja programmeerimise alustamist vajame kõigepealt Arduino IDE uusimat versiooni, mille leiate siit.
Kuna kasutame ESP32 koos Arduino tuumaga, peame selle tuuma installima Arduino IDE -sse. Järgige seda Githubi lihtsat juhendit, mis näitab teile, millist tarkvara ja konfiguratsiooni teil on vaja teha, et saaksite kasutada oma ESP32 dev tahvlit Arduino IDE -s.
Süsteemi toimimiseks vajame ka kahte täiendavat raamatukogu. Esimene on Arduino JSON -i raamatukogu, mis võimaldab meil lugeda ja sõeluda JSON -i taotlusi, mis on täpselt see, mida saame Weather Undergroundist. Need kaks raamatukogu saate alla laadida minu isiklikust Dropboxist või allapoole. Kui olete failid kätte saanud, eraldage need ja asetage see oma Arduino raamatukogu kausta. See asub tavaliselt aadressil C: / Users / YOUR_NAME / Documents / Arduino / raamatukogud. Veenduge, et taaskäivitate IDE, vastasel juhul ei võta Arduino uusi lisandeid vastu. Selles kaustas on ka peamine Arduino SRC -kood. Raamatukogu sisaldab ka Waveshare'i kuvarite näidise muudetud versiooni. Faile on muudetud ESP32 moodulis töötamiseks koos nende GPIO -dega ja olen kasutusele võtnud uue "fondi", mis sisaldab kõiki Kuu erinevate faaside pilte.
4. samm: vooluring
Olgu, nii et vooluahel on äärmiselt lihtne ja nõuab ainult mõnda komponenti ja juhtmeid.
Üldine idee on see, et meil on Lipo laadimisahel, võimendusmuundur, mis annab meile 5 V ja seejärel ESP32 Dev Kit, mis vähendab pinget 3,3 V -ni. Seda 3,3 V kasutatakse ka Waveshare E-Ink ekraani jaoks. Jah, see on lineaarse regulaatoriga võimendamise ja mahajätmise tõttu pisut ebaefektiivne, kuid ESP32 töötab väga kohutavas pingevahemikus. Kuskil 2,5 - 3,6V. See ei sobi patareiprojektidele, eriti neile, mis kasutavad liitiumpolümeerseid elemente.
Põhijuhtmed on järgmised:
- Võimendusmuunduri 5V väljund Vin & GND ESP32 Dev Kitil
- ESP32 3.3V 3.3V & GND E-Ink Display
- ESP32 PIN 18 CLK E-Ink Display
- ESP32 PIN 23 DIN/MOSI e-tindiekraan
- ESP32 PIN 5 CS/SS E-Ink Display
- ESP32 PIN 32 DC e-tindiekraan
- ESP32 PIN 33 RST E-Ink Display
- ESP32 PIN34 BUSY E-Ink Display
Näete, et juhtmestik on väga lihtne ja minu DIY -plaatide ehitamiseks kulus vaid umbes 15 minutit. Enne toite andmist kontrollige kindlasti multimeetriga lühiseid.
Samuti eemaldasin valgusdioodid oma ESP32 ja Lipo võimendusplaadilt, et säästa umbes 40mA energiat unerežiimis. See aitab akudel veidi kauem vastu pidada. Soovi korral saate rakendada toitelüliti, energiasäästuahela, automaatse lahtiühendamise jne. Saate seda projekti laiendada ja muuta see nii keerukaks kui soovite.
Samm: kood
Koodi leiate 3. sammu käigus kaasasolevast kaustast või saate alla laadida.ino -faili. Peate installima seotud teegid, nagu on kirjeldatud 3. sammus, et kõik toimiks koos. Selle sammu kohta pole palju öelda, kuna kood tarnitakse töökorras. Enne programmi testimist sisestage kindlasti oma SSID ja võrgu parool. Saate alati käivitada ESP32 WiFi skannimise, et tuvastada läheduses olevad traadita võrgud, kuid minu programmis on võrguteave määratud ainult koodi ja koodiga. Võib -olla saate seda muuta, et küsida, millise võrguga soovite ühenduse luua:)
Kood on üsna lihtne ja kulutan mõne nädala jooksul selle kommenteerimisele ja täiustamisele. Põhimõtteliselt ühendame me võrguga, minu puhul minu koduvõrguga. Seejärel proovime luua ühenduse Weather Undergroundiga ja saada veebisaidilt JSON -i teksti. Seejärel kasutatakse ekstraheerimiseks ArduinoJSONi raamatukogu. või sõeluda, JSON -kood char -massiivideks või stringideks, mis võimaldavad meil väärtusi enne kasutajale kuvamist manipuleerida. Viimane koodibitt on rangelt GUI programmeerimiseks ja seda tehti katse -eksituse meetodil. Vaatasin ekraani, suurendasin või vähendasin varade positsiooni ja käivitasin koodi uuesti, kuni olin rahul fondi suuruse, paigutuse ja piltidega.
Energia säästmiseks rakendasin ESP32 jaoks sügava une rutiini. Vaikimisi on 60 sekundit, kuid soovitan teil muuta selle väärtuseks umbes tund või kaks, kuna värskendusi ei toimu vähemalt paar tundi. Näide aktsepteerib sekundeid, nii et veenduge, et teete konversioonid õigesti.
Kasutasin ka programmi Dot Factory, et genereerida uue fondi jaoks kuusnurksed massiivid. Seda fonti kasutatakse kuufaaside "piltide" genereerimiseks. Kui soovite fondifaile redigeerida, kasutage kindlasti genereerimiseks ülalmainitud programmi. See on natuke segadusttekitav, kuna E-Ink raamatukogu pole hästi dokumenteeritud ja suurem osa minu edust oli tänu katse-eksituse meetodile. Kui veedan selle koodiga rohkem aega, värskendan Instructable'i, et saada rohkem teavet oma leidude kohta.
Kuufaaside jaoks kasutatav font tuleb teha vastavalt standardsele ASCII paigutusele. Kui avate font24 kaustas EPD-master, näete paigutust, kus esimene graafika on tühiku järgi tähistatud, teine on "!" (hüüumärk) ja nii edasi. Näete, et tõmban seotud fondi, kasutades koodi 3 või hashtagi sümbolit koodi viimases bitis (funktsioon getLunarChar). Selle põhjuseks on asjaolu, et Arduino ootab ASCII standardit vahemikus 32 kuni 127. Kuna kasutame fonte, millel pole tegeliku fondiga midagi pistmist, ja pigem kuufaasi graafilist maatriksit, peame tagama, et ASCII märk viitaks meie valitud kuufaasi kujutisele. See tähendab, et kasutades! märk, näitab meie kuufaasi font meile selles nimekirjas teise kuu faasi graafikat. Kui vaatate kuufaasi fonti, näete tervet hunnikut kuufaase, kõik erineva valgustustasemega. Tulevikus lisan rohkem koodi, et kasutada kogu meie rakendatud graafikat. Praegu kasutame vaid mõnda, kuid graafika on juba Kuufaasi fondis rakendatud ja selle kasutamiseks tuleb see lihtsalt koodis rakendada.
6. etapp: lõplik kokkupanek
Ehituse viimane ja kõige rahuldavam osa on kokkupanek. Kujundasin ja trükkisin 3D -plaadi, mis sobib minu tahvliga. Projekt on väga ise tehtud, puuduvad professionaalsed trükkplaadid või ühtne standardne paigutus. Enamasti on minu kasutatav kast piisavalt suur, et mahutada teie valitud lipolaadija või võimendusmuundur. Niikaua kui need pakuvad samu põhifunktsioone, mida selles juhendis mainitud, peaksite olema korras.
Kasutasin 4 kruvi, et hoida korpuse ülemist ja alumist poolt koos, ja kuuma liimi oma isetegimisskeemi paigaldamiseks. Ma kasutasin aku hoidmiseks mõnda väikest tilka liimi, kuid kui mul oleks rohkem aega, oleksin teinud kogu elektroonika jaoks kohandatud sulgu.
Otsustasin teha ka tagaküljel oleva lukustusnupu jaoks augu. See lülitab aku võimendusmuundurist lahti, mis on kasulik, kui te ei kavatse seadet ööpäevaringselt töötada. Kahjuks kasutab võimendusmuundur endiselt energiat isegi siis, kui teie ESP32 on sügavas unerežiimis.
Üldiselt olen tulemusega väga rahul. Õppisin ESP32 kasutamisel palju ja näen, et kasutan seda tulevikus mitmesuguste projektide jaoks.
Kui teil on küsimusi, küsige julgelt, ma olen rohkem kui valmis teid aitama ja kui leiate selles juhendis vigu, siis andke mulle sellest teada.
EDIT: Ma tegin tegelikult CNC -masinaga 3D -trükitud versiooni asemel väikese korpuse, mida näete esiletõstetud piltidel.
EDIT: Esiletõstetud piltidel näeme 99% valgustusega täiskuud. Seega valge ring, kui Kuu läbib oma tüüpilised faasid, muutub Kuu kujutis vastavalt. Kuu faaside edenedes laaditakse üles täiendavaid pilte, et saaksite graafika esitada.
Runner Up in the Space Challenge
Soovitan:
Juhtmeta jalgrattale paigaldatav Bluetooth -kõlar: 11 sammu (piltidega)
Juhtmeta jalgrattale paigaldatav Bluetooth -kõlar: Tere! Selles juhendis näitan teile, kuidas olen ehitanud oma traadita jalgrattale paigaldatud Bluetooth -kõlari. Pean ütlema, et see võib olla siiani üks mu lemmikprojekte. See näeb hea välja, suurepärase heli ja sellise futuristliku välimusega! Nagu al
DIY juhtmeta energiaülekandesüsteem: 4 sammu (piltidega)
DIY traadita energia ülekandesüsteem: selles projektis näitan teile, kuidas luua sobiv mähis ja muunduri ahel traadita energia ülekandesüsteemi jaoks, mis suudab hõlpsalt 20W võimsust üle kanda. Alustame
Juhtmeta Xbox 360 kontrolleri kesta vahetamine: 15 sammu (piltidega)
Juhtmeta Xbox 360 kontrolleri kesta vahetamine: samm -sammult juhis Xbox 360 kontrolleri kesta asendamiseks uue kestaga. Seda õpetust saab kasutada videomängu abil õpilastel põhiteadmiste tundmiseks riistvara, elektri-/arvutitehnika ja arvutiteaduse põhimõtetest
Polt - DIY juhtmeta laadimise öökell (6 sammu): 6 sammu (piltidega)
Bolt - DIY juhtmeta laadimise öökell (6 sammu): Induktiivsed laadimised (tuntud ka kui juhtmeta laadimine või juhtmeta laadimine) on traadita jõuülekande tüüp. See kasutab kaasaskantavatele seadmetele elektrit pakkumiseks elektromagnetilist induktsiooni. Kõige tavalisem rakendus on Qi traadita laadimisst
Juhtmeta Arduino juhitav paak (nRF24L01): 6 sammu (piltidega)
Traadita Arduino juhitav paak (nRF24L01): Tere! Täna näitan teile, kuidas ehitada Arduino juhitav paak ja kaugjuhtimispult. Paagi 3D -trükitud osad (välja arvatud kontroller, rööbastee ja paagi kate) kujundas timmiclark ja need leiate siit