Cuprins:

Banda LED controlată de site / WiFi cu Raspberry Pi: 9 pași (cu imagini)
Banda LED controlată de site / WiFi cu Raspberry Pi: 9 pași (cu imagini)

Video: Banda LED controlată de site / WiFi cu Raspberry Pi: 9 pași (cu imagini)

Video: Banda LED controlată de site / WiFi cu Raspberry Pi: 9 pași (cu imagini)
Video: DE CE VREAU L4D3 2024, Iulie
Anonim
Banda LED controlată de site / WiFi cu Raspberry Pi
Banda LED controlată de site / WiFi cu Raspberry Pi

Fundal:

Sunt adolescent și proiectez și programez mici proiecte electronice în ultimii ani, împreună cu participarea la competiții de robotică.

Am lucrat recent la actualizarea configurării biroului meu și am decis că un plus frumos ar fi o iluminare a dispoziției. La început, tocmai am cumpărat o bandă LED alimentată cu baterie de 5V controlată de o telecomandă, dar nu a fost un proces foarte satisfăcător și am avut o idee. Aveam câteva piese de schimb în jur și încercasem să mă gândesc la ceva cu Raspberry Pi pe care îl aveam de Crăciun. În timpul unei zile deosebit de plictisitoare la ora științifică, mi-am dat seama că aș putea folosi pinii GPIO ai Raspberry Pi pentru a controla luminile cu LED-uri, atâta timp cât le-am obținut valori RGB.

Planul meu inițial de proiectare era ca luminile să fie controlate de un afișaj cu ecran tactil montat pe perete sau pe birou, dar după câteva revizii am decis că cel mai simplu mod de urmat ar fi să-l controlez cu un alt dispozitiv. În timp ce mă gândeam să scriu o aplicație pentru telefonul meu în Java, un mic site web părea mult mai eficient.

Acest proiect este deschis multor îmbunătățiri și, în timp ce html + php-ul meu este cam schițat, ei își fac treaba

Subiecte:

Principalele puncte pe care le va atinge acest ghid sunt ---

  1. Controlul GPIO pe Raspberry Pi
  2. Găzduirea unui server web Apache pe Pi
  3. Utilizarea serverului web pentru a controla o bandă de lumină LED RGB

Pasul 1: Materiale și consumabile necesare

  • 1 x Raspberry Pi (am folosit un Pi 2 Model B)
  • Card microSD
  • Ceva care să vă alimenteze Pi (cablu USB și adaptor de alimentare CA)
  • 1 x adaptor USB USB SAU o conexiune Ethernet
  • 1 x cablu USB la serial -
  • 1 x breakout GPIO -
  • 1 x panou mic -
  • USB către MicroSD -
  • Culori multiple ale firului cu miez solid
  • O incintă
  • 3 x tranzistoare tip NPN (am folosit tranzistoare BC547b)
  • 1x bandă de lumină LED 5V
  • Firele jumperului de la femeie la masculin -

Pasul 2: Configurarea mediului Pi

Configurarea mediului Pi
Configurarea mediului Pi
Configurarea mediului Pi
Configurarea mediului Pi

Am folosit o cutie de plastic înclinată pentru a închide proiectul, astfel încât să nu iasă în evidență pe raftul meu. Am făcut o gaură în lateral pentru cablul USB serial și am poziționat Pi lângă panou și Pi Wedge.

Pasul 3: Configurarea dispozitivului Pi (Partea 1)

Instalarea Pi-ului (Partea 1)
Instalarea Pi-ului (Partea 1)

Pentru acest proiect am folosit cea mai recentă versiune de non-desktop Raspbian

Un ghid despre cum să instalați Raspbian poate fi găsit aici:

(Este posibil să aveți nevoie de un adaptor USB la microSD pentru computer)

Odată ce Raspbian este instalat pe cardul SD, puteți continua să îl conectați la Raspberry Pi și să conectați cablul Ethernet sau adaptorul USB WiFi la Pi

Apoi, instalați Tera Term pe computer, care vă permite să interfațați cu terminalul Raspberry Pi prin intermediul computerului:

Apoi, conectați cablul serial USB de la panoul Pi la computer. Poate fi accesat prin Tera Term. Asigurați-vă că rata de transmisie a portului serial este setată la 115200.

În primul rând, Pi va afișa o solicitare de conectare dacă sistemul de operare a fost instalat corect

Numele de utilizator și parola implicite sunt:

Nume utilizator: pi

Parolă: zmeură

Pasul 4: Configurarea Pi-ului (Partea 2)

Configurarea WiFi

În terminal, rulați comanda

sudo nano / etc / network / interfaces

Apoi, lipiți acest cod și înlocuiți SSID și PSK cu numele și parola routerului

auto lo

iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "ssid" wpa-psk "password"

Acest fișier permite Pi-ului să se conecteze la WiFi

Apoi, reporniți Pi cu linia

sudo reboot

Instalarea serverului Web

Conectați-vă, apoi instalați serverul Apache cu

sudo apt-get install apache2 -y

și

sudo apt-get install php libapache2-mod-php -y

Pentru a găsi adresa IP a Pi, executați comanda

numele gazdei -I

Utilizați navigarea pentru a accesa IP-ul afișat pentru a verifica dacă funcționează.

De exemplu, în Google Chrome aș tasta 192.168.1.72 în bara de adrese.

Documentația pe care ar trebui să o urmăriți poate fi găsită la

De asemenea, trebuie instalată biblioteca PiGPIO, care vă permite să controlați datele trimise prin pinii GPIO.

sudo apt-get install build-essential unzip wget

și

wget https://abyz.me.uk/rpi/pigpio/pigpio.zip && dezarhivați pigpio.zip && cd PIGPIO && sudo make install

Pasul 5: Scrierea codului

Navigați la / var / www / html cu linia

cd / var / www / html

În director, va exista un fișier html implicit, pe care va trebui să îl editați.

sudo nano index.html

În interiorul Nano, ștergeți orice este deja acolo și înlocuiți-l cu următorul cod.

(Termenul Tera poate fi puțin funky cu copierea și lipirea, dar, de obicei, după ce ați copiat textul, alt + v ar trebui să facă treaba)

funcția readRGB (color) {if (color.length == 0) {document.getElementById ("txtHint"). innerHTML = ""; întoarcere; } else {var xmlhttp = new XMLHttpRequest (); xmlhttp.onreadystatechange = function () {if (this.readyState == 4 && this.status == 400) {document.getElementById ("txtHint"). innerHTML = this.responseText; }}; temp = encodeURIComponent (color); xmlhttp.open ("GET", "action_page.php? q =" + temp, true); xmlhttp.send (); }} Selectați o culoare:

Apoi salvați-l ca main.html, în loc de index.html

Codul de mai sus acționează ca butonul pe care îl apăsați și ca codul care trimite culoarea selectată către celălalt fișier.

Apoi, executați comanda

sudo nano

și lipiți în

$ r $ g $ b ;

exec ("porci p 17 $ g"); exec ("porci p 22 $ r"); exec ("porci p 22 $ b"); ?>

și salvați-l ca acțiune_pagină.php

Acest cod primește valoarea RGB și setează valorile PWM pe banda LED.

Pasul 6: Proiectarea circuitului

Proiectarea circuitului
Proiectarea circuitului

Acum, că tot software-ul este configurat, este timpul să lucrați la hardware.

Scopul circuitului este de a trimite semnale PWM (Pulse Width Modulated) de la Pi la matricea LED.

Banda LED are patru pini: roșu, verde, albastru și putere (5 volți în cazul meu).

Fiecare pin PWM controlează una dintre cele trei culori printr-un tranzistor, care acționează ca un comutator.

Fiecare tranzistor are trei pini: colector, bază și emițător.

Semnalul PWM controlează ciclul de funcționare (cât timp pornește și oprește comutatorul).

Ciclul de funcționare are ca rezultat luminile mai întunecate sau mai strălucitoare.

Deoarece luminile se aprind și se sting atât de repede, oamenii o văd ca pe o lumină solidă cu luminozitate variabilă.

NOTĂ: În schemă, simbolurile LED reprezintă tabloul LED și rezistențele de limitare a curentului din fir.

Pasul 7: Îngroșați-vă pâinea… Bord

Untându-vă pâinea… Bord
Untându-vă pâinea… Bord

În timp ce realizați conexiuni, asigurați-vă că ați oprit Pi.

Așezați panul Pi cu un rând de pini pe fiecare jumătate a plăcii și conectați-l la Pi cu cablul cu bandă. Am folosit sârmă cu miez solid pentru a reduce aglomerația de pe panou și pentru a mă asigura că nimic nu va fi deconectat accidental.

Așezați tranzistoarele pe jumătatea superioară a panoului (coloana A) și conectați matricea de LED-uri pe jumătatea inferioară (rândurile H, I sau J).

Conectați șina de putere negativă la știftul GND de pe pană și șina pozitivă la știftul de 5V.

Conectați șina de alimentare pozitivă la pinul sursei de alimentare a matricei de LED-uri.

Pentru fiecare tranzistor, conectați pinul emițătorului la șina de alimentare negativă și conectați pinul colector la rânduri separate corespunzătoare pinilor matricei LED (am folosit rândul 1 ca 5v și 2, 3 și 4 ca verde, roșu și albastru, în coloana f). Apoi, conectați patru fire jumper la tată de la placa de masă la banda LED.

În cele din urmă, conectați pinul de bază al tranzistorului verde la pinul 17 de pe pană, baza tranzistorului roșu la pinul 22 și baza tranzistorului albastru la pinul 24.

Pasul 8: Testare

Testarea
Testarea

Într-un browser web, navigați la adresa IP a lui Pi și apoi scrieți /main.html

Selectați o culoare și fiți uimiți de „minunile tehnologiei moderne”!

Pasul 9: Contactați-mă dacă aveți întrebări / feedback

Dacă aveți întrebări sau sugestii, nu ezitați să lăsați un comentariu sau trimiteți-mi un mesaj aici și voi încerca să răspund cât mai curând posibil.

Noroc!

Recomandat: