Índice:

Luz noturna de neopixel: 14 etapas (com fotos)
Luz noturna de neopixel: 14 etapas (com fotos)

Vídeo: Luz noturna de neopixel: 14 etapas (com fotos)

Vídeo: Luz noturna de neopixel: 14 etapas (com fotos)
Vídeo: Behind Courtney Dauwalter & Francois D'haene's Ultra-Trail Races at Hardrock 100 and UTMB 2024, Novembro
Anonim
Neopixel Night Light
Neopixel Night Light

Por joshua.brooksFollow Mais do autor:

Conector de programação de pinos Pogo
Conector de programação de pinos Pogo
Conector de programação de pinos Pogo
Conector de programação de pinos Pogo
Escultura Zoetrope Portátil
Escultura Zoetrope Portátil
Escultura Zoetrope Portátil
Escultura Zoetrope Portátil
Relógio NeoPixel de mesa
Relógio NeoPixel de mesa
Relógio NeoPixel de mesa
Relógio NeoPixel de mesa

Vou dar alguns workshops de eletrônica em algumas semanas, centrados em um projeto do mundo real barato, mas útil. Ao tentar inventar algo para fazer, eu queria que envolvesse um microcontrolador, LEDs NeoPixel (porque eles são incríveis), que fosse controlável remotamente e permitisse diferentes opções de construção. Ele também precisava ser totalmente simulável no Tinkercad. Este é o projeto que evoluiu.

Ele contém alguns recursos muito interessantes em um pequeno dispositivo, é personalizável e bastante simples de construir.

Lista de peças:

  • Placa de circuito impresso (OSHPARK)
  • Anel NeoPixel 12 (Adafruit)
  • Microcontrolador ATtiny85 (DigiKey)
  • Fio de núcleo sólido de calibre 22 (DigiKey, Amazon, Radio Shack, etc.)
  • (opcional) Receptor infravermelho (DigiKey)
  • (opcional, mas altamente recomendado) Capacitor eletrolítico de 1μF (DigiKey)
  • (opcional) Botão (Jameco)
  • (opcional) 2 x cabeçote macho de 3 pinos (DigiKey)
  • (opcional) 2 x shunt jumper (DigiKey)
  • (opcional) Soquete DIP de 8 pinos (DigiKey)
  • (opcional) Cabeçalho de ângulo reto de 4 pinos (DigiKey)
  • (opcional) Controle remoto IR (Amazon)
  • Gorilla Tape (Amazon)
  • Fonte de alimentação de parede USB (Amazon)

Lista de ferramentas:

  • Ferro de solda e solda
  • Cortador de arame
  • Descascador de fios
  • Alicate
  • Tesoura

Etapa 1: Design e simulação

Como mencionei anteriormente, eu queria usar o Tinkercad gratuito para este projeto. Decidi projetar totalmente e testá-lo antes de tocar em qualquer eletrônica real. Isso me permitiu ter certeza de que tudo (incluindo o firmware ATtiny85) funcionaria. Aqui está aquele circuito virtual. Você pode pressionar "Iniciar Simulação" abaixo para experimentar.

Etapa 2: As peças necessárias

As peças necessárias
As peças necessárias

Este projeto foi concebido para permitir flexibilidade na forma como é construído. Portanto, dependendo do que você deseja fazer com ele, pode não ser necessário todas as peças. Existem três partes (e fio) que são absolutamente necessárias. É possível construir algo funcional apenas com isso.

Neopixel Ring 12 - o anel tem doze NeoPixels que podem ser controlados individualmente para ter praticamente qualquer cor.

ATtiny85 - é o microcontrolador (minúsculo computador) que faz os NeoPixels dançarem e faz interface com vários dos componentes opcionais (receptor infravermelho, botão de pressão, etc.).

Placa de circuito impresso - a placa de circuito impresso (PCB) fornece todas as conexões elétricas entre as peças usadas e é a espinha dorsal rígida do dispositivo. O arquivo gerber compactado que é enviado a um fabricante de PCB está nesta página. Existem muitos fabricantes de placas por aí. Aqui está o link para solicitar a placa da OSHPARK.

Fio de núcleo sólido de calibre 22 - o fio é usado para conectar o anel NeoPixel ao PCB.

Etapa 3: as peças opcionais

As peças opcionais
As peças opcionais

Existem várias partes opcionais que você pode considerar incluir. Veja por que você pode querer eles.

Receptor infravermelho - o receptor infravermelho é um único componente que permite que o dispositivo seja controlado por um controle remoto infravermelho de mão padrão (pense no controle remoto da TV). Controladores remotos de diferentes fabricantes emitem sinais diferentes, portanto, pode ser necessário modificar o firmware para reconhecer seu controle remoto, caso não seja um dos que usei.

Capacitor eletrolítico de 1μF - o capacitor atua como uma espécie de bateria temporária que pode fornecer energia adicional quando a corrente elétrica necessária no dispositivo muda abruptamente (os NeoPixels passam de desligados para totalmente ligados, por exemplo). Ele também pode equilibrar a tensão do dispositivo ao usar uma fonte de alimentação USB barata. Se você estiver usando uma fonte de alimentação USB decente, ela pode ser deixada de fora.

Botão - o botão permite que você controle o dispositivo (adivinhe?) Pressionando o botão.

Conector (es) macho (s) de 3 pinos e jumper (s) de shunt - podem ser colocados no lugar em vez do botão de pressão para permitir que o dispositivo seja configurado, com base em como os jumpers de shunt estão posicionados. O conector macho de 3 pinos fica permanentemente conectado (soldado) à placa e o jumper de shunt é encaixado sob pressão no conector e pode ser facilmente removido e reposicionado. Se um cabeçalho for usado, o jumper pode selecionar entre dois modos diferentes. Se ambos os cabeçalhos forem usados, quatro modos são possíveis.

Soquete DIP de 8 pinos - o soquete permite que o microcontrolador (ATtiny85) seja removido e recolocado para que possa ser reprogramado posteriormente se você quiser alterar o funcionamento do dispositivo. Se você sabe que nunca precisará reprogramar o microcontrolador, isso não é necessário.

Conector de ângulo reto de 4 pinos - o conector de ângulo reto é usado se você deseja que o conector USB fique na parte de trás do dispositivo, em vez de na lateral.

Etapa 4: programe o microcontrolador

Não vou entrar em muitos detalhes sobre a programação do microcontrolador, porque as instruções são facilmente encontradas em outro lugar (incluo um link abaixo). Usei uma placa Arduino UNO para atuar como um dispositivo de programação para o controlador usando o método descrito neste Instructable. Nele, ele mostra o seguinte mapeamento de pinos Arduino para pinos ATtiny para programação:

  • Arduino + 5V → ATtiny Pin 8
  • Arduino Ground → ATtiny Pin 4
  • Arduino Pin 10 → ATtiny Pin 1
  • Arduino Pin 11 → ATtiny Pin 5
  • Arduino Pin 12 → ATtiny Pin 6
  • Arduino Pin 13 → ATtiny Pin 7

O código-fonte da luz noturna pode ser encontrado aqui (https://github.com/cacklestein/led-night-light).

Etapa 5: montar a placa (etapa inicial opcional)

Monte a placa (etapa inicial opcional)
Monte a placa (etapa inicial opcional)
Monte a placa (etapa inicial opcional)
Monte a placa (etapa inicial opcional)
Monte a placa (etapa inicial opcional)
Monte a placa (etapa inicial opcional)

As peças devem ser adicionadas ao quadro em uma ordem específica para facilitar as coisas. Se estiver satisfeito com a posição do conector USB na placa, você pode pular o resto desta etapa e passar para a próxima parte da montagem. No entanto, se você deseja que o conector fique para fora da placa, agora é a hora de adicionar o cabeçalho de ângulo reto.

Comece retirando cuidadosamente o conector USB do resto da placa de circuito impresso. Segure a maior parte do tabuleiro com uma mão e use um alicate com uma borda diretamente ao lado da linha de perfuração de pequenos orifícios para remover a guia com cuidado. Coloque a guia de lado. você precisará disso em uma etapa posterior.

Posicione o cabeçalho em ângulo reto na parte de trás da placa, conforme mostrado na imagem. A parte de trás da placa é o lado com "123D CIRCUITS" serigrafado (ou talvez eu deva dizer "123D CIRC", porque você acabou de interromper os "UITS").

Solde o cabeçalho no lugar, aplicando solda na parte superior da placa.

Usando um bom cortador de fio, corte as pontas do coletor que se projetam da parte superior da placa o mais próximo possível da placa. Isso é importante porque esses cabos estão doentios em algum lugar no centro de onde o ATtiny85 irá eventualmente.

Etapa 6: adicionar o soquete do microcontrolador

Adicione o soquete do microcontrolador
Adicione o soquete do microcontrolador
Adicione o soquete do microcontrolador
Adicione o soquete do microcontrolador
Adicione o soquete do microcontrolador
Adicione o soquete do microcontrolador

Agora é a hora de soldar o soquete DIP de 8 pinos -OU- o ATtiny85 no lugar. Eu recomendo fortemente o uso do soquete, porque permite que o ATtiny85 seja facilmente removido e recolocado caso você queira fazer alterações no programa posteriormente. Monte o soquete (ou o ATtiny85 com o pino 1 mais próximo da borda da placa) através dos 8 orifícios correspondentes na parte superior da placa. O lado superior é aquele sem "Circuitos 123D" impresso nele. Vire a placa e coloque-a plana sobre a mesa ou outro espaço de trabalho para segurar o soquete no lugar. Solde os pinos na placa. Se você adicionou o cabeçalho de ângulo reto de 4 pinos na etapa anterior, esses pinos ficarão um pouco no caminho. Incline o ferro para soldar sob eles.

Etapa 7: Adicionar mais coisas

Adicione mais coisas!
Adicione mais coisas!
Adicione mais coisas!
Adicione mais coisas!
Adicione mais coisas!
Adicione mais coisas!

Agora é a hora de adicionar o (s) botão (ões) ou jumper, o receptor IR e o capacitor.

Se você quiser o botão, insira os 4 pinos nos orifícios abaixo do soquete do microcontrolador na parte superior da placa. Você notará que existem 6 buracos. Não se preocupe com isso. Os dois orifícios no meio não serão usados. Vire a placa e solde o botão de pressão no lugar.

Se você quiser usar os jumpers shunt, insira os dois cabeçotes de 3 pinos (lado mais curto dos pinos para baixo) nesses orifícios no lado superior. Novamente, vire a placa e solde os pinos no lugar.

Em seguida, encaixe o receptor infravermelho nos 3 orifícios na parte superior da placa. Combine a orientação com o contorno da serigrafia. insira-o o máximo que puder e dobre-o para trás de modo que o lado da pequena bolha fique voltado para cima e longe da placa. Vire a placa e solde-a no lugar. Use um alicate para remover o excesso de comprimento dos pinos do lado inferior após a soldagem.

Finalmente, adicione o capacitor. Seus pinos se encaixam nos dois orifícios restantes acima do receptor infravermelho. A faixa branca na lateral do capacitor ('-' lado negativo) fica voltada para o soquete ATtiny85. Novamente, vire a placa, solde os terminais no lugar e corte o excesso com um alicate.

Etapa 8: adicione o anel NeoPixel

Adicione o anel NeoPixel
Adicione o anel NeoPixel
Adicione o anel NeoPixel
Adicione o anel NeoPixel
Adicione o anel NeoPixel
Adicione o anel NeoPixel

O anel NeoPixel é conectado usando 4 pedaços de fio de núcleo sólido de calibre 22, com o isolamento removido. Comece cortando uma seção de fio de pelo menos 4 polegadas de comprimento. Use descascadores de fios para remover TODO o isolamento.

Corte este fio em 4 comprimentos iguais. Dobre cada fio em forma de "L" cerca de 1/4 de polegada de uma extremidade.

Com o lado inferior da placa voltado para cima, insira esses fios nos orifícios nos 4 cantos da placa. A seção dobrada evitará que deslizem completamente. Solde-os no lugar e corte o excesso dobrado do lado inferior com um alicate.

Vire a placa e alimente cuidadosamente os fios através dos 4 orifícios do anel NeoPixel com os NeoPixels voltados para fora da placa de circuito. Tenha o cuidado de combinar os orifícios do anel NeoPixel com os da placa de circuito. Os nomes dos furos estão impressos em cada um. Combine PWR, GND, IN e OUT.

Empurre o anel para baixo o mais próximo possível da placa de circuito. As coisas podem estar um pouco apertadas, especialmente em torno do capacitor e do sensor de infravermelho. Se o anel não descer completamente, não se preocupe.

Segurando o anel o mais próximo possível da placa de circuito, dobre os fios para manter as coisas no lugar.

Solde o anel aos fios e corte o excesso de fio com um alicate.

Etapa 9: adicionar a guia do conector USB (etapa opcional)

Adicione a guia do conector USB (etapa opcional)
Adicione a guia do conector USB (etapa opcional)
Adicione a guia do conector USB (etapa opcional)
Adicione a guia do conector USB (etapa opcional)

Se você optou por colocar o conector USB diretamente na parte traseira, agora é a hora de conectá-lo ao conector de ângulo reto de 4 pinos que você adicionou anteriormente.

Encaixe os orifícios da guia que você removeu anteriormente no cabeçalho de ângulo reto de modo que os 4 contatos USB de cobre fiquem voltados para o lado "CIRC" da placa e o lado "UITS" da guia fique voltado para o lado "123D".

Solde isso no lugar.

Etapa 10: adicione o ATtiny85

Adicione o ATtiny85
Adicione o ATtiny85

Se você soldou o soquete DIP de 8 pinos no lugar, agora é a hora de colocar o ATtiny85 nele.

Alinhe o ATtiny85 de forma que o canto com o ponto fique mais próximo do ponto branco na placa de circuito. Pressione cuidadosamente o ATtiny85 no lugar, certificando-se de que todos os pinos fiquem onde deveriam.

Etapa 11: engrosse o conector USB

Engrossar o conector USB
Engrossar o conector USB

Normalmente, as placas de circuito impresso que você obtém são um pouco mais finas do que o esperado de um conector USB. Uma solução simples para isso é cortar um pequeno quadrado de fita Gorilla e adicioná-lo à parte traseira do conector USB (o lado sem os contatos de cobre USB!). Gorilla Tape tem cerca de duas vezes mais espessura do que a fita adesiva normal e funcionou perfeitamente para mim.

Etapa 12: experimente

Experimente
Experimente
Experimente
Experimente
Experimente
Experimente
Experimente
Experimente

Conecte sua nova luz noturna a um adaptador de parede USB com alimentação ou outra tomada USB disponível (no computador, etc.). Se tudo correr bem, deve acender! Se você adicionou o receptor IR opcional e tem um controle remoto que funciona com o firmware (como o controle remoto da Apple TV nas fotos), pode alterar o modo de exibição.

Como alternativa, se você instalou o botão, pode pressioná-lo para alterar os modos.

Se, em vez disso, você instalou os jumpers shunt, então os jumpers shunt podem ser posicionados para alterar o modo de exibição de inicialização.

Etapa 13: Configurações de shunt de jumpers

Configurações de shunt de jumpers
Configurações de shunt de jumpers

Se você optou por instalar os jumpers shunt, então você pode definir o modo de inicialização, com base em onde os jumpers shunt estão posicionados:

Posição esquerda A + posição direita A: modo de rotação do arco-íris

Posição esquerda B + posição direita A: Modo de mudança de cor

Posição esquerda A + posição direita B: modo de brilho aleatório

Posição esquerda B + posição direita B Modo de cor sólida inalterável

Etapa 14: usando um controle remoto

Usando um controle remoto
Usando um controle remoto
Usando um controle remoto
Usando um controle remoto

Eu encontrei um controle remoto barato no EBay que foi projetado para funcionar com iluminação LED colorida. Parecia um ajuste natural. Eu gravei os códigos gerados por cada botão e configurei o firmware para agir de acordo. A imagem acima indica o que os diferentes botões fazem.

Se você não tiver esse controle remoto, poderá encontrar os códigos associados à maioria dos outros controles remotos usando exatamente o mesmo código-fonte do Arduino, mas em um Arduino real, em vez do ATtiny85. O programa produz um código associado a qualquer pressionamento de botão da maioria dos controles remotos no console serial. Para fazer isso, conecte o módulo receptor de infravermelho nos slots de cabeçalho de pino digital 2, 3 e 4, com a lente voltada para o resto da placa.

Na imagem acima, o código 0xFD00FF corresponde ao botão liga / desliga remoto IR do DFRobot. Aqui está o código em execução no Tinkercad. Para experimentá-lo, clique em "Código", seguido de "Monitor serial", seguido de "Iniciar simulação". Nesse ponto, você pode começar a pressionar os botões no controle remoto virtual para ver a saída de texto do console serial:

Registre-os para cada botão do controle remoto. Você pode então modificar o código-fonte para adicionar os códigos de botão para seu controle remoto.

Recomendado: