Cómo crear dados digitales sin contacto con Arduino Uno

Cómo crear dados digitales sin contacto con Arduino Uno
El Arduino es una plataforma que brinda asistencia de usuario con respecto a la creación del hardware de los proyectos, así como la programación del microcontrolador. Debido a esto, se ha vuelto fácil para los estudiantes crear proyectos y aprender más sobre los circuitos. Hay una serie de proyectos que podemos crear utilizando la plataforma Arduino, uno de los cuales es crear un juego de dados digitales que no requiere interfaz humana. Por lo tanto, hemos creado un dado digital que rueda sin ninguna interfaz humana utilizando el módulo IR y 7 segmentos con Arduino Uno.

Cómo crear dados sin toque usando Arduino Uno

A continuación se muestra la lista de componentes que se requieren para hacer un dados sin contacto: son:

  • Arduino Uno
  • Conectando cables
  • Tablero de circuitos
  • Módulo IR
  • Pantalla de segmento 7
  • Siete resistencia de 220 ohmios

Para crear los dados sin toque primero, necesitamos crear el circuito y para eso hemos dado el esquema de circuito que se usa en este proyecto.

Ensamblaje de hardware para crear un dados digitales sin contacto con Arduino Uno y 7 segmentos

Para implementar el circuito indicado anteriormente, hemos creado un ensamblaje de hardware que se da en la figura a continuación. A partir de la imagen que se indica a continuación, puede obtener una idea clara de las conexiones de los componentes utilizados en este proyecto:

Hemos ensamblado componentes al interactuar primero el 7 segmento con Arduino Uno conectando su pin con el Arduino en una orden de alfabeto que comienza desde a a gramo. Para interactuar la pantalla, hemos utilizado los pines Arduino de 2 a 8 manteniendo a la vista del orden alfabético.

Además, hemos usado resistencias de 220 ohmios con cada pasador del 7 segmento y los pasadores superiores están conectados a Arduino usando el cable verde, mientras que para conectar los pasadores inferiores hemos usado los cables de color marrón. Del mismo modo, para conectar la salida del módulo IR con Arduino, hemos usado su pin 11 y en la imagen esta conexión está representada por cyan color cable.

Hemos utilizado la pantalla de 7 segmentos que tiene una configuración del ánodo común, por lo que hemos conectado la pantalla con el suministro utilizando los pasadores de placa que están conectados a 5 voltios y un pin de tierra de Arduino. Para conectar el módulo IR con el suministro, hemos utilizado la fila similar de pines de la placa de pan que están conectadas con 5 voltios y pines de tierra del Arduino.

Código Arduino para crear un dados digitales sin contacto con el módulo IR y 7 segmentos con Arduino Uno

Hemos programado el microcontrolador para hacer dados digitales sin contacto cuyo código se proporciona a continuación:

#Include "Sevseg.h "// Definición de la biblioteca para el segmento de siete
Sevseg sevseg; // Inicialización de la variable para siete segmento
int state;/* variable para almacenar el estado del botón Push*/
int ir = 11;/* Arduino Pin asignado al botón Push*/
Configuración vacía ()

PinMode (ir, entrada);
byte sevensegments = 1;/ *Definición del número de siete segmentos aquí estamos usando solo un siete segmento */
Byte CommonPins [] = ;/* Definición de los pines comunes para los siete segmentos*/
byte ledsegmentPins [] = 2, 3, 4, 5, 6, 7, 8;/ * Asignación de los pines Arduino para cada segmento de A a G */
Resistentes de boolSegments = verdadero; /*Asignación de tipo booleano a los registros de los siete = segmento*/
sevseg.Begin (Common_anode, sevensegments, CommonPins, LEDSegmentPins, ResistorSegments);/ * Inicializando la configuración del Sex-segmento */
sevseg.setBrightness (80); // dando el brillo al siete segmento
RandomSeed (Analogread (0));/* barajando la secuencia de la generación de números de dados*/

bucle vacío ()

state = DigitalRead (IR);
if (state == Low)
para (int b = 0; b <=6; b++)
sevseg.setNumber (b);
sevseg.refreshDisplay ();
retraso (100);

int i = aleator (1,6);/ * Generando los números aleatorios para dados */
sevseg.setNumber (i); /*Mostrar los valores de bucle for para siete segmento*/
sevseg.refreshDisplay (); / * Refrescar la pantalla de siete segmentos después de cada iteración */
retraso (500); /* hora después de lo cual el bucle for se ejecutará nuevamente*/

Para programar el microcontrolador para rodar los dados sin interfaz humana, primero definimos la biblioteca para el segmento 7 y declaramos la variable utilizada para realizar funciones de esta biblioteca. Para conectar la salida del módulo IR con Arduino, hemos definido su pin. A continuación, hemos declarado la configuración del 7 segmento que incluye el número de pines de pantalla arduino asignado a la pantalla y luego utilizando el sevseg.comenzar() función para inicializar la pantalla de 7 segmentos.

Para generar los valores de los dados, hemos usado un aleatorio() función que generará números para 1 a 6 cuando el valor del módulo IR es bajo, lo que significa que se detecta un obstáculo. Del mismo modo, para mostrar que el dado está rodando, hemos usado el bucle for que genera rápidamente los números de 1 a 6 y luego muestra el valor de dados.

Para resumir el funcionamiento del programa Arduino, podemos decir que cuando queremos que los dados lleguen a la mano, nos acercamos al sensor y detecta nuestra mano como un obstáculo. A cambio, tira los dados, y se muestra un valor de los dados en la pantalla de 7 segmentos.

Implementación de hardware para crear un dados digitales sin contacto con el módulo IR y 7 segmentos con Arduino Uno

La imagen a continuación muestra la implementación de hardware del ensamblaje de hardware descrito anteriormente:

La demostración que se proporciona a continuación ilustra el funcionamiento del programa Arduino compilado para crear un dados digitales sin contacto utilizando el módulo IR y 7 segmentos con Arduino Uno:

Conclusión

Los dados son un cubo que tiene números grabados en cada lado que varía de 1 a 6 y se usa para generar los números aleatorios manualmente. También hemos creado un dado que genera los números aleatorios, pero tiene dos propiedades que carece de dados manuales: uno es que es digital y el segundo es que puede generar el número sin interfaz humana. Por lo tanto, podemos nombrarlo como dados digitales sin toque y lo hemos creado utilizando un módulo IR que activará la generación de números y para mostrar los valores que hemos utilizado en la pantalla de 7 segmentos. También hemos proporcionado el código Arduino y la animación que muestra el funcionamiento del código Arduino respectivo.