विषयसूची:

विशालकाय एलईडी - एडम सैवेज को ट्रैक करना: 13 कदम (चित्रों के साथ)
विशालकाय एलईडी - एडम सैवेज को ट्रैक करना: 13 कदम (चित्रों के साथ)

वीडियो: विशालकाय एलईडी - एडम सैवेज को ट्रैक करना: 13 कदम (चित्रों के साथ)

वीडियो: विशालकाय एलईडी - एडम सैवेज को ट्रैक करना: 13 कदम (चित्रों के साथ)
वीडियो: कोर्ट केस की तारीख कैसे देखें 2023 l How can know court date in case l e court date 2023 2024, नवंबर
Anonim
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज
विशालकाय एलईडी - ट्रैकिंग एडम सैवेज

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

जाहिर है कि मैं अपने फोन या लैपटॉप पर ट्विटर, ट्विच आदि का उपयोग कर सकता था, लेकिन इतनी सारी सेवाओं और सूचनाओं से इतने अलर्ट हैं कि मैं मूल रूप से उन सभी को बंद कर देता हूं, साथ ही फोन रात 10 बजे के बाद साइलेंट मोड में चला जाता है। Webhooks मेरे पास कुछ Biq Query तालिकाओं से अपडेट प्राप्त करने के लिए भी कॉन्फ़िगर किया गया है जो काम से संबंधित हैं ताकि मुझे यह बताने के लिए कि क्या उन्हें प्रत्येक दिन पर्याप्त संख्या में रिकॉर्ड के साथ ओके अपडेट किया गया है।

Adafruit के पास Adafruit IO नाम की एक सेवा है जिसे मैं आज़माना चाहता था और Wemos D1 मिनी रिलीज़ 3 पर कुछ अच्छे शब्द सुनने के बाद ESP8266 को फिर से आज़माने और फिर से निपटने के लिए मेरा मतलब पूरे साल रहा है। यह सब एक साथ आने लगा जब मुझे एक मिला एस्ट्रो73 द्वारा विभिन्न चीजों पर एलईडी के लिए डिजाइन। मैंने इसके साथ शुरुआत की और इसे स्केल के लिए थोड़ा सा फिर से काम किया और बेस में एक पुश बटन और कुछ अन्य कॉस्मेटिक बदलाव भी जोड़े। आप रीमिक्स यहां देख सकते हैं

साथ ही इसे अब एलेक्सा के माध्यम से आवाज नियंत्रित किया जा सकता है और साथ ही आईएफटीटीटी एलेक्सा ट्रिगर शब्द के आगमन के साथ।

चरण 1: सामग्री

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

1. Wemos D1 मिनी R3

2. नियोपिक्सल 8 एलईडी

3. काले पीईटीजी में मुद्रित आधार और पैर

4. पारदर्शी पीएलए में मुद्रित लेंस और प्रकाश धारक

5. पुश बटन स्विच 12 मिमी वर्ग X1

6. गोल पुश बटन कैप X1

7. यूएसबी लीड और पावर के लिए एडॉप्टर

8. M3x20 बटन हेड

9. एम3 नट

10. M2x8mm बोल्ट x2

11. M2 नट x2

12. कुछ काले, लाल और पीले तार

13. 300-500 ओम रेसिस्टर

14. हीटश्रिंक का छोटा टुकड़ा

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

चरण 2: उपकरण

इसे बनाने और बनाने के लिए आपको निम्नलिखित की आवश्यकता होगी

1. 3डी प्रिंटर

2. 1.5 मिमी और 2 मिमी एलन कुंजी

3. सोल्डरिंग आयरन और सोल्डर

4. वायरकटर

5. सरौता

6. सेंस ऑफ ह्यूमर

7. ट्रिमिंग के लिए स्केलपेल

चरण 3: कोड आवश्यकताएँ

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

आवश्यकताएं।

मैं चाहता था कि जब कोई नया ट्वीट या वीडियो पोस्ट किया गया तो एलईडी मुझे दिखाए और यह भी पता चले कि जब एक विशिष्ट ट्विच चैनल शुरू होता है। मैं यह भी चाहता था कि अलर्ट तब तक चलता रहे जब तक कि मैं इसे रद्द नहीं कर देता ताकि अगर मैं थोड़ी देर के लिए दूर होता तो मुझे पता चलता कि मेरे दूर रहने के दौरान क्या हुआ था। मैं यह भी चाहता था कि यह सॉफ़्टवेयर को रीफ़्लैश किए बिना वाई-फाई एक्सेस के लिए भी कॉन्फ़िगर करने योग्य हो। एक आखिरी चीज जो सामने आई, वह थी लाइव इवेंट का जवाब देने के अलावा, मुझे हर 15 मिनट में इसे फीड किए गए डेटा की स्थिति की जांच करने की आवश्यकता थी।

तो बुनियादी बातों के साथ, अगली बात यह तय करना था कि प्रत्येक भाग को कैसे निष्पादित किया जा रहा है। आप नीचे मेरे विचार देख सकते हैं कि किस भाग को किस प्रकार के सॉफ़्टवेयर या प्लेटफ़ॉर्म द्वारा नियंत्रित किया जाएगा।

1. Adafruit IO, इसका उपयोग अलर्ट के लिए फ़ीड सेट करने के लिए किया जाता है, आप यहां एक खाता प्राप्त कर सकते हैं

मैं इसे एक संदेश कतार सेवा के रूप में उपयोग करने जा रहा हूं जहां मैं इसे आईएफटीटीटी से संदेश भेजूंगा और फिर विशालकाय एलईडी उन संदेशों को प्राप्त करेगा ताकि यह उन पर कार्य कर सके।

2. IFTTT, https://ifttt.com/ और इसका उपयोग चुने हुए Twitter, YouTube और Twitch चैनलों को स्कैन करने के लिए किया जाता है और फिर ईवेंट को Adafruit IO को भेजता है।

3. इन फीड्स को पढ़ने के लिए ESP8266 कोड और इसे मानक Arduino IDE (v1.8.8) का उपयोग करके ESP8266 में जला दिया जाता है।

4. Arduino कोड, ESP8266 पर लोड किया गया ताकि Adafruit IO फ़ीड्स को पढ़ सके और Neopixel को हल्का कर सके

5. चेतावनी साफ़ करने के लिए एक पुश बटन पढ़ने के लिए Arduino कोड

6. ईएसपी को फिर से जलाए बिना वाईफाई एडाप्टर को कॉन्फ़िगर करने में सक्षम हो, और इसके लिए मैंने Tzapu द्वारा वाईफाई प्रबंधक पुस्तकालय का उपयोग किया, https://github.com/tzapu/WiFiManager हालांकि सेटअप विकल्पों को समायोजित करने के लिए थोड़ा बदलाव की जरूरत है एडफ्रूट आईओ पुस्तकालय।

चरण 4: एडफ्रूट आईओ सेट करना

एडफ्रूट आईओ सेट करना
एडफ्रूट आईओ सेट करना

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

एडफ्रूट के उदाहरणों को कॉपी करने के बजाय आप मूल बातें यहां https://learn.adafruit.com/gmailbox/adafruit-io-se… पा सकते हैं जो आपको सेटअप कर देगी।

फिर GIANT LED के लिए आपको निम्नलिखित फीड्स को डिफ़ॉल्ट चैनलों में भी जोड़ना होगा

1. रंग - यह हमें एलेक्सा जैसी किसी चीज़ के साथ दूर से रंग बदलने की सुविधा देता है

2. चिकोटी

3. ट्विटर फैन

4. यूट्यूब फैन

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

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

चरण 5: IFTTT सेट करना

IFTTT की स्थापना
IFTTT की स्थापना
IFTTT की स्थापना
IFTTT की स्थापना

आप यहां एडफ्रूट गाइड का भी अनुसरण कर सकते हैं, https://learn.adafruit.com/gmailbox/ifttt-setup। फिर आप अपनी वॉच लिस्ट सेट करने के लिए ट्विटर, यूट्यूब और ट्विच एक्शन का चयन कर सकते हैं और फिर इन्हें संबंधित फीड में भेज सकते हैं। मैंने एक साधारण वीडियो संलग्न किया है ताकि आप देख सकें कि यह कितनी जल्दी हो सकता है।

इसके अलावा यदि आप एलेक्सा द्वारा अपने एलईडी के रंग को नियंत्रित करना चाहते हैं तो अब एक अमेज़ॅन एलेक्सा एप्लेट है। इनमें से किसी एक को सेट करने के लिए ऐप का चयन करें और नीला शब्द चुनें, फिर इसे एडफ्रूट फ़ीड से कनेक्ट करें जिसे आपने रंग कहा है और उस चैनल को भेजने के लिए डेटा के रूप में 0000ff दर्ज करें। यदि आप चाहें तो रीसेट या रिबूट जैसे GIANT LED को इस तरह से अतिरिक्त कमांड भी पास कर सकते हैं।

जब आप IFTTT ट्रिगर सेट कर रहे हों, तो आपको भेजे गए डेटा को चुनना होगा और इसे IFTTT में "सामग्री" कहा जाता है। पहला टुकड़ा जो हमें चाहिए वह है "यूजरनेम" फिर एक स्पेस और फिर "क्रिएटेडएट"

हम दोनों आइटम चुनते हैं ताकि जब डेटा ESP8266 में आता है तो हम यह पता लगा सकते हैं कि क्या यह एक नया ट्वीट है और यह समान उपयोगकर्ताओं के पिछले ट्वीट्स से अलग है। आप देख सकते हैं कि संलग्न छवि से इसे क्या पसंद करना चाहिए।

चरण 6: Arduino IDE में ESP8266 बोर्ड स्थापित करना

यह वह जगह है जहां चीजें थोड़ी पेचीदा होती हैं और इसे सुलझने में थोड़ा और समय लग सकता है। ESP8266 के अलावा आपको Adafruit IO पुस्तकालयों की भी आवश्यकता है और आप उनके लिए इस गाइड का अनुसरण कर सकते हैं।

learn.adafruit.com/gmailbox/arduino-setup

यहाँ ESP8266 बोर्डों को जोड़ने के साथ-साथ

यह सुनिश्चित करना न भूलें कि आपका Arduino IDE नवीनतम संस्करण तक है और मैं इसे लिखते समय 1.8.8 का उपयोग कर रहा था।

एक अन्य लाइब्रेरी जिसका हम उपयोग करते हैं, वह है सिंपलटाइमर क्योंकि यह हमें एक बैकग्राउंड टाइमर सेट करने की अनुमति देगा ताकि हम समय-समय पर फीड्स की जांच कर सकें, इसके लिए निर्देश simpletimer https://playground.arduino.cc/Code/SimpleTimer# के उपयोग पर देखे जा सकते हैं। डाउनलोड

चरण 7: वाईफाई प्रबंधक पुस्तकालय स्थापित करना

वाईफाई सेटअप के रिमोट कॉन्फ़िगरेशन को प्राप्त करने में सक्षम बनाने के लिए हम तज़ापू वाईफाई मैनेजर का उपयोग करने जा रहे हैं, इस पर विवरण और पुस्तकालयों को कैसे स्थापित किया जा सकता है, यहां पाया जा सकता है, github.com/tzapu/WiFiManager

यह बाहरी पुस्तकालयों की एक बहुत ही सरल स्थापना है और विकल्प पहले से ही आपके Arduino IDE उपकरण अनुभाग के पुस्तकालय प्रबंधित करें अनुभाग में है।

चरण 8: ESP8266 कोड - डीबग प्रिंटिंग के साथ

// इस कोड में प्रिंट स्टेटमेंट होते हैं ताकि आप सीरियल मॉनिटर के माध्यम से इसके संचालन की निगरानी कर सकें

// एडफ्रूट आईओ आरजीबी एलईडी आउटपुट उदाहरण के आधार पर // एडफ्रूट इस ओपन सोर्स कोड को प्रदान करने में समय और संसाधनों का निवेश करता है। // कृपया एडफ्रूट से // उत्पादों को खरीदकर एडफ्रूट और ओपन सोर्स हार्डवेयर का समर्थन करें! // // एडफ्रूट इंडस्ट्रीज के लिए टॉड ट्रीस द्वारा लिखित // कॉपीराइट (सी) 2016-2017 एडफ्रूट इंडस्ट्रीज // एमआईटी लाइसेंस के तहत लाइसेंस प्राप्त है। // // उपरोक्त सभी पाठों को किसी भी पुनर्वितरण में शामिल किया जाना चाहिए। // सरल टाइमर का उपयोग करता है https://playground.arduino.cc/Code/SimpleTimer#Do… // https://playground.arduino.cc/Code/SimpleTimer#Do… // अजाक्स जोन्स द्वारा शेष कोड https:// खेल का मैदान.arduino.cc/Code/SimpleTimer#Do // https://playground.arduino.cc/Code/SimpleTimer#Do… // ***** ******* कॉन्फ़िगरेशन *********************/ # IO_USERNAME को परिभाषित करें "आपका आईओ उपयोगकर्ता नाम" #define IO_KEY "आपकी IO कुंजी" // खाली छोड़ दें क्योंकि हम उन्हें वाईफाई प्रबंधक के माध्यम से प्राप्त करेंगे, ऐसा लगता है कि यह ठीक काम कर रहा है #define WIFI_SSID "" #define WIFI_PASS "" // हम इसे AdafruitIO के रूप में शामिल नहीं करेंगे इसके संस्करण को शामिल करें //#include //https://github.com/esp8266/Arduino // लाइब्रेरी के लिए आवश्यक #include #include #include "WiFiManager.h" //https://github.com/tzapu/WiFiManager # SimpleTimer टाइमर शामिल करें; #शामिल "AdafruitIO_WiFi.h" AdafruitIO_WiFi io(IO_USERNAME, IO_KEY, WIFI_SSID, WIFI_PASS); //********** नियोपिक्सल कॉन्फिग ********* *********// #include "Adafruit_NeoPixel.h" #define PIXEL_PIN 5 #define PIXEL_COUNT 8 int NUM_LEDS = PIXEL_COUNT; #define PIXEL_TYPE NEO_GRB + NEO_KHZ800 Adafruit_NeoPixel पिक्सल = Adafruit_NeoPixel(PIXEL_COUNT, PIXEL_PIN, PIXEL_TYPE); // मुख्य रंग और डिफ़ॉल्ट रंग लंबा डिफ़ॉल्ट_रंग = ८६५५५४; लंबा RED_color = २६८९०२७; // लाल # २९०८०३ लंबा हरा रंग = ८६५५५४; // हरा #0d3512 लंबा BLUE_color = 856117; // नीला # 0d1035 लंबा PURPLE_color = 2364968; // बैंगनी # २४१६२८ लंबा BRIGHTRED_color = १५९९०७८४; // चमकदार लाल #f40000 // ------------------------------------------- ----------------------------------------------- //समय विचार https://www.safaribooksonline.com/library/view/arduino-cookbook-2nd/9781449321185/ch12.html https://playground.arduino.cc/Code/SimpleTimer#Do… https://playground से लिया गया है। arduino.cc/Code/SimpleTimer#Do… const long oneSecond = 1000; // एक सेकंड एक हजार मिलीसेकंड लंबा एक मिनट = एक सेकंड * 60 है; लंबे समय तक पांच मिनट = एक मिनट * 5; लंबे समय तक पंद्रह मिनट = पांच मिनट * 3; लंबा एक घंटा = पन्द्रह मिनट * 4; // ट्विटर उपयोगकर्ता जिन्हें हम सबसे ज्यादा पसंद करते हैं और ये फ्लैश होंगे और हमारे द्वारा चुने गए अन्य सभी ट्वीट्स सिर्फ रंग बदल देंगे स्ट्रिंग सुपरट्वीट = {"ajaxjones", "donttrythis", "prodnose", "testedcom"}; स्ट्रिंग सुपरट्यूबर = {"परीक्षित", "कोवान", "मार्टी"}; // अलर्ट स्थिति सेट करता है ताकि हम मुख्य लूप बूल WHIZZY_TWEET = false में LEDS को फ्लैश करते रहें; बूल WHIZZY_TUBER = असत्य; बूल WHIZZY_TWITCH = असत्य; // अंतिम ट्वीट और यूट्यूब को सहेजता है ताकि हम सेवा को हर बार दोबारा जांचने के लिए पोक कर सकें और फिर स्ट्रिंग lasttweet = ""; स्ट्रिंग लास्टट्यूब = ""; स्ट्रिंग लास्टविच = ""; // डिजिटल पिन 5, यह वह बटन है जिसका उपयोग हम अलर्ट रंगों को रीसेट करने के लिए करते हैं #define BUTTON_PIN 4 // बटन स्थिति, वास्तव में इसका उपयोग नहीं किया जाता है क्योंकि हम इंटरप्ट बूल करंट पर बटन की तलाश कर रहे हैं = झूठा; बूल अंतिम = झूठा; // 'रंग' फ़ीड सेट करें, बस हम मांग पर रंगों का परीक्षण और भेज सकते हैं या एलेक्सा ट्रिगर का उपयोग कर सकते हैं AdafruitIO_Feed *color = io.feed("color"); // 'ट्विटरफैन' फीड सेट करें - ब्लू एडफ्रूटआईओ_फीड *ट्विटर = आईओ.फीड ("ट्विटरफैन"); // 'youtubefan' फ़ीड सेट करें - Red AdafruitIO_Feed *youtube = io.feed("youtubefan"); // 'चिकोटी' फ़ीड सेट करें - बैंगनी AdafruitIO_Feed *twitch = io.feed("twitch"); // 'डिजिटल' फ़ीड सेट करें AdafruitIO_Feed *digital = io.feed("input.digital"); //----------------------------------------------------- ---------------------------------------- शून्य सेटअप () {// सेट करें इनपुट के रूप में बटन पिन, हम INPUT_PULLUP का उपयोग करते हैं क्योंकि हमें बाहरी प्रतिरोधों पिनमोड (BUTTON_PIN, INPUT_PULLUP) का उपयोग नहीं करना है; // बटन अटैचइंटरप्ट (डिजिटलपिनटोइंटरप्ट (बटन_पिन), हैंडलइंटरप्ट, फॉलिंग) के लिए आईएसआर वेक्टर में एक इंटरप्ट संलग्न करें; // सीरियल शुरू करें और सीरियल मॉनिटर के खुलने का इंतजार करें फिर io.adafruit.com Serial.begin(115200) से कनेक्ट करें; जबकि (! सीरियल); // नियोपिक्सल पिक्सेल शुरू करें। शुरू करें (); // प्रारंभिक स्थिति को लाल रंग में सेट करें ताकि हम जान सकें कि हम ऑफ़लाइन हैं और काम कर रहे हैं सेटऑल (0xf4, 0x00, 0x00); // लाल // परीक्षण के लिए, यह वाईफाई वाईफाई की स्थिति दिखाएगा।प्रिंटडिआग (सीरियल); वाईफाई प्रबंधक वाईफाई प्रबंधक; // सेट कॉलबैक जिसे पिछले वाईफाई से कनेक्ट होने पर कॉल किया जाता है, विफल हो जाता है, और एक्सेस प्वाइंट मोड में प्रवेश करता है wifiManager.setAPCallback(configModeCallback); // सहेजी गई सेटिंग्स को रीसेट करें, वाईफाई प्रबंधक के परीक्षण को मजबूर करने के लिए इस अगली पंक्ति पर टिप्पणी न करें ताकि आप कनेक्ट कर सकें // अपने फोन या टैबलेट का उपयोग विशालकाय एलईडी नेटवर्क को देखने के लिए करें जो दिखाई देगा // कॉन्फ़िगरेशन पोर्टल बंद होने तक टाइमआउट सेट करता है // यह सब पुनः प्रयास करने या सोने के लिए उपयोगी है // सेकंड में wifiManager.setTimeout (240); if (!wifiManager.autoConnect("GIANT LED")) { Serial.println (एफ ("कनेक्ट करने और टाइमआउट हिट करने में विफल")); // रीसेट करें और फिर से प्रयास करें देरी (3000); ईएसपी.रीसेट (); देरी (1000); } // परीक्षण के लिए हम देख सकते हैं कि क्या हमारे पास कनेक्ट करने के लिए सही क्रेडेंशियल हैं //Serial.println(WiFi. SSID ()); //Serial.println(WiFi.psk ());//WiFi.begin (WIFI_SSID, WIFI_PASS); // जबकि (WiFi.status() != WL_CONNECTED) {//delay(500); // सीरियल.प्रिंट ("।"); //} सीरियल.प्रिंट्लन (); Serial.println (एफ ("वाईफाई कनेक्टेड")); Serial.println (एफ ("आईपी पता:")); Serial.println (वाईफाई.लोकलआईपी ()); // अब हम IO सेवा से जुड़ते हैं Serial.print(F("Adafruit IO से कनेक्ट करना")); आईओ.कनेक्ट (); // 'रंग' फ़ीड के लिए एक संदेश हैंडलर सेट करें। रंग-> ऑनमैसेज (हैंडल मैसेज); // 'ट्विटरफैन' फीड के लिए एक संदेश हैंडलर सेट करें। ट्विटर-> संदेश पर (ट्विटर संदेश); // 'youtubefan' फ़ीड के लिए एक संदेश हैंडलर सेट करें। यूट्यूब-> संदेश पर (यूट्यूब संदेश); // 'चिकोटी' फ़ीड के लिए एक संदेश हैंडलर सेट करें। चिकोटी-> संदेश पर (चिकोटी संदेश); // कनेक्शन के लिए प्रतीक्षा करें जबकि (io.status() <AIO_CONNECTED) {Serial.print(F(.")); देरी (500); } // हम जुड़े हुए हैं Serial.println (); Serial.println (io.statusText ()); // Serial.println (आकार (सुपरट्वीट)); // Serial.println (आकार (सुपरट्वीट [0])); // उन ट्विटर खातों की सूची का प्रिंट आउट लें जिनकी हम प्रतीक्षा कर रहे हैं (बाइट idx = 0; idx < sizeof(SuperTweet) / sizeof(SuperTweet[0]); idx++) { Serial.print(F("SuperTweet[")); सीरियल.प्रिंट (आईडीएक्स); सीरियल.प्रिंट ("] = '"); सीरियल.प्रिंट (सुपरट्वीट [idx]); सीरियल.प्रिंट्लन ("'");) -> प्राप्त (); ट्विटर-> प्राप्त करें (); चिकोटी-> प्राप्त करें (); के लिए (int i = 0; मुझे मिलता है (); चहचहाना-> प्राप्त (); चिकोटी-> प्राप्त (); सीरियल.प्रिंट ("कुछ ट्वीट्स प्राप्त करना"); सीरियल.प्रिंट ("अपटाइम (एस):"); सीरियल.प्रिंट्लन (मिलिस () / 1000); } // ---------------- -------------------------------------------------- ----------------------- शून्य लूप () {// io.run (); सभी रेखाचित्रों के लिए आवश्यक है। io.run (); टाइमर। रन (); अगर (WHIZZY_TWEET == सच) {रनिंगलाइट्स (0x0d, 0x10, 0x35, 250); } अगर (WHIZZY_TUBER == सच) {रनिंगलाइट्स (0x29, 0x08, 0x03, 250); } अगर (WHIZZY_TWITCH == सच) {रनिंगलाइट्स (0x24, 0x16, 0x28, 250); }} // --------------------------------- -------------------------------------------------- ------ // बटन दबाए जाने पर अलर्ट को साफ़ करने के लिए इंटरप्ट सेट करें और इंटरनेट शून्य हैंडल इंटरप्ट() { WHIZZY_TWEET = की जांच करें झूठा; WHIZZY_TUBER = झूठा; WHIZZY_TWITCH = असत्य; वर्तमान = सच; // वर्तमान स्थिति को adafruit io पर 'input.digital' फ़ीड पर भेजें ताकि हम इसे डिजिटल देख सकें-> सेव (करंट); के लिए (int i = 0; i ")); Serial.print(current); Serial.print(F(" and default color ")); Serial.println(default_color); current = false; digital->save(current)); जबकि (WiFi.status() != WL_CONNECTED) {देरी (500); setAll(0xeb, 0xfb, 0x03); // पीला ebfb03 } } // -------------- -------------------------------------------------- ------------------------ // जब भी कोई 'ट्विटर' संदेश आता है तो इसे कहा जाता है - एलईडी को ब्लू वॉयड ट्विटरमैसेज (AdafruitIO_Data *data) पर सेट करें {स्ट्रिंग ट्वीटर = (डेटा-> टूस्ट्रिंग ()); ट्वीटर.toLowerCase (); अगर ((अंतिम ट्वीट! = ट्वीटर) && (ट्वीटर! = "")) {अंतिम ट्वीट = ट्वीटर; सेटऑल (0x0d, 0x10, 0x35); // ट्वीट नीला रंग सेट करें। ट्वीट्स whizzy #0d1035 WHIZZY_TWEET = true; Serial.print(" by "); Serial.print(SuperTweet[idx]); }} Serial.println(""); } } // --------- -------------------------------------------------- ---------------------------- - // जब भी कोई 'यूट्यूब' संदेश आता है तो इसे कहा जाता है - एलईडी को लाल शून्य पर सेट करें youtubeMessage(AdafruitIO_Data *data) { String tuber = (data->toString ()); tuber.toLowerCase (); अगर ((लास्टट्यूब! = कंद) && (कंद! = "")) {lasttube = कंद; सभी सेट करें (0x29, 0x08,0x03); // यूट्यूब लाल रंग 290803 सीरियल.प्रिंट (एफ ("यूट्यूब:")) सेट करें; Serial.println (कंद); // एक पसंदीदा Youtuber के लिए जाँच करें (बाइट idx = 0; idx = 0) {// उनके वीडियो को शानदार बनाते हैं #0d1035 WHIZZY_TUBER = true; सीरियल.प्रिंट ("द्वारा"); सीरियल.प्रिंट (सुपरट्यूबर [आईडीएक्स]); } } सीरियल.प्रिंट्लन (""); } } // ------------------------------------------- ------------------------------------------- // इसे जब भी कहा जाता है 'twitch' संदेश आता है - LED को PURPLE पर सेट करें void twitchMessage(AdafruitIO_Data *data) { String twitch = (data->toString ()); twitch.toLowerCase (); अगर ((अंतिम चिकोटी != चिकोटी) && (चिकोटी !="")) { lasttwitch = twitch; सेटऑल (0x24, 0x16, 0x28); // सेट ट्विच पर्पल कलर # 241628 सीरियल.प्रिंट (F ("ट्विच: ")); Serial.println (चिकोटी); // पसंदीदा ट्विचर के लिए कोई चेक नहीं हम केवल एक WHIZZY_TUBER = true का अनुसरण करते हैं; सीरियल.प्रिंट्लन (""); } } // ------------------------------------------- ------------------------------------------- // इस फ़ंक्शन को जब भी कहा जाता है एक 'रंग' संदेश प्राप्त होता है // जो अंतिम रंग फ़ीड मान के आधार पर स्टार्टअप पर डिफ़ॉल्ट रंग सेट करेगा शून्य हैंडलमैसेज (AdafruitIO_Data *data) {// आरजीबी मान और हेक्स मान प्रिंट करें Serial.print(F("Received HEX value): ")); Serial.println (डेटा-> मान ()); लंबा रंग = डेटा-> toNeoPixel (); // डिफ़ॉल्ट_रंग = रंग; Serial.print(F("HEX long प्राप्त:")); सीरियल.प्रिंट्लन (रंग); के लिए (int i = 0; i < PIXEL_COUNT; ++i) { pixels.setPixelColor(i, color); } शोस्ट्रिप (); } // ------------------------------------------- ------------------------------------------- शून्य रनिंगलाइट्स (बाइट रेड, बाइट ग्रीन), बाइट ब्लू, इंट वेवडेले) {इंट पोजीशन = 0; के लिए (int j = 0; j < NUM_LEDS; j++) { स्थिति++; // = 0; // स्थिति + दर; for (int i = 0; i <NUM_LEDS; i++) {setPixel(i, ((sin(i + position) * 127 + 128) / 255)*red, ((sin(i + position) * 127 + 128) / 255) * हरा, ((पाप(i + स्थिति) * 127 + 128) / 255) * नीला); } शोस्ट्रिप (); देरी (वेवडेले); } } // ------------------------------------------- ------------------------------------------- // नियोपिक्सल रूटीन शून्य सेटऑल (बाइट रेड, बाइट ग्रीन, बाइट ब्लू) {के लिए (int i = 0; i getConfigPortalSSID ()); // कॉन्फ़िगरेशन मोड में प्रवेश किया, नियो पिक्सेल को बैंगनी # 241628 = 2364968 // सेटऑल (0x24, 0x16, 0x28) पर सेट करें; सेटऑल (0xeb, 0xfb, 0x03); // पीला ebfb03 }

चरण 9: यह सब एक साथ मिलाप करना

यह सब एक साथ मिलाप
यह सब एक साथ मिलाप
यह सब एक साथ मिलाप
यह सब एक साथ मिलाप
यह सब एक साथ मिलाप
यह सब एक साथ मिलाप

इस डिज़ाइन में सब कुछ एक साथ मिलाप किया गया है और इसे प्रबंधित करना काफी आसान होना चाहिए। मैंने चीजों को आसान बनाने के लिए 3 अलग-अलग रंगीन तारों का उपयोग किया है और पहली बात यह है कि नियोपिक्सल के लिए WEMOS के लिए तार को मापना है। मैंने उन्हें प्लाट किया और हीट-सिकुड़ने का एक छोटा सा टुकड़ा लगाया और फिर उन्हें दिखाए गए अनुसार मिलाप किया ताकि यह लेंस में सपाट हो जाए।

बटन अगला था और आधार में आराम से फिट होगा। बटन का एक किनारा Gnd में जाता है और इसे Neopixel के ग्राउंड वायर के साथ एक साथ घुमाया जाता है। मैंने फिर उन्हें टिन किया और उन्हें WEMOS के ग्राउंड पिन में मिला दिया।

Neopixel के लिए पावर लीड 5v पिन को जाता है। नियोपिक्सल के सिग्नल वायर, या Di (डेटा इन) को Wemos पिन में D1 के रूप में मिलाया जाता है। कुछ साइटें हैं जो इसके साथ श्रृंखला में 300-500 ओम अवरोधक डालने का सुझाव देती हैं, लेकिन अभी तक मुझे कोई समस्या नहीं हुई है, इसलिए अभी इसका सीधा संबंध है।

अच्छा अभ्यास सुनिश्चित करने के लिए, और एडफ्रूट जैसी साइटों की सलाह पर मैंने नियोपिक्सल में Di लाइन के साथ श्रृंखला में 330R रोकनेवाला लगाया है। यह रिंग में पहली एलईडी को जादू की पिक्सी को बाहर निकलने से रोकने के लिए है और बस तार को काटकर और एक रोकनेवाला लगाकर किया जाता है। हीटश्रिंक का एक छोटा सा टुकड़ा किसी भी तरह के शॉर्ट्स को रोक देगा। आप रोकनेवाला को बहुत छोटा काट सकते हैं और बस प्रत्येक छोर में एक घेरा लगा सकते हैं और तार के साथ भी ऐसा ही कर सकते हैं।

बटन के लिए दूसरा तार सीधे D2 को पिन करने के लिए जाता है। पुलअप रोकनेवाला की कोई आवश्यकता नहीं है क्योंकि यह उस पिन के खिलाफ PULLUP कमांड लगाकर सॉफ्टवेयर के भीतर नियंत्रित किया जाता है।

इसमें मूल रूप से बस इतना ही है।

चरण १०: ३डी प्रिंट

यहां संलग्न एसटीएल फाइलें हैं जिनका उपयोग हम विशालकाय एलईडी के लिए कर रहे हैं। फाइलें एस्ट्रो73 का रीमिक्स/रीवर्क हैं और आप सभी फाइलों को https://www.thingiverse.com/thing:3290837 से भी ले सकते हैं।

पैरों और आधार के लिए मैंने एक Sunlu PETG+ फिलामेंट का उपयोग किया जो कि Prusa i3 पर वास्तव में अच्छी तरह से काम करता है और मैंने 10 या 20% gyroid infill का उपयोग किया है।

एलईडी के लिए मैं सनलू पारदर्शी पीएलए का उपयोग कर रहा हूं और लगभग 10% संकेंद्रित ऊपर और नीचे की परतों के साथ इन्फिल का उपयोग कर रहा हूं।

प्रत्येक के साथ मैं केवल Slic3r में स्टॉक प्रूसा पीईटी और प्रूसा पीएलए सेटिंग्स का उपयोग करता हूं और वे सभी ठीक काम कर चुके हैं। मुझे पैरों पर थोड़ा सा कड़ापन आता है, लेकिन मैं बस उन पर एक ब्लोटरच घुमाता हूं और स्ट्रिंग गायब हो जाती है:)

चरण 11: विशाल एलईडी असेंबली

विशाल एलईडी असेंबली
विशाल एलईडी असेंबली
विशाल एलईडी असेंबली
विशाल एलईडी असेंबली
विशाल एलईडी असेंबली
विशाल एलईडी असेंबली

सभी टुकड़े वास्तव में आसानी से एक साथ चलते हैं, आपको स्क्रू को एक साथ रखने की अनुमति देने के लिए आधार में एक एम 3 नट को दबाना होगा। आपको पहले भी पैरों के माध्यम से NeoPixel को WEMOS से वायर करना होगा। मैं विचार कर रहा था कि कुछ कनेक्टर्स को कैसे लगाया जाए, लेकिन मैंने फैसला किया कि यह भविष्य में अलग नहीं होने वाला है।

लेंस पैरों पर सिर्फ एक पुश फिट है और वे बदले में एक M3x20mm बोल्ट के साथ आधार पर बोल्ट किए जाते हैं। आपको बटन के छेद के अंदर एक चाकू चलाने की आवश्यकता हो सकती है ताकि यह अच्छा और स्वतंत्र रूप से आगे बढ़े। Wemos को नीचे से पेंच किए गए 2 M2x8 सॉकेट बोल्ट के साथ रखा गया है।

समाप्त करने के लिए, यदि आवश्यक हो तो किसी भी फिसलन को रोकने के लिए आप आधार पर महसूस किए गए टुकड़े को गोंद कर सकते हैं।

चरण 12: सेटअप और संचालन निर्देश

Image
Image
सेटअप और संचालन निर्देश
सेटअप और संचालन निर्देश
सेटअप और संचालन निर्देश
सेटअप और संचालन निर्देश

सब कुछ तैयार होने और अपलोड किए गए सॉफ़्टवेयर के साथ USB पर कुछ शक्ति लागू होती है और GIANT LED ऊपर आनी चाहिए और LED RED हो जाएगी और फिर पीले रंग में बदल जाएगी। इससे पता चलता है कि यह ऑफ लाइन है और वाईफाई कॉन्फिगरेशन की प्रतीक्षा कर रहा है। GIANT LED वाईफाई नेटवर्क और कनेक्ट के लिए फोन या इसी तरह के लुक का उपयोग करने पर आपको वाईफाई मैनेजर स्क्रीन मिल जाएगी। इसने आपके स्थानीय क्षेत्र को स्कैन किया होगा और आप बस अपना वाईफाई विवरण दर्ज करें, ईएसपी रीबूट हो जाएगा और अब आप एक हरे रंग की रोशनी के साथ ऑनलाइन होंगे। यह इस बिंदु पर IO से भी जुड़ जाएगा और अलर्ट लाइट्स आ जाएंगी क्योंकि इसने अभी तक कोई पिछला संदेश नहीं देखा है। बटन को एक दो बार दबाएं और GIANT LED अब अपडेट आने के लिए तैयार है।

आप इस बिंदु पर Adafruit IO डैशबोर्ड पर जा सकते हैं और प्रत्येक फ़ीड में कुछ डेटा जोड़ सकते हैं और रोशनी को अलर्ट मोड में देख सकते हैं।

मज़े करो !

चरण 13: विशालकाय एलईडी क्या कर सकता है?

विशालकाय एलईडी और क्या कर सकता है
विशालकाय एलईडी और क्या कर सकता है
विशालकाय एलईडी और क्या कर सकता है
विशालकाय एलईडी और क्या कर सकता है

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

इसके अलावा बटन के साथ आप इसे अन्य GIANT LED को सिग्नल करने के लिए उपयोग कर सकते हैं, आपके पास अलग-अलग घरों में एक हो सकता है और दूसरे पक्ष को प्रकाश को रद्द करने के लिए बटन दबाने के लिए इसे रिमोट इंडिकेटर के रूप में उपयोग कर सकते हैं।

फ़ीड में डेटा भेजने की वेबहुक पद्धति पर एक उपयोगी लिंक यहां दिया गया है। इस मामले में यह एक आईएफटीटीटी एप्लेट का उपयोग कर रहा है लेकिन आप पाइथन के साथ आसानी से कर्ल विधि का उपयोग कर सकते हैं।

io.adafruit.com/blog/notebook/2018/11/26/f…

वास्तव में कुछ पाठ्य सामग्री के साथ एलईडी को पूरक करने के लिए एक OLED 128x32 को आधार में फिट करना संभव है और मैं वर्तमान में उस पर काम कर रहा हूं और एसटीएल को अपडेट करूंगा और इसके साथ आईओ का उपयोग करने के लिए कोड की आपूर्ति करूंगा।

सिफारिश की: