Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Cubo LED 7x7x7

Componentes e suprimentos

Arduino UNO
× 1
74hc574
× 7
74hc138
× 1
Resistor 220 ohm
× 49
Cristal 16 MHz
× 1

Ferramentas e máquinas necessárias

Ferro de soldar (genérico)

Sobre este projeto


Sempre quis fazer meu próprio cubo de LED, e agora compartilho com vocês o meu projeto.





Etapa 1


A primeira coisa a fazer é criar a matriz de LED.

Neste caso, criei sete matrizes de LED 7x7.

Eu dividi anodos e catodos e os soldou em linhas e colunas, então no final eu tenho 7 anodos e 7 chatodes para cada matriz de led.






Etapa 2


Agora você precisa do hardware necessário para usar o cubo de LED.

Essa é a parte mais difícil se você não conhece bem a eletrônica.

Mas tento explicar essa parte com clareza.

Usei sete 74HC574.

Este IC é um Flip Flop D de 8 bits, é uma memória de 8 bits. Desta forma posso carregar alguns bits neles para ver a imagem no cubo. Preciso de sete 74HC574 porque há sete matrizes de LED.

Também preciso de 7 transistores NPN para decidir qual camada ativa.

Desta forma com a técnica do multiplexer posso visualizar uma imagem em todo cubo.

Finalmente preciso também de um 74LS138, é um desmultiplexador decodificador de 3 a 8 linhas, então com ele posso controlar todos os Flip Flop com apenas 3 bits porque eles também precisam de um pulso para salvar os dados.

Este é o diagrama de blocos do hardware:

Eu mesmo fiz o circuito e usei o ATmega328P autônomo do Arduino.

Você pode ver todo o diagrama de circuito abaixo.










Etapa 3


Você também precisa de uma estrutura para hardware e cubo de LED. Usei alguns pedaços de madeira para fazer isso.

Depois disso você pode montar tudo, cada matriz de LED deve ser colocada na frente da outra e os cátodos de cada camada são conectados ao mesmo transistor.





Etapa 4


Finalmente, você pode escrever o código para fazer o cubo, o diagrama de blocos acima pode ajudá-lo a escrever o código.

Esta parte pode ser muito confusa, mas com um pouco de prática será mais fácil.

O código abaixo representa as animações mais fáceis porque as outras são muito longas, mas com um pouco de fantasia você pode fazer o que quiser.


Código

  • Animação
Animação Arduino
 // Este código representa a animação mais fácil para LED CUBEint temp =50, cont =0; // Esta função carrega todo o cubevoid load_all (void) {// camada 1 digitalWrite (A2, LOW); digitalWrite (A1, LOW); digitalWrite (A0, LOW); atraso (1); // camada 2 digitalWrite (A2, HIGH); digitalWrite (A1, LOW); digitalWrite (A0, LOW); atraso (1); // camada 3 digitalWrite (A2, LOW); digitalWrite (A1, ALTO); digitalWrite (A0, LOW); atraso (1); // camada 4 digitalWrite (A2, HIGH); digitalWrite (A1, ALTO); digitalWrite (A0, LOW); atraso (1); // camada 5 digitalWrite (A2, LOW); digitalWrite (A1, LOW); digitalWrite (A0, HIGH); atraso (1); // camada 6 digitalWrite (A2, HIGH); digitalWrite (A1, LOW); digitalWrite (A0, HIGH); atraso (1); // camada 7 digitalWrite (A2, LOW); digitalWrite (A1, ALTO); digitalWrite (A0, HIGH); atraso (1); // camada 8 digitalWrite (A2, HIGH); digitalWrite (A1, ALTO); digitalWrite (A0, HIGH); delay (1);} // Esta função ativa cada camada uma vez e você pode decidir o tempo em que a camada ativa-se evita a rolagem (int t) {PORTB =0x00; digitalWrite (7, ALTO); atraso (t); digitalWrite (7, BAIXO); digitalWrite (8, ALTO); atraso (t); digitalWrite (8, BAIXO); digitalWrite (9, ALTO); atraso (t); digitalWrite (9, BAIXO); digitalWrite (10, ALTO); atraso (t); digitalWrite (10, BAIXO); digitalWrite (11, ALTO); atraso (t); digitalWrite (11, BAIXO); digitalWrite (12, ALTO); atraso (t); digitalWrite (12, BAIXO); digitalWrite (13, ALTO); atraso (t); digitalWrite (13, LOW);} // Esta animação ativa uma camada por vez, e aumenta a velocidade dela, então finalmente você vê todos os cubos ativados evitando um (void) {PORTD =0xff; load_all (); enquanto (1) {rolagem (temp); temp =temp - 2; if (temp <=0) {temp =1; cont ++; if (cont ==1000) {cont =0; temp =100; }}}} void setup () {DDRD =0xff; DDRB =0xff; DDRC =0xff;} void loop () {one ();} 

Peças personalizadas e gabinetes

gestione_mankWMoVhz.sch

Esquemas

Eu uso a imagem para a disposição dos componentes

Processo de manufatura

  1. Cubo de Rubik
  2. Diodo emissor de luz (LED)
  3. DIY 37 LED Roulette Game
  4. Melodia para dança do caixão
  5. Cubo LED 5x5x5
  6. Reaproveitar controles remotos antigos
  7. Arduino com Bluetooth para controlar um LED!
  8. Iluminação LED 8x por som
  9. Arduino Quadruped
  10. Arduino RGB Color Mixer