Cov txheej txheem:

MIDI Kauj Ruam Interface (hloov pauv En Español): 12 Cov Kauj Ruam
MIDI Kauj Ruam Interface (hloov pauv En Español): 12 Cov Kauj Ruam

Video: MIDI Kauj Ruam Interface (hloov pauv En Español): 12 Cov Kauj Ruam

Video: MIDI Kauj Ruam Interface (hloov pauv En Español): 12 Cov Kauj Ruam
Video: 5-дневное путешествие на поезде через 3 000 км на север и юг Японии по очень низкой цене. (Кюсю) 2024, Hlis ntuj nqeg
Anonim
Image
Image
Daws teeb meem Y Fabricar La Estructura
Daws teeb meem Y Fabricar La Estructura

Versión en inglés aquí.

En este instructable te mostraremos cómo hacer una plataforma interactiva de luz y sonido, que puede ser usada para jugar el famoso “Simon Says” al igual que como un controlador MIDI. Ambos modos operados con los pies!

Antecedentes

El proyecto nació por la idea de hacer una pieza interactiva con la que el público pudiera divertirse sin importar su edad, tanto para niños como para adultos. Y se hizo para un centro comercial, como parte de las atracciones que ofrece en sus instalaciones.

La primer referencia que recibimos por parte del cliente es una versión del Simon Says para tocar con los píes, básicamente teníamos que replicar algo así.

Nos dimos la la tarea de buscar otros tipos de plataforma, entre las que abundaban las pistas de baile, que en su mayoría trabajan con la luz, pero no con el sonido. En esta búsqueda también nos topamos con los pianos de gran formato para píes, y nos pareció buena lub tswv yim hacer una plataforma que no solo fuera para jugar Simon Says, sino también para usarlo como instrumento musicalo. Los ntawm txoj kev mus rau lub suab paj nruag!

Otro namo que consideramos fue la forma de la plataforma. Todas las pistas de baile que vimos son rectangulares, con pads cuadrados, excepción de una que tenía pawm circulares. Queríamos desde un inicio trabajar con una forma diferente, que fuera llamativa visualmente y modular al mismo tiempo. Los hexágonos fueron la respuesta.

Al buscar formas hexagonales, lo más cercano que encontramos fue este proyecto. La idea de hacer hexágonos nos emocionaba cada vez más… Tsis muaj teníamos lub tswv yim de lo que muag khoom después.

Teníamos ya un objetivo cada vez más claro: Una plataforma interactiva de luz y sonido que:

  • Simon hais tias
  • Funcionara como instrumento suab paj nruag
  • Tuviera pads hexagonales

Kauj Ruam 1: Cov ntaub ntawv

Generales:

  • 1) LattePanda
  • 1) Gabinete rau LattePanda
  • 1) Eliminador 5 VDC rau 2.5A micro usb
  • 1) Kev tiv thaiv
  • 1) Multiplexor de 16 canales
  • 10) Resistors ntawm 10k ohms
  • 1) Fuente de voltaje 5 VDC rau 50 A
  • 5) Regletas de conectores de tornillo
  • Cinchos
  • Sujeta cinchos
  • Velcro
  • Cinta doble zoo
  • 1) Altavoz activo de alta potencia
  • 1) Cable pabcuam 3.5 hli
  • 1) Gabinete kev lag luam

Por ncoo:

  • 1.5) Metro de tira Neopixel de 96 LEDs
  • 1) Interruptor de límite industrial
  • 1) Hexágono de acrílico opalino de 1 cm
  • 1) Hexágono de trovicel de 6 hli
  • 1) Estructura de PTR
  • Velcro
  • Silicón
  • 5 kab
  • Kablia 3 v
  • Cable 2 nyob rau hauv
  • Termofil

Kauj Ruam 2: Elegir La Tarjeta Que Controle Todo El Sistema

Arduino es, por antonomasia, la tarjeta de desarrollo que hemos ocupado desde hace varios años. Nunca nos ha fallado, sin embargo, es necesario detenerse un poco a pensar qué namos técnicos debemos cubrir para nuestro proyecto:

  • Luz: Requerimos iluminar los los pawm con alto brillo y con patrones complejos, para ello pensamos usar Neopixeles.
  • Pads: Los pawm deben deben responder a la pisada del usuario, lo más fácil para esto tub cuam tshuam.
  • Juego: Esto se refiere a la dinámica del juego, que debe ser programada y procesada por algún microcontrolador.
  • Sonido: En un inicio, teniamos pensado diseñar nuestros propios sonidos en Pure Data, por lo tanto requeríamos una computadora que corriera dicho programa.

M ads adelante se profundiza en estos namos, mientras tanto, la parte que nos mantenía en duda, era la del sonido.

Consideramos siv Pure Data, porque si bien con Arduino se pueden generar algunos sonidos, es limitado y complejo, mientras que con PD se puede hacer síntesis o bien un patch para activar sonidos vía MIDI. Yog xav tau entonces, una computadora para correr Pure Data, y Arduino para controlar lo demás.

Comenzamos a sondear qué computadora usar, y nos gustó lo que ofrecía LattePanda: una computadora con Windows 10 con una tarjeta Arduino incorporada. Bingo!

LattePanda tiene un puerto GPIO en el que se encuentran mapeados los pines de un Arduino, través de los cuales podriamos manejar los cuam tshuam los ntawm cov pawm y los neopixeles.

La programación del juego sería en el mismo Arduino que trae incorporado, que por cierto, es un Arduino Leonardo.

Para el sonido, LattePanda tiene un jack 3.5 que más adelante conectariamos a un altavoz.

Hay un montón de otras computadoras que pudimos haber usado, seguro te preguntas por qué no usamos Raspberry Pi. Y las razones son las siguientes:

  • Adafruit sugiere tsis muaj kev tswj hwm Neopixeles nrog Raspberry, por cuestiones del reloj. Cosa que Arduino yog qhov puede.
  • Para controlar los pines GPIO de la Raspy, se tiene que hacer con Python, lenguaje que no dominamos.
  • Si bien se puede conectar un Arduino a la Raspy, queríamos una solución de una sola tarjeta.
  • Raspberry kho Windows 10 IoT Core.

Ciertamente LattePanda es costosa y no hay mucha comunidad que la utilice. Yog tias koj tab tom nrhiav ib qho adversidad, koj tau txais txiaj ntsig los ntawm kev siv los ntawm cov plataforma. Estaremos encantados de saber que hiciste este proyecto con Raspy, UDOO, BeagleBone, thiab lwm yam …

Kauj Ruam 3: Kab Mob Y Fabricar La Estructura

Tsev Y Fabricar La Estructura
Tsev Y Fabricar La Estructura
Daws teeb meem Y Fabricar La Estructura
Daws teeb meem Y Fabricar La Estructura
Daws teeb meem Y Fabricar La Estructura
Daws teeb meem Y Fabricar La Estructura

La idea de hacer la plataforma con hexágonos nadie no la iba a quitar. Como estábamos seguros de ello, comenzamos a diseñar la estructura.

Hay muchas cosas a considerar para esta etapa, y nuestra estructura debía cubrir lo siguiente:

  • Soportar el peso de personas
  • Exposición la la intemperie
  • Resguardar la hluav taws xob

Consideramos enseguida utilizar PTR por su dureza, bajo costo y fácil acceso.

Dado que los hexágonos irían acomodados juntos el uno con el otro, se tenía que pensar de qué manera pasarían los cables entre ellos, y por esa razón se diseñó cada módulo como una especie de sandwich, donde por enmedio pasarían los cables de la la

Teníamos entonces que fabricar una estructura de doble hexágono, con unos postes que los separaran.

Al tratarse de una plataforma para pies, se nos hizo fácil considerar un diámetro externo para el hexágono de unos 70 cm, para que fuera de buen tamaño. Hicimos el ejercicio de cortar en papel varios hexágonos con ese diámetro antes de hacer la estructura.

Con todo esto definido, comenzamos la fabricación de nuestro primer prototipo.

Lo primero que hicimos fue cortar en MDF con láser un hexágono con las dimensiones que tendría la estructura, usaríamos esta pieza para guiarnos en cuanto los los ángulos y longitud que deberían tener los tramos de PTR.

Cortar de manera precisa los tramos de PTR es una tarea bastante difícil, y más cuando no tienes la herramienta adecuada. Nosotros a falta de una sierra ingletadora, usamos una esmeriladora, lo lus sib dhos nyuaj heev mucho este proceso. Debes ser cuidadoso usando esta herramienta, ya que es muy fácil cortar de más y no seguir cortes rectos.

Cortamos 12 tramos (6 por cada hexágono) y 6 postes (los que separan a los hexágonos). Una vez que probamos que coincidian con el hexágono de MDF, continuamos con la soldadura.

Soldamos primero los hexágonos por separado, y luego los soldamos los los postes de separación. Ua ntej txhua yam!

Somos unos principiantes en soldadura y pronto nos dimos cuenta que nos ibamos a limitar a soldar sólo ese prototipo, y el resto encomendarlo un herrero experimentado. Si tu eres un buen soldador, anímate a fabricar todos los hexágonos tú mismo!

Ya con la estructura finalizada, la pintamos de blanco con aerosol. Te recomendamos hacer esto en un lugar ventilado y donde se pueda colgar la estructura para que puedas pintarla por todos los ángulos.

Kauj Ruam 4: Colocar Las Superficies En La Estructura

Colocar Las Superficies En La Estructura
Colocar Las Superficies En La Estructura
Colocar Las Superficies En La Estructura
Colocar Las Superficies En La Estructura
Colocar Las Superficies En La Estructura
Colocar Las Superficies En La Estructura

Ya con la estructura metálica, ahora seguía pensar en dos cosas:

  • La superficie que resguardaría la electrónica.
  • La superficie que el usuario pisaría.

La electrónica que iría en cada hexágono consistía únicamente en la tira de neopixeles. Necesitábamos algo que fuera resistente al agua, en caso de que lloviera y se acumulara el agua debajo de cada hexágono.

Elegimos trovicel, es barato, fácil de cortar, nkag tau, thiab tiv taus al agua.

Por su parte, para la superficie que pisaría el usuario, queríamos que fuera con acrílico, la duda era qué tan grueso había que ponerlo. El único xim posible era blanco opalino, para que ocultara la tira de neopixeles y para difuminar la luz. Desafortunadamente no hay mucha variedad en cuanto a grosores, el más grueso disponible era de 1 cm.

En este primer prototipo, diseñamos una especie de tapa para evitar que el agua se filtrara por alguna orilla. Para lograrlo el hexágono tenía la orilla dentada para que se pudiera armar en conjunto con las paredes de la tapa, y posteriormente fijar las partes con pegacril.

Cortamos en láser ambos hexágonos: el de trovicel y el de acrílico.

Nota: Con anticipación, sabíamos que es peligroso cortar trovicel con láser, puesto que está hecho de PVC. Con ayuda y kev pom zoo nyob rau hauv del operador de la cortadora láser, lo cortamos rápido, con ventilación, y con mascarillas. Lo hicimos porque tsis muaj disponíamos de un router CNC, y cortarlo con sierra era impreciso y tardado. Asumimos este riesgo solo rau el prototipo, el resto de hexágonos de trovicel los cortamos con router. Tsis muaj lub ntsej muag lossis lub ntsej muag luag ntxhi!

Con las piezas ya cortadas, montamos todo junto y comenzamos a probarlo.

Durante algunos días nos subimos al hexágono para probar su resistencia, pero no pasó una semana para que las paredes de la tapa de acrílico empezaran despegarse. Además el acrílico se pandeaba mucho con el peso de una persona promedio.

Como ya no había acrílico opalino más grueso, optamos por reducir el perímetro del hexágono 50 cm, haciendo la superficie más pequeña ésta sería más resistente. Si bien pudimos colocar algunos soportes de refuerzo en la parte de abajo del acrílico, se vería la sombra de estos cuando se iluminara el hexágono.

Ya no teníamos tiempo para fabricar nosotros otro hexágono, así que lo mandamos a hacer con un herrero.

Esta imaltima estructura sería la definitiva para nuestro proyecto, en el modelo 3D que acá te compartimos vienen especificadas sus dimensiones.

También descartamos la lub tswv yim tener una tapa compuesta de varias caras pegadas con pegacril. En su lugar decidimos uasr solo una superficie de acrilico que atornillamos por arriba a la estructura. Tanto el acrílico como el trovicel se tuvieron que ajustar al nuevo tamaño. Cortamos en láser 10 hexágonos de acrílico, y con router CNC 10 hexágonos de trovicel.

Kauj Ruam 5: Instalar La Tira De Neopixeles

Instalar La Tira De Neopixeles
Instalar La Tira De Neopixeles
Instalar La Tira De Neopixeles
Instalar La Tira De Neopixeles
Instalar La Tira De Neopixeles
Instalar La Tira De Neopixeles

Para la iluminación, probamos de qué manera se podía iluminar mejor el acrílico. En definitiva fue colocando la tira por la orilla. Checa las fotos para que veas la diferencia.

Las tiras que usamos tienen 96 neopixeles por metro y las venden por metros separados, es decir, tsis muaj muag rollos de 5 metro continuos. Esto se volvería pronto un problema, porque un solo metro no alcanza para cubrir toda la orilla de nuestro hexágono, por lo que tuvimos que unir pedazos.

Adafruit tiene una guía bastante ua tiav sobre estas tiras, te recomendamos leerla antes de usarlas.

Ua raws li cov lus qhia hauv qab no:

  • Al inicio de cada tira, soldamos un resistor de 470 ohms. Se recomienda que este resistor vaya lo más cercano posible a la tira, en lugar del pin de Arduino.
  • En el otro extremo, unimos la tira de un metro, con un tramo de unos 20 cm para ua tiav el perímetro del hexágono.
  • Como la plataforma iba estar expuesta a lluvia e intemperie, sib piv tiras a prueba de agua, que traen un recubrimiento. Al unir tiras, tuvimos que abrir este recubrimiento para que los LEDs estuvieran lo mas juntos posible, y luego sellarlo con ayuda de unas tapitas impresas en 3D y silicón. En las fotos puedes ver más a detalle esto.
  • Fijamos las tiras a la estructura con velcro.
  • Thaum kawg, la la tira le soldamos una extensión (de unos 20 cm) de cable de 3 vías, que baja por una perforación en el trovicel.

Kauj Ruam 6: Instalar El Interruptor

Image
Image
Instalar El cuam tshuam
Instalar El cuam tshuam
Instalar El cuam tshuam
Instalar El cuam tshuam

Hay varias alternativas para sensar las pisadas del usuario: sensor capacitivo, sensor de distancia, sensor de fuerza, velostat, thiab lwm yam. Los ntawm ib sab, sólo necesitabamos detectar una señal de encendido/apagado y un interruptor hace justamente eso.

Sobre qué cuam tshuam cuam tshuam elegir, fuimos a la tienda de electrónica para ver las opciones. Buscábamos algo robusto-industrial, y nos encontramos con un gran surtido. La elección se basó de acuerdo al tamaño de nuestra estructura y a la forma de montaje. En las fotos podrás apreciar que el switch que usamos tiene una especie de cuello con cuerda que permite poder atornillarlo una superficie kab rov tav. Tsuas yog qhov tsis xav tau!

Siv lub tshuab hluav taws xob es muy fácil, en la parte de abajo trae unos tornillos como terminales a los que se le puede rau npe kawm el cable, tsis muaj ne necesario usar soldadura, además estos hloov tus tub rau intemperie ya que traen una carcasa que los aisla del agua. Les conectamos una extensión de cable de dos polos de 20 cm aprox.

La forma de calibrar la sensibilidad de los switches va en función de qué tan cerca estén del acrílico. Para calibrarlos nosotros nos apoyamos de unas rondanas que imprimios en 3D con el grosor necesario para que el switch quedara ajustado al nivel que requeríamos. Tsis muaj usamos rondanas comerciales porque eran muy gruesas.

Kauj Ruam 7: Soldar La Extensión De Cable De Cada Hexágono

Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono
Soldar La Extensión De Cable De Cada Hexágono

En cada hexágono se tenía el cuam tshuam y la tira de neopixeles, dando un total de 5 cables. Estos cables tenían que llegar un un circuito de control desde donde se mandarían y recibirían las señales. Empleamos entonces un cable de control de 5 vías. Usamos termofil para proteger los puntos de unión con soldadura.

En el otro extremo de esta extensión, necesitabamos un conector de 5 pines. Hay unos DIN 5 industriales de propósito general pero son muy caros y elevarían mucho el costo del proyecto, era incluso más barato usar dos conectores XLR de audio que uno industrial. Soldamos entonces dos conectores XLR: uno para los neopixeles (3 cables) y otro para el hloov (2 cables).

Siv dos conectores por hexágono es algo aparatoso, si tienes suficiente presupuesto, te recomendamos ampliamente que siv un conector industrial, te ahorrará trabajo y se verá mejor.

También calculamos el largo de cada cable tomando en cuenta las dimensiones de una estructura que iría por alrededor de los hexágonos. Es de gran utilidad, por su parte, planear por dónde pasarán los cables entre hexágonos y diseñar un diagrama de referencia.

Kauj Ruam 8: Preparar El Gabinete Que Resguarda El Circuito De Control

Preparar El Gabinete Que Resguarda El Circuito De Tswj
Preparar El Gabinete Que Resguarda El Circuito De Tswj
Preparar El Gabinete Que Resguarda El Circuito De Tswj
Preparar El Gabinete Que Resguarda El Circuito De Tswj
Preparar El Gabinete Que Resguarda El Circuito De Tswj
Preparar El Gabinete Que Resguarda El Circuito De Tswj

Ib feem ntawm que usamos conectores XLR macho, xav tau cov neeg siv coj los sib tham XLR hembra y estos debían ser montados en un gabinete. El número de conectores junto con el tamaño de la fuente de voltaje y el LattePanda eran las referencias de las dimensiones que teníamos que considerar para el gabinete.

Compramos un gabinete industrial, y para perforarlo utilizamos un taladro de columna y una sierra broca para los agujeros de los conectores XLR, los cables de alimentación AC y suab. Este proceso fue muy tardado debido al amplio grosor de este tipo de cajas, aunado a que el taladro necesita operar su su máxima fuerza y para ello requiere cierto tiempo de reposo por cada tiempo de trabajo (yog qhov tseem ceeb que busques esta información con el fabricante tu taladro, pues si no respetas estos tiempos, tu taladro se sobre-calentará con riesgo a dañarse).

Antes de perforar la caja, planifica la ubicación de los circuitos, el flujo de señal dentro y fuera del gabinete, la orientación de ésta, y si va a estar dentro de un mueble o a la intemperie. Tsis muaj cov ntsiab lus tseem ceeb ntawm facilidad de conexión para el usuario.

Kauj Ruam 9: Soldar Circuito De Control Y Conexiones Para La LattePanda

Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda
Soldar Circuito De Control Y Conexiones Para La LattePanda

El circuito de tswj es bastante yooj yim. Como nuestra plataforma se compone de 10 pads, cuenta con 10 interruptores (entradas) y 10 tiras de neopixeles (salidas). Estos 20 dispositivos van a interactuar con el Arduino que trae integrado la LattePanda, través de sus pines digitales. Pese a que esta tarjeta cuenta con 20 pines digitales, dos de ellos están dedicados la comunicación serial (Rx y Tx) y lo recomendable es tsis muaj usarlos. Entonces tuvimos que recurrir al uso de un multiplexor (MUX).

Los cuam tshuam los ntawm conectamos un un multiplexor de 16 entradas para que en lugar de usar 10 pines del Arduino para la lectura, sólo usemos 5.

Por su parte, los neopixeles decidimos sí conectarlos directo a los pines de Arduino, dado que en diferentes pruebas que hicimos, pueden llegar tener problemas cuando se manejan a través de un MUX y hacen más complejo el código. Ua txhaum txoj cai, yog tias tsis muaj kev koom tes, tsis muaj teeb meem rau kev siv MUX dedicado a las tiras.

Para proteger y darle ventilación a la LattePanda usamos un gabinete dedicado que incluye ventilador. Con el gabinete puesto, sería difícil montar sobre los pines un shield a donde irían soldadas las conexiones de los cables y el MUX, motivo por el cual diseñamos un circuito aparte muy sencillo al cual le soldamos conectores, algunos resistores y el MUX.

Como el circuito es tan básico, lo soldamos directamente sobre una Perma-proto, igual lo puedes soldar sobre una placa perforada, o bien, fabricar tú mismo el PCB. Aquí te compartimos el diseño en Fritzing.

Kauj Ruam 10: Conectar Los Pads Al Circuito De Control Y a La Alimentación

Image
Image
Conectar Los Pads Al Circuito De Control Y a La Alimentación
Conectar Los Pads Al Circuito De Control Y a La Alimentación
Conectar Los Pads Al Circuito De Control Y a La Alimentación
Conectar Los Pads Al Circuito De Control Y a La Alimentación

Teniendo el circuito de tswj ya soldado a los pines de la LattePanda y con el gabinete perforado, hicimos lo siguiente:

  • Atornillar los conectores XLR hembra al gabinete
  • Etiquetar los conectores con sus repectivos nombres
  • Soldar el cableado de los conectores XLR thiab unos conectores de tornillo
  • Probar txuas ntxiv mus rau todo el cableado
  • Fijar la fuente, el circuito de control, y la LattePanda al gabinete
  • Organizar los cables con cinchos y sujeta cinchos
  • Conectar los cables de los pawm al gabinete

En las fotos se puede ver muy aparatoso el sab hauv del gabinete, dejando poco claro lo que hicimos, pero acá te compartimos también un diagram detallado de las conexiones.

Kauj ruam 11: Programación

Image
Image
Qhov program
Qhov program
Qhov program
Qhov program

En este tipo de proyectos, es mucho más cómodo dedicarte a la programación, una vez que tienes el hardware bien ensamblado: ua txhaum falsos; buenas conexiones; listo rau uso rudo, thiab lwm yam.

Para la programación comenzamos con la parte musical, quisimos diseñar nuestros propios sonidos pero ya no nos dio tiempo de profundizar con eso, así que optamos por hacer un controlador MIDI, donde cada pad hexagonal dispararía un sample.

  • Para el controlador MIDI, nos ayudó mucho esta información.
  • Siv cov khoom siv pub dawb rau Arduino.
  • Txhawm rau kho thaj rau Cov Ntshiab Cov Ntaub Ntawv siv tau.
  • Y para los kuaj cov quav nyab varias opciones gratuitas que puedes encontrar en internet.

Respecto al manejo de los neopixeles, usamos la librería FastLED.

Thaum kawg, para el juego "Simon Says" fue de bastante ayuda este qhia tau.

Kauj Ruam 12: Fabricación De Estructura De Protección Para La Plataforma

Image
Image
Fabricación De Estructura De Protección Para La Plataforma
Fabricación De Estructura De Protección Para La Plataforma
Fabricación De Estructura De Protección Para La Plataforma
Fabricación De Estructura De Protección Para La Plataforma
Fabricación De Estructura De Protección Para La Plataforma
Fabricación De Estructura De Protección Para La Plataforma

Tsis muaj kev sib koom ua lag luam los yog hexágonos y tsis muaj cov yeeb yaj kiab cuando uno tsim tsa sacando sus mejores pasos de baile, por lo que fue necesario considerar una segunda estructura que cumpliera con dos funciones:

  • Mantener unidos los los hexágonos y que no se movieran
  • Proteger la orilla de la plataforma tiv thaiv intemperie

Fabricar una estructura con estas características no sería tarea fácil, así que decidimos encomendarlo a herreros expertos. En las fotos puedes ver la obra de arte que hicieron estos artesanos.

El gabinete de tswj y el altavoz se montaron dentro de un mueble de madera.

Pom zoo: