विषयसूची:

ब्राइट कंट्रोलेबल सनराइज लैंप: 6 स्टेप्स
ब्राइट कंट्रोलेबल सनराइज लैंप: 6 स्टेप्स

वीडियो: ब्राइट कंट्रोलेबल सनराइज लैंप: 6 स्टेप्स

वीडियो: ब्राइट कंट्रोलेबल सनराइज लैंप: 6 स्टेप्स
वीडियो: Research Aptitude : Steps of Research II UGC NET PAPER -1 Research Aptitude II Session-5 II 2024, जुलाई
Anonim
ब्राइट कंट्रोलेबल सनराइज लैंप
ब्राइट कंट्रोलेबल सनराइज लैंप
ब्राइट कंट्रोलेबल सनराइज लैंप
ब्राइट कंट्रोलेबल सनराइज लैंप

क्या आप कभी 7 बजे उठे, सामान्य समय जब आपको काम के लिए जागने की आवश्यकता होती है, और अपने आप को अंधेरे में पाया? सर्दी एक भयानक समय है, है ना? आपको आधी रात में जागना होगा (अन्यथा इतना अंधेरा क्यों है?), अपने आप को बिस्तर से चीर कर अपने अर्धचेतन शरीर को शॉवर में भेज दें।

इस परियोजना का उद्देश्य एक मुद्दे को हल करना है - सुबह का अंधेरा।

चारों ओर बहुत सारे सस्ते सनराइज लैंप हैं, लेकिन वे सभी कम शक्ति और पीले हैं। वे एक रात के दीपक की तरह हैं, जो आपको बेहतर नींद देने वाला है। मैं जो चाहता हूं वह बिल्कुल नहीं।

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

चरण 1: लैंप ऐरे

लैंप ऐरे
लैंप ऐरे
लैंप ऐरे
लैंप ऐरे

सबसे पहले हमें दीपक की ही जरूरत है। मेरे पास सफेद दीवारों और छत के साथ एक बहुत बड़ा कमरा है, इसलिए मैं 7 GU10 एलईडी लैंप के लिए गया, प्रत्येक में 6W जैसा कुछ, शुद्ध शक्ति के 40W से अधिक! यह आपको यह महसूस कराने के लिए पर्याप्त है कि यह पहले से ही दिन है। इसके अलावा इसे दिन के दौरान सामान्य कमरे की रोशनी के रूप में इस्तेमाल किया जा सकता है।

इससे कोई फर्क नहीं पड़ता कि आप इसे कैसे इकट्ठा करते हैं, आप किस सॉकेट के साथ किस लैंप का उपयोग करते हैं। सब कुछ जो मायने रखता है - ये मंद लैंप होने चाहिए!

मेरे मामले में, मेरे पास 7 GU10 सॉकेट्स के साथ एक लकड़ी का तख्ता है, जो सभी एक साथ जुड़े हुए हैं। मैं इसे बाद में प्लास्टिक के डिब्बे में डालूँगा।

चरण 2: डिमिंग थ्योरी

डिमिंग थ्योरी
डिमिंग थ्योरी

सिद्धांत रूप में सिद्धांत और व्यवहार के बीच कोई अंतर नहीं है। व्यवहार में है।

ESP32/Arduino से एक डिमर को नियंत्रित करना उतना आसान नहीं था जितना मैंने सोचा था। मुझे रोबोटडिन एसी लाइट डिमर मॉड्यूल में से एक मिला है। निर्माता उसके लिए एक पुस्तकालय का सुझाव देता है। यह ESP32 पर काम नहीं करता है (और इसे अनुकूलित करना वास्तव में कठिन है, क्योंकि यह बहुत कम स्तर के ATMega- विशिष्ट रजिस्ट्री एक्सेस का उपयोग करता है), Arduino Nano पर काम करता है, जो कम-मध्य चमक पर एक भयानक झिलमिलाहट देता है। इसलिए मैंने कुछ समय यह जांचने में बिताया कि यह सब कैसे काम करता है और अपना रास्ता खुद बनाता है।

थोड़ा सा सिद्धांत।

चुना हुआ डिमर मॉड्यूल एक बहुत ही लोकप्रिय TRIAC: BTA16 का उपयोग करता है। इसके बारे में बहुत सारे लेख हैं। मैं इसे यहाँ संक्षेप में प्रस्तुत करने का प्रयास करूँगा।

TRIAC एक मॉड्यूल है जो एक इनपुट पॉजिटिव या नेगेटिव वोल्टेज को आउटपुट में ट्रांसमिट कर सकता है, या इसे ब्लॉक कर सकता है। डिफ़ॉल्ट रूप से यह सब कुछ ब्लॉक कर देता है। इसे खोलने के लिए, हमें इसे 100 us के लिए गेट इनपुट पर एक उच्च संकेत देना चाहिए। तब यह तब तक खुला रहेगा जब तक कि करंट शून्य पर नहीं गिर जाता, जो तब होता है जब एक इनपुट वोल्टेज एक शून्य वोल्टेज को पार करते हुए संकेत को बदल देता है। फिर अगले चक्र में हमें एक और १०० us पल्स वगैरह करना चाहिए। पल्स कब देना है यह चुनकर, हम चमक को नियंत्रित करते हैं: इसे शुरुआत में ही करें, और यह 100% पावर ट्रांसमिशन के करीब होगा। इसे बाद में करें, और यह मंद हो जाएगा। इसे समझाते हुए, ऊपर दिए गए आरेख को देखें।

चक्र के एक ही बिंदु पर दालों को उत्पन्न करने के लिए, हमें यह जानना होगा कि यह कब शुरू होता है। इसीलिए डिमर मॉड्यूल में एक जीरो-क्रॉस डिटेक्टर बनाया गया है। यह हर बार वोल्टेज के शून्य को पार करने पर एक सिग्नल (जिसे हम Arduino में हार्डवेयर इंटरप्ट के रूप में पकड़ेंगे) को उठाता है।

चरण 3: डिमिंग अभ्यास

डिमिंग अभ्यास
डिमिंग अभ्यास

हाँ, इस तरह आप जागेंगे, अगर आपके दीपक में कोई रोशनी नहीं है और आपकी नींद की आँखों में सारी 40W शक्ति डाल देता है।

सामान्य मुद्दे।

ऐसे कई मुद्दे हैं जिन्हें हमें संबोधित करने की आवश्यकता है।

झिलमिलाहट।

गेट आउटपुट को चालू और बंद करने में माइक्रोकंट्रोलर का समय वास्तव में सटीक होना चाहिए। रोबोटडाइन पुस्तकालय सुझाव देता है, प्रत्येक 100us में एक टाइमर इंटरप्ट होता है, और केवल टाइमर पर गेट स्तर को बदलता है। इसका मतलब है कि यह इष्टतम मूल्य से +/- 50 माइक्रोसेकंड दूर हो सकता है। यह उच्च चमक पर अच्छा परिणाम देता है, लेकिन कम चमक पर बहुत झिलमिलाहट करता है। इसके अलावा अगर माइक्रोकंट्रोलर बहुत सारी चीजें करता है, तो यह समय की सटीकता को कम करता है, इसलिए आदर्श रूप से डिमर के लिए एक समर्पित माइक्रोकंट्रोलर का उपयोग किया जाना चाहिए।

न्यूनतम चमक। एलईडी में एक अंतर्निहित पावर कनवर्टर होता है, जो पर्याप्त शक्ति नहीं होने पर काम करने से मना कर देगा। मेरे लैंप १०-११% से शुरू होकर ठीक काम करते दिखाई दिए।

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

50/60 हर्ट्ज मुख्य आवृत्ति। आपको यह जानने की जरूरत है कि अगले शून्य से पहले कितना इंतजार करना है। यह बहुत आसान है - हम केवल दो अंतिम व्यवधानों के बीच के समय के अंतर को देखते हैं।

धीरे-धीरे चमक में बदलाव। ESP32 बहुत धीमा है, एक तुच्छ HTTP या यहां तक कि WebSocket अनुरोध को संसाधित करने में 0.5 सेकंड का समय लगता है, इसलिए एक चिकनी चमक संक्रमण की उम्मीद न करें, इसे किसी भी तरह से डिमर स्तर पर लागू करने की आवश्यकता है। इसलिए, जब यह एक सीरियल पोर्ट से एक नई चमक प्राप्त करता है, तो यह केवल लक्ष्य निर्धारित करता है, और फिर धीरे-धीरे समय के साथ इसके पास पहुंचता है।

समाधान।

यहाँ डिमर के लिए मेरा सरल Arduino कोड है। यह सीरियल इनपुट से एक कमांड (नई चमक के साथ एक बाइट) की प्रतीक्षा करता है, जीरो-क्रॉस इंटरप्ट को संभालता है, TRIAC को नियंत्रित करता है, उपरोक्त सभी मुद्दों को संभालता है।

चरण 4: लैंप नियंत्रक (ESP32)

लैंप नियंत्रक (ESP32)
लैंप नियंत्रक (ESP32)
लैंप नियंत्रक (ESP32)
लैंप नियंत्रक (ESP32)

मेरे पास मौजूद सभी घटकों का कनेक्शन स्कीमा यहां दिया गया है। ESP32 बोर्ड मेरे द्वारा उपयोग किए जाने वाले (Heltec) से बहुत अलग है, इसलिए चुने गए पिन थोड़े अजीब लगते हैं, लेकिन यह अभी भी ठीक काम करना चाहिए। अपनी परियोजना में विभिन्न पिनों का उपयोग करने के लिए स्वतंत्र महसूस करें।

यहां कोड यह सब नियंत्रित कर रहा है। यह काफी सीधा है।

मुख्य आकर्षण।

नियंत्रणीय। दीपक वाईफाई से जुड़ता है, पोर्ट 81 पर एक वेबसॉकेट सर्वर शुरू करता है, कमांड की प्रतीक्षा करता है। कमांड प्रारूप है

अभी के लिए केवल दो आदेश समर्थित हैं: "set_brightness" और "update_settings", जो कि… काफी आत्म-वर्णनात्मक हैं।

एनटीपी से समय प्राप्त करना। मैं चीजों को अधिक जटिल नहीं करना चाहता और स्कीमा में एक वास्तविक समय घड़ी जोड़ना चाहता हूं। हमारे पास इंटरनेट का उपयोग है, जिसका अर्थ है कि हम कुछ एनटीपी सर्वर से वास्तविक समय प्राप्त कर सकते हैं और फिर सिस्टम टाइमर का उपयोग करके वर्तमान समय का ट्रैक रख सकते हैं।

सूर्योदय अलार्म। आप एक अलार्म सेट कर सकते हैं। यह वास्तव में क्या करता है: न्यूनतम चमक से शुरू होता है और धीरे-धीरे 10 मिनट में पूर्ण चमक तक जाता है। फिर यह एक दो घंटे तक रहता है। फिर यह धीरे-धीरे 60 सेकंड में बंद हो जाता है।

उपरोक्त सभी पैरामीटर कॉन्फ़िगर करने योग्य हैं।

पक्षी गाते हैं। डीएफप्लेयर मिनी संगीत चलाने के लिए प्रयोग किया जाता है। इसके लिए बहुत सारे गाइड हैं, लेकिन अनिवार्य रूप से आपको केवल एक माइक्रोएसडी कार्ड प्लग करने की आवश्यकता है, जिसे FAT32 में स्वरूपित किया गया है, जिसमें एक फ़ाइल 0001.mp3 है। इस फ़ाइल में आपकी पसंद की कोई भी चीज़ हो सकती है, मेरे मामले में यह पक्षियों के गायन के 15 मिनट (इसे लूप किया जाएगा), और यह मेरी सुबह को अद्भुत बनाता है। ध्यान दें कि बिजली पर एक विशाल संधारित्र है, और सीरियल लाइन पर 1 kOhm प्रतिरोधक हैं ESP32 और DFplayer - वे वैकल्पिक हैं, लेकिन शोर को कम करने में मदद करते हैं।

EEPROM में सेटिंग्स को स्टोर करना। सभी सेटिंग्स EEPROM में लिखी जाती हैं और स्टार्ट पर लोड की जाती हैं। यह बिना नियंत्रक से जुड़े कम से कम अलार्म सुविधा के साथ दीपक का उपयोग करना संभव बनाता है।

OLED स्क्रीन पर कुछ जानकारी प्रदान करना। My Heltec ESP32 में एक अंतर्निहित SSD1306 128X64 I2C स्क्रीन है। सभी आवश्यक जानकारी उस पर प्रदान की जाती है।मुझे पता है, बॉक्स बदसूरत लग रहा है, मैंने कुछ सामान सिर्फ 3 डी-प्रिंट किया है और छेद और खिड़कियों को एक ड्रिल के साथ काट दिया है। जल्दी, गंदा, लेकिन यह काम करता है!

चरण 5: नियंत्रण कक्ष

कंट्रोल पैनल
कंट्रोल पैनल
कंट्रोल पैनल
कंट्रोल पैनल

वह परियोजना का दिल है। मूल 7 डिस्प्ले वाला रास्पबेरी पाई, कुछ किवी फ्रंट-एंड चला रहा है।

यहाँ पूर्ण स्रोत कोड है।

सुविधाएं।

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

मौसम। वर्तमान तापमान और दबाव बाहर दिखाएं। यदि आप रिमोट सेंसर - अंदर के तापमान को भी जोड़ते हैं। यह अगले 12 घंटों के लिए मौसम पूर्वानुमान का अनुरोध और विश्लेषण भी करता है और बारिश की संभावना के बारे में सलाह देता है।

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

Screensaver. Renders Game of Life कुछ समय की निष्क्रियता के बाद स्क्रीन पर।

उससे कहीं ज्यादा हुआ करता था, लेकिन दूसरी चीजें बेकार लगती थीं।

स्थापना।

मैंने रास्पियन पर सब कुछ मैन्युअल रूप से स्थापित किया है, और अब मैं कह सकता हूं: मेरी गलतियों को न दोहराएं। KivyPie का उपयोग करें, इसमें सब कुछ पहले से इंस्टॉल है।

इसके अलावा, बस कोड रिपॉजिटरी में इंस्टॉलेशन गाइड का पालन करें।

चरण 6: आनंद लें

व्यक्तिगत रूप से मैं डिवाइस से खुश हूं। मैं इसे एक दिन के दौरान घर पर मुख्य प्रकाश के रूप में उपयोग करता हूं, और यह मुझे सुबह उठने देता है, यह आश्चर्यजनक है।

मुझे पता है कि निर्देश बहुत बारीक और वर्णनात्मक नहीं हैं। अगर कोई ऐसा ही करता है और समस्याएँ हैं - मुझे मदद करने में खुशी होगी!

सिफारिश की: