Pelúcia Musical

Pelúcia Musical com Sensor de Toque
Que tal transformar uma pelúcia comum em uma pequena caixa musical interativa?
Neste projeto vamos utilizar uma BlackBoard Edge H, um buzzer passivo, um LED e um sensor de toque capacitivo construído com um resistor de 1 M?(1 megaohm) e uma superfície metálica utilizada como eletrodo.
Diferentemente de um botão convencional, o sensor não precisa possuir nenhuma peça mecânica aparente. O eletrodo pode ficar escondido atrás do tecido da pelúcia e, quando essa região for tocada, o ESP32 detectará a alteração provocada pela proximidade do dedo.
A cada novo toque, o buzzer toca uma única nota musical e o LED acende durante a execução dessa nota. Ao soltar e tocar novamente, o programa avança para a próxima nota da música.
Lista de materiais
- 1x BlackBoard Edge H
- 1x Buzzer Passivo 5 V
- 1x LED 5 mm
- 1x Kit Resistor 500
- 1x resistor de 1 M? para o sensor capacitivo
- 1x resistor de 230? para o LED (ou 220? utilizando o Kit Resistor 500)
- 1x Mini Protoboard 170 Pontos
- 1x conjunto de Jumpers Macho-Fêmea
- 1x pequena superfície metálica para funcionar como eletrodo
- 1x pelúcia
Como funciona o sensor de toque
O sensor utilizado neste projeto é construído utilizando dois GPIOs da BlackBoard Edge H, um resistor de 1 M? e um eletrodo metálico.
O GPIO 13 funciona como SEND, enviando o sinal elétrico, enquanto o GPIO 14 funciona como RECEIVE.
O programa mede o tempo que o circuito leva para mudar o estado do pino RECEIVE. Quando uma pessoa toca no eletrodo, a capacitância do conjunto é alterada e consequentemente o tempo medido também muda.
Durante a inicialização, o programa aprende automaticamente os valores correspondentes ao sensor livre e ao sensor tocado.
Importante frizar que nesse caso nao estou considerando uma bateria ligada ao Edge, e sim um cabo UBS que ficaria ligado nele o tempo todo. inclusive quando gravar o codigo pela primeira vez, teste a calibração. Ela ocorre no incio da ativacao do codigo e voce pode acompanhar as orientações pelo terminal.
Mapa completo das ligações
- GPIO 13 -> SEND do sensor capacitivo
- GPIO 14 -> RECEIVE e eletrodo do sensor
- GPIO 27 -> LED com resistor de 230? ou 220?
- GPIO 4 -> Buzzer passivo
O resistor de 1 M? é instalado entre os GPIOs 13 e 14. O eletrodo utilizado como área de toque também é conectado ao GPIO 14.
Calibração automática
Sempre que a BlackBoard Edge H é ligada, o programa realiza uma calibração automática do sensor.
Inicialmente o sistema aguarda 3 segundos, permitindo que o Monitor Serial seja aberto.
Durante a primeira etapa será exibida a mensagem:
NAO TOQUE NO SENSOR
Durante 5 segundos o programa mede o comportamento do sensor sem nenhum contato.
Ao terminar essa etapa, o LED pisca três vezes.
Depois será exibida:
AGORA TOQUE NO SENSOR
O usuário deve tocar no eletrodo e manter o dedo durante os 3 segundos da medição.
Durante todo o processo de calibração o buzzer permanece desligado.
Funcionamento
Depois da calibração, o programa aguarda 3 segundos e toca duas notas, indicando que o jogo musical está pronto.
Cada novo toque executa somente uma nota.
TOCAR -> toca uma nota e acende o LED SOLTAR TOCAR -> toca a próxima nota e acende o LED
Manter o dedo sobre o sensor não faz com que várias notas sejam executadas. É necessário soltar e tocar novamente.
Depois de cada nota existem 10 segundos para realizar o próximo toque.
Caso esse tempo seja ultrapassado, o buzzer reproduz um som de erro e o jogo é interrompido.
Para reiniciar, mantenha o sensor tocado durante 3 segundos. O LED piscará três vezes. Depois, solte o sensor. O sistema tocará novamente as duas notas de início e voltará para a primeira nota da música.
Código
Carregue o código abaixo na BlackBoard Edge H utilizando a Arduino IDE.
Abra o Monitor Serial em 115200 baud para acompanhar o mapeamento dos pinos, a calibração, os valores do sensor, as notas executadas e o estado atual do jogo.
Boas práticas
- Faça toda a montagem e os primeiros testes na Mini Protoboard antes de colocar os componentes dentro da pelúcia.
- Utilize um resistor de 1M? entre os GPIOs 13 e 14.
- Utilize um resistor de 230? em série com o LED. Caso utilize o Kit Resistor 500, o resistor de 220? também pode ser utilizado.
- Não toque no eletrodo durante a primeira etapa da calibração.
- Durante a segunda etapa, mantenha o dedo no eletrodo durante todo o período solicitado.
- Evite fios excessivamente longos entre a BlackBoard Edge H e o eletrodo, pois eles também influenciam a capacitância do circuito.
- Utilize um buzzer passivo para permitir a reprodução de diferentes frequências e notas musicais.
- Proteja a BlackBoard Edge H, as soldas e as conexões antes de colocá-las dentro da pelúcia.
- Antes de fechar definitivamente a pelúcia, teste várias vezes a calibração, todas as notas, o timeout de 10 segundos e o procedimento de reinício por toque de 3 segundos.
