Sadržaj:
- Supplies
- Korak 1: Skidanje trake
- Korak 2: Dark Sky Pi
- Korak 3: Kôd
- Korak 4: Jednorog HAT & Servo
- Korak 5: Pomicanje 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 izmjena: 2024-01-30 08:06
Ovaj prijenosni kasetofon sada je ambijentalni IoT prikaz vremena sa stilom ranih 80 -ih, koji prikazuje animaciju "trenutnih uslova", pomicanje temperature i grafikona vjerovatnoće 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 originalne komponente zamijenjene Raspberry Pi Zero W, Pimoroni Unicorn Hat HD (LED Matrix) i malim servo uređajem. Podaci o vremenu dobivaju se pomoću Python skripte koja postavlja upit o ultra-preciznom Dark Sky Weather API-ju, prilagođenom mojoj konkretnoj lokaciji.
To je jednostavna, ali lijepa i funkcionalna IoT konstrukcija koja se nalazi na suprotnom stolnom zvučniku od mog YouTube brojača, tiho me informirajući o vremenu.
Supplies
Raspberry Pi Zero
Pimoroni jednorog HAT HD
Mali servo
1984 Hitachi SP-1 lični stereo i slušalice
USB WiFi adapter
2 mm navojna šipka
Sugru (crno -sivo)
GeoMag magnet
Korak 1: Skidanje trake
Svekrva mi je u rujnu poklonila ovaj ljupki stari kasetofon i odmah sam se zaljubila u njegov kultni izgled i zdepasta dugmad. Pravo izvlačenje ipak je bio taj veliki prozor s trakom - nakon što sam ga posjedovao oko 15 sekundi, izvadio sam ravnalo i bio sam začuđen otkrivši da je, u 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 kukavičjim satom udari dalje na "to do" listu i odmah sam počeo raditi, 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 spojiti.
Korak 2: Dark Sky Pi
Već neko vrijeme koristim Dark Sky na svom telefonu i zaista sam bio impresioniran tač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 isto!
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 API zahtjeva, što je dovoljno za osvježavanje svakih 1,5 minuta - dovoljno često čak i za moj Britanski nivo 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).
Započeo sam prilagođavanjem skripte koju sam koristio u verziji YouTube Subscriber Counter, koja koristi modul Requests u Pythonu za dohvaćanje API podataka. Skripta koju sam koristio nalazi se na GitHub -u, samo trebate dodati svoj Dark Sky API ključ i, naravno, zamijeniti svoje vrijednosti Latitude & Longitude.
Bilo je prilično jednostavno izvaditi podatke o trenutnim vremenskim uvjetima, pa sam odlučio koristiti elemente "Ikona", "Vjerojatnost padavina" i "Temperatura".
Korak 3: Kôd
Ako želite ponovo 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 Dark Sky račun na https://darksky.net/dev i staviti svoj tajni ključ u skriptu gdje je navedeno. Također ćete morati unijeti geografsku širinu i dužinu vremenske lokacije koja vas zanima - to se može pronaći na Google mapama, samo kliknite desnim tasterom miša i odaberite "Šta je ovdje?" i dobit ćete skočni prozor koji prikazuje zemljopisnu širinu/dužinu lokacije.
Nakon preuzimanja API podataka weatherman.py prosljeđuje parametre 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 ga za prikaz vremenske animacije 16x16 - sve su to pohranjene u mapi "ikone" i dio su standardne dokumentacije Unicorn HAT HD. Možete jednostavno urediti-p.webp
phones.py
Ako su se vremenski uvjeti promijenili u odnosu na posljednji zahtjev API -ja (ili je to svježe pokretanje i ne pada snijeg), tada se ova skripta poziva sa weatherman.py i upućuje servo da se "pomakne" naprijed -nazad kako bi vas upozorio da su uslovi promijenio.
precip.py
Ova skripta prihvaća parametar "vjerovatnoće padavina" iz weatherman.py i prikazuje linije plavom bojom na Unicorn HAT -u koje se odnose na % vjerovatnoće. Ako 100% svih 16 redova svijetli plavo, ako 50% samo 8 redova itd.
temp.py
Još jedno standardno Pimoronijevo pismo, ovo uzima parametar "temp" iz weatherman.py i prikazuje ga s tekstom koji se pomiče. Postavljen je tako da koristi Herkules Truetype font (u fascikli "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 odlična, ali sada sam ih morao prikazati na Unicorn HAT -u. Pogledao sam različite skupove vremenskih ikona na internetu i na pola puta sam ih prilagodio kad sam shvatio da postoji vremenski primjer uključen u Pimoronijevu dokumentaciju - a to je uključivalo i vremenske animacije!
Ovo je uštedjelo ogromnu količinu posla, a ja sam se brzo pokrenuo, s animiranom ikonom za trenutne uvjete, nekim pomicanjem teksta za temperaturu i grafikonom za % padalina (što je uključivalo malo 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 dosadno. S obzirom da je HAT već zauzeo mnoge Pi -ove igle, lemio sam servo kabele na donju stranu ploče, koristeći Pin 17 za kontrolu kretanja servo -a pomoću Pulse Width Modulation.
Napajanje servo pogona iz Pi -a nije bilo idealno, ali bi se ikada koristilo samo za trenutak pomeranja 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 lične dodire, poput šišmiša na Mjesecu i nasmijanog lica na suncu. Dodao sam i prilagođenu "Old Tech New Spec" animaciju kasete koja se može reproducirati pri pokretanju, samo radi zabave.
Korak 5: Pomicanje 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 došle 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 lijepio 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 za postavljanje telefona na gornju stranu jedinice, mogu ih natjerati da se rotiraju naprijed -nazad pomoću servo -a, te to iskoristiti kao dodatno obavještenje.
Prvo sam izbušio utikač od 3,5 mm i demontirao dijamantski prekidač, a zatim sam ih stavio na komad navojne šipke. 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, a također i za pokrivanje 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 -Doh -a, ali lijepi se poput superljepila i čvrsto se stvrdne kao plastika!
S obzirom na nedavno hladno vrijeme, Sugru je trebalo nekoliko dana da se potpuno stvrdne, ali su slušalice i njihovo postolje uskoro bili spremni za konačno sklapanje.
Korak 6: Montaža
Pi, HAT i Servo su svi dobro radili 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 tipke Play, Stop, FF & Rew na komad plastičnog cijevi kako bi ostali na pravom mjestu. Šteta je što ovaj put niste ponovno upotrijebili bilo koje dugme, ali zapravo nije bilo ničega za kontrolu!
Koristio 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 crni Sugru da pričvrstim sklop HAT i Pi za 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.
Sastavljanje dvije polovine 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 takmičenju za ponovnu upotrebu
Preporučuje se:
Kako: Instaliranje Raspberry PI 4 bez glave (VNC) sa 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 svog 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 ponovo početi vježbati. Koju opremu treba pripremiti?
Brojač koraka - Mikro: Bit: 12 koraka (sa slikama)
Brojač koraka - Micro: Bit: Ovaj projekat će biti brojač koraka. Za mjerenje koraka koristit ćemo senzor akcelerometra koji je ugrađen u Micro: Bit. Svaki put kada se Micro: Bit protrese, broju ćemo dodati 2 i prikazati ga na ekranu
Atari Punk konzola s bebom Sekvencer za 8 koraka: 7 koraka (sa slikama)
Atari Punk konzola sa Baby Step Sequencer-om: Ova srednja verzija je sve-u-jednom Atari Punk Console i Baby 8 Step Sequencer koju možete glodati na stolnoj 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čunar jednostavnim koracima i slikama: 13 koraka (sa slikama)
Kako rastaviti računar jednostavnim koracima i slikama: Ovo uputstvo o tome kako rastaviti računar. 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 izbjegnete gubitak dijelova, a također i prilikom ponovnog sastavljanja