- PWM (पल्स चौड़ाई मॉडुलन):
- सर्वो मोटर और PWM:
- आवश्यक घटक:
- सर्किट आरेख:
- कार्य और प्रोग्रामिंग स्पष्टीकरण:
रास्पबेरी पाई एक एआरएम आर्किटेक्चर प्रोसेसर आधारित बोर्ड है जो इलेक्ट्रॉनिक इंजीनियरों और शौकियों के लिए बनाया गया है। PI अब वहां से सबसे भरोसेमंद परियोजना विकास प्लेटफार्मों में से एक है। उच्च प्रोसेसर गति और 1 जीबी रैम के साथ, पीआई का उपयोग इमेज प्रोसेसिंग और इंटरनेट ऑफ थिंग्स जैसी कई उच्च प्रोफ़ाइल परियोजनाओं के लिए किया जा सकता है।
किसी भी उच्च प्रोफ़ाइल परियोजना को करने के लिए, पीआई के बुनियादी कार्यों को समझने की आवश्यकता है। हम इन ट्यूटोरियल में रास्पबेरी पाई की सभी बुनियादी कार्यात्मकताओं को शामिल करेंगे । प्रत्येक ट्यूटोरियल में हम पीआई के कार्यों में से एक पर चर्चा करेंगे। इस रास्पबेरी पाई ट्यूटोरियल श्रृंखला के अंत तक, आप अपने आप से उच्च प्रोफ़ाइल परियोजनाएं करने में सक्षम होंगे। नीचे ट्यूटोरियल के माध्यम से जाओ:
- रास्पबेरी पाई के साथ शुरुआत करना
- रास्पबेरी पाई विन्यास
- एलईडी ब्लिंक
- रास्पबेरी पाई बटन इंटरफेसिंग
- रास्पबेरी पाई PWM पीढ़ी
- रास्पबेरी पाई का उपयोग करके डीसी मोटर को नियंत्रित करना
- रास्पबेरी पाई के साथ स्टेपर मोटर नियंत्रण
- रास्पबेरी पाई के साथ शिफ्ट रजिस्टर में बाधा डालना
- रास्पबेरी पाई एडीसी ट्यूटोरियल
इस ट्यूटोरियल में हम रास्पबेरी पाई के साथ सर्वो मोटर को नियंत्रित करेंगे । सर्वो में जाने से पहले आइए PWM के बारे में बात करते हैं क्योंकि सर्वो मोटर को नियंत्रित करने की अवधारणा इससे आती है।
PWM (पल्स चौड़ाई मॉडुलन):
हमने पहले कई बार PWM के बारे में बात की है: ATmega32 के साथ पल्स चौड़ाई मॉड्यूलेशन, Arduino Uno के साथ PWM, 555 टाइमर IC के साथ PWM और Arduino ड्यू के साथ PWM। पीडब्लूएम का मतलब 'पल्स चौड़ाई मॉड्यूलेशन' है । पीडब्लूएम एक विधि है जिसका उपयोग स्थिर विद्युत आपूर्ति से परिवर्तनीय वोल्टेज प्राप्त करने के लिए किया जाता है। बेहतर समझ के लिए PWM नीचे सर्किट पर विचार करें,
उपरोक्त आंकड़े में, यदि स्विच लगातार समय के साथ बंद रहता है, तो एलईडी इस दौरान लगातार 'चालू' रहेगा। यदि स्विच को आधे सेकंड के लिए बंद किया जाता है और अगले आधे सेकंड के लिए खोला जाता है, तो एलईडी केवल पहली छमाही में चालू होगी। अब कुल समय में एलईडी जिस अनुपात पर है, उसे शुल्क चक्र कहा जाता है, और इस प्रकार गणना की जा सकती है:
ड्यूटी साइकिल = समय चालू करें / (समय चालू करें + बंद समय चालू करें)
कर्तव्य चक्र = (0.5 / (0.5 + 0.5)) = 50%
तो औसत आउटपुट वोल्टेज बैटरी वोल्टेज का 50% होगा।
जैसे ही हम चालू और बंद गति को एक स्तर तक बढ़ाते हैं हम देखेंगे कि एलईडी चालू और बंद होने के बजाय मंद हो रही है। ऐसा इसलिए है क्योंकि हमारी आँखें स्पष्ट रूप से 25Hz से अधिक आवृत्तियों को पकड़ नहीं सकती हैं। 100ms चक्र पर विचार करें, एलईडी 30msec के लिए रवाना हो और 70msec पर चालू करें। हमारे पास आउटपुट पर 70% स्थिर वोल्टेज होगा, इसलिए एलईडी 70% तीव्रता के साथ लगातार चमक जाएगी।
ड्यूटी रेशियो 0 से 100 हो जाता है। '0' का अर्थ है पूरी तरह से ऑफ और '100' का पूरी तरह से चालू होना। यह ड्यूटी अनुपात सर्वो मोटर के लिए बहुत महत्वपूर्ण है। सर्वो मोटर की स्थिति इस ड्यूटी अनुपात द्वारा निर्धारित की जा रही है। एलईडी और रास्पबेरी पाई के साथ पीडब्लूएम प्रदर्शन के लिए इसे जांचें।
सर्वो मोटर और PWM:
एक सर्वो मोटर डीसी मोटर, स्थिति नियंत्रण प्रणाली और गियर का एक संयोजन है। आधुनिक दुनिया में सर्वो के कई अनुप्रयोग हैं और इसके साथ, वे विभिन्न आकारों और आकारों में उपलब्ध हैं। हम इस ट्यूटोरियल में SG90 सर्वो मोटर का उपयोग करेंगे, यह लोकप्रिय और सबसे सस्ती में से एक है। SG90 एक 180 डिग्री सर्वो है। तो इस सर्वो के साथ हम अक्ष को 0-180 डिग्री से स्थिति में ला सकते हैं।
एक सर्वो मोटर में मुख्य रूप से तीन तार होते हैं, एक पॉजिटिव वोल्टेज के लिए होता है, दूसरा ग्राउंड के लिए होता है और आखिरी पोजिशन सेटिंग के लिए होता है। लाल तार बिजली से जुड़ा है, ब्राउन तार जमीन और से जुड़ा है पीला तार (या सफेद) संकेत से जुड़ा है।
सर्वो में, हमारे पास एक नियंत्रण प्रणाली है जो सिग्नल पिन से PWM सिग्नल लेती है। यह सिग्नल को डीकोड करता है और इससे ड्यूटी अनुपात प्राप्त करता है। उसके बाद, यह पूर्वनिर्धारित पदों के मान के अनुपात की तुलना करता है। यदि मूल्यों में अंतर है, तो यह तदनुसार सर्वो की स्थिति को समायोजित करता है। तो सर्वो मोटर की धुरी स्थिति सिग्नल पिन पर PWM सिग्नल के कर्तव्य अनुपात पर आधारित होती है।
पीडब्लूएम (पल्स चौड़ाई संशोधित) सिग्नल की आवृत्ति सर्वो मोटर के प्रकार के आधार पर भिन्न हो सकती है। SG90 के लिए PWM सिग्नल की आवृत्ति 50Hz है । अपने सर्वो के लिए ऑपरेशन की आवृत्ति का पता लगाने के लिए, उस विशेष मॉडल के लिए डेटशीट की जांच करें। एक बार आवृत्ति के चयन के बाद, दूसरी महत्वपूर्ण बात यहां PWM सिग्नल की DUTY RATIO है।
नीचे दी गई तालिका उस विशेष कर्तव्य अनुपात के लिए सर्वो स्थिति दिखाती है। आप अपने अनुसार मूल्य चुनकर बीच में कोई भी कोण प्राप्त कर सकते हैं। तो सर्वो के 45 be के लिए ड्यूटी अनुपात '5' या 5% होना चाहिए।
पद |
कार्य औसत |
0 º |
2.5 है |
90 º |
7.5 है |
180 º |
12.5 |
रास्पबेरी पाई के लिए सर्वो मोटर को इंटरफैस करने से पहले, आप इस सर्वो मोटर परीक्षक सर्किट की मदद से अपने सर्वो का परीक्षण कर सकते हैं। इसके अलावा हमारे नीचे सर्वो परियोजनाओं की जाँच करें:
- Arduino का उपयोग करके इमदादी मोटर नियंत्रण
- Arduino ड्यू के साथ सर्वो मोटर नियंत्रण
- 8051 माइक्रोकंट्रोलर के साथ सर्वो मोटर इंटरफेसिंग
- MATLAB का उपयोग कर इमदादी मोटर नियंत्रण
- फ्लेक्स सेंसर द्वारा सर्वो मोटर नियंत्रण
- वजन के साथ सर्वो स्थिति नियंत्रण (बल सेंसर)
आवश्यक घटक:
यहां हम रास्पबेरी जेसी ओएस के साथ रास्पबेरी पाई 2 मॉडल बी का उपयोग कर रहे हैं । सभी मूल हार्डवेयर और सॉफ़्टवेयर आवश्यकताओं पर पहले से चर्चा की जाती है, आप इसे रास्पबेरी पाई परिचय में देख सकते हैं, इसके अलावा, हमें इसकी आवश्यकता है:
- कनेक्टिंग पिन
- 1000uF संधारित्र
- SG90 सर्वो मोटर
- ब्रेड बोर्ड
सर्किट आरेख:
A1000 A1F को + 5V पावर रेल से जोड़ा जाना चाहिए अन्यथा PI सर्वो को नियंत्रित करते हुए बेतरतीब ढंग से बंद हो सकता है।
कार्य और प्रोग्रामिंग स्पष्टीकरण:
एक बार जब सब कुछ सर्किट आरेख के अनुसार जुड़ा हुआ है, तो हम PYHTON में प्रोग्राम लिखने के लिए PI को चालू कर सकते हैं ।
हम कुछ आदेशों के बारे में बात करेंगे जिनका हम PYHTON कार्यक्रम में उपयोग करने जा रहे हैं, हम लाइब्रेरी से GPIO फ़ाइल आयात करने जा रहे हैं, नीचे फ़ंक्शन हमें PI के GPIO पिन को प्रोग्राम करने में सक्षम बनाता है। हम "GPIO" का नाम भी "IO" कर रहे हैं, इसलिए जब भी हम GPIO पिन को संदर्भित करना चाहते हैं, तो हम 'IO' शब्द का उपयोग करेंगे।
IO के रूप में RPi.GPIO आयात करें
कभी-कभी, जब GPIO पिन, जिसे हम उपयोग करने की कोशिश कर रहे हैं, हो सकता है कि वह कुछ अन्य कार्य कर रहा हो। उस स्थिति में, हम कार्यक्रम को निष्पादित करते समय चेतावनी प्राप्त करेंगे। नीचे कमांड पीआई को चेतावनी को अनदेखा करने और कार्यक्रम के साथ आगे बढ़ने के लिए कहता है।
IO.setwarnings (गलत)
हम पीआई के GPIO पिन का उल्लेख कर सकते हैं, या तो बोर्ड पर पिन नंबर या उनके फ़ंक्शन नंबर के द्वारा। बोर्ड पर 'PIN 29' की तरह 'GPIO5' है। इसलिए हम यहां बताते हैं कि या तो हम यहां '29' या '5' द्वारा पिन का प्रतिनिधित्व करने जा रहे हैं।
IO.setmode (IO.BCM)
हम PIN39 या GPIO19 को आउटपुट पिन के रूप में सेट कर रहे हैं। हम इस पिन से PWM आउटपुट प्राप्त करेंगे।
IO.setup (19, IO.OUT)
आउटपुट पिन सेट करने के बाद, हमें पिन को PWM आउटपुट पिन के रूप में सेट करना होगा, p = IO.PWM (आउटपुट चैनल, PWM सिग्नल की आवृत्ति)
उपरोक्त कमांड चैनल की स्थापना के लिए है और चैनल की आवृत्ति को स्थापित करने के लिए भी है ”। 'p' यहाँ एक वैरिएबल है यह कुछ भी हो सकता है। हम GPIO19 को PWM "आउटपुट चैनल के रूप में उपयोग कर रहे हैं। "PWM सिग्नल की फ्रीक्वेंसी" हम 50 का चयन करेंगे, क्योंकि SG90 काम करने की आवृत्ति 50Hz है।
PWM सिग्नल जेनरेशन को शुरू करने के लिए नीचे कमांड का उपयोग किया जाता है। ' DUTYCYCLE ’पहले समझाए गए अनुपात को चालू करने के लिए है, p.start (DUTYCYCLE)
नीचे कमांड का उपयोग हमेशा के लिए लूप के रूप में किया जाता है, इस कमांड के साथ इस लूप के अंदर के स्टेटमेंट को लगातार निष्पादित किया जाएगा।
जबकि 1:
यहाँ रास्पबेरी पाई का उपयोग करके सर्वो को नियंत्रित करने का कार्यक्रम GPIO19 में एक PWM संकेत प्रदान करता है। पीडब्लूएम सिग्नल का कर्तव्य अनुपात तीन सेकंड के लिए तीन मूल्यों के बीच बदल जाता है। इसलिए हर दूसरे के लिए सर्वो ड्यूटी अनुपात द्वारा निर्धारित स्थिति में घूमता है। सर्वो लगातार तीन सेकंड में 0º, 90o और 180 three तक घूमता है।