Taula de continguts:

Arbre de Nadal NeoPixel controlat per Bluetooth: 5 passos
Arbre de Nadal NeoPixel controlat per Bluetooth: 5 passos

Vídeo: Arbre de Nadal NeoPixel controlat per Bluetooth: 5 passos

Vídeo: Arbre de Nadal NeoPixel controlat per Bluetooth: 5 passos
Vídeo: Easy ESP32 Neopixel Christmas Tree 2024, Juliol
Anonim

Us heu preguntat com afegir IoT (Internet de les Coses) al vostre arbre de Nadal aquest any? Bé, és totalment possible! Personalment, anomeno aquest projecte "ArduXmas" i consisteix en una tira LED NeoPixel RGB controlada per una placa Arduino mitjançant Bluetooth. Aquest és un projecte per a principiants i una fantàstica introducció a Arduino e IoT, així que obtingueu les vostres eines i fem-ho.

Subministraments:

Per a aquest projecte necessitareu:

  • Arduino (he utilitzat Nano, però qualsevol versió funcionarà, assegureu-vos de poder alimentar correctament la vostra placa)
  • Tira LED NeoPixel WS2812b
  • Mòdul Bluetooth HC-06
  • Alimentació de 5V 2A DC
  • Connector / presa d'alimentació de barril de CC
  • Placa de fenolita per subjectar els components
  • Cas de tancament
  • Smartphone Android amb aplicació Blynk instal·lada

Pas 1: el circuit

El Circuit
El Circuit
El Circuit
El Circuit
El Circuit
El Circuit

L’electrònica d’aquest projecte és molt senzilla. El mòdul Arduino, Bluetooth i la tira LED s’alimenten de la font de 5 V (assegureu-vos que tots els GND estan connectats junts). La placa Arduino s’alimenta a través del port de 5 V (ATENCIÓ: alimentar l’Arduino mitjançant el port de 5 V pot danyar la vostra placa si no esteu atent. Assegureu-vos que utilitzeu una font d’alimentació regulada de 5 V i no barregeu el + 5 V i cables GND). El corrent proporcionat per la font d'alimentació dependrà de la longitud de la tira LED. Estic fent servir 180 leds amb un 40% de la seva amplitud completa i 2 amperis es mantenen bé, però sempre assegureu-vos de subministrar el corrent necessari (RECORDEU: cada LED RGB utilitza al voltant de 20mA + 20mA + 20mA = 60mA).

El mòdul Bluetooth HC-06 està connectat als pins 0 i 1 (RX, TX) de l’Arduino, només cal recordar que per utilitzar aquest mòdul, el pin RX de l’HC-06 està connectat al TX d’Arduino i el pin TX de l’HC-06 és connectat al RX d'Arduino. Aquests són els pins de connexió sèrie de la placa i s’utilitzen per rebre les ordres del telèfon intel·ligent. He afegit un commutador per encendre / apagar fàcilment el mòdul, de manera que el puc apagar quan es programa la placa, en cas contrari l’ordinador no es pot comunicar amb l’Arduino.

Al circuit, el pin de sortida de dades que va a la tira LED és el pin digital 2, però podeu triar qualsevol pin PWM i canviar-lo segons el codi (RECORDEU: les tires LED de NeoPixel tenen una direcció per al senyal de dades. Cerqueu sempre el icones de fletxa a la vostra franja).

Per fer les connexions, estic fent servir una placa de fenolita amb forats, de manera que sigui fàcil soldar-la i desmuntar-la l’any vinent.

Pas 2: el recinte

El recinte
El recinte
El recinte
El recinte
El recinte
El recinte

Per al recinte només faig servir una funda d’alimentació d’un portàtil antic que s’adapta molt bé als components. Assegureu-ho tot amb cola calenta i deixeu forats al port USB de l’Arduino, al commutador de l’HC-06, al connector de CC i al connector de tira LED.

Pas 3: aplicació Blynk

Aplicació Blynk
Aplicació Blynk
Aplicació Blynk
Aplicació Blynk
Aplicació Blynk
Aplicació Blynk

Per comunicar-nos amb l’Arduino, fem servir l’aplicació Blynk. Amb Blynk podeu crear fàcilment interfícies per enviar dades des del telèfon intel·ligent al maquinari o al revés, també és possible controlar directament els ports del microcontrolador sense canviar una línia de codi.

EXCLUSIÓ DE RESPONSABILITAT: malauradament, aquesta aplicació només funcionarà per als telèfons intel·ligents d'Android perquè la funció Bluetooth encara està en versió beta i encara no està disponible per a iOS, això també significa que no serà possible exportar el projecte com a aplicació autònoma.

Configureu l'aplicació per rebre el testimoni d'autenticació del vostre projecte a la safata d'entrada de correu electrònic (aquesta autenticació serà necessària més endavant al codi d'Arduino). El lloc web de Blynk té un gran tutorial pas a pas sobre això, consulteu-ho:

Per a aquest projecte estic fent servir dos botons per activar 2 animacions de llum precodificades; un component RGB per configurar el color de la tira LED; un control lliscant per controlar la brillantor i un component bluetooth per connectar-se a l'Arduino. Consulteu les imatges per veure com es configura cada component. Presteu atenció als pins utilitzats per a aquest projecte, ja que utilitzem els pins virtuals de Blynk, aquesta és una bona característica que permet enviar dades de l'aplicació al maquinari. Per obtenir més informació sobre els pins virtuals:

Pas 4: Codi Arduino

Codi Arduino
Codi Arduino

És hora de fer una mica de codi! El fitxer que he proporcionat té l'estructura bàsica per executar el projecte, però podeu canviar-lo com vulgueu. No obstant això, perquè funcioni correctament, heu de substituir l'autenticació per la fitxa que heu rebut a la safata d'entrada del correu electrònic. Recordeu també de canviar les variables LED_PIN i LED_COUNT segons la vostra configuració.

El comportament dels LED està dictat per la variable anim que canvia quan l’aplicació rep una sol·licitud. Podeu afegir tantes possibilitats d’animacions com vulgueu, només cal que afegiu la vostra funció a l’estructura del commutador a la funció toggleAnimation () i assigneu la lectura corresponent del pin virtual a la part superior del codi.

L'animació que s'executa en bucle () està lligada a un temporitzador en intervals de 100 ms. Això és necessari i no recomano canviar-lo, perquè interfereix amb l'ordre Blynk.run () i la connexió es tanca si la biblioteca Blynk detecta massa sol·licituds en un curt període de temps.

Recomanat: