Lâmpada Neoboard - Sem necessidade de SD e impressão em 3D: 3 etapas (com imagens)
Lâmpada Neoboard - Sem necessidade de SD e impressão em 3D: 3 etapas (com imagens)
Anonim
Lâmpada Neoboard - Sem SD necessário e 3D impresso
Lâmpada Neoboard - Sem SD necessário e 3D impresso

Por dmtinkdevFollow Mais do autor:

Lâmpada de minério do Minecraft - tamanho personalizável e densidade de pixels
Lâmpada de minério do Minecraft - tamanho personalizável e densidade de pixels
Lâmpada de minério do Minecraft - tamanho personalizável e densidade de pixels
Lâmpada de minério do Minecraft - tamanho personalizável e densidade de pixels

Projetos Fusion 360 »

Depois de construir uma lâmpada do Minecraft para meu filho de 7 anos, seu irmão mais novo queria algo semelhante. Ele gosta mais de SuperMario do que de Minecraft, então sua luz noturna mostrará sprites de videogame.

Este projeto é baseado no projeto The Neoboard, mas as peças podem ser impressas em 3D e o arduino não precisa de um cartão SD para ler as imagens (elas podem ser armazenadas na memória flash).

Suprimentos

  • 1 placa arduino (Uno ou Nano são adequados)
  • 2x filamento (preto para o corpo principal e transparente para os difusores). Mesmo se você quiser uma cor diferente para o seu estande, você ainda precisará de filamento preto para a parte dos separadores de leds. Eu usei PLA.
  • 1 botão de pressão
  • 1 resistor de 300-500 ohms (para o pino de entrada de dados da tira)
  • 1x capacitor de 1000 µF (para proteger a tira de mudanças repentinas no corrent)
  • 1 painel de matriz 16x16 leds
  • Materiais típicos do fabricante (cola, fios duplos, conectores auto-soldáveis, parafusos M4, etc)

Etapa 1: Baixe o código e processe suas imagens

Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens
Baixe o código e processe suas imagens

Você pode obter o código do repositório GitHub.

Já existem perfis Platformio para as placas Arduino Uno e Nano internas.

Para processar as imagens, usaremos o Processing (tanto a GUI quanto a cli-tool funcionarão). O código de processamento lerá uma imagem 16x16 e converterá todas as cores de pixels em uma matriz uint8 classificada como normalmente as matrizes de led são conectadas.

Em 99% dos casos, para processar corretamente suas imagens, você só precisa:

  1. Altere o valor para as variáveis inputFilename e outputFilename
  2. Copie o conteúdo do arquivo outputFilename e cole-o em /src/sprites.h

Dentro do código do Arduino, você também precisará alterar

  • Os valores para LEDS_PIN, BUTTON_PIN e TOTAL_SPRITES
  • Talvez o tipo led no construtor de faixa … mas não deve ser comum
  • E o 'switch' dentro da função changeSprite () para mostrar todas as suas imagens

Como você pode ver na declaração dos arrays, estamos usando a palavra-chave PROGMEM para armazenar os dados em flash em vez de SDRAM. Dessa forma, não precisamos de um SDCard para armazenar as informações de cores das imagens.

Como você pode ver na imagem acima, armazenar o código e 10 imagens SuperMario precisa apenas de cerca de 11kbytes, então há muito espaço para mais imagens (e ainda mais se você usar uma placa MEGA2650).

Etapa 2: imprimir todas as peças

Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças
Imprimir todas as peças

Eu projetei as peças usando Fusion360. Você pode baixá-los em:

Ou se você quiser apenas os arquivos STL, eles estão disponíveis no Thingiverse:

A capa traseira é fácil de imprimir e o suporte precisa apenas de suportes (mas dependendo de como você o posiciona, você precisará de mais suportes ou uma combinação de impressora / filamento capaz de imprimir grandes pontes).

Para o difusor, originalmente pensei que usar uma folha revestida lisa e o padrão de curva de Hilbert daria os melhores resultados, mas testei diferentes combinações de camadas, resolução, folhas e padrões e obtive os melhores resultados usando o PLA transparente filamento da BQ com estas configurações:

  • folha: folha revestida a pó
  • camadas: 3
  • resolução: 0,2
  • padrão: retilíneo

Mas, dependendo do seu filamento, do fabricante dos leds da sua matriz, da distância do difusor ao led e se houver separação total entre os leds seus resultados podem variar. Não me pergunte por que me tornei um especialista neste micro-nicho:)

Usei a opção PrusaSlicer para alterar manualmente a cor durante uma impressão para alternar entre os filamentos transparentes e pretos, então tenho o difusor e o separador de led em uma parte (não há necessidade de colá-los).

Etapa 3: conecte tudo

Conecte tudo
Conecte tudo
Conecte tudo
Conecte tudo
Conecte tudo
Conecte tudo

Conectar todas as partes não poderia ser mais fácil: alimente a placa e a matriz de led com um cabo USB 5V, e conecte o botão e a entrada de faixa às portas designadas da placa.

Lembre-se que para não danificar a matriz, é recomendável adicionar um capacitor e um resistor em sua conexão.

Se tudo for feito corretamente, você verá um pinguim feliz em sua matriz:)

Para verificar se tudo funciona bem:

  • A imagem deve ter um fundo preto gradiente azul
  • Os cantos têm setas verdes
  • A seta do canto inferior esquerdo foi estendida com 2 pixels vermelhos