» Eletrônicos » Arduino »Matriz Led no WS2812

Matriz Led em WS2812

Matriz Led em WS2812

Boa tarde, quero compartilhar outra caseiro. Desta vez, decidi escrever instruções para a fabricação da matriz Led. O tamanho é pequeno diodo 10x10. Mas de acordo com esta instrução, é possível fazer matrizes e tamanhos grandes. Para a beleza acrescentou luz de fundo. A base foi tomada pelos LEDs endereçáveis ​​WS2812 montados em uma fita a 60 diodos por metro. Vamos gerenciá-los através Arduino Pro Mini. Existem muitas opções para usar a matriz. Por exemplo, adicionei um sensor de temperatura e escrevi o firmware do relógio sem o RTC.

Vamos precisar de:
- Fita WS2812 com 120 LEDs, 60 peças por metro
-
- Fonte de alimentação para 5V 1A
- sensor de temperatura ds18b20
- Resistor 4,7 Kom 0,25 W
- aglomerado com 10 mm de espessura
- Plástico fosco ou "leite"
- Cartão grosso
- fita isolante
- fios de conexão
- placa de circuito
- Botões
- Parafusos autorroscantes 19 mm
- ferro de soldar
- Solda, resina
- Fita dupla face
- USB-TTL
- Broca ou chave de fenda
- Serra de traste elétrica
- Brocas para madeira

Etapa 1 Preparação de diodos
Pegamos um papelão denso e o "forramos", ou seja, traçamos linhas horizontais com uma distância entre elas de 16 mm. Contamos 100 diodos da nossa fita. Esses 100 diodos entram no modo de segmentos de 10 diodos. Os 20 restantes são cortados em um diodo. Isso deve ser feito com cuidado e rigor ao longo das linhas de corte. Deixe-me explicar: são necessários 10 segmentos de 10 diodos no total 100 para a matriz, e os 20 restantes são iluminados. Seções de 10 diodos são coladas no papelão ao longo das linhas. Preste atenção à direção do sinal de controle dos diodos! O sinal de controle deve ser fornecido na direção correta; para isso, a seta é mostrada na direção da fita. Cole a primeira faixa da esquerda para a direita, ou seja, IN (entrada) na fita deve estar à esquerda e OUT (à direita). Assim, a entrada (IN) da primeira faixa deve estar no canto superior esquerdo! Cole a próxima tira pelo contrário, da direita - para a esquerda. O terceiro novamente da esquerda para a direita. Tão mais longe. Ao seguir a direção do sinal de controle, devemos obter uma linha em zigue-zague, começando no canto superior esquerdo. O principal é não confundir nada.

Entre a primeira e a segunda faixa, mais perto do início, faz um orifício para os fios. Solde os fios à primeira tira, de preferência multicolorida, para não confundir. Nós os passamos pelo buraco feito. Em seguida, solde nossas listras com fios curtos. + 5 da primeira cavidade para +5 na segunda. GND para GND. Do OUT da primeira faixa para IN da segunda faixa, do OUT da segunda faixa para IN do terceiro e assim por diante. O resultado deve ser o seguinte:


Etapa 2 Fazendo o caso.
O caso consiste em três partes. Primeiro, você precisa cortar o quadro de 10 mm de espessura. É melhor cortar com um quebra-cabeças, mas, na ausência, pode ser tomado manualmente. O lado do quadrado externo é de 190 mm.Interno - 170 mm. Para a beleza, é melhor dobrar as esquinas. Deste modo, deve ser obtida uma moldura com um tamanho de 190 x 190 mm e uma espessura de parede de 10 mm. Após o corte, limpamos com lixa fina.


Prosseguimos com a fabricação da segunda peça. Fixamos nossa moldura na folha de aglomerado e desenhamos um lápis em torno da borda externa. Nós removemos o quadro. Recuamos 30 mm de cada lado para dentro do quadrado e desenhamos um quadrado interno. Você deve obter outro quadro medindo 190 x 190, mas com uma espessura lateral de 30 mm. A uma distância de 5 mm da borda externa desse quadro, e a uma distância igual uma da outra, fazemos furos com um diâmetro de 3 mm. 2 furos de cada lado. Eles são necessários para parafusos. Você também precisa decidir onde estará a parte superior e, no canto superior esquerdo do quadrado interno, faça um slot para os fios.


No verso do segundo quadro, ao longo do perímetro do lado interno, é necessário aparafusar segmentos do mesmo cartão de 10 mm de espessura. O resultado deve ficar assim:


Vá para a montagem. Colocamos o segundo quadro na mesa. Topo, diodos, coloque uma caixa de papelão com diodos. E cobrimos tudo com o primeiro quadro. Coloque o papelão entre os quadros para que os diodos fiquem paralelos aos lados do quadro e a uma distância igual das bordas. Viramos tudo com muito cuidado para não derrubar os diodos e torcer tudo juntos. Depois disso, cortamos o excesso de papelão.


Vá para a luz de fundo. No lado dos diodos, entre a penúltima e a última faixa, mais perto da borda esquerda, você precisa fazer um furo para os fios. Solde os fios até o final da última tira e passe esses fios pelo orifício. Os restantes e cortados, um de cada vez, 20 diodos devem ser colados no verso, a uma distância igual um do outro. 5 peças de cada lado. A direção do sinal de controle é o ponteiro das horas, começando no canto inferior direito. Nós os soldamos, assim como a matriz. Os fios derivados do final da matriz são soldados ao primeiro diodo. + 5 do primeiro diodo a +5 do segundo. GND para GND. Do OUT do primeiro diodo para IN do segundo, do OUT do segundo para IN do terceiro, e assim por diante.

Colocamos nosso Arduino Pro Mini dentro da estrutura traseira, atrás da matriz. Para energia, use uma fonte de alimentação estabilizada de 5 volts. Com uma força atual de pelo menos 1 Ampere. Os diodos são bastante vorazes e se você planeja ligá-los imediatamente e por um longo tempo, a fonte de alimentação é necessária com mais potência, recomendo 1,5-2 amperes. Conectamos tudo isso da fonte de alimentação +5 ao +5 Arduino e +5 WS2812. -5 fonte de alimentação com GND Arduino e GND WS2812. O fio de controle do IN WS2812 está conectado ao "pino 6" do Arduino.


Os diodos são muito brilhantes e não parecem muito esteticamente agradáveis. Portanto, é necessário fabricar e instalar um difusor. O plástico fosco é mais adequado para isso ou como é chamado de "leite". É necessário anexar a matriz ao plástico e circular com um lápis. Em seguida, corte e prenda com fita dupla face no quadro frontal. Nem sempre é possível encontrar esse plástico rapidamente, mas eu realmente quero iniciar o produto. Nesse caso, você pode usar papel branco ou papel de paisagem em vez de plástico.


Pelo mesmo princípio, é possível fazer uma matriz de tamanhos grandes. Só é necessário recontar as dimensões do caso.

Etapa 3 Conecte o sensor de temperatura.
Como esse relógio não é interessante, adicione um sensor de temperatura. Para medir a temperatura, usaremos o sensor integrado DS18B20. Possui uma alta precisão de medição, o erro não é superior a 0,5 ° C. Já de fábrica, o sensor é calibrado e nenhuma configuração adicional é necessária. Ampla faixa de medição de temperatura -55 ... + 125 ° C. Pode ser usado em qualquer sala. Se estiver na rua, você precisará cuidar da proteção contra a umidade. Existem dois modos de operação: com uma fonte de energia externa e "energia espúria". Eu recomendo usar com energia externa.


Vários sensores podem ser incluídos em uma linha de comunicação. Mas para nós, basta. +5 tomamos da fonte de alimentação. GND a -5. Conecte o pino "DQ" ds18b20 ao "pino 9" Arduino.Lembre-se de colocar um resistor de pull-up entre “DQ” e +5 a 4,7 kOhm. Na minha opinião, é mais conveniente fazer isso no próprio sensor. Exibimos no canto superior direito:


Etapa 4 Preparando uma placa com botões.
Nesse caso, usamos a matriz como um relógio. O tempo pode ser definido usando a porta serial, conectando o Arduino ao computador. Isso nem sempre é conveniente. Portanto, fabricaremos uma placa com três botões para definir o tempo. Além disso, a matriz pode ser usada para outros fins, basta escrever outro esboço. Em seguida, os botões podem ser usados ​​para outros fins.


Nós os conectamos da seguinte forma: conecte o fio comum aos três botões ao Arduino “GND”. O primeiro botão, serve para entrar no modo de ajuste da hora e alternar entre hora e data, conectar ao "Pino 2". O segundo, o botão para aumentar o valor, é o "Pino 3" e o terceiro, o botão para diminuir o valor, é o "Pino 4". Anexamos os botões à fita dupla face atrás da matriz:


Etapa 5 Firmware.
Como eu disse, a matriz pode ser usada para diferentes propósitos. Atualmente, escrevi um esboço apenas para relógios. No layout posterior e outros esboços. Para escrever e preencher, eu uso o Arduino IDE 1.8.5. Você pode controlar a matriz de várias maneiras. Controle cada diodo individualmente ou como uma única matriz. No meu esboço, uso a primeira opção. Para fazer isso, você precisa de uma biblioteca da Adafruit chamada NeoPixel-master:
adafruit_neopixel-master.rar [27.83 Kb] (downloads: 71)


Para trabalhar com diodos como com a matriz matricial Adafruit_NeoMatrix-master e Adafruit-GFX-Library-master:
matrix_libraries.rar [282.01 Kb] (downloads: 80)


Um sensor de temperatura precisa da biblioteca OneWire.
onewire.rar [16.75 Kb] (downloads: 64)


Para editar e preencher o esboço, você deve primeiro instalar o IDE do Arduino no site oficial do Arduino.cc e, em seguida, todas essas bibliotecas. É necessário descompactar esses arquivos e colocar os arquivos descompactados na pasta “bibliotecas” localizada na pasta com o IDE do Arduino instalado. Também é possível instalar bibliotecas diretamente no IDE do Arduino. Sem descompactar os arquivos baixados, no Arduino IDE, selecione o menu Sketch - Connect Library. No topo da lista suspensa, selecione "Adicionar biblioteca .Zip". Na caixa de diálogo exibida, selecione a biblioteca que você deseja adicionar. Após todas as manipulações, você deve reiniciar o IDE do Arduino.

O sensor de temperatura possui um endereço exclusivo para cada dispositivo - um código de 64 bits. Encontrar esse código é uma tarefa exigente. Portanto, você deve primeiro conectar o sensor ao Arduino, preencher o esboço localizado no menu Arquivo - Exemplos - Temperatura Dallas - OneWireSearch. Em seguida, execute Ferramentas - Port Monitor. O Arduino deve encontrar seu sensor e escrever seu endereço. Copiamos ou simplesmente anotamos o endereço do seu sensor. Abra o esboço Ard_Tic_Tak_WS2812_Matrix_10x10_Serial_Knopki_Term, procure a linha:

byte addr [8] = {0x28, 0xFF, 0xDD, 0x14, 0xB4, 0x16, 0x5, 0x97}; // endereço do meu sensor 


Anotamos o endereço do seu sensor entre chaves, substituindo o endereço do meu sensor.

Este relógio não usa o módulo RTC. Portanto, se eles estiverem com pressa ou atrasados, altere o valor na linha:

if (micros () - prevmicros & gt; 494000) {// alterar para outro para ajuste foi 500.000


É necessário determinar esse número empiricamente. Se o relógio estiver com pressa, você deve aumentar esse número; se eu estiver atrasado, diminua-o.

Preencha o esboço.


Peço desculpas, mas não consegui tirar uma foto com os diodos ligados. Eu tentei com e sem luzes. Mas garanto que você vive, eles parecem muito melhores.




0
0
0

Adicionar um comentário

    • sorrirsorrisosxaxaoknão seiyahoonea
      chefearranhartolosimsim simagressivosegredo
      desculpedançardance2dance3perdãoajudabebidas
      pararamigosbomgoodgoodapitodesmaiarlíngua
      fumaçapalmascraydeclararirônicodon-t_mentionbaixar
      calorirritantelaugh1mdareuniãomoskingnegativo
      not_ipipocapunirlerassustarsustospesquisar
      provocarthank_youistoto_clueumnikagudoconcordar
      malbeeeblack_eyeblum3corargabar-setédio
      censuradobrincadeirasecret2ameaçarvitóriayusun_bespectacled
      sacudirrespektlolpreviubem vindoKrutoyya_za
      ya_dobryiajudantene_huliganne_othodifludproibirfechar

Aconselhamos que você leia:

Entregue-o para o smartphone ...