विषयसूची:

ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर: 7 कदम
ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर: 7 कदम

वीडियो: ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर: 7 कदम

वीडियो: ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर: 7 कदम
वीडियो: LED Dimmer Controller using Android Phone | Complete Project | Arduino Project [in Hindi] 2024, जुलाई
Anonim
ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर
ब्लूटूथ के माध्यम से नियंत्रित DIY स्मार्ट एलईडी डिमर

यह निर्देशयोग्य वर्णन करता है कि स्मार्ट डिजिटल डिमर कैसे बनाया जाए। डिमर एक सामान्य प्रकाश स्विच है जिसका उपयोग घरों, होटलों और कई अन्य इमारतों में किया जाता है। डिमर स्विच के पुराने संस्करण मैनुअल थे, और आमतौर पर प्रकाश स्तर को नियंत्रित करने के लिए एक रोटरी स्विच (पोटेंशियोमीटर) या बटन शामिल करते थे। यह निर्देशयोग्य वर्णन करता है कि कैसे एक डिजिटल डिमर का निर्माण किया जाए जिसमें प्रकाश की तीव्रता को नियंत्रित करने के दो तरीके हों; एक स्मार्टफोन और भौतिक बटन। दो मोड एक साथ निर्बाध रूप से काम कर सकते हैं ताकि उपयोगकर्ता एक बटन और स्मार्टफोन दोनों से चमक को बढ़ा या घटा सके। परियोजना को SLG46620V CMIC, HC-06 ब्लूटूथ मॉड्यूल, पुश बटन और LED का उपयोग करके कार्यान्वित किया गया है।

हम SLG46620V CMIC का उपयोग करने जा रहे हैं क्योंकि यह असतत परियोजना घटकों को कम करने में मदद करता है। GreenPAK™ IC छोटे होते हैं और इनमें बहुउपयोगी घटक होते हैं, जो एक डिजाइनर को घटकों को कम करने और नई सुविधाओं को जोड़ने की अनुमति देता है। इसके अतिरिक्त, परियोजना लागत बाद में कम हो जाती है।

SLG46620V में एक SPI कनेक्शन इंटरफ़ेस, PWM ब्लॉक, FSM और एक छोटी चिप में बहुत सारे उपयोगी अतिरिक्त ब्लॉक शामिल हैं। ये घटक उपयोगकर्ता को एक व्यावहारिक स्मार्ट डिमर बनाने की अनुमति देते हैं जिसे ब्लूटूथ डिवाइस या वॉल बटन के माध्यम से नियंत्रित किया जा सकता है, विस्तारित-समय डिमिंग का समर्थन करता है, और माइक्रोकंट्रोलर या महंगे घटकों का उपयोग किए बिना चयन योग्य सुविधाओं को जोड़ता है।

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

चरण 1: परियोजना सुविधाएँ और इंटरफ़ेस

परियोजना सुविधाएँ और इंटरफ़ेस
परियोजना सुविधाएँ और इंटरफ़ेस

परियोजना विशेषताएं:

1. नियंत्रण के दो तरीके; मोबाइल ऐप और असली बटन।

2. प्रकाश के लिए चिकना ऑन-ऑफ संक्रमण। यह उपभोक्ता की आंखों के लिए स्वास्थ्यवर्धक है। यह एक अधिक शानदार एहसास भी देता है, जो होटलों और अन्य सेवा उद्योगों को आकर्षित कर रहा है।

3. स्लीप मोड फीचर। यह इस एप्लिकेशन के लिए एक अतिरिक्त मूल्य होगा। जब यूजर इस मोड को एक्टिवेट करता है तो 10 मिनट में लाइट ब्राइटनेस धीरे-धीरे कम हो जाती है। यह उन लोगों की मदद करता है जो अनिद्रा से पीड़ित हैं। यह बच्चों के बेडरूम और खुदरा दुकानों (समापन समय) के लिए भी उपयोगी है।

परियोजना इंटरफ़ेस

प्रोजेक्ट इंटरफ़ेस में चार पुश बटन हैं, जिनका उपयोग ग्रीनपैक इनपुट के रूप में किया जाता है:

ON\OFF: लाइट को ON\OFF करें (सॉफ्ट-स्टार्ट\स्टॉप)।

यूपी: प्रकाश स्तर बढ़ाएं।

नीचे: प्रकाश स्तर कम करें।

स्लीप मोड: स्लीप मोड को सक्रिय करने से, 10 मिनट की अवधि में प्रकाश की चमक धीरे-धीरे कम हो जाती है। यह उपयोगकर्ता को सोने से पहले का समय देता है और गारंटी देता है कि प्रकाश पूरी रात चालू नहीं रहेगा।

सिस्टम एक पीडब्लूएम सिग्नल आउटपुट करेगा, जिसे बाहरी एलईडी और स्लीप मोड एलईडी इंडिकेटर को पास किया जाएगा।

ग्रीनपैक डिजाइन में 4 मुख्य ब्लॉक शामिल हैं। पहला एक यूएआरटी रिसीवर है, जो ब्लूटूथ मॉड्यूल से डेटा प्राप्त करता है, ऑर्डर निकालता है, और उन्हें एक नियंत्रण इकाई को भेजता है। दूसरा ब्लॉक एक नियंत्रण इकाई है, जो यूएआरटी रिसीवर या बाहरी बटन से आने वाले आदेश प्राप्त करता है। नियंत्रण इकाई आवश्यक कार्रवाई तय करती है (चालू / बंद करें, बढ़ाएं, घटाएं, नींद मोड सक्षम करें)। यह इकाई LUTs का उपयोग करके कार्यान्वित की जाती है।

तीसरा ब्लॉक सीएलके जनरेटर की आपूर्ति करता है। इस परियोजना में, PWM को नियंत्रित करने के लिए एक FSM काउंटर का उपयोग किया जाता है। FSM का मान 3 आवृत्तियों (उच्च, मध्यम और निम्न) द्वारा दिए गए आदेशों के अनुसार (ऊपर, नीचे) बदल जाएगा। इस खंड में तीन आवृत्तियों को उत्पन्न किया जाएगा और आवश्यक सीएलके आवश्यक क्रम के अनुसार एफएसएम को पास करेगा; चालू/बंद ऑपरेशन में, उच्च आवृत्ति एफएसएम को सॉफ्ट स्टार्ट/स्टॉप तक जाती है। डिमिंग के दौरान, मध्यम आवृत्ति गुजरती है। FSM मान को अधिक धीरे-धीरे कम करने के लिए कम आवृत्ति स्लीप मोड में गुजरती है। फिर, प्रकाश की चमक भी धीरे-धीरे कम हो जाती है। चौथा ब्लॉक पीडब्लूएम इकाई है, जो बाहरी एल ई डी के लिए दालें उत्पन्न करती है।

चरण 2: ग्रीनपैक डिजाइन

ग्रीनपैक का उपयोग करके डिमर बनाने का सबसे अच्छा तरीका 8-बिट एफएसएम और पीडब्लूएम का उपयोग करना है। SLG46620 में, FSM1 में 8 बिट होते हैं और इसका उपयोग PWM1 और PWM2 के साथ किया जा सकता है। ब्लूटूथ मॉड्यूल जुड़ा होना चाहिए, जिसका अर्थ है कि एसपीआई समानांतर आउटपुट का उपयोग किया जाना चाहिए। SPI समानांतर आउटपुट बिट्स 0 से 7 कनेक्शन DCMP1, DMCP2, और LF OSC CLK, OUT1, OUT0 OSC आउटपुट के साथ मिश्रित होते हैं। PWM0 अपना आउटपुट FSM0 (16 बिट) से प्राप्त करता है। FSM0 255 पर नहीं रुकता; यह 16383 तक बढ़ जाता है। काउंटर वैल्यू को 8 बिट्स पर सीमित करने के लिए एक और एफएसएम जोड़ा जाता है; FSM1 का उपयोग यह जानने के लिए एक सूचक के रूप में किया जाता है कि काउंटर 0 या 255 पर कब पहुँचता है। FSM0 का उपयोग PWM पल्स उत्पन्न करने के लिए किया गया था। जैसा कि दो FSM के मूल्यों को एक ही समय में एक ही मूल्य के लिए बदला जाना चाहिए, डिजाइन थोड़ा जटिल हो जाता है, जहां दोनों FSM में एक पूर्वनिर्धारित, सीमित, चयन योग्य CLK होता है। CNT1 और CNT3 दोनों FSM को CLK पास करने के लिए मध्यस्थ के रूप में उपयोग किए जाते हैं।

डिजाइन में निम्नलिखित खंड होते हैं:

- यूएआरटी रिसीवर

- नियंत्रण विभाग

- सीएलके जेनरेटर और मल्टीप्लेक्सर

- पीडब्लूएम

चरण 3: यूएआरटी रिसीवर

यूएआरटी रिसीवर
यूएआरटी रिसीवर

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

HC06 1 START बिट, 8 डेटा बिट और एक STOP बिट भेजता है। इसकी डिफ़ॉल्ट बॉड दर 9600 है। हम डेटा बाइट को HC06 से ग्रीनपैक SLG46620V के SPI ब्लॉक में भेजेंगे।

चूंकि SPI ब्लॉक में START या STOP बिट नियंत्रण नहीं है, इसलिए उन बिट्स का उपयोग SPI क्लॉक सिग्नल (SCLK) को सक्षम और अक्षम करने के लिए किया जाता है। जब पिन 10 कम हो जाता है, तो IC को एक START बिट प्राप्त होता है, इसलिए हम संचार की शुरुआत की पहचान करने के लिए PDLY फॉलिंग एज डिटेक्टर का उपयोग करते हैं। वह गिरता हुआ किनारा डिटेक्टर DFF0 को देखता है, जो SCLK सिग्नल को SPI ब्लॉक को देखने में सक्षम बनाता है।

हमारी बॉड दर ९६०० बिट प्रति सेकंड है, इसलिए हमारी एससीएलके अवधि १/९६०० = १०४ μs होनी चाहिए। इसलिए, हम OSC आवृत्ति को 2 MHz पर सेट करते हैं और CNT0 को आवृत्ति विभक्त के रूप में उपयोग करते हैं।

2 मेगाहर्ट्ज - 1 = ०.५ µs

(१०४ µ/०.५ µs) - १ = २०७

इसलिए, हम चाहते हैं कि CNT0 काउंटर वैल्यू 207 हो। यह सुनिश्चित करने के लिए कि डेटा छूट न जाए, SPI घड़ी पर एक आधा घड़ी चक्र विलंब जोड़ा जाता है ताकि SPI ब्लॉक को उचित समय पर देखा जा सके। यह CNT6, 2-बिट LUT1 और OSC ब्लॉक की बाहरी घड़ी का उपयोग करके पूरा किया जाता है। CNT6 का आउटपुट DFF0 क्लॉक होने के बाद ५२ µs तक उच्च नहीं जाता है, जो कि १०४ µs की हमारी SCLK अवधि का ठीक आधा है। जब यह उच्च हो जाता है, तो 2-बिट LUT1 और गेट 2 मेगाहर्ट्ज ओएससी सिग्नल को EXT में जाने की अनुमति देते हैं। CLK0 इनपुट, जिसका आउटपुट CNT0 से जुड़ा है।

चरण 4: नियंत्रण इकाई

नियंत्रण विभाग
नियंत्रण विभाग

इस खंड में, UART रिसीवर से प्राप्त बाइट के अनुसार, या बाहरी बटन से संकेतों के अनुसार कमांड निष्पादित किए जाएंगे। पिन 12, 13, 14, 15 को इनपुट के रूप में इनिशियलाइज़ किया जाता है और बाहरी बटन से जुड़ा होता है।

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

DFF6 का उपयोग स्लीप मोड को सक्रिय करने के लिए किया जाता है, जहां इसका आउटपुट 2-बिट LUT4 से आने वाली बढ़त के साथ उच्च में बदल जाता है, जबकि DFF10 का उपयोग प्रकाश की स्थिति को बनाए रखने के लिए किया जाता है, और इसका आउटपुट निम्न से उच्च में बदल जाता है और इसके विपरीत हर बढ़ते किनारे के साथ आता है। 3-बिट LUT10 आउटपुट से।

FSM1 एक 8-बिट काउंटर है; जब इसका मान 0 या 255 तक पहुँच जाता है तो यह अपने आउटपुट पर एक उच्च पल्स देता है। नतीजतन, इसका उपयोग FSM0 (16-बिट) को 255 के मान से अधिक होने से रोकने के लिए किया जाता है, क्योंकि इसका आउटपुट DFFs को रीसेट करता है और यह DFF10 स्थिति को चालू से बंद करता है और इसके विपरीत यदि प्रकाश बटन +, - द्वारा नियंत्रित किया जाता है और अधिकतम/न्यूनतम स्तर तक पहुंच गया है।

FSM1 इनपुट से जुड़े सिग्नल, P11 और P12 के माध्यम से FSM0 तक पहुंचेंगे और दोनों काउंटरों पर समान मान बनाए रखेंगे।

चरण 5: सीएलके जेनरेटर और मल्टीप्लेक्सर

सीएलके जेनरेटर और मल्टीप्लेक्सर
सीएलके जेनरेटर और मल्टीप्लेक्सर

इस खंड में, तीन आवृत्तियों को उत्पन्न किया जाएगा, लेकिन किसी एक समय में केवल एक ही एफएसएम को देखेगा। पहली आवृत्ति RC OSC है, जो मैट्रिक्स 0 से P0 तक प्राप्त की जाती है। दूसरी आवृत्ति LF OSC है जो मैट्रिक्स 0 से P1 के माध्यम से भी प्राप्त की जाती है; तीसरी आवृत्ति CNT7 आउटपुट है।

3-बिट LUT9 और 3-बिट LUT11 3-बिट LUT14 आउटपुट के अनुसार एक आवृत्ति को पास करने की अनुमति देते हैं। उसके बाद, चुनी गई घड़ी CNT1 और CNT3 के माध्यम से FSM0 और FSM1 तक पहुंचती है।

चरण 6: पीडब्लूएम

पीडब्लूएम
पीडब्लूएम

अंत में, FSM0 मान पिन 20 के माध्यम से प्रकट होने के लिए PWM सिग्नल में बदल जाता है जिसे आउटपुट के रूप में प्रारंभ किया जाता है और यह बाहरी एल ई डी से जुड़ा होता है।

चरण 7: एंड्रॉइड ऐप

एंड्रॉइड ऐप
एंड्रॉइड ऐप
एंड्रॉइड ऐप
एंड्रॉइड ऐप
एंड्रॉइड ऐप
एंड्रॉइड ऐप

एंड्रॉइड ऐप में वास्तविक इंटरफ़ेस के समान वर्चुअल कंट्रोल इंटरफ़ेस है। इसमें पांच बटन हैं; ON\OFF, UP, DOWN, स्लीप मोड और कनेक्ट। यह एंड्रॉइड एप्लिकेशन बटन प्रेस को कमांड में बदलने में सक्षम होगा और ब्लूटूथ मॉड्यूल को कमांड भेजे जाने के लिए भेजेगा।

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

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

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

इन नंबरों को तालिका 1 में दिखाया गया है।

निष्कर्ष

यह निर्देशयोग्य एक स्मार्ट डिमर का वर्णन करता है जिसे दो तरीकों से नियंत्रित किया जा सकता है; एक Android ऐप और असली बटन। GreenPAK SLG46620V के भीतर चार अलग-अलग ब्लॉकों को रेखांकित किया गया है जो एक प्रकाश के PWM को बढ़ाने या घटाने के लिए प्रक्रिया प्रवाह को नियंत्रित करते हैं। इसके अतिरिक्त, स्लीप-मोड सुविधा को एप्लिकेशन के लिए उपलब्ध अतिरिक्त मॉडुलन के उदाहरण के रूप में रेखांकित किया गया है। दिखाया गया उदाहरण कम वोल्टेज है, लेकिन उच्च वोल्टेज कार्यान्वयन के लिए संशोधित किया जा सकता है।

सिफारिश की: