Arduino Marble Maze Labyrinth
Componentes y suministros
![]() |
| × | 1 | |||
![]() |
| × | 2 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
Herramientas y máquinas necesarias
![]() |
| |||
|
Aplicaciones y servicios en línea
![]() |
|
Acerca de este proyecto
Te muestro cómo hacer un juego de mesa Marble Maze Labyrinth controlado por Arduino que es súper fácil y divertido de hacer. Y la mejor parte es que está hecho de cartón.
La idea del juego es navegar por la canica a través del laberinto para llegar al portal al final y ganar el juego.
Por supuesto que hay muchas ideas para mejorar este juego y hacerlo más divertido, como pudding de algunos sensores al final, zumbador para reproducir un tono cuando se juega o incluso pellizcar algunos agujeros en el propio laberinto.
La idea
Me aburrí de los juegos electrónicos y dije que buscara sobre los juegos de habilidad física, así que encontré el Laberinto y me gustó.
¿Qué es el Laberinto ?
Laberinto es un juego de habilidad física que consta de una caja con un laberinto en la parte superior con agujeros y una canica de acero. El objetivo del juego es intentar inclinar el campo de juego para guiar la canica hasta el final del laberinto, sin dejar que caiga por ninguno de los agujeros. Algunas versiones del juego cuentan con una superficie de laberinto suspendido que gira sobre dos ejes, cada uno de los cuales está controlado por una perilla. Se venden pequeñas versiones portátiles del juego, con la caja completamente cerrada con una tapa transparente en la parte superior. El juego fue desarrollado por BRIO en Suecia y se lanzó por primera vez allí en 1946.
Diseño

Empecé a diseñar mi propio laberinto Labyrinth usando Sketch Up Pro para imaginar cómo se vería este juego. Y tuve cuidado de darle el tamaño adecuado y hacerlo bastante fácil porque los niños también pueden comenzar a construir su propio laberinto.
Los archivos de diseño están disponibles para descargar para hacer tu propio juego de cartón en solo 1 hora.
Herramientas y materiales
· Cartón 3 mm
· Pegamento caliente
· Cuchillo de hoja afilada
· Gobernante
· Lápiz
Componentes
Arduino (cualquier tipo de placa)
Mini tabla de pan
Cables de puente
Servomotor 2X 9g
Módulo de joystick
2 tornillos y tuercas de 12 mm por 3 mm
Recorta la forma






Imprime el archivo adjunto y sigue las siguientes instrucciones para cortar el cartón:
1. Recorta un cuadrado de 20 cm por 20 cm para la base del laberinto.
2. Recorte dos trapecios isósceles de 14 cm por 16 cm para los lados del laberinto.
3. Haga un agujero rectangular en una de estas dos piezas para el servomotor (eje X).
4. Taladre un orificio de 3 mm en la otra pieza en el centro exacto para que esté contra el eje del servo en el otro lado (eje X).
5. A continuación, deberá recortar cuatro rectángulos de 14 cm por 4 cm para el soporte en el interior del laberinto.
6. Taladre un orificio de 3 mm en la otra pieza en el centro exacto para que esté contra el eje del servo en el otro lado (eje Y).
7. Haga un agujero rectangular en el medio como se muestra en una de estas cuatro piezas para el servomotor (eje Y).
8. Elija su propio laberinto de los archivos adjuntos en el artículo, luego recorte un cuadrado de 12 cm por 12 cm para el laberinto.
9. Consejo * Pega el laberinto de papel para que te sirva de guía.
10. Deberá recortar al menos ocho rectángulos de 1,5 cm por 12 cm para las paredes de su laberinto. A continuación, deberá cortarlos para que tengan el tamaño correcto y puedan caber en su laberinto.
11. Siga las líneas de guía y luego pegue las piezas en su lugar para convertirse en la pared del laberinto.
12. Pegue los servomotores en su lugar como se muestra.
13. Pegue la bocina del servomotor en las piezas rectangulares.

Cableado
Conecte los cables de los servos y el joystick como se muestra
Pin 8 de Arduino al cable amarillo en el servo 1 (eje X)
Pin 9 de Arduino al cable amarillo en el servo 1 (eje Y)
Cables rojo y marrón a la placa de pruebas.
Pin A0 de Arduino a pin VRx de Joystick
Pin A1 de Arduino a pin VRy de Joystick
Joystick VCC y GND a la placa de pruebas.
Arduino 5V y GND a protoboard.
Código
Conectó su placa Arduino a la PC usando su cable USB.
Abra Arduino IED
Copie y pegue el código en un nuevo boceto
Asegúrese del nombre del puerto serie haciendo clic en el menú Herramientas> tablero> elija el puerto serie activo
Haga clic en el botón circular superior para cargar el código.
Una vez que haya terminado con el mensaje, estará listo para comenzar.
Código
- controlar el laberinto con joystick
controlar laberinto con joystick Arduino
#includeServo myServoX; // definir el servomotor para el eje X Servo myServoY; // definir el servomotor para el eje Y int ServoXPin =8; // define el pinint del eje X ServoYPin =9; // definir pinint del eje Y ServoXHomePos =90; // establece la posición inicial para servosint ServoYHomePos =90; int ServoXPos =103; int ServoYPos =135; int XAxlePin =A0; // definir el control de pin del eje X para el joystick A0int YAxlePin =A1; // definir el control de pin del eje Y para el joystick A1int XAxleValue =0; // establece el valor de inicio para el joystickint YAxleValue =0; int Direction =0; int range =12; // rango de salida del movimiento X o Y en el centro =rango / 2; // valor de la posición de reposo en el umbral =rango / 4; // configuración de vacío umbral de reposo () {myServoX.attach (ServoXPin); // adjuntando servo X myServoY.attach (ServoYPin); // adjuntar el servo YServoXPos =ServoXHomePos; // actualiza ServoXPos con la posición inicial como startupServoYPos =ServoYHomePos; // actualizar ServoYPos con la posición de inicio como startupmyServoX.write (ServoXPos); myServoY.write (ServoYPos); Serial.begin (9600);} void loop () {XAxleValue =readAxis (XAxlePin); YAxleValue =readAxis (YAxlePin) .print (XAxleValue, DEC); Serial.print ("-"); Serial.println (YAxleValue, DEC); // verifica los valores del joystick y mueve los servos suavemente con un retardo de 100 milisegundos si (XAxleValue> 0) {ServoXPos ++; myServoX.write (ServoXPos); retraso (100 * (7-XAxleValue)); } si (XAxleValue <0) {ServoXPos--; myServoX.write (ServoXPos); retraso (100 * (7 + XAxleValue)); } si (YAxleValue> 0) {ServoYPos ++; myServoY.write (ServoYPos); retraso (100 * (7-YAxleValue)); } si (YAxleValue <0) {ServoYPos--; myServoY.write (ServoYPos); retraso (100 * (7 + YAxleValue)); } si (ServoXPos> ServoXHomePos + 20) {ServoXPos =ServoXHomePos + 20; } si (ServoXPos ServoYHomePos + 20) {ServoYPos =ServoYHomePos + 20; } si (ServoYPos Piezas y carcasas personalizadas
Esquemas
![]()
Proceso de manufactura
- TinyML-Language Detector basado en Edge Impulse y Arduino
- Juego de giroscopio Arduino con MPU-6050
- Dados digitales Arduino
- Iron Man
- Encuéntrame
- Control del humidificador Arduino
- Sonda usando arduino y visualización en procesamiento IDE
- MobBob:Robot Arduino DIY controlado por un teléfono inteligente Android
- Luz de escritorio reactiva de audio Arduino
- NeoMatrix Arduino Pong
- Joystick de Arduino