Índice:
- Etapa 1: Materiais e Ferramentas
- Etapa 2: como funciona
- Etapa 3: esquemático
- Etapa 4: construir o PCB
- Etapa 5: soldando os componentes
- Etapa 6: instalar as bibliotecas
- Etapa 7: Código
- Etapa 8: Coloque os sons nos cartões de memória
- Etapa 9: a interface
Vídeo: Amostrador de áudio baseado em DFPlayer com sensores capacitivos: 9 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Introdução
Depois de experimentar a construção de diferentes sintetizadores, comecei a construir um sampler de áudio, que fosse facilmente replicável e barato.
Para ter boa qualidade de áudio (44,1 kHz) e capacidade de armazenamento suficiente, foi utilizado o módulo DFPlayer, que utiliza cartões de memória micro SD para armazenar até 32 gigabytes de informações. Este módulo só é capaz de reproduzir um som por vez, então usaremos dois.
Outro requisito para o projeto é que o circuito possa ser adaptado a diferentes interfaces, por isso escolhemos sensores capacitivos em vez de botões.
Os sensores capacitivos podem ser ativados apenas com o contato da mão com qualquer superfície metálica conectada ao sensor.
Para a leitura dos sensores utilizaremos um Arduino nano, devido às suas capacidades e tamanho reduzido.
características
6 sons diferentes
Ativado por sensores capacitivos.
Polifonia de 2 sons ao mesmo tempo.
Etapa 1: Materiais e Ferramentas
Materiais
Arduino Nano
2x DFPlayer
2x micro SD
3.5 Audio Jack
2.1 DC Jack
Placa de cobre 10x10
Cloreto férrico
Fio de solda
Papel de transferência de PCB
Ferramentas
Ferro de solda
Cortador de chumbo de componente
Computador
Ferro
Programas
Arduino Ide
Kicad
ADTouch Librarie
Librarie Fast DFPlayer
Etapa 2: como funciona
O sampler funciona da seguinte maneira, usando a biblioteca ADTouch, convertemos 6 das portas analógicas do Arduino Nano em sensores capacitivos.
Como sensor, podemos utilizar qualquer pedaço de metal conectado a um desses pinos por meio de um cabo.
Você pode ler mais sobre a biblioteca e os sensores capacitivos no seguinte link
Quando um desses sensores é tocado, o arduino detecta uma mudança de capacitância e, a partir daí, envia a ordem de execução do som correspondente a esse sensor para os módulos DFPlayer.
Cada módulo DFPlayer pode reproduzir apenas um som por vez, portanto, para ter a possibilidade de executar 2 sons por vez, o instrumento usa 2 módulos.
Etapa 3: esquemático
No diagrama, podemos ver como o arduino e os dois módulos DFPlayer estão conectados
R1 e R2 (1 k) são para conectar os módulos aos DFPlayers.
R 3 4 5 e 6 (10k) são para misturar as saídas dos canais le r dos módulos.
R 7 (330) é a resistência de proteção de um LED que será usado como um indicador de que o arduino está sendo energizado.
Etapa 4: construir o PCB
Em seguida, iremos fabricar a placa usando o método de transferência de calor, que é explicado neste instrutível:
6 almofadas foram colocadas na placa que permitem que o amostrador seja usado sem a necessidade de sensores externos.
Etapa 5: soldando os componentes
Em seguida, soldaremos os componentes.
Primeiro os resistores.
Recomenda-se usar cabeçalhos para montar o Arduino e os módulos sem soldá-los diretamente.
Para soldar os cabeçotes, comece com um pino, verifique se ele está bem localizado e solde o restante dos pinos.
Finalmente, iremos soldar os conectores
Etapa 6: instalar as bibliotecas
Neste projeto, usaremos três bibliotecas que precisamos instalar:
SoftwareSerial.h
DFPlayerMini_Fast.h
ADCTouch.h
No link a seguir você pode ver em detalhes como instalar bibliotecas no Arduino
www.arduino.cc/en/guide/libraries
Etapa 7: Código
Agora podemos fazer upload do código para a placa Arduino.
Para isso devemos selecionar a placa Arduino Nano.
#include #include #include
int ref0, ref1, ref2, ref3, ref4, ref5; int th;
SoftwareSerial mySerial (8, 9); // RX, TX DFPlayerMini_Fast myMP3;
SoftwareSerial mySerial2 (10, 11); // RX, TX DFPlayerMini_Fast myMP32;
configuração vazia () {int th = 550; // Serial.begin (9600); mySerial.begin (9600); mySerial2.begin (9600); myMP3.begin (mySerial); myMP32.begin (mySerial2); myMP3.volume (18); ref0 = ADCTouch.read (A0, 500); ref1 = ADCTouch.read (A1, 500); ref2 = ADCTouch.read (A2, 500); ref3 = ADCTouch.read (A3, 500); ref4 = ADCTouch.read (A4, 500); ref5 = ADCTouch.read (A5, 500);
}
void loop () {
int total1 = ADCTouch.read (A0, 20); int total2 = ADCTouch.read (A1, 20); int total3 = ADCTouch.read (A2, 20); int total4 = ADCTouch.read (A3, 20); int total5 = ADCTouch.read (A4, 20); int total6 = ADCTouch.read (A5, 20);
total1 - = ref0; total2 - = ref1; total3 - = ref2; total4 - = ref3; total5 - = ref4; total6 - = ref5; // // Serial.print (total1> th); // Serial.print (total2> th); // Serial.print (total3> th); // Serial.print (total4> th); // Serial.print (total5> th); // Serial.println (total6> th);
// Serial.print (total1); // Serial.print ("\ t"); // Serial.print (total2); // Serial.print ("\ t"); // Serial.print (total3); // Serial.print ("\ t"); // Serial.print (total4); // Serial.print ("\ t"); // Serial.print (total5); // Serial.print ("\ t"); // Serial.println (total6); if (total1> 100 && total1> th) {myMP32.play (1); // Serial.println ("o1"); }
if (total2> 100 && total2> th) {myMP32.play (2); //Serial.println("o2 "); }
if (total3> 100 && total3> th) {
myMP32.play (3); //Serial.println("o3 ");
}
if (total4> 100 && total4> th) {
myMP3.play (1); //Serial.println("o4 ");
}
if (total5> 100 && total5> th) {
myMP3.play (2); //Serial.println("o5 ");
}
if (total6> 100 && total6> th) {
myMP3.play (3); //Serial.println("o6 ");
} // não fazer nada delay (1); }
Etapa 8: Coloque os sons nos cartões de memória
Agora você pode carregar seus sons nos cartões micro SD
O formato deve ser 44,1 kHz e 16 bits wav
Você deve carregar 3 sons em cada cartão SD.
Etapa 9: a interface
Neste momento você já pode rodar seu sampler com pads no PCB, mas ainda tem a possibilidade de customizá-lo, escolhendo uma caixa e diferentes objetos ou superfícies metálicas para usar como sensores.
Neste caso, usei 3 cabeças de pulso nas quais coloquei parafusos de metal como um som de contato de metal.
Para isso, conecte os parafusos aos pinos da placa por meio de cabos.
Você pode usar qualquer objeto metálico, fita condutora ou experimentar com tinta condutora.
Recomendado:
Projeto do oscilador baseado no modo de corrente para amplificadores de potência de áudio Classe D: 6 etapas
Projeto do oscilador baseado no modo atual para amplificadores de potência de áudio Classe D: Nos últimos anos, os amplificadores de potência de áudio Classe D tornaram-se a solução preferida para sistemas de áudio portáteis, como MP3 e telefones celulares, devido à sua alta eficiência e baixo consumo de energia. O oscilador é uma parte importante da classe D au
Controle remoto IR baseado em Arduino automático baseado em temperatura: 7 etapas
Controle remoto IR baseado em Arduino automático baseado em temperatura: Ei, e aí, pessoal! Akarsh aqui da CETech. Cansado de acordar no meio de um sono profundo só porque a temperatura ambiente está muito baixa ou muito alta por causa do seu AC mudo. Então este projeto é para você. Neste projeto, vamos fazer o nosso
Visualizador de áudio baseado em sabre de luz de Kylo Ren: 5 etapas
Visualizador de áudio baseado em sabre de luz de Kylo Ren: inspirado no sabre de luz de Kylo Ren, decidi fazer um visualizador de áudio usando LEDs conectados a um arduino e, em seguida, usar o processamento para pulsar os LEDs com base na música … você adivinhou certo
Termômetro infravermelho sem contato baseado em Arduino - Termômetro baseado em IR usando Arduino: 4 etapas
Termômetro infravermelho sem contato baseado em Arduino | Termômetro baseado em IR usando Arduino: Olá pessoal, neste instructables faremos um termômetro sem contato usando arduino. Já que às vezes a temperatura do líquido / sólido é muito alta ou muito baixa e então é difícil fazer contato com ele e ler sua temperatura então naquele cenário
Amostrador automático de demonstração: 6 etapas
Amostrador automático de demonstração: este instrutível foi criado em cumprimento ao requisito do projeto do Makecourse na University of South Florida (www.makecourse.com). A amostragem é um aspecto importante de quase qualquer wetlab, pois pode ser analisado para fornecer informações importantes