Press Enter to Search
hackaton-musical
Capmusic

Foto: Amplifica

Una de las interfaces musicales que nacieron producto de la curiosidad de explorar nuevas tecnologías.

Está inspirado en el clásico instrumento Theremin, que a través de dos antenas, sensa la distancia de las manos a cada una de ellas, permitiendo controlar la frecuencia y el volumen de un tono.

CapMusic = Música generada mediante una interfaz capacitiva.

En nuestro caso, usamos dos placas de aluminio para detectar la distancia de las manos a cada una de ellas y así modificar la frecuencia de dos tonos distintos, uno grave y uno agudo, logrando un sonido compuesto agradable al oído.

Comienzos

La idea original era usar micrófonos piezoeléctricos pegados a una superficie y mediante la intensidad de las vibraciones generadas al golpearla, detectar la posición del golpe y usar esta información como parámetro de un instrumento. Por ejemplo, con una configuración lineal, es decir, dos micrófonos dispuestos en forma horizontal, pensamos que podríamos imitar un teclado.

Luego de diversas pruebas en distintas superficies y con distintas configuraciones nos dimos cuenta de que las vibraciones de la mesa no tienen una respuesta del todo lineal, en cuanto a la intensidad de la misma, según la posición del golpe. Es decir, la intensidad de la señal del piezo no respondía a ningún patrón que pudiéramos detectar a medida que alejábamos el  golpe del sensor.

Es por esto que decidimos cambiar el enfoque del proyecto, y utilizar el sensado capacitivo.

Tecnología capacitiva

Imagen tomada de Wikipedia

Imagen tomada de Wikipedia

Un capacitor es un componente presente en casi el 100% de los circuitos actuales. El capacitor más básico está compuesto por dos placas conductoras enfrentadas y un medio aislante (o dieléctrico) entre ellas. Al colocar una diferencia de tensión entre ambas placas, este componente permite almacenar una carga entre ellas, pero el tiempo que demora en acumular ésta carga no es instantáneo, sino que depende de varios parámetros:

Una vez transcurrido el tiempo necesario, entre las placas del capacitor se establece una tensión igual a la de la fuente utilizada.

Aprovechando este fenómeno, se puede sensar la distancia entre dos superficies conductoras, midiendo justamente el tiempo que tardan en alcanzar una tensión definida.

Materiales

Esquema utilizado (1 placa)

esquema

Gracias Paint y draw.io!

Esquemático de circuito equivalente

esquematico

Circuito realizado con CircuitLab

Implementación

capmusic03

Foto: Daniela Amndan

Usando una placa conductora de aluminio conectada a una salida digital de un microcontrolador a través de una resistencia (Send Pin), y periódicamente cambiando el estado de dicha salida, se puede medir el tiempo que tarda otro pin conectado directamente a la misma placa (Receive Pin) en alcanzar cada estado. Este tiempo estará directamente relacionado con el valor de la capacidad formada por la placa y la mano del usuario, la cual a través de nuestros pies se conecta a tierra.

capmusic01

Foto: Daniela Amdan

Es por esto que para el correcto funcionamiento del dispositivo, es imprescindible que se la computadora a la cual se conecta  para generar  el sonido, esté conectada a tierra mediante su respectivo cargador.

Para el armado de las placas se puede seguir el instructivo (en inglés) presente en el blog de la revista MAKE del proyecto A touchless 3D tracking interface, pero básicamente se debe unir una plancha de papel aluminio a una de madera o de cartón, para darle rigidez.

Cuanto mayor sea el área conductora, mayor será la máxima distancia de sensado.

Otra forma de aumentar el rango de sensado es aumentando la resistencia del circuito.

Código

Arduino

La medición de distancia fue realizada usando la librería Capacitive Sensor de Arduino.

Es increíblemente simple de usar, lo que hace que el código del proyecto se remita sólo a tomar las mediciones, promediarlas y enviarlas por puerto serie a la PC.

El programa que corre en Arduino, también realiza un promedio de media móvil sobre los datos que sensa para suavizar un poco las lecturas, ya que éstas pueden ser un poco caóticas dada la naturaleza del sensado capacitivo.

Processing

El programa corriendo en la PC bajo el entorno de Processing, recibe los datos de ambas placas capacitivas. En base los valores medidos, los cuales pueden variar cada vez que se prende el dispositivo, se establecen distintos umbrales que determinarán la frecuencia del tono. Por el momento las divisiones son estáticas, pero se intentará en el futuro que los valores recibidos tengan un rango estático, para que los umbrales también sean fijos.

Para generar y manipular las ondas de audio se utilizó la librería Minim.

Se eligieron frecuencias correspondientes a notas dentro de una escala musical, de modo que el sonido resultante sea armónico.

Se usaron las siguientes progresiones invitando al lector maker a probar con otras:

Tono grave:         G3       B3        C4      E4        G4      A4

Tono agudo:        C5       D5        E5      F5        G5      A5       B5        C6       D6

PureData

Se intentó ir más allá de utilizar este dispositivo como un solo instrumento y con pocos conocimientos de PureData se logró crear un patch que recibe de Processing los datos de uno de los sensores por protocolo OSC  y pueda cambiar el tempo de un sample según la zona donde la mano fue detectada.

Esto muestra el potencial que puede tener un dispositivo de estas características como controlador musical, pensando en agregar grados de libertad,  incrementando el número de placas de sensado.

Resultados

 

Foto: Amplifica

Foto: Amplifica

Los resultados del armado del dispositivo fueron satisfactorios y se logró implementar la tecnología capacitiva como una alternativa – al alcance de cualquier bolsillo – a métodos tradicionales y quizá no tan económicos de sensado de distancia, como lo son los sensores infrarrojos o por ultrasonido, cuando la aplicación no requiere demasiada precisión en la medición.

Se demostró el potencial de la tecnología como interfaz musical sencilla de utilizar, ya que es naturalmente intuitiva, y que gracias a su versatilidad permite usarla como controlador o simplemente como sensor de proximidad en un amplio número de aplicaciones artísticas.

Desarrolladores

Descargas

t Twitter f Facebook g Google+