इस परियोजना में हम ATMEGA8 माइक्रोकंट्रोलर का उपयोग करके कम रेंज का एमीटर बनाने जा रहे हैं । ATMEGA8 में, हम ऐसा करने के लिए 10bit ADC (एनालॉग से डिजिटल रूपांतरण) सुविधा का उपयोग करने जा रहे हैं। यद्यपि हमारे पास सर्किट से वर्तमान पैरामीटर प्राप्त करने के कुछ अन्य तरीके हैं, हम प्रतिरोधक ड्रॉप विधि का उपयोग करने जा रहे हैं, क्योंकि यह वर्तमान पैरामीटर प्राप्त करने का सबसे आसान और सरल तरीका है।
इस पद्धति में हम उस करंट को पास करने जा रहे हैं जिसे एक छोटे से प्रतिरोध में मापने की आवश्यकता होती है, इसके द्वारा हमें उस प्रतिरोध के पार एक बूंद मिलती है जो कि इसके माध्यम से प्रवाहित होने से संबंधित होती है। प्रतिरोध भर में यह वोल्टेज ADC रूपांतरण के लिए ATMEGA8 को खिलाया जाता है। इसके साथ हमारे पास डिजिटल मूल्य में करंट होगा जो 16x2 एलसीडी पर प्रदर्शित होगा।
उसके लिए हम एक वोल्टेज विभक्त सर्किट का उपयोग करने जा रहे हैं। हम पूरी प्रतिरोध शाखा के माध्यम से करंट को फीड करने जा रहे हैं। शाखा का मध्यबिंदु मापन के लिए लिया जाता है। जब वर्तमान परिवर्तन होते हैं, तो प्रतिरोध में ड्रॉप परिवर्तन होगा जो इसे रैखिक है। तो इसके साथ हमारे पास एक वोल्टेज है जो रैखिकता के साथ बदलता है।
अब यहां ध्यान देने योग्य बात यह है कि ADC रूपांतरण के लिए नियंत्रक द्वारा लिया गया इनपुट 50µAmp जितना कम है। प्रतिरोध आधारित वोल्टेज विभक्त का यह लोडिंग प्रभाव महत्वपूर्ण है क्योंकि वाउट ऑफ वोल्टेज डिवाइडर से खींची गई वर्तमान में त्रुटि प्रतिशत बढ़ जाता है, अब हमें लोडिंग प्रभाव के बारे में चिंता करने की आवश्यकता नहीं है।
अवयव आवश्यक
हार्डवेयर: ATMEGA8, बिजली की आपूर्ति (5v), AVR-ISP PROGRAMMER, JHD_162ALCD (16 * 2LCD), 100uF संधारित्र, 100nF संधारित्र (4 टुकड़े), 100x रोकनेवाला (7 टुकड़े) या 2.5Ω (2 टुकड़े), 100KΩ रोकनेवाला।
सॉफ्टवेयर: Atmel स्टूडियो 6.1, progisp या फ़्लैश मैजिक।
सर्किट आरेख और कार्य स्पष्टीकरण
आर 2 और आर 4 के पार वोल्टेज पूरी तरह से रैखिक नहीं है; यह एक शोर होगा। शोर को छानने के लिए, कैपेसिटर को विभक्त सर्किट में प्रत्येक प्रतिरोधक के पार रखा जाता है जैसा कि चित्र में दिखाया गया है।
ATMEGA8 में, हम PORTC के किसी भी चैनल में एनालॉग इनपुट दे सकते हैं, इससे कोई फर्क नहीं पड़ता कि हम किस चैनल को चुनते हैं। हम PORTC का चैनल 0 या PIN0 चुनने जा रहे हैं। ATMEGA8 में, ADC 10 बिट रिज़ॉल्यूशन का है, इसलिए नियंत्रक Vref / 2 ^ 10 के न्यूनतम परिवर्तन का पता लगा सकता है, इसलिए यदि संदर्भ वोल्टेज 5V है तो हमें हर 5/2 ^ 10 = 5VV के लिए एक डिजिटल आउटपुट वेतन वृद्धि मिलती है। इसलिए इनपुट में प्रत्येक 5mV वेतन वृद्धि के लिए हमारे पास डिजिटल आउटपुट पर एक वेतन वृद्धि होगी।
अब हमें निम्नलिखित शर्तों के आधार पर ADC का रजिस्टर सेट करना होगा:
1. सबसे पहले हमें ADC में ADC सुविधा को सक्षम करना होगा।
2. यहां एडीसी रूपांतरण के लिए अधिकतम इनपुट वोल्टेज प्राप्त होने जा रहा है + 5 वी। इसलिए हम ADC के अधिकतम मान या संदर्भ को 5V तक सेट कर सकते हैं।
3. नियंत्रक में एक ट्रिगर रूपांतरण सुविधा है, जिसका अर्थ है कि एडीसी रूपांतरण बाहरी ट्रिगर के बाद ही होता है, क्योंकि हम नहीं चाहते हैं कि हमें एडीसी के लिए निरंतर फ्री रनिंग मोड में चलाने के लिए रजिस्टरों को सेट करना होगा।
4. किसी भी एडीसी के लिए, रूपांतरण की आवृत्ति (डिजिटल मूल्य के अनुरूप मूल्य) और डिजिटल आउटपुट की सटीकता व्युत्क्रमानुपाती होती है। इसलिए डिजिटल आउटपुट की बेहतर सटीकता के लिए हमें कम आवृत्ति का चयन करना होगा। सामान्य एडीसी घड़ी के लिए हम अधिकतम मूल्य (2) के लिए एडीसी के पूर्व निर्धारित कर रहे हैं। चूंकि हम 1MHZ की आंतरिक घड़ी का उपयोग कर रहे हैं, ADC की घड़ी (1000000/2) होगी।
ये केवल चार चीजें हैं जिन्हें हमें एडीसी के साथ शुरू करने के लिए जानना आवश्यक है।
उपरोक्त सभी चार विशेषताएं दो रजिस्टरों द्वारा निर्धारित हैं,
RED (ADEN): इस बिट को ATMEGA के ADC फीचर को सक्षम करने के लिए सेट किया जाना है।
BLUE (REFS1, REFS0): इन दो बिट्स का उपयोग संदर्भ वोल्टेज (या अधिकतम इनपुट वोल्टेज जिसे हम देने जा रहे हैं) को सेट करने के लिए किया जाता है। चूंकि हम संदर्भ वोल्टेज 5V रखना चाहते हैं, REFS0 को तालिका द्वारा सेट किया जाना चाहिए।
येल्लो (ADFR): इस बिट को ADC के लिए निरंतर (फ्री रनिंग मोड) चलाने के लिए सेट किया जाना चाहिए।
PINK (MUX0-MUX3): ये चार बिट्स इनपुट चैनल को बताने के लिए हैं। चूँकि हम ADC0 या PIN0 का उपयोग करने जा रहे हैं, हमें तालिका के अनुसार बिट्स सेट करने की आवश्यकता नहीं है।
BROWN (ADPS0-ADPS2): ये तीनों बिट्स ADC के लिए प्रीस्कूलर सेट करने के लिए हैं। चूंकि हम 2 का प्रीस्कूलर उपयोग कर रहे हैं, इसलिए हमें एक बिट सेट करना होगा।
DARK GREEN (ADSC): रूपांतरण शुरू करने के लिए ADC के लिए यह बिट सेट है। यह बिट प्रोग्राम में अक्षम किया जा सकता है जब हमें रूपांतरण को रोकने की आवश्यकता होती है।