विषयसूची:

ESP8266 बोर्ड का उपयोग कर YouTube सब्सक्राइबर काउंटर: 9 चरण (चित्रों के साथ)
ESP8266 बोर्ड का उपयोग कर YouTube सब्सक्राइबर काउंटर: 9 चरण (चित्रों के साथ)
Anonim
Image
Image
ESP8266 बोर्ड का उपयोग करके YouTube सब्सक्राइबर काउंटर
ESP8266 बोर्ड का उपयोग करके YouTube सब्सक्राइबर काउंटर
ESP8266 बोर्ड का उपयोग करके YouTube सब्सक्राइबर काउंटर
ESP8266 बोर्ड का उपयोग करके YouTube सब्सक्राइबर काउंटर

प्रिय दोस्तों एक और ESP8266 प्रोजेक्ट में आपका स्वागत है आज हम एक बड़े LCD डिस्प्ले और 3D प्रिंटेड एनक्लोजर के साथ एक DIY YouTube सब्सक्राइबर काउंटर बनाने जा रहे हैं। आएँ शुरू करें!

इस ट्यूटोरियल में हम इसे बना रहे हैं: एक DIY YouTube सब्सक्राइबर काउंटर। यह बड़े I2C डिस्प्ले का उपयोग करता है जिसकी मैंने कुछ सप्ताह पहले समीक्षा की थी ताकि ग्राहकों की संख्या को दूर से देखने में आसान के साथ प्रदर्शित किया जा सके। काउंटर का एनक्लोजर लकड़ी के फिलामेंट का उपयोग करके 3डी प्रिंटेड है। मैंने इस बार दो अलग-अलग लकड़ी के फिलामेंट्स का इस्तेमाल किया और मुझे वास्तव में रंग संयोजन पसंद है! मेरी राय में यह बहुत अच्छा लग रहा है। मैं वास्तव में एक YouTube सब्सक्राइबर काउंटर चाहता था जो मुझे प्रेरित रहने में मदद करे! वीडियो बनाने के लिए बहुत अधिक समय और प्रयास की आवश्यकता होती है। जब आप जानते हैं कि 35.000 लोग आपके वीडियो का इंतजार कर रहे हैं, तो आप इन सभी लोगों को संतुष्ट रखने के लिए कड़ी मेहनत करते हैं, यह आपको एक बड़ा मकसद देता है। तो, यह काउंटर मुझे केंद्रित रहने में मदद करेगा। आइए अब देखें कि इस परियोजना को कैसे बनाया जाए!

चरण 1: सभी भागों को प्राप्त करें

सभी भागों को प्राप्त करें
सभी भागों को प्राप्त करें
सभी भागों को प्राप्त करें
सभी भागों को प्राप्त करें

परियोजना वास्तव में सरल और निर्माण में आसान है। इस परियोजना को बनाने के लिए आवश्यक भाग निम्नलिखित हैं:

  • एक Wemos D1 मिनी बोर्ड ▶
  • एक 20x4 एलसीडी डिस्प्ले ▶
  • कुछ तार ▶
  • पावर बैंक ▶

इलेक्ट्रॉनिक्स की लागत 10$ से कम है

यदि आप बाड़े को 3 डी प्रिंट करने जा रहे हैं तो आपको लकड़ी के फिलामेंट के दो रोल की भी आवश्यकता होगी। मैंने FormFutura की ईज़ी वुड बर्च और कोकोनट फिलामेंट्स का इस्तेमाल किया।

नारियल का रेशा ▶

बिर्च फिलामेंट ▶

बाड़े के लिए, हमें लगभग १००gr सामग्री की आवश्यकता है, इसलिए इसकी लागत लगभग ५ डॉलर होगी। इसलिए परियोजना की कुल लागत लगभग १५ डॉलर है।

चरण 2: Wemos D1 मिनी बोर्ड

Image
Image

Wemos D1 मिनी शानदार नया बोर्ड है जिसकी कीमत लगभग $5 है!

बोर्ड बहुत छोटा है। यह ESP8266 EX चिप का उपयोग करता है जो 160MHz तक की आवृत्ति पर काम कर सकता है। इसमें आपके प्रोग्राम को स्टोर करने के लिए बहुत सारी मेमोरी, 64Kb इंस्ट्रक्शन रैम, 96Kb डेटा रैम और 4MB फ्लैश मेमोरी है। यह वाईफाई कनेक्टिविटी, ओवर द एयर अपडेट और बहुत कुछ प्रदान करता है। D1 मिनी बोर्ड 11 GPIO पिन और एक एनालॉग इनपुट प्रदान करता है। अपने छोटे आकार के बावजूद इस बोर्ड के लिए कई ढाल विकसित किए जा रहे हैं जो मुझे लगता है कि बहुत अच्छा है, क्योंकि इस तरह हम आसानी से महान इंटरनेट ऑफ थिंग्स परियोजनाओं का निर्माण कर सकते हैं! बेशक हम Arduino IDE का उपयोग करके इस बोर्ड को प्रोग्राम कर सकते हैं।

बोर्ड अपने छोटे आकार के बावजूद प्रदर्शन में अन्य सभी Arduino संगत बोर्डों से बेहतर प्रदर्शन करता है। मैंने ESP8266 और Arduino के बीच तुलना की है, आप इस चरण में मेरे द्वारा संलग्न वीडियो की जांच कर सकते हैं। यह बोर्ड Arduino Uno से 17 गुना तेज है! यह सबसे तेज़ Arduino बोर्ड, Arduino ड्यू को भी मात देता है। वह सब, $6 से कम की लागत के साथ! प्रभावशाली।

इसे यहाँ प्राप्त करें ▶

चरण 3: 20x4 कैरेक्टर एलसीडी डिस्प्ले

Image
Image
प्रोटोटाइप सर्किट बनाएँ
प्रोटोटाइप सर्किट बनाएँ

मैंने इस डिस्प्ले को कुछ समय पहले Banggood.com पर खोजा था। इसने मेरा ध्यान आकर्षित किया क्योंकि यह सस्ता है, इसकी कीमत लगभग 7$ है, यह बड़ा है, और यह I2C इंटरफ़ेस का उपयोग करता है। चूंकि यह I2C इंटरफ़ेस का उपयोग करता है इसलिए Arduino के साथ इसका उपयोग करना बेहद आसान है। हमें केवल दो तारों को जोड़ने की जरूरत है। मुझे कुछ परियोजनाओं के प्रोटोटाइप के लिए एक बड़े, आसानी से कनेक्ट होने वाले डिस्प्ले की आवश्यकता थी और I2C इंटरफ़ेस का उपयोग करने वाला एकमात्र डिस्प्ले यह छोटा OLED डिस्प्ले था। अब हमारे पास अपनी परियोजनाओं में उपयोग करने के लिए एक बड़ा I2C डिस्प्ले है! महान!

जैसा कि आप देख सकते हैं, डिस्प्ले वास्तव में बड़ा है। यह प्रति पंक्ति 20 वर्ण प्रदर्शित कर सकता है, और इसमें 4 पंक्तियाँ हैं। यह ग्राफिक्स नहीं बना सकता, सिर्फ अक्षर। पीछे की तरफ हम डिस्प्ले पर सोल्डरेड एक छोटा ब्लैक बोर्ड पा सकते हैं। ब्लैक बोर्ड पर एक ट्रिम्पोट है जो एलसीडी के कंट्रास्ट को नियंत्रित करता है।

इसे यहाँ प्राप्त करें ▶

चरण 4: प्रोटोटाइप सर्किट बनाएँ

प्रोटोटाइप सर्किट बनाएँ
प्रोटोटाइप सर्किट बनाएँ
प्रोटोटाइप सर्किट बनाएँ
प्रोटोटाइप सर्किट बनाएँ

कनेक्शन आसान नहीं हो सका।

एलसीडी डिस्प्ले को जोड़ना

  • डिस्प्ले का Vcc Wemos D1 mini के 5V आउटपुट में जाता है
  • डिस्प्ले का GND Wemos GND में जाता है
  • डिस्प्ले का SDA पिन Wemos बोर्ड के D2 पिन में जाता है
  • डिस्प्ले का SCL पिन Wemos बोर्ड के D1 पिन पर जाता है

इतना ही! अब अगर हम प्रोजेक्ट को चालू करते हैं तो हम देख सकते हैं कि कुछ सेकंड के बाद बोर्ड वाईफाई नेटवर्क से जुड़ा है और स्क्रीन पर इस चैनल के सब्सक्राइबर्स की संख्या बड़ी संख्या के साथ प्रदर्शित होती है। प्रोजेक्ट उम्मीद के मुताबिक काम करता है इसलिए हम आगे बढ़ सकते हैं।

चरण 5: 3डी एनक्लोजर प्रिंट करें

3D संलग्नक प्रिंट करें
3D संलग्नक प्रिंट करें
3D संलग्नक प्रिंट करें
3D संलग्नक प्रिंट करें
3D संलग्नक प्रिंट करें
3D संलग्नक प्रिंट करें

अगला कदम बाड़े को 3डी प्रिंट करना है। मैंने फ्यूजन 360 फ्री सॉफ्टवेयर का उपयोग करके इस एनक्लोजर को डिजाइन किया है।

मैंने कई अलग-अलग 3D डिज़ाइन सॉफ़्टवेयर आज़माए लेकिन फ़्यूज़न 360 निम्नलिखित कारणों से मेरा पसंदीदा बन गया।

  • यह बहुत शक्तिशाली है और यह मुफ़्त है
  • इसका उपयोग करना अपेक्षाकृत आसान है
  • इस सॉफ़्टवेयर का उपयोग करने के तरीके पर ऑनलाइन बहुत सारे ट्यूटोरियल हैं

मुझे इस बाड़े को डिजाइन करने में लगभग एक घंटे का समय लगा और यह ध्यान में रखा कि मैं ३डी डिज़ाइन और ३डी प्रिंटिंग के लिए बहुत नया हूँ। मैंने डिज़ाइन फ़ाइलों को थिंगविवर्स पर अपलोड कर दिया है और उन्हें मुफ्त में डाउनलोड कर सकता हूं।

मैंने दो हिस्सों के लिए फॉर्मफ्यूचुरा के ईज़ीवुड नारियल फिलामेंट का इस्तेमाल किया, और सामने वाले हिस्से के लिए बर्च फिलामेंट का इस्तेमाल किया।

इसे यहाँ प्राप्त करें ▶

चरण 6: 3D प्रिंट समाप्त करें

3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें
3D प्रिंट समाप्त करें

यह एक आसान और त्वरित प्रिंट था। अपने वान्हो i3 3डी प्रिंटर का उपयोग करके सभी भागों को प्रिंट करने में मुझे लगभग 5 घंटे लगे। लेकिन परिणाम शानदार था!

भागों के छपने के बाद, मैंने उन्हें महीन रेत के कागज से रेत दिया और फिर मैंने उन पर लकड़ी का वार्निश लगाया। मैंने प्रत्येक रंग के लिए अलग-अलग लकड़ी के वार्निश का इस्तेमाल किया और मैंने इसे कपड़े के एक छोटे टुकड़े का उपयोग करके लगाया।

इसके बाद, मैंने वार्निश को 24 घंटों तक सूखने दिया और अंतिम परिणाम बहुत अच्छा है!

चरण 7: सब कुछ एक साथ जोड़ना

सब कुछ एक साथ जोड़ना
सब कुछ एक साथ जोड़ना
सब कुछ एक साथ जोड़ना
सब कुछ एक साथ जोड़ना
सब कुछ एक साथ जोड़ना
सब कुछ एक साथ जोड़ना

वार्निश सूख जाने के बाद इलेक्ट्रॉनिक्स को बाड़े के अंदर रखने का समय आ गया था।

मैंने सामने के टुकड़े को जगह में चिपका दिया और फिर मैंने डिस्प्ले को उसकी सही स्थिति में रख दिया।

मैंने डिस्प्ले को ठीक रखने के लिए कुछ हॉट ग्लू का भी इस्तेमाल किया। फिर मैंने कुछ महिला तारों को Wemos D1 मिनी पिन में मिलाया, जिसका हम उपयोग कर रहे हैं, और फिर मैंने उन्हें डिस्प्ले से जोड़ा। मैंने यह देखने के लिए परियोजना का परीक्षण किया कि सब कुछ ठीक काम कर रहा है, और फिर मैंने बोर्ड को गोंद करने के लिए गर्म गोंद का उपयोग किया। अंतिम चरण बाड़े के पिछले कवर को गोंद करना था!

हमारा प्रोजेक्ट तैयार है और यह बहुत अच्छा लग रहा है! मेरी राय में यह प्लास्टिक की तरह नहीं दिखता है जैसे अधिकांश 3 डी प्रिंटेड ऑब्जेक्ट दिखते हैं! मैं वास्तव में प्यार करता हूँ कि यह कैसे निकला। आइए अब प्रोजेक्ट का कोड देखें।

चरण 8: परियोजना का कोड

परियोजना का कोड
परियोजना का कोड
परियोजना का कोड
परियोजना का कोड
परियोजना का कोड
परियोजना का कोड
परियोजना का कोड
परियोजना का कोड

प्रोजेक्ट YouTube API का उपयोग करके किसी दिए गए YouTube चैनल के ग्राहकों की संख्या पुनर्प्राप्त करता है। हम एक Google सर्वर को एक अनुरोध भेजते हैं और सर्वर एक JSON फ़ाइल के साथ ग्राहकों की संख्या के साथ जवाब देता है। YouTube API का उपयोग करने के लिए हमारे पास एक API कुंजी होनी चाहिए।

आइए पहले ऐसा करते हैं। इसलिए, हमने अपने Google खाते में लॉग इन किया है और डेवलपर कंसोल पर जाएं। (https://console.developers.google.com) हम एक नया प्रोजेक्ट बनाने के लिए क्लिक करते हैं, हम इसे एक नाम देते हैं और हम create दबाते हैं। फिर चयनित नए प्रोजेक्ट के साथ हम YouTube डेटा API सक्षम करते हैं। अंतिम चरण क्रेडेंशियल्स बनाना है। हम क्रेडेंशियल कुंजी दबाते हैं और फिर दिखाई देने वाली विंडो से हम एक नई एपीआई कुंजी बनाने के लिए चुनते हैं। हम करीब दबाते हैं और हम कर रहे हैं। अधिक जानकारी के लिए, पहले चरण से जुड़ा वीडियो देखें।

आइए अब परियोजना के कोड पर एक त्वरित नज़र डालें। सबसे पहले हमें कुछ लाइब्रेरी डाउनलोड करनी होगी। हमें लिक्विड क्रिस्टल_आई2सी लाइब्रेरी के एक संस्करण की आवश्यकता है जो ईएसपी8266 चिप के साथ काम करता है। हमें उत्कृष्ट ArduinoJSON लाइब्रेरी की भी आवश्यकता है।

  1. Arduino JSON:
  2. प्रदर्शन पुस्तकालय:

आगे हमें कुछ वेरिएबल्स को परिभाषित करना होगा। हम वाईफाई कनेक्शन के लिए ssid और पासवर्ड सेट करते हैं। हमें उपयुक्त चर में बनाई गई एपीआई कुंजी भी दर्ज करनी होगी। अंत में हमें उस YouTube चैनल के channelID को दर्ज करना होगा जिसे हम सब्सक्राइबर की संख्या की जांच करना चाहते हैं।

कास्ट चार * एसएसआईडी = "एसएसआईडी"; // स्थानीय नेटवर्क कॉन्स्ट चार * पासवर्ड का एसएसआईडी = "पासवर्ड"; // नेटवर्क पर पासवर्ड स्ट्रिंग apiKey = "YourAPIKEY"; // एपीआई कुंजी स्ट्रिंग channelId = "UCxqx59koIGfGRRGeEm5qzjQ"; // यूट्यूब चैनल आईडी

कोड अपेक्षाकृत सरल है। सबसे पहले हम डिस्प्ले को इनिशियलाइज़ करते हैं और हम डिस्प्ले के लिए कुछ कस्टम कैरेक्टर बनाते हैं। बड़े अंक बनाने के लिए हमें इन पात्रों की आवश्यकता है। मत भूलो, हम जिस डिस्प्ले का उपयोग कर रहे हैं वह कैरेक्टर एलसीडी डिस्प्ले है, यह ग्राफिक्स प्रदर्शित नहीं कर सकता है। यह केवल पाठ की 4 पंक्तियों को प्रदर्शित कर सकता है। बड़ी संख्याएँ बनाने के लिए, हम टेक्स्ट की दो पंक्तियों और कुछ कस्टम वर्णों का उपयोग करते हैं!

शून्य सेटअप () {Serial.begin (९६००); इंट कर्सरपोजिशन = 0;

LCD.begin(20, 4);

LCD.setCursor(0, 0); LCD.print ("कनेक्ट कर रहा है ….");

क्रिएट कस्टमचर्स ();

वाईफाई.बेगिन (एसएसआईडी, पासवर्ड); जबकि (WiFi.status() != WL_CONNECTED) {देरी (500); LCD.setCursor (कर्सरपोजिशन, 1); एलसीडी.प्रिंट ("।"); कर्सरपोजिशन ++; }

फिर हम वाईफाई से जुड़ते हैं और हमें हर मिनट ग्राहक मिलते हैं। ग्राहकों की संख्या प्राप्त करने के लिए, हम एक Google सर्वर को एक अनुरोध भेजते हैं, और हम JSON जुर्माना को पार्स करते हैं जो ArduinoJSON लाइब्रेरी का उपयोग करके प्रतिक्रिया करता है। हम सब्सक्राइबर काउंट को एक वेरिएबल में सेव करते हैं। लूप फंक्शन में हम जांचते हैं कि क्या सब्सक्राइबर काउंट में कोई बदलाव है, हम डिस्प्ले को क्लियर करते हैं और हम नया नंबर प्रिंट करते हैं।

शून्य लूप () {इंट लंबाई; स्ट्रिंग सब्सक्राइबरस्ट्रिंग = स्ट्रिंग (getSubscribers ()); अगर (ग्राहक! = ग्राहक पहले) {lcd.clear (); लंबाई = ग्राहकस्ट्रिंग। लंबाई (); प्रिंट सब्सक्राइबर्स (लंबाई, सब्सक्राइबरस्ट्रिंग); सब्सक्राइबर बिफोर = सब्सक्राइबर; } देरी (६००००); }

हमेशा की तरह आप इस निर्देश में संलग्न परियोजना का कोड पा सकते हैं। चूंकि मैं समय-समय पर कोड को अपडेट करता हूं, कोड के नवीनतम संस्करण के लिए कृपया प्रोजेक्ट की वेबसाइट देखें:

चरण 9: अंतिम परिणाम

अंतिम परिणाम
अंतिम परिणाम
अंतिम परिणाम
अंतिम परिणाम

एक अंतिम विचार के रूप में, मैं वास्तव में इस परियोजना से प्यार करता हूँ। यह निर्माण करना वास्तव में आसान और सस्ता था। बेशक सुधार की गुंजाइश है। हम बाड़े के अंदर एक बैटरी या ध्वनि भी जोड़ सकते हैं। मैं वेमोस बैटरी शील्ड के साथ 18650 लिथियम बैटरी जोड़ने के बारे में सोच रहा हूं। मैंने इसे इस परियोजना में नहीं किया क्योंकि मुझे वेमोस बैटरी शील्ड का कुछ और परीक्षण करने की आवश्यकता है। यह छोटा शील्ड लिथियम बैटरी को चार्ज और सुरक्षित कर सकता है इसलिए यह हमारी परियोजनाओं में रिचार्जेबल बैटरी जोड़ने का एक आसान तरीका प्रदान करता है।

मुझे इस परियोजना के बारे में आपकी राय जानना अच्छा लगेगा। क्या आपको यह पसंद है कि यह कैसा दिखता है और क्या आप इस परियोजना में किसी सुधार के बारे में सोच सकते हैं? कृपया अपनी टिप्पणी नीचे टिप्पणी अनुभाग में पोस्ट करें।

सिफारिश की: