विषयसूची:

किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels): 6 चरण (चित्रों के साथ)
किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels): 6 चरण (चित्रों के साथ)

वीडियो: किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels): 6 चरण (चित्रों के साथ)

वीडियो: किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels): 6 चरण (चित्रों के साथ)
वीडियो: Best Quality WS2812B NeoPixels LED Strip Light in India Non-Waterproof RGB 300 LEDs Per Roll 2024, नवंबर
Anonim
किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels)
किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels)
किसी भी परियोजना के लिए सर्वश्रेष्ठ आरजीबी एलईडी (WS2812, उर्फ नियोपिक्सल)
किसी भी परियोजना के लिए सर्वश्रेष्ठ आरजीबी एलईडी (WS2812, उर्फ नियोपिक्सल)
किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels)
किसी भी परियोजना के लिए सर्वश्रेष्ठ RGB LED (WS2812, उर्फ NeoPixels)

जब हम एलईडी के साथ काम कर रहे होते हैं, तो हम अक्सर उनकी स्थिति (चालू/बंद), चमक और रंग को नियंत्रित करना पसंद करते हैं। इसके बारे में जाने के कई, कई अलग-अलग तरीके हैं, लेकिन कोई भी WS2812 RGB LED जितना कॉम्पैक्ट समाधान नहीं है। अपने छोटे 5 मिमी x 5 मिमी पैकेज में, WS2812 में 3 सुपर उज्ज्वल एलईडी (लाल, हरा और नीला) और एक कॉम्पैक्ट ड्राइवर सर्किट (WS2811) शामिल है, जिसमें 3 एलईडी की स्थिति, चमक और रंग को नियंत्रित करने के लिए केवल एक डेटा इनपुट की आवश्यकता होती है।. 3 एल ई डी को नियंत्रित करने के लिए केवल एक डेटा लाइन की आवश्यकता की कीमत पर, WS2811 के साथ संचार में अत्यधिक सटीक समय की मांग आती है। इस कारण से, एक रीयल-टाइम माइक्रोकंट्रोलर (जैसे, AVR, Arduino, PIC) की आवश्यकता होती है। अफसोस की बात है कि एक लिनक्स-आधारित माइक्रो कंप्यूटर या एक व्याख्या किया हुआ माइक्रोकंट्रोलर जैसे कि नेटडुइनो या बेसिक स्टैम्प पर्याप्त समय सटीकता प्रदान नहीं कर सकता है जिसकी आवश्यकता है। और इसलिए, इस निर्देशयोग्य में मैं एक Arduino Uno के साथ इनमें से एक LED को स्थापित करने और नियंत्रित करने की प्रक्रिया से चलता हूं। फिर, मैं दिखाता हूँ कि उनमें से कई को एक अद्भुत प्रकाश प्रदर्शन के लिए एक साथ जोड़ना कितना आसान है! कठिनाई स्तर: शुरुआती पूरा होने का समय: 10-15 मिनट

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

सामग्री की सूची
सामग्री की सूची

यह अद्भुत आरजीबी एलईडी 6 पैड के साथ 5050 (5 मिमी x 5 मिमी) पैकेज में आता है जो ब्रेकआउट बोर्ड पर सोल्डर के लिए काफी आसान है। चूंकि केवल एक अतिरिक्त घटक की आवश्यकता है एक डी-कपलिंग कैपेसिटर, WS2812 ईमानदारी से आरजीबी एलईडी के रंग और चमक को नियंत्रित करने के लिए सबसे अच्छा समाधान प्रदान करता है। एम्बेडेड स्थिर-वर्तमान एलईडी ड्राइवर (WS2811) दो कारणों से उल्लेखनीय रूप से उपयोगी है: - ~ 18mA का एक निरंतर प्रवाह वोल्टेज भिन्न होने पर भी प्रत्येक एलईडी को चलाएगा। - बिजली की आपूर्ति और एलईडी के बीच करंट-लिमिटिंग रेसिस्टर्स (उर्फ चोक रेसिस्टर्स) जोड़ने की जरूरत नहीं है। पावर, ग्राउंड और 1 कंट्रोल इनपुट प्रदान करने के लिए हमें केवल एक बहुत ही सरल डिज़ाइन की आवश्यकता है ताकि एक नहीं, बल्कि आरजीबी एलईडी की एक पूरी सरणी से युक्त एक भयानक प्रकाश प्रदर्शन बनाया जा सके। ये सही है! इनमें से किसी एक LED के डेटा आउट पिन को दूसरे के डेटा इन पिन से कनेक्ट करके, हम उन दोनों को एक ही कंट्रोल इनपुट के साथ स्वतंत्र रूप से चला सकते हैं! यदि यह स्पष्ट नहीं है कि यह कैसे करना है, तो परेशान न हों, इस निर्देश के अंत तक आप अपने इच्छित किसी भी प्रोजेक्ट में WS2812 को जोड़ने के अपने रास्ते पर होंगे! इस निर्देश के लिए यहाँ हम क्या उपयोग कर रहे हैं: सामग्री: 3 x WS2812 RGB LED (एक छोटे ब्रेकआउट बोर्ड पर प्री-सोल्डर) 1 x सोल्डरलेस ब्रेडबोर्ड सॉलिड कोर वायर (मिश्रित रंग; 28 AWG) 1 x Arduino Uno R3 1 x ब्रेक-अवे पिन कनेक्टर, 0.1 "पिच, 8-पिन मेल (राइट-एंगल) 1 x पिन कनेक्टर, 0.1" पिच, 8-पिन फीमेल (राइट-एंगल) 1 x ब्रेकअवे पिन कनेक्टर, 0.1 "पिच, 8-पिन MaleTools: PC USB A/B केबल वायर स्ट्रिपर सोल्डरिंग आयरननोट्स: आपके प्रोजेक्ट के आधार पर, WS2812 RGB LED बिना ब्रेकआउट बोर्ड के भी लगभग $0.40 प्रत्येक के लिए उपलब्ध हैं, लेकिन प्री-सोल्डर विकल्प की सुविधा सरल अनुप्रयोगों के लिए आकर्षक है।

चरण 2: पिन हेडर कनेक्ट करना

पिन हेडर कनेक्ट करना
पिन हेडर कनेक्ट करना
पिन हेडर कनेक्ट करना
पिन हेडर कनेक्ट करना
पिन हेडर कनेक्ट करना
पिन हेडर कनेक्ट करना

पिछले चरण में सूचीबद्ध सभी सामग्रियों के साथ, WS2812 RGB LED को रोशन करना काफी सीधा है। सबसे पहले, हम सोल्डरलेस ब्रेडबोर्ड पर रखने के लिए WS2812 ब्रेकआउट बोर्ड तैयार करना चाहते हैं। ऐसा करने के लिए, हम प्रत्येक 8-पिन स्ट्रिप को 2 x 3-पिन टुकड़ों में अलग करने के लिए एक वायर कटर (सबसे सामान्य काटने के उपकरण ठीक उसी तरह काम करेंगे) का उपयोग करते हैं। ध्यान रखें कि कट बनाना थोड़ा मुश्किल है; कई बार मैंने कट के लिए एक गाइड के रूप में दो पुरुष हेडर के बीच के खांचे का उपयोग करने की कोशिश की है, और मैंने एक हेडर से बहुत अधिक प्लास्टिक को कतरना समाप्त कर दिया है जिसे मैं रखना चाहता था। हम जिस पिन को काटना चाहते हैं, उस पिन को 'बलिदान' करने से हम समस्या से पूरी तरह बच जाते हैं। सरौता की एक जोड़ी का उपयोग करके, हम उस पिन को खींचते हैं जहां हम काटना चाहते हैं (इस मामले में, चौथा और 8 वां पिन)। पिन हटा दिए जाने के बाद हम अब खाली हेडर के बीच में आसानी से काट सकते हैं। यह तकनीक महिला हेडर के साथ समान रूप से अच्छी तरह से काम करती है। चुभाने और काटने के बाद, हमारे पास 6 x 3-पिन हेडर, यानी 2 x मानक और 4 x समकोण (2 x पुरुष, 2 x महिला) होने चाहिए। टांका लगाने वाले लोहे की मदद से, अब हम पिन को तीन ब्रेकआउट बोर्डों में से प्रत्येक से निम्नलिखित तरीके से जोड़ सकते हैं। एक बोर्ड में 2 x मानक शीर्षलेख होने चाहिए, जबकि अन्य दो बोर्डों में प्रत्येक में 1 x समकोण शीर्षलेख होना चाहिए। बोर्ड पर जिसमें मानक पिन हेडर होंगे, हम पिन को बोर्ड की निचली सतह पर रखते हैं (जहां एलईडी है उसके विपरीत)। अन्य दो पर, समकोण शीर्षलेख (प्रत्येक लिंग में से एक) को या तो ऊपर या नीचे की सतह पर रखा जा सकता है। ध्यान दें कि पुरुष और महिला हेडर के प्लेसमेंट पर एक बोर्ड से दूसरे बोर्ड में सुसंगत होना महत्वपूर्ण है। बोर्डों को उन्मुख करने के लिए सतह माउंट कैपेसिटर का उपयोग करना सहायक होता है; इसे संदर्भ के रूप में उपयोग करते हुए, पुरुष शीर्षलेख को संधारित्र के निकटतम सिरे तक मिलाप किया जाना चाहिए। एक बार पिनों को मिलाप करने के बाद, हम उनमें से एक को Arduino से जोड़ने के लिए तैयार हैं!

चरण 3: WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना

WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना
WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना
WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना
WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना
WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना
WS2812 ब्रेकआउट बोर्ड को Arduino से कनेक्ट करना

इस चरण में हम एक Arduino और हमारे WS2812 ब्रेकआउट बोर्डों में से एक के बीच आवश्यक संबंध बनाएंगे। इस उद्देश्य के लिए हम सोल्डरलेस ब्रेडबोर्ड और 3 x जम्पर तारों का उपयोग करेंगे। यदि आप तार के स्पूल का उपयोग कर रहे हैं, तो अब 3 टुकड़ों को काटने का समय है, प्रत्येक लगभग 4 लंबा। अब हम अपने ब्रेडबोर्ड के डिवाइडर पर WS2812 ब्रेकआउट बोर्ड (मानक हेडर वाला एक) रख सकते हैं। सुनिश्चित करना कि Arduino एक शक्ति स्रोत और USB दोनों से डिस्कनेक्ट हो गया है, हम कनेक्शन को तार करने के लिए आगे बढ़ेंगे। WS2812 ब्रेकआउट बोर्ड के नीचे हम प्रत्येक पिन का नाम पा सकते हैं: VCC, DI (DO), GND। का उपयोग करना यह एक गाइड के रूप में हम Arduino से 5V और GND पिन को क्रमशः WS2812 बोर्ड के VCC और GND पिन से जोड़ने के लिए आगे बढ़ते हैं। फिर, हम Arduino के डिजिटल साइड पर पिन 8 को WS2812 बोर्ड के DI पिन से जोड़ते हैं।, जो कैपेसिटर के सबसे नजदीक की तरफ का केंद्र पिन है। अब हम अपने प्रोग्राम को Arduino पर लोड करने के लिए तैयार हैं, और WS2812 ब्लिंक करें!

चरण 4: इसे Arduino IDE के साथ ब्लिंक करना

इसे Arduino IDE के साथ ब्लिंक करना
इसे Arduino IDE के साथ ब्लिंक करना
इसे Arduino IDE के साथ ब्लिंक करना
इसे Arduino IDE के साथ ब्लिंक करना

मैं मान लूंगा कि आपने अपने कंप्यूटर पर पहले से ही Arduino IDE स्थापित कर लिया है --- वेब पर बहुत सारे गाइड प्रक्रिया को अच्छी तरह से समझाते हैं। जिस प्रोग्राम को हमें अपने Arduino पर लोड करना होगा, उसे यहां डाउनलोड किया जा सकता है। हम फर्मवेयर> उदाहरण> प्राइमर फ़ोल्डर के अंदर प्राइमर.इनो फ़ाइल को Arduino IDE (संस्करण 1.0.5 के लिए wirtten) पर लोड करने के लिए बस डबल-क्लिक कर सकते हैं। पैकेज में कोड को संकलित करने के लिए आवश्यक पुस्तकालय शामिल हैं ताकि कोई त्रुटि न हो, कृपया एक टिप्पणी पोस्ट करें यदि आपको संकलन में कोई समस्या आती है। टूल मेनू विकल्प का उपयोग करके Arduino बोर्ड प्रकार और USB पोर्ट का चयन करने के बाद, कोड अपलोड करें, और WS2812 को लाल, हरे और नीले रंग के बीच बारी-बारी से ब्लिंक करना शुरू करना चाहिए। इन WS2812 RGB LED के बारे में सबसे साफ-सुथरी विशेषता यह है कि इनमें से कई LED वाली लंबी स्ट्रिप्स और सरणियाँ बनाने के लिए इन्हें काफी आसानी से 'डेज़ी-चेन' किया जा सकता है। अगले चरण में हम अपने द्वारा तैयार किए गए 3 बोर्डों के साथ ठीक यही करते हैं।

चरण 5: RGB LED की एक पट्टी बनाना

RGB LED की एक पट्टी बनाना
RGB LED की एक पट्टी बनाना
RGB LED की एक पट्टी बनाना
RGB LED की एक पट्टी बनाना

एम्बेडेड एलईडी ड्राइवर सर्किटरी (WS2811) केवल 1 डेटा लाइन (!) का उपयोग करके 'डेज़ी-चेनिंग' एक एलईडी से अगले तक की अनुमति देता है। एक WS2812 के डेटा आउटपुट को दूसरे के डेटा इनपुट से जोड़कर, हम एक Arduino पर उनमें से 500 तक एल ई डी की पूरी सरणी की चमक और रंग को नियंत्रित कर सकते हैं! बेशक, कई एल ई डी चलाने के लिए कुछ विचार क्रम में हैं: - प्रत्येक पिक्सेल 60mA तक खींचता है (पूर्ण चमक पर सफेद के लिए सभी एल ई डी की आवश्यकता होती है, प्रत्येक ड्राइंग ~ 20mA)। - एक Arduino 30 Hz की ताज़ा दर पर 500 LED चलाकर अपनी RAM को अधिकतम करेगा। - दो बोर्डों को एक साथ जोड़ने के लिए, पावर ड्रॉप्स और डेटा भ्रष्टाचार से बचने के लिए अनुशंसित अधिकतम अलगाव 6" है। इन विचारों को ध्यान में रखते हुए, हम 24-बिट्स रंग रिज़ॉल्यूशन का उपयोग करके सभी एल ई डी ड्राइव कर सकते हैं, चमक के स्तर पर जो सुसंगत हैं, और (छोटे) बैटरी पावर परिवर्तन पर परिवर्तन के लिए काफी लचीला। इस निर्देश के लिए हमने जिन बोर्डों को तैयार किया है, उन्हें 'डेज़ी-चेन' करने के लिए हम दो बोर्डों में से एक के पुरुष छोर से महिला छोर को दाईं ओर से जोड़कर शुरू करते हैं- कोण हेडर। फिर, हमारे Arduino बोर्ड को पावर और USB से डिस्कनेक्ट करने के साथ, हम दो-बोर्ड श्रृंखला से पुरुष छोर को सोल्डरलेस ब्रेडबोर्ड पर रखते हैं। हम सुनिश्चित करते हैं कि पिन WS2812 ब्रेकआउट बोर्ड पर उन लोगों के साथ संरेखित हों जो ब्रेडबोर्ड से जुड़े थे पहले से ही। इस तरह के संरेखण में सीधे-हेडर बोर्ड और ब्रेडबोर्ड की एक ही पंक्ति पर श्रृंखला दोनों से वीसीसी और जीएनडी पिन होंगे। हम दो-बोर्ड श्रृंखला को तीसरे ब्रेकआउट बोर्ड के अंत के पास रखते हैं जो संधारित्र के विपरीत है । ए सब कुछ जुड़ा हुआ है, हम Arduino IDE को आग लगा सकते हैं और "#define NUM_LEDS 1" की परिभाषा को "#define NUM_LEDS 3" में बदलने के लिए टेक्स्ट एडिटर का उपयोग कर सकते हैं। बोर्ड को वापस पावर और/या यूएसबी से कनेक्ट करने के बाद, हम नया प्रोग्राम अपलोड कर सकते हैं… और… BAM! तीनों एल ई डी को ऐसे ही झपकना चाहिए!

चरण 6: अंधेरे में, प्रकाश होने दो

अंधेरे में, प्रकाश होने दो!
अंधेरे में, प्रकाश होने दो!
अंधेरे में, प्रकाश होने दो!
अंधेरे में, प्रकाश होने दो!

इस निर्देशयोग्य ने आपको जल्दी से दिखाया कि छोटे ब्रेकआउट बोर्डों पर WS2812 RGB LED प्री-सोल्डर का उपयोग कैसे करें। हमने एलईडी की चमक और रंग को नियंत्रित करने के लिए एक Arduino का उपयोग किया। एक बात जो थोड़ी निराशाजनक थी, वह यह है कि हमने जिस कोड का इस्तेमाल किया, उसने एलईडी को एक ही बार में, समान तीव्रता और रंग के साथ झपका दिया। ऑपरेशन का यह तरीका इस पैकेज में एम्बेडेड 'स्मार्ट' एलईडी ड्राइवर (WS2811) की पूरी क्षमता प्रदर्शित नहीं करता है। और इसलिए, आइए मूल कोड में निम्नलिखित संशोधनों का प्रयास करें। पहले की तरह, आप फ़ाइल को डाउनलोड और अनज़िप करेंगे, और फिर फर्मवेयर को Arduino (फर्मवेयर> इफेक्ट्स> इफेक्ट्स.इनो) पर लोड करने के लिए खोलेंगे। इस डेमो के लिए आवश्यक सभी फाइलें शामिल हैं, इसलिए तीसरे पक्ष के लिबरी जोड़ने की कोई आवश्यकता नहीं है; कोड को बिना किसी संशोधन के संकलित करना चाहिए --- यह पहले से ही 3 एल ई डी को संभालने के लिए तैयार है। अब यह आपकी कल्पना पर निर्भर है कि आप अगली परियोजना तैयार करें जहां ये बहुत उपयोगी, कॉम्पैक्ट, आरजीबी एलईडी अपनी रोशनी चमका सकें। टिप्पणी अनुभाग में WS2812 का उपयोग करके अपनी कुछ रचनाओं को बेझिझक पोस्ट करें!

सिफारिश की: