మీ రాస్ప్బెర్రీ పైలో GPIO పిన్లను ఉపయోగించడం నేర్చుకోవడం అనేది అవకాశాల ప్రపంచాన్ని తెరుస్తుంది. బిగినర్స్ ప్రాజెక్ట్ల ద్వారా నేర్చుకున్న ప్రాథమిక సూత్రాలు DIY ఎలక్ట్రానిక్స్ మరియు ప్రోగ్రామింగ్ రెండింటి గురించి ఉపయోగకరమైన పరిజ్ఞానానికి మార్గం సుగమం చేస్తాయి.
ఈ ట్యుటోరియల్ మీ రాస్ప్బెర్రీ పై ప్రాజెక్ట్కు బటన్ని జోడించడానికి రెండు మార్గాలను చూపుతుంది. LED ని నియంత్రించడానికి బటన్ ఉపయోగించబడుతుంది. వ్రాతపూర్వక సూచనలు వీడియో క్రింద అందుబాటులో ఉన్నాయి.
నీకు అవసరం అవుతుంది
ప్రారంభించడానికి, మీరు ఈ క్రింది భాగాలను కలిగి ఉన్నారని నిర్ధారించుకోండి:
- 1 x రాస్ప్బెర్రీ పై (ఏదైనా చేస్తుంది, మోడల్ 3B ఈ ట్యుటోరియల్లో ఉపయోగించబడుతుంది)
- 1 x పుష్ బటన్
- 1 x LED
- 1 x 220 ఓం రెసిస్టర్ (అధిక విలువలు బాగానే ఉన్నాయి, మీ LED మసకగా ఉంటుంది)
- 1 x బ్రెడ్బోర్డ్
- వైర్లను హుక్ అప్ చేయండి
సేకరించిన తర్వాత, మీరు ఇలా కనిపించే భాగాలను కలిగి ఉండాలి:
మీకు రాస్పియన్ ఆపరేటింగ్ సిస్టమ్ ఇన్స్టాల్ చేయబడిన SD కార్డ్ కూడా అవసరం. NOOBS (న్యూ అవుట్ ఆఫ్ ది బాక్స్ సాఫ్ట్వేర్) ఇమేజ్తో దీన్ని చేయడానికి వేగవంతమైన మార్గం. దీన్ని ఎలా చేయాలో సూచనలు ఈ వీడియోలో అందుబాటులో ఉన్నాయి:
సర్క్యూట్ ఏర్పాటు
సర్క్యూట్ చేయడానికి మీరు పై యొక్క GPIO పిన్లను ఉపయోగిస్తున్నారు మరియు మీకు తెలియకపోతే మా రాస్ప్బెర్రీ పై GPIO పిన్లకు గైడ్ సహాయం చేస్తాను. ఇక్కడ సర్క్యూట్ మా మునుపటి మాదిరిగానే ఉంటుంది రాస్ప్బెర్రీ పై LED ప్రాజెక్ట్ , మీరు ఈ రోజు ఉపయోగిస్తున్న బటన్ను జోడించడంతో.
ఈ రేఖాచిత్రం ప్రకారం మీ సర్క్యూట్ను సెటప్ చేయండి:
- ది 5 వి మరియు GND పిన్లు బ్రెడ్బోర్డ్ యొక్క పవర్ పట్టాలకు కనెక్ట్ అవుతాయి.
- పిన్ 12 (GPIO 18) LED యొక్క పాజిటివ్ లెగ్కు కనెక్ట్ చేస్తుంది.
- ఇందులో ఒక కాలు నిరోధకం LED యొక్క నెగటివ్ లెగ్కి జతచేయబడుతుంది, మరియు ఇతర లెగ్ బ్రెడ్బోర్డ్ యొక్క గ్రౌండ్ రైలుకు జోడించబడుతుంది.
- పిన్ 16 (GPIO 23) బటన్ యొక్క ఒక వైపుకు జతచేయబడుతుంది, మరొక వైపు బ్రెడ్బోర్డ్ యొక్క గ్రౌండ్ రైలుకు జోడించబడుతుంది.
సెటప్ చేసిన తర్వాత, ఇది ఎలా ఉండాలో ఇక్కడ ఉంది:
మీ సర్క్యూట్ సరిగ్గా ఉందో లేదో తనిఖీ చేయండి, ఆపై మీ రాస్ప్బెర్రీ పైని పవర్ అప్ చేయండి.
విధానం 1: RPi.GPIO లైబ్రరీ
పై బూట్ అయిన తర్వాత, మెనుకి వెళ్లి, ఎంచుకోండి ప్రోగ్రామింగ్> థానీ పైథాన్ IDE . కొత్త పైథాన్ స్క్రిప్ట్ తెరవబడుతుంది. మీరు పైథాన్కు పూర్తిగా కొత్తవారైతే, ఇది ప్రారంభకులకు గొప్ప భాష మరియు మీరు ఈ ట్యుటోరియల్ పూర్తి చేసిన తర్వాత పైథాన్ గురించి మరింత తెలుసుకోవడానికి చాలా గొప్ప ప్రదేశాలు ఉన్నాయి!
RPi.GPIO లైబ్రరీని దిగుమతి చేయడం మరియు బోర్డ్ మోడ్ను సెట్ చేయడం ద్వారా ప్రారంభించండి.
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
ఇప్పుడు LED మరియు బటన్ పిన్ నంబర్ల కోసం వేరియబుల్స్ ప్రకటించండి.
ledPin = 12
buttonPin = 16
మేము బోర్డు మోడ్ సెట్ చేసినందున గమనించండి బోర్డు మేము GPIO సంఖ్యల కంటే పిన్ సంఖ్యలను ఉపయోగిస్తున్నాము. అది మీకు గందరగోళంగా ఉంటే, రాస్ప్బెర్రీ పై పిన్అవుట్ చార్ట్ దాన్ని క్లియర్ చేయడానికి సహాయపడుతుంది.
బటన్ని సెటప్ చేస్తోంది
GPIO పిన్లను సెటప్ చేయడానికి ఇది సమయం. LED పిన్ను అవుట్పుట్కు మరియు బటన్ పిన్ను పుల్-అప్ రెసిస్టర్తో ఇన్పుట్ చేయడానికి సెట్ చేయండి
GPIO.setup(ledPin, GPIO.OUT)
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.IN తర్వాత టెక్స్ట్ సూచిస్తుంది అంతర్గత పుల్-అప్ నిరోధకం రాస్ప్బెర్రీ పై. బటన్ నుండి క్లీన్ రీడింగ్ పొందడానికి మీరు దీన్ని ఎనేబుల్ చేయాలి. బటన్ గ్రౌండ్ పిన్కి వెళుతున్నందున, మీరు నొక్కినంత వరకు ఇన్పుట్ పిన్ను ఎక్కువగా ఉంచడానికి మాకు పుల్-అప్ రెసిస్టర్ అవసరం.
మేము కొనసాగడానికి ముందు, పుల్-అప్ మరియు పుల్-డౌన్ రెసిస్టర్లను చూద్దాం.
ఇంటర్వెల్: పుల్ అప్/పుల్ డౌన్ రెసిస్టర్లు
మీరు GPIO పిన్ను ఇన్పుట్కు కాన్ఫిగర్ చేసినప్పుడు, దాని స్థితిని గుర్తించడానికి అది ఆ పిన్ని చదువుతుంది. ఈ సర్క్యూట్లో, పిన్ ఉందో లేదో మీరు చదవాలి అధిక లేదా తక్కువ బటన్ నొక్కినప్పుడు LED ని ట్రిగ్గర్ చేయడానికి. పిన్ కలిగి ఉన్న ఏకైక రాష్ట్రాలు అయితే ఇది చాలా సులభం, కానీ దురదృష్టవశాత్తు, మూడవ స్థితి ఉంది: తేలియాడే .
ఫ్లోటింగ్ పిన్ అధిక మరియు తక్కువ మధ్య విలువను కలిగి ఉంటుంది, దీని వలన ఇన్పుట్ అనూహ్యంగా పనిచేస్తుంది. పుల్-అప్/పుల్-డౌన్ రెసిస్టర్లు దీనిని పరిష్కరిస్తాయి.
పై చిత్రం బటన్ మరియు రాస్ప్బెర్రీ పై యొక్క సరళీకృత రేఖాచిత్రం. GPIO పిన్ బటన్ ద్వారా భూమికి కలుపుతుంది. అంతర్గత పుల్-అప్ రెసిస్టర్ GPIO పిన్ను అంతర్గత Pi విద్యుత్ సరఫరాకు జతచేస్తుంది. ఈ కరెంట్ ప్రవహిస్తుంది మరియు పిన్ సురక్షితంగా హై వరకు లాగబడుతుంది.
మీరు బటన్ని నొక్కినప్పుడు, GPIO పిన్ నేరుగా గ్రౌండ్ పిన్కు కనెక్ట్ అవుతుంది, మరియు బటన్ తక్కువగా చదువుతుంది.
పవర్ పిన్కి స్విచ్ కనెక్ట్ అయినప్పుడు పుల్-డౌన్ రెసిస్టర్లు ఉంటాయి. ఈసారి, అంతర్గత నిరోధకం GPIO పిన్ను భూమికి జతచేస్తుంది, మీరు బటన్ని నొక్కినంత వరకు తక్కువ పట్టుకోండి.
పుల్-అప్ మరియు పుల్-డౌన్ రెసిస్టర్ సిద్ధాంతం మొదటి చూపులో గందరగోళంగా ఉంది, కానీ మైక్రోకంట్రోలర్లతో పనిచేసేటప్పుడు ముఖ్యమైన జ్ఞానం ఉండాలి. ప్రస్తుతానికి, మీకు సరిగ్గా అర్థం కాకపోతే, చింతించకండి!
మనం ఆపివేసిన చోట కొనసాగిద్దాం.
ప్రోగ్రామ్ లూప్
తరువాత, ప్రోగ్రామ్ లూప్ను సెటప్ చేయండి:
while True:
buttonState = GPIO.input(buttonPin)
if buttonState == False:
GPIO.output(ledPin, GPIO.HIGH)
else:
GPIO.output(ledPin, GPIO.LOW)
ది అయితే నిజం మేము ప్రోగ్రామ్ను ముగించే వరకు లూప్ దాని లోపల కోడ్ని నిరంతరం నడుపుతుంది. లూప్ చేసిన ప్రతిసారీ అది అప్డేట్ అవుతుంది బటన్ రాష్ట్రం నుండి ఇన్పుట్ చదవడం ద్వారా బటన్ పిన్ . బటన్ నొక్కినప్పుడు, అది అలాగే ఉంటుంది అధిక .
బటన్ నొక్కిన తర్వాత, బటన్ రాష్ట్రం అవుతుంది తక్కువ . ఇది ప్రేరేపిస్తుంది ప్రకటన ఉంటే , నుండి తప్పుడు దాని లాంటిదేనా తక్కువ , మరియు LED ఆన్ అవుతుంది. ది లేకపోతే బటన్ పిన్ తప్పు కానప్పుడు స్టేట్మెంట్ LED ని ఆఫ్ చేస్తుంది.
మీ స్క్రిప్ట్ను సేవ్ చేసి రన్ చేయండి
క్లిక్ చేయడం ద్వారా మీ స్క్రిప్ట్ను సేవ్ చేయండి ఫైల్> ఇలా సేవ్ చేయండి మరియు ఫైల్ పేరును ఎంచుకోవడం. మీరు గ్రీన్ క్లిక్ చేయడం ద్వారా స్కెచ్ను అమలు చేయవచ్చు ప్లే థానీ టూల్బార్లోని బటన్.
ఇప్పుడు బటన్ని నొక్కండి మరియు మీ LED వెలిగించాలి! ఎరుపును నొక్కండి ఆపు ప్రోగ్రామ్ను ఆపడానికి ఎప్పుడైనా బటన్
మీకు ఇబ్బందులు ఉంటే, లోపాల కోసం మీ కోడ్ మరియు సర్క్యూట్ సెటప్ను పూర్తిగా తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి.
విధానం 2: GPIO జీరో లైబ్రరీ
RPi.GPIO లైబ్రరీ అద్భుతంగా ఉంది, కానీ బ్లాక్లో కొత్త కిడ్ ఉంది. GPIO జీరో లైబ్రరీ రాస్ప్బెర్రీ పై కమ్యూనిటీ మేనేజర్ బెన్ నట్టల్ సృష్టించారు కోడ్ను సరళంగా, మరియు చదవడానికి మరియు వ్రాయడానికి సులభతరం చేసే ఉద్దేశ్యంతో.
కొత్త లైబ్రరీని పరీక్షించడానికి కొత్త థానీ ఫైల్ని తెరిచి, లైబ్రరీని దిగుమతి చేయండి.
from gpiozero import LED, Button
from signal import pause
మీరు మొత్తం లైబ్రరీని దిగుమతి చేయలేదని మీరు గమనించవచ్చు. మీరు LED మరియు బటన్ని మాత్రమే ఉపయోగిస్తున్నారు కాబట్టి, మీకు స్క్రిప్ట్లోని మాడ్యూల్స్ మాత్రమే అవసరం. మేము కూడా దిగుమతి చేస్తాము పాజ్ సిగ్నల్ లైబ్రరీ నుండి, ఇది ఈవెంట్ నిర్వహణ కోసం పైథాన్ లైబ్రరీ.
GPIO జీరోతో పిన్లను సెటప్ చేయడం చాలా సులభం:
led = LED(18)
button = Button(23)
GPIO జీరో లైబ్రరీ LED మరియు బటన్ కోసం మాడ్యూల్స్ కలిగి ఉన్నందున, మీరు మునుపటిలా ఇన్పుట్లు మరియు అవుట్పుట్లను సెటప్ చేయనవసరం లేదు. పిన్స్ మారకపోయినా, ఇక్కడ సంఖ్యలు పై నుండి వేరుగా ఉన్నాయని మీరు గమనించవచ్చు. ఎందుకంటే GPIO జీరో GPIO పిన్ నంబర్లను మాత్రమే ఉపయోగిస్తుంది (బ్రాడ్కామ్ లేదా BCM నంబర్లు అని కూడా పిలుస్తారు).
విండోస్ 10 నుండి నేను ఏమి తొలగించగలను
మిగిలిన స్క్రిప్ట్ మూడు లైన్లు మాత్రమే:
button.when_pressed = led.on
button.when_released = led.off
pause()
ది పాజ్ () ఇక్కడ కాల్ స్క్రిప్ట్ దిగువకు చేరుకున్నప్పుడు నిష్క్రమించకుండా ఆపివేస్తుంది. బటన్ను నొక్కినప్పుడు మరియు విడుదల చేసినప్పుడు రెండు-బటన్ ఈవెంట్లు ప్రేరేపించబడతాయి. మీ స్క్రిప్ట్ను సేవ్ చేసి రన్ చేయండి మరియు మీరు మునుపటి ఫలితాన్ని చూస్తారు!
రాస్ప్బెర్రీ పైకి బటన్ జోడించడానికి రెండు మార్గాలు
బటన్ని సెటప్ చేయడానికి రెండు మార్గాలలో, GPIO జీరో పద్ధతి సులభమయినదిగా కనిపిస్తుంది. ఇది ఇప్పటికీ RPi.GPIO లైబ్రరీ గురించి నేర్చుకోవడం విలువ చాలా ప్రారంభ రాస్ప్బెర్రీ పై ప్రాజెక్ట్లు దాన్ని ఉపయోగించు. ఈ ప్రాజెక్ట్ ఎంత సులభమో, జ్ఞానాన్ని అనేక విషయాల కోసం ఉపయోగించవచ్చు.
GPIO పిన్లను ఉపయోగించడం మీ స్వంత పరికరాలను నేర్చుకోవడానికి మరియు కనిపెట్టడానికి ఒక గొప్ప మార్గం, కానీ మీరు Pi తో చేయగలిగే అన్నింటికీ ఇది చాలా దూరంగా ఉంటుంది. రాస్ప్బెర్రీ పైకి మా అనధికారిక గైడ్ సృజనాత్మక ఆలోచనలు మరియు ట్యుటోరియల్లతో నిండి ఉంది, మీరు మీరే ప్రయత్నించవచ్చు! ఇలాంటి మరొక ట్యుటోరియల్ కోసం, తనిఖీ చేయండి Wi-Fi కనెక్ట్ బటన్ని ఎలా తయారు చేయాలి .
షేర్ చేయండి షేర్ చేయండి ట్వీట్ ఇమెయిల్ మీ వర్చువల్బాక్స్ లైనక్స్ మెషిన్లను సూపర్ఛార్జ్ చేయడానికి 5 చిట్కాలువర్చువల్ మెషీన్స్ అందించే పేలవమైన పనితీరుతో విసిగిపోయారా? మీ వర్చువల్బాక్స్ పనితీరును పెంచడానికి మీరు ఏమి చేయాలో ఇక్కడ ఉంది.
తదుపరి చదవండి సంబంధిత అంశాలు- DIY
- రాస్ప్బెర్రీ పై
- పైథాన్
- GPIO
- DIY ప్రాజెక్ట్ ట్యుటోరియల్స్
ఇయాన్ బక్లీ జర్మనీలోని బెర్లిన్లో నివసిస్తున్న ఫ్రీలాన్స్ జర్నలిస్ట్, సంగీతకారుడు, ప్రదర్శనకారుడు మరియు వీడియో నిర్మాత. అతను వ్రాయనప్పుడు లేదా వేదికపై లేనప్పుడు, అతను పిచ్చి శాస్త్రవేత్త కావాలనే ఆశతో DIY ఎలక్ట్రానిక్స్ లేదా కోడ్తో టింకరింగ్ చేస్తున్నాడు.
ఇయాన్ బక్లీ నుండి మరిన్నిమా వార్తాలేఖకు సభ్యత్వాన్ని పొందండి
టెక్ చిట్కాలు, సమీక్షలు, ఉచిత ఈబుక్లు మరియు ప్రత్యేకమైన డీల్స్ కోసం మా వార్తాలేఖలో చేరండి!
సభ్యత్వం పొందడానికి ఇక్కడ క్లిక్ చేయండి