- Componentes necessários:
- Construção do visor da hélice:
- Circuito e explicação de funcionamento:
- Explicação de programação:
Você já viu Hélices em Aeronaves ou em navios da Marinha, se não em reais, então em filmes com certeza. Nesta sessão, vamos projetar um Propeller Display com Arduino, LEDs e um motor DC. Neste visor da hélice, o texto parecerá girar em formato de hélice em uma forma circular.
O display da hélice é semelhante ao LED Matrix. Ele contém 8 LEDs (diodos emissores de luz) que são organizados na forma de uma matriz 8 * 1 (8 linhas e 1 coluna). Eles são dispostos em forma de escada um sobre o outro. Esses 8 LEDs podem ser feitos para exibir qualquer conteúdo, como texto, números, símbolos etc. Isso é obtido por Percepção de Visão (POV), em que muitas imagens estáticas são movidas rapidamente uma a uma em uma sequência, o que dá uma percepção de animação ou uma imagem em movimento. Como isso é feito é explicado no tutorial fornecido a seguir.
Componentes necessários:
- Arduino Uno
- Motor DC
- + 3,6V bateria LI-ION
- LED (8 peças)
- Resistor de 1KΩ (8 peças)
Construção do visor da hélice:
Primeiro, pegue uma base estável; Usei um DVD DRIVE antigo para PC que estava por perto. Você pode obter uma prancha de madeira ou uma caixa de papelão. Em seguida, faça um furo no meio do DVD Drive (base) e insira o eixo do motor DC nele. Certifique-se de que o orifício está apertado o suficiente para segurar o motor e o motor pode girar livremente. Usei Feviquick para colocar o eixo no lugar.
Apoie a parte superior do motor para equacionar as saliências desiguais. Usei um quadro de pontos sobre ele e usei cola rápida novamente para colar com o motor DC.
Coloque a bateria LI-ION na parte superior. Se você não tiver bateria LI-ION do mesmo tamanho, deixe-a. Depois disso, pegue cada LED e teste-o com célula-botão ou qualquer outra fonte. Em seguida, pegue alguns resistores e solde-os com LEDs conforme a imagem e o diagrama de circuito mostrado abaixo.
Conecte os LEDs e resistores soldados com o Arduino UNO conforme mostrado na figura abaixo e no diagrama de circuito.
Monte o UNO na parte superior do DC MOTOR e prenda-o com a ajuda de fita adesiva para finalizar a montagem. Portanto, a configuração final do Propeller ficará assim:
Circuito e explicação de funcionamento:
O circuito do display POV controlado pelo Arduino é muito simples, simplesmente conectamos 8 LEDs com o Arduino Uno conforme o diagrama de circuito abaixo.
PORTD, PIN0 ------------------ LED8 TERMINAL POSITIVO
PORTD, PIN1 ------------------ LED7 TERMINAL POSITIVO
PORTD, PIN2 ------------------ TERMINAL POSITIVO LED6
PORTD, PIN3 ------------------ TERMINAL POSITIVO LED5
PORTD, PIN4 ------------------ TERMINAL POSITIVO LED4
PORTD, PIN5 ------------------ LED3 TERMINAL DE POSIÇÃO
PORTD, PIN6 ------------------ TERMINAL POSITIVO LED2
PORTD, PIN7 ------------------ LED1 TERMINAL DE POSIÇÃO
Como adicionamos mais colunas em matriz de LED 8x8 para estender a tela, da mesma forma, em vez de adicionar mais COLUNAS de LED, movemos a primeira COLUNA de LED para a segunda COLUNA de LED usando o movimento do MOTOR DC.
Para compreender toda a situação, digamos que desejamos que 'A' seja exibido no visor da hélice. Considere que a 'agulha' do LED está na POSIÇÃO 1 primeiro, conforme mostrado na figura abaixo. A agulha de LED é a coluna de 8 LEDs.
Agora vamos alimentar o motor e ele começará a funcionar.
Em t = 0ms: a agulha estará na POSIÇÃO 1. Nesta posição todos os oito LEDs, do LED SUPERIOR (MSB) ao LED INFERIOR (LSB), estão ligados.
Em t = 1ms: a agulha estará na POSIÇÃO 2. Igual à Posição 1, nesta posição todos os oito LEDs, de TOP LED (MSB) a BOTTOM LED (LSB), estão ligados.
Em t = 2ms: a agulha estará na POSIÇÃO 3. Nesta posição apenas LED7, LED6 e LED3 permanecem LIGADOS e os LEDs restantes são desligados.
Em t = 3ms: a agulha estará na POSIÇÃO 4. Igual à Posição 3, nesta posição apenas LED7, LED6 e LED3 permanecem LIGADOS e os LEDs restantes são DESLIGADOS.
Em t = 4ms: a agulha estará na POSIÇÃO 5. Igual às posições 3 e 4, nesta posição apenas LED7, LED6 e LED3 permanecem LIGADOS. Os LEDs restantes são desligados.
Em t = 5ms: a agulha estará na POSIÇÃO 6. Nesta posição, todos os oito LEDs são novamente ligados, os led TOP (MSB) e BOTTOM (LSB) são acesos.
Em t = 6ms: a agulha estará na POSIÇÃO 7. Igual à Posição 6, nesta posição todos os oito LEDs permanecem acesos.
Conforme explicado acima, ligaremos os LEDs apropriados nas posições de agulha apropriadas para exibir o caractere necessário. Se a velocidade do movimento da agulha for lenta, podemos ver cada coluna de LED separadamente. Mas quando a velocidade do motor é alta e a agulha está se movendo muito rápido, o display será visto como exibindo continuamente o caractere “A”.
Explicação de programação:
Nós programamos o Arduino para alimentar o LED apropriado em momentos apropriados enquanto gira, de forma que a coluna de LED mostre o texto “CIRCUITO DIGEST” na posição circular.
A programação do visor do Propeller é facilmente compreensível. Um Char Array de 26x8 foi considerado como volátil ALPHA. Este array consiste em 8 posições da agulha para exibir cada um dos 26 alfabetos, o que o torna um array de 26x8. 26 linhas em Array representam os 26 alfabetos e 8 colunas em cada linha representam as oito posições da agulha para exibir o caractere enquanto gira. Agora, cada célula consiste em um número binário que representa o status ligado / desligado de 8 LEDs em uma posição particular da agulha. Lembre-se de que a agulha aqui se refere à linha de 8 LEDs conectados ao Arduino, conforme explicado acima.
Agora você só precisa girar o motor DC e usar um ' for loop ' com oito iterações para exibir um caractere. Por exemplo, se você quiser exibir 10 caracteres, precisará executar 10 ' loops for' com oito iterações em cada um. Portanto, usamos 13 loops for para exibir o texto CIRCUIT DIGEST. Verifique o código completo do programa abaixo com um vídeo de demonstração.
Então é assim que você pode criar uma bela ilusão de Persistência de Visão (POV) com o Arduino como se um texto estivesse girando como uma hélice.