Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Juego automatizado de Dino usando arduino

Componentes y suministros

Arduino UNO
× 1
LDR, 5 Mohm
× 1

Acerca de este proyecto

AF aburrido, ¿durante este tiempo de cuarentena? 🥴

Juguemos al juego Google Chrome Dino…;)

Pero, ¿qué hacer si el juego de Dino también se vuelve aburrido?

Automaticemos el juego Dino😉.

Entonces, necesitamos un Arduino y LDR . Poco conocimiento en Python es también requerido.

Primero configuremos nuestro Arduino .

Conecte Arduino UNO con LDR. (No olvide agregar resistencia)

A continuación, cargue el código en el valor de lectura LDR analógico.

  // ¡Arduino Dino Game! :) 

int sensorPin =A0; // Conecta LDR en A0
int sensorValue =0; // variable para almacenar el valor proveniente de LDR
int UmbralValue =45; // este depende de su método de prueba y error.
void setup () {
Serial.begin (9600); // La serie comienza en 9600
}

void loop () {
// lee el valor del sensor:
sensorValue =analogRead (sensorPin); // leer datos del sensor
//Serial.println(sensorValue); // descomenta esto mientras lo usas por primera vez y toma tu umbralValue y configúralo.

if (sensorValue <=resholdValue) {// if condición para detectar obstáculo.
Serial.println (1); // Impresión en serie si la condición es verdadera.
}
retraso (40); // retraso 50ms
}

Arregle su LDR en el monitor, luego lea analogValues ​​ cuando hay un obstáculo. establezca ese valor como umbralValor y actualice su condición si . Yesssss !!!!! ✌️ Ahora la parte de Arduino ha terminado.

Puede agregar un servomotor para presionar la "barra espaciadora" para hacer que Dino salte. Pero este es el momento de la cuarentena. Entonces, no tengo ninguna forma de obtener un servomotor. Entonces, aquí utilizo código Python para hacer esta tarea.

Entonces, codifiquemos en Python;)

Copie y pegue el código Python, realice los cambios necesarios.

En el código estamos usando pyserial módulo para leer datos en serie. Luego, para presionar el botón arriba usando PyAutoGUI módulo.

  import subprocess 
tiempo de importación
import pyautogui
import serial
subprocess.call ([r'C:\ Program Files \ Mozilla Firefox \ Firefox.exe ' ,
'-new-tab', 'https://chromedino.com/'])
#Añadir la ruta de Google Chrome para los usuarios de Chrome.
#para abrir el navegador y abrir el juego Dino.
# Soy usuario de Firefox, así que no tengo el juego Dino,
# Aquí estoy usando chromedino.com para jugar.
time.sleep (6) #da un poco de tiempo para abrir y configurar todo.
print ("All sett :)")

ser =serial.Serial ('COM4 ') #Actualice con su arduino [puerto]
ser.baudrate =' 9600 '#set baudRate

while True:# bucle.
h1 =ser.readline () #leyendo datos en serie.
if h1:
ss =int (h1.decode ('utf-8')) # decodifica y crea un valor int
if ss ==1:# true while obstacle.
print ("Oh: pyautogui.press ('up') #Auto presiona la tecla [UP]

Ejecute su código de Python y coloque su LDR en el lugar apropiado mediante el método de prueba y error . Sí !!! El juego automatizado de Dino está listo.💃 🕺

Puede pasar al siguiente nivel utilizando otro LDR para detectar aves también.

Repositorio de GitHub:https://github.com/rafitc/arduDino

Video de YouTube

Código

  • Fragmento de código n. ° 1
  • Fragmento de código n. ° 2
Fragmento de código n. ° 1 Arduino
 // ¡Arduino Dino Game! :) int sensorPin =A0; // Conectar LDR en A0 int sensorValue =0; // variable para almacenar el valor procedente de LDRintresholdValue =43; // este depende de su método de prueba y error. configuración vacía () {Serial.begin (9600); // La serie comienza en 9600} void loop () {// lee el valor del sensor:sensorValue =analogRead (sensorPin); // leer datos del sensor //Serial.println(sensorValue); // descomenta esto mientras lo usas por primera vez y toma tu umbralValue y configúralo. if (sensorValue <=resholdValue) {// if condición para detectar obstáculo. Serial.println (1); // Impresión en serie si la condición es verdadera. } Retraso (50); // demora 50 ms} 
Fragmento de código n. ° 2 Python
 import subprocess import timeimport pyautoguiimport serialsubprocess.call ([r'C:\ Archivos de programa \ Mozilla Firefox \ Firefox.exe ', #Añadir la ruta de Google Chrome para los usuarios de Chrome.' -new-tab ',' https:// chromedino.com/ ']) #para abrir el navegador y abrir el juego Dino. # Soy usuario de Firefox, así que no tengo el juego Dino, # Aquí estoy usando chromedino.com para jugar. time.sleep (6) #da un poco de tiempo para abrir y configurar all.print ("All sett :)") ser =serial.Serial ('COM4') #Actualiza con tu arduino [puerto] ser.baudrate ='9600 '#Set baudRate while True:# bucle. h1 =ser.readline () #leyendo datos seriales. if h1:ss =int (h1.decode ('utf-8')) # decodifica y crea un valor int if ss ==1:# true while obstacle. print ("Oh: 
Github
Enlace de repositorio de GitHUb https://github.com/rafitc/arduDino

Esquemas


Proceso de manufactura

  1. Hacer Monitor Ambilight usando Arduino
  2. Consola de juegos portátil TeleBall
  3. Juego Arduino Pong - Pantalla OLED
  4. Controlador de juego Arduino
  5. Tirador de Lego automatizado
  6. Arduino Touch Breakout Game
  7. Voltímetro de bricolaje con Arduino y un teléfono inteligente
  8. Monitor de frecuencia cardíaca con IoT
  9. WebServerBlink usando Arduino Uno WiFi
  10. Pixel Chaser Game
  11. Radio FM usando Arduino y RDA8057M