विषयसूची:

पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना: 4 चरण (चित्रों के साथ)
पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना: 4 चरण (चित्रों के साथ)

वीडियो: पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना: 4 चरण (चित्रों के साथ)

वीडियो: पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना: 4 चरण (चित्रों के साथ)
वीडियो: Raspberry Pi LESSON 6 HOMEWORK SOLUTION: Understanding GPIO Inputs and Pull Up Resistors 2024, सितंबर
Anonim
पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना
पायथन और आपके रास्पबेरी पाई के GPIO पिन के साथ कई एलईडी को नियंत्रित करना

यह निर्देशयोग्य दर्शाता है कि 4 एल ई डी को पावर देने के लिए अपने रास्पबेरीपी पर कई जीपीआईओ पिन को कैसे नियंत्रित किया जाए। यह आपको पायथन में मापदंडों और सशर्त बयानों से भी परिचित कराएगा।

एक एलईडी को नियंत्रित करने के लिए आपके रास्पबेरी पाई के GPIO पिन का उपयोग करने वाला हमारा पिछला निर्देश दर्शाता है कि GPIO.output कमांड का उपयोग करके एकल एलईडी को कैसे चालू और बंद किया जाए। यह निर्देशयोग्य आपको अपने सर्किट पर अधिक नियंत्रण प्राप्त करने का तरीका सिखाने के लिए उस ज्ञान का निर्माण करता है।

चरण 1: आपको क्या चाहिए

तुम क्या आवश्यकता होगी
तुम क्या आवश्यकता होगी
तुम क्या आवश्यकता होगी
तुम क्या आवश्यकता होगी

- रास्पबेरी के साथ एक रास्पबेरीपी पहले से ही स्थापित है। आपको मॉनिटर, माउस और कीबोर्ड का उपयोग करके या रिमोट डेस्कटॉप के माध्यम से पाई तक पहुंचने में सक्षम होना चाहिए। आप रास्पबेरी पाई के किसी भी मॉडल का उपयोग कर सकते हैं। यदि आपके पास पाई ज़ीरो मॉडल में से एक है, तो आप कुछ हेडर पिन को GPIO पोर्ट में मिलाप करना चाह सकते हैं।

- लाल, नीला, पीला और हरा एल ई डी

- एक सोल्डरलेस प्रोटोटाइप ब्रेडबोर्ड

- 4 x 330 ओम रेसिस्टर्स

- कुछ पुरुष से महिला जम्पर तार

चरण 2: अपना सर्किट बनाएं

अपना सर्किट बनाएं
अपना सर्किट बनाएं
अपना सर्किट बनाएं
अपना सर्किट बनाएं

अपने ब्रेडबोर्ड पर उपरोक्त सर्किट का निर्माण सुनिश्चित करें कि कोई भी घटक लीड को छू नहीं रहा है और एलईडी सही तरीके से जुड़े हुए हैं।

आप अपने एल ई डी पर सकारात्मक और नकारात्मक लीड (ध्रुवीयता) की पहचान कैसे करते हैं? यदि आप एक एलईडी को करीब से देखते हैं, तो आप देखेंगे कि इसमें रंगीन आवरण के अंदर धातु के दो छोटे टुकड़े हैं। इन्हें एनोड और कैथोड कहा जाता है। कैथोड दोनों में से सबसे बड़ा है और एल ई डी नकारात्मक लीड से भी जुड़ा है।

एक बार जब आप अपने सर्किट की जाँच कर लेते हैं, तो उपरोक्त आरेख का पालन करके जम्पर केबल को अपने रास्पबेरी पाई के GPIO पिन से कनेक्ट करें।

चरण 3: एल ई डी को नियंत्रित और परीक्षण करने के लिए एक स्क्रिप्ट बनाएं

एल ई डी को नियंत्रित और परीक्षण करने के लिए एक स्क्रिप्ट बनाएं
एल ई डी को नियंत्रित और परीक्षण करने के लिए एक स्क्रिप्ट बनाएं

अपने रास्पबेरी पाई पर, आईडीएलई खोलें (मेनू> प्रोग्रामिंग> पायथन 2 (आईडीएलई))।

एक नया प्रोजेक्ट खोलें फ़ाइल> नई फ़ाइल पर जाएँ। फिर निम्न कोड टाइप करें (या कॉपी और पेस्ट करें):

RPI. GPIO को GPIO के रूप में आयात करें

आयात समय GPIO.setmode(GPIO. BCM) GPIO.setup(17, GPIO. OUT) GPIO.setup(18, GPIO. OUT) GPIO.setup(22, GPIO. OUT) GPIO.setup(23, GPIO. OUT) GPIO.output(17, True) time.sleep(3) GPIO.output(17, False) time.sleep(1) GPIO.output(18, True) time.sleep(3) GPIO.output(18, False) time.sleep(1) GPIO.output(22, True) time.sleep(3) GPIO.output(22, False) time.sleep(1) GPIO.output(23, True) time.sleep(3) GPIO। आउटपुट (23, गलत)

अपने रास्पबेरी पीआईएस दस्तावेज़ फ़ोल्डर में अपनी परियोजना को multilights.py (फ़ाइल> इस रूप में सहेजें) के रूप में सहेजें।

अपने रास्पबेरी पाई पर टर्मिनल (मेनू> एक्सेसरीज> टर्मिनल) खोलें और निम्नलिखित टाइप करके अपने दस्तावेज़ फ़ोल्डर में नेविगेट करें:

सीडी /होम/पीआई/दस्तावेज़

अब आप निम्न टाइप करके अपनी नई स्क्रिप्ट चला सकते हैं:

अजगर multilights.py

रोशनी इसे चालू और बंद करने के लिए बारी-बारी से ले जाएगी। उपरोक्त स्क्रिप्ट प्रत्येक चरण के बीच एक विराम बनाने के लिए time.sleep कमांड का उपयोग करती है, जिससे प्रत्येक प्रकाश 3 सेकंड के लिए रहता है और अगली रोशनी को चालू करने से पहले 1 सेकंड तक प्रतीक्षा करता है।

चरण 4: पैरामीटर्स और कंडीशनल स्टेटमेंट्स का उपयोग करके लचीलापन जोड़ना

पैरामीटर्स और कंडीशनल स्टेटमेंट्स का उपयोग करके हम उपरोक्त स्क्रिप्ट को और अधिक लचीला बना सकते हैं।

एक पैरामीटर आपको एक मान संग्रहीत करने की अनुमति देता है जिसे आप बाद में स्क्रिप्ट में उपयोग कर सकते हैं। सबसे सामान्य प्रकार के मान स्ट्रिंग्स (पाठ), पूर्णांक (पूर्ण संख्या) या फ़्लोट्स (दशमलव संख्याएँ) हैं।

एक सशर्त विवरण यह निर्धारित करेगा कि एक निश्चित शर्त पूरी होती है या नहीं, यह जाँच कर कोड के एक खंड को निष्पादित किया जाना चाहिए या नहीं। स्थिति में पैरामीटर भी शामिल हो सकते हैं।

अपने रास्पबेरी पाई पर IDLE खोलें और एक नया प्रोजेक्ट खोलें (फ़ाइल> नई फ़ाइल)। फिर निम्न टाइप करें। यह सुनिश्चित करने के लिए सावधान रहें कि टैब कुंजी का उपयोग करके सभी इंडेंट (टैब) शामिल हैं:

RPI. GPIO को GPIO के रूप में आयात करें

sys से आयात समय आयात argv wholed=argv[1] नेतृत्व = argv[2] LEDa=17 LEDb=18 LEDc=22 LEDd=23 GPIO.setmode(GPIO. BCM) GPIO.setup(LEDa, GPIO. OUT) GPIO। सेटमोड (GPIO. BCM) GPIO.setup (LEDb, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LEDc, GPIO. OUT) GPIO.setmode (GPIO. BCM) GPIO.setup (LEDd, GPIO. OUT) अगर लेडएक्शन == "ऑफ": अगर जोडेड == "ए": जीपीआईओ.आउटपुट (एलईडीए, फाल्स) अगर कौन सा == "बी": जीपीआईओ.आउटपुट (एलईडीबी, फाल्स) अगर जोल्ड == "सी": GPIO.output(LEDc, False) if wholed=="d": GPIO.output(LEDd, False) if wholed=="all": GPIO.output(LEDa, False) GPIO.output(LEDb, False) GPIO। आउटपुट (एलईडीसी, झूठा) जीपीआईओ। LEDb, ट्रू) अगर कौन सा == "c": GPIO.output (LEDc, True) अगर कौन सा == "d": GPIO.output (LEDd, True) अगर कौन सा == "सभी": GPIO.output (LEDa, सच) GPIO.output(LEDb, True) GPIO.output(LEDc, True) GPIO.output(LEDd, True)

अपने प्रोजेक्ट को अपने दस्तावेज़ फ़ोल्डर में controllight.py (फ़ाइल> इस रूप में सहेजें) के रूप में सहेजें। अब टर्मिनल (मेनू> सहायक उपकरण> टर्मिनल) खोलें और निम्न आदेश टाइप करें:

अजगर controllight.py बी पर

दूसरी एलईडी चालू होनी चाहिए। अब निम्नलिखित टाइप करें:

अजगर controllight.py ख बंद

दूसरी एलईडी को बंद कर देना चाहिए।

5, 6, 7 और 8 की पंक्तियों में, हम LEDa, LEDb, LEDc और LEDd के पैरामीटर बनाते हैं कि कौन सा GPIO पिन हमने किस LED से जोड़ा है। यह हमें स्क्रिप्ट में पर्याप्त परिवर्तन किए बिना वैकल्पिक GPIO पिन का उपयोग करने में सक्षम बनाता है।

उदाहरण के लिए, यदि हम पहले एलईडी को पिन 3 (GPIO 2) से जोड़ते हैं, तो हमें लाइन 5 को निम्नलिखित में बदलना होगा:

एलईडी = 2

लाइन 4 आपके द्वारा टाइप किए गए मानों को controllight.py के बाद पैरामीटर्स (c) और लीडएक्शन (चालू) में संग्रहीत करता है। स्क्रिप्ट तब इन मापदंडों का उपयोग करती है, कई सशर्त बयानों के साथ यह तय करने के लिए कि किस एलईडी को नियंत्रित करना है और इसे चालू या बंद करना है या नहीं।

पंक्ति १६ (यदि लेडएक्शन=="चालू":) एक सशर्त कथन है। इस कथन का पालन करने वाली इंडेंट लाइनें केवल तभी चलेंगी जब कथन की शर्त पूरी हो। इस परिदृश्य में, शर्त यह है कि नेतृत्व में पाठ शामिल है।

स्क्रिप्ट के अन्य सशर्त वक्तव्यों को पढ़कर, क्या आप अनुमान लगा सकते हैं कि जब आप टर्मिनल में निम्न कमांड टाइप करेंगे तो क्या होगा?

अजगर controllight.py सभी पर

क्यों न इसे आज़माएँ और अपना उत्तर नीचे टिप्पणी अनुभाग में पोस्ट करें।

सिफारिश की: