Tartalomjegyzék:

1984 WeatherMan Pi: 7 lépés (képekkel)
1984 WeatherMan Pi: 7 lépés (képekkel)

Videó: 1984 WeatherMan Pi: 7 lépés (képekkel)

Videó: 1984 WeatherMan Pi: 7 lépés (képekkel)
Videó: The Giant Wave - The Perfect Storm (3/5) Movie CLIP (2000) HD 2024, November
Anonim
Image
Image
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi
1984 WeatherMan Pi

Ez a hordozható kazettalejátszó immár környezeti IoT időjárás -kijelző a 80 -as évek elején, amely "aktuális körülmények" animációt, görgetési hőmérsékletet és eső valószínűségi grafikont jelenít meg a szalagon. Amikor az időjárási körülmények megváltoznak, a tetején lévő szervo-vezérelt fejhallgató finom riasztásként ide-oda mozog.

A funkcionális szalag ajtaját kinyitva láthatjuk, hogy a poros eredeti alkatrészeket lecserélték egy Raspberry Pi Zero W, egy Pimoroni Unicorn Hat HD (LED Matrix) és egy kis szervóra. Az időjárási adatokat egy Python-szkript segítségével szerezzük be, amely lekérdezi az ultra-pontos Dark Sky Weather API-t, a saját helyemhez igazítva.

Ez egy egyszerű, de szép megjelenésű és funkcionális IoT felépítés, amely a YouTube-pultom ellentétes asztali hangszóróján ül, és csendben értesít az időjárásról.

Kellékek

Raspberry Pi Zero

Pimoroni Unicorn HAT HD

Kis szervó

1984 Hitachi SP-1 személyi sztereó és fejhallgató

USB WiFi adapter

2 mm -es menetes rúd

Sugru (fekete és szürke)

GeoMag mágnes

1. lépés: Szalag lebontása

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

Ezt a kedves régi kazettás lejátszót az anyósom adta nekem még szeptemberben, és azonnal beleszerettem ikonikus megjelenésébe és vaskos gombjaiba. Az igazi húzás mégis az a nagy szalagos ablak volt - miután birtokoltam körülbelül 15 másodpercig, egy vonalzót kaptam ki, és meglepődve tapasztaltam, hogy mm -es méretben megegyezik a szabványos Raspberry Pi HAT (Hardware Attached on Top) méretével.

Ez a felfedezés önmagában elég volt ahhoz, hogy a kakukkórás projektemet lejjebb tegyem a "tennivalók" listáján, és azonnal elkezdtem dolgozni, a lejátszó szétszerelésével.

A leszakítás nagyon jól sikerült, és végül három különálló darabot dolgoztam - néhány műanyag alkatrészt sikerült összetörnöm, de semmi olyat, amit nem lehetett összeragasztani.

2. lépés: Dark Sky Pi

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

Egy ideje a Dark Sky -t használom a telefonomon, és nagyon lenyűgözött az előrejelzések pontossága, ezért örömmel láttam, hogy átfogó API -t kínálnak, amelyet ebben a projektben használhatok. Szép és egyszerű beállítani fel is!

Először menjen a https://darksky.net/dev oldalra, és iratkozzon fel egy ingyenes fiókra - a "próba" fiók lehetővé teszi, hogy naponta 1000 API -kérelmet küldjön, ami elegendő egy 1,5 perces frissítéshez - elég gyakran még az én fiókomhoz is Brit időjárási megszállottság.

Miután regisztrált, kap egy "titkos kulcsot" - ez az, amire szüksége van az adatokhoz való hozzáféréshez, és ezeket használják a Python -szkriptben, ezért tartsa kéznél (és tudja, titokban).

Először a YouTube Subscriber Counter buildben használt szkript alkalmazásával kezdtem, amely a Python Requests modulját használja az API -adatok lekéréséhez. Az általam használt szkript a GitHubon található, csak be kell adnia a Dark Sky API kulcsát, és természetesen le kell cserélnie a saját szélességi és hosszúsági értékeit.

Elég egyszerű volt lekérni az aktuális időjárási adatok adatait, és úgy döntöttem, hogy az "Ikon", a "Csapadék valószínűsége" és a "Hőmérséklet" elemeket használom.

3. lépés: A kód

A kód
A kód

Ha az általam használt kódot újra fel akarja használni, vagy ki akarja ugrani, akkor a WeatherMan tárolóban található a GitHubon - klónozzon, vagy töltse le az "weather" mappát a Raspberry Pi "pi" mappájába.

A fő szkript funkciók a következők:

meteorológus.py

Ez a fő szkript, amely kivonja az időjárási adatokat a Dark Sky -ból. Be kell állítania egy Dark Sky fiókot a https://darksky.net/dev címen, és be kell írnia a titkos kulcsot a szkriptbe, ahol meg van jelölve. Azt is be kell írnia, hogy milyen szélességi és hosszúsági fokú az időjárási terület, amely érdekli - ez megtalálható a Google Térképen, kattintson a jobb egérgombbal, és válassza a "Mi van itt?" és megjelenik egy előugró ablak, amely a hely szélességét/hosszát mutatja.

Az API -adatok lekérése után a weatherman.py számos kisebb szkriptnek továbbítja a paramétereket, hogy elindítsa az animációkat és a fejhallgató -csörgést.

A szkript úgy van beállítva, hogy indításkor fusson az indítási fájl szerkesztésével …

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

… És hozzátéve:

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

a fájl végén.

icon.py

Ez a szkript az "aktuális körülmények" paramétert veszi át a weatherman.py szkriptből, és egy 16x16 -os időjárási animáció megjelenítésére használja - mindezek az "ikonok" mappában vannak tárolva, és a szabványos Unicorn HAT HD dokumentáció részét képezik. A-p.webp

telefonok.py

Ha az időjárási körülmények megváltoztak az utolsó API -kérés óta (vagy friss rendszerindításról van szó, és nem esik a hó), akkor ezt a szkriptet hívja a weatherman.py, és utasítja a szervót, hogy "mozogjon" oda -vissza, hogy figyelmeztesse Önt a körülményekre megváltozott.

csapadék.py

Ez a szkript elfogadja a weatherman.py "csapadék valószínűség" paraméterét, és kék színű sorokat jelenít meg az Unicorn HAT -on a % valószínűséggel kapcsolatban. Ha 100%, mind a 16 sor kéken világít, ha 50%, akkor csak a 8 sor stb.

temp.py

Egy másik szabványos Pimoroni -szkript, ez a "temp" paramétert veszi az weatherman.py -ből, és görgetett szöveggel jeleníti meg. Úgy van beállítva, hogy a Herkules truetype betűtípust használja (a "fonts" mappában), de ha kívánja, használhat szabványos betűtípust is. Még azt is javíthatja, hogy a megjelenített szöveg a hőmérséklet értékétől függően megváltoztassa a színét!

4. lépés: Unicorn HAT & Servo

Unicorn kalap és szervó
Unicorn kalap és szervó
Unicorn kalap és szervó
Unicorn kalap és szervó
Unicorn kalap és szervó
Unicorn kalap és szervó

Nagyszerű volt, hogy megszerezhettem az időjárási adatokat, de most meg kellett jelenítenem az Unicorn HAT. Nézegettem az időjárás -ikonok különböző készleteit az interneten, és félúton végeztem ezek adaptálását, amikor rájöttem, hogy van egy időjárási példa a Pimoroni dokumentációban - és ez időjárási animációkat is tartalmaz!

Ez óriási munkát takarított meg, és pillanatok alatt elindultam, egy animált ikonnal az aktuális körülményekhez, néhány görgetős szöveggel a hőmérséklethez és egy grafikonhoz a százalékos csapadékhoz (ami némi matematikát is tartalmazott). A szkripteket külön tartottam, és a Python Alfolyamat modulját használva adtam át a paramétereket oda -vissza.

A szervó hozzáadása ideális eszköz volt ezekhez a riasztásokhoz, mivel egy kis zajt kelt és szemet gyönyörködtető anélkül, hogy túl bosszantó lenne. Mivel a HAT már felvette a Pi számos csapját, forrasztottam a szervókábeleket a tábla alsó oldalára, a 17 -es csap segítségével a szervó mozgását impulzusszélesség -modulációval szabályozva.

A szervó Pi -ről való táplálása nem volt ideális, de azt csak pillanatnyi rázkódásra használnák, így a pontosság itt nem volt nagy gond. Az ábrán látható módon csatlakozott, barna kábellel a GND -hez, Pirossal az 5V -hoz és a narancssárgával (a vezérlőkábel) a GPIO17 -hez.

Végül szerkesztettem néhány időjárás -animációs fájlt a GIMP -ben, hogy hozzáadhassam a saját személyes érzéseimet, például denevéreket a Holdon és mosolygós arcot a napon. Hozzáadtam egy egyedi "Old Tech New Spec" kazettakerék -animációt is, amelyet indításkor kell lejátszani, csak szórakozásból.

5. lépés: Fejhallgató csörgés

Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés
Fejhallgató csörgés

A WeatherMan ötlete az volt, hogy passzívan ül az asztali hangszórómon, időnként megjelenítve az időjárást, de azt akartam, hogy csak egy kicsit többet tegyen! A hozzá tartozó fülhallgató pirítós volt, de klasszikus 80 -as évek, ezért úgy döntöttem, hogy csinálok velük valamit. Miután leszereltem az összes kábelt és melegen ragasztottam a töröttet, három részem maradt, a 3,5 mm-es dugó, a gyémánt alakú gomb és a telefonok a rugalmas fémszalagon.

Megfogalmazódott bennem az ötlet, hogy ha találok valamilyen módot a telefonok felszerelésére az egység tetejére, akkor egy szervóval előre -hátra forgathatom őket, és ezt további értesítésként használhatom.

Először kifúrtam a 3,5 mm -es dugót, és leszereltem a gyémántkapcsolót, majd felcsúsztattam őket egy menetes rúdra. Ezután anyát ragasztottam egy műanyag csatlakozóhoz, hogy a rúd biztonságosan (és egyenesen) ülhessen a szervo tetején. A rúd másik végén hozzáadtam egy másik anyát. Végül a szürke Sugru -val a rúd tetejét a fülhallgató -szalaghoz kötöttem, és a szerelvény alján lévő anyát is elfedtem. Ha még nem hallottál a Sugru -ról, akkor ez egy formázható ragasztó, amely kis színes tasakokban kapható - úgy formálódik, mint a Play -Doh, de tapad, mint a szuperragasztó, és keményedik, mint a műanyag!

A közelmúlt hideg időjárásával a Sugru néhány napba telt, mire teljesen megkeményedett, de a fejhallgató és az állvány hamar készen állt a végső összeszerelésre.

6. lépés: Összeszerelés

Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés

A Pi, a HAT és a Servo jól működött a kispadon, így a következő feladat az volt, hogy bevonják őket az ügybe. Mielőtt hozzákezdtem a nagy alkatrészekhez, némi balra maradt szürke Sugru-t használtam a hangerőszabályzó, a fejhallgató-csatlakozó és a "fémszalag" kapcsoló rögzítésére, a kozmetikumok rendezésére. Az eredeti Play, Stop, FF & Rew gombokat is ragasztottam egy műanyag vezetékre, hogy azok a megfelelő helyen maradjanak. Kár volt ezúttal nem használni egyik gombot sem, de igazából nem volt mit irányítaniuk!

Az utolsó szürke Sugru -t használtam a szervó helyzetben tartására, tengelyével a kibővített fejhallgató -foglalaton keresztül. A tok másik felére áttérve némi fekete Sugru -val rögzítettem a HAT és Pi szerelvényt a szalag ajtajához, hogy azok kinyílhassanak vele. Nagyon élveztem az utolsó apró érintést - egy GeoMag mágnes rögzítése, hogy az ajtó szilárdan zárva legyen.

A két fél összerakása ideges üzlet volt, mivel féltem, hogy a Pi & Servo összecsap egymással, de végül egy milliméter körül maradt, bőven a könyvemben. Mivel a funky nyitható ajtó teljes hozzáférést biztosítana a belső térhez a későbbi szervizeléshez, a két felet csak melegen ragasztottam, és miután letöröltem a zsíros ujjlenyomatomat, ráhelyeztem a fejhallgató szerelvényt - kész!

7. lépés: Csendes megszállottság

Csendes megszállottság
Csendes megszállottság
Csendes megszállottság
Csendes megszállottság

Második díj az újrafelhasználási versenyen

Ajánlott: