Sisukord:

YouTube'i tellijate loendur ESP8266 plaadi abil: 9 sammu (piltidega)
YouTube'i tellijate loendur ESP8266 plaadi abil: 9 sammu (piltidega)

Video: YouTube'i tellijate loendur ESP8266 plaadi abil: 9 sammu (piltidega)

Video: YouTube'i tellijate loendur ESP8266 plaadi abil: 9 sammu (piltidega)
Video: Счетчик подписчиков YouTube в реальном времени Raspberry Pi 2024, Juuli
Anonim
Image
Image
YouTube'i tellijate loendur ESP8266 plaadi abil
YouTube'i tellijate loendur ESP8266 plaadi abil
YouTube'i tellijate loendur ESP8266 plaadi abil
YouTube'i tellijate loendur ESP8266 plaadi abil

Kallid sõbrad, tere tulemast teise ESP8266 projekti. Täna ehitame suure LCD -ekraani ja 3D -prinditud korpusega isetegija YouTube'i abonentide loenduri. Alustame!

Selles õpetuses teeme seda: Isetegemise YouTube'i abonentide loendur. See kasutab suurt I2C -ekraani, mille ma paar nädalat tagasi üle vaatasin, et kuvada abonentide arv koos suure hõlpsasti nähtava kaugusega. Loenduri korpus on 3D -trükitud, kasutades puitkiudu. Kasutasin seekord kahte erinevat puitkiudu ja mulle väga meeldib värvikombinatsioon! Minu arvates näeb see nii lahe välja. Tahtsin väga, et YouTube'i tellijate loendur aitaks mul motivatsiooni säilitada! Videote tegemine nõuab palju aega ja vaeva. Kui teate, et 35 000 inimest ootavad teilt videot, näete rohkem ja rohkem vaeva, et kõik need inimesed rahul oleksid, see annab teile suurepärase motiivi. Niisiis, see loendur aitab mul keskenduda. Vaatame nüüd, kuidas seda projekti üles ehitada!

Samm: hankige kõik osad

Hankige kõik osad
Hankige kõik osad
Hankige kõik osad
Hankige kõik osad

Projekt on tõesti lihtne ja lihtne ehitada. Selle projekti loomiseks vajalikud osad on järgmised:

  • Wemos D1 miniplaat ▶
  • 20 x 4 -kraadine LCD -ekraan ▶
  • Mõned juhtmed ▶
  • Toitepank ▶

Elektroonika maksab vähem kui 10 dollarit

Kui kavatsete korpust 3D -printida, vajate ka kahte rulli puidust hõõgniiti. Kasutasin FormFutura Easy Wood Birch ja Coconut filamente.

Kookoskiud ▶

Kasefilament ▶

Korpuse jaoks vajame umbes 100 grammi materjali, nii et see maksab meile umbes 5 dollarit. Seega on projekti kogumaksumus umbes 15 dollarit.

2. etapp: Wemos D1 miniplaat

Image
Image

Wemos D1 mini on fantastiline uus plaat, mis maksab umbes 5 dollarit!

Tahvel on väga väike. See kasutab kiipi ESP8266 EX, mis võib töötada sagedusel kuni 160 MHz. Programmide salvestamiseks on sellel palju mälu, 64Kb käskmälu, 96Kb andmemälu ja 4 MB välkmälu. See pakub WiFi -ühendust, üle õhu värskendusi ja palju muud. D1 miniplaadil on 11 GPIO kontakti ja üks analoogsisend. Vaatamata selle väiksusele on selle plaadi jaoks välja töötatud palju kaitsekilpe, mis on minu arvates suurepärane, sest nii saame hõlpsasti luua suurepäraseid asjade Interneti projekte! Muidugi saame selle plaadi programmeerida Arduino IDE abil.

Vaatamata väikesele suurusele edestab see plaat jõudlustelt kõiki teisi Arduinoga ühilduvaid plaate. Olen võrdlenud ESP8266 ja Arduino vahel, saate vaadata selles sammus lisatud videot. See plaat on 17 korda kiirem kui Arduino Uno! See edestab ka kiireimat Arduino plaati, Arduino Due. Kõik see maksab vähem kui 6 dollarit! Muljetavaldav.

Hankige see siit ▶

Samm: 20x4 tähemärgiline LCD -ekraan

Image
Image
Ehitage prototüübi ahel
Ehitage prototüübi ahel

Avastasin selle ekraani mõni aeg tagasi saidilt Banggood.com. See juhtis mu tähelepanu, kuna see on odav, maksab umbes 7 dollarit, see on suur ja kasutab I2C liidest. Kuna see kasutab I2C liidest, on seda Arduinoga äärmiselt lihtne kasutada. Peame ühendama ainult kaks juhtmest. Vajasin mõne projekti prototüüpimiseks suurt ja hõlpsasti ühendatavat ekraani ja ainus ekraan, mis kasutas I2C liidest, oli see väike OLED -ekraan. Nüüd on meil projektides kasutamiseks suur I2C -ekraan! Suurepärane!

Nagu näete, on ekraan tõesti suur. See võib kuvada 20 tähemärki rea kohta ja sellel on 4 rida. See ei saa joonistada graafikat, vaid märke. Tagaküljelt leiame ekraanilt joodetud väikese musta tahvli. Mustal tahvlil on trimp, mis kontrollib LCD -ekraani kontrastsust.

Hankige see siit ▶

4. samm: ehitage prototüübi ahel

Ehitage prototüübi ahel
Ehitage prototüübi ahel
Ehitage prototüübi ahel
Ehitage prototüübi ahel

Ühendus ei saa olla lihtsam.

LCD -ekraani ühendamine

  • Ekraani Vcc läheb Wemos D1 mini 5 V väljundisse
  • Ekraani GND läheb Wemos GND -le
  • Ekraani SDA tihvt läheb Wemos Boardi D2 tihvti külge
  • Ekraani SCL -tihvt läheb Wemos Boardi D1 -tihvti juurde

See on kõik! Kui me projekti käivitame, näeme, et mõne sekundi pärast on plaat WiFi -võrguga ühendatud ja ekraanil kuvatakse selle kanali tellijate arv suurte numbritega. Projekt töötab ootuspäraselt, et saaksime edasi minna.

Samm: printige korpus 3D -vormingus

3D printida ümbris
3D printida ümbris
3D printida ümbris
3D printida ümbris
3D printida ümbris
3D printida ümbris

Järgmine samm on korpuse 3D printimine. Kujundasin selle korpuse Fusion 360 tasuta tarkvara abil.

Proovisin palju erinevaid 3D disainitarkvara, kuid Fusion 360 sai minu lemmikuks järgmistel põhjustel.

  • See on väga võimas ja tasuta
  • Seda on suhteliselt lihtne kasutada
  • Internetis on selle tarkvara kasutamiseks palju õpetusi

Selle korpuse kujundamiseks kulus mul umbes tund ja pidage meeles, et olen 3D -disaini ja 3D -printimise osas väga uus. Laadisin disainifailid Thingiverse'i alla ja saan need tasuta alla laadida.

Kahe osa jaoks kasutasin Formfutura EasyWood Coconut hõõgniiti ja esiosa jaoks kasetooni.

Hankige see siit ▶

Samm: viige 3D -printimine lõpule

Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine
Lõpeta 3D printimine

See oli lihtne ja kiire trükk. Kõigi osade printimiseks kulus mul umbes 5 tundi, kasutades oma Wanhao i3 3D -printerit. aga tulemus oli fantastiline!

Pärast osade trükkimist lihvisin need peene liivapaberiga ja seejärel kandsin neile puitlakki. Ma kasutasin iga värvi jaoks erinevat puitlakki ja kandsin seda väikese riidetüki abil.

Järgmisena lasin lakil 24 tundi kuivada ja lõpptulemus on suurepärane!

Samm: ühendage kõik kokku

Kõigi ühendamine
Kõigi ühendamine
Kõigi ühendamine
Kõigi ühendamine
Kõigi ühendamine
Kõigi ühendamine

Pärast laki kuivamist oli aeg panna elektroonika korpuse sisse.

Ma liimisin esiosa oma kohale ja seejärel asetasin ekraani selle täpsele kohale.

Kasutasin ka kuuma liimi, et hoida ekraani paigal. Siis ma jootsin mõned naisjuhtmed meie kasutatavate Wemos D1 minitihvtide külge ja ühendasin need siis ekraaniga. Proovisin projekti, et näha, kas kõik töötab hästi, ja seejärel kasutasin plaadi kohale liimimiseks kuuma liimi. Viimane samm oli korpuse tagakaane liimimine!

Meie projekt on valmis ja tundub nii lahe! Minu arvates ei tundu see plastiline nagu enamik 3D -prinditud objekte! Ma tõesti armastan, kuidas see välja kukkus. Vaatame nüüd projekti koodi.

8. samm: projekti kood

Projekti kood
Projekti kood
Projekti kood
Projekti kood
Projekti kood
Projekti kood
Projekti kood
Projekti kood

Projekt otsib YouTube'i API kaudu antud YouTube'i kanali tellijate arvu. Saadame päringu Google'i serverisse ja server vastab JSON -failiga koos tellijate arvuga. YouTube'i API kasutamiseks peab meil olema API -võti.

Teeme seda kõigepealt. Niisiis, oleme oma Google'i kontole sisse loginud ja külastanud arendajakonsooli. (https://console.developers.google.com) Klõpsame uue projekti loomiseks, anname sellele nime ja vajutame Create. Seejärel lubame uue projekti valimisel YouTube'i andmete API. Viimane samm on mandaatide loomine. Vajutame volikirja klahvi ja seejärel ilmuvast aknast valime uue API võtme loomise. Vajutame kinni ja oleme valmis. Lisateabe saamiseks vaadake esimese sammu lisatud videot.

Vaatame nüüd kiiresti projekti koodi. Kõigepealt peame alla laadima mõned raamatukogud. Vajame raamatukogu LiquidCrystal_I2C versiooni, mis töötab ESP8266 kiibiga. Vajame ka suurepärast ArduinoJSONi raamatukogu.

  1. Arduino JSON:
  2. Kuva raamatukogu:

Järgmisena peame määratlema mõned muutujad. Määrasime WiFi -ühenduse jaoks SSID ja parooli. Samuti peame sobivasse muutujale sisestama meie loodud API võtme. Lõpuks peame sisestama selle YouTube'i kanali kanali ID, mida soovime tellijate arvu kontrollida.

const char* ssid = "SSID"; // kohaliku võrgu SSID -kood char* password = "PASSWORD"; // Parool võrgus String apiKey = "YOURAPIKEY"; // API KEY String channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // YouTube'i kanali ID

Kood on suhteliselt lihtne. Alguses lähtestame ekraani ja loome kuvarile mõned kohandatud märgid. Neid märke on vaja suurte numbrite tootmiseks. Ärge unustage, et meie kasutatav ekraan on tähemärgiline LCD -ekraan, see ei saa graafikat kuvada. See võib kuvada ainult 4 rida teksti. Suurte numbrite loomiseks kasutame kahte rida teksti ja mõnda kohandatud märki!

void setup () {Serial.begin (9600); int cursorPosition = 0;

lcd.algus (20, 4);

lcd.setCursor (0, 0); lcd.print ("Ühendamine …");

createCustomChars ();

WiFi.begin (ssid, parool); while (WiFi.status ()! = WL_CONNECTED) {delay (500); lcd.setCursor (cursorPosition, 1); lcd.print ("."); cursorPosition ++; }

Seejärel ühendame WiFi -ga ja saame tellijaid iga minuti järel. Tellijate arvu saamiseks saadame Google'i serverile päringu ja analüüsime JSON -i trahvi, millele see vastab, kasutades ArduinoJSON -i teeki. Salvestame abonentide arvu muutujaks. Silmusfunktsioonis kontrollime, kas abonentide arv on muutunud, tühjendame ekraani ja trükime uue numbri.

void loop () {int pikkus; Stringi tellijadString = String (string (getSubscribers ())); if (tellijad! = subscribersBefore) {lcd.clear (); pikkus = abonendidString.length (); printSubscribers (pikkus, tellijadString); subscribersBefore = tellijad; } viivitus (60000); }

Nagu alati, leiate käesolevast juhendist lisatud projekti koodi. Kuna uuendan koodi aeg-ajalt, külastage koodi uusima versiooni jaoks projekti veebisaiti:

9. samm: lõpptulemus

Lõpptulemus
Lõpptulemus
Lõpptulemus
Lõpptulemus

Viimase mõttena ma tõesti armastan seda projekti. See oli tõesti lihtne ehitada ja odav. Loomulikult on arenguruumi. Saame korpuse sisse lisada aku või isegi heli. Mõtlen 18650 liitiumaku lisamisele koos wemose akukilbiga. Ma ei teinud seda selles projektis, sest pean veel Wemose akukilpi katsetama. See väike kilp võib laadida ja kaitsta liitiumakusid, nii et see pakub lihtsat viisi meie projektidesse laetavate akude lisamiseks.

Tahaksin kuulda teie arvamust selle projekti kohta. Kas teile meeldib, kuidas see välja näeb, ja kas saate selle projekti jaoks mingeid täiustusi välja mõelda? Palun postitage oma kommentaarid allolevasse kommentaaride sektsiooni.

Soovitan: