Sadržaj:
- Pribor
- Korak 1: Skidanje vrpce
- Korak 2: Dark Sky Pi
- Korak 3: Kôd
- Korak 4: Jednorog HAT & Servo
- Korak 5: Jiggle slušalica
- Korak 6: Montaža
- Korak 7: Tiha opsesija
Video: 1984 WeatherMan Pi: 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
Ovaj prijenosni kazetofon sada je ambijentalni IoT prikaz vremena sa stilom ranih 80 -ih, koji prikazuje animaciju "trenutnih uvjeta", pomicanje grafikona temperature i vjerojatnosti kiše kroz prozor trake. Kad se vremenski uvjeti promijene, slušalice s servo upravljanjem na vrhu pomeraju se naprijed-natrag kao suptilno upozorenje.
Otvarajući funkcionalna vrata na traci možemo vidjeti da su prašnjave izvorne komponente zamijenjene Raspberry Pi Zero W, Pimoroni Unicorn Hat HD (LED Matrix) i malim servom. Podaci o vremenu dobivaju se pomoću Python skripte koja postavlja upit o ultra točnom Dark Sky Weather API-ju, prilagođenom mojoj specifičnoj lokaciji.
To je jednostavna, ali lijepa i funkcionalna IoT konstrukcija koja se nalazi na suprotnom stolnom zvučniku od mog brojača na YouTubeu, tiho me obavještavajući o vremenu.
Pribor
Malina Pi Zero
Pimoroni Jednorog ŠEŠIR HD
Mali servo
1984. Osobni stereo i slušalice Hitachi SP-1
USB WiFi adapter
Šipka s navojem od 2 mm
Sugru (crno -sivo)
GeoMag magnet
Korak 1: Skidanje vrpce
Punica mi je u rujnu poklonila ovaj ljupki stari kasetofon i odmah sam se zaljubila u njegov kultni izgled i zdepaste gumbe. Pravo izvlačenje ipak je bio taj veliki prozor na traci - nakon što sam ga posjedovao oko 15 sekundi, izvadio sam ravnalo i bio sam začuđen otkrivši da je, mm, iste veličine kao standardni Raspberry Pi HAT (hardver pričvršćen na vrhu).
Samo to otkriće bilo je dovoljno da moj projekt sa satom s kukavicom udari dalje na popis "to do" i počeo sam raditi odmah, demontažom playera.
Rušenje je prošlo prilično dobro i završio sam s tri različita komada za rad - uspio sam slomiti nekoliko plastičnih dijelova, ali ništa što se nije moglo zalijepiti.
Korak 2: Dark Sky Pi
Već neko vrijeme koristim Dark Sky na svom telefonu i zaista sam bio impresioniran točnošću prognoza, pa sam bio oduševljen kad sam vidio da nude opsežan API koji bih mogao koristiti u ovom projektu. Lijepo je i jednostavno postaviti gore također!
Prvo prijeđite na https://darksky.net/dev i prijavite se za besplatni račun - "probni" račun vam omogućuje da dnevno upišete 1000 zahtjeva API -ja, što je dovoljno za osvježavanje svakih 1,5 minuta - dovoljno često čak i za moj Britanska razina opsesije vremenom.
Nakon što se prijavite dobit ćete "Tajni ključ" - to je ono što vam je potrebno za pristup podacima i koristi se u Python skripti, pa neka vam bude pri ruci (i, znate, tajno).
Počeo sam prilagođavanjem skripte koju sam koristio u verziji brojača pretplatnika na YouTubeu, koja koristi modul Zahtjevi u Pythonu za dohvaćanje API podataka. Skripta koju sam upotrijebio nalazi se na GitHubu, samo trebate dodati svoj Dark Sky API ključ i, naravno, zamijeniti vlastite vrijednosti Latitude & Longitude.
Bilo je prilično jednostavno izvaditi podatke o trenutnim vremenskim uvjetima, pa sam se odlučio poslužiti elementima "Ikona", "Vjerojatnost oborina" i "Temperatura".
Korak 3: Kôd
Ako želite ponovno koristiti ili odskočiti kôd koji sam koristio, nalazi se u spremištu WeatherMan na GitHubu - klonirajte ili preuzmite mapu "weather" u mapu "pi" na vašem Raspberry Pi.
Glavne funkcije skripte su sljedeće:
weatherman.py
Ovo je glavna skripta koja izdvaja vremenske podatke iz Dark Sky -a. Morat ćete postaviti račun za Dark Sky na https://darksky.net/dev i staviti svoj tajni ključ u skriptu gdje je naznačeno. Također ćete morati unijeti geografsku širinu i dužinu vremenske lokacije koja vas zanima - to se može pronaći na Google kartama, samo desnom tipkom miša kliknite i odaberite "Što je ovdje?" i dobit ćete skočni prozor koji prikazuje zemljopisnu širinu/dužinu lokacije.
Nakon preuzimanja API podataka weatherman.py prosljeđuje parametre u nekoliko manjih skripti kako bi pokrenuo animacije i pomak slušalica.
Skripta je postavljena za pokretanje pri pokretanju uređivanjem datoteke za pokretanje …
sudo nano /home/pi/.config/lxsession/LXDE-pi/autostart
… I dodaje:
@python3 /home/pi/weather/weatherman.py &
na kraju datoteke.
icon.py
Ova skripta preuzima parametar "trenutni uvjeti" iz skripte weatherman.py i koristi je za prikaz vremenske animacije 16x16 - sve je to pohranjeno u mapi "ikone" i dio je standardne dokumentacije Unicorn HAT HD.-p.webp
telefone.py
Ako su se vremenski uvjeti promijenili u odnosu na posljednji zahtjev API -ja (ili je to svježe podizanje sustava i ne pada snijeg), tada se ova skripta poziva iz weatherman.py i upućuje servo da se "pomakne" naprijed -natrag kako bi vas upozorio da su uvjeti promijenio.
obor.py
Ova skripta prihvaća parametar "vjerojatnosti oborina" iz weatherman.py i prikazuje plave linije na HIC -u jednoroga koje se odnose na % vjerojatnosti. Ako 100% svih 16 redova svijetli plavo, ako 50% samo 8 redova itd.
temp.py
Još jedna standardna Pimoronijeva skripta, ova uzima parametar "temp" iz weatherman.py i prikazuje ga s tekstom koji se pomiče. Postavljen je tako da koristi Herkules truetype font (u mapi "fontovi"), ali bi mogao koristiti standardni font ako želite. Možete ga čak i poboljšati tako da prikazani tekst mijenja boju ovisno o vrijednosti temperature!
Korak 4: Jednorog HAT & Servo
Mogućnost pribavljanja vremenskih podataka bila je sjajna, ali sada sam ih trebao prikazati na Unicorn HAT -u. Pogledao sam razne skupove vremenskih ikona na internetu i na pola sam ih puta prilagodio kad sam shvatio da postoji vremenski primjer uključen u Pimoronijevu dokumentaciju - a to je uključivalo i vremenske animacije!
To je uštedjelo ogromnu količinu posla, a ja sam se brzo pokrenuo, s animiranom ikonom za trenutačne uvjete, nekim pomicanjem teksta za temperaturu i grafikonom za % oborina (što je uključivalo neke lagane matematike). Skripte sam držao odvojene i koristio sam Subprocess modul Pythona za prosljeđivanje parametara tamo -amo.
Dodavanje servo servera bilo je idealno vozilo za ova upozorenja jer bi stvaralo malo buke i bilo bi upadljivo, a da pritom nije previše neugodno. Budući da je HAT već zauzeo mnoge Pi -ove igle, lemio sam servo kabele na donju stranu ploče, koristeći Pin 17 za upravljanje kretanjem servo -a pomoću Pulse Width Modulation.
Napajanje servo pogona iz Pi -a nije bilo idealno, ali bi se ikada koristilo samo za trenutak, pa preciznost ovdje nije bila velika stvar. Spojen je kako je prikazano na dijagramu, smeđim kabelom na GND, crvenim na 5v i narančastim (upravljački kabel) na GPIO17.
Na kraju sam uredio neke datoteke animacije vremena u GIMP -u kako bih dodao svoje osobne dodire, poput šišmiša na Mjesecu i nasmijanog lica na suncu. Također sam dodao prilagođenu animaciju kazeta s "Old Tech New Spec" koja će se reproducirati pri pokretanju, samo iz zabave.
Korak 5: Jiggle slušalica
Ideja WeatherMana bila je da će pasivno sjediti na mom stolnom zvučniku, povremeno prikazivati vremenske prilike, ali htio sam da to učini samo malo više! Slušalice koje su dolazile s njim bile su tost, ali klasične 80 -te, pa sam odlučio učiniti nešto s njima. Nakon što sam skinuo sav kabel i vruće zalijepio polomljeni, ostali su mi tri dijela, utikač od 3,5 mm, gumb u obliku dijamanta i sami telefoni na njihovoj fleksibilnoj metalnoj traci.
Pala mi je na pamet ideja da ako nađem neki način ugradnje telefona na gornju stranu jedinice, mogu ih natjerati da se rotiraju naprijed -nazad pomoću servo -a, te to iskoristiti kao dodatnu obavijest.
Prvo sam izbušio utikač od 3,5 mm i demontirao dijamantnu sklopku, a zatim sam ih stavio na komad šipke s navojem. Zatim sam zalijepio maticu na plastični konektor kako bi šipka mogla sigurno (i ravno) sjediti na servo pogonu. Na drugom kraju štapa dodao sam drugu maticu. Konačno sam upotrijebio sivi Sugru za lijepljenje vrha šipke na traku za slušalice i za prekrivanje matice na dnu sklopa. Ako niste čuli za Sugru, to je ljepilo za oblikovanje koje dolazi u malim vrećicama u boji - oblikuje se poput Play -Doha, ali lijepi se poput superljepljenja i čvrsto se stvrdne poput plastike!
S nedavnim hladnim vremenom, Sugru je trebalo nekoliko dana da se potpuno stvrdne, ali su slušalice i njihovo postolje uskoro bili spremni za konačnu montažu.
Korak 6: Montaža
Pi, HAT i Servo radili su dobro na klupi pa je sljedeći posao bio uvesti ih u slučaj. Prije nego što sam započeo s velikim komponentama, upotrijebio sam nešto preostalog sivog Sugrua da popravim brojčanik, utičnicu za slušalice i prekidač za "metalnu traku", sređujući kozmetiku. Također sam zalijepio originalne gumbe Play, Stop, FF & Rew na komad plastičnog cijevi kako bi ostali na pravom mjestu. Šteta je što ovaj put niste ponovno upotrijebili bilo koji gumb, ali zapravo nije bilo ničega za kontrolu!
Poslužio sam posljednji sivi Sugru da držim servo u položaju, s osovinom koja je provirila kroz povećanu utičnicu za slušalice. Prešavši na drugu polovicu kućišta, tada sam upotrijebio neki crni Sugru da pričvrstim sklop HAT i Pi na vrata trake, tako da se mogu otvoriti s njima. Zaista sam uživao u posljednjem malom dodiru - pričvršćivanju u GeoMag magnet kako bi vrata bila čvrsto zatvorena.
Spajanje dviju polovica bio je nervozan posao jer sam se bojao da će se Pi & Servo sukobiti jedno s drugim, ali na kraju je ostalo oko milimetra do viška, dosta u mojoj knjizi. Kako bi otkačena otvorena vrata omogućila potpuni pristup unutrašnjosti za buduće servisiranje, samo sam vruće zalijepila dvije polovice zajedno, a nakon brisanja mojih masnih otisaka prstiju postavila sam sklop slušalica na vrh - gotovo!
Korak 7: Tiha opsesija
Druga nagrada na natječaju za ponovnu upotrebu
Preporučeni:
Kako: Instaliranje Raspberry PI 4 bez glave (VNC) s Rpi-imagerom i slikama: 7 koraka (sa slikama)
Kako: Instaliranje Raspberry PI 4 Headless (VNC) s Rpi-imagerom i slikama: Planiram koristiti ovaj Rapsberry PI u hrpi zabavnih projekata na svom blogu. Slobodno provjerite. Htio sam se vratiti korištenju Raspberry PI -a, ali nisam imao tipkovnicu ili miš na novoj lokaciji. Prošlo je dosta vremena od postavljanja maline
Kako napraviti brojač koraka?: 3 koraka (sa slikama)
Kako napraviti brojač koraka?: Nekada sam se dobro snašao u mnogim sportovima: hodanje, trčanje, vožnja bicikla, igranje badmintona itd. Volim jahanje da bih brzo putovao. Pa, pogledaj moj trbušni trbuh … Pa, u svakom slučaju, odlučujem ponovno početi vježbati. Koju opremu trebam pripremiti?
Brojač koraka - Mikro: Bit: 12 koraka (sa slikama)
Brojač koraka - Micro: Bit: Ovaj projekt će biti brojač koraka. Za mjerenje koraka koristit ćemo senzor akcelerometra koji je ugrađen u Micro: Bit. Svaki put kad se Micro: Bit protrese, zbroju ćemo dodati 2 i prikazati ga na ekranu
Atari Punk konzola s bebom Sekvencer za 8 koraka: 7 koraka (sa slikama)
Atari Punk konzola s Baby 8 Step Sequencer-om: Ova srednja verzija je sve-u-jednom Atari Punk Console i Baby 8 Step Sequencer koje možete glodati na stolnom PCB glodalici Bantam Tools. Sastoji se od dvije ploče: jedna je ploča korisničkog sučelja (UI), a druga je pomoćna bo
Kako rastaviti računalo jednostavnim koracima i slikama: 13 koraka (sa slikama)
Kako rastaviti računalo jednostavnim koracima i slikama: Ovo uputstvo o tome kako rastaviti računalo. Većina osnovnih komponenti je modularna i lako se uklanja. Međutim, važno je da se oko toga organizirate. To će vam pomoći da spriječite gubitak dijelova, a također i prilikom ponovnog sastavljanja