Cuprins:

Contor de abonat YouTube folosind o placă ESP8266: 9 pași (cu imagini)
Contor de abonat YouTube folosind o placă ESP8266: 9 pași (cu imagini)

Video: Contor de abonat YouTube folosind o placă ESP8266: 9 pași (cu imagini)

Video: Contor de abonat YouTube folosind o placă ESP8266: 9 pași (cu imagini)
Video: Introducere în NodeMCU ESP8266 placă de dezvoltare WiFi cu exemplu de client HTTP 2024, Noiembrie
Anonim
Image
Image
Contor abonat YouTube utilizând o placă ESP8266
Contor abonat YouTube utilizând o placă ESP8266
Contor abonat YouTube utilizând o placă ESP8266
Contor abonat YouTube utilizând o placă ESP8266

Dragi prieteni, bineveniți la un alt proiect ESP8266 Astăzi vom construi un contor DIY pentru abonați YouTube cu un ecran LCD mare și o carcasă imprimată 3D. Să începem!

În acest tutorial vom realiza acest lucru: un contor DIY pentru abonați pe YouTube. Folosește afișajul I2C mare pe care l-am analizat acum câteva săptămâni pentru a afișa numărul de abonați cu numere mari ușor de văzut de la distanță. Carcasa blatului este imprimată 3D folosind filament din lemn. De data aceasta am folosit două filamente de lemn diferite și îmi place foarte mult combinația de culori! După părerea mea, arată atât de cool. Îmi doream foarte mult un contor de abonați YouTube care să mă ajute să rămân motivat! Producerea videoclipurilor necesită mult timp și efort. Când știi că 35.000 de oameni așteaptă un videoclip de la tine, lucrezi din ce în ce mai mult pentru a-i menține pe toți acești oameni mulțumiți, îți oferă un motiv extraordinar. Deci, acest contor mă va ajuta să rămân concentrat. Să vedem acum cum să construim acest proiect!

Pasul 1: obțineți toate părțile

Obțineți toate piesele
Obțineți toate piesele
Obțineți toate piesele
Obțineți toate piesele

Proiectul este foarte simplu și ușor de construit. Părțile necesare pentru construirea acestui proiect sunt următoarele:

  • O mini placă Wemos D1 ▶
  • Un ecran LCD de 20x4 ▶
  • Unele fire ▶
  • Power Bank ▶

Costul electronicelor este mai mic de 10 $

Dacă doriți să imprimați 3D carcasa, veți avea nevoie și de două suluri de filament din lemn. Am folosit filamentele Easy Wood Birch and Coconut de la FormFutura.

Filament de nucă de cocos ▶

Filament de mesteacăn ▶

Pentru incintă, avem nevoie de aproximativ 100gr de material, deci ne va costa în jur de 5 $. Astfel, costul total al proiectului este de aproximativ 15 $.

Pasul 2: placa mini Wemos D1

Image
Image

Wemos D1 mini este o nouă placă fantastică, care costă în jur de 5 USD!

Tabla este foarte mică. Folosește cipul ESP8266 EX care poate funcționa la o frecvență de până la 160 MHz. Are multă memorie, 64 KB de instrucțiuni RAM, 96 KB de date RAM și 4 MB de memorie flash pentru a vă stoca programele. Oferă conectivitate WiFi, actualizări Over the Air și multe altele. Mini placa D1 oferă 11 pini GPIO și o intrare analogică. În ciuda dimensiunilor sale mici, multe scuturi sunt dezvoltate pentru această placă, ceea ce cred că este grozav, deoarece astfel putem construi cu ușurință proiecte minunate pentru Internetul obiectelor! Desigur, putem programa această placă folosind Arduino IDE.

Placa, în ciuda dimensiunilor reduse, depășește toate celelalte plăci compatibile Arduino ca performanță. Am efectuat o comparație între ESP8266 și Arduino, puteți verifica videoclipul pe care l-am atașat în acest pas. Această placă este de 17 ori mai rapidă decât un Arduino Uno! De asemenea, depășește cea mai rapidă placă Arduino, Arduino Due. Toate acestea, cu un cost mai mic de 6 USD! Impresionant.

Obțineți-l aici ▶

Pasul 3: Afișajul LCD de 20x4 caractere

Image
Image
Construiți circuitul prototip
Construiți circuitul prototip

Am descoperit acest afișaj cu ceva timp în urmă pe Banggood.com. Mi-a atras atenția pentru că este ieftin, costă în jur de 7 USD, este mare și folosește interfața I2C. Deoarece folosește interfața I2C, este extrem de ușor de utilizat cu Arduino. Trebuie doar să conectăm două fire. Aveam nevoie de un afișaj mare, ușor de conectat, pentru prototiparea unor proiecte, iar singurul afișaj care folosea interfața I2C era acest mic afișaj OLED. Acum avem un mare ecran I2C de utilizat în proiectele noastre! Grozav!

După cum puteți vedea, ecranul este foarte mare. Poate afișa 20 de caractere pe linie și are 4 linii. Nu poate desena grafică, ci doar personaje. În spate putem găsi o mică placă neagră lipită pe afișaj. Pe tabla neagră există un trimpot care controlează contrastul ecranului LCD.

Obțineți-l aici ▶

Pasul 4: Construiți circuitul prototip

Construiți circuitul prototip
Construiți circuitul prototip
Construiți circuitul prototip
Construiți circuitul prototip

Conexiunea nu ar putea fi mai ușoară.

Conectarea ecranului LCD

  • Vcc-ul afișajului merge la ieșirea de 5V a Wemos D1 mini
  • GND al afișajului se duce la Wemos GND
  • Pinul SDA al afișajului merge la pinul D2 al plăcii Wemos
  • Pinul SCL al afișajului merge la pinul D1 al plăcii Wemos

Asta e! Acum, dacă pornim proiectul, putem vedea că după câteva secunde placa este conectată la rețeaua WiFi și pe ecran numărul Abonaților acestui canal este afișat cu numere mari. Proiectul funcționează conform așteptărilor, astfel încât să putem continua.

Pasul 5: Imprimați 3D carcasa

Imprimați 3D carcasa
Imprimați 3D carcasa
Imprimați 3D carcasa
Imprimați 3D carcasa
Imprimați 3D carcasa
Imprimați 3D carcasa

Următorul pas este imprimarea 3D a carcasei. Am proiectat această incintă folosind software-ul gratuit Fusion 360.

Am încercat o mulțime de software de proiectare 3D diferite, dar Fusion 360 a devenit preferatul meu din următoarele motive.

  • Este foarte puternic și este gratuit
  • Este relativ ușor de utilizat
  • Există o mulțime de tutoriale online despre modul de utilizare a acestui software

Mi-a luat aproximativ o oră să proiectez această incintă și am în minte că sunt foarte nou în designul 3D și imprimarea 3D. Am încărcat fișierele de proiectare în Thingiverse și le pot descărca gratuit.

Am folosit filamentul EasyFood Coconut al Formfutura pentru cele două părți și filamentul de mesteacăn pentru partea din față.

Obțineți-l aici ▶

Pasul 6: Finalizați imprimarea 3D

Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D
Finalizați imprimarea 3D

A fost o imprimare ușoară și rapidă. Mi-au luat aproximativ 5 ore să imprim toate piesele folosind imprimanta 3D Wanhao i3. dar rezultatul a fost fantastic!

După ce piesele au fost tipărite, le-am șlefuit cu hârtie fină și apoi le-am aplicat lac de lemn. Am folosit lac de lemn diferit pentru fiecare culoare și l-am aplicat folosind o bucată mică de pânză.

Apoi, am lăsat lacul să se usuce 24 de ore și rezultatul final este minunat!

Pasul 7: Conectarea totul împreună

Conectând totul împreună
Conectând totul împreună
Conectând totul împreună
Conectând totul împreună
Conectând totul împreună
Conectând totul împreună

După ce lacul a fost uscat, a venit timpul să introduceți aparatele electronice în interiorul incintei.

Am lipit piesa frontală în loc și apoi am așezat afișajul în poziția exactă.

Am folosit niște lipici fierbinți pentru a menține și afișajul pe loc. Apoi am lipit câteva fire de sex feminin la mini pinii Wemos D1 pe care îi folosim, apoi i-am conectat la afișaj. Am testat proiectul pentru a vedea că totul funcționează bine și apoi am folosit lipici fierbinte pentru a lipi placa în loc. Ultimul pas a fost lipirea capacului din spate al incintei!

Proiectul nostru este gata și arată atât de cool! În opinia mea, nu arată plastic, așa cum arată majoritatea obiectelor imprimate 3D! Îmi place foarte mult cum sa dovedit. Să vedem acum codul proiectului.

Pasul 8: Codul proiectului

Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului
Codul proiectului

Proiectul recuperează numărul de abonați ai unui anumit canal YouTube utilizând API-ul YouTube. Trimitem o cerere către un server google, iar acesta răspunde cu un fișier JSON cu numărul de abonați. Pentru a utiliza API-ul YouTube trebuie să avem o cheie API.

Să facem asta mai întâi. Deci, ne-am conectat la Contul nostru Google și vizităm consola pentru dezvoltatori. (https://console.developers.google.com) Facem clic pentru a crea un proiect nou, îi dăm un nume și apăsăm pe create. Apoi, cu noul proiect selectat, activăm YouTube Data API. Ultimul pas este crearea acreditării. Apăsăm tasta Credentials și apoi din fereastra care apare selectăm să creăm o nouă cheie API. Apăsăm aproape și am terminat. Pentru mai multe detalii, urmăriți videoclipul atașat la primul pas.

Să aruncăm o privire rapidă asupra codului proiectului. În primul rând trebuie să descărcăm câteva biblioteci. Avem nevoie de o versiune a bibliotecii LiquidCrystal_I2C care funcționează cu cipul ESP8266. De asemenea, avem nevoie de excelenta bibliotecă ArduinoJSON.

  1. Arduino JSON:
  2. Biblioteca de afișare:

În continuare trebuie să definim câteva variabile. Am setat ssid și parola pentru conexiunea WiFi. De asemenea, trebuie să introducem cheia API pe care am creat-o în variabila corespunzătoare. În cele din urmă, trebuie să introducem ID-ul canalului canalului YouTube pe care dorim să verificăm numărul de abonați.

const char * ssid = "SSID"; // SSID al rețelei localeconst char * parolă = "PAROLĂ"; // Parola pe rețea String apiKey = "YOURAPIKEY"; // API KEY String channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // ID canal YouTube

Codul este relativ simplu. La început, inițializăm afișajul și creăm câteva caractere personalizate pentru afișaj. Avem nevoie de aceste caractere pentru a produce cifre mari. Nu uitați, afișajul pe care îl folosim este un ecran LCD cu caractere, nu poate afișa grafică. Poate afișa doar 4 linii de text. Pentru a crea numere mari, folosim două rânduri de text și câteva caractere personalizate!

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

lcd.inceput (20, 4);

lcd.setCursor (0, 0); lcd.print („Conectarea ….”);

createCustomChars ();

WiFi.begin (ssid, parolă); while (WiFi.status ()! = WL_CONNECTED) {întârziere (500); lcd.setCursor (cursorPosition, 1); lcd.print ("."); cursorPosition ++; }

Apoi ne conectăm la WiFi și obținem abonații în fiecare minut. Pentru a obține numărul de abonați, trimitem o cerere către un server google și analizăm amenda JSON la care răspunde folosind biblioteca ArduinoJSON. Salvăm numărul de abonați într-o variabilă. În funcția buclă verificăm dacă există o modificare a numărului de abonați, ștergem afișajul și imprimăm noul număr.

void loop () {int lungime; String subscribersString = String (getSubscribers ()); if (abonați! = abonațiÎnainte) {lcd.clear (); lungime = subscribersString.length (); printSubscribers (lungime, subscriptoriString); abonați Înainte = abonați; } întârziere (60000); }

Ca întotdeauna, puteți găsi codul proiectului atașat în acest Instructable. Deoarece actualizez codul din când în când, pentru cea mai recentă versiune a codului, vă rugăm să vizitați site-ul web al proiectului:

Pasul 9: Rezultatul final

Rezultat final
Rezultat final
Rezultat final
Rezultat final

Ca ultim gând, îmi place foarte mult acest proiect. A fost foarte ușor de construit și ieftin. Desigur, este loc de îmbunătățiri. Putem adăuga o baterie în interiorul carcasei sau chiar sunet. Mă gândesc să adaug o baterie litiu 18650 împreună cu ecranul bateriei wemos. Nu am făcut-o în acest proiect, deoarece trebuie să mai testez scutul bateriei Wemos. Acest mic scut poate încărca și proteja bateriile cu litiu, astfel încât oferă o modalitate ușoară de a adăuga baterii reîncărcabile la proiectele noastre.

Mi-ar plăcea să vă aud părerea despre acest proiect. Îți place cum arată și îți vine în minte vreo îmbunătățire a acestui proiect? Vă rugăm să postați comentariile dvs. în secțiunea de comentarii de mai jos.

Recomandat: