Índice:

Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels): 6 etapas (com fotos)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels): 6 etapas (com fotos)

Vídeo: Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels): 6 etapas (com fotos)

Vídeo: Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels): 6 etapas (com fotos)
Vídeo: The simplest RGB LED 2024, Julho
Anonim
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)
Os melhores LEDs RGB para qualquer projeto (WS2812, Aka NeoPixels)

Quando trabalhamos com LEDs, geralmente gostamos de controlar seu estado (ligado / desligado), brilho e cor. Existem muitas maneiras diferentes de fazer isso, mas nenhuma é uma solução tão compacta quanto o LED RGB WS2812. Em seu pacote minúsculo de 5 mm x 5 mm, o WS2812 inclui 3 LEDs super brilhantes (vermelho, verde e azul) e um circuito de driver compacto (WS2811) que requer apenas uma entrada de dados para controlar o estado, brilho e cor dos 3 LEDs. À custa da necessidade de apenas uma linha de dados para controlar 3 LEDs, surge uma demanda por uma temporização altamente precisa na comunicação com o WS2811. Por esse motivo, um microcontrolador em tempo real (por exemplo, AVR, Arduino, PIC) é necessário. Infelizmente, um microcomputador baseado em Linux ou um microcontrolador interpretado como o Netduino ou o Basic Stamp não pode fornecer a precisão de tempo necessária. E assim, neste Instructable, passo pelo processo de configuração e controle de um desses LEDs com um Arduino Uno. Em seguida, mostro como é fácil conectar vários deles juntos para uma exibição de iluminação incrível! Nível de dificuldade: BeginnerTime para conclusão: 10-15 minutos

Etapa 1: Lista de Materiais

Lista de Materiais
Lista de Materiais

Este maravilhoso LED RGB vem em um pacote 5050 (5 mm x 5 mm) com 6 almofadas que são bastante fáceis de soldar em uma placa de breakout. Como o único componente adicional necessário é um capacitor de desacoplamento, o WS2812 oferece honestamente a melhor solução para controlar a cor e o brilho de um LED RGB. O driver de LED de corrente constante incorporado (WS2811) é notavelmente útil por dois motivos: - Uma corrente constante de ~ 18 mA acionará cada LED mesmo se a tensão variar. - Não há necessidade de adicionar resistores limitadores de corrente (também resistores de choke) entre a fonte de alimentação e os LEDs. Tudo o que precisamos é um design muito simples para fornecer energia, aterramento e 1 entrada de controle para criar uma exibição de iluminação incrível consistindo não em um, mas em toda uma gama de LEDs RGB. Isso mesmo! Ao conectar o pino Data Out de um desses LEDs ao pino Data In de outro, podemos acioná-los independentemente com a mesma entrada de controle! Se não for óbvio como fazer isso, não se preocupe, ao final deste Instructable, você estará no caminho certo para adicionar WS2812 a qualquer projeto que desejar! Para este Instrutível, aqui está o que usaremos: Materiais: 3 x LEDs RGB WS2812 (pré-soldados em uma pequena placa de ruptura) 1 x Placa de ensaio sem solda de núcleo sólido (cores variadas; 28 AWG) 1 x Arduino Uno R3 1 x Conector de pino separável, passo de 0,1 ", macho de 8 pinos (ângulo reto) 1 x conector de pino, passo de 0,1", fêmea de 8 pinos (ângulo reto) 1 x conector de pino separável, passo de 0,1 ", 8 pinos MaleTools: Decapador de fio de cabo PC USB A / B Ferro de soldaNotas: Dependendo do seu projeto, os LEDs RGB WS2812 também estão disponíveis sem uma placa de breakout por cerca de US $ 0,40 cada, mas a conveniência da opção pré-soldada é atraente para aplicações simples.

Etapa 2: conectar os cabeçalhos de pinos

Conectando os cabeçalhos de pinos
Conectando os cabeçalhos de pinos
Conectando os cabeçalhos de pinos
Conectando os cabeçalhos de pinos
Conectando os cabeçalhos de pinos
Conectando os cabeçalhos de pinos

Com todos os materiais listados na etapa anterior, é bastante simples acender um LED RGB WS2812. Primeiro, queremos preparar os Breakout Boards WS2812 para colocá-los na breadboard sem solda. Para fazer isso, usamos um cortador de fio (as ferramentas de corte mais comuns também funcionam) para separar cada tira de 8 pinos em peças de 2 x 3 pinos. Lembre-se de que fazer o corte é um pouco complicado; Muitas vezes tentei usar a ranhura entre dois cabeçalhos machos como um guia para o corte e acabei rasgando muito plástico de um cabeçalho que pretendia manter. Ao 'sacrificar' o pino onde queremos fazer o corte, evitamos o problema completamente. Usando um alicate, retiramos o pino onde queremos cortar (neste caso, o 4º e o 8º pinos). Depois que os pinos forem removidos, podemos cortar facilmente o meio dos cabeçalhos agora vazios. Essa técnica funciona igualmente bem com o cabeçalho feminino. Após erguer e cortar, devemos ter 6 cabeçotes de 3 pinos, ou seja, 2 x padrão e 4 x ângulo reto (2 x macho, 2 x fêmea). Com a ajuda de um ferro de soldar, podemos agora conectar os pinos a cada uma das três placas de quebra da seguinte maneira. Uma placa deve ter 2 x cabeçalhos padrão, enquanto as outras duas placas devem ter, cada uma, 1 x cabeçalhos de ângulo reto. Na placa que terá os conectores de pino padrão, colocamos os pinos na superfície inferior da placa (o lado oposto de onde está o LED). Nos outros dois, os cabeçalhos em ângulo reto (um de cada gênero) podem ser colocados na superfície superior ou inferior. Observe que é importante ser consistente, de uma placa para a outra, na colocação dos cabeçalhos masculino e feminino. É útil usar o capacitor de montagem em superfície para orientar as placas; usando isso como referência, o conector macho deve ser soldado na extremidade mais próxima do capacitor. Assim que os pinos forem soldados, estamos prontos para conectar um deles ao Arduino!

Etapa 3: Conectando a placa de interrupção WS2812 a um Arduino

Conectando a Placa Breakout WS2812 a um Arduino
Conectando a Placa Breakout WS2812 a um Arduino
Conectando a Placa Breakout WS2812 a um Arduino
Conectando a Placa Breakout WS2812 a um Arduino
Conectando a Placa Breakout WS2812 a um Arduino
Conectando a Placa Breakout WS2812 a um Arduino

Nesta etapa, faremos as conexões necessárias entre um Arduino e um de nossos Breakout Boards WS2812. Para este propósito, usaremos a placa de ensaio sem solda e 3 fios de jumper. Se você estiver usando um carretel de arame, agora é a hora de cortar 3 pedaços, cada um com cerca de 4 de comprimento. Agora podemos colocar a placa de quebra WS2812 (aquela com cabeçalhos padrão) em toda a divisória de nossa placa de ensaio. Certificando-se que o Arduino está desconectado de uma fonte de alimentação e USB, continuaremos a conectar as conexões. Na parte inferior da placa de breakout WS2812 podemos encontrar o nome de cada pino: VCC, DI (DO), GND. Usando como guia, conectamos os pinos 5V e GND do Arduino aos pinos VCC e GND da placa WS2812, respectivamente. Em seguida, conectamos o pino 8 do lado digital do Arduino ao pino DI da placa WS2812, que é o pino central do lado mais próximo do capacitor. Agora estamos prontos para carregar nosso programa no Arduino e fazer o WS2812 piscar!

Etapa 4: Fazendo tudo piscar com o IDE do Arduino

Fazendo tudo piscar com o IDE do Arduino
Fazendo tudo piscar com o IDE do Arduino
Fazendo tudo piscar com o IDE do Arduino
Fazendo tudo piscar com o IDE do Arduino

Presumo que você já instalou o IDE do Arduino em seu computador --- muitos guias na web explicam o processo muito bem. O programa que precisaremos carregar em nosso Arduino pode ser baixado aqui. Depois, podemos simplesmente clicar duas vezes no arquivo primer.ino dentro da pasta firmware> examples> primer para carregá-lo no IDE do Arduino (wirtten para a versão 1.0.5). O pacote inclui as bibliotecas necessárias para que o código seja compilado, então não deve haver nenhum erro, por favor, poste um comentário se você encontrar qualquer problema de compilação. Após selecionar o tipo de placa Arduino e a porta USB usando a opção de menu Ferramentas, faça o upload do código e o WS2812 deve começar a piscar alternando entre Vermelho, Verde e Azul. O recurso mais interessante sobre esses LEDs RGB WS2812 é que eles podem ser 'encadeados' com bastante facilidade para criar longas tiras e matrizes contendo muitos desses LEDs. Na próxima etapa, faremos exatamente isso com as 3 placas que preparamos.

Etapa 5: fazer uma faixa de LEDs RGB

Fazendo uma faixa de LEDs RGB
Fazendo uma faixa de LEDs RGB
Fazendo uma faixa de LEDs RGB
Fazendo uma faixa de LEDs RGB

O circuito de driver de LED embutido (WS2811) permite o 'encadeamento' de um LED para o próximo usando apenas 1 linha de dados (!). Conectando a saída de dados de um WS2812 à entrada de dados de outro, podemos controlar o brilho e a cor de todo um conjunto de LEDs, até 500 deles em um Arduino! Obviamente, para acionar muitos LEDs, algumas considerações são necessárias: - Cada pixel consome até 60mA (o branco com brilho total requer que todos os LEDs estejam ligados, cada um desenhando ~ 20mA). - Um Arduino atingirá o máximo de sua RAM acionando 500 LEDs a uma taxa de atualização de 30 Hz. - Para conectar duas placas, a separação máxima recomendada é 6 "para evitar quedas de energia e corrupção de dados. Com essas considerações em mente, podemos acionar todos os LEDs usando resolução de cor de 24 bits, em níveis de brilho consistentes, e bastante resiliente a mudanças nas (pequenas) mudanças de energia da bateria. Para 'encadear' as placas que preparamos para este Instructable, começamos conectando a extremidade fêmea de uma à extremidade macho da outra das duas placas com o cabeçalhos angulares. Em seguida, com nossa placa Arduino desconectada da alimentação e USB, colocamos a extremidade macho da corrente de duas placas na placa de ensaio sem solda. Asseguramos que os pinos se alinhem com os da placa de ruptura WS2812 que foi conectada à placa de ensaio já. Esse alinhamento terá os pinos VCC e GND da placa de cabeçalho reto e da cadeia na mesma linha da placa de ensaio. Colocamos a cadeia de duas placas perto do final da terceira placa de quebra que é oposta ao capacitor. UMA Depois que tudo estiver conectado, podemos iniciar o Arduino IDE e usar o Editor de Texto para alterar a definição "#define NUM_LEDS 1" para "#define NUM_LEDS 3". Depois de conectar a placa de volta à alimentação e / ou USB, podemos fazer o upload do novo programa … e … BAM! Todos os três LEDs devem piscar assim!

Passo 6: Nas Trevas, Haja Luz

Na escuridão, deixe haver luz!
Na escuridão, deixe haver luz!
Na escuridão, deixe haver luz!
Na escuridão, deixe haver luz!

Este Instructable mostrou rapidamente como usar o LED RGB WS2812 pré-soldado em pequenas placas de breakout. Usamos um Arduino para controlar o brilho e a cor dos LEDs. Uma coisa que foi um pouco decepcionante é que o código que usamos fez todos os LEDs piscarem ao mesmo tempo, com a mesma intensidade e cor. Este modo de operação não exibe todo o potencial do driver de LED 'inteligente' (WS2811) que está embutido neste pacote. E então, vamos tentar as seguintes modificações no código original. Como antes, você fará o download e descompactará o arquivo e, em seguida, abrirá o firmware a ser carregado no Arduino (firmware> efeitos> efeitos.ino). Todos os arquivos necessários para este demo estão incluídos, então não há necessidade de adicionar bibliotecas de terceiros; o código deve ser compilado sem nenhuma modificação --- ele já está configurado para lidar com os 3 LEDs. Agora fica por conta da sua imaginação conceber o próximo projeto onde esses LEDs RGB muito úteis e compactos possam brilhar. Sinta-se à vontade para postar algumas de suas próprias criações usando o WS2812 na seção de comentários!

Recomendado: