Jogo Dino automatizado usando arduino
Componentes e suprimentos
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Sobre este projeto
AF entediado, durante este tempo de quarentena? 🥴

Vamos jogar o jogo Google Chrome Dino ...;)

Mas, o que fazer se o jogo Dino ficar chato também.
Vamos automatizar o jogo Dino😉.
Então, precisamos de um Arduino e LDR . Pouco conhecimento em python é também necessário.
Vamos primeiro configurar nosso Arduino .

Conecte o Arduino UNO com o LDR. (Não se esqueça de adicionar resistor)

Em seguida, carregue o código para ler o valor LDR analógico.
// Jogo Arduino Dino! :)
int sensorPin =A0; // Conecte o LDR em A0
int sensorValue =0; // variável para armazenar o valor proveniente do LDR
int thresholdValue =45; // este depende do seu método de tentativa e erro.
configuração vazia () {
Serial.begin (9600); // Serial começa em 9600
}
void loop () {
// lê o valor do sensor:
sensorValue =analogRead (sensorPin); // lê os dados do sensor
//Serial.println(sensorValue); // descomente enquanto primeiro usa e pega seu thresholdValue e set.
if (sensorValue <=thresholdValue) {// se condição para detectar obstáculo.
Serial.println (1); // Impressão serial se a condição for verdadeira.
}
atraso (40); // atrasar 50ms
}
Corrija seu LDR no monitor, leia analogValues quando um obstáculo está presente. defina esse valor como thresholdValue e atualize sua condição if . Yesssss !!!!! ✌️ Agora a parte do Arduino acabou.
Você pode adicionar um servo motor para pressionar a 'barra de espaço' para fazer Dino pular. Mas agora é hora de quarentena. Então, eu não tenho como obter servo motor. Então, aqui estou usando o código Python para fazer esta tarefa.
Então, vamos codificar em python;)

Copie e cole o código Python, faça as alterações apropriadas.
No código, estamos usando pyserial módulo para ler dados seriais. Em seguida, para pressionar o botão para cima usando PyAutoGUI módulo.
import subprocess
import time
import pyautogui
import serial
subprocess.call ([r'C:\ Program Files \ Mozilla Firefox \ Firefox.exe ' ,
'-new-tab', 'https://chromedino.com/'])
#Adicione o caminho do Google Chrome para usuários do Chrome.
#para abrir o navegador e o jogo Dino.
# Sou um usuário do Firefox, então, não tenho o jogo Dino,
#Aqui estou usando chromedino.com para jogar.
time.sleep (6) #dê algum tempo para abrir e configurar tudo.
print ("All set :)")
ser =serial.Serial ('COM4 ') #Atualize com seu arduino [porta]
ser.baudrate =' 9600 '#set baudRate
enquanto True:# looping.
h1 =ser.readline () #reading dados seriais.
if h1:
ss =int (h1.decode ('utf-8')) # decodifique e faça um valor int
if ss ==1:# true while obstacle.
print ("Oh: pyautogui.press ('para cima') # Pressione automaticamente a tecla [PARA CIMA]
Execute seu código Python e ajuste seu LDR no lugar apropriado pelo método de tentativa e erro. Sim !!! O jogo Dino automatizado está pronto.💃 🕺

Você pode chegar ao próximo nível usando outro LDR para detectar pássaros tb.
GitHub Repo:https://github.com/rafitc/arduDino
Vídeo do youtube
Código
- Snippet de código # 1
- Snippet de código # 2
Snippet de código # 1 Arduino
// Jogo Arduino Dino! :) int sensorPin =A0; // Conecte o LDR em A0 int sensorValue =0; // variável para armazenar o valor proveniente de LDRint thresholdValue =43; // este depende do seu método de tentativa e erro. void setup () {Serial.begin (9600); // Serial begin on 9600} void loop () {// ler o valor do sensor:sensorValue =analogRead (sensorPin); // ler os dados do sensor //Serial.println(sensorValue); // descomente enquanto primeiro usa e pega seu thresholdValue e set. if (sensorValue <=thresholdValue) {// se condição para detectar obstáculo. Serial.println (1); // Impressão serial se a condição for verdadeira. } Atraso (50); // atrasar 50ms}
Snippet de código # 2 Python
import subprocess import timeimport pyautoguiimport serialsubprocess.call ([r'C:\ Program Files \ Mozilla Firefox \ Firefox.exe ', #Add google chrome path for chrome users.' -new-tab ',' https:// chromedino.com/ ']) #para abrir o navegador e o jogo Dino. # Sou um usuário do firefox, então não tenho o jogo Dino, #Aqui estou usando o chromedino.com para jogar. time.sleep (6) #dê um pouco de tempo para abrir e configurar all.print ("All set :)") ser =serial.Serial ('COM4') #Atualize com seu arduino [porta] ser.baudrate ='9600 '#Set baudRatewhile True:# looping. h1 =ser.readline () #reading dados seriais. if h1:ss =int (h1.decode ('utf-8')) # decodifique e faça um valor int se ss ==1:# verdadeiro enquanto obstáculo. print ("Oh:Github
Link do repositório GitHUb https://github.com/rafitc/arduDino
Esquemas

Processo de manufatura
- Faça Monitor Ambilight usando Arduino
- Console de jogo portátil TeleBall Retro
- Jogo Arduino Pong - Tela OLED
- Controlador de jogo Arduino
- Lego Shooter automatizado
- Jogo Arduino Touch Breakout
- Faça você mesmo voltímetro usando Arduino e Smartphone
- Monitor de freqüência cardíaca usando IoT
- WebServerBlink usando Arduino Uno WiFi
- Jogo Pixel Chaser