डीसी मोटर्स सबसे ज्यादा इस्तेमाल होने वाली मोटर हैं। इन मोटरों को छोटी परियोजनाओं से लेकर उन्नत रोबोटिक्स तक लगभग हर जगह पाया जा सकता है। हमने पहले डीसी मोटर को कई अन्य माइक्रोकंट्रोलरों जैसे अरडिनो, रास्पबेरी पाई और कई रोबोट परियोजनाओं में इस्तेमाल किया। आज हम AVR माइक्रोकंट्रोलर Atmega16 के साथ डीसी मोटर को नियंत्रित करना सीखते हैं । लेकिन आगे जाने से पहले आइए जानते हैं DC मोटर के बारे में।
डीसी मोटर क्या है?
डीसी मोटर एक उपकरण है जो विद्युत ऊर्जा को यांत्रिक ऊर्जा में परिवर्तित करता है। विशेष रूप से, एक डीसी मोटर विद्युत ऊर्जा को यांत्रिक ऊर्जा में परिवर्तित करने के लिए डीसी करंट का उपयोग करती है। मोटर का मूल सिद्धांत चुंबकीय क्षेत्र और वर्तमान के बीच की बातचीत है जो मोटर के भीतर एक बल उत्पन्न करता है जो मोटर को घुमाने में मदद करता है। इसलिए जब विद्युत धारा को एक चुंबकीय क्षेत्र में एक कुंडल के माध्यम से पारित किया जाता है, तो एक चुंबकीय बल उत्पन्न होता है जो मोटर के आंदोलन के परिणामस्वरूप एक टोक़ पैदा करता है। करंट को उल्टा करके मोटर की दिशा को नियंत्रित किया जाता है। इसके अलावा आपूर्ति की वोल्टेज अलग-अलग हो सकती है। चूंकि माइक्रोकंट्रोलरों में पीडब्लूएम पिन होता है, इसलिए इसका उपयोग मोटर की गति को नियंत्रित करने के लिए किया जा सकता है।
इस ट्यूटोरियल में, Atmega16 के साथ DC मोटर ऑपरेशन का प्रदर्शन किया जाएगा । L293D मोटर ड्राइवर का उपयोग वर्तमान की दिशा को रिवर्स करने के लिए किया जाएगा और इस प्रकार आंदोलन की दिशा। L293D मोटर चालक एच-ब्रिज सर्किट कॉन्फ़िगरेशन का उपयोग करता है जो मोटर के लिए आवश्यक वर्तमान आउटपुट देता है। मोटर की दिशा का चयन करने के लिए दो पुश बटन का उपयोग किया जाता है । पुश बटन में से एक का उपयोग घड़ी के वार रोटेशन को चुनने के लिए किया जाता है और दूसरे का उपयोग डीसी मोटर के एंटी-क्लॉक ऑपरेशन को चुनने के लिए किया जाता है।
अवयव आवश्यक
- डीसी मोटर (5V)
- L293D मोटर चालक
- एटमेगा 16 माइक्रोकंट्रोलर आई.सी.
- 16Mhz क्रिस्टल थरथरानवाला
- दो 100nF कैपेसिटर
- दो 22pF कैपेसिटर
- बटन दबाओ
- जम्पर तार
- ब्रेड बोर्ड
- USBASP v2.0
- एलईडी (कोई भी रंग)
सर्किट आरेख
डीसी मोटर नियंत्रण के लिए Atmega16 प्रोग्रामिंग
यहाँ Atmega16 को USBASP और Atmel Studio7.0 का उपयोग करके प्रोग्राम किया गया है। यदि आप नहीं जानते कि USBASP का उपयोग करके Atmega16 प्रोग्राम कैसे करें तो लिंक पर जाएं। पूरा कार्यक्रम परियोजना के अंत में दिया गया है, बस Atmega16 में कार्यक्रम अपलोड करें और डीसी मोटर को दक्षिणावर्त और एंटी-क्लॉकवाइज घुमाने के लिए दो पुश बटन का उपयोग करें।डीसी मोटर L293D मोटर चालक का उपयोग करके बाधित होती है। संबंधित पुश बटन दबाए जाने पर डीसी मोटर दो दिशाओं में घूमेगी। एक पुश बटन का उपयोग डीसी मोटर को क्लॉक वाइज दिशा में घुमाने के लिए किया जाएगा और दूसरे पुश बटन का उपयोग काउंटर क्लॉक वार दिशा में डीसी मोटर को घुमाने के लिए किया जाएगा। सबसे पहले माइक्रोकंट्रोलर की सीपीयू आवृत्ति को परिभाषित करें और सभी आवश्यक पुस्तकालयों को शामिल करें ।
#define F_CPU 16000000UL #include #include
फिर, पुश बटन दबाए गए स्थिति का ट्रैक रखने के लिए एक चर का उपयोग करें । इस चर का उपयोग मोटर की दिशा को परिभाषित करने के लिए किया जाएगा।
int i;
डेटा दिशा रजिस्टर का उपयोग करके GPIO के इनपुट / आउटपुट मोड का चयन करें । प्रारंभ में, पुश बटन को दबाए बिना मोटर शुरू करने से बचने के लिए मोटर पिन का उत्पादन कम करें।
डीडीआरए = 03; PORTA & = ~ (1 << 1); पोर्टा & = ~ (1 << 0);
जांचें कि क्या Atmega16 के PORTA4 से जुड़ा 1 सेंट पुश बटन दबाया गया है और वेरिएबल में पुश बटन की स्थिति संग्रहीत करें।
अगर (! bit_is_clear (PINA, 4)) { i = 1; PORTA & = ~ (1 << 1); _delay_ms (1000); }
इसी तरह जांचें कि क्या 2 nd पुश बटन Atmega16 के PORTA5 से जुड़ा है और वेरिएबल में पुश बटन की स्थिति को स्टोर करें।
अगर (bit_is_clear (PINA, 5)) { i = 2; पोर्टा & = ~ (1 << 0); _delay_ms (1000); }
यदि 1 सेंट बटन की स्थिति सत्य है तो घड़ी की दिशा में डीसी मोटर को घुमाएं और यदि दूसरे पुश बटन की स्थिति सही है तो डीसी मोटर को एंटी-क्लॉक वार में घुमाएं।
if (i == 1) { PORTA - = (1 << 0); PORTA & = ~ (1 << 1); } और अगर (i == 2) { PORTA - = (1 << 1); पोर्टा & = ~ (1 << 0); }
आप इस्तेमाल किए गए GPIO के आधार पर किसी भी GPIO पिन से मोटर पिन कनेक्ट कर सकते हैं। साथ ही माइक्रोकंट्रोलर पर लोड को कम करने के लिए मोटर चालक आईसी का उपयोग करना महत्वपूर्ण है क्योंकि डीसी मोटर चलाने के लिए माइक्रोकंट्रोलर आवश्यक वर्तमान प्रदान करने में सक्षम नहीं हैं। डीसी मोटर्स पर आधारित अधिक विस्तार और अन्य परियोजनाओं के लिए, कृपया दिए गए लिंक पर जाएं।
पूरा कोड और प्रदर्शन वीडियो नीचे दिया गया है।