Tabla de contenido:
- Paso 1: Materiales
- Paso 2: el rompecabezas
- Paso 3: el cableado
- Paso 4: el código
- Paso 5: el estuche y pintura de los bloques
- Paso 6: ¿Alguna pregunta?
Video: Rompecabezas basado en colores: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
¡Hola!
Para un proyecto escolar llamado "If This Then That", tuve que construir un objeto interactivo usando Arduino. Decidí construir un rompecabezas basado en colores con un sistema de retroalimentación simple.
Qué hace (en resumen):
- Determina el color del objeto sobre el sensor de color.
- Comprueba si ese color coincide con la solución correcta.
- O levanta el letrero de "moriste" o no, dependiendo del tiempo en que se resolvió o no el rompecabezas.
Entonces, ¿podrías pensar que este rompecabezas es fácil de resolver?
Bueno, para alguien que sabe cómo funciona, es algo así, ¡aunque puede cambiar la solución! Pero no se preocupe, para alguien que no tiene ni idea de cómo funciona, parece magia. En mi experiencia, mucha gente pensó que el rompecabezas era sobre el peso, no sobre el color. Y, sin olvidar, eres el maestro del rompecabezas, la cantidad de pistas que das depende de ti.
Cómo (me gustaría) usarlo:
Me gustaría utilizar este rompecabezas como parte interactiva de mi campaña de D&D.
Paso 1: Materiales
Necesitará las siguientes cosas antes de que pueda comenzar a construir:
En general:
Un cerebro (creativo) para idear un rompecabezas
Cosas de Arduino:
- Arduino Uno
- Tablero de circuitos
- Un servomotor
- (TCS3200) Sensor de color
- 7x cables de puente macho - hembra (preferiblemente de todos los colores diferentes, muy recomendable)
- 11x Macho - Cables de puente macho
- powerbank (en caso de que desee que funcione sin su computadora / computadora portátil)
Caja:
- Una caja (de zapatos) con tapa (para construir el rompecabezas)
- un par de cartulinas (para hacer las paredes, pilar en el medio y letrero de moriste)
- Bloques de madera, (al menos) un lado debe ser más grande que el sensor de color.
- pintura: negro, rojo, azul y verde (y cualquier color adicional si lo desea *)
- Hoja A4 de papel blanco
- Tijeras
- Un marcador negro
- Cinta adhesiva de doble cara resistente
- Un lápiz
- Pegamento instantáneo
- Cuchillo de cocina o cuchillo Stanley
* pequeña nota al margen sobre los colores: inicialmente también usé púrpura, pero el sensor no podía distinguir el rojo y el púrpura, así que lo dejé fuera. Tenga en cuenta que es posible que otros colores tampoco funcionen tan bien (pero es posible que lo hagan, no lo he probado). Mi sensor era barato, un sensor más preciso probablemente pueda distinguir más colores.
Paso 2: el rompecabezas
La parte más importante de este proyecto es tener un buen rompecabezas para romper el cerebro.
Como puede ver en la primera imagen (la que tiene la introducción), pinté runas nórdicas en mis bloques (en todos los lados excepto en la parte inferior). Tienen que ver con el rompecabezas. Luego pegué una pregunta simple en el caso: "¿La verdadera riqueza es …?".
Usé la imagen de arriba para traducir las runas. También les di las traducciones a las personas que estaban probando mi rompecabezas.
La solución al rompecabezas:
¡La verdadera riqueza es la felicidad!
Entonces, lo que el jugador debe hacer es reemplazar el tesoro (bloque con el símbolo de riqueza) con el bloque con el símbolo de felicidad.
Siéntete libre de usar mi rompecabezas, pero te animo a que inventes el tuyo propio.
Paso 3: el cableado
El cableado es bastante simple ya que solo hay 2 componentes (y el arduino). En la descripción utilizo el número mínimo de cables, si desea utilizar más, no dude en hacerlo. (Usé más cables en la imagen)
Arduino a la placa de pruebas: (Utilice 2 cables macho - macho)
- conecte el pin de 5V al lado + de su tablero.
- conecte una de las clavijas de tierra al lado - de su tablero.
El servo: (Utilice 3 cables macho - macho)
el servo tiene tres cables: alimentación, tierra y señal.
- La energía es típicamente un cable rojo, conecte este cable al lado + de su tablero.
- La tierra es típicamente un cable negro o marrón, conecte este cable al lado - de su tablero.
- La señal es típicamente un cable amarillo o naranja, conecte este cable a una fila horizontal en su tablero. *
El sensor de color: (Utilice 7 cables macho - hembra)
- VCC: conecte este cable al lado + de su placa de pruebas (esto es energía).
- GND: conecte este cable al lado - de su tablero (esto es tierra).
- S0: conecte este cable a una fila horizontal en su tablero. *
- S1: conecte este cable a una fila horizontal en su tablero. *
- S2: conecte este cable a una fila horizontal en su tablero. *
- S3: conecte este cable a una fila horizontal en su tablero. *
- HACIA FUERA: conecte este cable a una fila horizontal en su tablero. *
* No te estoy diciendo exactamente dónde fijarlo en la placa de pruebas porque es más fácil descubrir por ti mismo qué es lo mejor en combinación con tu construcción.
Protoboard a Arduino: ** (Utilice 6 cables macho - macho)
Es inteligente ver si todo funciona antes de colocarlo en el estuche, tenga en cuenta que para hacer eso debe quitar estos cables y volver a colocarlos más tarde. Asegúrese de recordar o anotar qué cable está conectado a qué.
- conecte la fila que conectó al pin de señal del servo al pin 9 en el Arduino.
- conecte la fila que conectó al pin S0 del sensor de color al pin 4 en el Arduino.
- conecte la fila que conectó al pin S1 del sensor de color al pin 5 en el Arduino.
- conecte la fila que conectó al pin S2 del sensor de color al pin 6 en el Arduino.
- conecte la fila que conectó al pin S3 del sensor de color al pin 7 en el Arduino.
- conecte la fila que conectó al pin OUT del sensor de color al pin 8 en el Arduino.
** las filas a las que me refiero arriba aquí son las que están en su tablero.
Paso 4: el código
En el adjunto aquí encontrará el código que necesita para ejecutar este proyecto. Los comentarios en el código deben ser claros sobre lo que hace. Si desea obtener información más detallada sobre cómo funciona el sensor de color (si desea comprender completamente el código), le recomiendo que consulte estos tutoriales "¿Cómo funciona el sensor?" sección.
Aunque aún no lo ha hecho, hay un par de cosas que debe ajustar en el código:
- Ajusta las variables.
- Ajusta las declaraciones if para que se ajusten a tu acertijo (si es necesario).
Es útil hacer el pilar y pintar los bloques del siguiente paso antes de ajustar las variables para no tener que volver a hacerlo.
Ajustar las variables:
Si construyó el cableado correctamente, el código debería funcionar, tome una hoja de papel, un bolígrafo y los bloques (pintados). *
- Comente temporalmente la función void checkRiddle fuera del código. (para que esa parte no corra)
- Sube el código a tu Arduino.
- Abra el monitor serial, comenzará a ejecutarse y le mostrará R =… G =… B =… (y algunas cosas más, ya no importan)
- Sostenga un bloque de color justo en frente del sensor (tan cerca como estará en su diseño final) durante un par de segundos.
- Mientras lo sostiene frente al sensor, apague su Arduino. (sáquelo del puerto usb)
- Anote los valores externos (más alto y más bajo) que el sensor de color midió en cada color (R, G y B).
- Elija los dos valores que varíen menos (por ejemplo, R y B). **
- Cuente +10 en el valor más alto y -10 en el valor más bajo para que el sensor pueda cometer pequeños errores.
- Ahora reemplace los valores en el código con los que tiene ahora. (Un comentario dice qué valores debe reemplazar)
- Si está usando un color diferente al mío, cambie también el serial.print.
- Ahora vuelva a cargar el código en su Arduino con sus valores recién medidos.
- Pruebe si el monitor serial imprime bien el color que acaba de poner en el código sosteniendo el mismo bloque de color frente a él. Asegúrese de que sea consistente siempre que lo sostenga frente al sensor.
- Si no:: (verifique los valores, vea si necesita hacer el rango más grande. Si es así::) el código ahora reconoce este color.
- Ahora repita este proceso (paso 4 - 13) hasta que todos los colores que desee utilizar estén integrados en el código.
- ¡No olvide descomentar la función void checkRiddle!
* Vaya primero al paso "el caso" si aún no los ha pintado.
** puede ser más preciso si lo desea utilizando los 3 (R, G y B), pero para este proyecto no es necesario.
Ajusta las declaraciones if a tu acertijo: (solo si quieres cambiar la solución)
Paso 5: el estuche y pintura de los bloques
El caso es una parte algo complicada pero no es difícil de hacer, se trata principalmente de tener las medidas correctas. No estoy dando mis medidas porque (lo más probable) no estamos usando materiales del mismo tamaño.
Pintar los bloques:
Pinta los bloques con los colores que quieras usar. Recomiendo rojo, verde y azul porque es más fácil distinguir los que tienen el sensor.
Si no está haciendo su propia pintura de rompecabezas en las runas, también.
El pilar:
El pilar es para ocultar (parcialmente) el sensor de color y los cables conectados a él. Para determinar las medidas del pilar, debe medir los lados de su sensor de color y determinar qué tan alto desea que sea su pilar (el que ver en la foto es de 3 cm de alto). Luego dibuja eso en cartón y recórtalo, puedes pintarlos si quieres.
Conecte los cables al sensor ANTES de montarlo en el pilar, ya no podrá alcanzar los pines.
Usé la cinta adhesiva de doble cara para sujetar el sensor dentro del pilar. Puedes ver esto en la tercera imagen.
Asegúrese de que los leds del sensor estén dentro del pilar (no sobre el borde), los bloques deben pararse sobre él más tarde.
El letrero de "moriste":
Corta un trozo de cartón y escribe "moriste" en él. Como puede ver en la primera imagen, pegué una foto de un hombre enojado con una espada en el otro lado. Asegúrese de que el letrero tenga una lengüeta en la parte inferior. Use la lengüeta para pegar el letrero al servo.
Creando la habitación:
- Pinta la caja que elegiste para el estuche. (Cualquier color que te guste, usé negro)
- Dibuja la forma de la habitación en la parte inferior de la caja para determinar la longitud de las paredes. (Mida las líneas con una regla).
- Determina qué altura quieres que tengan las paredes. Las paredes en mi ejemplo tienen 5 centímetros de altura.
- Ahora que tienes las dimensiones de tus paredes, dibujalas en el cartón y recórtalas.
- Pinta las paredes. (Los pinté de negro)
- Pega las paredes a la caja, siguiendo las líneas que dibujaste antes.
Ahora tiene la habitación configurada.
Agujeros para los cables y el letrero:
Necesita hacer dos agujeros en la caja, uno para los cables y otro para el letrero de "usted murió". y ten cuidado! los agujeros no se pueden quitar una vez que están allí.
Haga un agujero debajo del lugar donde desea que vaya el sensor de color. Haga el agujero lo más pequeño posible pero evite tensar los cables, no quiere que se suelten.
El agujero para el letrero de "usted murió" debe ser un poco más grueso que el cartón que está usando para que pueda salir sin golpear la caja. La longitud del agujero depende de qué tan grande sea el letrero. Use un cuchillo Stanley o un cuchillo de cocina para hacer el agujero.
Ahora use la cinta de doble cara para sujetar el servomotor al costado de la caja.
Paso 6: ¿Alguna pregunta?
Así que ahora deberías poder construir un asombroso rompecabezas basado en colores con Arduino. Si tiene alguna pregunta, ¡asegúrese de hacerla!
¡Diviértete construyendo!
Recomendado:
Juego de rompecabezas de memoria usando un BBC MicroBit: 7 pasos
Juego de rompecabezas de memoria usando un BBC MicroBit: si no sabes qué es un BBC MicroBit, es básicamente un dispositivo muy pequeño que puedes programar para que tenga entradas y salidas. Algo como un Arduino, pero más desarrollado. Lo que realmente me encantó del MicroBit fue que tiene dos entradas b integradas
Despertador de rompecabezas de memoria: 3 pasos (con imágenes)
Memory Puzzle Alarm Clock: ¡Este es un Alarm Puzzle Clock, lo que significa que hay un pequeño juego de memoria que tienes que resolver para dejar de sonar la alarma! Como resumen, este reloj es para quien está siendo elegante por las mañanas. Tiene 3 leds que al presionar cualquiera de los botones, la alarma será
Juego de descifrar el código, caja de rompecabezas basada en Arduino: 4 pasos (con imágenes)
Juego de descifrar el código, caja de rompecabezas basada en Arduino: en este Instructable, te mostraré cómo construir tu propio juego de descifrar el código en el que usas un dial codificador giratorio para adivinar el código generado aleatoriamente en la caja fuerte. Hay 8 LED en la parte frontal de la caja fuerte para indicarle cuántos de los
Termómetro infrarrojo sin contacto basado en Arduino - Termómetro basado en infrarrojos con Arduino: 4 pasos
Termómetro infrarrojo sin contacto basado en Arduino | Termómetro basado en infrarrojos con Arduino: Hola chicos, en este instructivo, haremos un termómetro sin contacto con arduino, ya que a veces la temperatura del líquido / sólido es demasiado alta o demasiado baja y luego es difícil hacer contacto con él y leer su temperatura entonces en ese escenario
Generador de música basado en el clima (generador Midi basado en ESP8266): 4 pasos (con imágenes)
Generador de música basado en el clima (Generador Midi basado en ESP8266): Hola, hoy explicaré cómo hacer tu propio generador de música basado en el clima. Está basado en un ESP8266, que es como un Arduino, y responde a la temperatura, la lluvia y la intensidad de la luz. No espere que haga canciones completas o programas de acordes