Taula de continguts:

Franja LED controlada per a lloc web / WiFi amb Raspberry Pi: 9 passos (amb imatges)
Franja LED controlada per a lloc web / WiFi amb Raspberry Pi: 9 passos (amb imatges)

Vídeo: Franja LED controlada per a lloc web / WiFi amb Raspberry Pi: 9 passos (amb imatges)

Vídeo: Franja LED controlada per a lloc web / WiFi amb Raspberry Pi: 9 passos (amb imatges)
Vídeo: CS50 2015 – 10-я неделя 2024, Juliol
Anonim
Franja LED controlada per a lloc web / WiFi amb Raspberry Pi
Franja LED controlada per a lloc web / WiFi amb Raspberry Pi

Antecedents:

Sóc adolescent i he estat dissenyant i programant petits projectes d’electrònica durant els darrers anys, juntament amb participar en concursos de robòtica.

Fa poc treballava en l’actualització de la configuració del meu escriptori i vaig decidir que una bona addició seria una mica d’il·luminació d’humor. Al principi, acabo de comprar una tira LED de 5 V amb bateria controlada per un comandament a distància, però no va ser un procés molt satisfactori i vaig tenir una idea. Tenia algunes peces de recanvi i havia estat intentant pensar alguna cosa a veure amb el Raspberry Pi que tenia per Nadal. Durant un dia particularment avorrit a classe de ciències, em vaig adonar que podia utilitzar els pins GPIO del Raspberry Pi per controlar els llums LED, sempre que els donessin valors RGB.

El meu pla inicial de disseny era fer que els llums estiguessin controlats per una pantalla tàctil muntada a la paret o a l’escriptori, però després d’unes revisions vaig decidir que la manera més fàcil d’anar seria controlar-la amb un altre dispositiu. Tot i que em plantejava escriure una aplicació per al meu telèfon a Java, un lloc web petit semblava molt més eficient.

Aquest projecte està obert a moltes millores i, tot i que el meu html + php és una mica resumit, ho fan bé

Temes:

Els punts principals que assolirà aquesta guia són:

  1. Control de GPIO al Raspberry Pi
  2. Allotjament d’un servidor web Apache al Pi
  3. Ús del servidor web per controlar una tira de llum LED RGB

Pas 1: materials i subministraments necessaris

  • 1 x Raspberry Pi (he utilitzat un Pi 2 model B)
  • Targeta MicroSD
  • Alguna cosa per alimentar el vostre Pi (cable USB i adaptador de corrent altern)
  • 1 x adaptador WiFi USB O una connexió Ethernet
  • 1 x cable USB a sèrie:
  • 1 x GPIO breakout:
  • 1 x tauler petit:
  • USB a MicroSD:
  • Múltiples colors de filferro de nucli sòlid
  • Un recinte
  • 3 transistors tipus NPN (he utilitzat transistors BC547b)
  • 1x tira de llum LED de 5V
  • Filferros de pont femení a masculí:

Pas 2: Configuració de l'entorn del Pi

Configuració de l'entorn del Pi
Configuració de l'entorn del Pi
Configuració de l'entorn del Pi
Configuració de l'entorn del Pi

Vaig utilitzar una caixa de plàstic inclinada per incloure el projecte perquè no destacés al meu prestatge. He foradat un forat al costat del cable USB sèrie i he situat el Pi al costat de la placa de configuració i del Pi Wedge.

Pas 3: Configuració del vostre Pi (primera part)

Configuració del vostre Pi (primera part)
Configuració del vostre Pi (primera part)

Per a aquest projecte he utilitzat l'última versió de Raspbian que no és d'escriptori

Podeu trobar una guia sobre com instal·lar Raspbian aquí:

(És possible que necessiteu un adaptador USB a microSD per a l'ordinador)

Un cop instal·lat Raspbian a la targeta SD, podeu procedir a connectar-lo al Raspberry Pi i connectar el cable Ethernet o l’adaptador WiFi USB al Pi

A continuació, instal·leu Tera Term al vostre ordinador, que us permetrà connectar-vos amb el terminal de Raspberry Pi a través del vostre PC:

A continuació, connecteu el cable sèrie USB de la falca Pi al PC. Es pot accedir a través de Tera Term. Assegureu-vos que la velocitat en bauds del port sèrie estigui configurada en 115200.

En primer lloc, el Pi publicarà una sol·licitud per iniciar la sessió si el sistema operatiu s’ha instal·lat correctament

El nom d'usuari i la contrasenya per defecte són:

Nom d'usuari: pi

Contrasenya: gerd

Pas 4: Configuració del vostre Pi (part 2)

Configuració de WiFi

Al terminal, executeu l'ordre

sudo nano / etc / network / interfaces

A continuació, enganxeu aquest codi i substituïu el SSID i el PSK pel nom i la contrasenya del vostre enrutador

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"

Aquest fitxer permet que el Pi es connecti al vostre WiFi

A continuació, reinicieu el Pi amb la línia

sudo reiniciar

Instal·lació del servidor web

Inicieu la sessió i, a continuació, instal·leu el servidor Apache amb

sudo apt-get install apache2 -y

i

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

Per trobar l'adreça IP del vostre Pi, executeu l'ordre

nom d'amfitrió -I

Utilitzeu la vostra navegació per accedir a la IP que es mostra per comprovar si funciona.

Per exemple, a Google Chrome escriuria 192.168.1.72 a la barra d'adreces.

La documentació que heu de seguir es troba a

També s’ha d’instal·lar la biblioteca PiGPIO, que permet controlar les dades que s’envien a través dels pins GPIO.

sudo apt-get install build-essential descomprimir wget

i

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

Pas 5: escriure el codi

Aneu a / var / www / html amb la línia

cd / var / www / html

Al directori, hi haurà un fitxer html per defecte, que haureu d’editar.

sudo nano index.html

A Nano, suprimiu tot el que ja hi ha i substituïu-lo pel següent codi.

(Tera Term pot ser una mica divertit amb la còpia i l'enganxament, però normalment un cop copiat el text, alt + v hauria de fer la feina)

funció readRGB (color) {if (color.length == 0) {document.getElementById ("txtHint"). innerHTML = ""; tornar; } 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 (); }} Seleccioneu un color:

A continuació, deseu-lo com a main.html, en lloc de index.html

El codi anterior actua com el botó que premeu i com el codi que envia el color que seleccioneu a l’altre fitxer.

A continuació, executeu l'ordre

sudo nano

i enganxeu-hi

$ r $ g $ b ;

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

i deseu-lo com a action_page.php

Aquest codi rep el valor RGB i estableix els valors PWM a la tira LED.

Pas 6: Disseny de circuits

Disseny de circuits
Disseny de circuits

Ara que tot el programari està configurat, és hora de treballar amb el maquinari.

L'objectiu del circuit és enviar senyals PWM (Pulse Width Modulats) des del Pi a la matriu LED.

La tira LED té quatre pins: vermell, verd, blau i potència (5 volts en el meu cas).

Cada pin PWM controla un dels tres colors mitjançant un transistor, que actua com a commutador.

Cada transistor té tres pins: col·lector, base i emissor.

El senyal PWM controla el cicle de treball (quant de temps s'activa i s'apaga l'interruptor).

El cicle de treball fa que les llums siguin més fosques o més brillants.

Com que els llums s’encenen i s’apaguen tan ràpidament, la gent ho veu com una llum sòlida amb una brillantor variable.

NOTA: A l'esquema, els símbols LED representen la matriu de LED i les resistències limitadores de corrent dins del cable.

Pas 7: Unteu el pa… Pissarra

Untant el pa… Pissarra
Untant el pa… Pissarra

Mentre feu connexions, assegureu-vos que teniu el Pi apagat.

Col·loqueu la falca Pi amb una fila de pins a la meitat de la taula de connexions i connecteu-la al Pi amb el cable de cinta. He utilitzat filferro de nucli sòlid per reduir el desordre de la placa de paret i per assegurar-me que res no es desconnectés accidentalment.

Col·loqueu els transistors a la meitat superior de la placa de configuració (columna A) i connecteu la matriu de LED a la meitat inferior (files H, I o J).

Connecteu el rail d'alimentació negativa al pin GND de la falca i el rail positiu al pin de 5 V.

Connecteu el carril d'alimentació positiva al pin de subministrament d'alimentació de la matriu LED.

Per a cada transistor, connecteu el pin de l’emissor al rail d’alimentació negatiu i connecteu el pin del col·lector a files separades corresponents als pins de la matriu LED (he utilitzat la fila 1 com a 5v i 2, 3 i 4 com a verda, vermella i blava, a la columna f). A continuació, connecteu quatre cables de pont masculí a femella des de la placa de connexió a la tira LED.

Finalment, connecteu el pin base del transistor verd al pin 17 de la falca, la base del transistor vermell al pin 22 i la base del transistor blau al pin 24.

Pas 8: proves

Proves
Proves

En un navegador web, aneu a l'adreça IP del Pi i, després, escriviu /main.html

Seleccioneu un color i sorprengueu amb les "meravelles de la tecnologia moderna".

Pas 9: poseu-vos en contacte amb mi si teniu cap pregunta / comentari

Si teniu alguna pregunta o suggeriment, no dubteu a deixar un comentari o envieu-me un comentari aquí i intentaré respondre-ho al més aviat possible.

Bona sort!

Recomanat: