आपातकालीन प्रकाश स्विच स्थिति सेंसर

हर कोई जो एक स्वायत्त आपातकालीन प्रकाश व्यवस्था को डिजाइन करता है, उससे पहले या बाद में, आपातकालीन रोशनी को चालू करने और बंद करने की समस्या उत्पन्न होती है। यह सबसे सुविधाजनक और पारदर्शी तरीके से कैसे करें, ताकि अतिरिक्त स्विच के साथ कमरों के डिजाइन को खराब न करें?


कटौती के तहत समाधान में से एक।


पृष्ठभूमि


आधुनिक दुनिया में, बहुत सारी चीजें निर्बाध बिजली आपूर्ति से बंधी हुई हैं। 24/7 संचालित कंप्यूटर और संचार के बिना अधिकांश प्रकार की बौद्धिक गतिविधि पहले से ही समझ से बाहर हैं। यह न तो अच्छा है और न ही बुरा है, यह है, और आपको इसके साथ रहने की जरूरत है। खासकर अगर आपका कार्यस्थल एक आधुनिक कार्यालय में नहीं है, यूपीएस और बैकअप डीजल जनरेटर के साथ भरवां है, लेकिन एक साधारण आवासीय उच्च वृद्धि वाली इमारत के एक अपार्टमेंट में। और ऐसा हुआ कि पूर्व यूएसएसआर के अधिकांश शहरों में आवास की ऊर्जा आपूर्ति की विश्वसनीयता वांछित होने के लिए बहुत कुछ छोड़ देती है। नतीजतन, घर के आउटलेट और निकटतम पावर स्टेशन को जोड़ने वाले धागे को समय-समय पर तोड़ने की बुरी आदत है। जब हर छह महीने में एक बार, और जब और दिन में तीन बार।

इसीलिए, एक नए अपार्टमेंट में मरम्मत शुरू करते समय, मैंने शुरू में निर्बाध बिजली आपूर्ति और प्रकाश व्यवस्था के लिए परियोजना में समानांतर वायरिंग रखी।

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

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

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

संक्षेप में, जनरेटर के साथ विचार मर गया, इसलिए स्पष्ट रूप से और जन्म नहीं हुआ। शेष वास्तविक विकल्पों में से, केवल बैटरी ही बनी रही।

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

और अगर किसी को इस मुद्दे के विशुद्ध रूप से व्यावहारिक पक्ष में दिलचस्पी है और कोई बात नहीं है कि मुझे इस तरह का जीवन कैसे मिला, तो वह कई पत्रों को छोड़ सकता है और सीधे तैयार समाधान के विवरण में जा सकता है।

संक्षेप में बैटरी के प्रकार को चुनने के बारे में


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

आज, वैकल्पिक ऊर्जा के तेजी से विकास की सदी में, सौर या पवन मिनी पावर स्टेशनों के साथ संयुक्त रूप से घर के लिए अपेक्षाकृत सस्ती औद्योगिक रूप से निर्मित निर्बाध बिजली आपूर्ति प्रणाली दिखाई देने लगी है। उनमें से सबसे उन्नत पूरी प्रणाली की प्रभावशीलता के इलेक्ट्रॉनिक "एन्हांसर्स" के ढेर के साथ लिथियम-आयन बैटरी का उपयोग करते हैं।

मेरे मामले में, किसी भी मिनी-पावर प्लांट के बारे में वस्तुनिष्ठ कारणों से बात नहीं हो सकती है, और केवल बैकअप स्रोत, "ज्ञानोदय" के दौरान एक सामान्य आउटलेट से अक्षय, दिलचस्प था। इसलिए, अपार्टमेंट यूपीएस के सभी इलेक्ट्रॉनिक सामानों को अपने दम पर सामूहिक खेत करने का निर्णय लिया गया। और जब से मेरे हाथ पूरी तरह से अछूते थे, पहली बात यह तय करने की आवश्यकता थी कि किस प्रकार की बैटरी का उपयोग करना है।

सबसे पहले, मैंने इस तरह सोचा: “लिथियम क्यों नहीं? स्टाइलिश ट्रेंडी युवा। सील, ऊर्जा कुशल, टिकाऊ। ” लेकिन जब मैंने कीमतों पर ध्यान दिया, तो मेरे लिथियम फैक्टर ने ध्यान दिया। स्कूल अंकगणित के साथ संयोजन में एक त्वरित खोज से पता चला है कि बहुत ही "गूंगा" चीनी 26650 बैंकों के साथ (निश्चित रूप से) सबसे ईमानदार 5000 एमएएच में एक ही ऊर्जा खपत के एसिड बैटरी की तुलना में पांच गुना अधिक खर्च होगा। और यदि आप मूल्य के आधार पर छंटनी की गई कीमत के नीचे से कुछ चुनते हैं, तो अंतर आसानी से 8-10 गुना तक पहुंच जाता है।

और आप मूल्य में इतने बड़े अंतर के लिए कैसे बना सकते हैं?

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

बेशक, एक अच्छा "लिथियम", लेकिन सही दृष्टिकोण के साथ लंबे समय तक चलेगा। लेकिन दस गुना?

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

संक्षेप में, कारकों के योग से, मैंने अगले पुनरावृत्ति तक लिथियम के विचार को स्थगित करने का निर्णय लिया। शायद कुछ वर्षों में कुछ बदल जाएगा, लेकिन अभी के लिए, लीड हमारी सब कुछ है।

, , . , , , .

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

एक अन्य "सही" विकल्प इलेक्ट्रिक ऑटो-लोडर के लिए कर्षण बैटरी है या, क्या नरक, एक डीजल पनडुब्बी है। इन बैटरियों में गहरे निर्वहन के लिए उच्च स्थायित्व और अच्छी सहनशीलता होती है, जबकि मालिक से "कुछ पानी ऊपर" करने का अवसर नहीं छीनता।

खैर, "गलत" विकल्प पास की कार की दुकान से स्टार्टर बैटरी है। ऐसी बैटरी संक्षिप्त रूप से पहाड़ की एक किलोवाट शक्ति को दे सकती है, लेकिन इसके लिए कोई भी निर्वहन तनावपूर्ण है, जैसे आलसी व्यक्ति के लिए काम करना। और डिस्पोजेबल बैटरी की महिमा आम तौर पर आधुनिक कैल्शियम बैटरी में उलझी हुई है: "छुट्टी दे दी गई - परिवर्तन।"

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

इस मामले में मुख्य बात बैटरी की स्थापना के स्थान पर कम से कम "दीवार में छेद" स्तर पर वेंटिलेशन प्रदान करना है। खैर, शॉर्ट सर्किट के खिलाफ भोज संरक्षण का आयोजन करें, क्योंकि वर्तमान स्रोत का कम वोल्टेज सतर्कता को कम कर देता है और सब कुछ बहुत बुरी तरह से समाप्त हो सकता है।

एक ही अपार्टमेंट में वर्तमान युद्ध


बैटरी के प्रकार पर अंतिम निर्णय के कारण कुछ नैतिक आश्वासन के बाद, एक नया कारण तुरंत ध्यान से सोचने के लिए दिखाई दिया।

आपको याद दिला दूं कि शुरू में मैं एक 230 V अल्टरनेटर प्राप्त करना चाहता था। हालाँकि, उद्देश्य वास्तविकता और मानसिक रूप से बैटरी पर स्विच करने के बाद, सोचने की जड़ता ने मुझे पहले से ही प्रसिद्ध चीनी ऑनलाइन बाजार में ले लिया ताकि एक उपयुक्त DC से AC कनवर्टर का चयन किया जा सके। और विशेषताओं का अध्ययन करने की प्रक्रिया में, "संशोधित साइन लहर" शब्द, जिसे भुला दिया गया था, पहले सामने आया, और फिर सामान्य ज्ञान असहज प्रश्नों को फेंकना शुरू कर दिया।

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

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

लगभग इन सभी उपकरणों को अपने संचालन के लिए 5 से 21 वी तक एक निरंतर वोल्टेज की आवश्यकता होती है और पहले बैटरी वोल्टेज को 230 वी एसी तक बढ़ाने की कोई आवश्यकता नहीं होती है, फिर इसे कम करने और इसे फिर से शुरू करने या प्रारंभिक स्तर पर शून्य करने के लिए। इन परिवर्तनों पर, 50% ऊर्जा तक खोना आसान है, जो मुझे बिल्कुल भी नहीं भाया।

संक्षेप में, यह कि विकल्प के रूप में निम्न-वोल्टेज प्रत्यक्ष वर्तमान नेटवर्क का उपयोग करने का विचार कितनी आसानी से आया। और तारों में नुकसान की अनुमानित गणना के बाद, प्रारंभिक 12 (13.8) वी एक अधिक व्यावहारिक 24 (27%) में बदल गया।

सबसे पहले मैं 36 (41.4) बी भी लेना चाहता था, लेकिन कुछ इलेक्ट्रॉनिक घटकों की विशेषताओं का अध्ययन करने के बाद जो मैंने इस सभी अर्थव्यवस्था के साथ काम करने के लिए उपयोग करने की योजना बनाई, मुझे अपनी भूख को कम करना पड़ा।

इस प्रकार, शुद्ध तांबे के 3.5 मिमी 2 के क्रॉस-सेक्शन के साथ एक वैकल्पिक वायरिंग में, श्रृंखला में जुड़े दो कार बैटरी से अंततः वोल्टेज लागू किया गया था।

, . ( ) . , .

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


इन आउटलेट्स के लिए लैपटॉप एडेप्टर बनाए गए थे, वोल्टेज को वांछित 18-20 वी तक कम किया गया और संबंधित कनेक्टरों से लैस किया गया। यह स्पष्ट है कि ऊँची एड़ी के जूते हर छोटी चीज़ के लिए सामान्य पांच-वोल्ट यूएसबी-चार्ज से बने थे। ठीक है, केवल मामले में, छोटे 24/230 वी कन्वर्टर्स की एक जोड़ी खरीदी गई थी, जिसमें 50 और 200 वाट की शक्ति थी।

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

मैं इस लेख में पावर प्लांट के बारे में बात नहीं करूंगा, खासकर क्योंकि इसमें कुछ भी दिलचस्प नहीं है, इसलिए मैं सीधे "नीचे" समस्याओं में से एक पर जाऊंगा, अर्थात् प्रकाश प्रयोजनों के लिए बैटरी द्वारा संचित ऊर्जा का उपयोग करने का मुद्दा।

प्रकाश


इसलिए, जब मुख्य वायरिंग के समानांतर अपार्टमेंट में वायरिंग होती है, तो 24 (27.6) वी के वोल्टेज के साथ एक वैकल्पिक डीसी नेटवर्क के तारों को खींचा गया था। अन्य चीजों के अलावा, इस तरह के तारों की एक जोड़ी से युक्त एक लूप प्रत्येक स्विच बॉक्स में घाव था और फिर 230 वी नेटवर्क तारों के साथ मिलकर। छत की रोशनी का नेतृत्व किया (यदि कमरे में कई थे, तो वैकल्पिक तार केवल एक का नेतृत्व किया)।

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

किसी भी मामले में, यह एक तकनीकी समस्या से अधिक सौंदर्य है, और अब यह कुछ और है।

इसलिए, प्रत्येक स्विच के बॉक्स में, मेरे पास "साधारण" प्रकाश पर स्विच करने के लिए 230 वी नेटवर्क के एक चरण तार का एक लूप है, और आपातकालीन प्रकाश व्यवस्था के लिए डीसी नेटवर्क के दोनों तारों का एक लूप है। इसी से और नाचो।

अंत में, मेरे सामने चुनौती एक निश्चित उपकरण बनाने की थी जो तीन राज्यों को एक-दूसरे से अलग कर सके:

  • एसी मेन ओके → आपातकालीन लाइट बंद करें।
  • एसी नेटवर्क डी-एनर्जेटिक है, स्विच संपर्क बंद हैं → आपातकालीन प्रकाश चालू करें।
  • एसी नेटवर्क डी-एनर्जेटिक है, स्विच संपर्क खुले हैं → आपातकालीन लाइट बंद करें।

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

  1. दोनों मुख्य और आपातकालीन प्रकाश व्यवस्था का प्रबंधन एक शासी निकाय से पूरी तरह से पारदर्शी होना चाहिए, अतिरिक्त बटनों का कोई "सामूहिक खेत" नहीं।
  2. , , , .
  3. , .
  4. – , .
  5. - .
  6. ( ), .
  7. .

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

सेंसर


फिर भी, साधन वोल्टेज को मापने का एक विकल्प मौजूद है। वोल्टेज की उपस्थिति निर्धारित करने के लिए मेरे लिए यह आवश्यक नहीं है, स्विच बंद के संपर्कों के साथ चरण तार में वर्तमान की उपस्थिति निर्धारित करने के लिए पर्याप्त है। आखिरकार, यदि वर्तमान है, तो वोल्टेज है। इसके अलावा, ठीक वर्तमान के "पढ़ने" से आपातकालीन प्रकाश व्यवस्था को न केवल एक बिजली की विफलता की स्थिति में सक्रिय किया जा सकता है, बल्कि एक केले के बल्ब के जलने की स्थिति में भी। यह विधि स्विच बंद होने पर एसी नेटवर्क की स्थिति को निर्धारित करने की अनुमति नहीं देती है, लेकिन यह राज्य मुझे परेशान नहीं करता है, क्योंकि एक बार स्विच बंद हो जाने के बाद, आपातकालीन प्रकाश व्यवस्था को या तो काम नहीं करना चाहिए।

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

किसी भी इलेक्ट्रीशियन के लिए एक बहुत ही उपयोगी उपकरण, वर्तमान क्लैम्प्स का काम उसी सिद्धांत पर आधारित है।

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

मेरे भविष्य के डिवाइस का दूसरा "इनपुट पैरामीटर" स्विच संपर्कों की स्थिति होना चाहिए।

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

एकल स्विच के बजाय एक डबल ले जाना संभव था और यंत्रवत् इसके हिस्सों को "समानांतर" कर दिया ताकि वे एक पूरे हो गए। यह विकल्प बाहरी सौंदर्यशास्त्र में भिन्न नहीं था और उन कमरों में समस्या को हल नहीं करता था जहां प्रकाश डबल-सर्किट था और शुरू में स्विच डबल था।

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

«» , . , , , . , , , .

संक्षेप में, एक ऐसी विधि के साथ आना आवश्यक था जिसे स्विच के संशोधन की आवश्यकता नहीं होगी। और यह विधि मिल गई।

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

यदि हम ऐसे ट्रांसफार्मर की द्वितीयक वाइंडिंग में प्रत्यावर्ती धारा को लागू करते हैं, तो यह रिंग में पिरोए गए तार के सिरों पर वोल्टेज को प्रेरित करता है। और, सबसे महत्वपूर्ण बात, स्रोत से घुमावदार द्वारा खपत की गई ऊर्जा इस बात पर निर्भर करेगी कि तार में द्वितीयक प्रवाह परिपत्र गति के लिए अपना रास्ता ढूंढता है या नहीं।

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


सिद्धांत रूप में, कुछ शर्तों के तहत इस सर्किट को बंद करने के लिए, एक संधारित्र की आवश्यकता नहीं है। यदि ट्रांसफार्मर में पर्याप्त रूप से उच्च आवृत्ति का एक प्रवाह "पंप" किया जाता है, तो तारों के बीच आवारा समाई गुज़रने के लिए पर्याप्त होगी।


तो, ऐसे डिटेक्टर को व्यवस्थित करने के लिए क्या आवश्यक है:

  1. करेंट ट्रांसफॉर्मर।
  2. ट्रांसफार्मर का आउटपुट वोल्टेज मीटर।
  3. उच्च-आवृत्ति वाले प्रत्यावर्ती धारा का स्रोत।
  4. एक उल्टा ट्रांसफार्मर के घुमावदार माध्यम से बहने वाला वर्तमान मीटर।

इष्टतम मापदंडों का चयन करने के मामले में सबसे कठिन एक ट्रांसफार्मर है, जो वर्तमान ट्रांसफार्मर मोड में 50 हर्ट्ज की आवृत्ति के साथ एक स्वीकार्य वोल्टेज देना चाहिए, और सर्किट ब्रेकर राज्य के सक्रिय "संवेदन" मोड में, सैकड़ों KHz की आवृत्ति पर स्वीकार्य संचरण गुणांक है। यह तत्व इलेक्ट्रॉनिक सर्किट मॉडलिंग के लिए एक कार्यक्रम में अनुकरण करना संभव नहीं है, और यहां तक ​​कि गणितीय गणना के साथ सब कुछ बहुत मुश्किल निकला। मुझे अपने हाथों में एक टांका लगाने वाला लोहा लेना था और सर्वोत्तम की तलाश में विभिन्न विकल्पों को चलाने में घंटों बिताना था।

घुमावों की संख्या और इष्टतम भार प्रतिरोध को अनुभवजन्य रूप से चुना गया था और इस तथ्य पर नहीं कि मैंने सबसे अच्छा अनुपात याद नहीं किया। प्रयोगों के परिणामस्वरूप, निम्नलिखित निर्माण दिखाई दिए:

  • 10,000 की पारगम्यता के साथ फेराइट कोर, आकार 10x6x4 मिमी।
  • 0.25 मिमी तामचीनी तार के साथ 30 घुमाव।
  • घुमावदार का सक्रिय भार 1 kOhm है।

चुंबकीय पारगम्यता काफी बड़ी है, शायद, यह 5000 या 2000 इकाइयों के लिए एक अंगूठी का उपयोग करने के लिए समझ में आता है, लेकिन पर्याप्त मात्रा में मेरे पास ये छल्ले थे। सामान्य तौर पर, इस मामले में पारगम्यता एक समझौता मूल्य है। बहुत कम ट्रांसफार्मर 50 हर्ट्ज की आवृत्ति पर ऑपरेशन के लिए अनुपयुक्त बनाता है, और बहुत अधिक सैकड़ों किलोहर्ट्ज़ से अधिक आवृत्तियों पर सब कुछ खराब कर देता है।

एकाधिक प्रयोगों ने विचार की वास्तविकता की पुष्टि की और निम्नलिखित परिणाम प्राप्त हुए:

  • वर्तमान ट्रांसफार्मर मोड में, संचरण गुणांक प्रवाह शक्ति (वोल्टेज 220-230 वी) के प्रति वाट लगभग एक मिलीवॉट निकला।
  • जांच मोड में, रिसाव की आवृत्ति और धारिता के आधार पर, स्विच के बंद और खुले संपर्कों के साथ वर्तमान अंतर दो से तीन गुना तक पहुंच गया।

बस इतना ही। दोनों मान प्रवाह प्रवाह के विश्वसनीय निर्धारण और स्विच संपर्कों की स्थिति निर्धारित करने के लिए पर्याप्त से अधिक हैं। यह केवल विशिष्ट कार्यान्वयन तक है।


लोहे में


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

, « , , - «» , ».

. . . , , , .

यहां आपको माप के बीच वर्तमान स्थिति को संग्रहीत करने के लिए कम से कम एक जनरेटर, एक वोल्टेज मीटर और कुछ प्रकार के ट्रिगर को संयोजित करने की आवश्यकता है। सामान्य तौर पर, किसी भी सट्टा स्केच को केवल "कोर" पर कम से कम तीन मामलों की आवश्यकता होती है, और नियंत्रक अधिक व्यावहारिक निकला।

10-20 डब्ल्यू के भार के साथ वर्तमान ट्रांसफार्मर से वोल्टेज 10-20 mV है और इसे 1.1 V की सीमा के साथ DAC इनपुट पर आपूर्ति करना बहुत छोटा है। इसलिए, नियंत्रक के अलावा, आपको सिग्नल वोल्टेज को कम से कम बढ़ाने के लिए लगभग 100 के हस्तांतरण गुणांक के साथ एक एम्पलीफायर की भी आवश्यकता है। सैकड़ों मिलीवोल्ट तक।

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

मैं मध्यवर्ती विकल्पों के साथ पाठक को पीड़ा नहीं दूंगा और तुरंत डिवाइस का अंतिम आरेख दे दूंगा।


इधर किफायती रैखिक नियामक LM2931-5.0 के माध्यम से डीसी वोल्टेज नियंत्रक को खिलाती है। आवास, कार्यक्षमता और पिनआउट के संदर्भ में, यह स्टेबलाइजर लोकप्रिय 78L05 के समान है, लेकिन कम आंतरिक खपत (10 एमए के भार पर लगभग 500 μA) और इनपुट वोल्टेज के कम फटने के लिए अधिक सहिष्णुता से अलग है। यदि आप 20 वी से अधिक के वोल्टेज के साथ काम करने की योजना बनाते हैं, तो आप एलपी 2950-5.0 के और भी अधिक किफायती एनालॉग का उपयोग कर सकते हैं।

LP2950-5.0 30 . 24 . - , , , , . 50%, 100%.

आरेख में ट्रांसफार्मर को नहीं दिखाया गया है, लेकिन इसकी विंडिंग पिंस TR1 और TR2 से जुड़ी है।

लोड स्विच करने के लिए एक प्रमुख तत्व के रूप में, एक कम-वर्तमान पी-चैनल एमओएस ट्रांजिस्टर 2SJ196 का उपयोग किया जाता है (किसी भी एलईडी लैंप के लिए 1 ए तक का वर्तमान पर्याप्त होना चाहिए), लेकिन पिनआउट के लिए उपयुक्त किसी भी अन्य, अधिकतम वर्तमान और अधिकतम नाली वोल्टेज का उपयोग किया जा सकता है।

सक्रिय तत्वों से नियंत्रक और कुंजी के अलावा, दो ट्रांजिस्टर का उपयोग किया जाता है। आपातकालीन स्रोत के वोल्टेज के तहत काम करने वाले कुंजी के शटर को नियंत्रित करने के लिए एक की आवश्यकता होती है। दूसरा वर्तमान ट्रांसफार्मर के आउटपुट से एम्पलीफायर सिग्नल के रूप में कार्य करता है।

इस बिंदु पर, आप op-amps का उपयोग कर सकते हैं, लेकिन विवरण के संदर्भ में लाभ कम से कम था, और आपको कई सौ किलोहर्ट्ज़ से अधिक आवृत्तियों पर काम करने के बारे में भूलना होगा।

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

सेंसर के संचालन का सिद्धांत सरल है। सबसे पहले, तार में वर्तमान को मापने के लिए आवश्यक क्रियाओं के एल्गोरिथ्म पर विचार करें।

वर्तमान माप मोड में, पिन PB0 को आउटपुट मोड में रखा जाता है और एक तर्क शून्य द्वारा ग्राउंड किया जाता है। यह नियंत्रक से किसी भी संकेत को TR1 बिंदु पर भेजे जाने से रोकता है। समानांतर में, पिन पीबी 3 पर समान क्रियाएं की जाती हैं, जिसके परिणामस्वरूप कैपेसिटर सी 2 का शीर्ष आउटपुट ग्राउंडेड होता है। यह संधारित्र आर 1 के साथ मिलकर 1500-हर्ट्ज की कटऑफ आवृत्ति के साथ एक कम-पास फिल्टर बनाता है। इस फिल्टर के लिए धन्यवाद, मापा संकेत के गठन में विभिन्न उच्च आवृत्ति शोर की भूमिका बहुत कम हो जाती है।

तब सिग्नल एम्पलीफायर को पावर करने के लिए PB4 पर एक उच्च स्तर लागू किया जाता है। ट्रांसजेंडरों के पूरा होने के बाद, ट्रांसफार्मर आउटपुट से 50 हर्ट्ज का एक प्रवाह प्रवर्धित होता है और रेक्टिफायर तक पहुंच जाता है, जहां यह कैपेसिटर C8 चार्ज करता है।

संधारित्र C8 का चार्ज ADC1 का उपयोग करके मापा जाता है और प्राप्त वोल्टेज मान से ट्रांसफार्मर के माध्यम से बहने वाले "प्राथमिक" वर्तमान के बारे में एक निष्कर्ष निकाला जाता है।

सक्रिय संवेदन अलग तरीके से किया जाता है। सबसे पहले, पिन PB0 को PWM सॉल्वर में अनुवादित किया जाता है, और एक सिग्नल इसे सैकड़ों किलोहर्ट्ज़ से मेगाहर्ट्ज़ की इकाइयों तक आवृत्ति के साथ खिलाया जाता है। यह संकेत एक प्रतिरोधक विभक्त द्वारा कुछ हद तक देखा जाता है और बिंदु TR1 पर चालू ट्रांसफार्मर को खिलाया जाता है। कैपेसिटर सी 1, विभक्त आर 4 के एक ऊपरी बांह के साथ मिलकर, लगभग 1.5 मेगाहर्ट्ज की कटऑफ आवृत्ति के साथ एक कम-पास फिल्टर बनाता है, जो आयताकार दालों से उच्च-आवृत्ति हार्मोनिक्स के स्तर को कम करता है।

ट्रांसफार्मर घुमावदार के माध्यम से गुजरने के बाद, बिंदु TR2 से जांच संकेत समान एम्पलीफायर और डिटेक्टर को मिलता है, इसी तरह संधारित्र C8 को ट्रांसफार्मर के "बाहरी" सर्किट में लोड के आनुपातिक वोल्टेज के लिए चार्ज करने के लिए। उसी तरह, संधारित्र चार्ज को माइक्रोकंट्रोलर के एडीसी का उपयोग करके मापा जाता है।

अब कुछ "ढीले" के लिए स्पष्टीकरण।

Resistor R5 को पावर स्विच के गेट पर वोल्टेज को सीमित करने के लिए डिज़ाइन किया गया है, जिसके लिए लो-वोल्टेज MOSFETs आमतौर पर 20 V से अधिक नहीं होना चाहिए। मेरे मामले में, डीसी नेटवर्क में 30 V तक का वोल्टेज है, जिसने 1: 3 डिवाइडर की आवश्यकता को निर्धारित किया, जो R3 के साथ संयोजन में प्राप्त होता है। जब 20 वी से कम के स्रोत से संचालित किया जाता है, तो प्रतिरोधक आर 5 की आवश्यकता नहीं होती है (एक जम्पर द्वारा प्रतिस्थापित)।

कैपेसिटर सी 4 और सी 5 2 μF की समाई प्राप्त करने के लिए समानांतर में जुड़े हुए हैं। कैपेसिटर की यह जोड़ी इस बात में उल्लेखनीय है कि इसे निम्न और उच्च आवृत्तियों दोनों के संकेतों को समान रूप से प्रसारित करना चाहिए। यहां कई माइक्रोफारड्स के इलेक्ट्रोलाइटिक कैपेसिटर और सौ या दो नैनोफर्ड्स के एक सिरेमिक के समानांतर कनेक्शन का उपयोग करना संभव होगा, लेकिन इतनी छोटी क्षमता का "इलेक्ट्रोलाइट" माइक्रोफ़ारड "सिरेमिक" की तुलना में आकार में लाभ नहीं देता है। सच है, 2 माइक्रोफ़ारड पर एक सिरेमिक कैपेसिटर खरीदना संभव नहीं था, इसलिए मैंने दो को एक ही रखा।

, 50 2 , . , . . 100 , , . .

प्रतिरोधों आर 4 और आर 1 एक वोल्टेज डिवाइड बनाते हैं, जो कम या ज्यादा वर्तमान ट्रांसफार्मर के आउटपुट वोल्टेज के साथ पीडब्लूएम आउटपुट पर पांच-वोल्ट वैकल्पिक वोल्टेज के बराबर होता है।

संधारित्र C8, जैसा कि पहले उल्लेख किया गया है, मापा जाने वाला वोल्टेज जमा करता है। यह बेहतर है अगर यह एक उच्च गुणवत्ता वाला संधारित्र है जिसमें न्यूनतम रिसाव चालू है।

विशेष उल्लेख माइक्रोकंट्रोलर रीसेट पैर से जुड़े दो-पिन "कंघी" TP1 / TP2 के योग्य है। इन संपर्कों का उपयोग न केवल रिबूट करने के लिए किया जाता है, बल्कि अंशांकन मोड में प्रवेश करने के लिए किया जाता है, जो नीचे वर्णित है। बस, सभी विशलिस्ट के कार्यान्वयन के बाद, नियंत्रक के पास अब मुफ्त पिन नहीं था, और फर्मवेयर की डिबगिंग के दौरान एक सरल नियंत्रण जोड़ने की आवश्यकता थी। इसलिए मुझे इस उद्देश्य के लिए नियंत्रक रीसेट पैर का उपयोग करना पड़ा।

«» AVR RESET GPIO. , . , . , , , , RESET.

सामान्य तौर पर, सर्किट काफी सरल निकला, और सभी "जादू" को माइक्रोकंट्रोलर के फर्मवेयर में लागू किया गया है। हालांकि, प्रोटोटाइप के निर्माण के बाद, यह पता चला कि "जांच" के विश्वसनीय संचालन के लिए तारों का समाई अक्सर पर्याप्त नहीं होता है। ट्रांसफार्मर के माध्यम से वर्तमान में अंतर केवल हस्तक्षेप के स्तर के साथ तुलनीय हो जाता है और सर्किट का संचालन अविश्वसनीय हो जाता है।

इसलिए, मुझे तारों पर लटकी हुई फेराइट रिंग को स्वतंत्र रूप से त्यागना पड़ा, और जांच के कार्य को सुविधाजनक बनाने के लिए, डिवाइस के एक नए संशोधन में सीधे बोर्ड पर एक उच्च-वोल्टेज सर्किट को जोड़ना चाहिए।

यहाँ बिंदु एक समर्पित संधारित्र जोड़ने के लिए है, ताकि स्विच के संपर्कों के माध्यम से आरएफ वर्तमान के लिए रास्ता बंद करने का सबसे छोटा रास्ता हो।


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

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

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

चोक एल 1 और एल 2 डंबल या रिंग प्रकार कोर पर ध्यान देने योग्य मोटाई के तार के साथ घाव, शक्ति होना चाहिए। "रोकनेवाला" अक्षीय डिज़ाइन में सिग्नल चोक का उपयोग नहीं किया जा सकता है।

वर्तमान ट्रांसफार्मर का प्राथमिक मोड़ अब रिंग के माध्यम से पिरोया गया तार का एक टुकड़ा है और बोर्ड पर TR3 और TR4 को मिलाया जाता है। रिंग के दोनों तरफ TR5 और TR6 के लिए स्क्रीन को कनेक्ट करते समय, इस तार को ढाल दिया जाए तो बेहतर है।

TR6 , . - , . , .


फर्मवेयर कोड और इकट्ठे HEX फ़ाइल सर्किट के साथ लेख के अंत में और मुद्रित सर्किट बोर्ड के लेआउट से जुड़े होते हैं।

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

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

हर बार चालू होने पर सेंसर अंशांकन मोड में प्रवेश करता है, जबकि कोई अंशांकन डेटा नहीं होता है, या संपर्कों को बंद करने के बाद TP1 और TP2। अंशांकन के पहले चरण में प्रवेश पांच बार चमकती आपातकालीन दीपक द्वारा इंगित किया जाता है।

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

अगला, दूसरा अंशांकन चरण शुरू होता है और आपातकालीन दीपक दो बार चमकता है। स्विच को "चालू" स्थिति में स्विच करने के लिए 7.5 सेकंड का समय दिया जाता है और समय समाप्त होने के बाद कार्यक्रम दीपक द्वारा खपत वर्तमान को मापता है। यदि दीपक में कई चमक स्तर हैं, तो स्विच करने के बाद, आपको तुरंत इसे न्यूनतम पर स्विच करना होगा, ताकि भविष्य में सेंसर किसी भी उपलब्ध स्तर के साथ सही ढंग से काम करेगा।

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

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

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

फाइनल में डबल पलक के साथ जांचने के लिए सेंसर की लगातार अनिच्छा के मामले में, आपको C10 की क्षमता बढ़ाने की कोशिश करनी चाहिए।

संपूर्ण


डिवाइस एक स्विच बॉक्स में फिट होने के लिए काफी सरल, कॉम्पैक्ट निकला, लेकिन यह कहने के लिए नहीं कि इसे कॉन्फ़िगर करना बहुत आसान है। बेशक, यह एक आधुनिक "स्मार्ट होम" के घटक पर नहीं खींचता है, क्योंकि इसमें 5 जी, क्लाउड नियंत्रण नहीं है, और यहां तक ​​कि जीपीएस के साथ भोज वाईफाई भी प्रदान नहीं किया गया है। फिर भी, इनमें से आठ उपकरण अपना एकमात्र कार्य करते हैं, और ब्लैकआउट परिस्थितियों में इनके अलावा कुछ भी आवश्यक नहीं है।

फर्मवेयर स्रोत कोड (Atmel स्टूडियो 7)
#define F_CPU 9600000 //   (  : avrdude.exe -U lfuse:w:0x7a:m -U hfuse:w:0xff:m)

#include <avr/io.h>
#include <avr/wdt.h>
#include <avr/sleep.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <avr/eeprom.h>

//#define PROTEUS

typedef unsigned char bool; //   
#define true  (0 == 0)
#define false (0 != 0)

#define MAX_U10BIT 0b0000001111111111 //      

#define INTERVAL         3   //  , 
#define CUR_MINIMAL_DIFF 50  //      , LSB
#define RES_MINIMAL_DIFF 50  //      , LSB
#define FREQ_DIV_OFFSET  2   //     
#define FREQ_MAXIMAL_DIV 6   //     

EEMEM unsigned int  EEPROM_cur_edge;
EEMEM unsigned int  EEPROM_res_edge; 
EEMEM unsigned char EEPROM_frequency_dividor;

unsigned int cur_edge, res_edge; //   ,   EEPROM    
unsigned char frequency_dividor; //   ,   EEPROM    
unsigned char clk = 0; //   watchdog
bool tp_reset = false; //   TP1  TP2

//   
static void init_vars(void) {
  if(MCUSR & (1 << EXTRF)) { // ,       TP1  TP2
    tp_reset = true;
    MCUSR &= ~(1 << EXTRF); //  EXTRF       ,   
  }
}

//  
static void init_pins(void) {
  DDRB |= (1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB4); //       
}

//    watchdog
static void init_interrupts(void) {
  sleep_enable(); //   

  WDTCR = (1 << WDCE) | (1 << WDE); //  watchdog
  WDTCR = (1 << WDTIE) | WDTO_1S; // watchdog      ,  1 

  sei(); //  
}

//   
void init_settings(void) {
  cur_edge = eeprom_read_word(&EEPROM_cur_edge); //   
  res_edge = eeprom_read_word(&EEPROM_res_edge); //   
  frequency_dividor = eeprom_read_byte(&EEPROM_frequency_dividor); //   
}

//   
static void toggle_load(bool state) {
  if(state) {
    PORTB |= (1 << PB1);
  } else {
    PORTB &= ~(1 << PB1);
  }
}

//  
static void blink_load(unsigned char count) {
  for(unsigned char i = 0; i < count; ++i) {
    _delay_ms(200);
    toggle_load(true);
    _delay_ms(200);
    toggle_load(false);
  }
}

//   (   )
static void stop(void) {
  set_sleep_mode(SLEEP_MODE_PWR_DOWN);
  while(true) sleep_cpu();
}

//   
static void toggle_amp(bool state) {
  if(state) {
    PORTB |= (1 << PB4); //     PB4
    _delay_ms(250);      //       200 .
  } else {
    PORTB &= ~(1 << PB4);
  }
}

//  
static void toggle_lpf(bool state) {
  if(state) {
    DDRB |= (1 << PB3); //  PB3    (  "0")     C2
  } else {
    DDRB &= ~(1 << PB3); //  PB3    ( )   C2  
  }
}

//    
static void toggle_gen(bool state) {
  if(state) {
    TCCR0A |= (1 << COM0A0) | (1 << WGM01); //    ( )    OC0A      OCR0A
#ifndef PROTEUS
    TCCR0B |= (1 << CS00); //    1
#else
    TCCR0B |= (1 << CS00) | (1 << CS02); //    1024
#endif
    OCR0A = FREQ_DIV_OFFSET + frequency_dividor; //   ,         OC0A
  } else {
    TCCR0A = 0; //  
  }
}

//  
static void toggle_adc(bool state) {
  if(state) {
    DDRB &= ~(1 << PB2); //  PB2    ( )
    ADMUX = 0b01 | (1 << REFS0); // PB2, 1.1v reference
    ADCSRA = (1 << ADPS0) | (1 << ADPS1) | (1 << ADPS2) | //       = 128 (75 )
             (1 << ADIE) |  //    
             (1 << ADEN);   //  
  } else {
    ADCSRA = 0; //  
    DDRB |= (1 << PB2); //  PB2    (  "0")   C8
    _delay_ms(50); //      C8
  }
}

//  
static unsigned int do_adc(void) {
  set_sleep_mode(SLEEP_MODE_ADC); //   "" 
  do {
    sleep_cpu(); //      ,      ,   
  } while(ADCSRA & (1 << ADSC)); //        ,  

  return ADC;
}

/*
//  
static void blink_bin(unsigned int value, unsigned char count) {
  for(unsigned char i = 0; i < count; ++i) {
    _delay_ms(1000);
    toggle_load(true);
    if(value & (1 << (count - i - 1))) {
      _delay_ms(500);
    } else {
      _delay_ms(50);
    }
    toggle_load(false);
  }
}
*/

//   
static unsigned int get_current(void) {
  unsigned int cur;

  toggle_lpf(true); //  
  _delay_ms(150);
  toggle_adc(true); //  
  _delay_ms(50); //    C8
  cur = do_adc(); //  
  toggle_adc(false);
  toggle_lpf(false);

  return cur;
}

//    
static unsigned int get_resistance(void) {
  unsigned int res;

  toggle_gen(true); //  
  _delay_ms(150);
  toggle_adc(true); //  
  _delay_ms(50); //    C8
  toggle_gen(false); //   ,   C8     
  res = do_adc(); //     
  toggle_adc(false);

  return MAX_U10BIT - res; //      ,      
}

//   
static bool is_current(void) {
  return (get_current() >= cur_edge);
}

//   
static bool is_toggled_on(void) {
  return (get_resistance() <= res_edge);
}

//  
static void do_main(void) {
  toggle_amp(true); //  

  if(is_current()) {
    toggle_load(false); //  ,  
  } else {
    if(is_toggled_on()) {
      toggle_load(true); //  ,  
    } else {
      toggle_load(false); //  ,  
    }
  }

  toggle_amp(false); //  
}

//    
static bool first_on(void) {
  return (frequency_dividor == 0xff); //   EEPROM   0xFF,        FREQ_MAXIMAL_DIV
}

//  
static void calibrate(void) {
  unsigned int cur_off, cur_on, res_off, res_on, res_on_tmp, res_off_array[FREQ_MAXIMAL_DIV + 1], diff, max_diff, frequency_dividor_tmp;

  blink_load(5); //    ,    
  _delay_ms(7500); //      

  toggle_amp(true); //  

  cur_off = get_current(); //      ( )

  //      
  for(frequency_dividor = 0; frequency_dividor <= FREQ_MAXIMAL_DIV; ++frequency_dividor) {
    res_off_array[frequency_dividor] = get_resistance();
  }

  blink_load(2); //     
  _delay_ms(7500); //      

  cur_on = get_current(); //     

  blink_load(3); //     
  _delay_ms(7500); //      

  
  res_off = MAX_U10BIT;
  res_on = MAX_U10BIT;
  frequency_dividor_tmp = 0;
  max_diff = 0;
  //      
  for(frequency_dividor = 0; frequency_dividor <= FREQ_MAXIMAL_DIV; ++frequency_dividor) {
    res_on_tmp = get_resistance();

    //   ,      
    if(res_off_array[frequency_dividor] > res_on_tmp) {
      diff = res_off_array[frequency_dividor] - res_on_tmp;
      if(diff > max_diff) {
        res_off = res_off_array[frequency_dividor];
        res_on = res_on_tmp;
        frequency_dividor_tmp = frequency_dividor;
        max_diff = diff;
      }    
    }
  }
  frequency_dividor = frequency_dividor_tmp;

  toggle_amp(false); //  
  
  if(cur_on > cur_off + CUR_MINIMAL_DIFF) { 
    cur_edge = cur_off + (cur_on - cur_off) / 2; //    ,     
 
    if(res_on + RES_MINIMAL_DIFF < res_off) {
      res_edge = res_off - (res_off - res_on) / 2; //    ,      

      //   
      eeprom_write_word(&EEPROM_cur_edge, cur_edge);
      eeprom_write_word(&EEPROM_res_edge, res_edge);
      eeprom_write_byte(&EEPROM_frequency_dividor, frequency_dividor);
      
      blink_load(1); //  
    } else {
      blink_load(2); //    
      if(first_on()) stop();
    }
  } else {
    blink_load(3); //    
    if(first_on()) stop();
  }
}

ISR(WDT_vect) {
  WDTCR |= (1 << WDTIE); //    watchdog   ""    
}

EMPTY_INTERRUPT(ADC_vect); //     ,     

int main(void)
{
  init_vars();
  init_pins();       
  init_interrupts(); 
  init_settings();

  if(tp_reset || first_on()) {
    calibrate(); //          
  }

  //  
  while(true) {
    set_sleep_mode(SLEEP_MODE_PWR_DOWN);
    sleep_cpu(); //   watchdog

    if(++clk >= INTERVAL) {
      do_main(); //  
      clk = 0;
    }
  }
}


पुरालेख, वायरिंग, और पूर्ण Atmel स्टूडियो 7 परियोजना के साथ पुरालेख

All Articles