DISEÑO Y CONSTRUCCIÓN DE CONTROLADOR MIDI PARA VIOLÍN NICOLÁS OCTAVIO BARRERA AMAYA DIEGO ALBERTO RODRÍGUEZ VARGAS UNIVERSIDAD DE SAN BUENAVENTURA INGENIERÍA DE SONIDO BOGOTÁ 2011 DISEÑO Y CONSTRUCCIÓN DE CONTROLADOR MIDI PARA VIOLÍN NICOLÁS OCTAVIO BARRERA AMAYA DIEGO ALBERTO RODRÍGUEZ VARGAS PROYECTO DE GRADO JURADOS: RAÚL RINCÓN FLORES CARLOS VARGAS GALLO UNIVERSIDAD DE SAN BUENAVENTURA INGENIERÍA DE SONIDO BOGOTÁ 2011 Nota de aceptación: _______________________________ _______________________________ _______________________________ _______________________________ _______________________________ _______________________________ _________________________________ Firma del Jurado __________________________________ Firma del jurado Bogotá, Mayo de 2011 3 AGRADECIMIENTOS A mis padres, que han sido el apoyo y la base de todo paso que se me permitió dar hasta el día de hoy; a mis hermanos, a Laura Rúa y a mi familia en general. Diego Rodríguez. Gracias a toda mi familia por el apoyo incondicional y por la colaboración en esta etapa de mi vida, a si mismo, a todos los que ayudaron a que esto fuera posible. Nicolás Barrera. 4 Contenido 1. PLANTEAMIENTO DEL PROBLEMA ..................................................................................... 12 1.1. ANTECEDENTES (ESTADO DEL ARTE) ......................................................................... 12 1.2 DESCRIPCIÓN Y FORMULACIÓN DEL PROBLEMA ...................................................... 15 1.3 JUSTIFICACIÓN ............................................................................................................ 15 1.4 OBJETIVOS .................................................................................................................. 16 1.4.1 Objetivo general: ................................................................................................ 16 1.4.2 Objetivos específicos:......................................................................................... 16 1.5 ALCANCES Y LIMITACIONES DEL PROYECTO.............................................................. 16 1.5.1 Alcances ..................................................................................................................... 16 1.5.2 Limitaciones ............................................................................................................... 16 2. METODOLOGÍA ................................................................................................................... 17 2.1. ENFOQUE DE LA INVESTIGACIÓN .............................................................................. 17 3. LÍNEA DE INVESTIGACIÓN DE USB / SUB-LÍNEA DE FACULTAD / CAMPO TEMÁTICO DEL PROGRAMA ................................................................................................................................ 17 3.1 LÍNEA DE INVESTIGACIÓN DE USB .................................................................................... 17 3.2 SUB-LÍNEA DE FACULTAD .................................................................................................. 17 3.3 CAMPO TEMÁTICO DEL PROGRAMA ................................................................................ 17 3.4 HIPÓTESIS .......................................................................................................................... 17 4. MARCO DE REFERENCIA ..................................................................................................... 18 4.1. MARCO TEÓRICO – CONCEPTUAL .............................................................................. 18 4.1.1 INSTRUMENTOS DE CUERDA FROTADA ............................................................ 18 4.1.2 VIOLÍN ................................................................................................................. 18 4.1.2.1 PARTES DE VIOLÍN .............................................................................................. 19 4.1.3 UNIVERSAL SERIAL BUS ...................................................................................... 20 4.1.4 SINTETIZADOR .................................................................................................... 22 4.1.5 SECUENCIADOR .................................................................................................. 22 4.1.6 SAMPLING ........................................................................................................... 22 4.1.7 MIDI .................................................................................................................... 23 4.1.7.1 TRANSMISIÓN DE DATOS ................................................................................... 23 4.1.7.2 CONECTORES MIDI ............................................................................................. 24 4.1.7.3 MIDI OUT ............................................................................................................ 25 4.1.7.4 MIDI IN ................................................................................................................ 25 5 5 4.1.7.5 MIDI THRU .......................................................................................................... 25 4.1.7.7 MODOS MIDI ...................................................................................................... 26 4.1.7.8 MENSAJES MIDI .................................................................................................. 26 4.1.7.8.1 BYTE DE ESTADO............................................................................................. 27 4.1.7.8.2 BYTE DE DATOS............................................................................................... 27 4.1.7.8.3 MENSAJES DE CANAL...................................................................................... 28 4.1.7.8.4 ACTIVACIÓN DE NOTA .................................................................................... 28 4.1.7.8.5 DESACTIVACIÓN DE NOTA ............................................................................. 28 4.1.8 LENGUAJE DE PROGRAMACIÓN......................................................................... 29 4.1.9 LENGUAJE C++ .................................................................................................... 29 4.1.10 PIC MICROCONTROLADOR ................................................................................. 30 4.1.11 PIC 16F877A ........................................................................................................ 30 4.1.12 RESISTENCIA ....................................................................................................... 31 4.1.13 RESISTENCIA VARIABLE ...................................................................................... 31 4.1.14 SOFTPOT ............................................................................................................. 32 4.1.15 FLEXIFORCE ......................................................................................................... 34 DESARROLLO INGENIERIL ................................................................................................... 36 5.1 DESARROLLO DEL DISPOSITIVO FÍSICO...................................................................... 36 5.1.2 5.2 6 7 No temperación .................................................................................................. 39 CONSTRUCCIÓN .......................................................................................................... 40 5.2.1 NOTAS MIDI VS MÁSTIL ..................................................................................... 40 5.2.2 VELOCITY VS PRESIÓN EN EL ARCO.................................................................... 43 5.2.3 “NOTE ON” Vs FROTACIÓN DE CUERDAS .......................................................... 44 5.3 INTERVENCIÓN DEL VIOLÍN ........................................................................................ 47 5.4 PROGRAMACIÓN ........................................................................................................ 51 5.5 CIRCUITO..................................................................................................................... 55 5.6 ADAPTACIÓN INTERFAZ USB ...................................................................................... 58 5.7 FUNCIONES ADICIONALES DEL ARCO ........................................................................ 62 5.8 MEDICIÓN DE LATENCIA ............................................................................................ 63 PRESENTACIÓN Y ANÁLISIS DE RESULTADOS .................................................................... 66 6.1 PRUEBA DE FUNCIONAMIENTO ................................................................................. 66 6.2 PRUEBAS CON VIOLINISTAS ....................................................................................... 67 CONCLUSIONES Y RECOMENDACIONES ............................................................................ 70 6 8 7.1 CONCLUSIONES........................................................................................................... 70 7.2 RECOMENDACIONES .................................................................................................. 72 BIBLIOGRAFÍA ..................................................................................................................... 73 ANEXO A: Datasheet del SoftPot ................................................................................................ 74 ANEXO B: Datasheet del Flexiforce ............................................................................................. 75 ANEXO C: CODIGO DE PROGRAMACION EN LENGUAJE C .......................................................... 76 ANEXO D: Encuesta de Funcionamiento del Controlador MIDI para Violín. .............................. 82 ANEXO E: Modelo en 3D del Controlador MIDI para Violín ........................................................ 83 ANEXO F: Controlador MIDI para Violín Acotado ....................................................................... 86 ANEXO G: Controlador MIDI para Violín Acotado ...................................................................... 87 7 ÍNDICE DE FIGURAS Figura 1 Synthaxe y Octopad ..................................................................................................... 13 Figura 2 Eigenharp ...................................................................................................................... 14 Figura 3 Violín ............................................................................................................................. 19 Figura 4 Partes del Violín ............................................................................................................ 20 Figura 5 Conectores USB ............................................................................................................. 21 Figura 6 Conector DIN-5.............................................................................................................. 24 Figura 7. Tipos conectores MIDI ................................................................................................. 25 Figura 8. Status Byte ................................................................................................................... 27 Figura 9. Data Byte ...................................................................................................................... 27 Figura 10. Resistencia ................................................................................................................. 31 Figura 11. Resistencia variable .................................................................................................... 31 Figura 12. Softpot........................................................................................................................ 32 Figura 13. Funcionamiento Softpot ............................................................................................ 32 Figura 14. Resistencia Vs. Distancia ............................................................................................ 33 Figura 15. Flexiforce .................................................................................................................... 34 Figura 16. Resistencia Flexiforce ................................................................................................. 35 Figura 17. Nota Vs. Distancia ...................................................................................................... 37 Figura 18. ADSR Muestra violín................................................................................................... 38 Figura 19. ADSR Violín ................................................................................................................. 38 Figura 20. Resistencia Medición Softpot .................................................................................... 42 Figura 21. Arco Violín .................................................................................................................. 44 Figura 22. Sistema Pulsadores .................................................................................................... 45 Figura 23. Pulsadores .................................................................................................................. 45 Figura 24. Sistema Pulsadores Violín .......................................................................................... 46 Figura 25. Sistema Pulsadores Vs. Violín .................................................................................... 46 Figura 26. Mastil Original ............................................................................................................ 48 Figura 27. Mastil Modificado ...................................................................................................... 48 Figura 28. Modificacion Violin .................................................................................................... 49 Figura 29. Titinilio........................................................................................................................ 50 Figura 30. Puerto USB Violin ....................................................................................................... 50 Figura 31. Programación Pulsador .............................................................................................. 51 Figura 32. Programación Velocity ............................................................................................... 52 Figura 33. Programación Nota .................................................................................................... 53 Figura 34. Programación Conversión Nota ................................................................................. 53 Figura 35. Programación envió datos ......................................................................................... 54 Figura 36. Programación Diagrama de Flujo ............................................................................... 55 Figura 37. Circuito Protoboard.................................................................................................... 55 Figura 38. Montaje ISIS ............................................................................................................... 56 Figura 39. Protoboard ................................................................................................................. 57 Figura 40. Circuito Final .............................................................................................................. 57 Figura 41. Esquemático USB ................................................................................................. 58 8 Figura 42. Interfaz USB................................................................................................................ 59 Figura 43. Conector MIDI ............................................................................................................ 59 Figura 44. Conector MIDI Final ................................................................................................... 60 Figura 45. Cambio conectores USB ............................................................................................. 60 Figura 46. Alimentación Circuito ................................................................................................. 61 Figura 47. Interfaz MIDI USB ....................................................................................................... 62 Figura 48. Arco ............................................................................................................................ 63 Figura 49. Equipos medición latencia ......................................................................................... 64 Figura 50. Medición latencia Protools ........................................................................................ 65 Figura 51. Sesión Kontakt ........................................................................................................... 66 9 ÍNDICE DE TABLAS Tabla 1 Características Protocolo USB. ....................................................................................... 21 Tabla 2 Pines USB ........................................................................................................................ 21 Tabla 3. Canales MIDI.................................................................................................................. 26 Tabla 4. Modos MIDI ................................................................................................................... 26 Tabla 5. Características PIC 16F877A .......................................................................................... 30 Tabla 6. Características Softpot .................................................................................................. 33 Tabla 7. Características Flexiforce............................................................................................... 35 Tabla 8. Análisis Nota Vs. Distancia Violín .................................................................................. 36 Tabla 9. Medición Softpot ........................................................................................................... 41 Tabla 10. Pines USB ..................................................................................................................... 61 Tabla 11. Resultado Encuestas.................................................................................................... 68 10 INTRODUCCIÓN Desde la invención del protocolo de comunicación MIDI, la producción musical ha avanzado a grandes saltos, permitiendo por medio de este controlar parámetros esenciales para la interpretación artística, y su vez estableciendo vínculos entre dispositivos de hardware como los controladores y software especializados en sampling de instrumentos. Así mismo, la industria musical-electrónica se ha dedicado exclusivamente al desarrollo de instrumentos o controladores MIDI de temperación fija, tales como el piano o la guitarra, dada la facilidad de construcción y ejecución de estos. La música occidental a pesar de ser en su mayoría temperada, no excluye a instrumentos tan importantes como los instrumentos de cuerda frotada, cuya característica principal es su no temperación. Ya que la industria musical se encuentra en continua expansión y desarrollo, requiere cada vez más opciones para seguir estando presente de una forma auténtica, y dentro de dichas opciones se encuentra la necesidad de disponer de nuevos instrumentos que permitan innovar la forma en la que se interpreta la música y a su vez la forma en la que esta se transmiten visualmente en un escenario. De igual manera, un inconveniente bien conocido dentro de los estudios de grabación y centros afines a la producción musical, es no contar siempre con instrumentos de la mejor calidad, así como espacios acústicos adecuados y equipos de captura de gama alta, todo esto debido a su alto costo. Es así como se han creado alternativas que solucionan tales problemas, pues hay compañías que se dedican a capturar muestras de sonido de alta calidad, utilizando la mejor cadena de elementos, que van desde un Violín de altas prestaciones, hasta las mejores consolas para capturar de manera precisa su contenido acústico. Conociendo la existencia de las necesidades previamente mencionadas, es casi que indispensable la creación de un dispositivo que permita emular las condiciones de interpretación de un instrumento de cuerda frotada, cuya estética y funcionamiento aporten presencia e innovación a una puesta en escena y por último permita controlar y manipular un software de muestreo dedicado al violín principalmente, pero que a su vez sea capaz de controlar cualquier sintetizador o dispositivo que reciba el protocolo MIDI dentro de su funcionamiento. Este proyecto tiene como fin diseñar y construir un controlador MIDI para violín, que aporte una solución a todos los problemas que se mencionan anteriormente. 11 1. PLANTEAMIENTO DEL PROBLEMA 1.1. ANTECEDENTES (ESTADO DEL ARTE) Aún cuando los primeros sintetizadores se construyeron en los años 20, no fue sino hasta la década de los 60 que éstos empezaron a popularizarse, y hasta los 70’s fueron realmente comercializados por compañías como Yamaha y Roland. En 1978, gracias a la llegada de la tecnología digital, fue inventado el primer sintetizador que implementó esta tecnología, siendo capaz de emular instrumentos acústicos tales como el piano y la guitarra. Debido al gran auge que tuvieron estos dispositivos, se empezó a crear la necesidad de intercomunicación entre ellos, y así poder reproducir en un sintetizador lo que se ejecutaba en otro. Diferentes compañías tenían sus propias formas de controlar los parámetros de cada instrumento; como definir que cada voltio (V) definía el numero de octava, o incluso Yamaha propuso su propia interfaz de funcionamiento (Yamaha’s Keycode). En 1981, Dave Smith presenta ante la AES (Audio Engineering Society) un documento que describía una posible solución a los problemas de intercomunicación ente los sintetizadores, en el cual se describía un protocolo denominado MIDI (Musical Instrument Digital Interface). Fue aceptado y en 1983 fue publicada la especificación MIDI 1.0. A raíz de esto, se hizo posible controlar el sonido de un sintetizador, desde los sensores y teclas de otro; aparece el término de “Controlador MIDI”. En 1986 Bill Aitken inventa el SynthAxe, Controlador MIDI con aspecto de guitarra lo cual implica un gran avance en los instrumentos MIDI, por que inicia la era de emulación de dispositivos reales específicos, así mismo como el “Octo-Pad” de la empresa Roland, que funciona emulando instrumentos de percusión. Estos dos grandes avances dan inicio a la búsqueda de la forma en la cual la brecha que existe entre el mundo acústico y el mundo digital se haga cada vez las pequeña, esto para permitir que en un futuro se realice cualquier tipo de instrumento en su forma MIDI. En el año 2000, la compañía Zeta Systems construye un dispositivo llamado “Synthony MIDI”, el cual consistía en un transductor acústico-digital que recibía las señales acústicas de un violín de la misma compañía, y las convertía en señales MIDI que eran reproducidas por un sintetizador. Gracias a este dispositivo se hace posible el tener un instrumento acústico e intervenirlo sin dañar estas características para que funcione con el protocolo MIDI. La misma compañía, 6 años después desarrolla en K-bow; un dispositivo que se acopla con el arco de un violín y recibe parámetros como la presión y la velocidad con las que se ejecuta el instrumento, y envía de forma inalámbrica señales digitales a una interfaz conectada a un software, el cual controla un sintetizador. 12 Figura 1 Synthaxe y Octopad Fuente [online]: http://tokyo-fusion-night.cocolog-nifty.com/image/blog_image/synthaxe.jpg http://www.dmaudio.co.uk/img/octapad2.jpg En el año 2007 en la Universidad de San Buenaventura, el estudiante Ricardo Andrés Moreno Viasus desarrollo exitosamente el proyecto de grado “Diseño y Construcción de una Flauta Controladora MIDI”, la cual era capaz de diferenciar la presión ejercida por el viento en la boquilla del instrumento. Gracias a la elaboración de la Flauta MIDI como proyecto de la Universidad se abre el camino a experimentar con instrumentos poco típicos en el mundo de los controladores MIDI, para construirlos e innovar en el mercado. En el 2008 en la misma institución educativa el estudiante Andrés Ripe Rodríguez lleva a cabo el proyecto de grado “Dispositivo Conversor de Nota Musical a Nota MIDI para Bajo Eléctrico”, que funciona como detector de frecuencia y lo convierte a voltaje, que finalmente es transformado en señales MIDI. Aunque este proyecto solo cuenta con la programación y no un dispositivo físico, es un gran avance en la implementación de instrumentos híbridos Acústicos-MIDI. En Agosto del 2009, la compañía Eigenlabs presentó un innovador controlador que venía desarrollando desde el 2001 llamado “Eigenharp”; éste funciona mediante sensores de presión, los cuales, en conjunto actúan como un secuenciador. Así mismo posee una boquilla para interpretar instrumentos de viento, y controladores que pueden ser frotados. 13 Figura 2 Eigenharp Fuente [online]: http://www.clusterflock.org/wp-content/uploads/2009/10/eigenharp323x580.jpg 14 1.2 DESCRIPCIÓN Y FORMULACIÓN DEL PROBLEMA Los controladores MIDI ofrecen a los Músicos e Ingenieros de Grabación la posibilidad de capturar información que puede ser modificada y editada sin mucho problema, caso muy diferente al del audio. Así mismo no se cuenta con un dispositivo que emule las características propias de un instrumento de cuerda frotada. ¿Cómo mejoraría la experiencia de un Músico o un Ingeniero de Grabación si contara con un controlador MIDI para instrumentos de cuerda frotada? 1.3 JUSTIFICACIÓN Gracias a las ventajas que ofrecen programas de producción musical, en especial aquellos especializados en librerías de sampling, los estudios o usuarios a nivel mundial prefieren éstos en lugar de un instrumento real, ya que se tiene la opción de elegir el tipo de instrumento y su calidad, la forma de tocarlo además del ambiente o recinto en que se reproduce. La forma de comunicación o ejecución de este tipo de programas más eficiente se halla en los controladores, siendo en su mayoría instrumentos tipo teclado o percutidos, por el cual violín o instrumento de cuerda frotada pretende ser una alternativa para la adecuada ejecución de dichos instrumentos, debido a que éste tiene unas características exclusivas que no pueden ser encontradas en un teclado o cualquier controlador que emule un instrumento temperado. 15 1.4 OBJETIVOS 1.4.1 Objetivo general: • Diseñar y Construir un Controlador MIDI para Violín 1.4.2 Objetivos específicos: • Analizar los diferentes parámetros de instrumentos de cuerda frotada a tener en cuenta para el diseño del controlador. • Diseñar un algoritmo basado en C que permita la emulación por medio de MIDI la ejecución de un violín. • Diseñar un sistema con conexión USB alimentador de voltaje y a su vez actúe como interfaz MIDI. 1.5 ALCANCES Y LIMITACIONES DEL PROYECTO 1.5.1 Alcances El Controlador MIDI para Violín, podría ser muy útil para grabaciones y prácticas musicales que no poseen presupuesto suficiente para obtener un violín de buena calidad. También, si se logra a cabalidad, podrá diseñarse un controlador para otros instrumentos de cuerda frotada, tales como un Cello, una Viola, etc. Así mismo, a nivel comercial sería un producto novedoso, con una gran proyección en el mercado internacional, dada la ausencia de un dispositivo como este en el mundo. 1.5.2 Limitaciones La principal limitación del proyecto es la dificultad de encontrar ciertos sensores electrónicos que se acomoden a las medidas específicas de un Violín comercial, ya que fabricarlos de forma personalizada es bastante costoso para un proyecto de pregrado. 16 2. METODOLOGÍA 2.1. ENFOQUE DE LA INVESTIGACIÓN El enfoque apropiado para el presente proyecto es el Empírico-analítico, ya que su principal interés es la aplicación técnica de métodos de investigación que permitan hallar nuevas formas de ingeniería, comprobables de manera práctica, y a su vez puedan ser interpretadas. 3. LÍNEA DE INVESTIGACIÓN DE USB / SUB-LÍNEA DE FACULTAD / CAMPO TEMÁTICO DEL PROGRAMA 3.1 LÍNEA DE INVESTIGACIÓN DE USB La Línea institucional adecuada para el proyecto es TECNOLOGÍAS ACTUALES Y SOCIEDAD, pues ya es sabido que la utilización de nuevas tecnologías permite ofrecer a las comunidades soluciones diversas a necesidades creadas en su entorno. 3.2 SUB-LÍNEA DE FACULTAD Sub-línea de facultad: PROCESAMIENTO DE SEÑALES. Por medio de esta sub-línea se interpreta cierta cantidad de información, se integra dentro de un mismo sistema para ser procesada y se envía a ciertos dispositivos, con el fin de controlar diversos parámetros dentro de éstos. 3.3 CAMPO TEMÁTICO DEL PROGRAMA Campo temático del programa: DISEÑO DE SISTEMAS DE SONIDO. Por medio de la creación e implementación de nuevas tecnologías se pretende desarrollar un dispositivo innovador, dentro de un mercado que actualmente enfrenta necesidades y busca soluciones vanguardistas constantemente. 3.4 HIPÓTESIS Mediante la comprensión de las diferentes características de los instrumentos de cuerda frotada y el desarrollo de un sistema que conste de un dispositivo físico y un algoritmo matemático que sea capaz de generar e interpretar las variables de ejecución, será posible desarrollar un proceso de conversión análoga digital que haga viable la transmisión de datos propios del protocolo MIDI. 17 4. MARCO DE REFERENCIA 4.1. MARCO TEÓRICO – CONCEPTUAL 4.1.1 INSTRUMENTOS DE CUERDA FROTADA En este tipo de instrumentos, la cuerda vibra al ser frotada con un arco. Éste se desliza sobre las cuerdas para hacerlas vibrar. Estos tienen especial relevancia en las orquestas porque permiten producir los timbres más matizados y suaves. Son instrumentos melódicos o lineales, lo que significan que producen un sonido determinado, es decir, una nota simple. Además, si el arco pasa por dos o más cuerdas al mismo tiempo se pueden conseguir acordes. 4.1.2 VIOLÍN El violín es un instrumento de cuerda frotada que consta de cuatro cuerdas, que están afinadas por intervalos de quintas; el decir: G4, D5, A5 y E6, referenciados a 440Hz, aunque para orquestas y agrupaciones se afina con 442Hz como frecuencia de referencia, ya que factores como la temperatura y el aflojamiento de las cuerdas tienden a desafinar el instrumento. Este instrumento se caracteriza por poseer una forma abombada y una silueta que podría definirse como un ovalo que tiene un estrechamiento en forma de C; así como la ausencia de trastes, lo cual lo convierte en un instrumento nada sencillo de interpretar. En cuanto a tamaño, es el más pequeño de la familia de instrumentos de cuerda clásicos, donde están la Viola, el Violonchelo y el Contrabajo. El violín más utilizado por los adultos es de tamaño 4/4, cuya longitud total es de 35.5 cm, y su ancho es de 20 cm como máximo; y existen violines destinados a jóvenes y niños de los tamaños ¾, 2/4, y ¼. 18 Figura 3 Violín Fuente [online]: http://robersonsmusic.com/wpcontent/uploads/2010/10/transitional_violin.jpg Las partituras para Violinistas siempre son escritas en Clave de Sol, la cual era conocida anteriormente como “clave de Violín”. 4.1.2.1 PARTES DE VIOLÍN A simple vista la caja de resonancia es la principal parte y la que más resalta dentro del violín, la cual se compone de elegantes formas. Dicha caja está construida con dos tablas, la tabla armónica y la tabla del fondo, esta última generalmente hecha con madera de arce. Las cubiertas laterales o aros, y la tabla armónica está construida de madera de abeto blanco o rojo. Entre las dos tapas se encuentra una barra cilíndrica de madera llamada alma, que cumple la función de tener tensadas estas tablas y aportar rigidez al sistema. Cabe mencionar el mástil, el puente, las cuerdas y el arco entre las partes más importantes de este instrumento. 19 Figura 4 Partes del Violín Fuente [online]: http://sinalefa2.files.wordpress.com/2009/03/partes-del-violin-esp1.jpg 4.1.3 UNIVERSAL SERIAL BUS Mejor conocido por sus siglas USB, es un estándar y protocolo diseñado para la comunicación entre dispositivos electrónicos. Fue inventado y distribuido por Intel y un grupo de empresas en respuesta al problema de mayor facilidad en el sistema Plug-And-Play, antes de la invención de este protocolo, cada vez que se quería conectar un nuevo dispositivo o interfaz a un computador, era necesario el apagado y conexionado de este. La respuesta la encontró el ingeniero de Intel Ajay Bhatt, quien tuvo la idea de tener un puerto estandarizado que permitiera conectar y desconectar dispositivos casi que en tiempo real. Una de las grandes ventajas que posee este protocolo es que, a diferencia de sus predecesores, este puede suplir el voltaje necesario para el funcionamiento de los periféricos. Los dispositivos pueden conectarse en cascada nivel 5, permitiendo el conexionado de hasta 127 dispositivos a la vez. 20 Tabla 1 Características Protocolo USB. Características Longitud 5 m(máximo) Ancho 11.5 mm Alto 4.5 mm Conexionado en caliente Si Cables 4 Cables Señal 5 voltios DC Max Voltaje 5 Volt. Max. Corriente 500-900 mA 1.5 - 480 Transmisión datos Mb/s Este protocolo posee una serie de conectores únicos para el mismo y una definición de pines descrita en seguida. Tabla 2 Pines USB Pin 1 2 3 4 Nombre VCC DD+ GND Color Rojo Blanco Verde Negro Descripción VCC + V5 Datos Datos + Tierra Figura 5 Conectores USB Fuente [online]: http://pinouts.ru/connectors/usb_a_b_male.gif 21 4.1.4 SINTETIZADOR Instrumento musical electrónico diseñado para producir sonido generado artificialmente, usando técnicas como síntesis aditiva, substractiva, de modulación de frecuencia, de modelado físico, modulación de fase o secuenciación, para crear sonidos. El sintetizador crea sonidos mediante manipulación directa de corrientes eléctricas (como los sintetizadores analógicos), mediante la manipulación de una onda FM digital (sintetizadores digitales), manipulación de valores discretos usando ordenadores (sintetizadores basados en software), o combinando cualquier método. En la fase final del sintetizador, las corrientes eléctricas se usan para producir vibraciones en altavoces, auriculares, etc. Este sonido sintético se distingue de la grabación de sonido natural, donde la energía mecánica de una onda de sonido se transforma en una señal que más tarde se convertirá de nuevo en energía mecánica durante su reproducción. 4.1.5 SECUENCIADOR Un secuenciador es un dispositivo electrónico físico o una aplicación informática que permite programar y reproducir eventos musicales de forma secuencial mediante una interfaz de control físico o lógico conectado a uno o más instrumentos musicales electrónicos. El interfaz de control más extendido es el estándar MIDI. Un tipo de secuenciador digital muy conocido es el desarrollador por la empresa Native Intruments; Kontakt el que tiene una gran librería de instrumentos que varían desde violines y baterías hasta famosos sintetizadores a través de la historia. 4.1.6 SAMPLING Se conoce como Sampling al acto de tomar una porción (simple) de una grabación sonora y utilizarla como un instrumento o sonido evocando un evento. Su gran acogida actual se debe al nacimiento en 1970 del hip hop, música que basaba toda su parte instrumental en sonido generados por computador o que era previamente grabados y convertidos en samplers. En la actualidad existen varios métodos de sampling o sampleo, algunos de ellos como los loops, o secuencias que permiten construir canciones enteras, pero sin duda el 22 método de sampleo más popular es el de instrumentos musicales como librerías. Estos consisten en capturar cada nota e interpretación posible de un tipo de instrumentos, para eso se utiliza lo mejor en cada paso; un instrumento de alta calidad, micrófonos y equipos electrónicos de altas prestaciones y finalmente un entorno acústico adecuado para lograr el mejor sonido posible. Todo se compila en una sola librería y se distribuye a un precio muy bajo comparado con lo que costó la grabación inicial, Esto permite al usuario promedio tener acceso a sonidos que de otra forma sería muy difícil conseguir. 4.1.7 MIDI Por sus siglas en ingles “Musical Instrument Digital Interface”, es un protocolo de comunicación estandarizado por la industria que permite el intercambio de datos, ya sea comunicación o sincronización entre dispositivos tales como computadores, sintetizadores, secuenciadores y controladores. Este no transmite ninguna clase de audio, solo envía mensajes codificados acerca del evento tocado en el momento. Como protocolo electrónico es sumamente exitoso, ya que fue introducido en 1982 y en la actualidad se sigue usando de forma constante cada vez en más tipos de aplicación. Todos los dispositivos ya sean instrumentos, controladores o software que son compatibles con el protocolo MIDI siguen la especificación MIDI 1.0, por lo que pueden interpretar cualquier mensaje enviado por otro dispositivo, esto permite la fácil composición y sincronización de muchos módulos , enviando información desde un solo dispositivo. 4.1.7.1 TRANSMISIÓN DE DATOS La transferencia de información define diversos tipos de datos como números que pueden corresponder a notas particulares, números de patches de sintetizadores o valores de controladores. Gracias a esta simplicidad, los datos pueden ser interpretados de diversas maneras y utilizados con fines diferentes a la música. El protocolo incluye especificaciones complementarias de hardware y software. El protocolo MIDI envía múltiples mensajes de manera serial en forma de bytes de 10 bits, de los cuales el primero y el último se usan para indicar que se empieza y se finaliza el mensaje, por lo que finalmente quedan 8 bits, lo que permite una resolución 23 de 256 posibilidades, que es dividida según el tipo de mensajes a enviar. Por ejemplo el número de notas es definido por 7bits que equivale a 128 notas diferentes al igual que el velocity o dinámica del instrumento. La velocidad de transferencia es de 31.25 Kbps de formal serial y asincrónica. 4.1.7.2 CONECTORES MIDI Figura 6 Conector DIN-5 El Protocolo MIDI usa conectores DIN-5 con disposición de 180°, de los 5 pines solo son usados 3, esto se debe a que inicialmente se pretendía extender el protocolo, pero debido a su gran estabilidad que decidió dejarlo tal y como estaba. Los pines dentro del conector esta dispuestos de la siguiente forma: 1. 2. 3. 4. 5. No es usado. Protección. No es usado. Tierra. Transmisión MIDI. Existen tres tipos de conectores MIDI 24 Figura 7. Tipos conectores MIDI Fuente [online]: http://www.burakmisket.com/resimler/MidiSock.gif 4.1.7.3 MIDI OUT Este puesto envía todos los eventos MIDI que son interpretados y codificados de forma correcta por el dispositivo, la mayoría de los controladores caseros actuales conservan este puerto. Ya que los otros pueden ser reemplazados por el protocolo USB. 4.1.7.4 MIDI IN Este puerto recibe la información que es enviada desde otro dispositivo, y la envía al procesador del modulo, el cual decodifica los datos y los convierte en eventos reales. 4.1.7.5 MIDI THRU Este puerto recibe la información del puerto MIDI IN y envía una copia exacta, lo que permite el encadenamiento de varios dispositivos, sincronizados y controlados por uno solo o Máster. 4.1.7.6 CANALES MIDI El protocolo asigna 4 bits a la disposición de canales, esto permite 16 combinaciones o posibilidades de canales, estos pueden ser enviados al tiempo, y el dispositivo receptor discrimina el canal que le sea asignado. 25 Tabla 3. Canales MIDI Bits 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Canal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 4.1.7.7 MODOS MIDI Existen 4 modos en los que el protocolo MIDI funciona y estos pueden ser cambiados directamente sobre el dispositivo Tabla 4. Modos MIDI Numero 1 2 3 4 Nombre Omni ON/Poly Omni ON/Mono Omni OFF/Poly Omni OFF/Mono Descripción Todos los canales/Varias Notas Todos los canales/Una Nota Un canal/Varias Notas Un canal/Una Nota 4.1.7.8 MENSAJES MIDI El protocolo MIDI para transmitir información usa el sistema binario el cual solo permite 2 valores exactos 1 o 0, a un dato en específico se le llama bit. Un solo bit no representa nada en el protocolo MIDI, sin embargo, si se agrupan varios de estos se puede codificar un mensaje. 26 MIDI usa agrupaciones de 10 bits, a los que llama bytes. En un Byte MIDI el primer y último bit se usan solo como información de comienzo y final de mensaje, por lo que finalmente queda un Byte o agrupación de 8 bits. La mayoría de los mensajes MIDI usan 2 o más Bytes que se envían de manera simultánea. Estos son de dos clases. 4.1.7.8.1 BYTE DE ESTADO Figura 8. Status Byte Fuente [online]: http://itp.nyu.edu/physcomp/uploads/midi/midi_screen7.png Byte de ocho bits cuyo bit inicial siempre será 1, dividido en dos partes, la primera indica el tipo de mensaje que se envía ya sea de voz o de canal, y la segunda parte indica el canal MIDI que se va a usar. 4.1.7.8.2 BYTE DE DATOS Figura 9. Data Byte Fuente [online]: http://www.planetoftunes.com/sequence/se_media/message.gif 27 A diferencia del Byte de estado, este empieza con el valor numérico de 0, esto para que el dispositivo receptor pueda diferencia entre uno y el otro. Este Byte representa el valor del mensaje enviado anteriormente, por ejemplo, si se envió una activación de nota, el Byte de datos dice que nota es, y un segundo byte indica el Velocity de la nota. Al tener 7 bits disponible se tiene un resolución de 128 valores, sin embargo en casos como el fine tunning se tiene 14 bits lo que da una resolución de 16384 valores. 4.1.7.8.3 MENSAJES DE CANAL Estos se envían exclusivamente a través del canal definido, el receptor solo podrá recibirlos e interpretarlos si el canal por el cual recibe coincide con preestablecido para este mensaje. Entre esto se encuentran los mensajes de activación y desactivación de nota, los mensajes de pitch bend, entre otros. 4.1.7.8.4 ACTIVACIÓN DE NOTA Note ON como se conoce en ingles, es un mensaje que indica que una nota está siendo tocada por el instrumento. Contiene 3 Bytes que llevan la información necesaria para que el receptor la interprete y ejecute. 1 Byte – Byte Estado, Indica el canal por el que se transmite el mensaje y el contenido de este; NOTE ON. 2 Byte – Byte Datos, en este se encuentra la información de la nota que se está activando, siendo un valor entre 0 y 127 que representa una nota en una octava especifica. 3 Byte – Byte Datos, Finalmente se envía el velocity o la dinámica con la que se ejecuto la nota, esto para darle mayor realismo a la nota. 4.1.7.8.5 DESACTIVACIÓN DE NOTA Es un mensaje de canal conocido también por su nombre en inglés, NOTE OFF, este consta de 3 Bytes que permiten comunicar que una nota que previamente estaba siendo ejecutada deja de ser tocada. La información de los bytes es la siguiente. 28 1 Byte – Byte Estado, al igual en el NOTE ON Indica el canal por el que se transmite el mensaje y el contenido de este; NOTE OFF. 2 Byte – Byte Datos, en este se encuentra la información de la nota que se está activando, siendo un valor entre 0 y 127 que representa una nota en una octava especifica. 3 Byte – Byte datos, Finalmente se envía el velocity o la dinámica con la que se ejecuto la nota en un principio. Una forma alternativa de enviar esta información es enviar un mensaje de canal NOTE ON pero en su tercer byte que indica el velocity, enviar un valor de 0, esto también será interpretado como una desactivación para la mayoría de dispositivos MIDI. 4.1.8 LENGUAJE DE PROGRAMACIÓN Se conoce como un idioma explicito que permite expresar cálculos a realizar maquinas computacionales. Este puede usarse para crear programas que controlan la interfaz físico-mecánica o la interfaz lógica de dispositivos electrónicos por medio de algoritmos lógicos. Está constituido por un conjunto de reglas sintácticas y semánticas las cuales son la base de la programación, estas varían según el lenguaje usado, sin embargo el proceso básico es común, consta de los siguientes pasos; Planteamiento del problema y desarrollo lógico para resolverlo. Escritura de la lógica en el lenguaje de programación determinado (C, C++, etc.). Compilación de la lógica en el lenguaje propio de la maquina. Prueba y depuración del programa. 4.1.9 LENGUAJE C++ Lenguaje de programación hibrido que permite la manipulación de objetos, fue desarrollado por Bjarne Stroustrup a mediados de los ochenta. Mejora bastante las funcionalidades de su antecesor C, debido a su configuración multi-paradígmica; Programación genérica, estructural y orientada a objetos. 29 4.1.10 PIC MICROCONTROLADOR De sus siglas en ingles Peripheral Interface Controller (controlador de interfaz periférico), es un dispositivo electrónico o chip que incluyes las funciones básicas de un computador en un solo sistema de tamaño pequeño, estas son CPU (unidad central de procesamiento), memoria y unidades de entrada y salida. Su diferencia con los otros micro-controladores es su arquitectura central caracterizada por los siguientes esquemas. Arquitectura central Área de código y de datos separadas. Un reducido número de instrucciones de largo fijo. La mayoría de las instrucciones se ejecutan en un solo ciclo de. Todas las posiciones de la RAM funcionan como registros de origen y de destino de operaciones matemáticas y otras funciones. Una pila de hardware para almacenar instrucciones de regreso de funciones. Una relativamente pequeña cantidad de espacio de datos. El espacio de datos está relacionado con el CPU, puertos, y los registros de los periféricos. 4.1.11 PIC 16F877A Micro-controlador construido por la compañía Microchip Tabla 5. Características PIC 16F877A PIC 16F877A Entradas A/D Voltaje de entrada Temperatura Oscilador 33 8 5V de -55°C a 125°C 20 MHz Consta de 40 pines, 33 entradas/salidas de las cuales 8 pueden usarse como conversores análogo-digital, VDD de 5 voltios, funciona con un oscilador de 20 MHz y es estable en temperaturas de -55°C a 125°C 30 4.1.12 RESISTENCIA Componente electrónica cuya función es introducir una resistencia eléctrica en dos puntos de un circuito. Por medio de aleaciones de diferentes materiales y carbón, la resistencia se opone al paso de los electrones, permitiendo la construcción de infinidad de diseños electrónicos. Figura 10. Resistencia 4.1.13 RESISTENCIA VARIABLE También llamado potenciómetro es un resistor cuya resistencia puede variar en tiempo real. Esta resistencia oscila entre dos valores, por lo general 0 Ohm y un número alto de Ohm, esto permite varia la corriente o el potencial en un circuito con tan solo la rotación del mismo. Figura 11. Resistencia variable 31 4.1.14 SOFTPOT Figura 12. Softpot Fuente [online]: http://www.adafruit.com/adablog/wp-content/uploads/2009/07/softpot-lrg.jpg Sensor desarrollado por la empresa Spectrasymbol, es un potenciómetro de membrana que funciona como elemento resistivo. Este funciona con dos capaz separadas puesta de manera paralela separados por un material aislante, al posicionar el dos sobre la parte superior, estas capaza se rosan produciendo una resistencia equivalente a la posición. Figura 13. Funcionamiento Softpot Fuente [online]: http://www.spectrasymbol.com/wpcontent/themes/spectra/images/hotpot-press.jpg 32 El sensor posee un comportamiento lineal, es decir la resistencia varia de forma proporcional a la posición, su variación va del extremo inferior en 0 Ohm al extremo superior cuyo valor máximo es de 10 KOhm. Siguiendo el este comportamiento: Figura 14. Resistencia Vs. Distancia Resistencia 12 10 KOhm 8 6 4 Resistencia 2 19,5 18 16,5 15 13,5 12 10,5 9 7,5 6 3 4,5 1,5 0 0 Cm Algunos datos técnicos importantes del funcionamiento del sensor son los siguientes: Tabla 6. Características Softpot Ciclo de Vida Resistencia Mínima Resistencia Máxima Tolerancia Temperatura > 1 millón 0 Ohm 10 Kohm ±2% -40°C +85°C 33 4.1.15 FLEXIFORCE Figura 15. Flexiforce Fuente [online]: http://www.tekscan.com/sites/default/files/flexiforce-forcesensor_0.jpg Piezo-resistor variable diseñado por la empresa estadounidense Teksan para sistemas de medición médicos, este tiene un “punto de presión”, el cual: Detecta y mide un cambio relativo en carga aplicada. Detecta y mide un radio de variación en la fuerza. Detecta el contacto. Cuando no existe presión sobre el sensor este tiene una resistencia infinita o equivalente a un circuito abierto, a medida que se presiona este, la resistencia disminuye permitiendo el paso de corriente, por lo cual se puede medir de esta forma que tanta fuerza se está aplicando en un instante determinado. Este comportamiento no se presente de manera lineal si no de la siguiente forma: 34 Figura 16. Resistencia Flexiforce Fuente [online]: http://www.tekscan.com/sites/default/files/flexiforce-forceresistance-conductance.jpg Finalmente los datos más importantes del funcionamiento del sensor: Tabla 7. Características Flexiforce Ciclo de Vida Resistencia Mínima Resistencia Máxima Tolerancia Temperatura > 1,3 millón 20 KOhm ∞ ±3% -40°C +85°C 35 5 DESARROLLO INGENIERIL 5.1 DESARROLLO DEL DISPOSITIVO FÍSICO. Se adquirió un Violín Acústico, de tamaño completo, es decir “4/4” (modelo en 3D con cotas, puede ser encontrado en el anexo F), y el primer paso a seguir fue el reconocimiento de sus características tanto musicales como acústicas. Para este fin, y con la ayuda de un afinador, se fue pulsando cada cuerda del violín hasta obtener notas totalmente afinadas referenciadas a la clave bien temperada (A 440Hz) y se fue avanzando con intervalos de un semitono. Debido a que es un instrumento no temperado, hay que ser muy preciso con la pulsación de la nota, pues es muy fácil desviarse en algunos “cents” al realizar este proceso. Se encontró que su comportamiento en cuanto a distancia de pulsación en el mástil versus la nota emitida se acerca a la linealidad, razón por la cual se decide aproximar el comportamiento a una función Lineal, dato indispensable para la programación. Tabla 8. Análisis Nota Vs. Distancia Violín Cuerda 4 Nota G2 Ab2 A2 Bb2 B2 C3 Db3 D3 Eb3 E3 F3 Gb3 G3 Ab3 A3 Bb3 B3 C4 Distancia (cm) 0 1.5 3.25 4.85 6.4 7.85 9.15 10.45 11.8 12.9 14 15 15.75 16.1 17.55 18.5 19.2 19.9 Cuerda 3 Nota D3 Eb3 E3 F3 Gb3 G3 Ab3 A3 Bb3 B3 C4 Db4 D4 Eb4 E4 F4 Gb4 G4 Distancia (cm) 0 1.7 3.5 4.9 6.6 8.1 9.35 10.5 11.9 12.85 13.85 14.7 15.8 16.8 17.4 18.5 19.3 20 Cuerda 2 Nota A3 Bb3 B3 C4 Db4 D4 Eb4 E4 F4 Gb4 G4 Ab4 A4 Bb4 B4 C5 Db5 D5 36 Distancia (cm) 0 1.75 3.45 5.2 6.6 8 9.45 10.2 12 12.8 13.9 14.8 15.9 16.7 17.7 18.5 19 19.9 Cuerda 1 Nota E4 F4 Gb4 G4 Ab4 A4 Bb4 B4 C5 Db5 D5 Eb5 E5 F5 Gb5 G5 Ab5 A5 Distancia (cm) Dist. Promedio (mm) 0 0.0 1.89 17.1 3.55 34.4 5.35 50.8 6.75 65.9 8.2 80.4 9.25 93.0 10.6 104.4 11.5 118.0 12.7 128.1 13.9 139.1 15 148.8 15.75 158.0 16.2 164.5 17.55 175.5 18.55 185.1 19.2 191.8 19.9 199.3 Figura 17. Nota Vs. Distancia Nota Vs. Distancia (cm) 25 20 15 Nota Vs. Distancia (cm) 10 5 A5 Ab5 G5 Gb5 F5 E5 Eb5 D5 C5 Db5 B4 Bb4 A4 Ab4 G4 Gb4 F4 E4 0 Por otra parte, se analizó el comportamiento en cuanto a dinámica y envolvente ADSR (Attack, Decay, Sustain, Release) para hallar la mejor forma de adquirir los datos de “velocity”; pues son una parte importante de los mensajes MIDI que va a enviar el dispositivo hacia la plataforma software que reproducirá las muestras de Violín en tiempo real. Se capturó una nota del violín en fortepiano, para analizar el comportamiento anteriormente descrito, y se procedió a analizarlo utilizando el software Adobe Audition, el que permitió observar la conducta en amplitud de la señal versus el tiempo. 37 El resultado al que se llegó después de analizar la muestra anterior fue este. Figura 18. ADSR Muestra violín Aun así, Para tener una mejor apreciación en cuanto a esta variable, y su vez contar con un punto de vista objetivo, se realizó una reunión con un intérprete profesional de Violín. Figura 19. ADSR Violín Fuente [online]: http://i258.photobucket.com/albums/hh263/kaux/MisImagenesDidacticas/ExpADSR.j pg 38 El señor Juan Carlos Prieto, de Chía, asistió con su propio instrumento y nos mostró algunos de los métodos existentes para la interpretación de este. Se evidenció que el instrumento produce una mayor o menor sonoridad dependiendo de qué tan alta sea la presión aplicada en el arco con el que se frotan las cuerdas. Esto fue de una gran ayuda pues resolvió la inquietud de dónde poner exactamente el sistema que recoja los datos de presión y los envíe como mensajes MIDI de “velocity”. Además, hay que tener en cuenta que al frotar el arco, pueden estar pasando varias cosas, es decir, si no se frota con la suficiente presión, la cuerda no alcanzará a vibrar plenamente y como consecuencia no emitirá nota alguna; igualmente, si esta es presionada con mucha fuerza, no tendrá la libertad suficiente para vibrar y tampoco emitirá ningún sonido. 5.1.2 No temperación La no temperación, ya anteriormente mencionada en el marco teórico, se refiere a la ausencia de trastes en determinados instrumentos, en este caso el Violín, lo cual le permite desafinarse para bien o para mal dentro de determinada interpretación. Aunque técnicas de interpretación como la “Suzuki”1 sugieren manejar el violín por semitonos, de alguna forma ignorando la capacidad de desafinación de este; es evidente que ésta característica es uno de los mayores desafíos a la hora de construir un dispositivo que emule las características de los instrumentos de cuerda frotada. De igual forma todas las librerías disponibles en el mercado ofrecen muestras de violines totalmente afinadas con el A440 como referencia; pero su desafinación se hace posible mediante el “knob” de desafinación disponible en los teclados controladores convencionales. Entonces, lo que se busca es un sistema que permita esa libertad de movimiento en el mástil y que por supuesto emule con precisión la desafinación que pueda darse. _____________________ 1. basándose en la información brindada en la fuente http://www.metodosuzuki.com/ 39 5.2 CONSTRUCCIÓN 5.2.1 NOTAS MIDI VS MÁSTIL No fue sencillo pensar en un mecanismo que ofreciera la posibilidad de distintas notas MIDI y que a su vez no ocupara un numero exagerado de salidas para que fueran al micro-controlador 16F877A; pues al principio se pensó en una serie de pulsadores en cada nota, con el inconveniente de tener alrededor de 40 salidas, lo cual superaba su número de entradas disponibles en tal dispositivo y esto conllevaba a interconectar de manera paralela 2 o más de estos micro-controladores. Finalmente, mediante una constante búsqueda, se encontró una solución que se acomodaba a las exigencias de tener una lectura continua del posicionamiento de los dedos en el momento de interpretar una nota determinada en el mástil. Los sensores de posición “Softpot” desarrollados por la compañía “Spectraplus“ son una membrana extremadamente delgada y alargada; y tienen la característica de ser una resistencia variable de 10k Ohm, dependiendo de la posición el dedo dentro de su superficie táctil. Estos sensores resultaron ser una gran alternativa para el mayor obstáculo del proyecto, siendo este la “No Temperación”; pues al existir un valor de resistencia distinto para cada posición de los dedos, es posible determinar qué mensaje de nota y de desafinación debe ser enviado al micro-controlador, con el fin de enviar una serie de bytes precisa al software de sampling determinado. Se optó por un sensor de longitud de 20 cm, pues es el que se acerca más a la longitud del mástil del violín, que es de alrededor de 26cm; esto visto como una limitación, ya que se depende enteramente de las dimensiones establecidas por la empresa que fabrica dichos sensores; pues están diseñados de manera estándar para el mercado mundial, y, una fabricación exclusiva, que se acomode a las dimensiones necesitadas para el dispositivo tendría un costo aproximado de USD 10000, que por obvias razones se aleja del presupuesto establecido al inicio de este proyecto. Una vez adquiridos los sensores “Softpot” el paso a seguir fue medir todas sus características de funcionamiento y hallar las posibles variables que afectara el desempeño óptimo del futuro controlador, ya que factores tanto atmosféricos como físicos podrían variar las lecturas que micro controlador. Según el Datasheet del “Softpot” que puede ser consultado en el anexo 1, éste tiene un comportamiento totalmente lineal de resistencia vs distancia. Pero aún así, esto tuvo que ser verificado MIDIéndolo con un multímetro, en distintos ambientes, con temperaturas distintas, para lo cual se realizó el siguiente proceso: 40 Primera Medición: Se realizo en el laboratorio de acústica de la Universidad de San Buenaventura, a temperatura ambiente y humedad promedio. Con un multímetro digital se midió la resistencia en Ohms de tres diferentes 10 posiciones dentro de la superficie táctil del sensor, avanzando de forma continua desde el extremo inferior hasta el extremo superior. Segunda Medición: Se llevo a cabo en un día soleado en las afueras del campus universitario, con una temperatura y humedad relativa de una tarde soleada en la ciudad de Bogotá2, manteniendo el mismo proceso de la primera medición. Tercera Medición En esta ocasión el sitio de medición fue una casa campestre a las afueras de la ciudad de chía, utilizando como sistema de enfriamiento un congelador convencional en donde se introdujeron los sensores por un periodo de 15 minutos a un temperatura promedio de -4º C, para luego ser medidos mediante el proceso que se llevo a cabo en las dos mediciones anteriores. Luego de realizar las tres mediciones se procede a tabular los datos obtenidos para su posterior análisis comparativo y promedio. Dichos resultados están referenciados en la tabla 9. Tabla 9. Medición Softpot Comportamiento según datasheet Medicion 1 Medicion 2 Medicion 3 Promedio Distancia(cm) Resistencia (Ohm) Resistencia (Ohm) Resistencia (Ohm) Resistencia (Ohm) Resistencia (Ohm) 0 0 0,03 5 44 16,34 2 1000 985,22 1008 991,32 994,85 4 2000 2040,42 1992,45 2015,96 2016,28 6 3000 2998 3024 3100,01 3040,67 8 4000 4025,15 3900,12 4002,56 3975,94 10 5000 4987,52 4999,8 5000,47 4995,93 12 6000 6034 6014,1 5901,96 5983,35 14 7000 7022,67 6994,3 7002,4 7006,46 16 8000 7950 8032 8104,2 8028,73 18 9000 8934,99 9004,85 9015,23 8985,02 20 10000 9975,45 10000 9885,23 9953,56 ________________________________ 2. Información meteorológica de Bogotá http://tiempoyhora.com/América-del-Sur/Colombia/DistritoCapital-Colombia/Bogotá-Distrito-Capital 41 Resultados la medición están referenciados en la Figura 20. Y efectivamente su comportamiento es lineal e independiente de la temperatura. Figura 20. Resistencia Medición Softpot 12000 Resistencia (Ohm) 10000 8000 Referencia Medicion 1 6000 Medicion 2 Medicion 3 4000 Promedio 2000 0 0 2 4 6 8 10 12 14 16 18 20 Distancia (cm) Se corrobora de manera fehaciente la invariabilidad de la respuesta lineal de los sensores lo cual los hace aptos para el uso en cualquier ambiente de temperatura. Habiendo confirmado y definido los sensores a implementar, el paso a seguir es integrarlos al dispositivo de la forma más ergonómica posible, de manera que el instrumentista no encuentre diferencia entre un violín acústico y en controlador MIDI para violín. Debido a las dimensiones de fabrica del Softpot y teniendo que se implementaran 4 de estos, se hizo necesario modificar la dimensión tanto de los sensores como del mástil del violín. Se entabló comunicación vía e-mail, con Spectraplus, la compañía fabricante de los sensores, para consultarles acerca de la posibilidad de reducir sus dimensiones sin que esto afectara su optimo funcionamiento, obteniendo una repuesta negativa por parte de la empresa. Debido al gran valor de estos sensores la única alternativa era intentar reducir la dimensión de uno de ellos y medir su funcionalidad de nuevo. El recorte del sensor conservo intactas sus características electrónicas. 42 Por otra parte, y aun disminuyendo las dimensiones del Softpot, se hizo necesario modificar las dimensiones del mástil, para que este pudiera contener en su superficie los 4 sensores, este trabajo fue encargado a un lutier quien creó un mástil rectangular de 4cm x 25 cm tal y como se observa en la imagen 27. Cada uno de los sensores estará conectado al PIC, por sus entradas de conversor análogo/digital, las cuales convierten el valor de la resistencia de entre 0 y 10k Ohm a un valor digital de 0 a 127. La razón de ser de 128 posibilidades como números digitales se debe a que éste es el mayor valor permitido dentro del protocolo MIDI 1.0, pues ya es sabido que se trabaja con mensajes de 8 bits, utilizables 7 bits. 5.2.2 VELOCITY VS PRESIÓN EN EL ARCO Dentro del protocolo de comunicación MIDI, existe un parámetro llamado “Velocity” el cual indica al dispositivo la dinámica con la que fue ejecutada la nota, y que perceptivamente se identifica como qué tan suave o tan fuerte se interpreta determinado instrumento. Éste se convierte en un parámetro fundamental del proyecto, toda vez que sin su presencia es virtualmente imposible la emulación adecuada de un violín acústico. Esta variable, al ser analizada en un violín acústico, depende únicamente de cuanta presión sea ejercida por el arco. Entonces, es lógico decir que se debe implementar un sistema capaz de reconocer dichas variaciones de presión dentro del arco frotador. Para este fin, se adquirió un sensor de presión llamado “Flexiforce” de la compañía estadounidense “Tekscan“, el cual posee un área de de diámetro de 1 cm, en donde se ejerce determinada fuerza, y como resultado este arroja un valor de resistencia determinado. Los sensores “Flexiforce”, a diferencia de los “Softpot” son capaces de detectar variaciones en la presión aplicada sobre su superficie activa. Basándose en la información brindada por el fabricante, se adquirió el sensor capaz de discernir variaciones entre 0 Lbs. y 1 Lbs., puesto que es el que más se acerca a la presión efectuada por el interprete violinista sobre el arco en el momento de excitar una cuerda, dado que el siguiente rango de variación de presión es de 0 a 10 Lbs, sobrepasa la fuerza ejercido al momento de la interpretación por lo cual la lectura del sensor no sería la correcta. Este sensor de presión fue ubicado en el arco, entre los filamentos y el fuste, mediante un material llamado titinilio, una fusión del titanio y el vinilo, que se encuentra comúnmente en las gomas de borrar comunes; y cuya principal característica es ser 43 suave y flexible, perfecto para transmitir la fuerza ejercida en las cuerdas del violín hacia el “Flexiforce”. La salida del sensor se extiende por un cable de longitud de 150 cm, que desemboca en otra de las entradas de conversor análogo/digital del micro-controlador 16F877A, el cual asigna también un valor digital de 0 a 127 dependiendo de la resistencia que este reciba. A este sistema, se le añade un Led que tiene como función encenderse solo en caso de recibir la mínima cantidad de presión que necesita el sensor para activarse, y así asegurarse de su funcionamiento. Esto con la intención de calibrar el arco para que envíe señales coherentes hacia el micro-controlador. 5.2.3 “NOTE ON” Vs FROTACIÓN DE CUERDAS Con lo anterior solucionado, es necesario implementar un sistema que sea capaz de emular el comportamiento de las cuerdas cuando estas son frotadas, y para este fin hay que tener en cuenta sus diferentes características. Una cuerda frotada tiene dos direcciones de movimiento, pues el arco que las frota siempre va y viene en dirección perpendicular a la cuerda. Tal y como lo enseña la siguiente gráfica. Figura 21. Arco Violín Fuente [online]: http://www.dosisvital.com.ar/wp-content/uploads/2010/04/violin.jpg Esto indica que tiene que ser posible enviar el mensaje MIDI de activación de nota o “note on” independientemente de la dirección en la que vaya el arco, debido a lo cual se implementó el siguiente sistema: Se ubicaron cuatro placas de madera, cada una de un grosor aproximado de 2mm, y sostenidas por dos barras de diámetro 5mm, las cuales a su vez van acopladas en sus 44 extremos a pequeñas placas de madera. Estas placas a cuentan con cuatro orificios que permiten sostener las placas y también dan una libertad de rotación a estas. Figura 22. Sistema Pulsadores Cada placa tiene acoplado un microswitch de referencia KW10-03B a cada una de sus caras. Dichos pulsadores poseen una palanca de metal que hace que la placa se mantenga fija verticalmente, tal y como lo muestra la figura 23. Figura 23. Pulsadores Como puede ser fácilmente inferido, cada placa emula cada cuerda del violín, y la finalidad del dispositivo pulsador es realizar un sistema de palanca que active uno de los dos pulsadores dependiendo de la dirección de la frotación, y así enviar el mensaje “note on” 45 Figura 24. Sistema Pulsadores Violín Dichas placas se ubicaron en la misma posición respecto a altura y separación que las cuerdas de un violín acústico, con el fin de tener una fiel reproducción a la hora de interpretarlo. Figura 25. Sistema Pulsadores Vs. Violín 46 5.3 INTERVENCIÓN DEL VIOLÍN Como puede llegar a ser obvio para el lector, las funciones acústicas y musicales del violín adquirido cesarán debido a su intervención, pues es indispensable ubicar los componentes electronicos que lo convierten en un controlador MIDI. Ya se mencionó anteriormente que los sensores SoftPot poseen unas dimensiones que superan el tamaño real del mastil de un violín convencional, y que es imposible disminuirlas o conseguir otro tipo de sensor por cuestiones que involucran una gran cantidad de dinero. Por tales razones, se tuvo, con la auyuda de un Luthier, construir un nuevo mastil que pudiera acoger los 4 sensores en su superficie; tal y como lo muestra la figura 27, y puede ser referenciado en el anexo F. 47 Figura 26. Mastil Original Figura 27. Mastil Modificado 48 Posteriormente, se debía integrar el sistema de pulsación de cuerdas, donde se tuvo que zanjar un orificio en el que se pudiera albergar, pero que a su vez lo mantiviese fijo y firme, capaz de recibir la presión ejercida por el arco frotador. Figura 28. Modificacion Violin El anterior proceso se realizó en las instalaciones del Angar de la Universidad de Sanbuenaventura, utilizando varias herramientras como taladros, pulidoras, limas, entre otras. En el arco frotador se ubicó el sistema detector de presión que fue descrito anteriormente, sujetando con correas un bloque de titinilio que lo presiona sutilmente contra las cuerdas de arco y el bloque en si. 49 Figura 29. Titinilio Para el sistema tanto de conexión de lo elementos electrónicos del arco (Flexiforce, Led y Pulsador) como de su salida USB, se intervino el aro del violín, introduciendo conectores USB en los 2 casos. Cabe aclarar que el conector USB utilizado en el arco, sólo cumple la función de interconectar sus componentes, pero en ningún momento existe una transmisión de tipo digital en éste. Figura 30. Puerto USB Violin Modelos en 3D de la versión final del controlador pueden ser encontrados en el anexo E. 50 5.4 PROGRAMACIÓN Para el desarrollo del controlador MIDI para violín se uso un PIC 16f877a de la empresa microchip. Para programar y comunicarse con este se utilizo el compilador PIC C, desarrollado por CCS (Custom Computer Service), el que permite hacer una programación en el lenguaje C y finalmente compilarla para que el PIC la interprete y ejecute. El proceso que se describe a continuación es el realizado por la programación definitiva, determinada después de muchas pruebas y errores; y posteriores optimizaciones en cuanto a espacio, el cual es muy limitado en RAM y en ROM debido a las características propias del PIC 16F877A. Después de hacer el análisis de las características del violín y decidir qué sensores, sistemas y lógica se iban a usar; el siguiente paso es analizar cómo estos iban a intercomunicarse entre sí por medio del PIC 16F877A La primer variable a tener en cuenta es en qué momento empieza a sonar las cuerdas del violín, y como activarlas en, así que todo el análisis y lectura empieza si y tan solo si los microswitch KW10-03B son activados en alguna cuerda. Figura 31. Programación Pulsador Mientras el pulsador este activado, es decir por el tiempo en el que se esté tocando una cuerda se entra a un loop o bucle, en este el primer paso que se lleva es la lectura de del canal 0 del conversor análogo digital, que representa el Flexiforce o el velocity. 51 Figura 32. Programación Velocity El valor leído se asigna a la variable “Velo” que representa el valor de Velocity, como el conversor análogo/digital del PIC lee valores entre 0 y 255, es necesario dividir este rango en dos para obtener valores aptos para el protocolo MIDI. El segundo paso dentro del loop es leer el canal del conversor correspondiente a la cuerda que esté activada en el momento, y proceder a asignarla a la variable Vn (donde es el número de la cuerda), y dividirla en 2. 52 Figura 33. Programación Nota Una vez obtenido y asignado el valor del softpot, se sabe con precisión en posición se encuentra el dedo del intérprete por lo que se puede hacer una conversión posición contra nota. Figura 34. Programación Conversión Nota El valor obtenido se divide en 10, para obtener una posibilidad de 13 notas aproximadamente, y esto se suma a un valor X, donde este valor es el correspondiente a la nota de la cuerda n al aire. Debido a que si trabaja con voltajes que pueden tener una leve variación, se asigna un rango de 0.9 para evitar cambios innecesarios de nota. 53 En este punto se tiene lo valores más relevantes en la ejecución del violín, los cuales son, Nota y velocity, a continuación se envía el mensaje MIDI de NOTE ON, con sus tres correspondientes bytes. Figura 35. Programación envió datos El Byte de status NOTE ON más un valor que cambia el canal por el que se envía. Primer Data Byte, el valor de la nota que se está tocando. Segundo Data Byte, Valor del velocity con el que se ejecuta. Luego, se iguala el valor de la nota al valor del rango establecido previamente. Todo esto funciona en un bucle constante, de manera tal que si se mueve la posición del dedo, en tiempo real cambien la nota ejecutada, tal y como sucede en un violín. Cuando se desactiva el pulsador, el bucle finaliza y se envía la desactivación de nota. La programación es igual para las 4 cuerdas, de modo tal que la distancia y desafinación sea la misma en todas las cuerdas y exista correlación entre ellas. De manera alterna existe un pulsador que permite cambiar de canal, y un Led que indica el momento en que el Flexiforce tiene una presión mínima, esto para verificar que se estén enviando datos coherentes. El diagrama de flujo que usa la programación se puede verse en la figura 35. 54 Figura 36. Programación Diagrama de Flujo 5.5 CIRCUITO Con el fin de hacer ciertos tests acerca del funcionamiento de los componentes que finalmente irían en una baquela, se fueron realizando pruebas en protoboard, empezando por aquellas que fueran mas sencillas, y así ir añadiendo cada vez mas piezas, que una vez acopladas formarían el soporte electrónico del dispositivo. Figura 37. Circuito Protoboard Se diseñó un circuito virtual en el programa “Proteus, ISIS Schematic Capture”, que representaba cada uno de los componentes necesarios para el funcionamiento integral de controlador MIDI, y que, siendo un sistema ideal, todo funcionaría 55 Una vez cada etapa fuese funcionando sin inconvenientes dentro de la protoboard se proseguía a continuar con la etapa siguiente; empezando desde el sistema de pulsación, luego integrandolo con los sensores SoftPot, el sistema de arco frotador, en seguida la salida MIDI, y finalmente la integración con la interfaz MIDI a USB, que a su vez funcionaba como alimentador de voltaje para el circuito; todo esto controlado por supuesto por el micro-controlador 16F877A y la programación que en este se quemaba. La siguiente ilustración, muestra el esquema diseñado sobre este software: Figura 38. Montaje ISIS Pulsadores de Sistema de Frotación de Cuerda Sensor de Presión Flexiforce PIC 16F877A Sensor de Distancia SoftPot Fuente: Proteus ISIS. Todo lo anterior se interconectó en la protoboard y contínuamente se realizaban nuevas pruebas para estabilizar y mejorar el funcionamiento del prototipo del controlador MIDI; de cuando en vez se presentaban errores sistematicos los cuales 56 hacían pensar que no existía una programación adecuada; y así mismo errores en la programación indicaban que se tenía que replantear la forma de intercomunicación entre los componentes. Figura 39. Protoboard Una vez que el circuito en la protoboard funcionó integralmente, el paso a seguir fue reproducirlo en una baquela, con el fin de dar por terminada la etapa electronica, fijar los componentes en su lugar y proseguir a ubicarla dentro de la caja de resonancia del violín. Figura 40. Circuito Final 57 5.6 ADAPTACIÓN INTERFAZ USB Ya que el usuario de controladores MIDI busca la mayor facilidad en el conexionado de sus dispositivos, se decido usar otro protocolo de comunicación que es actualmente un estándar en el mundo de la informática; el protocolo USB. La mayoría, si no todos los controladores MIDI actuales ofrecen una salida USB, que permite conectarlos directamente a un computador y ser reconocidos sin la necesidad de tener un puerto MIDI diferente, exclusivo para esta función. Una de las grandes ventajas de esto conectividad es la posibilidad de usar el voltaje que brinda el protocolo para también alimentar el circuito interno y evitarse el uso de una fuente externa. Teniendo en cuenta esto, aún después de terminar la construcción y programación del Controlador MIDI para Violín, se hizo necesario encontrar la forma de integrar un dispositivo conversor MIDI-USB y que a su vez permita utilizar los 5 voltios para alimentar el circuito. La primera opción que se tuvo fue construir dicha interfaz, bajo los siguientes esquemáticos. Figura 41. Esquemático USB Fuente [online]: http://www.embedds.com/wpcontent/uploads/2007i/0709/midi_sch_big.png 58 Dada las dificultades de tiempo y dinero para poder construirla, además del mayor inconveniente que son los drivers o controladores para que el dispositivo pueda ser reconocido por el computador, la opción más eficiente fue comprar una interfaz genérica, cuyo valor no excede los USD 5 y modificarla para que se adapte a las necesidades del proyecto. Figura 42. Interfaz USB Fuente [online]: http://image.madein-china.com/2f0j00vBKQFETtTYra/USB-MIDIInterface-W-718-.jpg La interfaz adquirida posee una entrada y una salida MIDI por un extremo y una salida USB en el otro extremo, y controladores genéricos para el sistema operativo Windows y Mac OS, esto permite que al ser conectada en un puerto USB, el computador la reconozco y empiece a funcionar sin necesidad de pasos más complicados. El primer paso fue abrir esta y cambiar los cables por los necesitados. La salida MIDI siendo innecesaria fue retirada para evitar espacio de mas, por otra parte la entrada MIDI se adapto a los pines usados por la salida del micro controlador. Figura 43. Conector MIDI Fuente [online]: http://pinouts.ru/connectors/din5df.gif 59 El pin 2 fue conectado a tierra, en el pin del medio del nuevo conector, el pin 4 cuya función es transmitir la información MIDI se conectó a un extremo, y finalmente el pin 5 quien transmite el voltaje se conectó al otro extremo. Figura 44. Conector MIDI Final El otro extremo de la interfaz se modificó para cambiar de un conector USB “A” a uno tipo “B”, esto con el fin de seguir los estándares que existen en las conexiones dentro de los controladores MIDI. Figura 45. Cambio conectores USB La parte más complicada de la adaptación fue lograr adaptar la interfaz como un sistema alimentador de voltaje. Se llevo a cabo una investigación sobre cómo funciona el protocolo USB, por cuales pines transmite y cuál es el voltaje que transmite. 60 El protocolo USB tiene la característica de trabajar a 5 voltios de manera regular y entregar como máximo 500mA, más que suficiente para trabajar con el circuito del controlador MIDI para violín. Los pines y su función se representan en la tabla 10. Tabla 10. Pines USB Pin 1 2 3 4 Nombre VCC DD+ GND Color Rojo Blanco Verde Negro Descripción VCC + V5 Datos Datos + Tierra Del rojo 1 y el pin negro 4 se realizo una extensión que permitiera conectar el VCC y tierra del circuito, por medio de una adaptación que permitiera esto sin generar cortos en la interfaz y en el circuito como tal. Figura 46. Alimentación Circuito La interfaz se adapto al violín en su parte interna, de forma tal que quedara fija y sin evidenciar su existencia. 61 Figura 47. Interfaz MIDI USB Finalmente el sistema completo funciona y transforma toda la información que entrega el PIC en el protocolo USB. Además de permitir que sea reconocido por los sistemas operativos más usados y ser interpretado como un instrumento virtual por cualquier computador compatible con el estándar USB. 5.7 FUNCIONES ADICIONALES DEL ARCO Pensando en desarrollar una mejor interfaz para el usuario, se llego a la idea de añadir ciertas funcionalidades que hagan más fácil los cambios de interpretación, ya que se cuenta con un protocolo tan flexible, que permite virtualmente utilizar cualquier pulsador o sensor para ser asignado a diferentes funciones. Lo primero que se incluyo es un Led que indica el momento justo en el que la tensión sobre las cuerdas del arco es la indicada para que el sensor de presión Flexiforce funciones de manera adecuada. Una vez la tensión equivalga a un numero digital de 20, que es el mínimo estimado para el correcto funcionamiento, tanto del velocity como de la interpretación, el Led rojo se encenderá y permitirá que el usuario conozca hasta donde tensionar el arco. 62 Junto al Led indicador de tensión, se encuentra un pulsador, que permite el cambio en el canal de transmisión MIDI. El canal MIDI variara sus valores entre 1 y 4, lo que permite la utilización de múltiples instrumentos y configuraciones en el programa de sampling preferido por el usuario. Figura 48. Arco 5.8 MEDICIÓN DE LATENCIA La latencia es un factor común en los instrumentos electrónicos, ya que estos deben procesar y enviar información y todo esto tarde un tiempo en suceder, el controlador MIDI para violín, al ser un instrumento de este tipo también debe tener una latencia y se hizo necesario medirla, para asegurar que no fuera un impedimento para la ejecución del intérprete. Como primera instancia se hizo una observación objetiva, para verificar problemas ó tiempos de retardo entre lo que se ejecuta y lo que finalmente se reproduce en la instancia final, de manera satisfactoria no se encontró una latencia perceptible. Sin embargo se hizo necesario medirla de manera objetiva para corroborar dicha observación. Para la medición se usaron los siguientes equipos Interfaz de audio de M-Audio “Fast Track Pro” Micrófono Shure PG-81 Parlante EON 10 DAW Pro-Tools Sony Vaio Ipod Touch 4G (captura de video) 63 La medición se llevo a cabo en los laboratorios de acústica de la Universidad de San Buenaventura. El proceso fue sincronizar audio contra video para tener una referencia correcta de lo que estaba pasando, esto mediante un ruido impulsivo como una palmada. La intención fue tocar el violín en tiempo real y grabar finalmente lo que era reproducido por el sintetizador Hybrid integrado en pro-tools. Figura 49. Equipos medición latencia Luego se realiza en pro-tools una comparación de cuadro por cuadro entre el momento en el que se ejecuta el violín y el momento en que es grabado por el sistema. 64 Figura 50. Medición latencia Protools La latencia final obtenida fue de 16 ms. Lo cual corrobora que el oído humano no logra percibir dicha latencia. Este resultado puede variar en caso tal que se utilicen tarjetas de audio que hagan uso de protocolos no estandarizados como el ASIO, que aseguran una latencia baja, la cual ya es un factor exclusivo del usuario y la configuración que éste use, pues se comprueba que el Controlador MIDI para violín aporta una latencia considerable. 65 6 PRESENTACIÓN Y ANÁLISIS DE RESULTADOS 6.1 PRUEBA DE FUNCIONAMIENTO Prueba con Kontakt Esta prueba se realiza con la versión demo de este software especializado en el sampling de instrumentos. La razón por la cual se elige este programa y no otro es debido a la gran calidad de sus muestras, y la variedad que ofrece en cuanto al Violín en específico. Se crea una nueva sesión en Kontakt, en la cual se abren 4 instrumentos diferentes, en cada uno de estos se elige el canal MIDI por donde recibirá la información, de 1 a 4, respectivamente. Figura 51. Sesión Kontakt El primer instrumento tiene las muestras de un Violín ejecutado en fortepiano, el segundo en pizzicato, el tercero en sforzando y el cuarto en Pizzicato. Se comprueba exitosamente el óptimo funcionamiento del controlador, capaz de percibir los cambios de presión en el arco ejecutados por el intérprete, así como la 66 capacidad de las notas para cambiar sin que sea percibida ningún tipo de latencia, y la efectividad del sistema de frotación en el puente. Se procede a oprimir el pulsador ubicado en el arco frotador, con el fin de que el controlador cambie de canal de transmisión y así se pueda hacer funcionar el Violín en otras técnicas de interpretación. Pruebas con otros Instrumentos y Sintetizadores Finalmente, se procede a abrir otros instrumentos ofrecidos por Kontakt, que no tienen que ver en nada con el Violín, sólo para observar su interacción en otros campos musicales. Se observa un buen funcionamiento, el cual se esperaba, pues aún son mensajes MIDI básicos que no poseen ningún tipo de exclusividad para samples de instrumentos de cuerda frotada. Se probó con diferentes instrumentos de diferentes compañías, como el Pro 53 de Native Instruments, algunos instrumentos del programa Reason y el Sawer de Image Line. En todos tuvo un funcionamiento adecuado, que indica de manera positiva que el controlador puede ser utilizado con cualquier dispositivo análogo o virtual que reciba mensajes MIDI, sin tener ningún tipo de problema. 6.2 PRUEBAS CON VIOLINISTAS Para poder corroborar el correcto funcionamiento y la emulación adecuada del Controlador MIDI para Violín se llevaron a cabo pruebas con 6 diferentes violinistas en las cuales interpretaban con el dispositivo; finalmente completaban una encuesta con la cual se obtienen datos que permiten analizar el violín y su desempeño. La prueba a realizar consiste en utilizar el Controlador dentro de la sesión de Kontakt previamente mencionada, con la oportunidad intentar interpretar una pieza musical de su repertorio de manera tal que lograra evaluar los aspectos fundamentales de la funcionalidad del éste. Una vez finalizada la prueba, responderán 7 preguntas calificando de 0 a 5, dependiendo de cuán satisfactoria fue su experiencia en cada ítem. La encuesta se puede encontrar en el anexo D. Una vez más, se citó al violinista Juan Carlos Prieto, quien además de calificar objetivamente el dispositivo mediante la encuesta; expresó tener una grata experiencia, ya que considera que es un invento realmente innovador e interesante, y a su vez dijo estar muy optimista acerca del futuro del presente proyecto. De manera constructiva, comentó cierta incomodidad al pulsar notas en las “cuerdas” más graves del Violín, esto debido obviamente al ancho del mástil, el cual se aleja bastante al ancho real de un mástil de violín acústico; defecto que se explicó en capítulos anteriores. 67 Se realizó otra prueba con la violinista aficionada Luisa Fernanda Díaz, la cual realizó el proceso de utilización del violín y expreso un disgusto hacia la inexpresividad de los samples que usan los programas de sampling. Finalmente para tener toda la información necesaria acerca de la sensación en la ejecución, se llevo el dispositivo a las instalaciones de la Pontificia Universidad Javeriana donde los estudiantes de música Andrés Felipe Herrera, Juan Diego Morillo, Juan Sebastián Medina, María Fernanda Naranjo, llevaron a cabo las pruebas y encuestas y se llegaron a los datos de la tabla 11. Tabla 11. Resultado Encuestas. Pregunta 1 2 3 4 5 6 7 Encuestado 1 Encuestado 2 Encuestado 3 Encuestado 4 3 4 3 5 4 4 2 4 3 3 3 4 5 5 3 4 2 4 4 3 5 4 4 4 3 3 4 5 1 2 3 4 5 6 7 Encuestado 5 Encuestado 6 Promedio 3 4 3 3 3 4 5 5 3 4 4 3 3 4 Pregunta 4 3 3 5 3 4 4 Tras un análisis posterior en general la sensación que brinda el violín al ser ejecutado tanto por instrumentistas aficionados como por profesionales es bastante cercana a la brindada por un violín acústico convencional. El punto que mejor puntaje obtuvo fue el de la pregunta 4; “¿La ausencia de cuerdas en el controlador presenta alguna molestia o incomodidad?”, resaltando así que la utilización del sistema SoftPot es un reemplazo adecuado para el sistema de cuerdas de un violín acústico. 68 Los puntos que menos conformismo crearon fueron aquellos relacionados con la el material del sistema del pulsadores y su realismo comparado al arco siendo frotado contra las cuerdas. 69 7 CONCLUSIONES Y RECOMENDACIONES 7.1 CONCLUSIONES Una vez terminado a cabalidad el presente proyecto puede afirmarse con seguridad, que efectivamente es un dispositivo innovador, único en el mercado, y poseedor de componentes de vanguardia; que en realidad aporta un avance significativo en la industria electrónica-musical, y que crea un punto de partida para la creación de nuevos tipos de controladores MIDI dedicados a instrumentos específicos. Durante el desarrollo del Controlador MIDI para Violín, se llegó inesperadamente a nuevas formas de generación e interpretación de datos; dichas formas inexistentes en los controladores MIDI convencionales, es decir, el uso de componentes tales como el Softpot y el Flexiforce, representan una aplicación exclusiva del presente proyecto dentro del ámbito de la tecnología musical. Por medio del análisis de las propiedades de los instrumentos de cuerda frotada, fue posible emular las características más importantes de un violín acústico, con el fin de crear un dispositivo capaz de brindar la sensación producida al interpretar dicho instrumento, teniendo en cuenta que el sonido finalmente es producido por un software de sampling más no por el violín en sí, lo cual es una particularidad especial de los controladores MIDI. Mediante la integración de componentes electrónicos, algunos de estos de vanguardia tecnológica, se logró imitar ergonómicamente el comportamiento de un violín acústico. Entre los logros importantes, se puede mencionar el hecho de cumplir con la existencia de un mástil plano, sin trastes ni interrupciones u obstáculos que hubieran podido afectar la óptima ejecución de este controlador MIDI. A través de un proceso de creación y optimización del algoritmo matemático en lenguaje C, fue posible programar el micro-controlador 16F877A, para que éste cumpliera las funciones necesarias sin exceder sus limitaciones en cuanto a memoria RAM y ROM; proceso en el cual fue necesario replantear varias veces el flujo de la programación para lograr mayor agilidad en el procesamiento en posterior envío de mensajes MIDI. 70 El hecho de haber intervenido un dispositivo que convirtiera el lenguaje serial asincrónico MIDI al lenguaje serial USB, y que a su vez éste alimentara de voltaje al circuito que desempeña la función de dar vida al presente proyecto, cumple con las expectativas de un producto final de alta calidad, que se caracteriza por ser practico, pues no presenta necesidad de alimentación externa. La implementación de ciertos materiales en la construcción de algunos componentes del dispositivo, como el sistema de pulsación, fabricado en madera; no es la mejor elección, debido a que no tiene la resistencia suficiente, y su manipulación es compleja y tediosa. La utilización del micro controlador 16F877A causo una limitación en la extensión de la programación, ya que si bien, se ajusta a la entradas y salidas necesarias, la memoria ROM y RAM es pequeña para las necesidades 71 7.2 RECOMENDACIONES En un futuro prototipo del Controlador MIDI para violín se hace necesario el diseño y construcción de sensores Softpot personalizados, esto para evitar la modificación del mástil del violín. Esta modificación fue el principal problema hallado por los instrumentistas que probaron el dispositivo, puesto que la posición normal de la mano izquierda es modificada para alcanzar las notas más altas. Se hace fundamental hallar un material cuyas características permitan su fácil manipulación y ofrezca la sensación de ser una cuerda real al ser frotada con el arco. Los sistemas embebidos han tenido una gran acogida dentro de la industria electrónica-musical, puesto que facilitan el uso de un algoritmo más avanzado y por lo tanto más eficiente; se recomiendo implementar un sistema de éstos dentro de una futura etapa del presente proyecto. 72 8 BIBLIOGRAFÍA Kolneder, Walter (1996). The Amadeus Book of the Violin: Construction, History, and Music. Estados Unidos de America: Amadeus Press. Rona, Jeffrey (1994). The MIDI Companion: The Ins, Outs and Throughs. Estados Unidos de America: Hal Leonard Corporation. Kernighan, Brian W. y Ritchie, Dennis M. (1988). C Programming Language (2nd Edition). Estados Unidos de America: Prentice Hall. Violín. (2011, 22 de abril). En Wikipedia, la enciclopedia libre. Recuperado el 22 de abril de 2011 a las 20:29 de < http://es.wikipedia.org/wiki/Viol%C3%ADn> MIDI. (2011, 2 de Mayo). En Wikipedia, la enciclopedia libre. Recuperado el 2 de Mayo de 2011 a las 20:08 de < http://es.wikipedia.org/wiki/MIDI> Instrumento de Cuerda Frotada. (2011, 8 de Mayo). En Wikipedia, la enciclopedia libre. Recuperado el 8 de Mayo de 2011 a las 13:50 de < http://es.wikipedia.org/wiki/Instrumento_de_cuerda_frotada> Universal Serial Bus. (2011, 30 de Abril). En Wikipedia, la enciclopedia libre. Recuperado el 30 de Abril de 2011 a las 21:06 de <http://es.wikipedia.org/wiki/Universal_Serial_Bus> 73 ANEXO A: Datasheet del SoftPot 74 ANEXO B: Datasheet del Flexiforce FLEXIFORCE DATA SHEET 75 ANEXO C: CODIGO DE PROGRAMACION EN LENGUAJE C #include <16f877a.h> #device ADC=8 //#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,BROWNOUT #use delay(clock=20000000) //#use standard_io(b) #use rs232(baud=31250, xmit=PIN_c6, rcv=PIN_c7, STREAM=1) #define mic 1 int b1=0,b2=0,b3=0,b4=0,w1, velo, caon=0, caoff=0; int v1=0,v2=0,v3=0,v4=0,n1,n2,n3,n4,no1,no2,no3,no4,cu1,cu2,cu3,cu4; float level1=0,level2=0,level3=0,level4=0; void main(void) { setup_adc(ADC_CLOCK_INTERNAL); //configura el converso setup_adc_ports(all_ANALOG); //entrada 0 como analogica while(true) { if(((input(PIN_B0)==1)&&(w1==0))) // cambio canal { caon=caon+1; caoff=caoff+1; if(caon>3) { caon=0; caoff=0; } w1=5; } if(((input(PIN_B0)==0)&&(w1==5))) { w1=0; } if(((input(PIN_B7)==1)&&(b1==0))) //pulsadores cuerda 1 { cu1=1; level1=level1+3; 76 while(cu1==1) { set_adc_channel(0); delay_ms(1); velo=read_adc(); //lee cuerda 1 delay_ms(10); //para que se estabilice velo=(velo/2); set_adc_channel(1); delay_ms(1); v1=read_adc(); //lee cuerda 1 delay_ms(10); //para que se estabilice v1=(v1/2); n1=((v1/10)+76); if((n1>(level1+0.9))||(n1<(level1-0.9))) { fputc(caoff+128,mic); fputc(no1,mic); fputc(velo,mic); fputc(caon+144,mic); fputc(n1,mic); fputc(velo,mic); level1=n1; no1=n1; } b1=5; if(((input(PIN_B7)==0)&&(b1==5))) //pulsadores cuerda 1 off { fputc(caoff+128,mic); fputc(no1,mic); fputc(velo,mic); b1=0; cu1=0; } } } 77 if(((input(PIN_B6)==1)&&(b2==0))) //pulsadores cuerda 2 { cu2=1; level2=level2+3; while(cu2==1) { set_adc_channel(0); delay_ms(1); velo=read_adc(); //lee cuerda 1 delay_ms(10); //para que se estabilice velo=(velo/2); set_adc_channel(2); delay_ms(1); v2=read_adc(); //lee cuerda 2 delay_ms(10); //para que se estabilice v2=(v2/2); n2=((v2/10)+69); if((n2>(level2+0.9))||(n2<(level2-0.9))) { fputc(caoff+128,mic); fputc(no2,mic); fputc(velo,mic); fputc(caon+144,mic); fputc(n2,mic); fputc(velo,mic); level2=n2; no2=n2; } b2=5; if(((input(PIN_B6)==0)&&(b2==5))) //pulsadores cuerda 2 off { fputc(caoff+128,mic); fputc(no2,mic); fputc(velo,mic); b2=0; cu2=0; 78 } } } if(((input(PIN_B5)==1)&&(b3==0))) //pulsadores cuerda 3 { cu3=1; level3=level3+3; while(cu3==1) { set_adc_channel(0); delay_ms(1); velo=read_adc(); //lee cuerda 1 delay_ms(10); //para que se estabilice velo=(velo/2); set_adc_channel(3); delay_ms(1); v3=read_adc(); //lee cuerda 3 delay_ms(10); //para que se estabilice v3=(v3/2); n3=((v3/10)+62); if((n3>(level3+0.9))||(n3<(level3-0.9))) { fputc(caoff+128,mic); fputc(no3,mic); fputc(velo,mic); fputc(caon+144,mic); fputc(n3,mic); fputc(velo,mic); level3=n3; no3=n3; } b3=5; if(((input(PIN_B5)==0)&&(b3==5))) //pulsadores cuerda 3 off { fputc(caoff+128,mic); fputc(no3,mic); fputc(velo,mic); 79 b3=0; cu3=0; } } } if(((input(PIN_B4)==1)&&(b4==0))) //pulsadores cuerda 4 { cu4=1; level4=level4+3; while(cu4==1) { set_adc_channel(0); delay_ms(1); velo=read_adc(); //lee cuerda 1 delay_ms(10); //para que se estabilice velo=(velo/2); set_adc_channel(4); delay_ms(1); v4=read_adc(); //lee cuerda 4 delay_ms(10); //para que se estabilice v4=(v4/2); n4=((v4/10)+55); if((n4>(level4+0.9))||(n4<(level4-0.9))) { fputc(caoff+128,mic); fputc(no4,mic); fputc(velo,mic); fputc(caon+144,mic); fputc(n4,mic); fputc(velo,mic); level4=n4; no4=n4; } b4=5; if(((input(PIN_B4)==0)&&(b4==5))) //pulsadores cuerda 4 off { 80 fputc(caoff+128,mic); fputc(no4,mic); fputc(velo,mic); b4=0; cu4=0; } } } } } 81 ANEXO D: Encuesta de Funcionamiento del Controlador MIDI para Violín. Nombre del encuestado: El encuestado evaluará las siguientes interrogaciones, rellenando uno de los espacios con una x, de 0 a 5, donde 0 es la opción menos satisfactoria y 5 es la más satisfactoria. Físicamente, ¿qué tan parecido encuentra el dispositivo a un violín acústico? 0 5 Al sostener el dispositivo, ¿qué tan pesado lo halla respecto al peso subjetivo de un violín acústico? 0 5 Cuando interpretó alguna melodía que abarcara las cuatro “cuerdas” del controlador, ¿qué tan ergonómico puede decir que éste es? 0 5 ¿La ausencia de cuerdas en el controlador presenta alguna molestia o incomodidad? 0 5 ¿Qué tan similar encuentra la interpretación con el arco respecto a un violín acústico? 0 5 Teniendo en cuenta que las distintas técnicas de interpretación del violín dependen enteramente de las librerías usadas en el software de sampling determinado, ¿qué tan real escucha se percibe? 0 5 Como instrumentista de violín acústico, ¿qué tan útil halla el controlador? 0 5 COMENTARIOS ADICIONALES Y/O RECOMENDACIONES: 82 ANEXO E: Modelo en 3D del Controlador MIDI para Violín 83 Modelo en 3D del Controlador MIDI para Violín 84 Modelo en 3D del Controlador MIDI para Violín 85 ANEXO F: Controlador MIDI para Violín Acotado 86 ANEXO G: Controlador MIDI para Violín Acotado 87