Índice:

LEDs sincronizados em toda a vizinhança: 5 etapas (com imagens)
LEDs sincronizados em toda a vizinhança: 5 etapas (com imagens)

Vídeo: LEDs sincronizados em toda a vizinhança: 5 etapas (com imagens)

Vídeo: LEDs sincronizados em toda a vizinhança: 5 etapas (com imagens)
Vídeo: 299# TV LG sem imagem, com tela lavada e sem sincronismo, não pega entradas de AV. 2024, Novembro
Anonim
LEDs sincronizados em toda a vizinhança
LEDs sincronizados em toda a vizinhança
LEDs sincronizados em toda a vizinhança
LEDs sincronizados em toda a vizinhança
LEDs sincronizados em toda a vizinhança
LEDs sincronizados em toda a vizinhança

Eu tinha algumas barras de LED sem fio que pensei que poderia lançar para as férias. Mas, no meu quintal, eles também poderiam ter sido conectados. Então, qual é o desafio mais legal? Decorações de LED em todas as casas do meu quarteirão com display sincronizado! Neste ano louco, é uma forma de nos conectarmos.

Estes são fios de LED com alimentação ESP8266 e são conectados a uma rede WiFi, de modo que todos mostram a mesma etapa na sequência de animação ao mesmo tempo. Como eles usam código de malha para se conectar, eles podem estar separados por algumas casas e as mensagens são passadas de um nó para outro.

Eles funcionam com 5 volts e eu usei adaptadores de energia, mas eles podem funcionar por um tempo com baterias USB também. Portanto, eles são portáteis, executam sua própria rede WiFi que não está conectada à Internet e podem funcionar fora da rede.

Todos os nossos vizinhos ficaram entusiasmados por ter esta decoração compartilhada, e é muito bom como você vê todos eles exibindo a mesma exibição enquanto você caminha pela rua. Tenho algumas fotos aqui de alguns em frente da minha casa para teste, mas foi muito difícil fotografá-los na rua.

Etapa 1: Peças

Peças
Peças
Peças
Peças
Peças
Peças

ESP8266 D1 Mini - Usei os módulos D1 Mini porque só preciso de um pino de E / S para os LEDs. Este projeto poderia ser feito sem solda usando uma blindagem de terminal como esta e um módulo ESP8266 diferente. Existe uma versão do D1 Mini com uma antena melhor - a D1 Mini Pro. Ele tem uma antena de cerâmica e um conector U. FL para uma antena externa, mas você precisa mover um resistor de 0 ohm de montagem em superfície para a antena externa. Mais discussão em uma etapa posterior.

Fios WS2811 LED - Usei fios WS2811 porque são à prova d'água (exceto para os conectores JST) e fáceis de trabalhar. As tiras WS2812b "Neopixel" usariam exatamente o mesmo código etc. Usei as de 5v, mas você pode obtê-las em 12v (use menos corrente) - você precisaria de um conversor de voltagem para os ESP8266s, então. Você também pode obter fios de LED WS2811 com conectores à prova d'água, se desejar. Os fios de LED que usei têm conectores JST SM em ambas as extremidades - o feminino é a entrada, embora eu os tenha visto conectados de outra forma (macho como entrada). A direção também é marcada nos próprios LEDs. Também há fios de injeção de energia - cortei as pontas para que as partes estanhadas não entrem em curto. Você também pode comprá-los em embalagens de 10.

Resistor de 330 Ohm 1/4 Watt - usado no pino de dados do ESP8266 para evitar qualquer cintilação dos LEDs.

Conector JST SM 3 Pinos Macho - Destina-se a conectar às faixas de LED. Observe que o conector "macho" tem uma capa sobre ele.

Conector fêmea CCTV de 2,1 mm - são usados para o conector de alimentação. Você pode usar algum outro sistema de conector para isso, se quiser.

Fonte de alimentação de 5 V - a classificação do amplificador depende de quantos LEDs você terá. Provavelmente, um 2A está OK para 50 ou 100 LEDs que nunca estão totalmente acesos (consulte a etapa de fiação para obter mais informações).

Fio de extensão JST SM de 3 pinos ou um fio de extensão de 2,1 mm - como o conector JST no D1 Mini está perto dos LEDs, geralmente você quer uma extensão para permitir que os LEDs sejam colocados mais longe da CPU. No meu caso, acabei colocando o CPU mais alto na decoração para obter um melhor alcance do WiFi, então mantive o CPU perto dos LEDs e usei um cabo de extensão de 2,1 mm.

Cabo USB para 2,1 mm - opcional - permite alimentar o fio de qualquer fonte USB ou bateria.

Tubo termorretrátil de 3 mm - você só precisa de cerca de 1 deste para cobrir o resistor no D1 Mini.

Tubulação transparente termorretrátil de 20 mm - parcialmente opcional para proteger os conectores do D1 Mini. Certifique-se de prender o interruptor de reinicialização após aplicá-lo se o tubo comprimir o interruptor.

Caixa à prova d'água - para proteger a fonte de alimentação e a CPU do lado de fora. A maioria dos meus vizinhos usava apenas sacos plásticos.

Conduíte EMT de 1/2 "- uma peça de 29" se encaixa no formato de uma bengala de doces - usei 4 laços de zíper para segurá-la. Experimentei PVC de 1/2 "e encaixa, mas encosta nos LEDs dos dois lados.

Vergalhões de 3/8 "x 3 '- uma vez que o EMT é anexado à forma, você pode bater o vergalhão no solo e colocar o tubo EMT sobre ele. Vergalhões de 1/2" vão caber, mas você precisará cortar qualquer partes dobradas, e está perto - se ficar achatado ou qualquer coisa quando for batido, ficará muito apertado. Portanto, é mais provável que o tubo de 3/8 "passe facilmente pelo diâmetro interno do tubo EMT.

Forma do bastão de doces - veja o degrau nelas, você pode fazer uma forma DIY, pendurá-la sobre um arbusto ou usar uma forma como esta.

Etapa 2: Montagem do controlador

Conjunto de controlador
Conjunto de controlador
Conjunto de controlador
Conjunto de controlador
Conjunto de controlador
Conjunto de controlador
Conjunto de controlador
Conjunto de controlador

O controlador consiste no D1 Mini (ESP8266), um conector de alimentação fêmea CCTV de 2,1 mm, um resistor de 330 ohms e um conector macho JST de 3 pinos.

A suposição para este projeto é que você usará 50-100 LEDs. Se quiser usar mais, você precisará usar injeção de energia para alimentar todos os LEDs. Veja este outro Instructable para uma discussão mais aprofundada sobre o assunto.

Com 50 LEDs totalmente brancos, eles desenhariam 50 x 0,06 A = 3 ampères. Portanto, com um adaptador 2A, estamos assumindo que eles nunca estarão totalmente ligados. Para 100 LEDs, o máximo é 6A, portanto, ainda mais cuidado deve ser tomado para ter apenas alguns acesos de cada vez. Mesmo com 100 LEDs a 0,02A cada, temos 2 Amps sendo usados. Portanto, uma fonte de alimentação de corrente mais alta é recomendada, embora eu tenha ajustado os monitores para não usar todos os LEDs ou cores ao mesmo tempo, diminua muito o brilho e comecei com fontes 2A com fontes maiores de reserva. Este é um ótimo artigo sobre como reduzir os requisitos de energia.

O resistor de 330 ohms em linha com o fio de dados evita a oscilação do toque eletrônico, uma vez que os dados são de uma frequência razoavelmente alta. Este é mais um fator com muitos LEDs, mas é uma boa prática adicioná-lo.

Soldei o resistor ao D1 Mini diretamente, mas deixei cerca de 1/8 "do cabo acima da placa para que pudesse dobrá-los. Usei cerca de 1" de termorretrátil de 3 mm no resistor para evitar que ele entre em curto no borda.

Usei termorretrátil de 20 mm para proteger o D1 Mini de tocar em metal, etc. Certifique-se de verificar o botão de reinicialização na lateral - pode ser necessário cortar ligeiramente o termorretrátil para garantir que ele não pressione o botão. Eu precisava disso em todos os meus.

Observe que eu não parecia precisar de um deslocador de nível das saídas de 3,3 V ESP8266 e dos LEDs funcionando a 5 V (já que a especificação do chip de LED é ter a linha de dados não inferior a 70% da alimentação). Eu precisava de um diodo / LED sacrificial em projetos anteriores (Etapa 3) com tiras WS2812b, mas os chips diretos WS2811 nos LEDs parecem OK até agora.

Você poderia fazer isso sem soldar! Uma blindagem do terminal ESP8266 com uma CPU diferente funcionaria tão bem. O formato do D1 Mini é bom e pequeno, mas todos funcionam quase da mesma forma.

Etapa 3: formas

Formas
Formas
Formas
Formas
Formas
Formas

Os fios de LED podem ter formato livre ou você pode transformá-los em formatos - faça você mesmo ou em uma loja online. Encomendei algumas formas da HolidayCoro - algumas pequenas árvores de LED, uma meia e uma bengala de doce. A meia levou 50 LEDs muito bem - o comprimento de um fio. A pequena árvore leva 100 LEDs, mas você pode fazer apenas a metade se quiser - de frente para a rua. No final das contas a bengala de bala era a preferida do vizinho por ser um pouco maior. 99 LEDs, e deixei o último atrás com a ideia de que poderia ser usado para depuração.

Como as formas vieram em branco, decidimos pintar listras vermelhas nelas para que fiquem melhores durante o dia. Eu mascarei, fiz uma rápida lixa fina, passei acetona (removedor de esmalte forte) e usei duas camadas de tinta spray que funciona em plástico. Pareceu aderir bem. Nós fizemos principalmente de um lado e alguns do outro lado para algumas casas que tinham 2 deles.

Etapa 4: Código e WiFi

Código e WiFi
Código e WiFi
Código e WiFi
Código e WiFi
Código e WiFi
Código e WiFi

O D1 Mini usa um módulo Espressif ESP8266. Eu o programei usando o Arduino IDE, então parece um poderoso Arduino com WiFi integrado. Existem inúmeras instruções na Internet sobre como configurar o Arduino IDE para o ESP8266 e D1 Mini, então não vou repeti-las aqui.

O código é baseado em um Instructable anterior. Ele usa a biblioteca Painless Mesh para que todas as CPUs se comuniquem. Usei a biblioteca FastLED porque tive problemas anteriormente com a biblioteca de malha e a biblioteca Neopixel, e não testei novamente dessa vez.

Não tenho certeza de qual é o máximo no número de nós. Algumas postagens indicam que será limitado pelo número de mensagens e tipos de CPU e talvez o limite seja em torno de 30-60 nós. Este aplicativo não envia muitas mensagens - apenas a mudança de animação, embora haja algumas automáticas, como mensagens de mudança de malha e sincronização de tempo.

Você pode conectar os LEDs ao D1 Mini durante a codificação, mas pode ser necessário um suprimento externo se tiver mais de 50, pois possivelmente excederá o suprimento da porta USB do computador e do regulador de energia do D1 Mini. Dito isso, como meu código não ligava os LEDs totalmente, consegui programar 100 LEDs na conexão USB sem problemas.

O módulo ESP8266 possui WiFi integrado. Uma vez que o código de malha (PainlessMesh) que estamos usando cria um ponto de acesso em cada módulo, o intervalo para um alcance amplo da vizinhança é importante. Usei formatos de bengala de doce e coloquei a CPU no topo para obter o melhor alcance, e foi cerca de 50-100 pés - um ou dois metros na minha vizinhança. A linha de visão (LOS) mais alta e melhor melhora as coisas. O alcance cruzou a rua em alguns casos (dependia mais de carros bloqueando o LOS).

Algumas casas não foram sincronizadas devido a obstruções do WiFi, mas as luzes parecem boas mesmo quando não sincronizadas. Fiz um nó "repetidor" com apenas um D1 Mini em um stick alimentado por uma bateria USB. Quando colocados entre as casas, eles foram sincronizados corretamente. Para um repetidor mais remoto, você poderia usar uma bateria solar USB, embora eles não carreguem muito rápido.

Eu ainda estava vendo problemas de sincronização intermitentes, então descobri esta observação sobre ter muitos nós ou tê-los espalhados:

gitlab.com/pellenceMesh/pellenceMesh/-/wik…

Usando essa configuração, começou a funcionar muito melhor! Isso designa um nó específico como o principal, portanto, meu código para negociar o nó de controle é desnecessário, o que pode dividir a malha. Anexei um exemplo de código atualizado / alternativo. Essa abordagem requer que o nó principal esteja ativado para que sejam sincronizados, de modo que a malha não seja tão tolerante a falhas, mas funcione melhor quando espalhada da mesma forma que a minha. Certifique-se de editar o código para essa versão - apenas um nó deve ser definido como raiz - consulte os comentários no código.

Também adicionei mais uma atualização à variante SetRoot: adicionei um código para redefinir o ESP8266 se não houver comandos por 10 minutos. Isso dá ao nó a chance de redescobrir o nó raiz. Isso pareceu ajudar com alguns dos nós mais distantes.

No final da temporada, pude testar alguns módulos D1 Mini Pro. Eles têm uma antena de cerâmica na placa e você também pode usar um conector U. FL e uma antena externa se mover um resistor de zero ohm. Tentei alguns que tinham problemas de sincronização com os D1 Mini Pros com as antenas de cerâmica e funcionaram melhor. Fiz alguns testes subsequentes com um nó em minha casa. Com base nos resultados, mudaremos para os módulos D1 Mini Pro com antenas de cerâmica no próximo ano.

Com um D1 Mini remoto: Apenas o D1 Mini Pro com uma antena externa o viu, e a intensidade do sinal era baixa

Com um D1 Mini Pro remoto com antena de cerâmica: O D1 Mini, o D1 Mini Pro com antena de cerâmica e o D1 Mini Pro com uma antena externa viram-no com aproximadamente a mesma intensidade de sinal, o que foi uma melhoria. A orientação das placas (antenas) importa até certo ponto

Com um D1 Mini Pro remoto com antena externa: Todas as outras placas viram, mas a força do sinal não era muito melhor do que os testes com a antena de cerâmica integrada, então não vou me preocupar em mover aqueles resistores de zero ohm e colocar antenas no bastões de doces

Etapa 5: Montagem final

Assembléia final
Assembléia final
Assembléia final
Assembléia final
Assembléia final
Assembléia final

Depois de ter o controlador pronto e programado, tudo o que você precisa fazer é conectar os LEDs ao controlador com os fios JST e uma fonte de alimentação de 5 V no conector de 2,1 mm.

A extensão JST deve ser útil para manter o controlador e o adaptador de energia sempre longe dos LEDs. Ou, para aumentar o nível da CPU, coloquei um pequeno saco plástico sobre eles preso com um laço de torção e usei um cabo de extensão de 2,1 mm para a fonte de alimentação.

A caixa à prova d'água ajudará a proteger o adaptador e a CPU, mas a maioria dos meus vizinhos usava sacos plásticos simples.

Desafio de velocidade de decorações de Natal
Desafio de velocidade de decorações de Natal
Desafio de velocidade de decorações de Natal
Desafio de velocidade de decorações de Natal

Segundo prêmio no Desafio de Velocidade de Decorações de Natal

Recomendado: