Como criar dados sem toque usando Arduino Uno
Abaixo está a lista de componentes necessários para fazer dados sem toque: é:
Para criar os dados sem toque primeiro, precisamos criar o circuito e, para isso, damos o esquema do circuito usado neste projeto.
Conjunto de hardware para criar um dado digital sem toque com Arduino Uno e 7-segmento
Para implementar o circuito dado acima, criamos um conjunto de hardware que é dado na figura abaixo. A partir da imagem abaixo, você pode ter uma idéia clara das conexões dos componentes usados neste projeto:
Nós montamos componentes interface o 7-segmento com Arduino Uno, conectando seu pino ao Arduino em uma ordem de alfabetismo a partir de a para g. Para interagir a tela, usamos pinos Arduino de 2 a 8, tendo em vista a ordem alfabética.
Além disso, usamos 220 ohms resistores com cada pino do 7 segmento e os pinos superiores são conectados a Arduino usando o fio verde, enquanto para conectar os pinos inferiores que usamos os fios de cores marrons. Da mesma forma, para conectar a saída do módulo IR com Arduino, usamos o pino 11 e na imagem essa conexão é representada pelo fio colorido ciano.
Usamos a tela de 7 segmentos com configuração comum de ânodo, por isso conectamos o visor com o suprimento usando os pinos de tábua de pão que estão conectados a 5 volts e alfinete de arduino. Para conectar o módulo IR com o suprimento, usamos a linha semelhante de pinos da placa de ensaio que estão conectados com 5 volts e pinos moídos do Arduino.
Código Arduino para criar um dado digital sem toque usando módulo IR e 7-segmento com Arduino Uno
Programamos o microcontrolador para criar dados digitais sem contato cujo código é fornecido abaixo:
#include "Sevseg.h "// Definindo a biblioteca para o sete segmentos
Sevseg sevseg; // inicializando a variável para sete segmentos
Int State;/* variável para armazenar o estado do botão de pressão*/
int ir = 11;/* pino Arduino atribuído ao botão de pressão*/
configuração void ()
pinmode (ir, entrada);
BYTE SEVENSEGMENTS = 1;/ *Definindo o número de sete segmentos aqui estamos usando apenas um sete segmentos */
Byte Commonpins [] = ;/* Definindo os pinos comuns para o sete segmentos*/
byte ledsegmentpins [] = 2, 3, 4, 5, 6, 7, 8;/ * atribuindo os pinos Arduino para cada segmento de A a G */
BOOL ResistorSonsegments = true; /*atribuindo tipo booleano aos registros do sete = segmento*/
Sevseg.BEGIN (Common_anode, Sevensegments, Commonpins, LedsegmentPins, ResistorSonsegments);/ * Inicializando a configuração do sete segmentos */
Sevseg.setbrightness (80); // dando o brilho ao sete segmentos
semente aleatória (analogread (0);/* arrastando a sequência de geração de números de dados*/
Void Loop ()
estado = digitalRead (IR);
if (estado == baixo)
para (int b = 0; b <=6; b++)
Sevseg.setNumber (b);
Sevseg.refreshDisplay ();
atraso (100);
int i = aleatório (1,6);/ * gerando os números aleatórios para dados */
Sevseg.setNumber (i); /*Exibindo os valores de loop for em sete-segmento*/
Sevseg.refreshDisplay (); / * Refrescando a tela de sete segmentos após cada iteração */
atraso (500); /* tempo após o qual o loop for executado novamente*/
Para programar o microcontrolador para rolar os dados sem interface humana, definimos primeiro a biblioteca para o segmento 7 e declaramos a variável usada para executar funções desta biblioteca. Para conectar a saída do módulo IR com Arduino, definimos seu alfinete. Em seguida, declaramos a configuração do 7-segmento que inclui o número de pinos de arduino de exibição atribuídos à tela e depois usando o Sevseg.começar() Função para inicializar a tela de 7 segmentos.
Para gerar os valores dos dados, usamos um aleatório() função que gerará números para 1 a 6 quando o valor do módulo IR for baixo, o que significa que um obstáculo é detectado. Da mesma forma, para mostrar que os dados estão rolando, usamos o loop for que gera rapidamente os números de 1 a 6 e depois exibe o valor dos dados.
Para resumir o funcionamento do programa Arduino, podemos dizer que, quando queremos que os dados rolem, trazemos nossa mão perto do sensor e ele detecta nossa mão como um obstáculo. Em troca, ele rola os dados e um valor dos dados é mostrado no visor de 7 segmentos.
Implementação de hardware para criar um DICE digital sem toque usando módulo IR e 7-segmento com Arduino Uno
A imagem abaixo mostra a implementação de hardware do conjunto de hardware descrito acima:
A demonstração abaixo ilustra o funcionamento do programa Arduino compilado para criar um DICE digital sem contato usando o módulo IR e 7-segmento com Arduino Uno:
Conclusão
Os dados são um cubo com números gravados em cada lado, variando de 1 a 6 e é usado para gerar os números aleatórios manualmente. Também criamos um dado que gera os números aleatórios, mas possui duas propriedades que falta de dados manuais: um é que é digital e o segundo é que ele pode gerar o número sem interface humana. Assim, podemos nomeá-lo como dados digitais sem toque e criamos-o usando um módulo IR que acionará a geração de números e para exibir os valores que usamos na tela de 7 segmentos. Também fornecemos o código Arduino e a animação que mostra o funcionamento do respectivo código Arduino.