Arduino MIDI Controller - Techshop utilizando Scarff Boarduino: 6 pasos

Arduino MIDI Controller - Techshop utilizando Scarff Boarduino: 6 pasos

Tabla de contenido:

Anonim

He mirado a mi alrededor una serie de diferentes soluciones de arduino para MIDI. El concepto de mi proyecto incluye más de 100 entradas analógicas que detectan la velocidad y proporcionan una salida MIDI. Usando la información de fondo que obtuve de la clase TechShop, decidí configurarlo primero con seis entradas analógicas.

Este Arduino que se vende por Tom Scarff se llama 'boarduino'. Se envía rápidamente y es muy confiable y responde a las preguntas tontas de los principiantes. Es un chip de microcontrolador ATmega168; analógico de 0 a 5 pines; y viene preprogramado con un "no-wait" Arduino bootloader 2 LEDs rojos, encendido y "pin 13" como el Arduino Diecimila con un reloj de 16 hz (resonador) Tiene el encabezado de 2 pines para MIDI OUT.

El código fuente de arduino está disponible en su sitio.

Suministros:

Paso 1: Construyendo un controlador Midi con el Boarduino

Tom Scarff es un experto en este campo. Me apoyó en mi proyecto de midi anterior, "un dinosaurio de respiración controlada por el fuego, operado neumáticamente y controlado por midi llamado Lunarsaurus, que mostré en Maker Faire.

Así que me dirigí a él para este proyecto y descubrí que ya tenía un kit (llamado boarduino) listo para funcionar.

midikits.net23.net/midi_boarduino/midi_boarduino.htm El Boarduino es interesante debido a su tamaño. Es pequeño (.75 ​​"x 3.75") y cabe en un lugar pequeño y el precio es bueno. Prefiero comprarlo ensamblado - una variable menos.

La forma más fácil de comenzar es colocar una batería de 9 voltios en el estándar de 2.1 mm. Aquí una palabra de advertencia. Es necesario mantener la fuente de alimentación dentro de las especificaciones. Dejé la batería enchufada durante más o menos una semana, se dejó caer por debajo de 9 voltios y el microprocesador (intentando todo lo posible) perdió sus canicas. Afortunadamente, uno puede volver a cargar el código y usted está de vuelta en el negocio.

También puede proporcionar 5vDC al pin serie o al tablero, pero tenga mucho cuidado ya que no hay diodo que lo proteja contra la polaridad inversa (como ocurre con el enchufe externo de 9 V).

Paso 2: Configuración del Scarff Boarduino

Todo esto es bastante sencillo. Aquí comencé con los interruptores básicos que activaban cada uno de los canales hacia arriba y hacia abajo (tenía este grupo de cinco interruptores tendidos, en realidad hay seis entradas). Un lado de los interruptores (teclas) atados a tierra, y el otro lado corriendo directamente a la entrada analógica en el tablero.

Lo único que dejé fuera fue la resistencia a la caída. Sí, está en el sitio web y sí, me equivoqué. Así que tuve un terrible aullido cacofónico que fue ligeramente interesante hasta que puse algunas resistencias de 1 M ohmios desde tierra a la entrada analógica. El aullido era que todos los canales se activaban o desactivaban, dependiendo de la RF del ambiente y demás.

Conecta el cable midi desde el boarduino a tu sintetizador (o midi en tu teclado) y funciona de inmediato.

Paso 3: Agregando Piezos

Ahora que tengo los microinterruptores de apagado / encendido que funcionan en las entradas medias, los cambié por piezoeléctrico de 12 mm que encontré en ebay. Mismo diagrama de cableado. Experimenté con varias formas de montar y accionar los piezos. Simplemente montándolos en una superficie plana y tocándolos con los dedos hace un trabajo razonablemente bueno. Experimenté con varias configuraciones diferentes para montar los piezos. Descubrí que tener una plantilla de prueba simple me permitió medir la respuesta de manera más confiable. Pegarlos en caliente a 1/2 "de espuma también es bueno. Corte agujeros en la espuma, suelte los cables y listo.

El piezo genera electricidad en función de la cantidad de desviación en el cristal. Algunos piezos utilizados en la instrumentación se sujetan en el lateral (un montaje en voladizo). Elegí hacer pequeñas hendiduras en el material de respaldo que permitirían que los piezos se doblasen y flexionaran. Por lo tanto, montar los piezos es una consideración importante cuando su objetivo es leer la corriente de las pulsaciones de teclas individuales. No es como usar un piezo como una pastilla en una guitarra.

Se debe tener cuidado al conectar dispositivos a los pines analógicos. Los piezos pueden generar voltajes de -20vdc a + 60vdc. Los puse en un alcance y es una forma de onda bastante interesante. Los diodos de sujeción en el ATmel permiten hasta 1 miliamperio (1000 microamperios). Así que la resistencia de bajada de 1M ohmio ayuda a proteger las entradas analógicas en el arduino.

Al final, los piezos funcionaron bien, pero hacer que las entradas analógicas de la placa las reconozcan y las conviertan de manera confiable en una señal midi es un trabajo en progreso. Por eso me gusta trabajar con Tom. Ya ha creado algunos diseños diferentes para mis necesidades únicas. Así que la siguiente tarea es descubrir cómo agregar algunos circuitos sutiles que harán que el arduino sea un poco más sensible.

He intentado implementar este circuito simple (a continuación) en la salida y creo que con algunos cambios en el código y el ajuste del circuito tendré un buen diseño básico.

leucos.lstilde.org/wp/2009/06/piezo-transducer-signal-conditioning/

Ahora en el siguiente paso: agregar un mux. Lo que de nuevo - Tom Scarff se puso en marcha en poco tiempo. Todavía queda mucho trabajo de diseño, pero estoy muy satisfecho con el producto inicial; Un controlador midi de seis notas (que pronto se ampliará).

Paso 4: Conectar el BUB al Boarduino para descargar el código

Aquí hay un dibujo del tablero que muestra 7 resistencias de 1M en lugar de 6 (?). Cada uno de los piezos tendrá el disco de cobre conectado a tierra (cable negro en la mía) y el lado de cerámica (rojo) directamente en la entrada analógica. El boardino se vende con un conector midi (din) con un par de resistencias de 220 ohmios, etc.

Para poner en marcha el software arduino, siga las instrucciones para los controladores de mac.

Al editar los archivos de origen utilizando el software arduino en mi mac, utilicé estos ajustes.

herramientas -> puerto serie: tty.usbserial *

herramientas-> tablero: Arduino Diecimila o Duemilanovie w / ATmega 168

herramientas-> programador: avirisp mkIII

Oh! Cuando se trata de usar el BUB (mind from modern devices) para cargar el software en el boarduino es posible que necesite voltearlo de cabeza. Si lees las etiquetas en los pines, tendrá sentido. Si no hay luz en el tablero y usted tiene su BUB conectado, la causa puede ser el frío de los pines invertidos.

¡Conéctalo y descárgalo!

Paso 5: Finalmente, enganché esto a Piezos

crudo pero simple mecanicé un hoyuelo que dejaba una cavidad detrás del piezo para permitir que el cristal se flexione. (ver el agujero vacío).

Corté esto unos minutos después de la cena, así que tuve algo para probar los piezos. Lo monté en una caja de conexiones estándar y puse un conector midi a un lado. Una batería de 9v cabe dentro. Por lo tanto, un controlador midi completo que funciona con baterías que mide 2 "x 6". ¡El tablero escarlata realmente funciona bien en situaciones en las que quieres encajarlo en un área pequeña!

Paso 6: Filtros de paso bajo para piezos utilizados como teclado

Todavía estoy jugando con diferentes filtros. Afinar los circuitos de piezos es un reto. Aquí hay un pdf que muestra otro enfoque. Todavía estoy usando el BAT 85 shottky, pero no puedo decir la diferencia entre este y otros diodos.

No es necesario un Zener para limitar la entrada analógica. Arduino puede manejar hasta 100 voltios, siempre que el amperaje esté por debajo de 1 miliamperio. Por lo tanto, los picos de señal breves de 5-10 voltios en las entradas analógicas no deberían ser un problema.

Este arreglo (con un diodo justo al lado del piezo y un tirón hacia abajo de 1 M) parece ser el mejor punto de partida.