Crie Iluminação Marquee LED Dinâmica com Arduino Nano e NeoPixels
Componentes e Materiais
| Arduino Nano R3 | × | 1 |
| Fita NeoPixel | × | 1 |
Aplicativos e Serviços Online
| Arduino IDE |
Sobre o Projeto
Iluminação Marquee Animada DIY Simples
Este é um tutorial simples para adicionar iluminação animada ao seu gabinete de arcade ou outros projetos. Pode ser usado para iluminação de marquees (frontal ou traseira) e muitas outras finalidades.
Você precisará de um Arduino Nano (ou placa compatível), uma fita de NeoPixels e 3 fios.
A Construção
Confira o vídeo abaixo para ver a montagem:
Configuração Rápida
Hardware: Solde três fios do Arduino Nano para a fita NeoPixel: 5V, sinal digital (escolhi o pino 2 no Arduino) e terra.
Dica: Use um pedaço de tubo termorretrátil para unir os cabos, especialmente a fita de LED (certifique-se de que as conexões de solda estejam cobertas). Isso evitará que as conexões de solda se soltem.



Código: Defina o número de LEDs da fita conectada no código do sketch, faça o upload para o Arduino e teste. Usei animações de "caminhada", piscando e pulsando no sketch, apenas na cor branca. Você pode ajustar o código para fazer todo tipo de animações e usar muitas cores. Ou apenas usar uma luz de fundo simples, o que preferir.

A montagem: Cortei 2 peças de papelão que se encaixam perfeitamente no meu gabinete. Uma peça serve como fundo para colar a fita neopixel. A outra tira é colocada rente à parte inferior do marquee para evitar que a luz dos neopixels brilhe diretamente para baixo. Depois, tive que cortar algumas bordas pequenas para ajustar ao meu gabinete.

Colei alguns pedaços de fita gaffa no papelão para deixá-los pretos. Colei a fita neopixel no papelão e prendi os fios e o nano na parte de trás do papelão com fita.



Coloque as 2 partes no gabinete e conecte um cabo USB do nano a uma fonte de 5V. No meu gabinete, está conectado a uma porta USB de um Raspberry Pi.

Em seguida, coloque o marquee original de volta ou crie o seu próprio para personalizar sua construção. Criei um simples, imprimi em papel fotográfico e cortei para caber no marquee.
Dica: O resultado final ficará ainda melhor se você mandar imprimir seu design em filme por uma gráfica profissional.

Bibliotecas
O sketch precisa de uma biblioteca:
- Biblioteca Adafruit NeoPixel
Licença
Partes do sketch foram encontradas na internet, todo crédito vai para os criadores. Sinta-se à vontade para usar o código para uso pessoal, não para fins comerciais. Você pode me contatar em ericBcreator@gmail.com.
Código
Código de Luz Marquee Animada Arduino
/* **********************************************************************
* Iluminação Marquee com Neopixels por ericBcreator
* script simples para iluminar um marquee (de arcade)
**********************************************************************
* última atualização 20181021 por ericBcreator
*
* Inspirado em artigo de sandyjmacdonald
* https://sandyjmacdonald.github.io/2015/12/02/picade-errata/
*
* componentes:
* - Fita Neopixel
* - Arduino Nano
*
* Este código é livre para uso pessoal, não para fins comerciais.
* Por favor, mantenha este cabeçalho intacto.
*
* contato: ericBcreator@gmail.com
********************************************************************** */
//
// incluir as bibliotecas
//
#include <Adafruit_NeoPixel.h>
#define PIN 2 // define o pino onde a fita está conectada
//
// configurar variáveis e inicializar a fita neopixel
//
int numOfLeds = 11; // número de leds na fita
int minBrightness = 80; // brilho mínimo do pulsar e piscar (0-255)
int maxBrightness = 255; // brilho máximo do pulsar e piscar (0-255)
int walkingLedsDelay = 250; // atraso em ms para leds caminhando
int flashDelay = 250; // atraso em ms para leds piscando
int numOfFlashLoops = 3; // número de vezes que os leds piscam
int numOfPulseLoops = 10; // número de vezes que os leds pulsam de min para max
int pulseDelay = 20; // atraso em ms ao pulsar de min para max e vice-versa
Adafruit_NeoPixel strip = Adafruit_NeoPixel(numOfLeds, PIN);
//
// setup
//
void setup() {
strip.begin();
}
//
// loop principal
//
void loop() {
walkingLeds(); // mostra os leds caminhando
flashLeds(); // pisca os leds
for (int i = 0; i < numOfPulseLoops; i++) // pulsa os leds
pulseBrightness();
}
//
// funções
//
void walkingLeds() {
setLedColorsToZero();
strip.setBrightness(maxBrightness);
strip.show();
for (int x = numOfLeds; x > 0; x--) {
strip.setPixelColor(x, strip.Color(255, 255, 255));
strip.show();
delay(walkingLedsDelay);
strip.setPixelColor(x, 0);
strip.show();
}
}
void flashLeds() {
setLedColors();
for (int i = 0; i < numOfFlashLoops; i++) {
strip.setBrightness(maxBrightness);
strip.show();
delay(flashDelay);
strip.setBrightness(minBrightness);
strip.show();
delay(flashDelay);
}
}
void pulseBrightness() {
setLedColors();
for (int i = minBrightness; i < maxBrightness; i++) {
strip.setBrightness(i);
strip.show();
delay(pulseDelay);
}
for (int i = maxBrightness; i > minBrightness; i--) {
strip.setBrightness(i);
strip.show();
delay(pulseDelay);
}
}
void setLedColors() {
for (int x = 0; x < numOfLeds; x++)
strip.setPixelColor(x, strip.Color(255, 255, 255));
}
void setLedColorsToZero() {
for (int x = 0; x < numOfLeds; x++)
strip.setPixelColor(x, strip.Color(0, 0, 0));
}
Esquemáticos

Processo de manufatura
- Construa uma Rede de Sensores Sem Fio Acessível para Sua Casa
- Construa um Robô de Streaming de Vídeo Controlado por Internet com Arduino e Raspberry Pi
- Domine o Projeto Elétrico: Otimize Projetos com Recursos do E3.schematic
- Controle seu Ventilador de Teto com Alexa: Guia Passo a Passo
- Monitore a Temperatura da Sua Casa de Qualquer Lugar com Integração Arduino Cloud
- Controle sua TV com Alexa via Arduino IoT Cloud – Guia Passo a Passo
- Integre seu Aquecimento Central com Arduino para Controle Inteligente
- ThimbleKrox: Controle de Mouse Dedo-Montado com Arduino Micro e MPU-6050
- MKR1000 Pinout: A Placa Ideal para Desenvolvimento IoT
- Desbloqueie Automação Avançada: Por Que Visão 3D É Essencial para Seus Projetos