Sisukord:

Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -nööpnõeltega: 4 sammu (koos piltidega)
Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -nööpnõeltega: 4 sammu (koos piltidega)

Video: Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -nööpnõeltega: 4 sammu (koos piltidega)

Video: Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -nööpnõeltega: 4 sammu (koos piltidega)
Video: AENO nutikas veekeetja EK1S | Toote omadused 2024, Juuli
Anonim
Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -tihvtidega
Mitme LED -i juhtimine Pythoni ja teie Raspberry Pi GPIO -tihvtidega

Selles juhendis näidatakse, kuidas juhtida oma RaspberryPi mitut GPIO -nööpi 4 LED -i toiteks. Samuti tutvustab see teile Pythonis parameetreid ja tingimuslauseid.

Meie eelmine juhend, mis kasutab teie Raspberry Pi GPIO -tihvtide kasutamist LED -i juhtimiseks, näitab, kuidas ühe LED -i sisse ja välja lülitada, kasutades käsku GPIO.output. See juhend juhendab neid teadmisi ja õpetab teile, kuidas oma vooluahelat paremini juhtida.

Samm: mida vajate

Mida vajate
Mida vajate
Mida vajate
Mida vajate

- RaspberryPi, millele on juba installitud Raspbian. Samuti peab teil olema juurdepääs Pi -le monitori, hiire ja klaviatuuri või kaugtöölaua kaudu. Võite kasutada mis tahes Raspberry Pi mudelit. Kui teil on üks Pi Zero mudelitest, võiksite GPIO -porti joota mõned päisepoldid.

- punased, sinised, kollased ja rohelised LED -id

- jooteta prototüüpimise leivaplaat

- 4 x 330 oomi takistid

- Mõned isaste ja naiste hüppajate juhtmed

Samm: ehitage oma vooluring

Ehitage oma vooluring
Ehitage oma vooluring
Ehitage oma vooluring
Ehitage oma vooluring

Ehitage ülaltoodud vooluring oma leivaplaadile, veendudes, et ükski komponendi juhe ei puutu kokku ja LED -id on ühendatud õigesti.

Kuidas tuvastada oma LED -ide positiivsed ja negatiivsed juhtmed (polaarsus)? Kui vaatate LED -i tähelepanelikult, näete, et sellel on värvilise korpuse sees kaks väikest metallitükki. Neid nimetatakse anoodiks ja katoodiks. Katood on kahest suurim ja ühendatud ka LED -de negatiivse juhtmega.

Kui olete oma vooluringi kontrollinud, ühendage ülaltoodud skeemi järgides Raspberry Pi GPIO -tihvtide hüppajakaablid.

Samm: looge LED -ide juhtimiseks ja testimiseks skript

Looge LED -ide juhtimiseks ja testimiseks skript
Looge LED -ide juhtimiseks ja testimiseks skript

Avage oma Raspberry Pi -s IDLE (menüü> Programmeerimine> Python 2 (IDLE)).

Avage uus projekt ja valige Fail> Uus fail. Seejärel tippige (või kopeerige ja kleepige) järgmine kood:

RPi. GPIO importimine GPIO -na

importimise aeg 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.väljund (17, tõsi) time.sleep (3) GPIO.väljund (17, vale) time.sleep (1) GPIO.väljund (18, tõsi) time.sleep (3) GPIO.väljund (18, vale) time.sleep (1) GPIO.putput (22, True) time.sleep (3) GPIO.putput (22, False) time.sleep (1) GPIO.output (23, True) time.sleep (3) GPIO. väljund (23, vale)

Salvestage oma projekt kausta Raspberry Pis Documents multilights.py (Fail> Salvesta nimega).

Avage oma Raspberry Pi -s terminal (Menüü> Tarvikud> Terminal) ja navigeerige oma kausta Dokumendid, tippides järgmise:

cd/home/pi/Dokumendid

Nüüd saate oma uue skripti käivitada, tippides järgmise:

python multilights.py

Tuled lülitavad selle omakorda sisse ja välja. Ülaltoodud skript kasutab käsku time.sleep, et luua paus iga sammu vahele, nii et iga tuli jääb põlema 3 sekundiks ja ootab 1 sekund enne järgmise tule sisselülitamist.

4. samm: paindlikkuse lisamine parameetrite ja tingimuslausete abil

Parameetrite ja tingimuslausete abil saame ülaltoodud skripti palju paindlikumaks muuta.

Parameetri abil saate salvestada väärtuse, mida saate skriptis hiljem kasutada. Kõige tavalisemad väärtustüübid on stringid (tekst), täisarvud (täisarvud) või ujukid (kümnendarvud).

Tingimuslause määrab kindlaks, kas koodisegment tuleks täita või mitte, kontrollides, kas teatud tingimus on täidetud. Tingimus võib hõlmata ka parameetreid.

Avage oma Raspberry Pi -s IDLE ja avage uus projekt (Fail> Uus fail). Seejärel tippige järgmine. Tabeldusklahvi abil veenduge, et kõik taanded (vahelehed) oleksid kaasatud.

RPi. GPIO importimine GPIO -na

impordi aeg süsteemist import import argv whichled = argv [1] ledaction = argv [2] LEDa = 17 LEDb = 18 LEDc = 22 LEDd = 23 GPIO.setmode (GPIO. BCM) GPIO.setup (LEDa, GPIO. OUT) GPIO. setmode (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) kui ledaction == "off": if wholed == "a": GPIO.output (LEDa, False) if wholed == "b": GPIO.output (LEDb, False) if theed == "c": GPIO.väljund (LEDc, vale), kui see on == "d": GPIO.väljund (LEDd, vale), kui see on == "kõik": GPIO.väljund (LEDa, vale) GPIO.väljund (LEDb, vale) GPIO. väljund (LEDc, vale) GPIO.output (LEDd, False) if ledaction == "on": if wholed == "a": GPIO.output (LEDa, True) if theced == "b": GPIO.output (LEDb, tõene) kui märgitud == "c": GPIO.väljund (LEDc, tõene) kui pakutud == "d": GPIO.väljund (LEDd, tõene), kui see on == "kõik": GPIO.väljund (LEDa, True) GPIO.väljund (LEDb, True) GPIO.väljund (LEDc, True) GPIO.väljund (LEDd, True)

Salvestage oma projekt kausta Dokumendid nimega controllight.py (Fail> Salvesta nimega). Nüüd avage Terminal (Menüü> Tarvikud> Terminal) ja tippige järgmine käsk:

python controllight.py b sisse

Teine LED peaks põlema. Nüüd tippige järgmine:

python controllight.py b välja lülitatud

Teine LED peaks välja lülituma.

Ridadel 5, 6, 7 ja 8 loome parameetrid LEDa, LEDb, LEDc ja LEDd, et salvestada, millise GPIO tihvti oleme LED -iga ühendanud. See võimaldab meil kasutada alternatiivseid GPIO tihvte ilma skripti olulisi muudatusi tegemata.

Näiteks kui me ühendaksime esimesed valgusdioodid pistikuga 3 (GPIO 2), peaksime lihtsalt rea 5 muutma järgmiseks:

LEDa = 2

Rida 4 salvestab pärast controllight.py sisestatud väärtusi parameetritesse, mis on esitatud (c) ja ledaction (sees). Seejärel kasutab skript neid parameetreid koos hulga tingimuslike avaldustega, et otsustada, millist LED -i juhtida ja kas see sisse või välja lülitada.

16. rida (kui ledaction == "on":) on tingimuslause. Sellele avaldusele järgnevad taandrida käivitatakse ainult siis, kui avalduse tingimus on täidetud. Selle stsenaariumi puhul on tingimus, et ledaction sisaldab teksti.

Lugedes läbi skripti muid tingimuslauseid, kas saate ennustada, mis juhtub, kui sisestate terminali järgmise käsu?

python controllight.py kõik sisse

Miks mitte proovida ja postitada oma vastus allolevasse kommentaaride sektsiooni.

Soovitan: