martes, 19 de julio de 2016

Primeras Pruebas



     Hola a todos! He tenido el blog un poco abandonado pero es que he estado atendiendo otros asunticos. Pero aquí vamos de nuevo y esta vez con material practico!

   Como les comente que haría en el artículo pasado, aqui les traigo los resultados de las pruebas de mi primer prototipo experimental de la batería electrónica. Me toco hacer algo muy rudimentario puesto que aún no dispongo de protoboard para armar los circuitos, pero ya encargué una que debe llegarme a principios del mes de agosto.

     Para el montaje utilicé 7 piezoeléctricos, 7 resistencias de 1 mega y algo de cable que saque de un control de Play Station viejo.

      El código de colores para las resistencias de 1 mega es: marrón (1), negro (0), verde (x100000) como se aprecia acá. La banda dorada indica la tolerancia que en este caso es 5%. Significa que el valor real de la resistencia puede estar dentro de un margen de 5% por encima o por debajo de lo especificado por las bandas de colores.



   Ya que se trataba de experimentar con la parte eléctronica y todavía no dispongo de ninguna estructura física decidi pegar los piezos en una hoja de cartulina distribuidos de manera que se pareciera un poco a la disposición de las piezas en una batería real:



Usé pega en barra para fijarlos en su sitio

Los piezos ya debidamente identificados.

    El próximo paso fue soldarle a cada piezo su respectiva resistencia en paralelo. La función que cumple esta resistencia es adaptar la impedancia de cada piezo a las entradas analógicas del Arduino. Esto se conoce como resistencia de "pull up".

Detalle de la soldadura


    El cableado es el siguiente: todos los lados negativos de cada piezo van conectados juntos al pin de tierra (GND) en el Arduino. 

NOTA: La mayoría de los piezos traen un cable negro que seria el negativo. En mi caso me vinieron con ambos cables rojos pero el negativo siempre es el que va soldado mas hacia el borde externo del piezo.

     Los terminales positivos van cada uno a un pin analógico diferente, en mi caso son 7, y los conecté del pin 0 al 6. 

     En conjunto, el montaje me quedó así:



  Ok lo se, se ve muy poco cool, pero recuerden: es solo un experimento :D

   Y acá les dejo un video con los primeros resultados!! 




   Como pueden ver todavia le falta algo de "tuning" pero ya va tomando forma. El código no es mío (aun no tengo conocimientos como para escribir uno totalmente desde cero) lo que hice fue editar este código creado por el usuario Evan Kale de youtube de uno de sus proyectos que estoy usando como inspiración. Tiene proyectos de electrónica muy buenos, musicales y no musicales. Les recomiendo echarle un ojo a su canal.

   Bueno y eso es todo por ahora. Lo siguiente que quiero hacer es testear la respuesta de los piezos individualmente, desentrañar el funcionamiento del código, y solucionar los problemas de latencia. Así que tengo bastante tela que cortar para los próximos días. Los iré poniendo al tanto de mis progresos!

    ¡¡Hasta pronto!!

      

lunes, 13 de junio de 2016

El Efecto Piezoeléctrico

       


    Ya lo se. Me estoy poniendo pesado con tantas explicaciones y nada de acción. Pero esta será la última entrada netamente teórica, se los prometo.

      Hoy quiero hablar del fenómeno físico presente en el funcionamiento de los sensores que necesitamos incorporar en nuestra batería: la piezoelectricidad. No se asusten, no voy a salir con formulas complejas. Empezando por que ni siquiera las manejo. Solo voy a dar una idea básica de su funcionamiento.

      En pocas palabras: vamos a hacer un sandwich. 

      ¿Como que un sandwich? 

      Pues bien, imaginen que toman dos placas de metal como si fueran dos pedazos de pan, y las rellenan con un material especial, un material con propiedades piezoeléctricas (normalmente cuarzo aunque hay otros). En cada una de las placas colocamos un cable y los unimos a las puntas de un medidor de voltaje.

      ¿Que pasa si sometemos a alguna presión mecánica el material que tenemos entre las dos placas? Pues sencillamente veremos en la pantalla del medidor que se nos genera un voltaje entre ellas. No detallaré los procesos que ocurren en el material para que esto sea posible, pero nos basta con saber que sus átomos interactúan de tal forma al presionarse, que se genera una corriente. 


Representación gráfica del fenómeno piezoeléctrico


    Cuando digo presión no solo me refiero a aprisionar el material entre los dedos por ejemplo, también pueden ser golpes, vibraciones, etc.

     Ahora bien, ocurre algo curioso: el efecto es reversible. Si aplicamos electricidad a las placas, el material responderá emitiendo alteraciones físicas. Es decir, emitirá vibraciones. Esta propiedad tiene sus aplicaciones. Por ejemplo: las cornetas de sonidos agudos (tweeters) de los equipos de sonido, no son más que un piezoeléctrico al que se le aplica una señal de audio. Al vibrar a la misma velocidad que la señal aplicada, se produce el sonido que escuchamos. 

Tweeter Piezoeléctrico


    También encontramos piezoeléctricos en cantidad de juguetes, tarjetas de felicitación sonoras, calculadoras con sonido, y en cualquier aparato electrónico pequeño que emita sonidos, ya que al ser livianos y muy baratos, los piezoeléctricos son más prácticos para estos usos que una cornetica de las normales. 

    Como vemos, los piezoeléctricos pueden tener dos aplicaciones: convertir la vibración mecánica en electricidad (como sensor), o la electricidad en vibración mecánica (como emisor). Para efectos de hacer la batería la función que nos interesa es la primera. Pero quise mencionar la segunda para darles una idea de dónde pueden encontrar piezoeléctricos para el proyecto: si tienen unos tweeters viejos que no utilicen pueden abrirlos y sacarlos de ahí, o algún juguete viejo, etc.




    Bien, con esto en mente es fácil intuir que papel cumpliría un piezoeléctrico en una batería electrónica: convertir nuestros baquetazos en señales eléctricas.

    Si la dibujamos, una señal procedente de un piezoeléctrico tiene más o menos esta forma:



     Ese tipo de señal es analógica y alterna, es decir que oscila muchas veces por segundo del positivo al negativo. Como vemos en la imagen de arriba, hay un punto de la señal que se ve más amplio. Ese punto máximo alcanzado se llama "pico". Lo que hará el Arduino es pasar por alto toda la mitad negativa de la onda, tomar el valor del pico máximo positivo, asignarle un valor digital dependiendo de su amplitud y transformarlo en un mensaje MIDI en el que se especifica a qué volumen debe sonar la nota en cuestión.



    Es un tema bien sencillo como verán, y esta entrada no necesita ser muy larga. Los detalles técnicos los iré añadiendo a medida que haga falta, pero ya con lo expuesto hasta aquí pueden tener una idea general de como funciona cada elemento electrónico de la batería.

     Bueno basta de tanta teoría. De ahora en adelante empezaré a publicar material relativo a la construcción de mi prototipo, les compartiré fotos y videos de mis experimentos y el proceso de construcción.... 

    ¡Hora de ensuciarse las manos!

  



     



domingo, 5 de junio de 2016

Hablemos de Arduino


   ¡Hola a todos! y bienvenidos a una nueva entrada de este blog en el que, con suerte, les mostraré el proceso de creación de una batería electrónica. En esta ocasión les hablaré un poco de la plaquita que hace posible proyectos cool como este. 

    Información sobre Arduino hay de sobra en internet, asi que trataré de hacer una introducción breve y luego resaltar detalles concisos concernientes a su uso en la creación de una batería electrónica.

    Resumiendo mucho, diremos que Arduino es una plataforma de hardware libre, que surgió por allá en 2005, y que supuso todo una revolución dentro de la cultura del "hágalo usted mismo", ya que permite que con muy pocos recursos económicos y técnicos, cualquier persona pueda crear proyectos electrónicos relativamente complejos. Fue concebida como una herramienta fácil de usar, barata, orientada a la enseñanza, pero que con un potencial que trasciende por mucho este campo. 


Incluso los niños pueden entender Arduino



    Básicamente Arduino es una computadora. Claro, tiene una capacidad de procesamiento muy baja  (aunque suficiente para sus funciones) comparada con las PC's actuales. En esencia tiene los mismos componentes: un procesador, memoria RAM, memoria de almacenamiento, y conexiones de entrada y de salida. Si pensamos en una computadora común, lo que esta hace es tomar unos datos que le suministramos por sus entradas (puertos de mouse, teclado, puertos USB, etc), procesar esos datos mediante programas, y devolver los resultados por sus puertos de salida (puerto de monitor, impresoras, etc). Esto es exactamente lo que Arduino hace.

    Pero Arduino no sabe por si solo que diablos hacer con la información que le enviamos a sus entradas, el chiste está en que debemos programarlo para que haga con ella lo que nosotros queremos. De lo contrario es tan inútil como lo sería una PC sin sistema operativo. Estos programas los podemos crear nosotros mismos, o los podemos descargar ya elaborados por terceros (hay una comunidad muy grande de usuarios que comparte sus programas online). 

   La licencia de open hardware por la que se rige Arduino permite que cualquiera pueda copiar y comercializar las placas de Arduino sin ninguna limitación. Por lo tanto, hay una gran variedad de clones en el mercado, sobre todo procedentes de China, que usan exactamente el mismo chip de proceso que los Arduino originales. ¿Cual es mejor y cual es peor? Ninguno. Hacen exactamente el mismo trabajo. La ventaja del original: el soporte técnico oficial y la garantía. La ventaja del chino: cuesta como 3 veces menos que el original. Eso es todo, en lo demás la diferencia en cuanto a funcionamiento y durabilidad es casi nula. 

    Yo opté por un clon ya que mi cantidad de dólares era limitada, y el envío desde china es gratis, así que dada la situación actual de Venezuela me convenía muchísimo más. Por cierto, si se preguntan de donde saqué los dólares para comprar el mío.... no, no se los compré al gobierno. Los generé con mucha paciencia en una página llamada Kolotibablo, donde podemos ganar dinero (a ritmo muy lento, dicho sea de paso) a base de resolver captchas. Si son rápidos escribiendo pueden generar un dólar al día en promedio, pero no lo recomiendo a aquellos que no tengan paciencia ya que es sumamente tedioso, pero hey! son DOLARES!... También está la opción de comprar dólares electrónicos PayPal o Neteller, o hacer la compra directamente en bolívares en MercadoLibre, donde un clon oscila entre 10 mil a 20 mil bolívares a la fecha en que escribo esto, dependiendo del modelo; pero lo obtendrás casi de inmediato, ya que encargándolo a china debes esperar como mínimo mes y medio para verlo en tus manos. 

   Una pequeña recomendación si lo van a pedir a china: El envío les va a llegar mediante Ipostel. Les recomiendo que no pongan la dirección de su casa, y menos si viven en un sitio aislado, o en el que las definiciones de calles y números de casa no estén muy claros, por que a veces el cartero se confunde y deja el paquete donde no es. Mejor vayan a su oficina de Ipostel más cercana y abran un apartado postal. Es muy barato. Luego cuando hagan la compra, coloquen la dirección de la oficina y el apartado postal en los datos para el envío. Les van a enviar un correo como a los 2 días para avisar que su orden ya fue embarcada. Luego calculen como mes y medio a partir de la fecha de embarque, y ya pueden ir a buscar sus cosas. Ojo, a veces tarda un poco más. Yo he comprado varias cosas por esa vía, y una de ellas demoró 3 meses en llegarme. Pasa de vez en cuando pero de que llegan, llegan. Les dejo 3 páginas chinas confiables donde pueden comprarlo.

DealExreme ->(acepta Paypal)
GearBest ->(acepta Paypal)

    Nota: Aliexpress es una plataforma parecida a MercadoLibre, es decir que se basa en un sistema de reputación de usuarios, y los vendedores son independientes. Por lo tanto tenemos que estudiar bien a los vendedores para evitar fraudes. Si el vendedor no tiene reputación, pues mejor no comprar. Lo otro es que algunos envíos son gratuitos y otros no. Pero podemos filtrar los resultados de búsqueda por Free Shipping y listo. Aunque en ocasiones el costo del envío es muy bajo (menos de 2 dólares) y no pesa mucho pagarlo, todo depende de cada vendedor, pero preferiremos que sea gratis ¿verdad?. En el caso de las otras dos páginas de la lista, todas las ventas las hace la empresa directamente, así que podemos comprar cualquier producto con confianza. Y todo es Free Shipping.

   Me gustaría decir que, si aparte de músico eres medio nerd y te gusta hacer experimentos y construir cosas como a mí, un Arduino es una de las mejores cosas que te puedes comprar! Se que cuando termine este proyecto seguiré usando Arduino para muchas cosas más.

   Pero bueno vayamos al tema del blog. Si quiero hacer una batería electrónica, ¿que versión de Arduino me compro? La respuesta depende de cuantos tambores y platos le quieras poner. Si quieres algo sencillo (bombo, redoblante, hihat, un par de toms y un crash), con el archi conocido Arduino UNO te basta.

    Si quieres algo mas complejo (como yo jeje) te conviene la versión MEGA.

    ¿Por qué? Por la cantidad de entradas analógicas. 

   Arduino posee tanto entradas analógicas como digitales, pero las analógicas son las que nos interesan, pues los sensores que usaremos producen señales de este tipo. No entraré en detalles sobre las diferencias entre analógico y digital, pero bastará decir que son dos tipos de señales eléctricas distintas. 

   Arduino MEGA es la versión extendida de Arduino UNO, es decir: funciona igual pero tiene más del doble de entradas de ambos tipos. 

    He aquí la diferencia:



   Como podemos apreciar la diferencia es bastante grande. Tenemos seis entradas analógicas numeradas del 0 al 5 en la versión UNO, contra dieciséis entradas en la versión MEGA numeradas del 0 al 15.

   En cada una de estas entradas analógicas podemos conectar un solo sensor, por lo tanto: cantidad de entradas = numero de sensores = número de piezas que puede llevar la batería. (Hay una forma de multiplicar el número de entradas de un Arduino UNO mediante un proceso llamado multiplexación. Pero por lo que he leído es algo complejo y aquí buscamos simplicidad.  Así que evítense dolores de cabeza: si quieren muchas entradas compren directamente la versión MEGA por muy poca diferencia de dinero).

   Bien, ya sabemos por dónde el Arduino recibirá las señales. Luego, en su interior se llevará a cabo un proceso de digitalización de las mismas, (eso lo detallaremos mas adelante), y las convertirá en datos MIDI (ver artículo anterior). ¿Cómo se enviarán estos datos a la PC?

    Hay dos maneras:

1) Por comunicación serial: para lo cual usamos el propio puerto USB de la placa. En este caso usaremos software auxiliar en la PC que nos trauduzca la información serial a MIDI.



2) Haciendo uso de los pines de envío y recepción de datos: marcados como TX0 y RX0 en la placa Arduino, en los cuales conectamos un puerto MIDI hembra. Luego mediante un adaptador MIDI/USB lo conectamos a la PC o, si nuestra PC ya tiene una tarjeta con puertos MIDI, directamente con un cable MIDI estándar.



    Por motivos de economía y simplicidad estoy 90% seguro que empezaré probando el primer método, aunque no descarto el segundo para más adelante. Se trata de probar y ver cual da mejores resultados.

     Esto es casi todo lo que se puede decir en cuanto a las conexiones físicas, la verdad no es nada del otro mundo. Si sabes conectar un enchufe o soldar un cable entonces ya puedes hacerlas. El tema complejo está en los algoritmos y la programación. Hasta ahora he bajado varios códigos de ejemplo y cada vez entiendo un poquito mas el asunto. Lo más probable es que no me inventaré un código absolutamente desde cero, sino que tomaré ideas de otros códigos y los adaptaré a las necesidades de mi diseño. Por cierto, ya tengo definidas el numero de piezas que le pondré a la batería para aprovechar bien todas las entradas del Arduino, luego les cuento un poco sobre eso.

     Bueno pues hasta aquí llega esta entrada. Ya conocemos un poco más sobre dichoso aparatico. En la próxima entrada hablaré un poco sobre sensores piezoeléctricos. 

¡Hasta entonces!












   

martes, 31 de mayo de 2016

Entendiendo el MIDI


    
    Antes de abordar un proyecto como este hay una cantidad de conceptos que tenemos que definir y estar mínimamente familiarizados con ellos pues, de otro modo, nos volveremos un "ocho". 

    Me pareció que sería lo mejor centrarme primero en la parte no tangible del proyecto, es decir, lo que tiene que ver con toda la parte informática o lógica, por 2 motivos:

1) Porque es mi punto débil (sé configurar software pero entender cómo funcionan a nivel de código pues... ahí estoy en pañales).  

2) Podríamos construir la batería mas bonita de todos los tiempos, pero si no logramos que se comunique efectivamente con la PC, sería un trasto inservible. (Bueno casi inservible, al menos serviría como pad de practicas XD, pero no es la idea, verdad? )

   Por estas razones dejaré para luego todo lo referente al diseño de los tambores, platos, estructura, caja para el módulo, pedales, etc... y me enfocaré en asimilar primero el funcionamiento a nivel electrónico.

    El primer concepto que hay que tener presente, es el concepto de MIDI, ya que sin el no funciona casi ningun instrumento electrónico moderno. ¿Que rayos es MIDI?

    En su página oficial encontramos esta definición:

 "MIDI es un estándar tecnológico que describe un protocolo utilizado para conectar productos de muchas compañías diferentes, incluyendo instrumentos musicales digitales, computadoras, tablets y smartphones". 

    Y eso con qué se come?


Logo de MIDI


    
    Bueno, primero que nada, MIDI es el acrónimo de Musical Instrument Digital Interface, o lo que es lo mismo "interfaz digital de instrumentos musicales". Podemos pensar en el MIDI como un lenguaje. Vamos a hacer un poco de historia: 

    Todo se remonta a la época cuando se inventaron los primeros instrumentos que usaban electricidad para emitir sonidos. Al principio estos eran analógicos, y tenían muy pocas posibilidades de interconectarse entre sí. Si uno estaba tocando un sintetizador que producía determinado tipo de sonidos, digamos de órgano, tenía que pasar a otro aparato diferente si quería cambiar a un sonido de piano, y así por el estilo. Por lo tanto un tecladista que quisiera disponer de muchos sonidos en vivo tenía que subirse a la tarima con muchos aparatos y andar saltando de uno para otro.

    Pero a finales de los 70 y principios de los 80 todo empezó a cambiar con la masificación de la tecnología digital y la informática. Ya era factible por ejemplo, que un solo sintetizador fuese capaz de generar sonidos muy variados y acceder a ellos por medio de un botón. Lo que es más, era posible interconectar varios sintetizadores y disponer de todos sus sonidos desde un único teclado. Pero pronto los músicos se toparon con un gran problema: cada fabricante tenía sus propios protocolos de interconectividad, y productos de marcas diferentes no eran compatibles entre si. Asi que si yo tenía un teclado Roland, no lo podía conectar de un Yamaha o con los de ninguna otra marca. Esto como es obvio, resultaba muy limitante. 

   Para remediarlo, representantes de las principales compañías fabricantes de instrumentos se reunieron a mediados de los 80 para ponerse de acuerdo y definieron unas reglas de fabricación, que todos tendrían que seguir de ahí en adelante, para asegurar la compatibilidad entre sus equipos en cualquier parte del mundo. Y no solo entre instrumentos, esta tecnología iba a permitir la conexión con computadoras, que empezaban a masificarse en aquella época y que pronto demostraron lo que eran capaces de hacer. Esta nueva especificación englobaba tanto lo concerniente a la estructura de los datos como el hardware, la forma de los conectores, etc.

Nota: Podemos pensar en otros estándares de comunicación con los que estamos más familiarizados. Por ejemplo el USB, el Bluetooth, el WiFi, todos ellos son estándares de comunicación que surgen de convenios entre fabricantes, y que garantizan que dos aparatos que soporten estas tecnologías se puedan comunicar satisfactoriamente sin importar en que parte del mundo fueron fabricados. Si yo me compro un pendrive made in China y lo conecto en una MAC made in USA, lo mas probable es que funcione, verdad? por que ambos fueron fabricados bajo la misma normativa. El MIDI es lo mismo pero orientado a la música y los instrumentos.



Cables MIDI


    Todas estas nuevas posibilidades revolucionaron por completo la forma en que se componía, editaba, grababa y producía la música. El MIDI hizo posible que una sola persona con un mínimo de equipo y una computadora, fuese capaz de producir un álbum entero con calidad profesional. Aún era muy caro, (no cualquiera tenía siquiera una PC...) pero seguía siendo mas barato (y sobre todo más práctico) que contratar músicos, movilizar instrumentos reales, etc.



Ejemplo de comunicacion entre equipos MIDI


      A través de los años se han hecho algunas modificaciones, o actualizaciones al protocolo MIDI, pero su estructura básica sigue siendo prácticamente la misma. Hoy día se utiliza no solo para controlar sonidos, sino también iluminación, video, efectos especiales, etc.
        
        Podemos imaginar el MIDI como unas reglas que especifican en que orden se tienen que agrupar los datos para que conformen mensajes que sean entendidos por los instrumetos o por software musical.

         Ok, ok, todo bien, pero y como se relaciona todo este rollo con la batería que vamos a armar?

        Bueno, nuestra batería forzosamente estará mandando mensajes en formato MIDI a la PC, uno tras otro. Cada golpe dado con la baqueta se traducirá, con la ayuda del Arduino, en órdenes MIDI que irán al Superior Drummer 2.0 (ver entrada anterior) que este tendrá que interpretar. No es necesario volverse un experto en todo lo que concierne al MIDI (es un tema un poco extenso) pero sí conviene comprender al menos su funcionamiento básico.

      Un mensaje MIDI, tal como una oración de palabras, tiene que llevar un orden lógico para que tenga sentido. No es lo mismo decir:

          -Hola como estás? 

          que:

          -Estás hola como

       
     De igual forma, los mensajes MIDI tienen su propia sintaxis, en donde cada parte significa algo en un orden concreto.

    Hay varios tipos de mensajes MIDI que activan funciones distintas. El que mas compete a nuestro proyecto es NoteOn. 

    NoteOn, como su nombre lo indica, es un mensaje que ordena la activación de una nota. Está compuesto por 3 bytes, y cada uno contiene información especifica. El primero de ellos se llama byte de estado: es el que identifica que tipo de acción conlleva el mensaje, en este caso, un NoteOn, es decir, que le dice a la PC "preparate para que actives una nota". El segundo y tercer bytes contienen los datos concernientes a la nota: el segundo especifica cual es la nota en cuestión, ya sea Re, Do, Fa sostenido, o en el caso de la batería, un platillo, un redoblante, etc. y el tercero indica el velocity, que pudiera parecer que significa la velocidad en que llega el fin de la nota, pero en relidad se refiere a la intensidad o cantidad de volumen de la misma. 

    Un diálogo entre PC y batería sonaría algo asi traducido al español:

PC: Estoy lista y a la espera de nuevas instrucciones.

BATERÍA: Quiero que me actives un golpe (1er byte), en el bombo (2do byte), a todo el volumen disponible (3er byte).

PC: Como usted ordene.

    Y seguidamente ejecutará la nota según esos parámetros. Todo en cuestión de milisegundos.

    Nota: Como ya hemos visto hasta aquí, el MIDI NO transporta audio digital como tal, sino instrucciones codificadas que cada módulo generador de sonidos es capaz de entender.

   Otros tipos de mensajes pueden ser por ejemplo: NoteOff, para apagar una nota,  o ProgramChange, para cambiar de sonidos, etc..

    Toda esa información está codificada en lenguaje binario que se compone de unos y ceros. Grupos de unos y ceros en un orden especifico forman bytes, y grupos de bytes conforman mensajes MIDI. Pero ya nos estamos metiendo en el reino de la informática pura, y me saldría demasiado de lo que pretendo abarcar con este blog. De todos modos invito a quien quisiera ampliar sus conocimientos a leer artículos como este donde se trata a fondo el tema. 

    Dijimos que los datos viajarán del Arduino a la PC, pero como hacemos las conexiones? La inmensa mayoría de las PC's actuales no vienen con conectividad MIDI de fábrica, por lo tanto, debemos recurrir a una de estas opciones:

1) Instalar una tarjeta de sonido o una interface con entradas MIDI. Esta sería la opcion más profesional, pero tambien la más cara, y como la que la idea aquí es mantener bajos los costos, la descartaremos por ahora.


2) Utilizar un conversor MIDI to USB. Esta opción es mucho más económica e igualmente dotará a la PC de las conexiones necesarias.


3) Usar software. Esta opción es gratis. Se trata de unas aplicaciones que crean unos puertos MIDI virtuales, internamente. Asi, podemos conectar el Arduino a un puerto USB cualquiera, y los programitas harán de intermediarios con el software musical. Mas adelante dedicaré una entrada a estas últimas opciones.






    Hasta aqui creo que vamos bien. Seguro que dejé mucho por fuera, como el tema de los canales, pero mejor no abrumarnos con tanta información, lo mencionado es lo que más relevante para el proyecto. Espero que esta entrada haya servido de introducción amena al tema del MIDI para quien no estuviera familiarizado. En mi caso, con la investigación que estoy haciendo he aprendido muchísimo mas. Es probable que tenga que ahondar en detalles específicos mas adelante, pero de momento creo que esta bien para dar una idea. 

     ¡¡Hasta la próxima entrada!! Saludos!








domingo, 29 de mayo de 2016

Construyendo mis propios E-Drums en Venezuela

    
E-Drums comerciales de la marca Roland
    

    Hola amigos bienvenidos a mi primer blog. Antes que nada quiero hacer una pequeña reseña para que sepan un poco de mí, y de lo que me motivó a escribir esta página.

    Me llamo Samuel. Desde siempre me ha gustado la música y los instrumentos musicales en general (en realidad cualquier cacharro que genere sonidos) tuve un pequeño piano cuando era muy pequeño, luego una flauta melódica regalada por un primo, (que no duro mucho en mis infantiles manos). A a los 10 años me interesé por la guitarra española de mi mamá que estaba colgada recogiendo polvo en una pared de mi casa. Por mi propia cuenta aprendí a afinarla con ayuda de unos casettes viejos que traían clases grabadas y que venían con unos fascículos coleccionables que mi madre compró antes de que yo existiera. También me aprendí algunas melodías sencillas, pero no mucho más. A esa edad mi determinación no fué suficiente y entre otros acontecimientos (como el desastre del año 99 en el estado Vargas donde vivía, que obligó a mi familia a mudarse a la fuerza) mi interés por el instrumento decayó temporalmente. 

    Entre tanto descubrí la electrónica, también por medio de fascículos coleccionables que heredé de mi padre (fallecido en 2002), y se despertó mi interés por ese mundo genial, aunque no tuve oportunidad de experimentar demasiado. Pero aprendí conceptos básicos, a soldar, y a hacer pequeñas reparaciones.

    A los 15 años más o menos me mude al estado Aragua donde aun resido, y conocí amigos que reavivaron mi interés por la guitarra y ahora si, me dediqué a aprender más en serio. Pero la idea en mi cabeza era clara: si iba a aprender a tocar con la española, era para algún día poder tocar la eléctrica... and rocking the house!! aunque eso no ocurrió hasta los 18 años cuando tuve mi primer trabajo "decente" y gracias a la cizaña de mi hermano, gasté el dinero que ahorraba para comprarme un celular, en mi querida eléctrica, que no es gran cosa pero era efectiva para mis oídos y para matar fiebre... de más está decir que nunca me arrepentí de no haber comprado el teléfono. (Thanks brother)

    Aprendí lo suficiente como para tocar decentemente casi cualquier canción de rock popular (o sea nada de virtuosismos).También aprendí un poco de bajo. Sin embargo creo que no es mi meta convertirme en un "paganini" de la guitarra, ya que me llaman la atención muchos otros instrumentos a los que me gustaría dedicarles tiempo, para llegar tocarlos a un nivel, mas o menos igual de aceptable del que alcancé con la guitarra.

Y uno de esos instrumentos es, ¡como no! la batería.

Peeero... hay 2 pequeños detalles:

1) Venezuela está pasando por la peor crisis económica de su historia al momento de escribir esto, y es difícil para una persona de modestos recursos comprar hasta un par de baquetas. (Es en serio, se necesita medio mes de salario para comprar unas decentes)

2) Vivo en una casa pequeña, en una vecindad un poco amontonada, en la que el espacio es limitado, y en la que vive mi señora abuela, la cual no soportaría el estruendo de una batería acústica, en caso de que pudiera comprármela (y renunciar a tener una cama con tal de tener espacio donde ponerla).

    Tomando eso en cuenta, parece que lo mas apropiado para mi sería una batería electrónica, que ocupa poco espacio y puedo escucharla con audífonos, o a volumen bajo. Pero de nuevo: el precio... no son nada baratas. Llegan a costar incluso más que un kit acústico para principiantes.

Pero vivimos en el siglo XXI señores, y recursos hay de sobra para crear prácticamente lo que nosotros queramos. Aunque en Venezuela tengamos el acceso un poco más difícil a esos recursos, aun es posible.

    Hace algunos meses viendo por internet descubrí la manera de armar una batería electrónica casera (o E-Drums en inglés) bastante decente con la ayuda de la dichosa plataforma Arduino (con la que dí por accidente mientras investigaba como automatizar las luces de mi casa!), y fue la respuesta a todas mis preguntas. Resulta que ya el costo no era un problema, así que decidí embarcarme en un proyecto que reunía tres de las cosas que mas me gustan en la vida: la música, la electrónica, y los trabajos manuales en general; además de la programación que siempre he querido aprenderla, pero no tenía motivación suficiente para entrarle, o mejor dicho, no sabía por donde empezar. Además pensé que sería genial hacer un blog venezolano sobre el tema pues en toda la info que leí no encontré ninguno que fuera de acá, y se me hace que esta posiblidad es mas o menos desconocida en nuestro país. Ah pero esperen... aquí en Venezuela hasta un clon de Arduino puede ser un poco caro todavía! Así que pedí el mío por Aliexpress (un clon obviamente, pues el original no se vende por esa vía, además de ser mucho mas caro, aunque es en esencia un clon es lo mismo pero sin el soporte oficial) junto con los sensores necesarios para el proyecto. 

    Me salio en $8 aproximadamente el aparatico. Elegí la versión Mega, que trae muchas mas entradas y por lo tanto, me da la posibilidad de ponerle mas piezas a mi batería. Los sensores vinieron en un paquete de 20 unidades por menos de $3. ¿Barato verdad? Lo mejor: el envío desde china es gratis, via Ipostel. Lo peor: Se tarda como mes y medio en llegar los pedidos de allá. Considerando que el producto llega a Venezuela en solo 10 días o menos, la causa de tanto retraso se la atribuyo a la ineficiencia de Ipostel. Pero bueno, hace mucho que aquí nada funciona como debería. Bueh... no quiero centrarme en los detalles negativos del asunto pues en parte este proyecto tiene como objetivo distraer mi mente de tantas cosas negativas que veo últimamente.

    He aquí los componentes críticos del proyecto el mismo día que me llegaron:

Clon de Arduino Mega: $7,53 por Aliexpress


   
Sensores piezoeléctricos: 20 X $2,85 Aliexpress

    Decidí comenzar este proyecto, incluyendo la creación del blog, cuando ya tuviera estos componentes en mi poder (los recibí hace tres días), ya que son lo mas difícil de conseguir y lo mas indispensable para la construcción de la batería, y como con Ipostel nada es seguro, nunca se sabe si iba a poder terminar luego de empezar. Pero menos mal llegaron dentro de lo esperado y puedo empezar a dar los primeros pasos.

    Cabe destacar que no soy ni mucho menos un experto en la programación de Arduino. Ni he hecho nada parecido a una batería antes. Este es un detalle importante de este blog: no solo intentaré mostrar como con poco dinero podemos disponer de una batería totalmente funcional para poder practicar, sino también ir compartiendo mi proceso de aprendizaje a lo largo del desarrollo del proyecto (incluyendo errores, como no), esperando que ese proceso le pueda servir de ayuda o inspiración a aquellos que se animen a construir sus propios E-Drums totalmente hechos en casa.  

   Ahora bien, he mencionado Arduino varias veces hasta aquí pero: ¿Que demonios es Arduino? (Te puedes saltar este párrafo si ya lo sabes) Pongámoslo lo más sencillo posible: es una especie de micro computadora, con entradas y salidas de datos, las cuales son programables mediante un código, en el que le podemos indicar a su cerebro (un chip llamado microcontrolador) qué es lo que debe hacer con la información que reciba y como debe entregarla una vez procesada. Dicho código lo escribimos en la PC y se lo cargamos mediante un cable USB al coso. Suena simple, pero con suficiente imaginación, las cosas que podemos hacer con Arduino son prácticamente ilimitadas. De hecho se construyen robots, juegos de luces, calculadoras, sistemas para monitorear o automatizar lo que se nos ocurra, juguetes, y un laaargo etcétera... las posibilidades se extienden hacia el infinito. 

   En nuestro caso, Arduino básicamente hará la función de mediador entre unos sensores y un programa en la computadora, que es el que nos va a generar los sonidos como tal de batería que vamos a escuchar. En mi caso el programa que usaré será el Superior Dummer 2.0, corriendo en FL Studio 11, porque ya los he usado bastante para hacer pistas y estoy familiarizado con ellos. Pero hay muchas otras opciones disponibles que también proporcionan sonidos de batería de altísima calidad, como Addictive Drums, EZ Drummer o librerias Kontakt.


Toontrack Superior Drummer 2.0 será la fuente de sonidos para mi batería, aunque no es la única que podemos usar.

   Como vemos, el aparato físico con forma de batería que vamos a construir, no influirá para nada en la calidad del audio (como es el caso en las baterías acústicas), porque los sonidos los va a generar por completo la PC. Para lo que si nos servirá es para tener una superficie de contacto tangible, con la forma y respuesta física adecuada, donde podamos golpear y generar las señales que van a activar los sonidos correspondientes en el programa. Esto se logra mediante los ya mencionados sensores piezoeléctricos, que son dispositivos capaces de generar un pulso eléctrico cuando se les golpea o someten a alguna vibración. 

Detalle de un sensor piezoeléctrico



    Al estar uno de ellos en contacto digamos, con la superficie de uno de nuestros tambores, cada vez que lo golpeemos la vibración activará ese sensor. El Arduino recogerá esa señal analógica, la cuantificará y digitalizará (en el código definimos los parámetros de dicha conversión) y seguidamente la entregará a la PC vía USB, quien la interpretará como una orden para accionar "X" tambor (o "X" plato, según convenga). A este tipo de dispositivos de accionamiento remoto se les llama "triggers" en informática musical, que en inglés significa "gatillos", por su función de disparar las notas musicales a distancia del aparato que las genera, que en nuestro caso es una PC.

     Ese es, a grandes rasgos, todo el funcionamiento de la "perola" que pretendo construir. Los avances los he de ir documentando en las semanas o meses sucesivos. Debido a la crisis que nos aqueja y que en estos momentos recrudece, no se que tan rápido pueda progresar, pero como gran parte de los materiales que necesito serán reciclados, espero que no sea tan lenta la cosa. Tengo mucho que aprender y crearé nuevas entradas para compartir mis descubrimientos. Seguro que habrá mucho ensayo y error.

    Y bueno si has llegado hasta aquí pues gracias por calarte la parrafada, espero encuentres algo que te sea de utilidad, o al menos te entretenga, hasta pronto! nos vemos en una próxima entrada.

     Saludos...