Arduino es muy popular para construir juegos y proyectos de pasatiempos, y anteriormente hemos usado Arduino para construir juegos de serpientes, juegos de ping pong, juegos de carreras espaciales, etc. Hoy estamos construyendo un juego más popular usando Arduino- Buzz wire game o Steady hand..
Para este proyecto, usaremos un Arduino Uno, Buzzer y dos cables de Aluminio. También se interconecta una pantalla LCD de 16x2 para mostrar el estado del juego. Ambos extremos del cable del laberinto se conectarán al pin digital 2 y 3 de Arduino, y el cable del mango se conectará al pin de tierra de Arduino. Los pines digitales se definen como pines INPUT_PULLUP. Entonces, cuando el cable del mango toca el cable del laberinto, cambia el estado de los pines digitales a bajo y el zumbador emite un sonido.
Un diodo está conectado al final del cable del laberinto, por lo que cuando pasa a ese diodo y toca el cable del laberinto con el cable del mango redondo, solo un pin (Pin 3) bajará. En esa condición, se mostrará un texto de felicitación (Bien hecho) en la pantalla LCD.
Componentes requeridos
- Arduino Uno
- Alambre de Aluminio
- LCD de 16x2
- Módulo I 2 C
- Tablero de circuitos
- Zumbador
- Diodo
Diagrama de circuito
El diagrama de circuito para Arduino Buzz Wire Game se muestra arriba. Los pines SCL y SDA del módulo I2C están conectados a los pines A5 y A4 de Arduino, mientras que los pines V CC y GND del módulo I2C están conectados a los pines 5V y GND de Arduino. El riel positivo de Buzzer está conectado al pin digital 4 de Arduino y el riel negativo está conectado a GND. Corta un alambre de aluminio y dóblalo en forma de Zig-Zag. Suelde un diodo en un extremo del cable. Luego corte otro alambre para hacer un mango y doble un extremo en un lazo.
La pantalla LCD de 16x2 también se puede conectar con Arduino sin usar un módulo I2C.
Conecte los pines D2 y D3 de Arduino a ambos extremos del cable Zig-Zag y conecte el cable del mango al pin GND de Arduino.
Explicación del código
El código completo para este Arduino Buzz Wire Game se proporciona al final del documento.
Inicie su código incluyendo el archivo de biblioteca para el módulo LCD. La biblioteca LiquidCrystal_I2C.h se utiliza para la comunicación I2C entre los módulos Arduino y LCD.
#incluir
Después de eso, defina los pines de Arduino para el zumbador, el punto de inicio del cable y el punto final del cable.
const int startPin = 2; const int endPin = 3; const int zumbador = 4;
Luego defina dos variables start y end_. Estas variables se utilizarán para guardar las lecturas de cable.
int inicio, final_;
Ahora defina el pin del zumbador como salida y los pines del cable como INPUT_PULLUP . Arduino tiene resistencias pull-up internas con un valor de alrededor de 20k ohmios. Estas resistencias se pueden conectar internamente usando INPUT_PULLUP . Definir un INPUT_PULLUP es funcionalmente lo mismo que conectar una resistencia de ~ 20k ohmios entre el pin y + 5V.
pinMode (zumbador, SALIDA); pinMode (startPin, INPUT_PULLUP); pinMode (startPin, INPUT_PULLUP);
Dentro del bucle vacío, lea el estado de los pines del cable.
start = digitalRead (startPin); end_ = digitalRead (endPin);
Ahora compare las lecturas de los pines de los cables. Si ambos pines están bajos, significa que ha tocado el cable para que el zumbador emita un sonido, y si el pin de inicio del cable es alto y el pin final es bajo, eso significa que alcanzó el punto final.
if (inicio == BAJO && final _ == BAJO) {digitalWrite (zumbador, ALTO); retraso (1000); digitalWrite (zumbador, BAJO); lcd.setCursor (0,0); lcd.print ("Inténtelo de nuevo"); Serial.print ("Intentar de nuevo"); } else if (inicio == HIGH && end _ == LOW) {lcd.setCursor (0,0); lcd.print ("Bien hecho"); Serial.print ("Bien hecho"); }
Probando el juego Buzz Wire
Después de conectar el hardware y cargar el código dado, puede comenzar a jugar. Así que sostenga el cable con un círculo en su mano e intente pasar el cable con el círculo hasta el diodo soldado con cable en zig-zag sin dejar que el cable redondo toque en ninguna parte. Si toca los cables, el zumbador emitirá un sonido y la pantalla LCD mostrará " Inténtelo de nuevo ". Y si completas el juego sin tocar el cable, aparecerá " Bien hecho ".
Así es como puedes hacer un juego Buzz Wire con un Arduino. A continuación, se muestra un video funcional y un código completo.