Oglas

predstavljen-rpi-gpioČe bi bil Arduino kul, počakaj, da dobiš svoje roke Malina Pi Malina Pi: Neuradna vadnicaNe glede na to, ali ste trenutno lastnik Pi, ki se želi naučiti več, ali pa potencialni lastnik te naprave z velikostjo kreditne kartice, to ni vodnik, ki ga želite zamuditi. Preberi več - te stvari so neverjetne. Poleg tega, da so popolnoma funkcionalen računalnik, imajo na voljo tudi izbor Splošni vnos / izhod zatiči. Tako kot Arduino jih lahko uporabljamo tudi za ustvarjanje elektronskih projektov - in presenetljivo je enostavno začeti.

Danes bomo povezali rele in ga uporabljali za vklop LED, vendar bi lahko prav tako enostavno vklopili svetilko.

Ta uvod je prvi del večjega projekta avtomatizacije doma. Christian je že postavil temelje začeti s Pi Malina Pi: Neuradna vadnicaNe glede na to, ali ste trenutno lastnik Pi, ki se želi naučiti več, ali pa potencialni lastnik te naprave z velikostjo kreditne kartice, to ni vodnik, ki ga želite zamuditi. Preberi več , zato tu ne bom ponavljal prvih korakov za prenos OS-ja ali vtikanje SD kartice - predpostavil bom, da imate

instagram viewer
delujoč Raspianov sistem že postavljen.

Opozorilo: Čeprav Raspberry Pi lahko Če se uporablja podobno kot Arduino, je potrebno malo več nege. Zatiči Pi delujejo na 3.3v, medtem ko Arduino uporablja 5v. Čeprav je Arduino mogoče zlomiti, je Pi veliko lažje prebiti, saj se zatiči povežejo neposredno z vgrajenim čipom - če pošljete 5V dol tam, ga lahko ocvrti.

Zato bodite zelo previdni pri poskusu ponovitve Arduinovih projektov na vašem Pi - bodisi sledite navodilom za Pi, bodite prepričani, da boste dobro razumeli osnovno elektroniko.

Zahteve:

  • NPN tranzistor, kot je P2N2222A
  • 1k upor
  • Rele; Uporabljam 4-relejski 5v modul z vgrajenim dodatnim zaščitnim vezjem (zato ni potrebe po dodatnih diodah)
  • LED in 220 ohm upor za testiranje
  • Prekinitveni kabel

Prekinitveni kabel ("komplet za kabliranje")

Zatiči GPIO so nameščeni ob strani pi, poleg vtičnice RCA za video izhode.

prekinitveni kabel

Čeprav lahko tehnično priključite nekaj ženskih mostičnih kablov neposredno na te, niso označeni na noben uporaben način in zato je večja verjetnost, da boste kaj zlomili. Namesto tega dobite prekinitveni kabel, kot je tnjegov iz Adafruit, ali enega izmed številnih cenejših klonov na eBayu. Morda boste morali to spajkati, ker bo v kompletu.

prelomna deska

Čeprav ima stran plošče zarezo, ki kaže na pravilno namestitev kabla, Pi stran nima. Poskrbite, da se 3v in 5v zatiči v skrajnem kotu Pi poravnajo z ustreznimi zatiči na plošči. Seveda, če ste kupili ohišje, na katerem ni prikazana glava GPIO, boste morali teči z golim Pi ali izrezati luknjo.

jasno-primer-gpio

Lahko pa dobite tudi polno ploščo, ki se pritrdi na vaš Pi in ponavadi je priložena vrsta uporabnih komponent.

Osnovno vezje

Nastavite vezje, kot je opisano spodaj. Zapustil sem vezje releja, saj se bo to spreminjalo. Uporabi NE (običajno zaprto) in COM sponke vašega releja za LED ali drugo napravo.

vezje

Uporabite zatič 4 iz Raspberry Pi. Na moji prelomni plošči je napisano + GPCLK0; ne glede na to, to je četrti pin od 3V3.

pin4

Testiranje ukazne vrstice

V naslednjih primerih predvidevam, da ste prijavljeni prek SSH ali drugače kot korenski uporabnik. V nasprotnem primeru boste morali nekatere ukaze predgovoriti s sudo za povišane privilegije.

Najprej moramo namestiti OžičenjePi.

git clone git: //git.drogon.net/wiringPi cd wiringPi ./build

Ob predpostavki, da je šlo vse dobro, bi morali zdaj imeti možnost neposrednega nadzora nad GPIO iz ukazne vrstice, kot je ta:

gpio -g način 4 izhod. gpio -g napiši 4 1

Prvi ukaz je podoben funkciji Arduinove nastavitve, kjer pišemo, da Pi uporabi pin 4 kot izhod. Naslednji ukaz na pin zapiše vrednost 1, kar naj sproži tranzistor, vklopi rele, zapre vezje za LED in ga vklopi.

Super. Če ne gre, se vrnite in preverite ožičenje. Ali rele klikne?

Python

Čeprav Python ni edini način za komunikacijo z zatiči GPIO, se na splošno šteje za najlažji in se najpogosteje nahaja v obstoječih projektih. Python je za razliko od C-ja dokaj enostavno pobrati (tukaj je 5 mest za učenje Pythona 5 najboljših spletnih mest za učenje programiranja PythonaSe želite naučiti programiranja Pythona? Tukaj je najboljših načinov za učenje Pythona na spletu, od katerih je večina popolnoma brezplačnih. Preberi več ).

Začnite z namestitvijo naslednjih razširitev Python:

apt-get namestitev python-dev apt-get namestitev python-rpi.gpio

Zdaj ustvarite novo datoteko, imenovano test.py. če uporabljate ukazno vrstico, vnesite

nano test.py

Prilepite ali vnesite naslednje (tudi na ta pasbin):

uvoz RPi. GPIO kot GPIO. čas uvoza. GPIO.setmode (GPIO.BCM) GPIO.setup (4, GPIO.OUT) za x v območju (0,10): čas.spi (5) GPIO. izhod (4,1) čas.spi (5) GPIO. izhod (4,0)

To je zelo preprost scenarij Python, ki bo za 5 sekund vklopil LED (ali karkoli, kar ste priključili na svoj rele), nato pa izklopil za 5 sekund, 10-krat. Morali bi biti sposobni razumeti večino kode. The GPIO.setmode vrstica se preprosto uporablja za označitev sheme oštevilčevanja pin, ki jo bomo uporabljali.

To je to! Če želite zagnati kodo, vnesite:

python test.py
Dokončano

Naslednji teden bomo podrobneje pripravili nastavitev in naredili nekaj zanimivih stvari, kot je dodajanje glasovnega nadzora. Če boste v relejni tokokrog dodali visokonapetostne električne elemente, boste želeli biti prepričani, da uporabljate ustrezno ocenjeno rele na živo žico, in se prepričajte, da priložite vse, da ni stran od radovednih prstov dojenčkov ali mame. Resno, čeprav bodite varni.

Vprašanja, komentarje, povratne informacije in haikuse objavite v spodnjem polju - vendar ne pozabite, da vas bom ocenil glede uporabe slovnice.

James ima doktorat iz področja umetne inteligence in ima certifikat CompTIA A + in Network +. Je vodilni razvijalec MakeUseOf in svoj prosti čas preživlja z igranjem VR paintball in družabnih iger. Z računalniki gradi že od malih nog.