Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
introduction
Après avoir expérimenté la construction de différents synthétiseurs, j'ai entrepris de construire un échantillonneur audio, qui était facilement reproductible et peu coûteux.
Pour avoir une bonne qualité audio (44,1 kHz) et une capacité de stockage suffisante, le module DFPlayer a été utilisé, qui utilise des cartes mémoire micro SD pour stocker jusqu'à 32 gigaoctets d'informations. Ce module n'est capable de jouer qu'un seul son à la fois, nous en utiliserons donc deux.
Une autre exigence du projet est que le circuit puisse être adaptable à différentes interfaces, c'est pourquoi nous avons choisi des capteurs capacitifs au lieu de boutons.
Les capteurs capacitifs peuvent être activés d'un simple contact de la main avec n'importe quelle surface métallique connectée au capteur.
Pour la lecture des capteurs, nous utiliserons un Arduino nano, en raison de ses capacités et de sa petite taille.
caractéristiques
6 sons différents
Activé par des capteurs capacitifs.
Polyphonie de 2 sons à la fois.
Étape 1: Matériaux et outils
Matériaux
Arduino Nano
2x DFPlayer
2x micro SD
Prise audio 3.5
2.1 Prise CC
Carte cuivre 10x10
Chlorure ferrique
Fil à souder
Papier de transfert PCB
Outils
Fer à souder
Coupe-fil de composant
Ordinateur
Le fer
Logiciel
Arduino Ide
Kicad
Bibliothèque ADTouch
Bibliothèque DFPlayer rapide
Étape 2: Comment ça marche
L'échantillonneur fonctionne comme suit, en utilisant la bibliothèque ADTouch, nous convertissons 6 des ports analogiques de l'Arduino Nano en capteurs capacitifs.
En tant que capteur, nous pouvons utiliser n'importe quel morceau de métal connecté à l'une de ces broches au moyen d'un câble.
Vous pouvez en savoir plus sur la bibliothèque et les capteurs capacitifs sur le lien suivant
Lorsqu'un de ces capteurs est touché, l'arduino détecte un changement de capacité et envoie ensuite l'ordre d'exécuter le son correspondant à ce capteur aux modules DFPlayer.
Chaque module DFPlayer ne peut jouer qu'un son à la fois, donc pour avoir la possibilité d'exécuter 2 sons à la fois l'instrument utilise 2 modules.
Étape 3: Schéma
Dans le schéma, nous pouvons voir comment l'arduino et les deux modules DFPlayer sont connectés
R1 et R2 (1 k) doivent connecter les modules aux DFPlayers.
R 3 4 5 et 6 (10k) servent à mélanger les sorties des canaux l et r des modules.
R 7 (330) est la résistance de protection d'une LED qui sera utilisée comme indicateur que l'arduino est sous tension.
Étape 4: Construire le PCB
Ensuite, nous allons fabriquer la plaque en utilisant la méthode de transfert de chaleur, qui est expliquée dans cette instructable:
6 pads ont été placés sur la carte qui permettent à l'échantillonneur d'être utilisé sans avoir besoin de capteurs externes.
Étape 5: Souder les composants
Ensuite, nous allons souder les composants.
D'abord les résistances.
Il est recommandé d'utiliser des en-têtes pour monter l'Arduino et les modules sans les souder directement.
Pour souder les en-têtes, commencez par une broche, puis vérifiez qu'elle est bien située, puis soudez le reste des broches.
Enfin nous allons souder les connecteurs
Étape 6: Installer les bibliothèques
Dans ce projet, nous utiliserons trois bibliothèques que nous devons installer:
SoftwareSerial.h
DFPlayerMini_Fast.h
ADCTouch.h
Dans le lien suivant, vous pouvez voir en détail comment installer des bibliothèques dans Arduino
www.arduino.cc/en/guide/libraries
Étape 7: Coder
Nous pouvons maintenant télécharger le code sur la carte Arduino.
Pour cela, nous devons sélectionner la carte Arduino Nano.
#include #include #include
int ref0, ref1, ref2, ref3, ref4, ref5; int e;
SoftwareSerial mySerial (8, 9); // RX, TX DFPlayerMini_Fast myMP3;
SoftwareSerial mySerial2(10, 11); // RX, TX DFPlayerMini_Fast myMP32;
void setup() { int th = 550; // Serial.begin(9600); mySerial.begin(9600); mySerial2.begin(9600); myMP3.begin(mySerial); monMP32.begin(mySerial2); monMP3.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);
}
boucle vide() {
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 -= réf0; total2 -= réf1; total3 -= réf2; total4 -= réf3; total5 -= réf4; total6 -= réf5; // // 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); //Série.println("o2"); }
if (total3 > 100 && total3 > th) {
monMP32.play(3); //Série.println("o3");
}
if (total4 > 100 && total4 > th) {
monMP3.play(1); //Série.println("o4");
}
if (total5 > 100 && total5 > th) {
monMP3.play(2); //Série.println("o5");
}
if (total6 > 100 && total6 > th) {
monMP3.play(3); //Série.println("o6");
} // ne rien faire delay(1); }
Étape 8: Chargez les sons dans les cartes mémoire
Vous pouvez maintenant charger vos sons dans les cartes micro SD
Le format doit être 44,1 kHz et wav 16 bits
Vous devez télécharger 3 sons sur chaque carte SD.
Étape 9: L'interface
A ce stade, vous pouvez déjà faire fonctionner votre échantillonneur avec des pastilles dans le PCB, mais vous avez toujours la possibilité de le personnaliser, en choisissant un boîtier et différents objets ou surfaces métalliques à utiliser comme capteurs.
Dans ce cas, j'ai utilisé 3 têtes de poignet sur lesquelles j'ai mis des vis métalliques comme son de contact avec le métal.
Pour cela, reliez les vis aux broches de la carte à l'aide de câbles.
Vous pouvez utiliser n'importe quel objet métallique, ruban conducteur ou expérimenter avec de l'encre conductrice.