विषयसूची:

ओ-जोन: DIY ब्लूटूथ बैटरी लैंप: 4 कदम (चित्रों के साथ)
ओ-जोन: DIY ब्लूटूथ बैटरी लैंप: 4 कदम (चित्रों के साथ)

वीडियो: ओ-जोन: DIY ब्लूटूथ बैटरी लैंप: 4 कदम (चित्रों के साथ)

वीडियो: ओ-जोन: DIY ब्लूटूथ बैटरी लैंप: 4 कदम (चित्रों के साथ)
वीडियो: UNBOXING INSTANT PHOTO CAMERA | 5 सेकंड में फोटो खींचो और निकालो | 2024, जुलाई
Anonim
Image
Image

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

दीपक के लिए सामग्री हैं:

बैटरी के साथ 1 एक्स लाइट ब्लूबीन

1 एक्स एडफ्रूट नियोपिक्सल रिंग (16 एक्स एलईडी)

आसान ब्लूटूथ ऐप आईओएस

Android के लिए ब्लूटूथ टर्मिनल

संरचना के लिए सामग्री हैं:

3 मिमी (3.1 इंच) लकड़ी

1.5 मिमी (0.05 इंच) सफेद प्लेक्सीग्लस

चरण 1: घन की संरचना

लाइट ब्लू बीन के माध्यम से पंच प्रोग्राम करें
लाइट ब्लू बीन के माध्यम से पंच प्रोग्राम करें

दीपक की संरचना के लिए, मैंने एक घन तैयार किया है। एक साधारण लेकिन रैखिक लकड़ी का घन। मैंने अपने लेजर एनग्रेवर से लकड़ी को काटा है। साथ ही, मैंने घन के ऊपरी फलक के अंदर एक वृत्त काट दिया है। कटिंग के अंदर, मैंने एक सफेद प्लेक्सीग्लस रिंग लगाई है। मैंने 40W लेजर कटिंग के साथ plexiglass को काट दिया। आप सफेद plexiglass का उपयोग कर सकते हैं, क्योंकि Adafruit के नेतृत्व वाली अंगूठी में कई रंग होते हैं। इसके अलावा, आप एक पारदर्शी प्लेक्सी का उपयोग कर सकते हैं, लेकिन मुझे लगता है कि सफेद प्रकाश की चिकनाई गुणवत्ता के लिए बेहतर है।

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

एक विनाइल गोंद के साथ टुकड़ों को एक साथ रखें। Adafruit Neopixel रिंग को plexiglass रिंग के साथ असेंबली करने के बाद। प्लास्टिक के हिस्सों के लिए, आप एक ऐक्रेलिक गोंद का उपयोग कर सकते हैं। सब एक साथ विधानसभा।

इस स्टेप के बाद आपका स्ट्रक्चर तैयार है!

चरण 2: लाइट ब्लू बीन के माध्यम से पंच को प्रोग्राम करें

लाइट ब्लूबीन प्रोग्रामिंग के लिए आप Arduino IDE का उपयोग कर सकते हैं। जब आप अपने लाइट ब्लूबीन पर फर्मवेयर चार्ज करते हैं तो आपको ब्लूटूथ संचार का उपयोग करना चाहिए। आप Arduino IDE का उपयोग कर सकते हैं और इस प्रोग्राम को Punch Trough Light BlueBean लोडर के साथ जोड़ सकते हैं। विवरण के लिए आधिकारिक साइट देखें।

हल्के नीले रंग के साथ शुरुआत करें

लाइट ब्लूबीन के लिए आप इस कोड का उपयोग कर सकते हैं:

/* ******************************************

*ओ-जोन ब्लूथूथ लैंप

*31 मार्च 2017

* जियोवानी जेंटाइल

* लाइट ब्लूबीन के माध्यम से पंच के लिए

**********************************************/

#शामिल "Adafruit_NeoPixel.h"

// पिन जो NeoPixels से जुड़ा है

#पिन परिभाषित करें 5

// NeoPixels में LED की मात्रा

#define NUMPIXELS 16 int Bright = 20; बूलियन लुमी = 1; बूलियन पिछलालुमी = 1;

स्ट्रिंग कमांड;

बूलियन कमांडस्टार्ट = झूठा; Adafruit_NeoPixel पिक्सेल = Adafruit_NeoPixel(NUMPIXELS, पिन, NEO_GRB + NEO_KHZ800); लेडरीडिंग एलईडी कलर; पिछले लेड रंग को पढ़ना; शून्य सेटअप () {Serial.begin (); // NeoPixels पिक्सल को इनिशियलाइज़ करें। शुरू (); }

शून्य लूप () {

getCommand (); }

/*

यह फ़ंक्शन सीरियल पोर्ट को पढ़ता है और प्रारंभ वर्ण '#' के लिए जांच करता है यदि प्रारंभ वर्ण यदि पाया जाता है तो यह सभी प्राप्त वर्णों को कमांड बफर में तब तक जोड़ देगा जब तक कि इसे अंतिम आदेश प्राप्त नहीं हो जाता ';' जब अंतिम आदेश प्राप्त होता है तो कमांड पूर्ण () फ़ंक्शन कहा जाता है। यदि अंतिम वर्ण से पहले दूसरा प्रारंभ वर्ण मिलता है तो बफ़र साफ़ हो जाता है और प्रक्रिया फिर से शुरू हो जाती है। */ void getCommand() { जबकि (सीरियल.उपलब्ध ()) { चार newChar = (char) Serial.read (); अगर (newChar == '#') { कमांडस्टार्ट = सच; कमांड = "\ 0"; } और अगर (newChar == ';') {commandStarted = false; कमांड पूर्ण (); कमांड = "\ 0"; } और अगर (कमांडस्टार्ट == सत्य) {कमांड + = newChar; } } }

/*

यह फ़ंक्शन पूर्ण कमांड लेता है और इसे उपलब्ध कमांड की सूची के विरुद्ध जांचता है और उपयुक्त कोड निष्पादित करता है। उस कोड के साथ कमांड जोड़ने के लिए अतिरिक्त 'if' स्टेटमेंट जोड़ें जिसे आप उस कमांड के प्राप्त होने पर निष्पादित करना चाहते हैं। यदि 'ऑफ' उदाहरण के लिए कोड की कुछ पंक्तियों से अधिक हैं तो कमांड के लिए फ़ंक्शन बनाने की अनुशंसा की जाती है। */ शून्य आदेश पूर्ण () { अगर (कमांड == "कम") {उज्ज्वल = उज्ज्वल - 10; लुमी = -लुमी; सीरियल.प्रिंट (उज्ज्वल); } अगर (कमांड == "उच्च") {उज्ज्वल = उज्ज्वल + 10; लुमी = -लुमी; सीरियल.प्रिंट (उज्ज्वल); } अगर (कमांड == "लाल") {Bean.setLed(255, 0, 0); सीरियल.प्रिंट ("एलईडी लाल हो गया"); } अगर (कमांड == "हरा") {Bean.setLed(0, 255, 0); Serial.print ("एलईडी हरा हो गया"); } अगर (कमांड == "ब्लू") {Bean.setLed(0, 0, 255); सीरियल.प्रिंट ("एलईडी नीला हो गया"); } अगर (कमांड == "पीला") {Bean.setLed(255, 255, 0); Serial.print ("एलईडी पीला हो गया"); } अगर (कमांड == "नारंगी") {Bean.setLed(255, 60, 0); Serial.print ("एलईडी नारंगी हो गया"); } अगर (कमांड == "बैंगनी") {Bean.setLed(128, 0, 128); Serial.print ("एलईडी बैंगनी हो गया"); } अगर (कमांड == "सफेद") {Bean.setLed(255, 255, 255); Serial.print ("एलईडी सफेद हो गया"); } अगर (कमांड == "ऑफ") {ऑफ (); } if(Bean.getConnectionState ()){// बीन के ऑनबोर्ड LED LEDColor = Bean.getLed() से मान प्राप्त करें; } अगर(लुमी!=पिछलालुमी ||ledColor.red!=पिछलाLedColor.red ||ledColor.green!=पिछलाLedColor.green ||ledColor.blue != पिछलाLedColor.blue){ for(int i=0;i

/*

इस तरह एक अलग फ़ंक्शन का उपयोग करें जब कोड की कुछ ही पंक्तियों से अधिक हों। यह कोड को पढ़ने में आसान स्वच्छ बनाए रखने में मदद करेगा। */ शून्य बंद () {बीन.सेटलेड (0, 0, 0); सीरियल.प्रिंट ("एलईडी बंद हो गया"); }

चरण 3: लाइट ब्लू बीन को एडफ्रूट नियोपिक्सल रिंग से कनेक्ट करें

लाइट ब्लू बीन को एडफ्रूट नियोपिक्सल रिंग से कनेक्ट करें
लाइट ब्लू बीन को एडफ्रूट नियोपिक्सल रिंग से कनेक्ट करें

फर्मवेयर अपलोड करने के बाद, आप अपने स्मार्टफोन के साथ लाइट ब्लूबीन का उपयोग कर सकते हैं। आप आरजीबी एलईडी ऑनबोर्ड का उपयोग करके प्रोग्राम को आजमा सकते हैं। के बाद आप Adafruit 16x रिंग को कनेक्ट कर सकते हैं।

ध्यान दें, VCC को Light BlueBean 5v, GND को Light BlueBean GND से और डेटा पिन को अपने Adafruit Neopixel रिंग पर पिन नंबर 5 पर कनेक्ट करें।

चरण 4: ब्लूटूथ ऐप और सीरियल संचार

ब्लूटूथ ऐप और सीरियल संचार
ब्लूटूथ ऐप और सीरियल संचार

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

ब्लूबीन द्वारा स्वीकार किए जाने वाले सीरियल कमांड हैं:

एलईडी रंग भरने के लिए:

#लाल;

#नील लोहित रंग का;

#नीला;

#हरा;

#पीला;

#संतरा;

एलईडी बंद करने के लिए:

#बंद;

चमक को विनियमित करने के लिए:

#कम;

#उच्च;

सिफारिश की: