Përmbajtje:

1984 WeatherMan Pi: 7 hapa (me fotografi)
1984 WeatherMan Pi: 7 hapa (me fotografi)

Video: 1984 WeatherMan Pi: 7 hapa (me fotografi)

Video: 1984 WeatherMan Pi: 7 hapa (me fotografi)
Video: The Giant Wave - The Perfect Storm (3/5) Movie CLIP (2000) HD 2024, Nëntor
Anonim
Image
Image
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi

Ky kasetë portativ tani është një ekran i motit IoT ambienti me stilin e hershëm të viteve 80, duke shfaqur një animacion "kushtet aktuale", rrotullimin e temperaturës dhe grafikun e probabilitetit të shiut përmes dritares së kasetës. Kur ndryshon gjendja e motit, kufjet e kontrolluara me ndihmën në krye lëvizin para dhe mbrapa si një paralajmërim delikat.

Duke hapur derën funksionale të shiritit, mund të shohim që përbërësit origjinal të pluhurosur janë zëvendësuar me një Raspberry Pi Zero W, një Pimoroni Unicorn Hat HD (LED Matrix) dhe një servo të vogël. Të dhënat e motit janë me burim duke përdorur një skenar Python që pyet API-në ultra të saktë të Dark Sky Weather, të përshtatur për vendndodhjen time specifike.

Ashtë një ndërtim IoT i thjeshtë por me pamje të bukur dhe funksionale që qëndron në altoparlantin e tavolinës përballë banakut tim në YouTube, duke më mbajtur në heshtje të azhurnuar me motin.

Furnizimet

Raspberry Pi Zero

Pimoroni Unicorn HAT HD

Servo e vogël

1984 Hitachi SP-1 Stereo dhe kufje personale

Përshtatës WiFi USB

Shufër me fije 2mm

Sugru (E zezë dhe gri)

Magnet GeoMag

Hapi 1: Tape Teardown

Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown
Tape Teardown

Mua më dha këtë kasetë të bukur të vjetër nga vjehrra ime në shtator dhe menjëherë u dashurova me pamjen e saj ikonike dhe butonat e trashë. Ndërkaq, tërheqja e vërtetë ishte ajo dritare e madhe e kasetës - pasi e kisha atë rreth 15 sekonda, kisha një vizore jashtë dhe u mahnita kur zbulova se ajo ishte, në mm, e njëjtë me madhësinë e një Raspberry Pi HAT standarde (Pajisje kompjuterike e bashkangjitur në krye).

Vetëm ai zbulim ishte i mjaftueshëm për të përplasur projektin tim të orës së qukut më poshtë në listën "për të bërë" dhe fillova punën menjëherë, duke çmontuar lojtarin.

Votimi i lotëve shkoi mjaft mirë dhe përfundova me tre pjesë të dallueshme për të punuar me to - unë arrita të thyej disa pjesë plastike, por asgjë që nuk mund të ngjitej përsëri së bashku.

Hapi 2: Dark Sky Pi

Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi
Dark Sky Pi

Unë kam qenë duke përdorur Dark Sky në telefonin tim për një kohë dhe kam qenë vërtet i impresionuar me saktësinë e parashikimeve, kështu që isha i kënaqur kur pashë që ata ofrojnë një API gjithëpërfshirëse që mund të përdor në këtë projekt. Niceshtë mirë dhe e drejtpërdrejtë të vendosësh edhe lart!

Fillimisht drejtohuni në https://darksky.net/dev dhe regjistrohuni për një llogari falas - një llogari "prove" ju lejon të bëni 1000 kërkesa API në ditë, e cila është e mjaftueshme për një rifreskim çdo 1.5 minuta - mjaft shpesh edhe për të miat Niveli britanik i obsesionit ndaj motit.

Pasi të regjistroheni, do të merrni një "Çelës Sekret" - kjo është ajo që ju nevojitet për të hyrë në të dhëna dhe përdoret në shkrimin Python, kështu që mbajeni atë të dobishëm (dhe, e dini, të fshehtë).

Fillova duke përshtatur një skenar që përdor në ndërtimin e numëruesit të pajtimtarëve në YouTube, i cili përdor modulin Kërkesat në Python për të tërhequr të dhënat API. Skenari që kam përdorur është në GitHub, thjesht do të duhet të shtoni në çelësin tuaj API Dark Sky dhe, natyrisht, të zëvendësoni vlerat tuaja Latitude & Longitude.

Ishte mjaft e drejtpërdrejtë të tërhiqja të dhënat mbi kushtet aktuale të motit dhe vendosa të përdor elementët "Ikona", "Probabiliteti i reshjeve" dhe "Temperatura".

Hapi 3: Kodi

Kodi
Kodi

Nëse dëshironi të ripërdorni ose hiqni kodrin që kam përdorur, është në depon WeatherMan në GitHub - klononi ose shkarkoni dosjen "weather" në dosjen "pi" në Raspberry Pi tuaj.

Funksionet kryesore të shkrimit janë si më poshtë:

meteorologu.py

Ky është skenari kryesor që nxjerr të dhënat e motit nga Dark Sky. Ju do të duhet të krijoni një llogari Dark Sky në https://darksky.net/dev dhe ta vendosni Çelësin tuaj Sekret në skriptin ku tregohet. Ju gjithashtu do të duhet të vendosni në gjerësinë dhe gjatësinë e vendndodhjes së motit që ju intereson - kjo mund të gjendet në Google Maps, thjesht klikoni me të djathtën dhe zgjidhni "Çfarë ka këtu?" dhe do të merrni një pop-up që tregon lat/të gjatë të vendndodhjes.

Pas marrjes së të dhënave API weatherman.py i kalon parametrat në disa skripte më të vegjël për të filluar animacionet dhe ngacmimet e kufjeve.

Skenari është vendosur të funksionojë gjatë fillimit duke redaktuar skedarin e fillimit …

sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart

… Dhe duke shtuar:

@python3 /home/pi/weather/weatherman.py &

në fund të dosjes.

ikona.py

Ky skenar merr një parametër "kushtet aktuale" nga skenari weatherman.py dhe e përdor atë për të shfaqur një animacion të motit 16x16 - të gjitha këto ruhen në dosjen "ikonat" dhe janë pjesë e dokumentacionit standard të Unicorn HAT HD. Ju mund t'i redaktoni skedarët e animacionit-p.webp

telefonat.py

Nëse kushtet e motit kanë ndryshuar nga kërkesa e fundit API (ose është një çizme e re dhe nuk bie borë), atëherë ky skenar thirret nga weatherman.py dhe udhëzon servo -në të "dridhet" përpara dhe prapa për t'ju paralajmëruar se kushtet kanë ndryshuar.

precip.py

Ky skenar pranon një parametër "probabiliteti i reshjeve" nga weatherman.py dhe shfaq linja me ngjyrë blu në HAT Unicorn në lidhje me % probabilitetin. Nëse 100% të 16 rreshtat do të shkëlqejnë blu, nëse 50% vetëm 8 rreshta etj.

temp.py

Një tjetër shkrim standard Pimoroni, ky merr një parametër "temp" nga weatherman.py dhe e shfaq atë me tekst rrotullues. Setshtë vendosur të përdorë fontin e vërtetë Herkules (në dosjen "fonts") por mund të përdorë një font standard nëse preferoni. Ju madje mund ta përmirësoni atë në mënyrë që teksti i shfaqur të ndryshojë ngjyrën në varësi të vlerës së temperaturës!

Hapi 4: Unicorn HAT & Servo

Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo
Unicorn HAT & Servo

Të qenit në gjendje të mbaja të dhënat e motit ishte e mrekullueshme, por tani më duhej t'i shfaqja në HAT Unicorn. Shikova grupe të ndryshme të ikonave të motit në internet dhe isha në gjysmë të rrugës duke i përshtatur këto kur kuptova se kishte një shembull të motit të përfshirë në dokumentacionin Pimoroni - dhe kjo përfshinte animacionet e motit!

Kjo kurseu një sasi të madhe pune, dhe unë fillova dhe vrapova në një kohë të shkurtër, me një ikonë të animuar për kushtet aktuale, disa tekste rrotullues për temperaturën dhe një grafik për % reshjet (të cilat përfshinin disa matematikë të lehta). Unë i mbaja skriptet të ndara dhe përdorja modulin e nënprocesit të Python për të kaluar parametrat andej -këndej.

Shtimi i servo ishte mjeti ideal për këto alarme, pasi do të bënte pak zhurmë dhe do të binte në sy pa qenë shumë i bezdisshëm. Me HAT që tashmë kishte marrë shumë nga kunjat e Pi, i bashkova kabllot servo në pjesën e poshtme të tabelës, duke përdorur Pin 17 për të kontrolluar lëvizjen e servo duke përdorur Modulimin e Gjerësisë së Pulsit.

Fuqizimi i servo nga Pi nuk ishte ideal, por do të përdorej vetëm për një lëvizje të menjëhershme, kështu që saktësia nuk ishte një punë e madhe këtu. Ai u lidh siç tregohet në diagram, me kabllo kafe në GND, e kuqe në 5v dhe Portokalli (kabllo kontrolli) në GPIO17.

Së fundi, unë redaktova disa nga skedarët e animacionit të motit në GIMP për të shtuar prekjet e mia personale, si lakuriqët në hënë dhe një fytyrë e buzëqeshur në diell. Unë gjithashtu shtova në një animacion me rrota kasetë "Old Tech New Spec" që do të luhej gjatë fillimit, vetëm për argëtim.

Hapi 5: Kufizimi i kufjeve

Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh
Kërcitje kufjesh

Ideja e WeatherMan ishte që ajo të ulej në mënyrë pasive në altoparlantin tim të tavolinës, duke shfaqur herë pas here motin, por unë doja që ajo të bënte edhe pak më shumë! Kufjet që erdhën me të ishin dolli, por 80 -të klasike, kështu që vendosa të bëj diçka me to. Pasi i hoqa të gjithë kabllon dhe e ngjita me nxehtësi atë të thyer, më lanë tre pjesë, prizën 3.5 mm, butonin në formë diamanti dhe vetë telefonat në brezin e tyre fleksibël metalik.

Ideja më bëri përshtypje se nëse do të gjeja një mënyrë për të montuar telefonat në krye të njësisë, atëherë mund t'i bëja ata të rrotulloheshin përpara dhe prapa me një servo, dhe ta përdorja këtë si një njoftim shtesë.

Së pari unë shpova prizën 3.5 mm dhe çmontova çelësin e diamantit, pastaj i rrëshqita në një copë shufër të filetuar. Tjetra unë ngjita një arrë në një lidhës plastik, në mënyrë që shufra të jetë në gjendje të ulet e sigurt (dhe drejt) mbi servo. Në skajin tjetër të shufrës shtova një arrë tjetër. Më në fund kam përdorur Sugru gri për të lidhur pjesën e sipërme të shufrës me brezin e kufjeve dhe gjithashtu për të mbuluar arrën në pjesën e poshtme të montimit. Nëse nuk keni dëgjuar për Sugru është një ngjitës i formueshëm që vjen në qeska të vogla me ngjyra - formon si Play -Doh, por ngjitet si superlidhës dhe vendoset fort si plastika!

Me motin e ftohtë të kohëve të fundit, Sugru mori disa ditë për t'u ngurtësuar plotësisht, por kufjet dhe mbajtësja e tyre së shpejti ishin gati për montimin përfundimtar.

Hapi 6: Asambleja

Kuvendi
Kuvendi
Kuvendi
Kuvendi
Kuvendi
Kuvendi
Kuvendi
Kuvendi

Pi, HAT dhe Servo ishin të gjithë duke punuar mirë në stol, kështu që puna tjetër ishte t'i fuste ata në kuti. Para se të filloja me komponentët e mëdhenj, kam përdorur një Sugru gri të mbetur për të rregulluar numrin e zërit, prizën e kufjeve dhe çelësin "kasetë metalike", duke renditur kozmetikën. Unë gjithashtu ngjita butonat origjinal Play, Stop, FF & Rew në një copë kanal plastik në mënyrë që ata të qëndrojnë në vendin e duhur. Ishte turp të mos përdornit asnjë nga butonat këtë herë, por nuk kishte asgjë për të kontrolluar!

Kam përdorur pjesën e fundit të Sugru gri për të mbajtur servo -në në pozicion, me boshtin e tij që kalon nëpër prizën e zmadhuar të kufjeve. Duke kaluar në gjysmën tjetër të kasës, unë më pas përdor një Sugru të zezë për të siguruar montimin HAT dhe Pi në derën e shiritit, në mënyrë që ata të hapen me të. Me të vërtetë më pëlqeu prekja e fundit e fundit - fiksimi në një magnet GeoMag në mënyrë që dera të mbahej fort e mbyllur.

Vendosja e të dy gjysmave së bashku ishte një biznes nervoz pasi kisha frikë se Pi & Servo do të përplaseshin kundër njëri -tjetrit, por në fund kishte rreth një milimetër për të kursyer, shumë në librin tim. Meqenëse dera e çuditshme e hapjes do të jepte akses të plotë në brendësi për servisimin e ardhshëm, unë vetëm i ngjita të dyja gjysmat së bashku, dhe pasi fshiva gjurmët e mia të yndyrshme të gishtërinjve, vendosa kuvendin e kufjeve në krye - të përfunduar!

Hapi 7: Obsesion i qetë

Obsesion i qetë
Obsesion i qetë
Obsesion i qetë
Obsesion i qetë

Çmimi i dytë në Konkursin e Ripërdorimit

Recommended: