Talaan ng mga Nilalaman:

Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266: 9 Mga Hakbang (na may Mga Larawan)
Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266: 9 Mga Hakbang (na may Mga Larawan)

Video: Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266: 9 Mga Hakbang (na may Mga Larawan)

Video: Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266: 9 Mga Hakbang (na may Mga Larawan)
Video: SKR 1.4 - TMC2209 v1.2 2024, Hulyo
Anonim
Image
Image
Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266
Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266
Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266
Counter ng Subscriber ng YouTube Gumagamit ng Lupon ng ESP8266

Minamahal na mga kaibigan maligayang pagdating sa isa pang proyekto ng ESP8266 Ngayon ay magtatayo kami ng isang counter ng subscriber ng DIY YouTube na may malaking display sa LCD at isang naka-print na enclosure ng 3D. Magsimula na tayo!

Sa tutorial na ito, gagawin namin ito: Isang counter ng subscriber ng DIY YouTube. Gumagamit ito ng malaking display ng I2C na nasuri ko ilang linggo na ang nakakalipas upang maipakita ang bilang ng subscriber na may madaling makita mula sa mga numero ng distansya. Ang enclosure ng counter ay naka-print na 3D gamit ang filament ng kahoy. Gumamit ako ng dalawang magkakaibang mga filament ng kahoy sa oras na ito at talagang mahal ko ang kumbinasyon ng kulay! Sa palagay ko mukhang astig ito. Talagang ginusto ko ang isang counter ng subscriber ng YouTube upang matulungan akong manatiling magaganyak! Ang paggawa ng mga video ay nangangailangan ng maraming oras at pagsisikap. Kapag nalaman mo na 35.000 na mga tao ang naghihintay para sa isang video mula sa iyo, mas nagtatrabaho ka nang mas mahirap upang panatilihing nasiyahan ang lahat ng mga taong ito, nagbibigay ito sa iyo ng mahusay na motibo. Kaya, makakatulong sa akin ang counter na ito na manatiling nakatuon. Tingnan natin ngayon kung paano bumuo ng proyektong ito!

Hakbang 1: Kunin ang Lahat ng Mga Bahagi

Kunin ang Lahat ng Mga Bahagi
Kunin ang Lahat ng Mga Bahagi
Kunin ang Lahat ng Mga Bahagi
Kunin ang Lahat ng Mga Bahagi

Ang proyekto ay talagang simple at madaling buuin. Ang mga bahagi na kinakailangan upang maitayo ang proyektong ito ay ang mga sumusunod:

  • Isang mini board ng Wemos D1 ▶
  • Isang 20x4 LCD display ▶
  • Ang ilang mga wire ▶
  • Power Bank ▶

Ang gastos ng electronics ay mas mababa sa 10 $

Kung pupunta ka sa 3D i-print ang enclosure kakailanganin mo rin ang dalawang rolyo ng filament ng kahoy. Gumamit ako ng FormFutura’s Easy Wood Birch at Coconut filament.

Coconut filament ▶

Birch filament ▶

Para sa enclosure, kailangan namin ng halos 100gr ng materyal, kaya't gastos kami sa halos 5 $. Kaya ang kabuuang halaga ng proyekto ay humigit-kumulang na 15 $.

Hakbang 2: Ang Wemos D1 Mini Board

Image
Image

Ang mini Wemos D1 ay kamangha-manghang bagong board na nagkakahalaga ng halos $ 5!

Napakaliit ng board. Gumagamit ito ng ESP8266 EX chip na maaaring gumana sa isang dalas ng hanggang sa 160MHz. Mayroon itong maraming memorya, 64Kb ng pagtuturo RAM, 96Kb ng data RAM at 4MB ng flash memory upang maiimbak ang iyong mga programa. Nag-aalok ito ng pagkakakonekta sa WiFi, Over the Air update at marami pa. Nag-aalok ang D1 mini board ng 11 GPIO pin at isang analog input. Sa kabila ng maliit na sukat na ito ay maraming mga kalasag na binuo para sa board na ito na sa palagay ko ay mahusay, dahil sa ganitong paraan madali naming mabuo ang mahusay na mga proyekto sa Internet ng Bagay! Siyempre maaari nating mai-program ang board na ito gamit ang Arduino IDE.

Ang board sa kabila ng maliit na sukat na ito ay mas mahusay kaysa sa lahat ng iba pang mga Arduino na katugmang board sa pagganap. Nagsagawa ako ng paghahambing sa pagitan ng ESP8266 at Arduino, maaari mong suriin ang video na na-attach ko sa hakbang na ito. Ang board na ito ay 17 beses na mas mabilis kaysa sa isang Arduino Uno! Nalalampasan din nito ang pinakamabilis na board ng Arduino, ang Arduino Dahil. Lahat ng iyon, na may halagang mas mababa sa $ 6! Kahanga-hanga

Kunin ito dito ▶

Hakbang 3: Ang 20x4 Character LCD Display

Image
Image
Buuin ang Prototype Circuit
Buuin ang Prototype Circuit

Natuklasan ko ang display na ito noong nakaraan sa Banggood.com. Ginuhit ang aking atensyon sapagkat ito ay mura, nagkakahalaga ito ng 7 $, malaki ito, at gumagamit ito ng interface ng I2C. Dahil ginagamit nito ang interface ng I2C napakadaling gamitin sa Arduino. Kailangan lamang nating ikonekta ang dalawang wires. Kailangan ko ng malaki, madaling ikonekta ang display para sa pag-prototyp ng ilang mga proyekto at ang nag-iisang display na gumagamit ng interface ng I2C ay ang maliit na OLED display na ito. Ngayon mayroon kaming isang malaking I2C display na magagamit sa aming mga proyekto! Malaki!

Tulad ng nakikita mo, ang display ay talagang malaki. Maaari itong ipakita ang 20 mga character bawat linya, at mayroon itong 4 na mga linya. Hindi ito maaaring gumuhit ng mga graphic, mga character lamang. Sa likuran maaari kaming makahanap ng isang maliit na itim na board na solder sa display. Sa black board mayroong isang trimpot na kumokontrol sa kaibahan ng LCD.

Kunin ito dito ▶

Hakbang 4: Buuin ang Prototype Circuit

Buuin ang Prototype Circuit
Buuin ang Prototype Circuit
Buuin ang Prototype Circuit
Buuin ang Prototype Circuit

Hindi madali ang koneksyon.

Pagkonekta sa LCD Display

  • Ang Vcc ng display ay pupunta sa 5V output ng Wemos D1 mini
  • Ang GND ng display ay pupunta sa Wemos GND
  • Ang SDA pin ng display ay papunta sa D2 pin ng Wemos Board
  • Ang pin ng SCL ng display ay pupunta sa D1 pin ng Wemos Board

Ayan yun! Ngayon kung papalakasin natin ang proyekto maaari naming makita na pagkatapos ng ilang segundo ang board ay konektado sa WiFi network at sa screen ang bilang ng mga Subscriber ng channel na ito ay ipinapakita na may malalaking numero. Gumagana ang proyekto tulad ng inaasahan upang makapagpatuloy kami.

Hakbang 5: 3D I-print ang Enclosure

3D I-print ang Enclosure
3D I-print ang Enclosure
3D I-print ang Enclosure
3D I-print ang Enclosure
3D I-print ang Enclosure
3D I-print ang Enclosure

Ang susunod na hakbang ay i-print ng 3D ang enclosure. Dinisenyo ko ang enclosure na ito gamit ang Fusion 360 libreng software.

Sinubukan ko ang maraming iba't ibang mga 3d disenyo ng software ngunit ang Fusion 360 ay naging paborito ko para sa mga sumusunod na kadahilanan.

  • Napakalakas nito at libre ito
  • Ito ay medyo madaling gamitin
  • Mayroong maraming mga tutorial sa online kung paano gamitin ang software na ito

Inabot ako sa akin ng isang oras upang idisenyo ang enclosure na ito at isasaisip na napaka-bago ko sa disenyo ng 3D at pag-print sa 3D. Na-upload ko ang mga file ng disenyo sa Thingiverse at maaaring i-download ang mga ito nang libre.

Ginamit ko ang Formfutura’s EasyWood Coconut filament para sa dalawang bahagi, at Birch filament para sa harap na bahagi.

Kunin ito dito ▶

Hakbang 6: Tapusin ang 3D Print

Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print
Tapusin ang 3D Print

Ito ay isang madali at mabilis na pag-print. Inabot ako ng halos 5 oras upang mai-print ang lahat ng mga bahagi gamit ang aking Wanhao i3 3d printer. ngunit ang resulta ay kamangha-mangha!

Matapos mai-print ang mga bahagi, nilagyan ko sila ng pinong papel na buhangin at pagkatapos ay inilapat ko sa kanila ang kahoy na barnisan. Gumamit ako ng iba't ibang mga barnisan ng kahoy para sa bawat kulay at inilapat ko ito gamit ang isang maliit na piraso ng tela.

Susunod, hinayaan kong matuyo ang varnish sa loob ng 24 na oras at ang resulta ay mahusay!

Hakbang 7: Pagkonekta ng Lahat ng Magkasama

Pagkonekta ng Lahat ng Magkasama
Pagkonekta ng Lahat ng Magkasama
Pagkonekta ng Lahat ng Magkasama
Pagkonekta ng Lahat ng Magkasama
Pagkonekta ng Lahat ng Magkasama
Pagkonekta ng Lahat ng Magkasama

Matapos matuyo ang varnish oras na upang ilagay ang electronics sa loob ng enclosure.

Idinikit ko ang harap na piraso sa lugar at pagkatapos ay inilagay ko ang display sa eksaktong posisyon nito.

Gumamit ako ng maiinit na pandikit upang mapanatili rin ang display sa lugar. Pagkatapos ay naghinang ako ng ilang mga babaeng wires sa mga mini pin na Wemos D1 na ginagamit namin, at pagkatapos ay ikinonekta ko ang mga ito sa display. Sinubukan ko ang proyekto upang makita na ang lahat ay gumagana nang maayos, at pagkatapos ay gumamit ako ng mainit na pandikit upang idikit ang board sa lugar. Ang huling hakbang ay upang kola ang likod na takip ng enclosure!

Handa na ang aming proyekto at mukhang astig! Sa palagay ko hindi ito mukhang plastik tulad ng hitsura ng karamihan sa mga naka-print na 3D na bagay! Mahal na mahal ko kung paano ito naganap. Tingnan natin ngayon ang code ng proyekto.

Hakbang 8: Ang Code ng Project

Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto
Ang Code ng Proyekto

Kinukuha ng proyekto ang bilang ng mga subscriber ng isang naibigay na YouTube channel gamit ang YouTube API. Nagpadala kami ng isang kahilingan sa isang server ng google at ang mga server ay tumugon sa isang JSON file na may bilang ng mga tagasuskribi. Upang magamit ang YouTube API kailangan naming magkaroon ng isang API Key.

Gawin muna natin iyan. Kaya, naka-log in kami sa aming Google Account at binisita ang developer console. (https://console.developers.google.com) Nag-click kami upang lumikha ng isang bagong proyekto, binibigyan namin ito ng isang pangalan at pinindot namin ang paglikha. Pagkatapos sa napiling bagong proyekto pinapagana namin ang YouTube Data API. Ang huling hakbang ay lumikha ng Mga Kredensyal. Pinipindot namin ang key ng Mga Kredensyal at pagkatapos mula sa window na lilitaw pipiliin namin upang lumikha ng isang bagong key ng API. Pindutin namin ang malapit at tapos na kami. Para sa higit pang mga detalye, panoorin ang video na naka-attach sa unang hakbang.

Tingnan natin ngayon ang mabilis na code ng proyekto. Una sa lahat kailangan naming mag-download ng ilang mga aklatan. Kailangan namin ng isang bersyon ng library ng LiquidCrystal_I2C na gumagana sa chip na ESP8266. Kailangan din namin ang mahusay na ArduinoJSON library.

  1. Arduino JSON:
  2. Display Library:

Susunod kailangan nating tukuyin ang ilang mga variable. Itinakda namin ang ssid at ang password para sa koneksyon sa WiFi. Kailangan din naming ipasok ang API key na nilikha namin sa naaangkop na variable. Panghuli kailangan naming ipasok ang channelID ng YouTube channel na nais naming suriin ang bilang ng subscriber.

const char * ssid = "SSID"; // SSID ng lokal na networkconst char * password = "PASSWORD"; // Password sa network String apiKey = "HISAPIKEY"; // API KEY String channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // YouTube id channel

Ang code ay medyo simple. Sa una ay pinasimulan namin ang display at lumikha kami ng ilang mga pasadyang character para sa display. Kailangan namin ang mga character na ito upang makagawa ng malalaking mga digit. Huwag kalimutan, ang display na ginagamit namin ay pagpapakita ng character na LCD, hindi ito maaaring magpakita ng mga graphic. Maaari lamang itong ipakita ang 4 na linya ng teksto. Upang makalikha ng malalaking numero, gumagamit kami ng dalawang linya ng teksto at ilang mga pasadyang character!

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

lcd.begin (20, 4);

lcd.setCursor (0, 0); lcd.print ("Kumokonekta …..");

createCustomChars ();

WiFi.begin (ssid, password); habang (WiFi.status ()! = WL_CONNected) {pagkaantala (500); lcd.setCursor (cursorPosition, 1); lcd.print ("."); cursorPosition ++; }

Pagkatapos kumonekta kami sa WiFi at nakukuha namin ang mga tagasuskribi bawat minuto. Upang makuha ang bilang ng subscriber, nagpapadala kami ng isang kahilingan sa isang server ng google, at pinaparehas namin ang multa ng JSON na tumutugon ito gamit ang ArduinoJSON library. Sine-save namin ang bilang ng subscriber sa isang variable. Sa pagpapaandar ng loop sinusuri namin kung mayroong isang pagbabago sa bilang ng subscriber, nililinaw namin ang display at nai-print namin ang bagong numero.

void loop () {int haba; Mga string ng subscriberString = String (getSubscribers ()); kung (mga tagasuskribi! = mga subscriber Bago) {lcd.clear (); haba = subscriberString.length (); printSubscriber (haba, subscriberString); mga tagasuskribi Bago = mga tagasuskribi; } pagkaantala (60000); }

Tulad ng dati maaari mong makita ang code ng proyekto na nakakabit sa Instructable na ito. Dahil ina-update ko ang code mula sa oras-oras, para sa pinakabagong bersyon ng code mangyaring bisitahin ang website ng proyekto:

Hakbang 9: Pangwakas na Resulta

Pangwakas na Resulta
Pangwakas na Resulta
Pangwakas na Resulta
Pangwakas na Resulta

Bilang pangwakas na pag-iisip, mahal ko talaga ang proyektong ito. Ito ay talagang madali upang bumuo at hindi magastos. Siyempre may puwang para sa mga pagpapabuti. Maaari kaming magdagdag ng isang baterya sa loob ng enclosure o kahit tunog. Iniisip ko ang pagdaragdag ng isang 18650 na baterya ng lithium kasama ang kalasag ng baterya ng wemos. Hindi ko ito nagawa sa proyektong ito dahil kailangan kong subukan ang kalasag ng Wemos Battery nang higit pa. Ang maliit na kalasag na ito ay maaaring singilin at protektahan ang mga Baterya ng Lithium kaya nagbibigay ito ng isang madaling paraan upang magdagdag ng mga rechargeable na baterya sa aming mga proyekto.

Gusto kong marinig ang iyong opinyon tungkol sa proyektong ito. Gusto mo ba ng hitsura nito at maaari kang makapag-isip ng anumang mga pagpapabuti sa proyektong ito? Mangyaring i-post ang iyong mga komento sa seksyon ng mga komento sa ibaba.

Inirerekumendang: