अपने रास्पबेरी पाई प्रोजेक्ट में एक बटन जोड़ने के 2 तरीके

अपने रास्पबेरी पाई प्रोजेक्ट में एक बटन जोड़ने के 2 तरीके

अपने रास्पबेरी पाई पर GPIO पिन का उपयोग करना सीखना संभावनाओं की एक पूरी दुनिया को खोलता है। शुरुआती परियोजनाओं के माध्यम से सीखे गए बुनियादी सिद्धांत DIY इलेक्ट्रॉनिक्स और प्रोग्रामिंग दोनों के उपयोगी ज्ञान की ओर मार्ग प्रशस्त करते हैं।





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





आपको चाहिये होगा

आरंभ करने के लिए, सुनिश्चित करें कि आपके पास निम्नलिखित घटक हैं:





  • 1 x रास्पबेरी पाई (कोई भी करेगा, इस ट्यूटोरियल में मॉडल 3B का उपयोग किया जाता है)
  • 1 एक्स पुश बटन
  • 1 एक्स एलईडी
  • 1 x 220 ओम रेसिस्टर (उच्च मान ठीक हैं, आपकी एलईडी बस मंद हो जाएगी)
  • 1 एक्स ब्रेडबोर्ड
  • तारों को जोड़ना

एक बार इकट्ठा होने के बाद, आपके पास ऐसे घटक होने चाहिए जो कुछ इस तरह दिखें:

आपको रास्पियन ऑपरेटिंग सिस्टम के साथ एक एसडी कार्ड की भी आवश्यकता होगी। ऐसा करने का सबसे तेज़ तरीका NOOBS (नया आउट ऑफ़ द बॉक्स सॉफ़्टवेयर) छवि है। इसे कैसे करें इस पर निर्देश इस वीडियो में उपलब्ध हैं:



सर्किट की स्थापना

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

इस आरेख के अनुसार अपना सर्किट सेट करें:





  • NS 5वी तथा जीएनडी पिन ब्रेडबोर्ड के पावर रेल से जुड़ते हैं।
  • पिन 12 (जीपीआईओ 18) एलईडी के सकारात्मक पैर से जुड़ता है।
  • का एक पैर अवरोध एलईडी के नकारात्मक पैर से जुड़ जाता है, और दूसरा पैर ब्रेडबोर्ड के ग्राउंड रेल से जुड़ जाता है।
  • पिन 16 (जीपीआईओ 23) बटन के एक तरफ से जुड़ जाता है, दूसरी तरफ ब्रेडबोर्ड के ग्राउंड रेल से जुड़ जाता है।

एक बार इसके सेट हो जाने के बाद, इसे इस तरह दिखना चाहिए:

यह सुनिश्चित करने के लिए अपने सर्किट की जाँच करें कि यह सही है, और फिर अपने रास्पबेरी पाई को पावर दें।





विधि 1: RPi.GPIO लाइब्रेरी

एक बार पाई बूट हो जाने के बाद, मेनू पर जाएं और चुनें प्रोग्रामिंग> थोंनी पायथन आईडीई . एक नई पायथन लिपि खुलेगी। यदि आप पायथन के लिए पूरी तरह से नए हैं, तो शुरुआती लोगों के लिए यह एक बेहतरीन भाषा है और इस ट्यूटोरियल के साथ काम करने के बाद पायथन के बारे में और जानने के लिए कई बेहतरीन जगहें हैं!

RPi.GPIO लाइब्रेरी आयात करके और बोर्ड मोड सेट करके प्रारंभ करें।

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)

अब एलईडी और बटन पिन नंबरों के लिए चर घोषित करें।

ledPin = 12
buttonPin = 16

ध्यान दें कि चूंकि हमारे पास बोर्ड मोड सेट है मंडल हम GPIO नंबरों के बजाय पिन नंबर का उपयोग कर रहे हैं। यदि वह आपको भ्रमित कर रहा है, तो रास्पबेरी पाई पिनआउट चार्ट इसे साफ़ करने में मदद कर सकता है।

बटन सेट करना

GPIO पिन सेट करने का समय आ गया है। एलईडी पिन को आउटपुट पर सेट करें, और बटन पिन को पुल-अप रेसिस्टर के साथ इनपुट पर सेट करें

GPIO.setup(ledPin, GPIO.OUT)
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)

GPIO.IN के बाद का पाठ संदर्भित करता है आंतरिक पुल-अप रोकनेवाला रास्पबेरी पाई का। बटन से साफ रीडिंग प्राप्त करने के लिए आपको इसे सक्षम करने की आवश्यकता है। चूंकि बटन ग्राउंड पिन पर जा रहा है, इसलिए जब तक आप इसे दबाते हैं, तब तक हमें इनपुट पिन को हाई रखने के लिए पुल-अप रेसिस्टर की आवश्यकता होती है।

आगे बढ़ने से पहले, आइए पुल-अप और पुल-डाउन प्रतिरोधों को देखें।

मध्यांतर: प्रतिरोधों को ऊपर खींचो / नीचे खींचो

जब आप GPIO पिन को इनपुट के लिए कॉन्फ़िगर करते हैं, तो यह उस पिन को उसकी स्थिति निर्धारित करने के लिए पढ़ता है। इस सर्किट में, आपको यह पढ़ने की जरूरत है कि क्या पिन है उच्च या कम बटन दबाए जाने पर एलईडी को चालू करने के लिए। यह आसान होगा यदि वे एकमात्र राज्य थे जिनमें एक पिन हो सकता है, लेकिन दुर्भाग्य से, एक तीसरा राज्य है: अस्थायी .

फ्लोटिंग पिन का मान उच्च और निम्न के बीच होता है, जिससे इनपुट अप्रत्याशित रूप से कार्य करता है। पुल-अप/पुल-डाउन प्रतिरोधक इसे हल करते हैं।

उपरोक्त छवि एक बटन और रास्पबेरी पाई का सरलीकृत आरेख है। GPIO पिन बटन के माध्यम से जमीन से जुड़ता है। आंतरिक पुल-अप रोकनेवाला GPIO पिन को आंतरिक पाई बिजली की आपूर्ति से जोड़ता है। यह धारा प्रवाहित होती है और पिन को सुरक्षित रूप से उच्च तक खींच लिया जाता है।

जब आप बटन दबाते हैं, तो GPIO पिन सीधे ग्राउंड पिन से जुड़ जाता है, और बटन कम पढ़ता है।

पुल-डाउन रेसिस्टर्स तब होते हैं जब स्विच पावर पिन से जुड़ा होता है। इस बार, आंतरिक रोकनेवाला GPIO पिन को जमीन से जोड़ देता है, जब तक आप बटन दबाते हैं, तब तक LOW में पकड़े रहते हैं।

पुल-अप और पुल-डाउन रोकनेवाला सिद्धांत पहली नज़र में भ्रमित करने वाला है, लेकिन माइक्रोकंट्रोलर के साथ काम करते समय महत्वपूर्ण ज्ञान होना चाहिए। अभी के लिए, यदि आप इसे पूरी तरह से नहीं समझते हैं, तो चिंता न करें!

आइए जारी रखें जहां हमने छोड़ा था।

कार्यक्रम लूप

अगला, प्रोग्राम लूप सेट करें:

while True:
buttonState = GPIO.input(buttonPin)
if buttonState == False:
GPIO.output(ledPin, GPIO.HIGH)
else:
GPIO.output(ledPin, GPIO.LOW)

NS जबकि सच लूप लगातार इसके अंदर कोड चलाता है जब तक कि हम प्रोग्राम समाप्त नहीं करते। हर बार जब यह लूप करता है तो यह अपडेट करता है बटनस्टेट से इनपुट पढ़कर बटनपिन . जबकि बटन दबाया नहीं जा रहा है, यह रहता है उच्च .

एक बार बटन दबाने के बाद, बटनस्टेट हो जाता है कम . यह ट्रिगर करता है अगर बयान , जबसे झूठा वैसा ही है जैसा कि कम , और एलईडी चालू हो जाती है। NS अन्यथा जब भी बटनपिन गलत नहीं होता है तो स्टेटमेंट एलईडी को बंद कर देता है।

अपनी स्क्रिप्ट सहेजें और चलाएं

क्लिक करके अपनी स्क्रिप्ट सहेजें फ़ाइल> इस रूप में सहेजें और एक फ़ाइल नाम चुनना। आप हरे रंग पर क्लिक करके स्केच चला सकते हैं खेल Thonny टूलबार में बटन।

अब बटन दबाएं, और आपकी एलईडी जल जाएगी! लाल दबाएं विराम कार्यक्रम को रोकने के लिए किसी भी समय बटन

यदि आपको कठिनाइयाँ आ रही हैं, तो त्रुटियों के लिए अपने कोड और सर्किट सेटअप की अच्छी तरह जाँच करें और पुनः प्रयास करें।

विधि 2: GPIO जीरो लाइब्रेरी

RPi.GPIO पुस्तकालय शानदार है, लेकिन ब्लॉक पर एक नया बच्चा है। GPIO जीरो लाइब्रेरी थी रास्पबेरी पाई समुदाय प्रबंधक बेन न्यूटॉल द्वारा बनाया गया कोड को सरल और पढ़ने और लिखने में आसान बनाने के इरादे से।

नई लाइब्रेरी का परीक्षण करने के लिए एक नई Thonny फ़ाइल खोलें, और लाइब्रेरी आयात करें।

from gpiozero import LED, Button
from signal import pause

आप देखेंगे कि आपने संपूर्ण पुस्तकालय आयात नहीं किया है। चूंकि आप केवल एक एलईडी और बटन का उपयोग कर रहे हैं, आपको स्क्रिप्ट में केवल उन मॉड्यूल की आवश्यकता है। हम भी आयात करते हैं ठहराव सिग्नल लाइब्रेरी से, जो इवेंट मैनेजमेंट के लिए एक पायथन लाइब्रेरी है।

GPIO ज़ीरो के साथ पिन सेट करना बहुत आसान है:

led = LED(18)
button = Button(23)

चूंकि GPIO ज़ीरो लाइब्रेरी में LED और बटन के लिए मॉड्यूल हैं, इसलिए आपको पहले की तरह इनपुट और आउटपुट सेट करने की आवश्यकता नहीं है। आप देखेंगे कि यद्यपि पिन नहीं बदले हैं, यहाँ संख्याएँ ऊपर से भिन्न हैं। ऐसा इसलिए है क्योंकि GPIO ज़ीरो केवल GPIO पिन नंबर (जिसे ब्रॉडकॉम या BCM नंबर के रूप में भी जाना जाता है) का उपयोग करता है।

इंटरनेट पर करने के लिए उत्पादक चीजें

बाकी की स्क्रिप्ट केवल तीन पंक्तियों की है:

button.when_pressed = led.on
button.when_released = led.off
pause()

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

रास्पबेरी पाई में एक बटन जोड़ने के दो तरीके

बटन सेट करने के दो तरीकों में से, GPIO ज़ीरो विधि सबसे आसान लगती है। यह अभी भी RPi.GPIO पुस्तकालय के बारे में सीखने लायक है क्योंकि सबसे शुरुआती रास्पबेरी पाई परियोजनाएं इसका इस्तेमाल करें। यह परियोजना जितनी सरल है, ज्ञान का उपयोग कई चीजों के लिए किया जा सकता है।

GPIO पिन का उपयोग करना अपने स्वयं के उपकरणों को सीखने और आविष्कार करने का एक शानदार तरीका है, लेकिन यह उन सभी चीज़ों से बहुत दूर है जो आप Pi के साथ कर सकते हैं। रास्पबेरी पाई के लिए हमारी अनौपचारिक मार्गदर्शिका रचनात्मक विचारों और ट्यूटोरियल से भरी हुई है जिसे आप स्वयं आज़मा सकते हैं! इस तरह के अन्य ट्यूटोरियल के लिए, देखें वाई-फ़ाई कनेक्टेड बटन कैसे बनाएं .

साझा करना साझा करना कलरव ईमेल अपने वर्चुअलबॉक्स लिनक्स मशीनों को सुपरचार्ज करने के लिए 5 टिप्स

वर्चुअल मशीनों द्वारा पेश किए गए खराब प्रदर्शन से थक गए हैं? अपने वर्चुअलबॉक्स प्रदर्शन को बढ़ावा देने के लिए आपको यहां क्या करना चाहिए।

आगे पढ़िए
संबंधित विषय
  • DIY
  • रास्पबेरी पाई
  • अजगर
  • जीपीआईओ
  • DIY परियोजना ट्यूटोरियल
लेखक के बारे में इयान बकले(२१६ लेख प्रकाशित)

इयान बकले बर्लिन, जर्मनी में रहने वाले एक स्वतंत्र पत्रकार, संगीतकार, कलाकार और वीडियो निर्माता हैं। जब वह लिख नहीं रहा होता है या मंच पर नहीं होता है, तो वह पागल वैज्ञानिक बनने की उम्मीद में DIY इलेक्ट्रॉनिक्स या कोड के साथ छेड़छाड़ कर रहा होता है।

इयान बकले की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें
श्रेणी Diy