Turinys:

„DFPlayer“garso imtuvas su talpiniais jutikliais: 9 žingsniai
„DFPlayer“garso imtuvas su talpiniais jutikliais: 9 žingsniai

Video: „DFPlayer“garso imtuvas su talpiniais jutikliais: 9 žingsniai

Video: „DFPlayer“garso imtuvas su talpiniais jutikliais: 9 žingsniai
Video: Sound problems with the MP3-TF-16p DFPlayer Mini? 2024, Lapkritis
Anonim
DFPlayer pagrįstas garso mėginių ėmiklis su talpiniais jutikliais
DFPlayer pagrįstas garso mėginių ėmiklis su talpiniais jutikliais

Įvadas

Eksperimentuodamas su skirtingų sintezatorių konstrukcija, nusprendžiau sukurti garso mėginių ėmiklį, kuris būtų lengvai atkartojamas ir nebrangus.

Norint turėti gerą garso kokybę (44,1 kHz) ir pakankamą atminties talpą, buvo naudojamas „DFPlayer“modulis, kuris naudoja „micro SD“atminties korteles iki 32 gigabaitų informacijos saugojimui. Šis modulis vienu metu gali leisti tik vieną garsą, todėl naudosime du.

Kitas projekto reikalavimas yra tas, kad grandinę galima pritaikyti skirtingoms sąsajoms, todėl vietoj mygtukų pasirinkome talpinius jutiklius.

Talpinius jutiklius galima suaktyvinti tiesiog ranka prisilietus prie bet kurio prie jutiklio prijungto metalinio paviršiaus.

Jutiklių skaitymui naudosime „Arduino nano“dėl jo galimybių ir mažo dydžio.

charakteristikas

6 skirtingi garsai

Aktyvuojamas talpiniais jutikliais.

2 garsų polifonija vienu metu.

1 žingsnis: medžiagos ir įrankiai

Medžiagos ir įrankiai
Medžiagos ir įrankiai
Medžiagos ir įrankiai
Medžiagos ir įrankiai

Medžiagos

„Arduino Nano“https://www.taydaelectronics.com/nano-3-0-control…

2x „DFPlayer“https://www.ebay.com/itm/DFPlayer-Mini-TF-Card-U-…

2x „micro SD“https://www.ebay.com/itm/New-8GB-Micro-SD-High-Sp…

3.5 Garso lizdas

2.1 „DC Jack“https://www.taydaelectronics.com/dc-power-jack-2-1mm-barrel-type-pcb-mount.html

10x10 vario plokštė

Geležies chloridas

Lituoklio viela

PCB perdavimo paketas

Įrankiai

Lituoklis

Komponentinis švino pjaustytuvas

Kompiuteris

Geležis

Programinė įranga

„Arduino Ide“https://www.arduino.cc/en/Main/Software

„Kicad“https://kicad-pcb.org/download/

„ADTouch Librarie“https://playground.arduino.cc/Code/ADCTouch/

Greita „DFPlayer Librarie“https://github.com/PowerBroker2/DFPlayerMini_Fast

2 žingsnis: kaip tai veikia

Mėginių ėmiklis veikia taip, naudojant ADTouch biblioteką, mes konvertuojame 6 analoginius „Arduino Nano“prievadus į talpinius jutiklius.

Kaip jutiklį galime naudoti bet kurį metalo gabalą, prijungtą prie vieno iš šių kaiščių kabeliu.

Daugiau apie biblioteką ir talpinius jutiklius galite perskaityti šioje nuorodoje

Palietus vieną iš šių jutiklių, arduino aptinka talpos pokytį ir po to siunčia nurodymą vykdyti garsą, atitinkantį tą jutiklį, į DFPlayer modulius.

Kiekvienas „DFPlayer“modulis vienu metu gali atkurti tik vieną garsą, kad būtų galima vienu metu atlikti 2 garsus, instrumentas naudoja 2 modulius.

3 žingsnis: schema

Schema
Schema

Diagramoje matome, kaip prijungti „arduino“ir du „DFPlayer“moduliai

R1 ir R2 (1 k) turi prijungti modulius prie DFPlayers.

R 3 4 5 ir 6 (10k) yra skirti modulių l ir r kanalų išėjimams maišyti.

R 7 (330) yra šviesos diodo, kuris bus naudojamas kaip indikatorius, rodantis, kad arduino yra įjungtas, apsaugos varža.

4 žingsnis: sukurkite PCB

Sukurkite PCB
Sukurkite PCB
Sukurkite PCB
Sukurkite PCB
Sukurkite PCB
Sukurkite PCB

Toliau gaminsime plokštę, naudodami šilumos perdavimo metodą, kuris paaiškinamas šioje instrukcijoje:

Ant plokštės buvo įdėtos 6 pagalvėlės, leidžiančios naudoti mėginių ėmiklį be išorinių jutiklių.

5 žingsnis: komponentų litavimas

Komponentų litavimas
Komponentų litavimas
Komponentų litavimas
Komponentų litavimas
Komponentų litavimas
Komponentų litavimas

Toliau lituosime komponentus.

Pirmiausia rezistoriai.

Rekomenduojama naudoti antraštes „Arduino“ir moduliams montuoti be jų litavimo.

Norėdami lituoti antraštes, pradėkite nuo kaiščio, tada patikrinkite, ar jis yra gerai, ir lituokite likusias kaiščius.

Galiausiai lituosime jungtis

6 veiksmas: įdiekite bibliotekas

Įdiekite bibliotekas
Įdiekite bibliotekas
Įdiekite bibliotekas
Įdiekite bibliotekas

Šiame projekte naudosime tris bibliotekas, kurias turime įdiegti:

SoftwareSerial.h

DFPlayerMini_Fast.h

ADCTouch.h

Šioje nuorodoje galite išsamiai pamatyti, kaip įdiegti bibliotekas „Arduino“

www.arduino.cc/en/guide/libraries

7 žingsnis: kodas

Dabar galime įkelti kodą į „Arduino“lentą.

Tam turime pasirinkti „Arduino Nano“plokštę.

#įtraukti #įtraukti #įtraukti

int ref0, ref1, ref2, ref3, ref4, ref5; int;

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); myMP32.begin (mySerial2); myMP3.tomas (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);

iš viso1 -= ref0; iš viso2 -= ref1; iš viso3 -= ref2; iš viso4 -= ref3; iš viso5 -= ref4; iš viso6 -= 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 (iš viso1> 100 ir & iš viso1> tūkst.) {myMP32.play (1); // Serial.println ("o1"); }

if (total2> 100 && total2> th) {myMP32.play (2); //Serial.println("o2 "); }

jei (iš viso3> 100 && iš viso3> tūkst.) {

myMP32.play (3); //Serial.println("o3 ");

}

jei (iš viso4> 100 && iš viso4> tūkst.) {

myMP3.play (1); //Serial.println("o4 ");

}

if (iš viso5> 100 &&5 iš viso>>) {

myMP3.play (2); //Serial.println("o5 ");

}

jei (iš viso6> 100 &&6 iš viso>>) {

myMP3.play (3); //Serial.println("o6 ");

} // nieko nedaryti delsimas (1); }

8 veiksmas: įdėkite garsus į atminties korteles

Dabar galite įkelti savo garsus į „micro SD“korteles

Formatas turi būti 44,1 kHz ir 16 bitų wav

Į kiekvieną SD kortelę turite įkelti 3 garsus.

9 žingsnis: sąsaja

Image
Image

Šiuo metu savo mėginių ėmiklį jau galite paleisti su trinkelėmis PCB, tačiau vis tiek turite galimybę jį pritaikyti, pasirinkdami dėklą ir įvairius objektus ar metalinius paviršius, kuriuos naudosite kaip jutiklius.

Šiuo atveju aš naudoju 3 riešo galvutes, prie kurių uždėjau metalinius varžtus kaip metalinį kontaktinį garsą.

Norėdami tai padaryti, kabeliais prijunkite varžtus prie plokštės kaiščių.

Galite naudoti bet kokį metalinį daiktą, laidžią juostą arba eksperimentuoti su laidžiu rašalu.

Rekomenduojamas: