Tutoriales

Tutorial: Supera el videojuego del Dinosaurio de Chrome con Arduino

En este tutorial aprenderas cómo implementar una fotoresistencia, un servomotor y un Arduino para jugar el videojuego offline del Dinosaurio en Google Chrome, siendo un hack para que el famoso T-Rex logre atravesar una gran cantidad de cactus.

Materiales

Para ello necesitaremos un fotoresistor, una resistencia, un servo motor SG90 y un Arduino UNO, este último puede ser sustituido por otro modelo de tarjeta, lo realizamos con este modelo para fines prácticos y educativos.

Los materiales que necesitaremos para construir este dispositivo son:

  • Un Arduino UNO
  • Un servomotor
  • Un fotocélula o fotoresistencia
  • Una resistencia de 10K
  • Un protoboard
  • Algunos cables

Vamos a implementar los materiales anteriores para crear un dispositivo capaz de detectar diferentes obstaculos con base en su color, al ser objetos oscuros la fotoresistencia podrá detectar el objeto, gracias a la diferencia de luz que emite un objeto oscuro en contraste con el fondo blanco del videojuego.

Un poco de teoría

Por su parte, el motor servirá para presionar la tecla espacio, y que el dinosaurio brinque, cuando la fotoresistencia indique que ha detectado un objeto «obscuro». Ahora bien explicaremos a grandes rasgos e cada uno de los materiales.

Un fotoresistor, o LDR (light-dependent resistor) es un dispositivo cuya resistencia varia en función de la luz recibida. Podemos usar esta variación para medir, a través de las entradas analógicas, una estimación del nivel del luz. El tiempo promedio de lectura de un LDR es de 25ms.

Un servomotor o servo. Es un motor eléctrico pero con dos características especiales. La primera es que nos permite mantener una posicion que indiquemos, lo segundo es que nos permite controlar la velocidad del giro, podemos hacer que antes de que se mueva a la siguiente posición espere un tiempo.

Arduino es una tarjeta electrónica de fácil programación y conexión, que se distribuye bajo la filosófia de hardware y software libre lo que ha abierto el camino a un gran número de modificaciones, componentes y demás sensores.

Conexión de Arduino

Dinosaurio Chrome Arduino

Programación

Como lo hemos mencionado, el programa estará midiendo constantemente el nivel de luz a través de la fotoresistencia, misma que al detectar un valor de luz menor que 690, entrará en el condicional iniciando el «servoMotor» que girará 90 grados oprimiendo la tecla de espacio, al encontrar un valor de luz superior a 690 regresará a su posición original de 70 grados, función que se repetirá una y otra vez.

// Incluímos la librería para poder controlar el servo
#include <Servo.h>
 
Servo servoMotor;// Declaramos la variable para controlar el servo
int FotoLDR = analogRead(5);// Variable de Fotoresistencia en A5
 
void setup() {
  
  Serial.begin(9600); // Iniciamos el monitor serie para mostrar el resultado
  pinMode(FotoLDR , INPUT); // Declaramos el pin de la fotoresistencia como una entrada de datos
  
  servoMotor.attach(8); // Iniciamos el servo para que empiece a trabajar con el pin 8 del arduino
}
 
void loop() {
int value = digitalRead(FotoLDR);
   if (690>value)
   {
  servoMotor.write(90);  // Iniciamos servo en posición 90º
   }
else {
  servoMotor.write(70);  // Regresamos el servo a 70º
  }
}

Resultado: hemos «hackeado» el vidoejuego del Dinasaurio de Chrome con Arduino

Al encontrarme en cuarentena no me ha sido posible preparar el vídeo, por lo que les comparto un ejemplo publicado en Youtube por @eltallerdetd.



About author

Fundadora del proyecto #HackerGirl; Unboxing, Review y más sobre tecnologías. Gamer, fandroid. Un troll que regala amor :3. Estudiante de por vida, amante de las tecnologías, maker de corazón.
    Related posts
    NoticiasTutoriales

    Cómo activar, paso a paso, el modo oscuro en Facebook

    NoticiasTutoriales

    ¿Cómo migrar fotos y videos de Facebook a Google Photos?

    NoticiasTutoriales

    ¿Cómo hacer tu avatar en Facebook?

    NoticiasTutoriales

    Cursos GRATIS para aprender Inteligencia Artificial

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *