Mündəricat:

ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı: 9 Adım (Şəkillərlə)
ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı: 9 Adım (Şəkillərlə)

Video: ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı: 9 Adım (Şəkillərlə)

Video: ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı: 9 Adım (Şəkillərlə)
Video: Pro Micro ATMEGA32U4 Arduino sancaqlar və 5V, 3.3V izah olunur 2024, Iyul
Anonim
Image
Image
ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı
ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı
ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı
ESP8266 lövhəsindən istifadə edən YouTube Abunə Sayacı

Əziz dostlar, başqa bir ESP8266 layihəsinə xoş gəldiniz Bu gün böyük bir LCD ekranı və 3D çaplı bir korpusu olan bir DIY YouTube abunəçi sayğacını quracağıq. Gəlin başlayaq!

Bu dərsdə bunu edəcəyik: DIY YouTube abunə sayğacı. Bir neçə həftə əvvəl nəzərdən keçirdiyim böyük I2C ekranından istifadə edərək abunəçilərin sayını məsafə nömrələrindən görmək çox asandır. Tezgahın korpusu ağac filamentdən istifadə edərək 3D çapdır. Bu dəfə iki fərqli ağac filaman istifadə etdim və rəng birləşməsini çox sevirəm! Məncə çox sərin görünür. Həvəsləndirməyimə kömək etmək üçün YouTube abunəçisinin sayğacını çox istəyirdim! Video çəkmək çox vaxt və səy tələb edir. 35.000 adamın sizdən bir video gözlədiyini bildiyiniz zaman, bütün bu insanları məmnun etmək üçün daha çox çalışırsınız, bu sizə böyük bir motivasiya verir. Beləliklə, bu sayğac diqqətimi saxlamağa kömək edəcək. İndi bu layihənin necə qurulacağına baxaq!

Addım 1: Bütün hissələri alın

Bütün hissələri alın
Bütün hissələri alın
Bütün hissələri alın
Bütün hissələri alın

Layihə həqiqətən sadədir və qurmaq asandır. Bu layihəni hazırlamaq üçün lazım olan hissələr aşağıdakılardır:

  • A Wemos D1 mini lövhəsi ▶
  • 20x4 LCD ekran ▶
  • Bəzi tellər ▶
  • Power Bank ▶

Elektronikanın qiyməti 10 dollardan aşağıdır

Qapağı 3D çap edəcəksinizsə, iki ədəd taxta filamentə də ehtiyacınız olacaq. FormFutura'nın Easy Wood Birch və Coconut filamentlərindən istifadə etdim.

Hindistancevizi filamenti ▶

Ağcaqayın filamenti ▶

Kassa üçün təxminən 100 qr materiala ehtiyacımız var, buna görə bizə 5 dollara başa gələcək. Bu səbəbdən layihənin ümumi dəyəri 15 dollar civarındadır.

Addım 2: Wemos D1 Mini Board

Image
Image

Wemos D1 mini, qiyməti təxminən 5 dollar olan fantastik yeni lövhədir!

Lövhə çox kiçikdir. 160 MHz -ə qədər tezlikdə işləyə bilən ESP8266 EX çipindən istifadə edir. Proqramlarınızı saxlamaq üçün çoxlu yaddaş, 64Kb təlimat RAM, 96Kb məlumat RAM və 4MB flash yaddaş var. WiFi bağlantısı, Havadan Yeniləmələr və daha çox şey təklif edir. D1 mini lövhəsi 11 GPIO pin və bir analoq girişi təklif edir. Kiçik olmasına baxmayaraq, bu lövhə üçün çoxlu qalxanların hazırlandığını düşünürəm, çünki bu yolla asanlıqla Əşyaların İnterneti layihələrini asanlıqla qura bilərik! Əlbəttə ki, bu lövhəni Arduino IDE -dən istifadə edərək proqramlaşdıra bilərik.

Lövhə kiçik olmasına baxmayaraq performans baxımından bütün digər Arduino uyğun lövhələrdən üstündür. ESP8266 ilə Arduino arasında bir müqayisə apardım, bu addımda əlavə etdiyim videoya baxa bilərsiniz. Bu lövhə Arduino Unodan 17 qat daha sürətlidir! Həm də ən sürətli Arduino lövhəsi olan Arduino Due -dən üstündür. Bütün bunlar, 6 dollardan az dəyəri ilə! Etkileyici.

Buradan əldə edin ▶

Addım 3: 20x4 Karakterli LCD Ekranı

Image
Image
Prototip Devrini qurun
Prototip Devrini qurun

Bu ekranı bir müddət əvvəl Banggood.com saytında kəşf etdim. Diqqətimi çəkdi, çünki ucuzdur, 7 dollara başa gəlir, böyükdür və I2C interfeysindən istifadə edir. I2C interfeysindən istifadə etdiyi üçün Arduino ilə istifadə etmək çox asandır. Yalnız iki tel bağlamalıyıq. Bəzi layihələri prototipləşdirmək üçün böyük, asan bağlanan bir ekrana ehtiyacım var idi və I2C interfeysini istifadə edən yeganə ekran bu kiçik OLED displey idi. İndi layihələrimizdə istifadə etmək üçün böyük bir I2C ekrana sahibik! Əla!

Gördüyünüz kimi, ekran həqiqətən böyükdür. Hər sətirdə 20 simvol göstərə bilər və 4 sətirdən ibarətdir. Qrafika çəkə bilməz, sadəcə simvollar. Arxa tərəfdə ekranda lehimli kiçik bir qara lövhə tapa bilərik. Qara lövhədə LCD kontrastını idarə edən bir trimpot var.

Buradan əldə edin ▶

Addım 4: Prototip dövrəsini qurun

Prototip Devrini qurun
Prototip Devrini qurun
Prototip Devrini qurun
Prototip Devrini qurun

Bağlantı daha asan ola bilməz.

LCD Ekranın bağlanması

  • Ekranın Vcci Wemos D1 mini -nin 5V çıxışına gedir
  • Ekranın GND'si Wemos GND -ə gedir
  • Ekranın SDA pimi Wemos lövhəsinin D2 pininə gedir
  • Ekranın SCL pimi Wemos lövhəsinin D1 pininə gedir

Bu belədir! İndi layihəni gücləndirsək, bir neçə saniyədən sonra lövhənin WiFi şəbəkəsinə qoşulduğunu və ekranda bu kanalın Abunəçilərinin sayının böyük rəqəmlərlə göstərildiyini görə bilərik. Layihə gözlənildiyi kimi işləyir, buna görə də davam edə bilərik.

Addım 5: Korpusu 3D çap edin

3D Çapı Yazdırın
3D Çapı Yazdırın
3D Çapı Yazdırın
3D Çapı Yazdırın
3D Çapı Yazdırın
3D Çapı Yazdırın

Növbəti addım, korpusu 3D çap etməkdir. Bu korpusu Fusion 360 pulsuz proqramı istifadə edərək hazırladım.

Bir çox fərqli 3d dizayn proqramını sınadım, lakin Fusion 360 aşağıdakı səbəblərdən ən çox sevdiyim oldu.

  • Çox güclüdür və pulsuzdur
  • İstifadəsi nisbətən asandır
  • Bu proqramdan necə istifadə olunacağına dair onlayn dərslər çoxdur

Bu mühiti dizayn etmək üçün təxminən bir saat çəkdim və 3D dizayn və 3D çap üçün çox yeni olduğumu nəzərə aldım. Dizayn sənədlərini Thingiverse -ə yüklədim və pulsuz yükləyə bilərəm.

İki hissədə Formfutura'nın EasyWood Coconut filamentini və ön hissədə Birch filamentini istifadə etdim.

Buradan əldə edin ▶

Addım 6: 3D Çapı bitirin

3D çapı bitirin
3D çapı bitirin
3D çapı bitirin
3D çapı bitirin
3D çapı bitirin
3D çapı bitirin
3D çapı bitirin
3D çapı bitirin

Asan və sürətli çap idi. Wanhao i3 3d printerimdən istifadə edərək bütün hissələri çap etmək təxminən 5 saat çəkdi. amma nəticə fantastik idi!

Parçalar çap edildikdən sonra incə qum kağızı ilə zımparaladım və sonra taxta lak tətbiq etdim. Hər rəng üçün fərqli ağac lak istifadə etdim və kiçik bir parça istifadə edərək tətbiq etdim.

Sonra, lakın 24 saat qurumasına icazə verdim və son nəticə əla oldu!

Addım 7: Hər şeyi bir -birinə bağlayın

Hər şeyi Bir -birinə Bağlamaq
Hər şeyi Bir -birinə Bağlamaq
Hər şeyi Bir -birinə Bağlamaq
Hər şeyi Bir -birinə Bağlamaq
Hər şeyi Bir -birinə Bağlamaq
Hər şeyi Bir -birinə Bağlamaq

Lak quruduqdan sonra elektronikanı korpusun içinə qoymağın vaxtı gəldi.

Ön hissəni yerə yapışdırdım və sonra ekranı tam yerinə qoydum.

Ekranı yerində saxlamaq üçün isti yapışqan istifadə etdim. Sonra bəzi qadın telləri istifadə etdiyimiz Wemos D1 mini sancaqlarına lehimlədim və sonra onları ekrana bağladım. Hər şeyin yaxşı olduğunu görmək üçün layihəni sınadım və sonra lövhəni yerində yapışdırmaq üçün isti yapışqan istifadə etdim. Son addım, korpusun arxa qapağını yapışdırmaq idi!

Layihəmiz hazırdır və çox gözəl görünür! Məncə, əksər 3D çap obyektləri kimi plastik görünmür! Necə olduğunu həqiqətən sevirəm. İndi layihənin koduna baxaq.

Addım 8: Layihənin Məcəlləsi

Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi
Layihənin Məcəlləsi

Layihə, YouTube API istifadə edərək müəyyən bir YouTube kanalının abunəçilərinin sayını alır. Bir google serverinə bir sorğu göndəririk və server abunəçilərinin sayı olan bir JSON faylı ilə cavab verir. YouTube API -dən istifadə etmək üçün API Açarımız olmalıdır.

Əvvəlcə bunu edək. Beləliklə, Google Hesabımıza daxil olduq və geliştirici konsolunu ziyarət etdik. (https://console.developers.google.com) Yeni bir layihə yaratmaq üçün tıklayırıq, ona bir ad veririk və yarat düyməsini basırıq. Sonra yeni layihə seçilərkən YouTube Data API -ni aktivləşdiririk. Son addım Etimadnaməsini yaratmaqdır. Etimadnamə düyməsini basırıq və sonra görünən pəncərədən yeni bir API açarı yaratmaq üçün seçirik. Yaxın basırıq və işimiz bitdi. Daha ətraflı məlumat üçün ilk addıma əlavə edilmiş videoya baxın.

İndi layihənin koduna qısa bir nəzər salaq. Əvvəlcə bəzi kitabxanaları yükləməliyik. ESP8266 çipi ilə işləyən LiquidCrystal_I2C kitabxanasının bir versiyasına ehtiyacımız var. Mükəmməl ArduinoJSON kitabxanasına da ehtiyacımız var.

  1. Arduino JSON:
  2. Ekran Kitabxanası:

Sonra bəzi dəyişənləri təyin etməliyik. WiFi bağlantısı üçün ssid və şifrəni təyin etdik. Yaratdığımız API açarını da uyğun dəyişənə daxil etməliyik. Nəhayət, abunəçilərin sayını yoxlamaq istədiyimiz YouTube kanalının channelID -ə daxil olmalıyıq.

const char* ssid = "SSID"; // lokal şəbəkə konstunun SSID char* password = "PAROLA"; // Şəbəkə şifrəsi String apiKey = "YOURAPIKEY"; // API KEY String channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // YouTube kanal id

Kod nisbətən sadədir. Əvvəlcə ekranı işə salırıq və ekran üçün xüsusi simvollar yaradırıq. Böyük rəqəmlər istehsal etmək üçün bu simvollara ehtiyacımız var. Unutmayın ki, istifadə etdiyimiz ekran xarakterli LCD ekrandır, qrafiki göstərə bilmir. Yalnız 4 sətir mətn göstərə bilər. Böyük rəqəmlər yaratmaq üçün iki sətir mətn və bəzi xüsusi simvollardan istifadə edirik!

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

lcd.begin (20, 4);

lcd.setCursor (0, 0); lcd.print ("Bağlanır….");

createCustomChars ();

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

Sonra WiFi -yə qoşuluruq və abunəçiləri hər dəqiqə alırıq. Abunəçilərin sayını öyrənmək üçün google serverinə sorğu göndəririk və ArduinoJSON kitabxanasından istifadə edərək cavab verdiyi JSON cəriməsini təhlil edirik. Abunəçi sayını dəyişənə saxlayırıq. Döngü funksiyasında abunəçilərin sayında dəyişiklik olub olmadığını yoxlayırıq, ekranı təmizləyirik və yeni nömrəni çap edirik.

void loop () {int uzunluğu; String abunəçiləriString = String (getSubscribers ()); if (abunəçilər! = əvvəl abunəçilər) {lcd.clear (); uzunluq = subscribersString.length (); printSubscribers (uzunluq, subscribersString); subscribersBefore = abunəçilər; } gecikmə (60000); }

Həmişə olduğu kimi bu Təlimatda əlavə olunan layihənin kodunu tapa bilərsiniz. Kodu vaxtaşırı yenilədiyim üçün kodun ən son versiyası üçün lütfən layihənin veb saytına daxil olun:

Addım 9: Son nəticə

Yekun Nəticə
Yekun Nəticə
Yekun Nəticə
Yekun Nəticə

Son fikir olaraq bu layihəni çox sevirəm. Həqiqətən tikmək asandır və ucuzdur. Əlbəttə ki, təkmilləşdirmələr üçün yer var. Qutunun içərisinə bir batareya və ya hətta səs əlavə edə bilərik. Wemos batareya qalxanı ilə birlikdə 18650 lityum batareya əlavə etməyi düşünürəm. Bu layihədə bunu etmədim, çünki Wemos Batareya qalxanını bir az daha sınamalıyam. Bu kiçik qalxan, Lityum Batareyaları doldurub qoruya bilər, buna görə də layihələrimizə təkrar doldurulan batareyalar əlavə etmək üçün asan bir yol təqdim edir.

Bu layihə haqqında fikirlərinizi eşitmək istərdim. Görünüşünü bəyənirsiniz və bu layihədə hər hansı bir təkmilləşdirmə düşünə bilərsinizmi? Zəhmət olmasa şərhlərinizi aşağıdakı şərhlər bölməsinə yazın.

Tövsiyə: