İçindekiler:
- Adım 1: Malzemeler ve Araçlar
- Adım 2: Nasıl Çalışır?
- Adım 3: Şematik
- Adım 4: PCB'yi oluşturun
- Adım 5: Bileşenleri Lehimleme
- Adım 6: Kitaplıkları Kurun
- 7. Adım: Kod
- Adım 8: Sesleri Hafıza Kartlarına Yükleyin
- 9. Adım: Arayüz
Video: Kapasitif Sensörlü DFPlayer Tabanlı Ses Örnekleyici: 9 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Tanıtım
Farklı sentezleyicilerin yapımını denedikten sonra, kolayca kopyalanabilen ve ucuz olan bir ses örnekleyici oluşturmaya başladım.
İyi ses kalitesine (44,1 kHz) ve yeterli depolama kapasitesine sahip olmak için, 32 gigabayta kadar bilgiyi depolamak için mikro SD bellek kartlarını kullanan DFPlayer modülü kullanıldı. Bu modül bir seferde sadece bir ses çalabilir, bu yüzden iki tane kullanacağız.
Proje için bir diğer gereklilik ise devrenin farklı arayüzlere uyarlanabilmesidir, bu yüzden butonlar yerine kapasitif sensörleri tercih ettik.
Kapasitif sensörler, sensöre bağlı herhangi bir metal yüzeyle sadece el temasıyla etkinleştirilebilir.
Sensörlerin okunması için yetenekleri ve küçük boyutu nedeniyle bir Arduino nano kullanacağız.
özellikler
6 farklı ses
Kapasitif sensörler tarafından etkinleştirilir.
Aynı anda 2 sesin polifonisi.
Adım 1: Malzemeler ve Araçlar
Malzemeler
Arduino Nano
2x DFPlayer
2x mikro SD
3.5 Ses Jakı
2.1 DC Jakı
10x10 bakır levha
Demir Klorür
Lehim teli
PCB transfer kağıdı
Aletler
havya
Bileşen kurşun kesici
Bilgisayar
Demir
Yazılım
Arduino Ide
Kicad
ADTouch Kitaplığı
Hızlı DFPlayer Kitaplığı
Adım 2: Nasıl Çalışır?
Örnekleyici şu şekilde çalışıyor, ADTouch kütüphanesini kullanarak Arduino Nano'nun 6 analog portunu kapasitif sensörlere dönüştürüyoruz.
Sensör olarak bu pinlerden birine kablo ile bağlı herhangi bir metal parçasını kullanabiliriz.
Aşağıdaki bağlantıdan kütüphane ve kapasitif sensörler hakkında daha fazla bilgi edinebilirsiniz
Bu sensörlerden birine dokunulduğunda, arduino bir kapasitans değişikliği algılar ve ardından o sensöre karşılık gelen sesi yürütme emrini DFPlayer modüllerine gönderir.
Her DFPlayer modülü aynı anda yalnızca bir ses çalabilir, bu nedenle aynı anda 2 ses yürütme olanağına sahip olmak için cihaz 2 modül kullanır.
Adım 3: Şematik
Diyagramda arduino ve iki DFPlayer modülünün nasıl bağlandığını görebiliriz.
R1 ve R2 (1 k) modülleri DFPlayer'lara bağlamak içindir.
R 3 4 5 ve 6 (10k), modüllerin l ve r kanallarının çıkışlarını karıştırmak içindir.
R 7 (330), arduinoya enerji verildiğinin göstergesi olarak kullanılacak bir LED'in koruma direncidir.
Adım 4: PCB'yi oluşturun
Ardından, bu talimatta açıklanan ısı transferi yöntemini kullanarak plakayı üreteceğiz:
Örnekleyicinin harici sensörlere ihtiyaç duymadan kullanılabilmesi için kart üzerine 6 adet ped yerleştirilmiştir.
Adım 5: Bileşenleri Lehimleme
Daha sonra bileşenleri lehimleyeceğiz.
Önce dirençler.
Arduino ve modülleri doğrudan lehimlemeden monte etmek için başlıklar kullanılması tavsiye edilir.
Başlıkları lehimlemek için bir pimle başlayın, ardından iyi yerleştirildiğini kontrol edin ve ardından kalan pimleri lehimleyin.
Sonunda konektörleri lehimleyeceğiz
Adım 6: Kitaplıkları Kurun
Bu projede kurmamız gereken üç kütüphane kullanacağız:
SoftwareSerial.h
DFPlayerMini_Fast.h
ADCTouch.h
Aşağıdaki linkte Arduino'da kütüphanelerin nasıl kurulacağını detaylı olarak görebilirsiniz.
www.arduino.cc/en/guide/libraries
7. Adım: Kod
Artık kodu Arduino kartına yükleyebiliriz.
Bunun için Arduino Nano kartını seçmeliyiz.
#include #include #include
int ref0, ref1, ref2, ref3, ref4, ref5; int;
SoftwareSerial mySerial(8, 9); // RX, TX DFPlayerMini_Fast myMP3;
YazılımSerial mySerial2(10, 11); // RX, TX DFPlayerMini_Fast myMP32;
geçersiz kurulum() { int th = 550; // Serial.başlangıç(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);
}
boşluk döngüsü () {
int toplam1 = ADCTouch.read(A0, 20); int toplam2 = ADCTouch.read(A1, 20); int toplam3 = ADCTouch.read(A2, 20); int toplam4 = ADCTouch.read(A3, 20); int toplam5 = ADCTouch.read(A4, 20); int toplam6 = ADCTouch.read(A5, 20);
toplam1 -= başvuru0; toplam2 -= ref1; toplam3 -= ref2; toplam4 -= ref3; toplam5 -= ref4; toplam6 -= ref5; // // Serial.print(toplam1 > th); // Serial.print(toplam2 > th); // Serial.print(toplam3 > th); // Serial.print(toplam4 > th); // Seri.print(toplam5 > th); // Serial.println(toplam6 > th);
// Seri.baskı(toplam1); // Serial.print("\t"); // Seri.baskı(toplam2); // Serial.print("\t"); // Seri.baskı(toplam3); // Serial.print("\t"); // Seri.baskı(toplam4); // Serial.print("\t"); // Seri.baskı(toplam5); // Serial.print("\t"); // Serial.println(toplam6); if (toplam1 > 100 && toplam1 > th) { myMP32.play(1); // Serial.println("o1"); }
if (toplam2 > 100 && toplam2 > th) { myMP32.play(2); //Serial.println("o2"); }
if (toplam3 > 100 && toplam3 > th) {
myMP32.play(3); //Serial.println("o3");
}
if (toplam4 > 100 && toplam4 > th) {
myMP3.play(1); //Serial.println("o4");
}
if (toplam5 > 100 && toplam5 > th) {
myMP3.play(2); //Serial.println("o5");
}
if (toplam6 > 100 && toplam6 > th) {
myMP3.play(3); //Serial.println("o6");
} // hiçbir şey yapma gecikme(1); }
Adım 8: Sesleri Hafıza Kartlarına Yükleyin
Artık seslerinizi mikro SD kartlara yükleyebilirsiniz.
Format 44,1 kHz ve 16 bit wav olmalıdır
Her SD karta 3 ses yüklemelisiniz.
9. Adım: Arayüz
Şu anda örnekleyicinizi PCB'deki pedlerle çalıştırabilirsiniz, ancak yine de bir kasa ve sensör olarak kullanmak için farklı nesneler veya metal yüzeyler seçerek onu özelleştirme olanağına sahipsiniz.
Bu durumda metal temas sesi olarak metal vida taktığım 3 bilek başı kullandım.
Bunun için vidaları kablo yardımıyla kartın pinlerine bağlayınız.
Herhangi bir metalik nesneyi, iletken bandı kullanabilir veya iletken mürekkeple deney yapabilirsiniz.
Önerilen:
Toprak Kapasitif Sensörlü Arduino Bitki Monitörü - Öğretici: 6 Adım
Toprak Kapasitif Sensörlü Arduino Bitki Monitörü - Eğitim: Bu derste, OLED Ekranlı ve Visuino ile kapasitif nem sensörü kullanarak toprak nemini nasıl algılayacağımızı öğreneceğiz.Videoyu İzle
Ultrasonik Sensörlü ve Temassız Sıcaklık Sensörlü Arduino Arabirimi: 8 Adım
Ultrasonik Sensör ve Temassız Sıcaklık Sensörü ile Arduino Arabirimi: Günümüzde, Yapımcılar, Geliştiriciler, projelerin prototiplerinin hızlı bir şekilde geliştirilmesi için Arduino'yu tercih ediyor. Arduino, kullanımı kolay donanım ve yazılıma dayalı açık kaynaklı bir elektronik platformdur. Arduino'nun çok iyi bir kullanıcı topluluğu var. Bu projede
RPIEasy - RPI Tabanlı Çok Sensörlü Cihaz: 6 Adım
RPIEasy - RPI Tabanlı Çok Sensörlü Cihaz: Bazı DIY sensörleri oluşturmayı planlayan biri varsa, popüler ESP8266'nın ötesinde ucuz ve düşük tüketimli "Raspberry Pi Zero W"; modell de önemli bir seçenektir. RPI Zero W yaklaşık 10 USD'ye mal oluyor ve güç tüketimi
Gösteri Otomatik Örnekleyici: 6 Adım
Gösteri Otomatik Örnekleyici: Bu talimat, Güney Florida Üniversitesi'ndeki (www.makecourse.com) Makecourse'un proje gereksinimini yerine getirmek için oluşturulmuştur
Evive ile Kapasitif Dokunmatik (Arduino Tabanlı Kontrolör): 6 Adım (Resimli)
Evive ile Kapasitif Dokunma (Arduino Tabanlı Kontrolör): Akıllı telefonunuzun dokunmatik ekranının nasıl çalıştığını biliyor musunuz? Akıllı telefonun cam ekranın altında bir dizi dokunmatik sensör vardır. Günümüzde kapasitans dokunmatik algılama teknolojisine dayanmaktadır ve hafif bir dokunuş bile kolayca algılanmaktadır. Kapasitif dokunma hissedilir