Hacer ganador de la lotería usando Arduino Uno

Hacer ganador de la lotería usando Arduino Uno
La familia Arduino ofrece una manera fácil de diseñar una variedad de circuitos y también facilita que el nuevo usuario también comprenda el funcionamiento de los circuitos. Hay una variedad de proyectos que se pueden hacer utilizando la plataforma Arduino y, en este discurso, se realiza un simple ganador del código de lotería Arduino. El código Arduino compilado en Arduino IDE se implementa en el circuito diseñado para los ganadores de la lotería utilizando la placa Arduino Uno.

Hacer ganador de la lotería usando Arduino Uno

Para diseñar el circuito para el ganador de la lotería, hemos utilizado los siguientes componentes que son:

  • Arduino Uno
  • Cables de jersey
  • Tablero de circuitos
  • Potenciómetro
  • Lcd
  • Presionar el botón

La imagen para el esquema del circuito diseñado para crear un ganador de lotería se publica a continuación:

Implementación de hardware ganador de la lotería Arduino

Hemos conectado los componentes de tal manera que primero se colocan todos los dispositivos en la placa de pan. A continuación, hemos utilizado cables de conexión para interactuar los componentes con el Arduino.

Hemos usado los pines 6,5,4,3 y 2 de Arduino para enviar datos a través de la pantalla LCD. También hemos dado el suministro a la línea más superior de la placa de pan, ya que están conectados horizontalmente y conectados a tierra la siguiente línea a la línea más superior de la placa de pan utilizando el pasador de 5 voltios y tierra de Arduino.

A partir de ahí, podemos proporcionar el suministro a los componentes colocados en la placa de pan y la salida del potenciómetro está conectada al pin V0 de la pantalla LCD para controlar el brillo de la pantalla LCD.

El botón Push está conectado al pasador de reinicio del Arduino y su otro pin está conectado al pasador de tierra de la placa de pan.

Para dar la imagen clara de las conexiones de cada componente en el proyecto, hemos dado una imagen del conjunto de hardware a continuación:

Código Arduino para el Proyecto de Ganador de la Lotería

Para diseñar un ganador de lotería, hemos usado dos funciones principales, una es la aleatorio() y el otro es el Semilla aleatoria() función.

El aleatorio() La función necesita dos entradas para definir el rango para generar los números aleatorios: el primero es el número más bajo del que comenzará y el segundo es el número más alto que define el número máximo que puede generar. El valor mínimo es un argumento opcional ya que la función toma cero como valor mínimo. Esta función genera números en un rango determinado especificado por el usuario.

Del mismo modo, el Semilla aleatoria() La función se usa para generar diferentes secuencias aleatorias cada vez que se compila el código. Esta función tiene un argumento que es la salida del pin analógico del arduino que no está conectado.Es importante tener en cuenta que sin la función RandomSeed () obtendrá los mismos valores.

Número aleatorio = aleatorio (mínimo, máximo);

SE RAJETLEED (Analogread (PIN));

El Proyecto del Código Arduino para la Lotería del Ganador es:

// Declarando las variables de número aleatorio con un tipo de datos largo
largo RN1;
largo RN2;
largo RN3;
largo RN4;
#Include // Biblioteca para la pantalla LCD
LiquidCrystal LCD (12, 11, 6, 5, 4, 3); // Arduino Pins para LCD
setup () void
De serie.comenzar (9600); // comunicación serial
lcd.begin (16,2); // Inicializando las dimensiones de LCD
RandomSeed (Analogread (0)); // Función para barajar los números aleatorios
lcd.setCursor (4,0); // Lugar de configuración para que se muestren los datos
lcd.Imprimir ("Arduino"); // Datos que se imprimirán en LCD
lcd.setCursor (1,1); // Lugar de configuración para que se muestren los datos
lcd.Imprimir ("Ganador de la lotería"); // Datos que se imprimirán en LCD
retraso (3000); // El tiempo para los datos se mostrará en la pantalla LCD
lcd.clare (); // borde la pantalla LCD
RN1 = Random (200); // Generando el número aleatorio hasta 300
rn2 = aleatorio (500); // generando el número aleatorio hasta 500
rn3 = aleatorio (800); // generando el número aleatorio hasta 800
rn4 = aleatorio (700); // generando el número aleatorio hasta 700
lcd.setCursor (0,0); // Lugar de configuración para los datos que se muestran
lcd.imprimir ("generar un"); // datos que se imprimirán en LCD
lcd.setCursor (0,1); // lugar de configuración para que se muestren los datos
lcd.Imprimir ("Número de lotería"); // Los datos se imprimirán en LCD
retraso (3000); // El tiempo para los datos se mostrará en la pantalla LCD
lcd.clare (); // borde la pantalla LCD
lcd.setCursor (0,0); // Lugar de configuración para los datos que se muestran
lcd.imprimir ("El ganador es"); // Los datos se imprimirán en LCD
// Usando para los bucles el número de generar el número de lotería usando los números aleatorios generados
para (int i = 0; i<=rn1; i++)
lcd.setCursor (0,1); // lugar de configuración para que se muestren los datos
lcd.imprimir (i); // Mostrar el primer número en la lotería

lcd.setCursor (2,1); // lugar de configuración para que se muestren los datos
lcd.imprimir ("-"); // datos que se imprimirán en LCD
para (int b = 0; b<=rn2; b ++)
lcd.setCursor (3,1); // Lugar de configuración para que se muestren los datos
lcd.imprimir (b); // Mostrar el segundo número en la lotería

lcd.setCursor (5,1); // Lugar de configuración para los datos que se muestran
lcd.imprimir ("-"); // datos que se imprimirán en LCD
para (int a = 0; a<=rn3; a++)
lcd.setCursor (6,1); // Lugar de configuración para los datos que se muestran
lcd.imprimir (a); // Mostrar el tercer número en la lotería

lcd.setCursor (8,1); // Lugar de configuración para que se muestren los datos
lcd.imprimir ("-"); // datos que se imprimirán en LCD
para (int c = 0; c<=rn4; c++)
lcd.setCursor (9,1); // Lugar de configuración para que se muestren los datos
lcd.imprimir (c); // Mostrar el cuarto número en la lotería


bucle void ()

Primero en el código Arduino, hemos declarado las variables en las que se almacenarán los números aleatorios. Después de eso, se define la biblioteca para la pantalla LCD y luego se inicializan los pines del Arduino conectado a la pantalla LCD.

Después de eso, las dimensiones de la pantalla LCD se inicializan y algunos datos se imprimen en el LCD utilizando el lcd.imprimir() y lcd.setCursor () función.

Hemos generado 4 números aleatorios usando el aleatorio() función y barajar las secuencias cada vez que hemos usado Semilla aleatoria() función dándole la salida de un pin desconectado del arduino usando Analogread () función.

Después de generar los números aleatorios, hemos utilizado los bucles para generar aún más un número que varía de 0 a ese número aleatorio generado específico.

Para volver a ejecutar el código y generar otro número de lotería nuevamente, hemos utilizado un botón de reinicio externo conectando su Pin al suelo y el otro pin al Pin de reinicio del Arduino Uno. También hemos utilizado el potenciómetro para controlar el brillo de la pantalla LCD. Los números se muestran luego utilizando el lcd.imprimir() y lcd.setcursor función en la pantalla LCD.

Simulación ganadora de la lotería Arduino

Primero hemos realizado la simulación en un software Proteus y se muestra a continuación:

Salida del ganador de la lotería Arduino en hardware

Después de la simulación, hemos realizado la implementación de hardware y las imágenes para la salida del código Arduino compilado para la implementación del ganador de la lotería se publican en la secuencia de ejecución del programa.

Generando un número de lotería presionando el botón:

El número de lotería generado se muestra a continuación:

Conclusión

Para facilitar el nivel de principiante o avanzado, la plataforma Arduino es una opción viable, ya que facilita la interfaz de los periféricos con los microcontroladores. En este artículo hemos hecho un generador de números de lotería al obtener números aleatorios usando el aleatorio() función. Además, para cambiar la secuencia de la generación de los números aleatorios hemos utilizado el Semilla aleatoria() función.