quarta-feira, 21 de maio de 2014

Fotos do Projeto em Andamento

Desmontando o teclado
As teclas que usaremos


Placa perfurada

Tinta condutiva

Solda + MUX

Partes do teclado

MUX pós solda

Acendendo um LED com 3 pilhas (4,5V)

Projeto de piano feito com Arduino


Introdução:

A ideia surgiu entre colegas, ao ter visto alguns vídeos sobre o Arduino e diversos projetos no YouTube; o piano foi o que realmente chamou a atenção, parecendo simples o suficiente para fazer uma versão própria.



Vimos que para o projeto seria melhor que fizéssemos primeiro apenas o piano e depois fossemos adicionando outras funcionalidades, como a possibilidade de trocar os sons de piano pelo de outros instrumentos.




Como funciona:

O piano é composto por:

- Arduino (Uno ou Duemilanove, no nosso usamos o Duemilanove);

- Jumpers (para ligar os componentes);
- Resistores (para impedir a passagem de correntes que possam danificar o circuito);
- Multiplexador (ou simplesmente MUX, usamos o 4051);
- Tinta e botões de borracha condutiva;
- Teclas;
- Auto-falante (para reprodução dos sons).

O Arduino é a placa que serve de intermédio para as interações Computador-Circuito. Como o Arduino, nesse caso o Duemilanove é limitado a apenas 14 portas digitais e 6 portas analógicas, é impossível criar um piano com pelo menos uma oitava completa. Para isso, usamos o multiplexador (daqui em diante vamos chamá-lo de MUX), que é um circuito integrado que é capaz de "ler" mais portas analógicas e traduzir a informação para um menor número de entradas disponíveis no Arduino, expandindo sua capacidade.


O MUX só pode "ler" uma única porta analógica por vez, mas ele pode trocar de porta em altíssimas velocidades e é esse recurso que nós vamos aproveitar.




Metodologia:

Primeiramente, conferimos todos os componentes necessários, montando uma lista inicial do que seria necessário para construir um protótipo. Nesse estágio optamos pelo MUX HCF4051 por ser o mais conhecido, barato e trabalhar na faixa de tensão desejada. O Duemilanove foi escolhido por ser um modelo que já tínhamos disponível desde o inicio do projeto, com o microcontrolador ATMega328, que é capaz de armazenar cerca de 30 KB de código, suficiente para o projeto. O resto dos componentes são baratos e simples de usar.

Foi realizada a divisão do grupo em 3 partes: Design, Elétrica e Programação.


- Design: Felipe e Thiago;

- Elétrica: Paulo e Victor;
- Programação: Fabrício e Lucas.

Como o projeto ainda se encontra em estado inicial(protótipo), não nos preocupamos com o design e colocamos apenas o necessário afim de realizar análises e obter feedback.




Pelo Arduino, nós configuramos para trocar as portas

sucessivamente, dessa forma podemos "ler" mais de uma nota "simultaneamente". Conseguindo assim colocar mais notas sendo lidas "simultaneamente" no piano.

Para cada nota é preciso criar uma corrente que passa pelo MUX e é direcionada ao Arduino. A corrente precisa ser baixa para gerar valores menores a serem lidos pelo Arduino, que os identifica como a nota não sendo tocada. Um botão localizado na parte inferior de cada tecla habilita uma trilha de alta corrente quando pressionado, gerando valores de leitura maiores para o Arduino, caracterizando uma nota pressionada.


No quesito de design, que foi convencionado ser executado após os testes de funcionamento do MUX, será feita uma estrutura básica para apenas suportar as teclas e uma chave para ligar o circuito.


Por último, o projeto ainda está em andamento, sendo assim, não temos o case para o piano, nem sua funcionalidade completa.