Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Dobivate li noćne more zbog gubitka pretplatnika na YouTubeu? Ako to učinite, niste jedini.
Na sreću, napravio sam ovaj "YouTube Desktop Notifier" kako bih bio u toku sa svojim pretplatnicima na kanale i brojevima pregleda. Ovaj vrlo jednostavan DIY projekt koštao me oko 10 USD i sada me prati sa svojim kanalom. Osim prikazivanja pretplatnika i brojača, ovaj uređaj također "pišti i svijetli" kada moj kanal stekne novog pretplatnika.
Korak 1: Zahtjevi hardvera - 1
Za ovaj projekt potrebna nam je mješavina elektroničkih komponenti i alata za obradu drveta.
- Elektroničke komponente uključuju:
- Perfboard
- NodeMCU
- Modul za smanjenje snage 220v AC do 5v DC Buck
- Zvučni štit ili zujalica i otpornik od 100 Ω
- SPDT prekidač
- 4 x TM1637 4-bitni digitalni 7-segmentni zasloni
- Nekoliko LED dioda u boji i jednaka količina otpornika od 220 Ω
- Nekoliko spojnih kabela
- USB kabel za učitavanje koda
- i Opća oprema za lemljenje
Korak 2: Zahtjevi hardvera - 2
Za radni dio bit će nam potrebno:
- Drvo nepca
- Olovka
- Traka za mjerenje
- Ručna/sjeckana pila
- Čekić
- Nokti
- Alat za brušenje
- i Osobna zaštitna oprema (OZO) za rezanje drva
Izrađujem kućište od drva za palete jer mi preostaje ogromna gomila paleta od mojih drugih DIY WoodWorking projekata. Kutiju možete napraviti i od kartonske ili plastične posude i obojiti je kako bi joj izgledao HLADNO.
Korak 3: Obrađena tema
Korak 4: Plan
Plan je napraviti kutiju dimenzija 24 x 10 cm za držanje strujnog kruga u njoj.
Kad se uređaj uključi, prvo će se povezati s navedenom Wi-Fi mrežom pomoću para SSID i lozinka navedenih u kodu. Nakon uspostave veze kôd koristi kombinaciju "Google API ključa" (pokazat ću vam kako ga generirati u kasnijem odjeljku) i "ID kanala YouTube" za dohvaćanje podataka s poslužitelja YouTube. Uređaj tada prikazuje prikaz i broj pretplatnika pomoću 7 -segmentnog zaslona.
Nakon prikaza informacija, čeka se 5 minuta prije nego što dohvati sljedeći skup podataka s poslužitelja YouTube. Varijabla se koristi za spremanje trenutnog broja pretplatnika. Ako je novi broj pretplatnika veći od starog, zujalica se uključuje, a plavo -bijele LED diode naizmjence bljeskaju (svijetle).
Korak 5: Ožičenje
Ožičenje je vrlo jednostavno. Počet ćemo povezivanjem 7-segmentnih zaslona s mikrokontrolerom. Svaki od ovih zaslona ima 4 pina, 2 za napajanje i jedan za sat, a drugi za podatke. Spojite pinove podataka i sata na NodeMCU prema uputama na zaslonu.
Zatim ćemo spojiti sve VCC pinove zaslona na 3.3V pin NodeMCU -a. Zatim spojite štitnik zujalice/zujalicu sa 100Ω otpornikom na pin D8. Nakon toga spojite plavu i bijelu LED diodu na pinove D9 i D10 s otpornikom za ograničavanje struje od 220 Ω.
Sada, povežite sve uzemljene igle s GND pinom NodeMCU -a. Nakon što su svi pinovi spojeni, spojite prekidač na VIN NodeMCU -a, a GND na GND stepenastog pretvarača.
Korak 6: Korištene knjižnice
Korisnički i ID kanala kanala navedeni su pod "Podaci o računu"
Prijavite se na svoj račun usluge YouTube.
U gornjem desnom kutu kliknite ikonu računa> Postavke.
Na lijevoj ploči kliknite "Napredne postavke".
Ovdje je popis knjižnica koje su nam potrebne za ovaj projekt.
Knjižnice softvera:
- TM1637 LED upravljački program:
- ESP8266WiFi:
- Arduino Json:
- Arduino YouTube API:
Sve ih možete preuzeti s GitHub -a, naveo sam veze u donjem opisu. Nakon preuzimanja raspakirajte i preimenujte knjižnice uklanjanjem posebnih znakova i "master" iz njihovih imena. Postavite mapu u mapu knjižnica vašeg Arduina. Možda je potrebno stvoriti mapu Knjižnice ako je ovo vaša prva biblioteka. Ponovno pokrenite IDE kako bi ispravno učitao datoteku KEYWORD, Primjere i dodao knjižnicu u izbornik Knjižnica.
Jedinstveni identifikatori:
- WiFi SSID/lozinka
- ID YouTube kanala:
- Google API ključ:
- Uz knjižnice, za ovaj projekt trebate i nekoliko jedinstvenih identifikatora.
- Prvi je SSID i lozinka vaše bežične mreže.
-
Zatim vam je potreban jedinstveni ID kanala vašeg YouTube kanala. Da biste to dobili:
- Prijavite se na svoj račun usluge YouTube.
- U gornjem desnom kutu kliknite ikonu računa> Postavke.
- Na lijevoj ploči kliknite "Napredne postavke".
- Korisnički i ID kanala kanala navedeni su pod "Podaci o računu"
- I na kraju morate generirati "Google API ključ" za svoj kanal. Za generiranje ključa
- Pretražite Google "Korištenje API ključeva" ili otvorite vezu navedenu u donjem opisu.
- Pomaknite se prema dolje i kliknite "API -ji i usluge → Vjerodajnice"
- Ako prvi put pristupate ovoj stranici, morat ćete izraditi novi projekt klikom na gumb "Kreiraj".
- Prihvatite uvjete i dajte nazivu svom projektu, a zatim pritisnite gumb "Kreiraj" za stvaranje projekta
- Nakon što je projekt kreiran, samo trebate kliknuti na padajući izbornik "Stvori vjerodajnice" i odande odabrati "API ključ"
- Sustavu će trebati vremena za generiranje ključa. Nakon generiranja prikazat će vam ključ u skočnom dijalogu. - Kopirajte i spremite u svoju e -poštu
- Sada kliknite na opciju "Knjižnica" s lijeve ploče i
- Pomaknite se prema dolje i omogućite "YouTube Data API v3" i "YouTube Reporting API" klikom na njih i pritiskom na gumb "Omogući"
- Pričekajte 5 do 10 minuta i tada ćete moći koristiti API ključ koji ste upravo generirali u svom kodu.
Korak 7: Obrada drveta
Započnimo naš projekt sastavljanjem drvene kutije. Kao što je ranije rečeno, izrezat ću:
2 x 24x10cm, 2 x 10x6cm bočne stranice i jedna stražnja ploča 24x10cm. Nakon što sam izrezao sve drvene blokove, spojit ću ih i izbrusiti kako bi kutija dobila lijep i gladak izgled. Na stražnjoj strani jedinice izbušit ću 2 rupe, jedna bi bila za kabel za napajanje, a druga za prekidač za uključivanje i isključivanje.
Korak 8: Lemljenje
Kad kutija bude spremna, lemit ću sve elektroničke komponente i instalirati ih u kutiju.
Započet ću lemljenjem NodeMCU -a. Zatim ću lemiti 100Ω otpornik na D8 pin NodeMCU -a. Nakon toga ću lemiti zujalicu na perfboard i povezati ga s NodeMCU -om. Zatim ću lemiti prekidač i instalirati ga na stražnju stranu kutije. Prema shemi, jedan pin sklopke će se spojiti na VIN NodeMCU -a, a drugi na +ve terminal stepenastog pretvarača. Kraj pretvarača -ve spojit će se na GND pin NodeMCU -a. Sada ću lemiti 7 segmenata prema shemi.
Zatim lemim plave i bijele LED diode na pinove D9 i D10 NodeMCU -a. Dakle, ovako izgleda moja prednja ploča. Dopustite mi da napravim brzi test prije postavljanja prednje ploče. Izgleda da sve funkcionira kako bi trebalo. U redu, dopustite mi da instaliram prednju ploču, a zatim ću vam objasniti kod.
Korak 9: Kôd
Ovo je popis knjižnica koje su nam potrebne za ovaj projekt.
Sada, ako koristite istu shemu kao ja, ne morate ništa mijenjati u ovom kodu osim ovih nekoliko redaka. Ovdje samo trebate dodati SSID i lozinku svoje WiFI mreže te Google API ključ i ID kanala. Odmor možete ostaviti kakav jest i učitati kôd u NodeMCU.
"Api_mtbs" je srednje vrijeme između API zahtjeva koje je poslao mikroprocesor.
Zatim, inicijaliziram zaslone postavljanjem sata i igle za podatke. Nakon toga postavljam zujalicu i 2 LED diode.
U odjeljku setup () postavljam LED pin načine rada i palim plavu LED lampicu pri pokretanju. Zatim čistim sve 7-segmente i prikazujem 0 na zaslonu 1 i 3. Nakon toga će se uređaj povezati s WiFI mrežom pomoću navedenih vjerodajnica.
U odjeljku loop () kada vrijednost brojača premašuje api_mtbs ili jednostavno rečeno, kada dođe vrijeme za sljedeći zahtjev poslužitelju YouTube, upućuje se API poziv s ID -om kanala, a rezultat se prikazuje na serijski monitor i na 7-segmentnim zaslonima. Morate izračunati MOD primljenog broja za prikaz posljednje 4 znamenke, a zatim oduzeti MOD vrijednost od izvorne vrijednosti da biste dobili prve 4 znamenke. Jedna stvar koju sam primijetio je da ako je MOD, recimo 24, tada se na zaslonu prikazuje samo 24, a ne 0024. Tako da ćemo na zaslon morati dodati nule koje nedostaju. Ovaj dio koda treba dodati nedostajuće 0.
I na kraju, ovaj dio koda treba uključiti zujalicu i LED diode kada novi broj pretplatnika postane veći od broja starih pretplatnika.
Napomena: Pin D9 i D10 su RX i TX pinovi NodeMCU -a. Dakle, ako spojite LED diode na ove pinove, nećete moći dobiti ništa na serijskom monitoru. Dakle, tijekom procesa testiranja nemojte ništa spajati na pinove D9 i D10 i komentirajte bit koji postavlja načine pinova za ove pinove.
Kôd možete preuzeti s veze navedene u donjem opisu.
Korak 10: Poboljšanje budućnosti
Nekoliko stvari koje ću uključiti u nadolazeću verziju ovog projekta su:
- Spremanje dnevnog broja u bazu podataka web poslužitelja
- Spremanje mjesečnog broja u bazu podataka web poslužitelja
- Generirajte web sučelje za prikaz dnevne/mjesečne analize pomoću trakastog/linijskog grafikona
- Dodavanje NeoPixela umjesto trepćućih LED dioda
Imate li još kakvih prijedloga, javite mi u komentarima ispod. U redu, pa što čekate? Samo naprijed i pritisnite gumb za pretplatu i dopustite mom obavijesti na radnoj površini zujati i svijetliti.