Publicitate

Featured-RPI-GPIODacă Arduino ar fi fost mișto, abia așteptați să vă puneți mâna pe un Zmeura Pi Raspberry Pi: Tutorialul neoficialIndiferent dacă sunteți un proprietar actual de Pi care dorește să învețe mai multe sau un potențial proprietar al acestui dispozitiv de dimensiune a cardului de credit, acesta nu este un ghid pe care doriți să îl pierdeți. Citeste mai mult - aceste lucruri sunt uimitoare. Pe lângă faptul că sunt un computer complet funcțional, au și o selecție de Obiectiv general Intrare / Ieșire pini. La fel ca un Arduino, le putem folosi pentru a crea proiecte electronice - și este surprinzător de ușor să începem.

Astăzi vom conecta un releu și îl vom folosi pentru a porni un LED, dar puteți aprinde la fel de ușor o lampă.

Această introducere servește ca prima parte a unui proiect mai mare de automatizare a locuinței. Christian a pus deja bazele pe începând cu un Pi Raspberry Pi: Tutorialul neoficialIndiferent dacă sunteți un proprietar actual de Pi care dorește să învețe mai multe sau un potențial proprietar al acestui dispozitiv de dimensiune a cardului de credit, acesta nu este un ghid pe care doriți să îl pierdeți.

instagram viewer
Citeste mai mult deci nu voi repeta primii pași aici pentru a descărca un sistem de operare sau a conecta cardul SD - presupun că aveți un care funcționează sistemul raspian deja înființat.

Avertizare: Deși un zmeură Pi poate sa să fie folosit similar cu un Arduino, este nevoie de puțin mai multă grijă. Pinii din Pi funcționează la 3.3v, în timp ce Arduino folosește 5v. Deși este posibil să spargeți un Arduino, este mult mai ușor să spargeți un Pi, deoarece pinii se conectează direct la cipul de bord - trimiterea de 5v acolo poate prăji.

Prin urmare, fii foarte atent să încerci să reproduci proiecte Arduino pe Pi-ul tău - fie urmează un tutorial specific Pi, fie asigură-te că ai o bună înțelegere a electronicii de bază.

cerinţe:

  • Tranzistor NPN, cum ar fi P2N2222A
  • 1k rezistor
  • Releu; Folosesc un modul 5v cu 4 relee, care are circuite de protecție suplimentare încorporate (deci nu este nevoie de diode suplimentare
  • LED și rezistență de 220 ohmi pentru testare
  • Cablu de rupere

Cablu de rupere („Kit cobbler”)

Pinii GPIO sunt situate în partea Pi, lângă priza de ieșire video RCA.

breakout-cablu

Deși puteți conecta tehnic niște cabluri cu capete pentru capătul feminin direct la acestea, acestea nu sunt etichetate în vreun fel util și, prin urmare, este mai probabil să spargeți ceva. În schimb, obțineți un cablu de rupere, cum ar fi tcel de la Adafruitsau unul dintre numeroasele clone mai ieftine de pe eBay. Este posibil să fie nevoie să lipiți acest lucru, deoarece va veni sub formă de kit.

Breakout-board

Deși partea plăcii are o crestătură în ea pentru a indica amplasarea corectă a cablurilor, partea Pi nu este valabilă. Asigurați-vă că pinii 3v și 5v din colțul îndepărtat al Pi se aliniază cu pinii relevanți de pe placă. Desigur, dacă ați cumpărat un caz care nu expune antetul GPIO, va trebui să rulați cu Pi gol sau să tăiați o gaură.

clar-caz-GPIO

În mod alternativ, puteți obține un consiliu complet care se aplică pe partea de sus a Pi-ului dvs. și, de obicei, vine cu o selecție de componente utile.

Circuitul de bază

Configurați circuitul așa cum este prezentat mai jos. Am lăsat în afara circuitelor releului, deoarece acest lucru va varia. Folosește NU (în mod normal închis) și COM terminale ale releului dvs. pentru LED-ul sau alt dispozitiv.

circuit

Folosiți știftul 4 de la Zmeura Pi. Pe tabloul meu de desfacere, este etichetat + GPCLK0; indiferent, este al patrulea pin care contează de la 3V3.

pin4

Testarea liniei de comandă

În următoarele exemple, presupun că v-ați autentificat prin SSH sau altfel ca utilizator rădăcină. Dacă nu, va trebui să prefaci unele dintre comenzile cu sudo pentru privilegii crescute.

În primul rând, trebuie să instalăm WiringPi.

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

Presupunând că toate au decurs bine, acum ar trebui să putem controla direct GPIO de la linia de comandă astfel:

modul gpio -g 4 afară. gpio -g scrie 4 1

Prima comandă este similară cu funcția de configurare a lui Arduino, unde spunem ca ieșirea Pin-ului utilizează pinul 4. Următoarea comandă scrie o valoare de 1 pe știft, care ar trebui să declanșeze tranzistorul, să activeze releul, să închidă circuitul pentru LED și să îl pornească.

Minunat. Dacă nu, nu, mergeți înapoi și verificați cablarea. Face releul?

Piton

Deși Python nu este singura cale de a comunica cu pinii GPIO, în general este considerat cel mai ușor și este cel mai frecvent întâlnit în proiectele existente. Spre deosebire de C, Python este relativ ușor de ridicat (Aici e 5 site-uri pentru a învăța Python Cele mai bune 5 site-uri web pentru a învăța programarea PythonVrei să înveți programarea Python? Iată cele mai bune metode de a învăța Python online, multe dintre ele fiind complet gratuite. Citeste mai mult ).

Începeți prin instalarea următoarelor extensii Python:

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

Acum, creați un nou fișier numit test.py. dacă utilizați o linie de comandă, tastați

nano test.py

Lipiți sau tastați în următoarele (de asemenea, pe această pastină):

import RPi. GPIO ca GPIO. timp de import. GPIO.setmode (GPIO.BCM) GPIO.setup (4, GPIO.OUT) pentru x în interval (0,10): time.sleep (5) GPIO.output (4,1) time.sleep (5) GPIO.output (4,0)

Acesta este un script Python foarte simplu, care va aprinde LED-ul (sau orice ai conectat la releu) timp de 5 secunde, apoi stinge 5 secunde, 10 ori. Ar trebui să puteți înțelege majoritatea codului. GPIO.setmode linia este folosită pur și simplu pentru a indica schema de numerotare a pinului pe care o vom folosi.

Asta e! Pentru a rula codul, introduceți:

testul python.py
terminat

Săptămâna viitoare, vom elabora puțin configurarea și vom face câteva lucruri interesante, cum ar fi adăugarea controlului vocal. Dacă veți adăuga articole electrice de înaltă tensiune în circuitul releului, veți dori să vă asigurați că utilizați un releu nominal corespunzător pe firul sub tensiuneși asigurați-vă că închideți totul, astfel încât să fie departe de degetele indurerate ale bebelușilor sau ale mamei. Totuși serios, fii în siguranță.

Vă rugăm să postați întrebările, comentariile, feedback-ul și haikus-ul în caseta de mai jos - dar rețineți că vă voi evalua în ceea ce privește utilizarea gramaticii.

James are licență în inteligență artificială și este certificat CompTIA A + și Network +. Este dezvoltatorul principal al MakeUseOf și își petrece timpul liber jucând VR paintball și boardgames. Construiește calculatoare de când era mic.