Como fazer um cubo de LED Arduino pulsante que parece que veio do futuro

Se você já se interessou por alguns projetos iniciantes do Arduino, mas está procurando algo um pouco permanente e em um nível totalmente diferente, então o humilde cubo de 4 x 4 x 4 LED é uma escolha natural. A construção é muito mais fácil do que você imagina e, usando um multiplexing, podemos controlar todos os LEDs diretamente de uma única placa Arduino Uno.

Se você já se interessou por alguns projetos iniciantes do Arduino, mas está procurando algo um pouco permanente e em um nível totalmente diferente, então o humilde cubo de 4 x 4 x 4 LED é uma escolha natural.  A construção é muito mais fácil do que você imagina e, usando um multiplexing, podemos controlar todos os LEDs diretamente de uma única placa Arduino Uno.
Propaganda

arduino frequência levou Se você já se interessou por alguns projetos iniciantes do Arduino, mas está procurando algo um pouco permanente e em um nível totalmente diferente, então o humilde cubo de 4 x 4 x 4 LED é uma escolha natural. A construção é muito mais fácil do que você imagina e, usando um multiplexing, podemos controlar todos os LEDs diretamente de uma única placa Arduino Uno. É uma ótima prática de solda e o custo total dos componentes não deve chegar a mais de US $ 40.

Hoje estarei detalhando detalhadamente o lado da construção das coisas, e fornecendo alguns softwares para executá-lo, que pareçam impressionantes e ensinem o básico.

Você vai precisar

  • Um Arduino O código fornecido assume um Arduino Uno, mas também pode ser ajustado para um modelo maior.
  • 64 LEDs - a escolha exata depende de você, mas eu usei esses LEDs azuis de 3 mm superbright ( 3.2v 30ma ) @ £ 2.64 para 50.
  • 16 Resistores do valor apropriado para seus LEDs. Para os LEDs acima, 99 pence compraram 100 desses. Use ledcalc.com - digite 5v para a tensão de alimentação, a tensão dos LEDs (no meu caso 3.2) e a corrente em miliamperes (3.2). Seu resistor desejado será mostrado na caixa “Resistor de classificação mais alta mais próxima”, depois é só procurar por esse valor no eBay.
  • Algum fio de ofício para reforçar a estrutura básica e para decoração - usei 0, 8 mm de espessura.
  • Uma placa de prototipagem de algum tipo para a qual você pode soldar todos os seus bits. Eu usei um que não tinha faixas completas ao longo dele, porque eu não tenho um cortador de esteiras, mas uso o que mais lhe convier. Um escudo de prototipagem Arduino é um pouco pequeno demais, a menos que você realmente aperte seus LEDs juntos.
  • Fio de componente aleatório - alguns fios de cabos de rede e alguns dos fios de prototipagem de um kit funcionarão bem.
  • Clipes de crocodilo ou “mãos auxiliares” são úteis para segurar pedaços no lugar.
  • Ferro de solda e solda.
  • Algum pedaço de madeira.
  • Uma broca, com o mesmo tamanho que os seus LEDs.

Nota: os desenhos 3D neste tutorial foram feitos em minutos usando o TinkerCAD. Eu segui uma compilação existente detalhada em Instructables pelo usuário forte1994, que você também pode querer ler antes de tentar isso.

Certifique-se de ler todas as instruções antes de tentar isso sozinho.

O Princípio deste Design

Antes de começar a construção, é importante ter uma visão geral completa de como isso funcionará, para que você possa improvisar e identificar os erros à medida que avança. Alguns cubos de LED usam um único pino de saída para cada LED - no entanto, em um cubo 4x4x4, isso exigiria 64 pinos - o que certamente não temos em um Arduino Uno. Uma solução seria usar shift registers Arduino Programming - Jogando com Shift Registers (aka ainda mais LEDs) Programação Arduino - Jogando com Shift Registers (aka ainda mais LEDs) Hoje vou tentar ensinar-lhe um pouco sobre Shift Registers. Essas são uma parte bastante importante da programação do Arduino, basicamente porque elas expandem o número de saídas que você pode usar, em troca de ... Leia Mais, mas isso é desnecessariamente complicado.

Para controlar todos esses LEDs em apenas 20 pinos, usaremos uma técnica chamada multiplexação. Ao dividir o cubo em 4 camadas separadas, precisamos apenas de pinos de controle para 16 LEDs - para acender um LED específico, precisamos ativar a camada e o pino de controle, o que nos dá uma necessidade total de 16 + 4 pinos. Cada camada tem um cátodo comum - a parte negativa do circuito - então todas as pernas negativas são unidas e conectadas a um único pino para essa camada.

No ânodo (positivo), cada LED será conectado ao LED correspondente na camada acima e abaixo dele. Essencialmente, temos 16 colunas das pernas positivas e 4 camadas do negativo. Aqui estão algumas visualizações 3D das conexões para ajudar você a entender:

arduino frequência levou

arduino levou programa de luz

Construção

Como não usaremos uma estrutura metálica completa para soldar, queremos que todas as pernas dos LEDs se sobreponham em cerca de um quarto e dê rigidez à estrutura. Dobre o cátodo de seus LEDs - o lado com o entalhe plano na cabeça e a perna mais curta - como mostrado no diagrama. (Realmente não importa se você dobra para a esquerda ou para a direita, desde que você seja consistente e nunca toque o ânodo)

arduino levou programa de luz

A primeira parte crítica deste projeto é fazer um gabarito de madeira. Isto irá conter uma camada de LEDs enquanto você solda as pernas juntas, por isso precisa ser preciso e não muito solto. Usando a broca do mesmo tamanho que os seus LEDs, meça e depois faça uma furação de uma matriz 4 × 4 de furos equidistantes . Tenha em mente que você quer que cerca de um quarto da perna se sobreponha ao vizinho e use uma régua real. Verifique cada orifício para garantir que um LED possa encaixar perfeitamente, mas não tão apertado, que você não consiga tirá-lo novamente, ou você terá problemas ao tentar remover uma camada totalmente soldada.

arduino levou programa de luz

Soldar os catodos de 4 linhas de LEDs. Tenha cuidado para não queimar os LEDs - você quer um ferro quente bom e estar dentro e fora. Aqui estão minhas primeiras quatro linhas concluídas.

arduino levou

Agora, para reforçar a rigidez da camada, corte e solde dois pedaços retos de arame de artesanato em cada extremidade, certificando-se de que eles se conectam com cada linha. Esta é sua primeira camada completa. Deixe todo o excesso de pernas saindo do lado por enquanto.

Agora seria um ótimo momento para testar - basta carregar o aplicativo de blink padrão do Arduino e, com um resistor conectado, colocar o solo no quadro da camada e pressionar o fio positivo para cada LED, por sua vez.

arduino levou

Espero que todos acendam. Se não, certifique-se de que você não perdeu uma junta de solda em algum lugar e, se necessário, substitua o LED.

Remova essa camada do gabarito e repita o processo mais 3 vezes .

Não se preocupe se sua solda não for perfeita - desde que não quebre e a conexão seja sólida, ela não afetará o produto final. Eu admito, minha solda foi muito sem esperança, meu gabarito estava desligado, e tudo parecia a torre inclinada de Pisa. Ainda assim, estou orgulhoso do cubo acabado, e quando os LEDs estão acesos, você não vai estar olhando para as juntas de solda de qualquer maneira!

Juntando camadas

Depois de ter 4 camadas completas, você deverá unir todas as pernas verticais. Eu achei que esta é a parte mais difícil da construção, e para ajudar no processo, eu tirei um riser do cartão.

arduino levou

Isso mantinha as camadas na altura apropriada, mas muitas das pernas ainda não se alinhavam perfeitamente - para isso, eu usei alguns clipes de crocodilo para segurá-los no lugar.

Como Fazer um Cubo LED Arduino Pulsante que Pareça Virá do Futuro pernas veritcal seguras com clipes de crocodilo

1º erro bobo a evitar

Só depois de completar uma camada completa eu percebi que o meu riser de cartão estava preso no lugar, então eu tive que cortá-lo! Não cometa o mesmo erro que cometi - deixe o riser mais comprido do lado e junte os pedaços de cartão do lado de fora do cubo; assim, ao completar a camada, você pode desconstruir o riser e retirar o cartão.

Como Fazer um Cubo LED Arduino Pulsante que Pareça Virá do Futuro

2º erro bobo a evitar

Não solde a perna vertical na estrutura do cátodo, obviamente. Pernas verticais só devem se conectar a outras pernas verticais e nada mais.

Mais uma vez, teste após cada camada ter sido anexada. Teste todas as camadas, na verdade, apenas tocando a ponta positiva na ponta da camada superior, garantindo assim que você tenha um bom contato passando por todas as camadas.

Quando todas as 4 camadas foram soldadas juntas, comecei a limpar um pouco - deixei uma única perna estendida para fora de cada camada em uma espécie de "stepping stone" - isso seria descartado no quadro mais tarde. Outros pedaços estranhos de armação de metal e pernas foram cortados. Obviamente, não corte nenhuma das pernas verticais - precisamos colocá-las em nossa placa de prototipagem.

Como fazer um cubo de LED Arduino pulsante que parece ter vindo do futuro 4 camadas completas e limpas

Fixação no Tabuleiro

Lembra quando eu disse que consertar cada camada em si era a parte mais difícil? Eu menti. Tentando encaixar 16 pernas de LED em pequenos orifícios em uma placa de prototipagem é realmente mais difícil. A maneira mais fácil que eu encontrei foi enfiar 4 de cada vez, prendê-las por baixo com clipes de crocodilo, então passar para a próxima linha de 4. Use uma caneta para marcar o espaçamento antecipadamente, se isso ajudar.

Como fazer um cubo de LED Arduino pulsante que parece que veio do futuro fixação em protoboard

Em retrospecto, eu teria colocado os resistores no protoboard primeiro, na verdade. Assim, eu soldei todas as pernas do cubo na tábua primeiro, depois tentei apertar delicadamente os resistores entre eles. Aprenda com meu erro e coloque seus resistores primeiro.

Eu tentei espaçá-los igualmente de forma escalonada para que eu pudesse usar um lado inteiro do cubo para todas as conexões finais com o Arduino. Aqui está o diagrama de circuito com o qual eu fui:

Como fazer um cubo de LED Arduino pulsante que parece que veio do diagrama de underwiring Futuro

Para as quatro camadas negativas, eu soltei um único fio de cada camada, então apenas as puxei para o lado, assim:

Como fazer um arduino pulsante LED Cubo que parece que veio do futuro a partir de cima catodos escadaria

Por fim, adicionei alguns cabos que eu poderia colocar nos pinos do Arduino. Use o tipo mais longo que você tem. Note que eu estraguei o pedido em alguns lugares devido ao mau planejamento. Cada linha de LEDs foi codificada por cores.

Como fazer um cubo de LED Arduino pulsante que parece que veio da fiação de baixo do futuro

É isso aí. Acabado!

Como fazer um cubo de LED Arduino pulsante que parece que veio do futuro 4x4x4 led cube finished

Programando seu cubo

Eu sei que você não pode esperar para acender essa coisa, então ligue as 4 camadas negativas nas portas de E / S Analógica A2 (camada inferior) através de A5 (camada superior) (elas também podem atuar como E / S digital) . Em seguida, conecte os 16 pinos de controle de LED, começando com +1 na extremidade direita da porta de E / S digital 0, com +15 e +16 indo para o analógico A0 e A1 . (Não use AREF e GND)

arduino frequência levou

Faça o download dos padrões de demonstração e código do usuário instrutível forte1994 . Ele também forneceu uma ferramenta on-line útil para projetar os padrões de bytes para personalizar sua própria sequência. Aqui está um vídeo desse código em ação no meu cubo (ajustei a velocidade para 5, em vez do padrão 20) .

Esta não é a única maneira de programar seu cubo, é claro, então deixe-me passar alguns minutos ensinando a você os fundamentos básicos de fazer seus próprios padrões programaticamente, em vez de reproduzir padrões predefinidos como a demonstração acima faz.

Existem algumas coisas que você deve saber ao tentar programar seu cubo:

  1. Para endereçar um único LED, use um número de plano (camada) de 0 a 3 e um número de pino de LED de 0 a 15. Gire o avião para saída BAIXA (já que esta é a perna negativa) e o número do pino LED HIGH (a perna positiva) para ativar o LED.
  2. Antes de ativar um único LED, certifique-se de que todos os outros planos estejam desligados - isso significa configurá-los para uma saída ALTA. Não fazer isso resultará em uma coluna de LEDs acesa em vez de um único LED.

Com isso em mente, fiz duas sequências programáticas muito simples para você examinar - faça o download do código daqui. O primeiro simplesmente acende cada LED, um por um, em seqüência. Usamos dois loops para isso, iterando sobre cada camada e cada pino de controle.

O segundo é um loop aleatório (você precisará comentar o primeiro e habilitar isso no loop principal para testá-lo). Ele simplesmente escolhe uma camada aleatória e um pino de controle aleatório, piscando-os e desligando-os.

Resumo

Não fique intimidado por esta build - eu estou seriamente sem habilidades de solda, e eu consegui isso tudo bem (eu acho?) . O tempo total de construção foi uma hora ou mais por dia durante uma semana. Da próxima vez, vou tentar ensinar-lhe uma programação mais ambiciosa para o cubo, então espero que você se junte a mim na construção do seu próprio cubo esta semana e carregue um novo código na próxima semana - e se você fizer o seu próprio aplicações ou sequências fantásticas, por favor carregue-as no Pastebin e informe-nos nos comentários!

In this article