यह LED DIMMER एक Arduino Uno आधारित PWM (पल्स विथ मॉड्यूलेशन) सर्किट है, जिसे निरंतर वोल्टेज के साथ वेरिएबल वोल्टेज प्राप्त करने के लिए विकसित किया गया है। PWM का तरीका नीचे बताया गया है। इससे पहले कि हम 1 वाट एलईडी डिमर सर्किट का निर्माण शुरू करें, पहले एक साधारण सर्किट पर विचार करें, जैसा कि नीचे दिए गए चित्र में दिखाया गया है।
अब यदि समय के साथ आकृति में स्विच लगातार बंद रहता है तो उस दौरान बल्ब लगातार चालू रहेगा। यदि स्विच 8ms के लिए बंद है और 10ms के चक्र पर 2ms के लिए खोला गया है, तो बल्ब केवल 8 घंटे में चालू होगा। अब औसत टर्मिनल 10 मी की अवधि के दौरान = समय को चालू करें / (समय चालू करें + बंद समय चालू करें), इसे कर्तव्य चक्र कहा जाता है और यह 80% (8 / (8 + 2)) है, इसलिए औसत आउटपुट वोल्टेज बैटरी वोल्टेज का 80% होगा।
दूसरे मामले में, स्विच 5ms के लिए बंद है और 10ms की अवधि में 5ms के लिए खोला गया है, इसलिए आउटपुट पर औसत टर्मिनल वोल्टेज बैटरी वोल्टेज का 50% होगा। यह कहें कि यदि बैटरी वोल्टेज 5V है और कर्तव्य चक्र 50% है, तो औसत टर्मिनल वोल्टेज 2.5V होगा।
तीसरे मामले में कर्तव्य चक्र 20% और औसत टर्मिनल वोल्टेज बैटरी वोल्टेज का 20% है।
अब इस LED Dimmer में इस तकनीक का उपयोग कैसे किया जाता है ? इसे इस ट्यूटोरियल के बाद के भाग में समझाया गया है।
जैसा कि चित्र में दिखाया गया है, एक Arduino UNO में 6PWM चैनल हैं, इसलिए हम इनमें से किसी भी छह पिन पर PWM (परिवर्तनीय वोल्टेज) प्राप्त कर सकते हैं। इस अध्याय में हम PW3 आउटपुट के रूप में PIN3 का उपयोग करने जा रहे हैं।
आवश्यक घटक
हार्डवेयर: ARDUINO UNO, बिजली की आपूर्ति (5v), 100uF संधारित्र, एलईडी, बटन (दो टुकड़े), 10K two रोकनेवाला (दो टुकड़े)।
सॉफ्टवेयर: arduino IDE
सर्किट आरेख और स्पष्टीकरण
सर्किट आरेख के अनुसार सर्किट ब्रेडबोर्ड पर जुड़ा हुआ है। हालांकि एलईडी टर्मिनलों को जोड़ने के दौरान किसी को ध्यान देना चाहिए। हालाँकि बटन इस मामले में उछलता हुआ प्रभाव दिखाते हैं, लेकिन इसमें काफी त्रुटियां नहीं होती हैं, इसलिए हमें इस समय चिंता करने की आवश्यकता नहीं है।
UNO से PWM काफी आसान है। PWM सिग्नल के लिए ATMEGA कंट्रोलर सेट करना आसान नहीं है, हमें कई रजिस्टरों और सेटिंग्स को एक सटीक सिग्नल के लिए परिभाषित करना होगा, हालांकि ARDUINO में हमें उन सभी चीजों से निपटना नहीं है।
डिफ़ॉल्ट रूप से सभी हेडर फाइलें और रजिस्टर ARDUINO IDE द्वारा पूर्वनिर्धारित होते हैं, हमें बस उन्हें कॉल करने की आवश्यकता होती है और यह है कि हमारे पास उचित पिन पर PWM आउटपुट होगा।
अब एक उपयुक्त पिन पर PWM आउटपुट प्राप्त करने के लिए, हमें दो चीजों पर काम करना होगा,
|
पहले हमें छह पिन से PWM आउटपुट पिन चुनने की जरूरत है, उसके बाद हमें उस पिन को आउटपुट के रूप में सेट करना होगा।
इसके बाद हमें फ़ंक्शन "एनालॉगवर्इट (पिन, वैल्यू)" को कॉल करके UNO की PWM सुविधा को सक्षम करने की आवश्यकता है। यहाँ 'पिन' उस पिन नंबर का प्रतिनिधित्व करता है जहाँ हमें PWM आउटपुट की आवश्यकता होती है जिसे हम '3' के रूप में डाल रहे हैं। इसलिए PIN3 में हमें PWM आउटपुट मिल रहा है। मान 0, (हमेशा बंद) और 255 (हमेशा चालू) के बीच, ऑन ड्यूटी चक्र है। हम बटन प्रेस द्वारा इस संख्या को बढ़ाते और घटाते जा रहे हैं।
Arduino Uno में PWM पिन का उपयोग करके नीचे दिए गए C कोड में बताया गया है।