विषयसूची:

ब्लूटूथ नियंत्रित NeoPixel क्रिसमस ट्री: 5 कदम
ब्लूटूथ नियंत्रित NeoPixel क्रिसमस ट्री: 5 कदम

वीडियो: ब्लूटूथ नियंत्रित NeoPixel क्रिसमस ट्री: 5 कदम

वीडियो: ब्लूटूथ नियंत्रित NeoPixel क्रिसमस ट्री: 5 कदम
वीडियो: WS2812B RGB LED कैसे चलाएं ? How to control WS2812b Pixel RGB Led Strip 2024, जुलाई
Anonim

क्या आप सोच रहे हैं कि इस साल अपने क्रिसमस ट्री में IoT (इंटरनेट ऑफ थिंग्स) कैसे जोड़ें? खैर, यह बिलकुल संभव है! मैं व्यक्तिगत रूप से इस परियोजना को "ArduXmas" कहता हूं, और इसमें एक RGB NeoPixel एलईडी पट्टी होती है जिसे ब्लूटूथ के माध्यम से एक Arduino बोर्ड द्वारा नियंत्रित किया जाता है। यह एक शुरुआती अनुकूल परियोजना है और Arduino e IoT के लिए एक शानदार परिचय है, इसलिए अपने उपकरण प्राप्त करें और चलिए इसे बनाते हैं!

आपूर्ति:

इस परियोजना के लिए आपको आवश्यकता होगी:

  • Arduino (मैंने नैनो का उपयोग किया है, लेकिन कोई भी संस्करण काम करेगा, बस अपने बोर्ड को ठीक से बिजली देना सुनिश्चित करें)
  • NeoPixel WS2812b एलईडी पट्टी
  • HC-06 ब्लूटूथ मॉड्यूल
  • 5 वी 2 ए डीसी बिजली की आपूर्ति
  • डीसी बैरल पावर जैक / कनेक्टर
  • घटकों को धारण करने के लिए फेनोलाइट प्लेट
  • संलग्नक मामला
  • Blynk ऐप के साथ एंड्रॉइड स्मार्टफोन इंस्टॉल किया गया

चरण 1: सर्किट

सर्किट
सर्किट
सर्किट
सर्किट
सर्किट
सर्किट

इस परियोजना के इलेक्ट्रॉनिक्स बहुत सरल हैं। Arduino, ब्लूटूथ मॉड्यूल और LED स्ट्रिप 5V आपूर्ति द्वारा संचालित हैं (सुनिश्चित करें कि सभी GND एक साथ जुड़े हुए हैं)। Arduino बोर्ड 5V पोर्ट के माध्यम से संचालित होता है (ध्यान दें: 5V पोर्ट का उपयोग करके Arduino को पॉवर देना आपके बोर्ड को नुकसान पहुंचा सकता है यदि आप सावधान नहीं हैं। सुनिश्चित करें कि आप 5V विनियमित बिजली आपूर्ति का उपयोग कर रहे हैं और +5V को मिक्स न करें और जीएनडी तार)। आपकी बिजली आपूर्ति द्वारा प्रदान की जाने वाली धारा आपकी एलईडी पट्टी की लंबाई पर निर्भर करेगी। मैं पूरी चमक के 40% के साथ 180 एलईडी का उपयोग कर रहा हूं और 2 एम्प्स अच्छी तरह से पकड़ रहे हैं, लेकिन हमेशा आवश्यक करंट की आपूर्ति करना सुनिश्चित करें (याद रखें: प्रत्येक आरजीबी एलईडी लगभग 20mA + 20mA + 20mA = 60mA का उपयोग करता है)।

HC-06 ब्लूटूथ मॉड्यूल Arduino के पिन 0 और 1 (RX, TX) से जुड़ा है, बस याद रखें कि इस मॉड्यूल का उपयोग करने के लिए, HC-06 का RX पिन Arduino के TX से जुड़ा है और HC-06 का TX पिन है Arduino के RX से जुड़ा है। ये बोर्ड के सीरियल कनेक्शन पिन हैं, और स्मार्टफोन से कमांड प्राप्त करने के लिए उपयोग किए जाते हैं। मैंने मॉड्यूल को आसानी से चालू/बंद करने के लिए एक स्विच जोड़ा, इस प्रकार मैं बोर्ड की प्रोग्रामिंग करते समय इसे बंद कर सकता हूं, अन्यथा कंप्यूटर Arduino के साथ संचार नहीं कर सकता है।

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

कनेक्शन बनाने के लिए मैं इसमें छेद के साथ एक फेनोलाइट प्लेट का उपयोग कर रहा हूं, इसलिए इसे मिलाप करना और अगले साल इसे अलग करना आसान है।

चरण 2: संलग्नक

संलग्नक
संलग्नक
संलग्नक
संलग्नक
संलग्नक
संलग्नक

बाड़े के लिए मैं सिर्फ एक पुराने नोटबुक के बिजली आपूर्ति मामले का उपयोग कर रहा हूं जो घटकों को अच्छी तरह से फिट करता है। गर्म गोंद के साथ सब कुछ सुरक्षित करें, और Arduino के USB पोर्ट, HC-06 के स्विच, DC कनेक्टर और LED स्ट्रिप कनेक्टर के लिए छेद छोड़ दें।

चरण 3: ब्लिंक ऐप

ब्लिंक ऐप
ब्लिंक ऐप
ब्लिंक ऐप
ब्लिंक ऐप
ब्लिंक ऐप
ब्लिंक ऐप

Arduino के साथ संचार करने के लिए हम Blynk ऐप का उपयोग कर रहे हैं। Blynk के साथ आप स्मार्टफोन से हार्डवेयर या अन्य तरीकों से डेटा भेजने के लिए आसानी से इंटरफेस बना सकते हैं, कोड की एक पंक्ति को बदले बिना माइक्रोकंट्रोलर के पोर्ट को सीधे नियंत्रित करना भी संभव है!

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

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

इस परियोजना के लिए मैं 2 पूर्व-कोडित प्रकाश एनिमेशन पर स्विच करने के लिए दो बटन का उपयोग कर रहा हूं; एलईडी पट्टी के रंग को सेट करने के लिए एक आरजीबी घटक; एक स्लाइडर चमक को नियंत्रित करने के लिए और एक ब्लूटूथ घटक Arduino से कनेक्ट करने के लिए। यह देखने के लिए छवियों की जाँच करें कि प्रत्येक घटक कैसे कॉन्फ़िगर किया गया है। इस प्रोजेक्ट के लिए उपयोग किए गए पिन पर ध्यान दें क्योंकि हम Blynk के वर्चुअल पिन का उपयोग कर रहे हैं, यह एक अच्छी सुविधा है जो ऐप से हार्डवेयर को डेटा भेजने की अनुमति देती है। वर्चुअल पिन के बारे में अधिक जानकारी के लिए:

चरण 4: Arduino कोड

Arduino कोड
Arduino कोड

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

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

लूप () में चलने वाला एनीमेशन 100ms अंतराल में चलने वाले टाइमर से जुड़ा हुआ है। यह आवश्यक है, और मैं इसे बदलने की अनुशंसा नहीं करता, क्योंकि यह Blynk.run() कमांड के साथ हस्तक्षेप करता है और यदि Blynk लाइब्रेरी कम समय में बहुत अधिक अनुरोधों का पता लगाती है तो कनेक्शन बंद हो जाता है।

सिफारिश की: