Faz algum tempo que conheci o Drum Buddy e achei a idéia muito legal, então pensei “E isso fosse feito com o Arduino?”. Surgiu então a idéia de criar o Drum Buduino.
O principio de funcionamento é bem simples. No meu protótipo estou usando 3 sensores LDRs para captar a iluminação gerada por uma lâmpada que fica dentro do Drum Buduino, e esses valores são recebidos no Arduino e enviados para o Processing, onde utilizei a biblioteca Minin para gerar sons. Entre os LDRs e a Lâmpada tem um CD com alguns recortes que fica girando. Dessa forma a luz passa pelo recorte e quando o recorte encontra-se em baixo do LDR, um sinal é gerado.
Tenho que melhorar algumas coisas nele ainda, como colocar uma ponte H para controlar o motor, usar uma caixa maior pois a lâmpada esquenta muito, o que pode danificar os fios e ligar alguns potenciômetros e botões para controlar o software MIDI que está no computador.
Para fazer o Arduino se comunicar com o Processing precisamos pegar a biblioteca que é responsável por criar o caminho de comunicação entre os dois. Para que a biblioteca funcione corretamente é necessário ter rodando no Arduino o firmware Firmata. É possível realizar a comunicação entre os dois fazendo uso da biblioteca Serial do Processing e do Arduino, mas isso da mais trabalho e não me parece elegante.
Faça o download da biblioteca e descompacte-a dentro da pasta libraries que se encontra na pasta Scketchbook do seu Processing. Agora abra a IDE do Arduino e faça o upload do exemplo que se encontra em: LIbrary-Firmata>StandardFirmata para a placa.
No Processing digite o seguinte exemplo para o teste inicial:
Rode este programa e se tudo ocorreu como planejado o led que está conectado no pino 13 do Arduino deve começar a piscar. Maiores detalhes sobre as funções da biblioteca do Processing podem ser encontradas na sua página no Arduino Playground.
Vamos começar a brincadeira!
Vou usar um circuito simples com LDR (Resistor Variável Conforme Incidência De Luz) que é mostrado na página 31 do Arduino Booklet