Taula de continguts:

MIDI Step Interface (versió en espanyol): 12 passos
MIDI Step Interface (versió en espanyol): 12 passos

Vídeo: MIDI Step Interface (versió en espanyol): 12 passos

Vídeo: MIDI Step Interface (versió en espanyol): 12 passos
Vídeo: MIDI without USB – classic MIDI connections explained 2024, Desembre
Anonim
Image
Image
Diseñar Y Fabricar La Estructura
Diseñar Y Fabricar La Estructura

Versió en anglès aquí.

En aquest instructable es mostraran com fer una plataforma interactiva de llum i so, que pot ser usada per jugar el famós “Simon Says” al mateix que com un controlador MIDI. Ambos modes operats amb els pastissos!

Antecedents

El projecte nació per la idea de fer una peça interactiva amb el que el públic es podria divertir sense importar la seva edat, tant per a nens com per a adults. Y se hizo para un centro comercial, como parte de las atracciones que ofrece en sus instalaciones.

La primera referència que rebem per part del client és una versió del Simon Says per tocar amb els pins, bàsicament hauríem de replicar alguna cosa així.

Nosaltres dimos a la zona de buscar altres tipus de plataforma, entre les que abunden les pistes de ball, que en la seva majoria treballen amb la llum, però no amb el so. En aquesta cerca també ens topem amb els pianos de gran format per a pàgines, i tenim una bona idea per fer una plataforma que no només fora per jugar Simon Says, sinó també per utilitzar-lo com a instrument musical. Per gust a la música!

Otro aspecte que considerem va ser la forma de la plataforma. Totes les pistes de ball que vim son rectangulars, amb coixinets quadrats, a excepció d’una que teniu coixinets circulars. Voldríem des d’un inici treballar amb una forma diferent, que fos llamativa visualment i modular al mateix temps. Los hexágonos foren la resposta.

Al buscar formes hexagonals, el més cercano que trobem va ser aquest projecte. La idea de fer hexàgons ens emocionarà cada vegada més … No teníem idea del que vendria després.

Teníem un objectiu cada vegada més clar: Una plataforma interactiva de llum i so que:

  • Es pot jugar Simon Says
  • Funcionara com a instrument musical
  • Coixinets de Tuviera hexagonals

Pas 1: materials

Generals:

  • 1) LattePanda
  • 1) Gabinete per a LattePanda
  • 1) Eliminador 5 VDC a 2.5A micro usb
  • 1) Perma-proto
  • 1) Multiplexor de 16 canals
  • 10) Resistors de 10k ohms
  • 1) Font de voltatge 5 VDC a 50 A
  • 5) Regletes de conectores de tornillo
  • Cinchos
  • Sujeta cinchos
  • Velcro
  • Cinta doble cara
  • 1) Altavoz actiu d'alta potencia
  • 1) Cable auxiliar de 3,5 mm
  • 1) Gabinete industrial

Coixinet:

  • 1.5) Metro de tira Neopixel de 96 LEDs
  • 1) Interruptor de límit industrial
  • 1) Hexàgon d’acrílic opalí d’1 cm
  • 1) Hexàgon de trovicel de 6 mm
  • 1) Estructura de PTR
  • Velcro
  • Silicó
  • Cable 5 vies
  • Cable 3 vies
  • Cable 2 vies
  • Termofil

Step 2: Elegir La Tarjeta Que Controle Todo El Sistema

Arduino és, per antonomàsia, la targeta de desenvolupament que hem ocupat des de fa diversos anys. 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: Los pads han de respondre a la pisada de l’usuari, el més fàcil per a això son interromputs.
  • Juego: Esto se refiere a la dinámica del juego, que debe ser programado y procesado por algún microcontrolador.
  • Sonido: En un inicio, teniamos pensado diseñar nuestros propios sonidos en Pure Data, per tant requeriríem una computadora que corriera aquest programa.

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

Considerem usar Pure Data, perquè si bé amb Arduino es poden generar alguns sons, és limitat i compleix, mentre que amb PD es pot fer sintetització o bé un patch per activar sons via MIDI. Es requereix llavors, una computadora per corregir Pure Data, i Arduino per controlar els demás.

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

LattePanda té un port GPIO en el que es troben mapejats als pins d'un Arduino, a través dels quals podríem manejar els interruptors dels coixinets i els neopixeles.

La programació del joc seria en el mateix Arduino que trae incorporado, que por cierto, es un Arduino Leonardo.

Per al so, LattePanda té un jack 3.5 que més adelantarà connectar-se a un altavoz.

Hi ha un muntó d’altres computadores que podem utilitzar, segur que te preguntes per què no us fem Raspberry Pi. I les raons son les següents:

  • Adafruit sugiere no control Neopixeles with Raspberry, per qüestions del reloj. Cosa que Arduino sí puede.
  • Per controlar els pins GPIO de la Raspy, té que fer amb Python, llenguatge que no dominem.
  • Si bé es pot connectar un Arduino a la Raspy, voldríem una solució d’una sola targeta.
  • Raspberry corre Windows 10 IoT Core.

Ciertament LattePanda és costós i no hi ha molta comunitat que l’ús. Si això es veu com una adversitat, et convidem a utilitzar una altra plataforma. Estarem encantats de saber que aquest projecte és amb Raspy, UDOO, BeagleBone, etc …

Step 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 idea de fer la plataforma amb hexàgons nadie no la iba a quitar. Com estem segurs d’ell, començem a dissenyar l’estructura.

Hi ha moltes coses a considerar per a aquesta etapa, i la nostra estructura s'ha de cubrir el següent:

  • Soportar el pes de persones
  • Exposició a la intempèrie
  • Guardar l’electrònica

Considerem que ensenyem a utilitzar PTR per la seva durada, baix cost i fàcil accés.

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 electrónica.

Teníem llavors que fabriqués una estructura de doble hexàgon, amb uns missatges que separin.

Al tractar-se d’una plataforma per a pastissos, es fa fàcil considerar un diàmetre extern per a un hexàgon d’uns 70 cm, per a que fora de bon tamany. Hicimos el ejercicio de cortar en papel varios hexágonos con ese diámetro antes de hacer la estructura.

Amb tot això definit, comencem la fabricació del nostre primer prototip.

El primer que hicimos va ser cortar en MDF amb un hexàgon amb les dimensions que tindria l'estructura, utilitzaríem aquesta peça per guiarnos en quant als ànguls i longitud que haurien de tenir els tramos de PTR.

Cortar de manera precisa els tramos de PTR és una zona força difícil, i més quan no hi ha l’eina adequada. Nosotros a falta de una serra ingletadora, us fem una esmeriladora, el que va complicar molt aquest procés. 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 vegada que probem que coincideixi amb l’hexàgon de MDF, continuem amb la soldadura.

Soldem primer els hexàgons per separat, i després els soldem als missatges de separació. Tot un reto!

Alguns principiants en soldadura i aviat ens expliquen els nostres comptes que ens limitarem a soldar només aquest prototip, i el resto encomendar-ho a un herrero experimentat. Si tu eres un bon soldador, anímate a fabricar tots els hexàgons tú mateix!

Ja amb l’estructura finalitzada, la pintem de blanc amb aerosol. Te recomano hacer esto en un lugar ventilado y donde se pueda colgar la estructura para que puedes pintarla por todos los ángulos.

Step 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

Ja amb l’estructura metàl·lica, ara seguint pensant en dues coses:

  • La superfície que custodiarà l’electrònica.
  • La superfície que l’usuari pisaria.

La electrònica que iria en cada hexàgon consistirà únicament en la tira de neopixeles. Necessitava alguna cosa que fos resistent a l’aigua, en cas de que lloviera i s’acumulés l’aigua debat de cada hexàgon.

Elegimos trovicel, es barato, fácil de cortar, accesible, y resistente a agua.

Per la seva part, per a la superfície que pisaria l’usuari, volíem que fora amb acrílic, la duda era què tan grues havia que ponerlo. L’únic color possible era blanc opalí, per a que ocultés la tira de neopixeles i per difuminar la llum. Desafortunadament no hi ha molta varietat en cant a grans, el més greu disponible era de 1 cm.

En aquest primer prototip, dissenyem una espècie de tapa per evitar que l’aigua es filtri per alguna orella. 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: Amb anticipació, sabríem que és peligroso cortar trovicel amb làser, posat que està fet de PVC. Amb ajuda i consentiment de l’operador de la cortadora làser, ho cortem ràpid, amb ventilació, i amb mascarilles. 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!

Amb les peces ja cortades, muntem tot junt i començem a provar-ho.

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. A més l’acrílic es pandeaba molt amb el pes d’una persona promesa.

Com ja no hi havia acrílic opalí més gruixut, optem per reduir el perímetre de hexàgon a 50 cm, fent la superfície més petita és més resistent. Si bé es pot colocar alguns suports de refuerzo en la part de baix de l’acrílic, es veria la sombra d’aquests quan s’il·lumina l’hexàgon.

Ja no teníem temps per fabricar-nos un altre hexàgon, així que els mandem fer amb un herrero.

Aquesta última estructura seria la definitiva per al nostre projecte, en el model 3D que tinc compartits que tenen especificades les seves dimensions.

També descartem la idea tenir una tapa composta de diverses cares pegades amb pegacril. En el seu lloc decidits uasr solament una superfície d’acrílic que atornillem per dalt a l’estructura. Tanto el acrílic com el trobem es va tornar a ajustar al nou tamany. Cortamos en láser 10 hexágonos de acrílico, y con router CNC 10 hexágonos de trovicel.

Step 5: Instalar La Tira De Neopixeles

Instal·la La Tira De Neopixeles
Instal·la La Tira De Neopixeles
Instal·la La Tira De Neopixeles
Instal·la La Tira De Neopixeles
Instal·la La Tira De Neopixeles
Instal·la La Tira De Neopixeles

Per a la il·luminació, probem de què manera es podia il·luminar millor l’acrílic. En definitiva va ser col·locant la tira per l’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. Això es tornarà aviat un problema, perquè un sol metro no alcanza per cubrir tota l’orella del nostre hexàgon, per lo que tuvimos que unir pedazos.

Adafruit té una guia bastant completa sobre aquestes tiras, et recomanem llegir abans d’utilitzar-les.

Amb les tires hicimos el següent:

  • Al començament de cada tira, soldem un resistor de 470 ohms. Se recomienda que este resistor vaya lo más cercano possible a la tira, en lugar del pin de Arduino.
  • En l’altre extrem, unim la tira d’un metro, amb un tramo d’uns 20 cm per completar el perímetre de l’hexàgon.
  • Como la plataforma iba a estar expuesta a lluvia e intemperie, comprés tiras a prova d’aigua, que traen un recobriment. Al unir tiras, tuvimos que obrir 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 les fotos pots veure més a detalls això.
  • Fijamos las tiras a la estructura con velcro.
  • Finalment, a la tira li soldem una extensió (d’uns 20 cm) de cable de 3 vies, que baixa per una perforació en el troball.

Pas 6: Instal·leu El Interruptor

Image
Image
Instal·la El Interruptor
Instal·la El Interruptor
Instal·la El Interruptor
Instal·la El Interruptor

Hi ha diverses alternatives per a sensar les pisades de l’usuari: sensor capacitiu, sensor de distància, sensor de força, velostat, etc. Per altra part, només necessitem detectar un senyal d’encendit / apagat i un interruptor fa justament això.

Sobre qué interruptor elegir, fuimos a la tienda de electrónica para ver las opciones. Buscabem alguna cosa robusto-industrial, i ens trobem amb un gran surtit. L’elecció es basa en acord a mida de la nostra estructura i a la forma de muntatge. En les fotos podrem apreciar que el commutador que usem té una espècie de cuell amb cuerda que permet poder atornillarlo a una superfície horitzontal. Just lo que necessitábamos!

Utilitzar aquest tipus de commutadors és molt fàcil, en la part de baix un parell d’uns tornells com a terminals als que es pot inscriure el cable, no és necessari utilitzar soldadura, a més d’aquests commutadors son per a intermèdia ja que es trasllada a una carcassa que l’aisla del agua. Les connectem una extensió de cable de dos polos de 20 cm aprox.

La forma de calibrar la sensibilitat dels commutadors va en funció de què tan a prop estiguin de l’acrílic. Per calibrar-los nosaltres ens recolzem en unes rondanes que s’imprimeixen en 3D amb el grosor necessari per a que el canvi quedés ajustat al nivell que requeriríem. No usamos rondanas comerciales porque eran muy gruesas.

Step 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àgon es té l’interruptor i la tira de neopixeles, donant un total de 5 cables. Aquests cables tenien que arribar a un circuit de control des d’on es mandarien i rebrien les senyals. Emplem llavors un cable de control de 5 vies. Usem termofil per protegir els punts d’unió amb soldadura.

En l’altre extrem d’aquesta extensió, necessitem un conector de 5 pins. Hi ha uns DIN 5 industrials de propòsit general però son molt caros i elevarien molt el cost del projecte, fins i tot més barat utilitzar dos connectors XLR d’àudio que un industrial. Soldem llavors dos connectors XLR: un per als neopixeles (3 cables) i un altre per al commutador (2 cables).

Usar dos connectors per hexàgon és alguna cosa aparatós, si hi ha prou pressupost, et recomanem àmpliament que s’utilitzi un conector industrial, estalviaràs treball i veureu millor.

També calculem el llarg de cada cable prenent en compte les dimensions d’una estructura que iria per al voltant dels hexàgons. Es de gran utilitat, per la seva part, planejar per on passaran els cables entre hexàgons i dissenyaran un diagrama de referència.

Step 8: Preparar El Gabinete Que Resguarda El Circuito De Control

Preparar El Gabinete Que Resguarda El Circuito De Control
Preparar El Gabinete Que Resguarda El Circuito De Control
Preparar El Gabinete Que Resguarda El Circuito De Control
Preparar El Gabinete Que Resguarda El Circuito De Control
Preparar El Gabinete Que Resguarda El Circuito De Control
Preparar El Gabinete Que Resguarda El Circuito De Control

A partir de que usem connectors XLR macho, requeriríem utilitzar connectors XLR hembra y estos debían ser montados en un gabinete. El número de connectors junts amb la mida de la font de voltatge i el LattePanda eren les referències de les dimensions que teníem que considerar per al gabinet.

Compromès un gabinet industrial, i per perforar-lo utilitzem un quadre de columna i una serra broca per als agujeros dels connectors XLR, els cables d'alimentació AC i àudio. Aquest procés ha estat molt tardat a causa de l’ampli grau d’aquest tipus de caixes, aunat al qual el trepó necessita operar a la seva màxima força i per al sol·licitud fins al moment de repòs per cada temps de treball (és important que busqui aquesta informació amb el fabricant de tu taladro, pues si no respetas estos tiempos, tu taladro se sobre-calentará con riesgo a dañarse).

Antes de perforar la caixa, planifica la ubicació dels circuits, el fluix de senyal dins i fora del gabinet, l’orientació d’esta, i si va a estar dins d’un mòbil o a la intempèrie. No es pot considerar la facilitat de connexió per a l'usuari.

Step 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 circuit de control és bastant senzill. Como nuestra plataforma se compone de 10 pads, compte amb 10 interruptors (entrades) i 10 tiras de neopixeles (salidas). Aquests 20 dispositius van a interactuar amb l'Arduino que es va integrar a LattePanda, a través dels seus pins digitals. Pese a que aquesta targeta compte amb 20 pins digitals, dos d’ells estan dedicats a la comunicació serial (Rx y Tx) i el recomanable no és utilitzar-los. 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, sólo usemos 5.

Per la seva part, els neopixeles decidits sí que connectaran directament als pins d'Arduino, donat que en diferents proves que hicimos, poden arribar a tenir problemes quan es manejen a través d'un MUX i fan més complex el codi. Sin embargo, si tienes un buen nivel de programación, no tendrás problemas para usar un MUX dedicado a las tiras.

Per protegir i donar ventilació a la LattePanda usem un gabinet dedicat que inclou ventilador. Amb el gabinet posat, seria difícil muntar sobre els pins un escut a on irien soldades les connexions dels cables i el MUX, motiu pel qual es dissenya un circuit a part molt senzill al qual els soldats connectors, alguns resistents i el MUX.

Com el circuit és tan bàsic, el soldem directament sobre una Perma-proto, igual el pots soldar sobre una placa perforada, o bé, fabricar-lo mateix el PCB. Aquí et compartim el disseny en Fritzing.

Step 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

Tenint el circuit de control ja soldat als pins de la LattePanda i amb el gabinet perforat, aquest és el següent:

  • Atornillar los conectores XLR hembra al gabinete
  • Etiquetar els connectors amb els seus respectius noms
  • Soldar el cablejat dels connectors XLR a uns connectors de tornillo
  • Probar continuïtat en tot el cablejat
  • Fijar la font, el circuit de control, i la LattePanda al gabinete
  • Organitzar els cables amb cinxos i sujeta cinchos
  • Connecta els cables dels coixinets al gabinet

En les fotos es pot veure molt aparatós a l’interior del gabinet, deixant poc clar el que hicimos, però tinc compartits també un diagrama detallat de les connexions.

Pas 11: Programació

Image
Image
Programació
Programació
Programació
Programació

En aquest tipus de projectes, és molt més còmode dedicar-se a la programació, una vegada que hi ha el maquinari bé ensamblat: sense falsos; bones connexions; listo per a ús rudo, etc.

Per a la programació començem amb la part musical, quisim dissenyen els nostres propis sons però ja no ens diem temps de profunditzar amb això, així que optem per fer un controlador MIDI, on cada pad hexagonal dispararia un sample.

  • Per al controlador MIDI, ens ajudem molt aquesta informació.
  • Utilitzeu aquesta biblioteca per a Arduino.
  • Per al pegat en Pure Data us fem aquest.
  • I per als samples hi ha diverses opcions gratuïtes que pots trobar a internet.

Respecte al maneig dels neopixeles, us fem servir la biblioteca FastLED.

I finalment, per al joc "Simon Says" ha estat força útil per a aquest instructiu.

Pas 12: Fabricació d’estructura de protecció per a la plataforma

Image
Image
Fabricació d’Estructura De Protecció Per La Plataforma
Fabricació d’Estructura De Protecció Per La Plataforma
Fabricació d’Estructura De Protecció Per La Plataforma
Fabricació d’Estructura De Protecció Per La Plataforma
Fabricació d’Estructura De Protecció Per La Plataforma
Fabricació d’Estructura De Protecció Per La Plataforma

No hi havia alguna cosa que es fixés als hexàgons i no es movés quan un estava sachant els seus millors passos de ball, per lo que va ser necessari considerar una segona estructura que va complir amb dues funcions:

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

Fabricar una estructura amb aquestes característiques no seria fàcil de fer, així que decidim encomendar-ho a herreros expertos. En les fotos pots veure l’obra d’art que hi haurà aquests artesans.

El gabinet de control i l’altavoz es va muntar dins d’un mòbil de fusta.

Recomanat: