Jobber med Raspberry Pi 3 GPIO med Python

Jobber med Raspberry Pi 3 GPIO med Python
Raspberry Pi er en enkelt brettdatamaskin som kjører på Linux. Det brukes hovedsakelig til IoT (Internet of Things) -prosjekter. Siden det er veldig billig, bruker folk det også for å lære om datamaskiner og programmering. Raspberry Pi har GPIO (General Purpose Input Output) -pinner som brukes til å kontrollere eller samhandle med elektroniske komponenter og integrerte kretsløp. Du kan bruke Python -programmeringsspråk for å samhandle med komponentene koblet til GPIO -pinnene til Raspberry Pi.

Versjonen av Raspberry Pi jeg har er Raspberry Pi 3 Model B. Den har 40 GPIO PIN -header, og ikke alle kan brukes til å samhandle med andre elektroniske komponenter. Du må koble opp de elektroniske komponentene dine til riktig PIN -nummer. Ellers vil du ikke kunne samhandle eller kontrollere den elektroniske komponenten som er koblet til bringebærpi -pi -en. Jeg vil henvise deg til et diagram som du kan bruke for å finne ut hvilken pinne du vil bruke til hvilket formål. Ikke bekymre deg for det.

I denne artikkelen vil jeg lage et enkelt LED -blinkende prosjekt med Raspberry Pi ved hjelp av GPIO -pinnene. Jeg vil vise deg hvordan du bruker Python for å samhandle med GPIO -pinnene til Raspberry Pi. Jeg vil bruke Raspberry Pi 3 Model B for demonstrasjonen, da dette er hva jeg har. Hvis du bruker en annen versjon av Raspberry Pi, kan det hende du må gjøre nødvendige endringer for at den skal fungere. Så la oss komme i gang.

Ting du trenger:

For å lykkes med å bygge Raspberry Pi LED -blinkende prosjekt med meg, trenger du,

  • En bringebærpi 3 enkeltbrettdatamaskin.
  • Et microSD -kort med raspbisk OS blinket.
  • En mikro USB -adapter eller Android -telefonlader for å slå sammen Raspberry Pi.
  • En datamaskin med internettforbindelse og for kobling til Raspberry Pi eksternt.
  • En 220Ω eller 1KΩ motstand.
  • En 5mm eller 3mm LED.
  • Noen mannlige til kvinnelige koblingsledninger.
  • En brødplate.

Kretsdiagram:

Du bør koble alle komponentene til Raspberry Pi 3 som vist i kretsdiagrammet nedenfor.

På brødbrett ser det ut som dette.

Merk at jeg koblet den ene enden av motstanden mot Gpio0 som er PIN 11 på Raspberry Pi 3, og den ene enden av den røde førte til GND (bakken) pin som er PIN 6 på Raspberry Pi 3.

Koble til Raspberry Pi 3 eksternt:

Hvis du eier en Raspberry Pi og bruker Raspbian, har du sannsynligvis SSH og VNC allerede aktivert. Hvis du har fulgt en av artiklene mine om hvordan du installerer Raspbian på Raspberry Pi, bør du vite hvordan du kan aktivere dem. Hvis du er i tvil om disse er aktivert, kan du lese artikkelen på (lenken til artikkelen Installer Raspbian på Raspberry Pi).

Hvis du foretrekker å jobbe med kommandolinjen, så SSH i Raspberry Pi 3 med følgende kommando:

$ ssh [email protected]

Hvis du foretrekker å jobbe grafisk, bruk VNC Viewer for å koble deg til Raspberry Pi 3. Bare skriv inn IP -adressen til Raspberry Pi og trykk .

Nå, skriv inn pi Som brukernavn og passordet du setter opp mens du installerer Raspbian som passord. Klikk deretter på Ok.

Du skal være tilkoblet.

Skrivekoder for Raspberry Pi Blink LED -prosjektet:

Først åpner du en terminal (hvis du bruker VNC Viewer) og oppretter en ny fil blinke.py

Nå åpen blinke.py Med en tekstredigerer (jeg vil bruke Nano) som følger:

$ nano blink.py

Skriv inn følgende linjer med Python -koder og lagre filen ved å trykke på + x Og trykk deretter y etterfulgt av .

Her, på linje 1, importerte jeg Python RPI.GPIO fra RPI Bibliotek for å jobbe med GPIO -pinnene til Raspberry Pi.

På linje 2 importerte jeg Python tid og tidsbibliotek.

På linje 4-6 definerte jeg 3 variabler.

  • Ledpin Variabel er satt til pin -nummeret 11. Det er her den røde LED er koblet til Raspberry Pi 3.
  • Blinkdelay er satt til 5, som er 500ms. Så LED vil være på i 500 ms og deretter av i 500 ms og igjen på 500ms og så videre.
  • Ledon Variabel er satt til ekte Som standard. Når det er ekte, LED -en vil være på, når det er usant, vil lysdioden være av. Ledon Logikken er byttet fra ekte til Falsk og Falsk til ekte hver 500ms (som definert i Blinkdelay).

Linje 9 brukes til å sette opp GPIO -pinnen Ledpin som er pin 11 for utgang ved hjelp av GPIO.oppsett () Bibliotekfunksjon. GPIO.oppsett () godtar to argumenter. Den ene er pin -nummeret, og den andre er modusen som denne pinnen fungerer. I dette tilfellet er det det GPIO.UTE eller utgangsmodus. Hvis du vil ta innspill, bør det være GPIO.I.

På linje 11-19, a prøv-bortsett fra Blokk brukes. Så når jeg stopper Python -skriptet, vil det skrive ut teksten Takk for at du bruker blink.py (linje 19) i stedet for feilmeldinger. Jeg sørget også for at GPIO -pinnen ble ryddet opp i linje 18 med GPIO.rydde opp() Bibliotekfunksjon.

Selve koden for Blink-prosjektet er på linje 12-16. Her brukes en uendelig sløyfe.

Ved hver iterasjon av loopen,

  • Linje 13 skriver ut statusen til LED (enten den er av eller på) avhengig av logikk for Ledon
  • Linje 14 bruker produksjon() Bibliotekfunksjon for å enten slå av eller på LED (inn Ledpin PIN) avhengig av logikken til Ledon variabel.
  • Linje 15 brukes til å bytte logikkverdi på Ledon
  • Til slutt, på linje 16, sove() Bibliotekfunksjon brukes til å holde LED på eller av for Blinkdelay tid.

Når du er ferdig med å skrive koden, kjører du blinke.py Skript med følgende kommando:

$ python blink.py

Som du ser vises LED -statusene 500ms.

Som du ser, blinker LED hver 500ms.

[Inkluder videofilen i Filer/utgang.3GP]

Hvis du vil stoppe blinken.py manus, bare trykk + c.

Som du ser har skriptutførelsen stoppet.

Raspberry Pi 3 Model B GPIO Pinouts:

Du kan finne Raspberry Pi 3 Model B GPIO Pinouts på https: // pi4j.com/1.2/PINS/MODEL-3B-REV1.html

Sørg for å sjekke det ut.

Så det er slik du jobber med GPIO -pinnene til Raspberry Pi 3 med Python. Takk for at du leste denne artikkelen.