विषयसूची:

इंटरएक्टिव परिवेश प्रकाश: 8 कदम
इंटरएक्टिव परिवेश प्रकाश: 8 कदम

वीडियो: इंटरएक्टिव परिवेश प्रकाश: 8 कदम

वीडियो: इंटरएक्टिव परिवेश प्रकाश: 8 कदम
वीडियो: Personality Development | व्यक्तिगत विकास के 8 आयाम | Harshvardhan Jain 2024, जुलाई
Anonim
इंटरएक्टिव परिवेश प्रकाश
इंटरएक्टिव परिवेश प्रकाश
इंटरएक्टिव परिवेश प्रकाश
इंटरएक्टिव परिवेश प्रकाश
इंटरएक्टिव परिवेश प्रकाश
इंटरएक्टिव परिवेश प्रकाश

यह मेरी पहली शिक्षाप्रद है! कृपया मेरे साथ रहें जबकि मैं उचित अंग्रेजी लिखने के लिए संघर्ष कर रहा हूं। मुझे सही करने के लिए स्वतंत्र महसूस करें! मैंने यह प्रोजेक्ट 'लेट इट ग्लो' प्रतियोगिता शुरू होने के ठीक बाद शुरू किया था। काश मैंने और भी बहुत कुछ बनाया होता और जो मैं बनाना चाहता था उसे पूरा कर पाता। लेकिन स्कूल और काम के बीच, मेरे पास उतना समय नहीं बचा जितना मैं चाहता था। फिर भी, मैं यहां अपने प्रयोगों की एक रिपोर्ट एक निर्देश के रूप में छोड़ता हूं, ताकि कोई भी कोशिश कर सके और जो मैंने किया वह बना सके। यह निर्देश एक मार्गदर्शक के रूप में काम करने और यह सिखाने के लिए नहीं है कि इस गर्भनिरोधक को कैसे बनाया जाए। यह इलेक्ट्रॉनिक्स में शुरुआती लोगों के लिए एक गाइड नहीं है। यह एक विचार और उद्देश्य को साझा करने जैसा है जिसे मैं आगे बढ़ाना चाहता हूं। यदि आप इलेक्ट्रॉनिक्स में एक नौसिखिया/पूर्ण अज्ञानी हैं और ऐसा कुछ बनाना चाहते हैं, तो मुझे खेद है! लेकिन हम हमेशा आपकी मदद करने की कोशिश कर सकते हैं। अंतिम चरण देखें। हम पहले ही कई एंबियंट लाइट प्रोजेक्ट देख चुके हैं। उनमें से अधिकांश आरजीबी एलईडी का उपयोग करते हैं: - एक रंग के साथ एक कमरे को रोशन करने के लिए, अपने मूड से मेल खाने के लिए एक वातावरण सेट करना - टीवी / मॉनिटर के रंग से या ऑडियो से प्रकाश प्रभाव पैदा करना। इंस्ट्रक्टेबल्स डॉट कॉम में कुछ भी हैं संबंधित: DIY एम्बिएंट लाइट सिस्टम लाइट बार एम्बिएंट लाइटिंग अपने स्वयं के परिवेश रंग प्रकाश सलाखों का निर्माण इस प्रतियोगिता का एक बहाने के रूप में उपयोग करते हुए, मैंने एक परियोजना शुरू की जो कुछ समय से मेरे दिमाग में है। मैं हमेशा इन परिवेश रोशनी के समान कुछ बनाना चाहता हूं और आरजीबी एलईडी के साथ अपने कमरे में दीवारों को भरना चाहता हूं। लेकिन, इसे एक कदम आगे बढ़ाते हुए, सभी को और उनमें से प्रत्येक को नियंत्रित करने योग्य बनाते हैं। यह प्रोजेक्ट हॉबीस्ट्स और इलेक्ट्रॉनिक टिंकरर्स के लिए एक ओपन-सोर्स इलेक्ट्रॉनिक्स किट का परिणाम देगा, जिससे हार्डवेयर/सॉफ्टवेयर हैकिंग और संवेदी एकीकरण की अनुमति मिलेगी। मैंने जो बनाया है उसका एक छोटा सा पूर्वावलोकन यहां दिया गया है:

चरण 1: विचार की खोज

मैं अपने कमरे में आरजीबी एलईडी के साथ दीवारों को भरने में सक्षम होना चाहता हूं, प्रत्येक एलईडी के लिए रंग और चमक को नियंत्रित करना। मैं उपयोग में आसानी और लचीलेपन के लिए एक माइक्रोकंट्रोलर का उपयोग करने जा रहा हूं। दुर्भाग्य से मैं माइक्रोकंट्रोलर पर उपलब्ध कुछ पिन के साथ सैकड़ों एलईडी को नियंत्रित नहीं कर सकता। इतने सारे एल ई डी के नियंत्रण को कोड करना भी मुश्किल होगा। इसलिए मैंने फैसला किया कि मुझे सभी एल ई डी को कई छोटे बार में विभाजित करना चाहिए और प्रत्येक बार के लिए मैं एक माइक्रोकंट्रोलर का उपयोग कर सकता हूं। तब मैं उनके बीच जानकारी साझा करने के लिए माइक्रोकंट्रोलर की संचार क्षमताओं का उपयोग करूंगा। यह जानकारी एलईडी का रंग और चमक, रंगों के पैटर्न/अनुक्रम और संवेदी जानकारी हो सकती है। प्रत्येक बार के लिए मैंने 16 आरजीबी एलईडी का उपयोग करने का निर्णय लिया। इसका परिणाम न तो बहुत बड़ा और न ही छोटा बार होता है। इस तरह मैं प्रत्येक एलईडी के लिए स्वीकार्य संख्या में संसाधनों का उपयोग करता हूं, प्रत्येक बार के लिए लागत को कम करता हूं। फिर भी, माइक्रोकंट्रोलर को नियंत्रित करने के लिए 16 आरजीबी एलईडी 48 एलईडी (3 * 16 = 48) हैं। लागतों को ध्यान में रखते हुए, मैंने उपयोग करने का निर्णय लिया सबसे सस्ता माइक्रोकंट्रोलर जिसका मैं उपयोग कर सकता था। इसका मतलब यह है कि माइक्रोकंट्रोलर में केवल 20 आई/ओ पिन होंगे, 48 एल ई डी के लिए पर्याप्त नहीं है। मैं चार्लीप्लेक्सिंग या किसी प्रकार के समय विभाजन ड्राइव का उपयोग नहीं करना चाहता, क्योंकि परियोजना का लक्ष्य एक कमरे को रोशन कर रहा है। केवल वैकल्पिक रूप से मैं सोच सकता था कि किसी प्रकार के लैच्ड शिफ्ट रजिस्टर का उपयोग कर रहा है! फिर से शुरू करना: - बनाना और इंटरैक्टिव परिवेश प्रकाश- नियंत्रणीय एल ई डी का एक मानक बार बनाएं- एक कमरे को भरने के लिए कई बार जोड़ने की संभावना- उपयोगकर्ता अनुकूलन/कॉन्फ़िगरेशन और संवेदी एकीकरण की अनुमति दें

चरण 2: हार्डवेयर

हार्डवेयर
हार्डवेयर
हार्डवेयर
हार्डवेयर

जैसा कि पिछले चरण में कहा गया है, मैं एक कमरे को रोशन करने के लिए कई बार बनाना चाहता हूं। यह लागत के मुद्दे को ध्यान में रखता है। मैं कोशिश करने जा रहा हूं और प्रत्येक बार को सबसे अधिक लागत प्रभावी तरीका संभव बनाने जा रहा हूं। मैंने जो माइक्रोकंट्रोलर इस्तेमाल किया वह AVR ATtiny2313 था। ये बल्कि सस्ते हैं और मेरे पास कुछ पड़ा हुआ था। ATtiny2313 में एक यूनिवर्सल सीरियल इंटरफ़ेस और एक USART इंटरफ़ेस भी है जो निम्नलिखित चरणों में अच्छे उपयोग के लिए आएगा। मेरे पास तीन MCP23016 - I2C 16bit I/O पोर्ट एक्सपैंडर भी पड़ा हुआ था, बस सही गिनती! मैंने 16 एल ई डी के एक रंग को नियंत्रित करने के लिए प्रत्येक पोर्ट विस्तारक का उपयोग किया। एल ई डी … दुर्भाग्य से, सबसे सस्ते थे जो मुझे मिल सकते थे। वे 20 डिग्री कोण के साथ 48 लाल, हरे और नीले ~ 10000mcd 5mm हैं। यह अभी के लिए मायने नहीं रखना चाहिए, क्योंकि यह केवल एक प्रोटोटाइप है। इस तथ्य के बावजूद, परिणाम काफी अच्छा है! मैं 8 मेगाहर्ट्ज पर माइक्रोकंट्रोलर चला रहा हूं। I2C बस 400 kHz पर क्लॉक की गई है। एलईडी स्विचिंग आवृत्ति लगभग 400 हर्ट्ज है। इस तरह, अगर मैं 48 एल ई डी को सीमा तक धकेले बिना चलाने में सक्षम हूं, तो मैं बाद में और अधिक जगह दूंगा!

चरण 3: विधानसभा

सभा
सभा
सभा
सभा
सभा
सभा
सभा
सभा

सर्किट को डिजाइन करने के बाद, मैंने इसे प्रोटोटाइपिंग उद्देश्यों के लिए कई ब्रेडबोर्ड में बनाया। तारों को काटने और सर्किट को असेंबल करने के कई घंटों के बाद, मुझे यह परिणाम मिला: 48 एल ई डी और तार के साथ एक विशाल ब्रेडबोर्ड!

चरण 4: नियंत्रण?

नियंत्रण?
नियंत्रण?

यह परियोजना का सबसे चुनौतीपूर्ण हिस्सा है। मैं पैटर्न / अनुक्रमों को संभालने और प्रत्येक एलईडी की चमक और रंग को नियंत्रित करने के लिए एक नियंत्रण एल्गोरिदम को सामान्य बनाना चाहता था। एल ई डी को नियंत्रित करने के लिए मुझे एमसीपी २३०१६ को ४बाइट्स का एक फ्रेम भेजना होगा। (1 बाइट = 8 बिट)। रंग के लिए आईसी संवाददाता के पते के साथ एक बाइट, "लिखें" कमांड के साथ 1 बाइट और 16 बिट (एल ई डी) के मान के साथ 2 बाइट्स। आईसी एलईडी से "सिंक" के रूप में जुड़ा हुआ है, जिसका अर्थ है, पिन पर एक तर्क मान 0 एलईडी को प्रकाश देगा। और अब चुनौतीपूर्ण हिस्सा, 48 एलईडी के लिए पीडब्लूएम नियंत्रण कैसे करें? आइए एक एलईडी के लिए पीडब्लूएम का अध्ययन करें! पीडब्लूएम ने विकिपीडिया पर समझाया। अगर मुझे एलईडी की चमक ५०% चाहिए, तो मेरा पीडब्लूएम मूल्य ५०% है। इसका मतलब है कि एलईडी, एक समय में, बंद होने के समान समय पर होना चाहिए। आइए 1 सेकंड की अवधि लें। 50% के PWM का मतलब है कि इस 1 सेकंड में ऑन टाइम 0.5 सेकंड और ऑफ टाइम 0.5 सेकंड होता है। 80% का पीडब्लूएम? 0.2 सेकंड बंद, 0.8 सेकंड चालू! आसान, है ना? डिजिटल दुनिया में: 10 घड़ी चक्रों की अवधि के साथ, 50% का मतलब है कि 5 चक्रों के लिए एलईडी चालू है, और अन्य 5 चक्रों के लिए एलईडी बंद है। 20%? 2 चक्र चालू, 8 चक्र बंद। 45%? ठीक है, हम वास्तव में ४५% प्राप्त नहीं कर सकते… चूंकि अवधि चक्रों में है और हमारे पास केवल १० चक्र हैं, हम केवल पीडब्लूएम को १०% से चरणों में विभाजित कर सकते हैं। इसका मतलब है कि पिन का विकास ५०% के लिए होना चाहिए: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; या १, ०, १, ०, १, ०, १, ०, १, ०; प्रोग्रामिंग में हम एक सरणी को चालू और बंद करने का यह क्रम बना सकते हैं। प्रत्येक चक्र के लिए हम पिन को आउटपुट करते हैं, सूचकांक का मूल्य चक्र था। क्या मुझे अब तक समझ में आया? अगर हम LED0 50%, और LED1 20% बनाना चाहते हैं, तो हम दोनों सरणियों को जोड़ सकते हैं। LED0 पिन चलाने के लिए: 1, 1, 1, 1, 0, 0, 0, 0, 0; LED1 पिन चलाने के लिए: 2, 2, 0, 0, 0, 0, 0, 0, 0, 0; जिसके परिणामस्वरूप LED0 +LED0: 3, 3, 1, 1, 1, 0, 0, 0, 0, 0; पोर्ट विस्तारक IC में संख्याओं के इस क्रम को आउटपुट करते हुए, हमें LED0 50% चमक और LED1 20% के साथ मिलेगा !! 2 एल ई डी के लिए सरल, है ना? अब हमें इसे प्रत्येक रंग के लिए १६ एलईडी के लिए बनाना होगा! इनमें से प्रत्येक सरणी के लिए, हमारे पास प्रत्येक रंग (१६ एलईडी) के लिए चमक का एक संयोजन है। हर बार जब हम रंगों का एक और संयोजन चाहते हैं, तो हमें इस सरणी को बदलना होगा।

चरण 5: इसे आसान बनाना

इसे आसान बनाना!
इसे आसान बनाना!
इसे आसान बनाना!
इसे आसान बनाना!

पिछला चरण सरल अनुक्रम बनाने के लिए बहुत अधिक काम है … इसलिए मैंने एक प्रोग्राम बनाने का फैसला किया, जहां हम अनुक्रम के एक चरण में प्रत्येक एलईडी के रंग बताते हैं और हमें चरण के तीन सरणी मिलते हैं। मैंने समय की कमी के कारण इस कार्यक्रम को LabView में बनाया है।

चरण 6: पहला प्रयोग

पहला प्रयोग
पहला प्रयोग

माइक्रोकंट्रोलर में कई चरणों को लोड करना और हमें कुछ ऐसा मिलता है: वीडियो की खराब गुणवत्ता के लिए क्षमा करें! मैंने अनुक्रम के चरणों की अधिकतम संख्या को 8 तक परिभाषित किया है, और पीडब्लूएम को 20% कूद तक सीमित कर दिया है। यह निर्णय इस बात पर आधारित है कि मैं किस प्रकार के नियंत्रण का उपयोग कर रहा हूँ और ATtiny2313 में कितना EEPROM है। इन प्रयोगों में मैंने यह देखने की कोशिश की कि मैं किस तरह के प्रभाव डाल सकता हूँ। मुझे कहना होगा कि मैं परिणाम से प्रसन्न हूँ!

चरण 7: रीयल-टाइम नियंत्रण

रीयल-टाइम नियंत्रण
रीयल-टाइम नियंत्रण
रीयल-टाइम नियंत्रण
रीयल-टाइम नियंत्रण
रीयल-टाइम नियंत्रण
रीयल-टाइम नियंत्रण

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

चरण 8: निष्कर्ष

निष्कर्ष
निष्कर्ष
निष्कर्ष
निष्कर्ष
निष्कर्ष
निष्कर्ष
निष्कर्ष
निष्कर्ष

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

भविष्य का कार्य:

अगर मुझे लोगों से सकारात्मक प्रतिक्रिया मिलती है, तो मैं इस विचार को और विकसित कर सकता हूं और मुद्रित सर्किट बोर्ड और असेंबली निर्देशों के साथ एक पूर्ण DIY इलेक्ट्रॉनिक्स किट बना सकता हूं।

अपने अगले संस्करण के लिए मैं: - एडीसी के साथ माइक्रोकंट्रोलर को एक में बदल दूंगा - एमसीपी २३०१६ को किसी अन्य प्रकार के सीरियल-इन समानांतर-आउट के लिए बदलें जो एल ई डी से अधिक करंट सिंक कर सकता है- माइक्रोकंट्रोलर के साथ संचार करने के लिए ओपन-सोर्स सॉफ्टवेयर बनाएं और एल ई डी को नियंत्रित करें - कई माइक्रोकंट्रोलर के बीच संचार विकसित करें।

क्या आपके पास कोई सुझाव या प्रश्न है? या एक टिप्पणी छोड़ दो!

लेट इट ग्लो में फाइनलिस्ट!

सिफारिश की: