Բովանդակություն:

ESP8266 տախտակի միջոցով YouTube բաժանորդների հաշվիչ ՝ 9 քայլ (նկարներով)
ESP8266 տախտակի միջոցով YouTube բաժանորդների հաշվիչ ՝ 9 քայլ (նկարներով)

Video: ESP8266 տախտակի միջոցով YouTube բաժանորդների հաշվիչ ՝ 9 քայլ (նկարներով)

Video: ESP8266 տախտակի միջոցով YouTube բաժանորդների հաշվիչ ՝ 9 քայլ (նկարներով)
Video: Ինչպես ծրագրավորել ESP8266 ESP-01 Wi-Fi ռելե մոդուլը 2024, Հուլիսի
Anonim
Image
Image
YouTube բաժանորդների հաշվիչ ՝ օգտագործելով ESP8266 տախտակ
YouTube բաժանորդների հաշվիչ ՝ օգտագործելով ESP8266 տախտակ
YouTube բաժանորդների հաշվիչ ՝ օգտագործելով ESP8266 տախտակ
YouTube բաժանորդների հաշվիչ ՝ օգտագործելով ESP8266 տախտակ

Հարգելի ընկերներ, բարի գալուստ ESP8266 ևս մեկ նախագիծ Այսօր մենք պատրաստվում ենք կառուցել DIY YouTube բաժանորդի հաշվիչ `մեծ LCD էկրանով և 3D տպված պատյանով: Եկեք սկսենք!

Այս ձեռնարկում մենք պատրաստելու ենք սա ՝ DIY YouTube բաժանորդի հաշվիչ: Այն օգտագործում է մի քանի շաբաթ առաջ վերանայված I2C մեծ էկրանը ՝ բաժանորդների թիվը ցուցադրելու հեռավոր համարներից մեծ հեշտությամբ: Հաշվիչի պատյանը 3D տպագրությամբ օգտագործվում է փայտյա թելերի միջոցով: Այս անգամ ես օգտագործեցի երկու տարբեր փայտյա թելեր և իսկապես սիրում եմ գունային համադրությունը: Իմ կարծիքով շատ թույն տեսք ունի: Ես իսկապես ուզում էի, որ YouTube- ի բաժանորդների հաշվիչը օգնի ինձ մոտիվացված մնալ: Տեսահոլովակների պատրաստումը մեծ ժամանակ և ջանք է պահանջում: Երբ գիտես, որ 35.000 մարդ սպասում է քեզնից տեսահոլովակի, դու ավելի ու ավելի ես աշխատում այդ բոլոր մարդկանց գոհ պահելու համար, դա քեզ տալիս է մեծ շարժառիթ: Այսպիսով, այս հաշվիչը կօգնի ինձ կենտրոնացած մնալ: Հիմա տեսնենք, թե ինչպես կառուցել այս նախագիծը:

Քայլ 1: Ստացեք բոլոր մասերը

Ստացեք բոլոր մասերը
Ստացեք բոլոր մասերը
Ստացեք բոլոր մասերը
Ստացեք բոլոր մասերը

Նախագիծը իսկապես պարզ է և հեշտ կառուցվող: Այս նախագծի կառուցման համար անհրաժեշտ մասերը հետևյալն են.

  • Wemos D1 մինի տախտակ ▶
  • 20x4 LCD էկրան ▶
  • Որոշ լարեր ▶
  • Power Bank ▶

Էլեկտրոնիկայի արժեքը 10 դոլարից պակաս է:

Եթե դուք պատրաստվում եք 3D տպել պարիսպը, ձեզ նույնպես պետք է փայտի թելերի երկու գլան: Ես օգտագործեցի FormFutura- ի Easy Wood Birch և Coconut թելերը:

Կոկոսի թելիկ ▶

Կեչի թել

Պարիսպի համար մեզ անհրաժեշտ է մոտ 100 գրամ նյութ, ուստի այն կարժենա մեզ մոտ 5 $: Այսպիսով, ծրագրի ընդհանուր արժեքը կազմում է մոտ 15 $:

Քայլ 2. Wemos D1 մինի տախտակ

Image
Image

Wemos D1 mini- ն ֆանտաստիկ նոր տախտակ է, որն արժե մոտ $ 5:

Տախտակը շատ փոքր է: Այն օգտագործում է ESP8266 EX չիպը, որը կարող է աշխատել մինչև 160 ՄՀց հաճախականությամբ: Այն ունի շատ հիշողություն, 64 Կբ օպերատիվ RAM, 96 Կբ տվյալների RAM և 4 ՄԲ ֆլեշ հիշողություն `ձեր ծրագրերը պահելու համար: Այն առաջարկում է WiFi միացում, օդային թարմացումներ և շատ ավելին: D1 մինի տախտակն առաջարկում է 11 GPIO կապում և մեկ անալոգային մուտք: Չնայած իր փոքր չափին, այս վահանակի համար մշակվում են բազմաթիվ վահաններ, որոնք, իմ կարծիքով, հիանալի են, քանի որ այս կերպ մենք կարող ենք հեշտությամբ կառուցել իրերի ինտերնետի հիանալի նախագծեր: Իհարկե, մենք կարող ենք ծրագրավորել այս տախտակը ՝ օգտագործելով Arduino IDE- ն:

Տախտակը, չնայած իր փոքր չափսերին, գերազանցում է Arduino- ի հետ համատեղելի մյուս բոլոր տախտակներին: Ես համեմատություն եմ անցկացրել ESP8266- ի և Arduino- ի միջև, կարող եք ստուգել այս քայլում կցված տեսանյութը: Այս տախտակը 17 անգամ ավելի արագ է, քան Arduino Uno- ն: Այն գերազանցում է նաև ամենաարագ Arduino տախտակին ՝ Arduino Due- ին: Այդ ամենը ՝ 6 դոլարից ցածր գնով: Տպավորիչ.

Ձեռք բերեք այստեղ ▶

Քայլ 3: 20x4 բնույթի LCD էկրան

Image
Image
Կառուցեք նախատիպի միացում
Կառուցեք նախատիպի միացում

Այս ցուցադրումը ես հայտնաբերեցի որոշ ժամանակ առաջ Banggood.com կայքում: Այն ուշադրությունս գրավեց, քանի որ էժան է, արժե մոտ 7 $, այն մեծ է և օգտագործում է I2C ինտերֆեյսը: Քանի որ այն օգտագործում է I2C ինտերֆեյսը, չափազանց հեշտ է օգտագործել Arduino- ի հետ: Մենք միայն պետք է միացնենք երկու լար: Ինձ պետք էր մեծ, հեշտ միացվող էկրան ՝ որոշ նախագծերի նախատիպավորման համար, և միակ էկրանը, որն օգտագործում էր I2C ինտերֆեյսը, այս փոքրիկ OLED էկրանն էր: Այժմ մենք ունենք մեծ I2C էկրան ՝ մեր նախագծերում օգտագործելու համար: Հիանալի!

Ինչպես տեսնում եք, ցուցադրումն իսկապես մեծ է: Այն կարող է ցուցադրել 20 նիշ մեկ տողում և ունի 4 տող: Այն չի կարող գրաֆիկա նկարել, պարզապես կերպարներ: Հետևի մասում մենք կարող ենք գտնել մի փոքրիկ սև տախտակ, որը զոդված է դիսփլեյի վրա: Սև տախտակի վրա տեղադրված է տրիպոտ, որը վերահսկում է LCD- ի հակադրությունը:

Ստացեք այստեղ ▶

Քայլ 4. Կառուցեք նախատիպի միացում

Կառուցեք նախատիպի միացում
Կառուցեք նախատիպի միացում
Կառուցեք նախատիպի միացում
Կառուցեք նախատիպի միացում

Կապը չէր կարող ավելի հեշտ լինել:

LCD էկրանը միացնելը

  • Էկրանի Vcc- ն անցնում է Wemos D1 մինի 5V ելքի վրա
  • Էկրանի GND- ն անցնում է Wemos GND- ին
  • Էկրանի SDA կապը անցնում է Wemos Board- ի D2 փինին
  • Էկրանի SCL կապը անցնում է Wemos Board- ի D1 կապին

Վերջ! Այժմ, եթե մենք միացնենք նախագիծը, կարող ենք տեսնել, որ մի քանի վայրկյան անց տախտակը միացված է WiFi ցանցին և էկրանին այս ալիքի Բաժանորդների թիվը ցուցադրվում է մեծ թվերով: Նախագիծն աշխատում է սպասվածի պես, որպեսզի կարողանանք առաջ շարժվել:

Քայլ 5: 3D տպել պարիսպը

3D տպել պարիսպը
3D տպել պարիսպը
3D տպել պարիսպը
3D տպել պարիսպը
3D տպել պարիսպը
3D տպել պարիսպը

Հաջորդ քայլը պարիսպը 3D տպելն է: Ես նախագծել եմ այս պարիսպը ՝ օգտագործելով Fusion 360 անվճար ծրագրակազմը:

Ես փորձեցի շատ տարբեր 3D դիզայնի ծրագրեր, բայց Fusion 360- ը դարձավ իմ սիրածը հետևյալ պատճառներով.

  • Այն շատ հզոր է և անվճար
  • Այն համեմատաբար հեշտ է օգտագործել
  • Կան բազմաթիվ ձեռնարկներ, թե ինչպես օգտագործել այս ծրագրաշարը

Ինձ մոտ մեկ ժամ տևեց այս պարիսպը նախագծելու համար և նկատի ունեցեք, որ ես շատ նոր եմ 3D ձևավորման և 3D տպագրության մեջ: Ես վերբեռնել եմ դիզայնի ֆայլերը Thingiverse և կարող եմ դրանք անվճար ներբեռնել:

Երկու մասի համար ես օգտագործեցի Formfutura- ի EasyWood Coconut թելը, իսկ առջևի մասի `Birch թել:

Ստացեք այստեղ ▶

Քայլ 6: Ավարտեք 3D տպումը

Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը
Ավարտեք 3D տպումը

Դա հեշտ և արագ տպագիր էր: Ինձանից պահանջվեց մոտ 5 ժամ, որպեսզի տպեմ բոլոր մասերը ՝ օգտագործելով իմ Wanhao i3 3D տպիչը: բայց արդյունքը ֆանտաստիկ էր!

Մասերը տպվելուց հետո ես դրանք մանրացրեցի մանր ավազի թղթով, այնուհետև դրանց վրա փայտի լաք քսեցի: Յուրաքանչյուր գույնի համար ես օգտագործել եմ տարբեր փայտի լաքեր և դրանք քսել եմ փոքր կտոր կտորի միջոցով:

Հաջորդը, ես թողեցի, որ լաքը չորանա 24 ժամ, և վերջնական արդյունքը հիանալի է:

Քայլ 7: Ամեն ինչ միասին միացնելը

Ամեն ինչ միասին միացնելը
Ամեն ինչ միասին միացնելը
Ամեն ինչ միասին միացնելը
Ամեն ինչ միասին միացնելը
Ամեն ինչ միասին միացնելը
Ամեն ինչ միասին միացնելը

Լաքը չորացնելուց հետո ժամանակն էր էլեկտրոնիկան տեղադրել պատյանի ներսում:

Ես սոսնձեցի առջևի կտորը տեղում, այնուհետև ցուցադրումը դրեցի իր ճշգրիտ դիրքի վրա:

Ես որոշ տաք սոսինձ օգտագործեցի, որպեսզի ցուցադրումը նույնպես տեղում մնա: Հետո ես որոշ մետաղալարեր կպցրեցի մեր օգտագործած Wemos D1 մինի կապերին, այնուհետև դրանք միացրեցի էկրանին: Ես փորձարկեցի նախագիծը ՝ տեսնելով, որ ամեն ինչ լավ է աշխատում, այնուհետև տաք սոսինձով տախտակը սոսնձեցի տեղում: Վերջին քայլը պարիսպի հետևի կափարիչը սոսնձելն էր:

Մեր նախագիծը պատրաստ է, և այն շատ թույն տեսք ունի: Իմ կարծիքով, այն պլաստիկ տեսք չունի, ինչպես 3D տպված առարկաների մեծ մասը: Ես իսկապես սիրում եմ, թե ինչպես ստացվեց: Այժմ տեսնենք նախագծի ծածկագիրը:

Քայլ 8. Նախագծի ծածկագիրը

Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը
Րագրի ծածկագիրը

Նախագիծը վերականգնում է YouTube API- ի միջոցով տվյալ YouTube ալիքի բաժանորդների թիվը: Մենք հարցում ենք ուղարկում google սերվերին, և սերվերը պատասխանում է JSON ֆայլով ՝ բաժանորդների թվով: YouTube API- ից օգտվելու համար մեզ անհրաժեշտ է ունենալ API բանալին:

Նախ դա անենք: Այսպիսով, մենք մուտք ենք գործել մեր Google հաշիվ և այցելել ծրագրավորողի վահանակ: (https://console.developers.google.com) Մենք սեղմում ենք նոր նախագիծ ստեղծելու համար, տալիս ենք անունը և սեղմում ենք ստեղծել: Հետո ընտրված նոր նախագծով մենք միացնում ենք YouTube Data API- ը: Վերջին քայլը հավատարմագրերի ստեղծումն է: Մենք սեղմում ենք Հավատարմագրերի ստեղնը, այնուհետև հայտնվող պատուհանից ընտրում ենք նոր API ստեղն ստեղծելու համար: Մենք սեղմում ենք փակումը և ավարտված ենք: Մանրամասների համար դիտեք առաջին քայլին կից տեսանյութը:

Եկեք հիմա արագ նայենք նախագծի ծածկագրին: Առաջին հերթին մենք պետք է ներբեռնենք որոշ գրադարաններ: Մեզ պետք է LiquidCrystal_I2C գրադարանի տարբերակ, որն աշխատում է ESP8266 չիպով: Մեզ պետք է նաև գերազանց ArduinoJSON գրադարանը:

  1. Arduino JSON ՝
  2. Displayուցադրման գրադարան ՝

Հաջորդը մենք պետք է որոշ փոփոխականներ սահմանենք: Մենք սահմանում ենք ssid և գաղտնաբառ WiFi կապի համար: Մենք նաև պետք է մուտքագրենք մեր ստեղծած API բանալին համապատասխան փոփոխականում: Վերջապես, մենք պետք է մուտքագրենք YouTube- ի ալիքի channelID- ը, որը ցանկանում ենք ստուգել բաժանորդների թիվը:

const char* ssid = "SSID"; // Տեղական ցանցի SSID char char* գաղտնաբառ = "PASSWORD"; // Գաղտնաբառ ցանցի լարային apiKey = "YOURAPIKEY"; // API KEY Լարային channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // YouTube ալիքի id

Կոդը համեմատաբար պարզ է: Սկզբում մենք նախաստորագրում ենք ցուցադրումը և ստեղծում ենք ցուցադրման համար որոշ հարմարեցված նիշեր: Այս նիշերը մեզ պետք են մեծ թվեր արտադրելու համար: Մի մոռացեք, որ մենք օգտագործում ենք էկրանը բնույթի LCD էկրան է, այն չի կարող ցուցադրել գրաֆիկա: Այն կարող է պարզապես ցուցադրել 4 տող տեքստ: Մեծ թվեր ստեղծելու համար մենք օգտագործում ենք տողի երկու տող և որոշ հատուկ նիշ:

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

lcd. սկսել (20, 4);

lcd.setCursor (0, 0); lcd.print («Միանում է …»);

createCustomChars ();

WiFi.begin (ssid, գաղտնաբառ); while (WiFi.status ()! = WL_CONNECTED) {ուշացում (500); lcd.setCursor (cursorPosition, 1); lcd.print ("."); cursorPosition ++; }

Այնուհետեւ մենք միանում ենք WiFi- ին եւ ամեն րոպե ստանում ենք բաժանորդներ: Բաժանորդների թիվը ստանալու համար մենք հարցում ենք ուղարկում google սերվերին և վերլուծում ենք JSON տուգանքը, որը պատասխանում է ArduinoJSON գրադարանի միջոցով: Մենք պահում ենք բաժանորդների թիվը փոփոխականի մեջ: Օղակի գործառույթում մենք ստուգում ենք, թե արդյոք բաժանորդների թվի փոփոխություն կա, մաքրում ենք էկրանը և տպում ենք նոր համարը:

void loop () {int երկարություն; Լարային բաժանորդներString = String (getSubscribers ()); եթե (բաժանորդներ! = subscribersBefore) {lcd.clear (); երկարություն = subscribersString.length (); print Բաժանորդներ (երկարություն, բաժանորդների լարային); subscribersBefore = բաժանորդներ; } ուշացում (60000); }

Ինչպես միշտ, դուք կարող եք գտնել ծրագրի ծածկագիրը, որը կցված է սույն Հրահանգում: Քանի որ ես ժամանակ առ ժամանակ թարմացնում եմ ծածկագիրը, ծածկագրի վերջին տարբերակի համար խնդրում ենք այցելել ծրագրի կայքը ՝

Քայլ 9: Վերջնական արդյունք

Վերջնական արդյունք
Վերջնական արդյունք
Վերջնական արդյունք
Վերջնական արդյունք

Որպես վերջին միտք, ես իսկապես սիրում եմ այս նախագիծը: Դա իսկապես հեշտ էր կառուցել և էժան: Իհարկե, բարելավումների տեղ կա: Մենք կարող ենք մարտկոց ավելացնել պարիսպի ներսում կամ նույնիսկ ձայն: Ես մտածում եմ wimos մարտկոցի վահանի հետ միասին 18650 լիթիումի մարտկոց ավելացնելու մասին: Ես դա չեմ արել այս նախագծում, քանի որ ինձ պետք է ավելի շատ փորձարկել Wemos մարտկոցի վահանը: Այս փոքր վահանը կարող է լիցքավորել և պաշտպանել լիթիումի մարտկոցները, այնպես որ այն ապահովում է մեր նախագծերին վերալիցքավորվող մարտկոցներ ավելացնելու հեշտ միջոց:

Ես կցանկանայի լսել ձեր կարծիքը այս նախագծի վերաբերյալ: Ձեզ դուր է գալիս, թե ինչ տեսք ունի այն և կարո՞ղ եք մտածել այս նախագծի որևէ բարելավման մասին: Խնդրում ենք տեղադրել ձեր մեկնաբանությունները ստորև բերված մեկնաբանությունների բաժնում:

Խորհուրդ ենք տալիս: