- स्टेपर मोटर्स:
- स्टेपर मोटर के लिए प्रति क्रांति कदम की गणना:
- क्यों हम Stepper मोटर्स के लिए ड्राइवर मॉड्यूल की आवश्यकता है?
- पोटेंटियोमीटर का उपयोग करके स्टीपर मोटर को घुमाने के लिए सर्किट आरेख:
- Arduino बोर्ड के लिए कोड:
- काम कर रहे:
इलेक्ट्रॉनिक्स की दुनिया में स्टेपर मोटर्स तेजी से अपना स्थान ले रही है। एक सामान्य निगरानी कैमरे से शुरू होकर एक जटिल सीएनसी मशीनों / रोबोट तक इन स्टेपर मोटर्स को हर जगह एक्ट्यूएटर्स के रूप में उपयोग किया जाता है क्योंकि वे सटीक नियंत्रण प्रदान करते हैं। इस ट्यूटोरियल में हम सबसे आम तौर पर उपलब्ध / सस्ते उपलब्ध स्टेपर मोटर 28-BYJ48 के बारे में जानेंगे और ULN2003 स्टेपर मॉड्यूल का उपयोग करके Arduino के साथ इसे कैसे इंटरफ़ेस करें ।
पिछले प्रोजेक्ट में हमने Arduino के साथ बस Interfaced Stepper Motor, जहाँ आप Arduino के Serial Monitor में रोटेशन कोण में प्रवेश करके स्टेपर मोटर को घुमा सकते हैं। यहाँ इस प्रोजेक्ट में, हम Potentiometer और Arduino का उपयोग करके Stepper Motor को घुमाएँगे, जैसे यदि आप potentiometer को दक्षिणावर्त घुमाते हैं तो stepper दक्षिणावर्त घूमेगा और यदि आप potentiometer anticlockwise मुड़ते हैं तो यह anticlockwise घूमेगा।
स्टेपर मोटर्स:
आइए हम इस 28-BYJ48 स्टेपर मोटर पर एक नज़र डालें ।
ठीक है, इसलिए एक सामान्य डीसी मोटर के विपरीत, इसमें से सभी फैंसी रंगों के पांच तार निकलते हैं और ऐसा क्यों है? इसे समझने के लिए हमें पहले यह जानना चाहिए कि एक स्टेपर कैसे काम करता है और इसकी खासियत क्या है। सबसे पहले सभी स्टेपर मोटर्स घूमते नहीं हैं, वे कदम रखते हैं और इसलिए उन्हें स्टेप मोटर्स के रूप में भी जाना जाता है । मतलब, वे एक बार में केवल एक कदम ही आगे बढ़ेंगे। इन मोटरों में मौजूद कॉइल का एक क्रम होता है और मोटर को घुमाने के लिए इन कॉइल्स को एक विशेष रूप से सक्रिय करना पड़ता है। जब प्रत्येक कॉइल को एनर्जेटिक किया जा रहा होता है तो मोटर एक कदम उठाती है और एनर्जाइज़ेशन का एक क्रम मोटर को निरंतर कदम उठाता है, इस प्रकार यह घूमता है। आइए हम मोटर के अंदर मौजूद कॉइल्स पर एक नजर डालते हैं ताकि पता चल सके कि ये तार कहां से आते हैं।
जैसा कि आप देख सकते हैं कि मोटर में यूनीपोलर 5-लीड कॉइल की व्यवस्था है। चार कुंडल हैं जिन्हें एक विशेष अनुक्रम में सक्रिय किया जाना है। लाल तारों को + 5 वी के साथ आपूर्ति की जाएगी और शेष चार तारों को संबंधित कुंडली को ट्रिगर करने के लिए जमीन पर खींचा जाएगा। हम Arduino जैसे एक माइक्रोकंट्रोलर का उपयोग एक विशेष अनुक्रम में इन कॉइल को सक्रिय करते हैं और मोटर को आवश्यक चरणों को पूरा करने के लिए करते हैं।
तो अब, इस मोटर को 28-BYJ48 क्यों कहा जाता है ? गंभीरता से !!! मुझे नहीं पता। इस मोटर को ऐसा नाम दिए जाने का कोई तकनीकी कारण नहीं है; हो सकता है कि हमें इसमें अधिक गहराई से डुबकी लगानी चाहिए। आइए नीचे दिए गए चित्र में इस मोटर के डेटाशीट से प्राप्त कुछ महत्वपूर्ण तकनीकी डेटा को देखें।
यह जानकारी से भरा एक सिर है, लेकिन हमें यह जानने के लिए कुछ महत्वपूर्ण बातों पर गौर करने की आवश्यकता है कि हम किस प्रकार के स्टेपर का उपयोग कर रहे हैं ताकि हम इसे कुशलता से प्रोग्राम कर सकें। पहले हम जानते हैं कि यह 5V स्टेपर मोटर है क्योंकि हम 5V के साथ लाल तार को सक्रिय करते हैं। फिर, हम यह भी जानते हैं कि यह एक चार चरण की स्टेपर मोटर है क्योंकि इसमें चार कॉइल थे। अब, गियर अनुपात 1:64 होने के लिए दिया गया है। इसका मतलब यह है कि आप जिस शाफ्ट को बाहर देखते हैं, वह एक पूर्ण रोटेशन तभी करेगा जब मोटर अंदर 64 बार घूमती है। यह मोटर और आउटपुट शाफ्ट के बीच जुड़े गियर के कारण होता है, ये गियर टॉर्क को बढ़ाने में मदद करते हैं।
नोटिस करने के लिए एक और महत्वपूर्ण डेटा स्ट्राइड एंगल: 5.625 ° / 64 है। इसका मतलब यह है कि जब 8-चरण अनुक्रम में काम करने वाला मोटर प्रत्येक चरण के लिए 5.625 डिग्री ले जाएगा और एक पूर्ण घुमाव को पूरा करने के लिए 64 कदम (5.625 * 64 = 360) लगेगा।
स्टेपर मोटर के लिए प्रति क्रांति कदम की गणना:
यह जानना महत्वपूर्ण है कि आपके स्टेपर मोटर के लिए प्रति क्रांति के चरणों की गणना कैसे करें क्योंकि केवल तभी आप इसे प्रभावी ढंग से प्रोग्राम कर सकते हैं।
Arduino में हम 4-चरण अनुक्रम में मोटर का संचालन करेंगे, इसलिए स्ट्राइड कोण 11.25 ° होगा क्योंकि यह 5.625 ° (डेटाशीट में दिया गया है) 8 चरण अनुक्रम के लिए यह 11.25 ° (5.625 * 2 = 11.55) होगा।
क्रांति प्रति कदम = 360 / कदम कोण
यहां, 360 / 11.25 = प्रति क्रांति 32 कदम।
क्यों हम Stepper मोटर्स के लिए ड्राइवर मॉड्यूल की आवश्यकता है?
अधिकांश स्टेपर मोटर्स केवल चालक मॉड्यूल की मदद से संचालित होंगे। ऐसा इसलिए है क्योंकि नियंत्रक मॉड्यूल (हमारे मामले में Arduino) मोटर को संचालित करने के लिए अपने I / O पिन से पर्याप्त वर्तमान प्रदान करने में सक्षम नहीं होगा। इसलिए हम एक बाहरी मॉड्यूल जैसे ULN2003 मॉड्यूल का उपयोग स्टेपर मोटर चालक के रूप में करेंगे । कई प्रकार के ड्राइवर मॉड्यूल हैं और एक की रेटिंग का उपयोग मोटर के प्रकार के आधार पर बदल जाएगा। सभी चालक मॉड्यूल के लिए प्राथमिक सिद्धांत मोटर को संचालित करने के लिए पर्याप्त वर्तमान स्रोत / सिंक करना होगा।
पोटेंटियोमीटर का उपयोग करके स्टीपर मोटर को घुमाने के लिए सर्किट आरेख:
Potentiometer और Arduino का उपयोग करके नियंत्रित Stepper Motor के लिए सर्किट आरेख ऊपर दिखाया गया है। हमने 28BYJ-48 स्टेपर मोटर और ULN2003 ड्राइवर मॉड्यूल का उपयोग किया है। स्टेपर मोटर के चार कॉइल्स को उभारने के लिए हम डिजिटल पिन 8,9,10 और 11. का उपयोग कर रहे हैं। ड्राइवर मॉड्यूल अरुडिनो बोर्ड के 5V पिन द्वारा संचालित है। एक पोटेंशियोमीटर A0 से जुड़ा है जिसके मूल्यों में हम स्टेपर मोटर को घुमाएंगे।
लेकिन, जब आप स्टेपी मोटर में कुछ लोड जोड़ रहे हैं, तो बाहरी पावर सप्लाई के साथ ड्राइवर को पावर दें। चूंकि मैं प्रदर्शन उद्देश्य के लिए मोटर का उपयोग कर रहा हूं, इसलिए मैंने Arduino Board की + 5V रेल का उपयोग किया है। यह भी याद रखें कि चालक मॉड्यूल के आधार के साथ ग्राउंड ऑफ अरुडिनो को जोड़ना है।
Arduino बोर्ड के लिए कोड:
इससे पहले कि हम अपने Arduino के साथ प्रोग्रामिंग शुरू करें, हमें यह समझने दें कि वास्तव में कार्यक्रम के अंदर क्या होना चाहिए। जैसा कि पहले कहा गया था कि हम 4-चरण अनुक्रम विधि का उपयोग कर रहे हैं, इसलिए हमारे पास एक पूर्ण रोटेशन बनाने के लिए प्रदर्शन करने के लिए चार चरण होंगे।
कदम |
पिन एनर्जेटिक |
कॉइल एनर्जेटिक |
चरण 1 |
8 और 9 |
ए और बी |
चरण 2 |
9 और 10 |
बी और सी |
चरण 3 |
10 और 11 |
सी और डी |
चरण 4 |
11 और 8 |
डी और ए |
चालक मॉड्यूल में चार एलईडी होंगे, जिनका उपयोग करके हम यह देख सकते हैं कि किसी भी समय कौन से कॉइल को सक्रिय किया जा रहा है। पूरा प्रदर्शन वीडियो इस ट्यूटोरियल के अंत में पाया जा सकता है।
इस ट्यूटोरियल में हम Arduino को इस तरह से प्रोग्राम करने जा रहे हैं कि हम पिन A0 से जुड़े पोटेंशियोमीटर को चालू कर सकें और स्टेपर मोटर की दिशा को नियंत्रित कर सकें । पूरा कार्यक्रम ट्यूटोरियल के अंत में पाया जा सकता है कुछ महत्वपूर्ण लाइनें नीचे बताई गई हैं।
हमारे स्टेपर मोटर के लिए प्रति क्रांति कदमों की संख्या 32 होने की गणना की गई थी; इसलिए हम नीचे लाइन में दिखाए अनुसार दर्ज करते हैं
#define STEPS 32
आगे आपको ऐसे उदाहरण बनाने होंगे जिसमें हम उन पिन को निर्दिष्ट करते हैं जिन्हें हमने स्टेपर मोटर से जोड़ा है।
स्टेपर स्टेपर (STEPS, 8, 10, 9, 11);
नोट: पिन नंबर उद्देश्य पर 8,10,9,11 के रूप में अव्यवस्थित हैं। आपको उसी पैटर्न का पालन करना होगा भले ही आप पिन को बदल दें जिससे आपकी मोटर जुड़ी हुई है।
चूंकि हम Arduino स्टेपर लाइब्रेरी का उपयोग कर रहे हैं, इसलिए हम नीचे की लाइन का उपयोग करके मोटर की गति निर्धारित कर सकते हैं। 28-BYJ48 स्टेपर मोटर्स के लिए गति 0 से 200 के बीच हो सकती है।
स्टेपर.सेटस्पीड (200);
अब, मोटर को एक कदम दक्षिणावर्त घुमाने के लिए हम निम्नलिखित पंक्ति का उपयोग कर सकते हैं।
स्टेपर.स्टेप (1);
मोटर को एक कदम एंटी-क्लॉकवाइज बनाने के लिए हम निम्नलिखित लाइन का उपयोग कर सकते हैं।
स्टेपर.स्टेप (-1);
हमारे कार्यक्रम में हम एनालॉग पिन A0 के मूल्य को पढ़ेंगे और पिछले मूल्य (Pval) से इसकी तुलना करेंगे। अगर यह बढ़ गया है तो हम घड़ी की दिशा में 5 कदम बढ़ाते हैं और अगर यह कम हो जाता है तो हम 5 कदम को एंटी-क्लॉकवाइज में स्थानांतरित करते हैं।
पोटवाल = नक्शा (एनालॉगरेड (ए 0), 0,1024,0,500); if (potVal> Pval) stepper.step (5); अगर (पॉटवैल
काम कर रहे:
एक बार कनेक्शन बनाने के बाद हार्डवेयर को नीचे दी गई तस्वीर में कुछ इस तरह देखना चाहिए।
अब, नीचे दिए गए प्रोग्राम को अपने Arduino UNO में अपलोड करें और सीरियल मॉनिटर खोलें। जैसा कि पहले चर्चा की गई है कि आपको स्टेपर मोटर के रोटेशन को नियंत्रित करने के लिए पोटेंशियोमीटर को घुमाना होगा । इसे दक्षिणावर्त घुमाने से स्टेपर मोटर दक्षिणावर्त दिशा में मुड़ जाएगी और इसके विपरीत।
आशा है कि आपने इस परियोजना को समझा और इसके निर्माण का आनंद लिया। परियोजना का पूरा काम नीचे दिए गए वीडियो में दिखाया गया है । यदि आपको कोई संदेह है तो उन्हें नीचे या हमारे मंचों पर टिप्पणी अनुभाग पर पोस्ट करें।