Mundarija:

Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi: 9 qadam
Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi: 9 qadam

Video: Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi: 9 qadam

Video: Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi: 9 qadam
Video: Arduino İle Mutlu Çiçekler || Otomatik Sulama Sistemi Nasıl Yapılır? 2024, Iyul
Anonim
Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi
Kapasitiv sensorlar bilan DFPlayer asosidagi ovoz namunasi

Kirish

Turli sintezatorlar konstruktsiyasi bilan tajriba o'tkazganimdan so'ng, men osonlikcha takrorlanadigan va arzon bo'lgan audio namuna oluvchi qurishni yo'lga qo'ydim.

Yaxshi ovoz sifati (44,1 kHz) va etarli xotira hajmiga ega bo'lish uchun DFPlayer moduli ishlatilgan, u 32 gigabaytgacha ma'lumotni saqlash uchun micro SD xotira kartalaridan foydalanadi. Bu modul bir vaqtning o'zida faqat bitta ovozni ijro etishga qodir, shuning uchun biz ikkitasini ishlatamiz.

Loyihaga qo'yiladigan yana bir talab shundaki, sxemani turli interfeyslarga moslashtirish mumkin, shuning uchun biz tugmalar o'rniga sig'imli sensorlarni tanladik.

Kapasitiv datchiklarni sensorga ulangan har qanday metall yuzasi bilan faqat qo'l bilan aloqa qilish orqali faollashtirish mumkin.

Datchiklarni o'qish uchun biz Arduino nanosidan foydalanamiz, chunki uning imkoniyatlari va o'lchamlari kichik.

xususiyatlari

6 xil tovush

Kapasitiv sensorlar tomonidan faollashtirilgan.

Bir vaqtning o'zida 2 ta tovushning polifoniyasi.

1 -qadam: Materiallar va asboblar

Materiallar va asboblar
Materiallar va asboblar
Materiallar va asboblar
Materiallar va asboblar

Materiallar

Arduino Nano

2x DFPlayer

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

3.5 Audio jek

2.1 DC Jek

10x10 mis taxta

Ferrik xlorid

Lehim simlari

PCB uzatish qog'ozi

Asboblar

Lehimlovchi temir

Qo'rg'oshinli komponentli kesuvchi

Kompyuter

Temir

Dasturiy ta'minot

Arduino Ide

Kicad

ADTouch kutubxonasi

Tez DFPlayer kutubxonasi

2 -qadam: Bu qanday ishlaydi

Namuna oluvchi quyidagicha ishlaydi, ADTouch kutubxonasi yordamida biz Arduino Nano analog portlarining 6 tasini sig'imli sensorlarga aylantiramiz.

Sensor sifatida biz bu pinlardan biriga kabel orqali ulangan har qanday metall bo'lakdan foydalanishimiz mumkin.

Quyidagi havola orqali kutubxona va sig'imli sensorlar haqida ko'proq ma'lumotni o'qishingiz mumkin

Sensorlardan biriga teginilganda, arduino sig'im o'zgarishini aniqlaydi va shundan so'ng DFPlayer modullariga sensorga mos keladigan ovozni ijro etish buyrug'ini yuboradi.

Har bir DFPlayer moduli bir vaqtning o'zida faqat bitta ovozni o'ynashi mumkin, shuning uchun asbob 2 moduldan foydalangan holda bir vaqtning o'zida 2 ta tovushni ijro etish imkoniyatiga ega bo'ladi.

3 -qadam: sxematik

Sxematik
Sxematik

Diagrammada biz arduino va ikkita DFPlayer moduli qanday ulanganligini ko'rishimiz mumkin

R1 va R2 (1 k) - modullarni DFPlayerlarga ulash.

R 3 4 5 va 6 (10k) modullarning l va r kanallarining chiqishlarini aralashtirish uchun mo'ljallangan.

R 7 (330) - bu LEDning himoya qarshiligi, u arduino quvvatlanayotganining ko'rsatkichi sifatida ishlatiladi.

4 -qadam: tenglikni yaratish

PCB yaratish
PCB yaratish
PCB yaratish
PCB yaratish
PCB yaratish
PCB yaratish

Keyin biz plastinkani issiqlik uzatish usuli yordamida ishlab chiqaramiz, bu yo'riqnomada keltirilgan:

Kengashga namuna oluvchini tashqi datchiklarsiz ishlatishga imkon beruvchi 6 ta prokladka qo'yilgan.

5 -qadam: Komponentlarni lehimlash

Komponentlarni lehimlash
Komponentlarni lehimlash
Komponentlarni lehimlash
Komponentlarni lehimlash
Komponentlarni lehimlash
Komponentlarni lehimlash

Keyin biz komponentlarni lehimlaymiz.

Birinchidan, rezistorlar.

Arduino va modullarni to'g'ridan -to'g'ri lehimsiz o'rnatish uchun sarlavhalardan foydalanish tavsiya etiladi.

Sarlavhalarni pim bilan boshlang, keyin uning yaxshi joylashganligini tekshiring va qolgan pinlarni lehimlang.

Oxir -oqibat biz ulagichlarni lehimlaymiz

6 -qadam: kutubxonalarni o'rnating

Kutubxonalarni o'rnating
Kutubxonalarni o'rnating
Kutubxonalarni o'rnating
Kutubxonalarni o'rnating

Ushbu loyihada biz o'rnatishimiz kerak bo'lgan uchta kutubxonadan foydalanamiz:

SoftwareSerial.h

DFPlayerMini_Fast.h

ADCTouch.h

Quyidagi havolada siz Arduino -da kutubxonalarni qanday o'rnatishni batafsil ko'rishingiz mumkin

www.arduino.cc/en/guide/libraries

7 -qadam: kod

Endi biz kodni Arduino kartasiga yuklashimiz mumkin.

Buning uchun biz Arduino Nano kartasini tanlashimiz kerak.

#qo'shish #qo'shish #qo'shish

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;

void setup () {int th = 550; // Serial.begin (9600); mySerial.begin (9600); mySerial2.begin (9600); myMP3.begin (mySerial); myMP32.begin (mySerial2); myMP3. tovush (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);

jami1 -= ref0; jami2 -= ref1; jami3 -= ref2; jami4 -= ref3; jami5 -= ref4; jami6 -= ref5; // // Serial.print (jami1> th); // Serial.print (jami2> th); // Serial.print (jami3> th); // Serial.print (jami4> th); // Serial.print (jami5> th); // Serial.println (jami6> th);

// Serial.print (jami1); // Serial.print ("\ t"); // Serial.print (jami2); // Serial.print ("\ t"); // Serial.print (jami3); // Serial.print ("\ t"); // Serial.print (jami 4); // Serial.print ("\ t"); // Serial.print (jami5); // Serial.print ("\ t"); // Serial.println (jami 6); if (total1> 100 && total1> th) {myMP32.play (1); // Serial.println ("o1"); }

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

agar (jami3> 100 && jami3> th) {

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

}

agar (jami4> 100 && jami4> th) {

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

}

agar (jami5> 100 && jami5> th) {

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

}

agar (jami6> 100 && jami6> th) {

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

} // kechiktirmang (1); }

8 -qadam: Ovozlarni xotira kartalariga yuklang

Endi siz ovozingizni micro SD kartalarga yuklashingiz mumkin

Format 44,1 kHz va 16 bitli wav bo'lishi kerak

Har bir SD -kartaga 3 ta tovushni yuklashingiz kerak.

9 -qadam: interfeys

Image
Image

Bu vaqtda siz namuna oluvchini tenglikni tagliklari bilan ishlatishingiz mumkin, lekin siz uni sensorlar sifatida ishlatish uchun korpus va boshqa buyumlar yoki metall yuzalarni tanlab sozlash imkoniyatiga egasiz.

Bu holda men 3 ta bilak boshidan foydalandim, ularga metall vintlarni metall aloqa tovushi sifatida qo'ydim.

Buning uchun vintlarni taxtaning pimlariga kabellar orqali ulang.

Siz har qanday metall buyumdan, o'tkazgichli lentadan yoki o'tkazgichli siyoh bilan tajribadan foydalanishingiz mumkin.

Tavsiya: