Kazalo:

YouTube števec e-črnil iz 1970-ih: 7 korakov (s slikami)
YouTube števec e-črnil iz 1970-ih: 7 korakov (s slikami)

Video: YouTube števec e-črnil iz 1970-ih: 7 korakov (s slikami)

Video: YouTube števec e-črnil iz 1970-ih: 7 korakov (s slikami)
Video: CS50 2013 - Week 9, continued 2024, November
Anonim
Image
Image
YouTube števec e-črnil iz 1970-ih
YouTube števec e-črnil iz 1970-ih
YouTube števec e-črnil iz 1970-ih
YouTube števec e-črnil iz 1970-ih

Ta znamenita digitalna ura iz sedemdesetih let prejšnjega stoletja ima novo življenje, ki prikazuje YouTube statistiko, zahvaljujoč funky Pimoronijevemu zaslonu z e-črnilom "Inky pHAT" in Raspberry Pi Zero. Uporablja preprost skript Python za redno iskanje API -ja Youtube, osveži zaslon s podatki, ki jih pridobi, in prikaže najnovejšo statistiko spletnega mesta. Izvirno stikalo za vklop/izklop alarma na zadnji strani preklopi prikaz med naročniki in pogledi za določeno spletno mesto YouTube (v tem primeru moje!).

Ura sama je model Digitron, precej zgodnja LED ura za potrošniški trg, trdno in elegantno ohišje v robustnem ohišju iz aluminija.

Celoten videoposnetek projekta, ki prikazuje kodo in gradnjo, je na naslovu https://www.youtube.com/embed/jKEZ2S3fj38, če ne vidite vdelanega videoposnetka, če ga želite videti le v akciji, je na voljo tudi krajši pogled.

Zaloge

Digitron budilka iz sedemdesetih let

Raspberry Pi Zero / Zero W

Črnilo Pimoroni pHAT

12 moških moških kablov

Matice in vijaki

1. korak: Nazaj v čas za recikliranje

Nazaj v čas za upcycling
Nazaj v čas za upcycling
Nazaj v čas za upcycling
Nazaj v čas za upcycling
Nazaj v čas za upcycling
Nazaj v čas za upcycling

To uro sem jo nekaj let nazaj kupil pri razprodaji in do nedavnega je bila v vsakodnevni uporabi, spravljena pod TV -enoto in se odlično zabavala. Pred kratkim smo prišli v sobo in ugotovili, da LED zaslon noro utripa z motečim brenčajočim zvokom in očitno je bil že čas, da se umakne v delavnico.

Prvič me je pritegnila trdna konstrukcija in slog - precej je trdna aluminijasta kepa in zelo težka. Estetika mi je bila tako všeč, da sem se odločil, da bom zdaj pokvarjeno uro preuredil v podcenjeno IoT napravo, da bom v svoji pisarni zagotovil pasivne informacije.

Razstavljanje mi je dalo velik nasvet - sodobne LED ure imajo pogosto adapter za "stenske bradavice" in delujejo pri nizki napetosti, vendar je ta pošast vzela polno omrežno napetost in imela velik transformator v sami uri - kar je upoštevalo njeno težo !

Poleg vijakov, ki držijo stojalo na mestu, so ostale komponente pritrjene na zadnjo ali sprednjo ploščo, ki je bila izdelana iz plastike. Zavrgel sem transformator, vezje in stari LED zaslon, ostalo pa mi je trdno ohišje, sprednja in zadnja plošča ter nekaj stikal, ki sem jih zapakiral in čakal na pravo idejo.

2. korak: izgradnja kanala

Gradnja kanala
Gradnja kanala

Pred približno letom dni sem začel "Old Tech. New Spec." na YouTubu - namenski kanal za moje video posnetke z dosledno obliko in obliko. Začel sem uživati v snemanju projektnih videov skoraj tako kot projekti sami in to se mi je zdelo logičen naslednji korak. Prav tako ni manjkalo posnetkov, saj rutinsko snemam stvari, kot so rušenja, da se lahko pozneje ozrem nazaj in vidim, kako naj bi se stvari spet ujemale.

Toliko videoposnetkov še nisem izdal, ampak se iz vsakega naučim nekaj novega. Video za nedavni "PiNG Video Doorbell" je bil doslej najbolj zabaven, a predolg - zato sem se odločil, da bo naslednji projekt preprost in minimalističen števec statistike YouTube, ki mi bo pomagal ostati motiviran. Zdaj sem le moral ugotoviti, kako prenašati številke iz YouTuba na Pi - kako težko bi to lahko bilo?

3. korak: Zajem statistike

Zajem statistike
Zajem statistike
Zajem statistike
Zajem statistike

Koda Video je na:

Raziskovanje sem začel tako, da sem sledil vodniku v reviji MagPi, ki je pridobival statistiko sledilcev iz kopice različnih socialnih API -jev (vmesniki za programiranje aplikacij), shranil številke v bazo podatkov MySQL in jih nato prikazal na LED -zaslonu. To je dobro delovalo, vendar se mi je zdelo kot preveč za ta projekt, zato sem poiskal enostavnejšo rešitev, saj sem se še naučil nekaj dragocenih lekcij o delovanju API -jev.

Kmalu sem odkril modul Zahteve za Python in po ogledu nekaj izjemno koristnih primerov ugotovil, da lahko preprosto poizvedujem API YouTube in vrnem nekaj osnovnih statističnih podatkov za svoj kanal.

Če želite narediti nekaj podobnega, se najprej prijavite v Google Console in ustvarite nov projekt - od tam lahko povežete API YouTube s svojim projektom in pridobite poverilnice, ki jih potrebujete (ID kanala in ključ API), da jih izvlečete statistika z uporabo Pythona. Sledil sem Googlovemu zelo uporabnemu vodniku za nastavitev projekta in pridobitev ključa API ter sledil tem korakom za pridobivanje ID -ja kanala.

Kodo Python, ki sem jo uporabil, je dokumentirano v Githubu - komentirano je in precej preprosto za uporabo, če le prilepite svoje poverilnice. Uporablja le modul Zahteve, ki je privzeto že nameščen v Raspbianu, zato poleg zaslona ni mogoče namestiti ničesar drugega, razen če želite uporabiti določeno pisavo. Vsekakor niste omejeni na YouTube, modul Zahteve je zelo prilagodljiv in vam lahko pomaga pri pridobivanju podatkov iz več tisoč virov, en primer bi bil dnevni števec korakov, ki se poveže z API -jem za fitnes.

Ko sem bil z njim zadovoljen, sem nastavil skript Python, da se samodejno zažene ob zagonu z urejanjem datoteke za samodejni zagon:

sudo nano/etc/xdg/lxsession/LXDE-pi/samodejni zagon

… In na dnu dodamo naslednjo vrstico:

@python3 /home/pi/YTcounter.py

Zdaj, ko sem lahko iz YouTuba priklicala želene številke, sem jih naslednjič prikazal - na način, ki bi ustrezal retro slogu ure.

4. korak: Možnost črnila

Možnost črnila
Možnost črnila
Možnost črnila
Možnost črnila
Možnost črnila
Možnost črnila
Možnost črnila
Možnost črnila

Upošteval sem več različnih možnosti prikaza za ta projekt, vendar sem se odločil za Pimoroni Inky pHAT-majhen tribarvni zaslon z e-črnilom za Pi. Enega sem vzel čez zimo, potem ko sem v lanskem izzivu Yarr Booty zajemal bon, vendar ga nisem dočakal, zato se mi je to zdela idealna priložnost. Poleg tega je najpomembneje, da je bil zaslon čudovite rdeče barve, ki se je lepo ujemal s sprednjo ploščo prvotne ure.

Programsko opremo za Inky pHAT je bilo enostavno namestiti v skladu z navodili za namestitev in v kratkem sem na svojem Test Pi zagnala enega od primerov, da bi ustvarila značko kul imena. Po daljšem eksperimentiranju sem lahko prikazal osnovno besedilo z uporabo določene pisave (ki se ujema s tisto, ki jo uporabljam pri znamki YouTube), od tam pa je bilo preprosto prikazati izpis zahteve API - komentarji v kodi Github kažejo, kako to se kodira korak za korakom.

Inky je zasnovan tako, da se prilega Pi-jevi 40-polni glavi GPIO, vendar sem želel, da ga pritrdi na "zaslon", zato sem se odločil, da ga namesto tega povežem s Pi-jem prek moških kablov-to je pomenilo njegovo umestitev bolj prilagodljiv in pustil nekaj rezervnih zatičev GPIO za priključitev LED in stikalo (več o tem kasneje). Sledil sem diagramu na pinout.xyz, ugotovil, da je potrebnih 8 zatičev GPIO, priključil kable, preizkusil in - nič! Nisem se zavedal, da čeprav je bilo potrebnih le 8 zatičev GPIO, je treba pHAT povezati tudi z več zatiči GND. Ko so bili vsi povezani s skakalci (zapleten posel), je Inky spet deloval po načrtih, veliko olajšanje.

Ko je koda delovala, sem se zdaj soočil z običajnim izzivom - vgradnjo vseh delov v ohišje.

5. korak: Lego, sekanje in lepljenje

Lego, sekljanje in lepilo
Lego, sekljanje in lepilo
Lego, sekljanje in lepilo
Lego, sekljanje in lepilo
Lego, sekljanje in lepilo
Lego, sekljanje in lepilo

Celoten videoposnetek je na:

Prva je bila namestitev Pi Zero v ohišje, zato sem se oprl na svoj najljubši gradbeni material, Lego. Idealen je za združevanje komponent in bistveno omogoča enostavno demontažo in montažo. Ko sem izvrtal nekaj lukenj v osnovnih ploščah Lego, sem eno pritrdil na ploščo Pi in eno na ohišje ure z originalnimi vijaki stojala, tako da bi se spojili in držali Pi v pravem položaju.

Naslednji je bil "obraz" - prvotni rdeči perspeks na sprednji strani ure je bil preveč nepregleden, da bi se lahko prikazal na črnilu, zato sem moral izrezati del, da je lahko pokukal skozi. To je bil nedvomno najtežji del gradnje, saj je bilo treba luknjo zelo natančno prerezati in če sem jo privil, ni bilo upanja na zamenjavo, razen če imam narejen en laserski rez (kar sem raziskal za vsak slučaj!). S pomočjo poceni merilnika merilnika (moje novo najljubše orodje) sem lahko natančno izmeril in začrtal obris luknje, ki sem ga nato z vrtljivim orodjem približno izrezal in pospravil z majhno pilico. To je potekalo počasi in trajalo je cel večer, vendar je bilo vredno!

Inky pHAT smo nato čim bolj lepo vroče prilepili na rdeči perspeks, pripravljen za montažo.

Korak 6: Zadnji dotiki in montaža

Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža
Zadnji dotiki in montaža

Pri eksperimentiranju z odgovori YouTube API -ja sem ugotovil, da bi lahko vrnil dve ločeni "zanimivi" številki - naročnike in skupno število ogledov. S črnilom pHAT bi bilo mogoče prikazati oba hkrati, vendar mi je bila všeč čistoča ure, podobna eni sami veliki številki (velikost pisave ne količina!). Z nekaj prilagoditvami kode sem uspel priključiti prvotno stikalo ure »Alarm On/Off« na uro na GPIO, tako da je mogoče zaslon preklapljati med naročniki in pogledi - to je bil zadovoljiv dotik, še posebej, ker se število ogledov spreminja veliko pogosteje kot število naročnikov!

Nato sem v GPIO dodal svetlo belo LED diodo, ki sem jo kodiral, da zasveti tik pred pošiljanjem zahteve API in se nato izklopi. Vso barvo sem že strgal z zadnje strani prosojne rdeče plastike, zato je bila ideja, da bi ura med osveževanjem številk nekoliko svetila rdeče.

Ker so bile vse vnaprej vzpostavljene povezave GPIO in priključen napajalni kabel, je sklop šel res dobro, predvsem zahvaljujoč Lego, ki drži stvari na svojem mestu. Sprednja in zadnja plošča sta se tesno prilegala, vendar sta se na koncu zataknila - upam, da mi je ne bo treba kmalu razstaviti. Trenutek resnice je bil prvi vklop po montaži, saj so skakalni kabli zavili okoli ohišja in GPIO povezave so bile tako močno stisnjene, da nisem imel veliko upanja, vendar sem bil vesel, ko se je zaslon osvežil po tistem, kar se je zdelo eno uro dolgo zagonski postopek.

7. korak: Motivacijske figure

Motivacijske figure
Motivacijske figure
Motivacijske figure
Motivacijske figure

Všeč mi je, kako se je izkazal ta projekt, zagotovo je eden "najčistejših", kar sem jih kdaj ustvaril, zahvaljujoč čudoviti masivno-aluminijasti zasnovi prvotne ure. To je bila tudi odlična učna izkušnja, veliko sem se naučil o delu z API-ji in e-črnilom, za katera vem, da jih bom uporabil v prihodnjih projektih.

Najbolj mi je všeč preprostost in praktičnost, ima eno nalogo, dela dobro in med tem dobro izgleda. Prej nisem nameraval paziti na statistiko YouTube, vendar je to v mojo pisarno prineslo surove spletne podatke, predstavljene na privlačen in nevsiljiv način. Morda nikoli ne bom ustvaril občinstva za Old Tech. Nova specifikacija. na tisoče, a dokler bo zabavno, bom še naprej ustvarjal projekte in videoposnetke, ki bodo, upam, navdušili več ljudi, da svoje stare naprave preoblikujejo v nekaj svežega in uporabnega.

Otroci in jaz smo navdušeni, ko vidimo, da se je število ogledov spremenilo, čeprav nam rahlo pove, da je nekje na svetu nekdo pravkar pogledal video o projektu, kar nas zagotovo spodbuja, da še naprej ustvarjamo in delimo.

Če vam je bil ta projekt všeč, si oglejte moje druge Instructables za več starejše tehnološke nadgradnje in se naročite na YouTube kanal za redno video vsebino.

IoT Challenge
IoT Challenge
IoT Challenge
IoT Challenge

Prva nagrada v IoT Challenge

Priporočena: