Innehållsförteckning:

MIDI Step Interface (version En Español): 12 steg
MIDI Step Interface (version En Español): 12 steg

Video: MIDI Step Interface (version En Español): 12 steg

Video: MIDI Step Interface (version En Español): 12 steg
Video: MIDI without USB – classic MIDI connections explained 2024, November
Anonim
Image
Image
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura

Versión en inglés aquí.

En este instruable 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 a la tarea de buscar otros tipos de plataforma, entre las que plentyaban 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 idea hacer una plataforma que no solo fuera para jugar Simon Says, sino también para usarlo como instrumento musical. Por el gusto a la música!

Otro aspecto que consideramos fue la forma de la plataforma. Det här är ett verktyg som ger en rektangulär form, med kuddar och delar. Queríamos desde un inicio trabajar con una forma diferente, que fuera llamativa visualmente y modulära al mismo tiempo. Los hexágonos fueron la respuesta.

Al busscar formas hexagonales, lo más cercano que encontramos fue este proyecto. La idé de hacer hexágonos nos emocionaba cada vez más… No teníamos idea de lo que vendría después.

Här kan du också hitta en mer detaljerad beskrivning:

  • Se pudiera jugar Simon Says
  • Funcionara som instrumentmusik
  • Tuviera kuddar sexkantiga

Steg 1: Material

Allmänt:

  • 1) LattePanda
  • 1) Gabinete para LattePanda
  • 1) Eliminador 5 VDC en 2,5A mikro usb
  • 1) Perma-proto
  • 1) Multiplexor de 16 kanaler
  • 10) Resistorer på 10k ohm
  • 1) Fuente de voltaje 5 VDC a 50 A
  • 5) Regletas de conectores de tornillo
  • Cinchos
  • Sujeta cinchos
  • Kardborre
  • Cinta doble cara
  • 1) Altavoz activo de alta potencia
  • 1) Kabel auxiliar de 3,5 mm
  • 1) Gabinete industriell

Por pad:

  • 1.5) Metro de tira Neopixel de 96 lysdioder
  • 1) Industriell avbrytare
  • 1) Hexágono de acrílico opalino de 1 cm
  • 1) Hexágono de trovicel de 6 mm
  • 1) Estructura de PTR
  • Kardborre
  • Kisel
  • Kabel 5 vías
  • Kabel 3 videor
  • Kabel 2 vías
  • Termofil

Steg 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é aspectos técnicos debemos cubrir para nuestro proyecto:

  • Luz: Requerimos iluminar los pads con alto brillo y con patrones complejos, para ello pensamos usar Neopixeles.
  • Pads: Pads deben responder a la pisada del usuario, läs mer fåcil para esto son interruptores.
  • Spelare: För att återskapa en del av din juego kan du programmera och bearbeta mikrokontroller.
  • 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ás adelante se profundiza en estos aspectos, mientras tanto, la parte que nos mantenía en duda, era la del sonido.

Tänk på att använda 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 fora activar sonidos vía MIDI. Behöver entonces, una computadora para correr Pure Data, och Arduino para controlar lo demás.

Du kan också använda en annan dator som du kan använda och du kan använda LattePanda: en dator med Windows 10 med en Arduino -enhet. Bingo!

LattePanda tiene un puerto GPIO en el que se encuentran mapeados los pines de un Arduino, a través de los cuales podriamos manejar los interruptores de los pads 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 and 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 följande:

  • Adafruit sugiere no controlar Neopixeles con Raspberry, por cuestiones del reloj. Cosa que Arduino sí 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.
  • Hallon corre Windows 10 IoT Core.

Ciertamente LattePanda es costosa y no hay mucha comunidad que la utilice. Si esto lo ves como una adversidad, te invitamos a utilizar otra plataforma. Estaremos encantados de saber que hiciste este proyecto con Raspy, UDOO, BeagleBone, etc …

Steg 3: Diseñar Y Fabricar La Estructura

Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura

La idé 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 a la intemperie
  • Resguardar la electrónica

Tänk på att använda PTR por su dureza, bajo costo and fácil accesso.

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 cable entre ellos, y por esa razón se diseñó cada módulo como una especie de sandwich, donde por enmedio pasarían los cable de la electrónica.

Företagets entonces que fabricar una estructura de doble hexágono, con unos postes que los separaran.

Al tratarse de una plataforma para paies, 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 dimensionses que tendría la estructura, usaríamos esta pieza para guiarnos en cuanto a 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 cual complicó 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 spårvagnar (6 por cada hexágono) och 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, och luego los soldamos a los postes de separación. Todo un reto!

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 a un herrero experimentado. Om du har en buen soldador, kan vi ange att det inte är möjligt att göra det!

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.

Steg 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 and 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, accesible, y resistente 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 color posible era blanco opalino, para que ocultara la tira de neopixeles y para difuminar la luz. Desafortunadamente no hay mucha variationad 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.

Notera: Con anticipación, sabíamos que es peligroso cortar trovicel con láser, puesto que está hecho de PVC. Con ayuda y agreeimiento del operador de la cortadora láser, lo cortamos rápido, con ventilación, y con mascarillas. Lo hicimos porque no disponíamos de un router CNC, y cortarlo con sierra era impreciso y tardado. Asumimos este riesgo solo para el prototipo, el resto de hexágonos de trovicel los cortamos con router. Tú no ocupes cortadora láser!

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 a despegarse. Además el acrílico se pandeaba mucho con el peso de una persona promedio.

Om du vill ha en acrílico opalino más grueso, kan du också reducera den till 50 cm i storlek, och du kan använda en superficie som du kan använda en resistans. 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 última estructura sería la definitiva para nuestro proyecto, en el modelo 3D que acá te compartimos vienen especificadas sus dimensiones.

También descartamos la idé 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 hexagonos de acrílico, and con router CNC 10 hexágonos de trovicel.

Steg 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, no venden rollos de 5 metros 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 completa sobre estas tiras, te recomendamos leerla antes de usarlas.

Con las tiras hicimos lo siguiente:

  • Al inicio de cada tira, soldamos och resistor på 470 ohm. Se recomienda que este resistor vaya lo más cercano posible a la tira, and lugar del pin de Arduino.
  • En el otro extremo, unimos la tira de un metro, con un tramo de unos 20 cm para completear el perímetro del hexágono.
  • Como la plataforma iba a estar expuesta a lluvia e intemperie, compramos tiras a prueba de agua, que traen un recubrimiento. Alla unir tiras, tuvimos que abrir este recubrimiento para que los LEDs estuvieran lo mas juntos posible, and luego sellarlo con ayuda de unas tapitas impresas in 3D and silicon. En las fotos puedes ver más a detalle esto.
  • Fijamos las tiras a la estructura con velcro.
  • Finalmente, a 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.

Steg 6: Instalar El Interruptor

Image
Image
Instalar El Interruptor
Instalar El Interruptor
Instalar El Interruptor
Instalar El Interruptor

Hay varias alternativa para sensar las pisadas del usuario: sensor capacitivo, sensor de distancia, sensor de fuerza, velostat, etc. Por otra parte, sólo necesitabamos detectar una señal de encendido/apagado y un interruptor hace justamente eso.

Sobre qué interruptor elegir, fuimos a la tienda de electrónica para ver las opciones. Buscábamos algo robusto-industriella, och 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 a una ytlig horisontell. Justo lo que que necesitábamos!

Usar este tipo de switches es muy fácil, en la parte de abajo trae unos tornillos como terminales a los que se le puede enrolllar el cable, no es necesario usar soldadura, además estos switches son para intemperie ya que traen una carcasa que los aisla del agua. Les conectamos una extensión de cable de dos polos de 20 cm ca.

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. Inga usamos rondanas comerciales porque eran muy gruesas.

Steg 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 interruptor y la tira de neopixeles, dando un total de 5 kablar. Estos kablar kan också användas för att styra kontrollen och göra det möjligt för oss. Empleamos introducerar en kabel för kontroll av 5 videor. Usamos termofil para proteger los puntos de unión con soldadura.

En el otro extremo de esta extensión, necesitabamos un conector de 5 tallar. Vi kan använda DIN 5 industriella allmänna propositioner för våra kunder och våra tillverkare, och vi kan även använda en rad andra ljudkonstruktioner för industrin. Soldamos entonces dos conectores XLR: uno para los neopixeles (3 kablar) och otro para el switch (2 kablar).

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

También calculamos el largo de cada cable tomando en cuenta las dimensionses 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 cable entre hexágonos y diseñar un diagrama de referencia.

Steg 8: Förbered El Gabinete Que Resguarda El Circuito De Control

Förbered El Gabinete Que Resguarda El Circuito De Control
Förbered El Gabinete Que Resguarda El Circuito De Control
Förbered El Gabinete Que Resguarda El Circuito De Control
Förbered El Gabinete Que Resguarda El Circuito De Control
Förbered El Gabinete Que Resguarda El Circuito De Control
Förbered El Gabinete Que Resguarda El Circuito De Control

A partir de que usamos conectores XLR macho, requeríamos usar conectores 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 dimensionses 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 cable de alimentación AC och audio. Este proceso fue muy tardado debido al amplio grosor de este tipo de cajas, aunado a que el taladro necesita operar a su máxima fuerza y para ello requiere cierto tiempo de reposo por cada tiempo de trabajo (es importante que busques esta información con el fabricante de 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. Inga olvides considerar la facilidad de conexión para el usuario.

Steg 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 control es bastante simple. Como nuestra plataforma se compone de 10 pads, cuenta con 10 interruptores (entradas) y 10 tiras de neopixeles (salidas). Estos 20 dispositivos of a interactuar con el Arduino que trae integrado la LattePanda, a través de sus pines digitales. Om du vill ha 20 digitala pines, kan vi rekommendera seriella (Rx y Tx) och inga rekommendationer. Entonces tuvimos que recurrir al uso de un multiplexor (MUX).

Los interruptores los conectamos a un multiplexor de 16 entradas para que en lugar de usar 10 pines del Arduino para la lectura, only 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 a tener problemas cuando se manejan a través de un MUX y hacen más complejo el código. Sin embargo, si tienes un buen nivel de programación, no tendrás problemas fora usar un 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 cable 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.

Steg 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 control 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 och unos conectores de tornillo
  • Probar continuidad en todo el cableado
  • Fijar la fuente, el circuito de control, och la LattePanda al gabinete
  • Organiserar kablar med cinchos och sujeta cinchos
  • Anslut kablar till kablar

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

Steg 11: Programación

Image
Image
Programación
Programación
Programación
Programación

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

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 controllerador MIDI, nos ayudó mucho esta information.
  • Utilizamos esta librería para Arduino.
  • Para el patch en Pure Data usamos este.
  • Y para los samples hay varias opciones gratuitas que puedes encontrar en internet.

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

Y finalmente, para el juego "Simon Says" fue de bastante ayuda este instruerbar.

Steg 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

No había algo que fijara a los hexágonos y no se movieran cuando uno estaba sacando sus mejores pasos de baile, por lo que fue necesario considerar una segunda estructura que cumpliera con dos funciones:

  • Mantener unidos a los hexágonos y que no se movieran
  • Proteger la orilla de la plataforma contra 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 art que hicieron estos artesanos.

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

Rekommenderad: