Cómo generar los números pseudo-aleatorios en Arduino

Cómo generar los números pseudo-aleatorios en Arduino

Para generar los números pseudo-aleatorios en Arduino, utilizamos las funciones incorporadas al azar (), primero, entendemos por qué necesitamos generar los números pseudo-aleatorios? En la vida real, tenemos que generar códigos aleatorios para fines de verificación. Del mismo modo, en los juegos digitales, tenemos que generar contraseñas aleatorias. Para este propósito, tenemos que generar los números aleatorios en Arduino.

En este artículo, discutiremos las técnicas por las cuales podemos generar números aleatorios con la ayuda de ejemplos.

Cómo generar números aleatorios en Arduino

Hay dos funciones incorporadas en Arduino que se utilizan para generar los números pseudo-aleatorios:

  • aleatorio()
  • Semilla aleatoria()

Explicaremos ambas funciones en detalle.

aleatorio(): Esta función se utiliza para generar los números pseudo-aleatorios definiendo el rango de números o cualquier condición específica. La sintaxis general de usar la función Random () es:

aleatorio (max)

Según esta sintaxis, debe definir un número entero, como resultado del cual generará los números menos que ese número particular. Para comprender el uso de esta sintaxis, considere el ejemplo:

int randomNumber; void setup ()
De serie.comenzar (9600);

bucle void ()
RandomNumber = Random (500);
De serie.println (randomNumber);
retraso (1000);


Hemos declarado una variable de tipo de datos INT a nivel mundial con el nombre "RandomNumber" en el ejemplo de código anterior. En el bucle vacío, usando la función aleatoria () almacenamos valores en randomnumber y especificamos que los números generados deberían ser inferiores a 500. Luego, con la ayuda de la comunicación en serie, mostramos el resultado en la salida del monitor de serie. Y al final, utilizamos la función de retraso para un segundo.

La salida del código es:

Cada segundo se muestra un número aleatorio.

La otra forma de usar el random () es especificar el rango:

aleatorio (min, max);

Debe usar la función aleatoria con el rango especificado de números pseudo-aleatorios mencionando los límites máximos y mínimos. Por lo tanto, los números generados deben estar en el rango especificado, por ejemplo, consideramos otro ejemplo:

int randomNumber; void setup ()
De serie.comenzar (9600);

bucle void ()
randomNumber = aleatorio (100,500);
De serie.println (randomNumber);
retraso (1000);


El código utilizado en este ejemplo es el mismo que el ejemplo anterior, la única diferencia es que especificamos que el rango del número aleatorio generado debe estar entre 100 y 500. La salida del código será:


Semilla aleatoria(): La otra función incorporada para generar los números aleatorios es usar la función randomseed (). La función Random () genera los números pseudo-aleatorios de acuerdo con el rango que se le da como entrada, mientras que la función RandomSeed () genera los números desde cualquier número arbitrario. La diferencia entre ambas funciones es que la salida de Random () a veces es predecible, mientras que no es posible predecir la salida si se usa la función RandomSeed (). La sintaxis es de la función RandomSeed es:

SEA DE RUEDA (SEMILLA)

semilla : un número largo sin firmar

Supongamos que el PIN 4 es analógico PIN no conectado, la función se usará como:

randomseed (analogueead (4));

El randomseed () generará un número diferente cada vez que se ejecute el código para asegurarse de que el pin no esté conectado.

Conclusión

Para generar los números pseudo-aleatorios en Arduino, podemos usar las funciones incorporadas; Random () y RandomSeed (), de Arduino. Estas funciones generan números aleatorios que pueden usarse para varios proyectos de Arduino. En este artículo, hemos explicado los métodos para generar los números aleatorios en Arduino con la ayuda de ejemplos.