İçindekiler:
Video: Arduino Soundlab: 3 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Basit bir Arduino kullanarak bile, FM sentez tekniği ile çok çeşitli şaşırtıcı seslerin üretilebilmesi inanılmaz. Daha önceki bir talimatta bu, 12 önceden programlanmış sese sahip bir sentezleyici ile gösterilmişti, ancak bir izleyici, ses parametrelerinin potansiyometrelerle tam kontrolüne sahip olmanın çok daha havalı olacağını öne sürdü ve öyle de oldu!
Bu ses laboratuvarında tonlar 8 parametre ile kontrol edilebilir: 4'ü ses yüksekliğinin ADSR zarfı için ve 4'ü dokuyu belirleyen frekans modülasyonu için.
8 potansiyometrenin eklenmesi, tuş sayısı pahasına olmadı: 8 tuştan oluşan üç set birbiri ardına birkaç mikrosaniye, toplamda iki tam oktava karşılık gelen toplam 24 tuş için okunur. Aslında, iki Arduino pini kullanılmamaktadır ve 40 tuşa genişletmek mümkün olacaktır.
Vahşi seslerin nasıl çıkarılacağıyla ilgili videoya bakın, işte kısa bir genel bakış:
* A=saldırı: Bir tonun maksimum ses yüksekliğine ulaşma süresi (8ms-2s aralığı)
* D=çürüme: Bir tonun sabit ses düzeyine inmesi için geçen süre (8ms-2s aralığı)
* S=sürdürülebilir: sabit ses seviyesi (%0-100 aralığı)
* R=bırakma: bir tonun sönme süresi (8ms-2s aralığı)
* f_m: modülasyon frekansının taşıyıcı frekansına oranı (0,06-16 aralığı) 1'in altındaki değerler alt tonlara, yüksek değerler yüksek tonlara neden olur
* beta1: notanın başındaki FM modülasyonunun genliği (0,06-16 aralığı) küçük değerler ses dokusunda küçük değişikliklere neden olur. büyük değerler çılgın seslerle sonuçlanır
* beta2: notanın sonundaki FM modülasyonunun genliği (0,06-16 aralığı) Ses dokusunun zamanla gelişmesini sağlamak için beta2'ye beta1'den farklı bir değer verin.
* tau: FM genliğinin beta1'den beta 2'ye evrimleşme hızı (8ms-2s aralığı) Küçük değerler notanın başında kısa bir patlama, büyük değerler uzun ve yavaş bir değişim verir.
Adım 1: İnşaat
Açıkçası, bu hala bir prototip, umarım bir gün ben veya bir başkası bu büyük, güçlü ve güzeli büyük tuşlarla ve potansiyometreler için gerçek kadranlarla harika bir muhafaza içinde inşa eder….
Gerekli bileşenler:
1 Arduino Nano (Sadece 6 analog girişi olan Uno ile çalışmaz)
24 buton
1kOhm - 100kOhm aralığında 8 potansiyometre
Ses kontrolü için 10kOhm'luk 1 potansiyometre
1 kapasitör - 10 mikrofarad elektrolitik
1 adet 3,5 mm kulaklık jakı
1 LM386 ses yükseltici çipi
2 1000 mikrofarad elektrolitik kapasitör
1 seramik 1 mikrofarad kapasitör
1 mikro anahtar
1 8Ohm 2Watt hoparlör
1 adet 10x15cm prototip tahtası
Ekteki şemaları anladığınızdan emin olun. 24 düğme, D0-D7'de okunmak ve D8, D10 ve D11'de etkinleştirilmek üzere 8'li 3 grup halinde bağlanır. Tencere +5V'a sahiptir ve uç musluklarda topraklanır ve merkezi musluklar A0-A7 analog girişlerine beslenir. D9, ses çıkışına sahiptir ve ses kontrolü için 10kOhm'luk bir potansiyometreye AC-bağlıdır. Ses doğrudan kulaklıkla dinlenebilir veya bir LM386 ses yükseltici çipi ile güçlendirilebilir.
Hepsi 10x15cm'lik bir prototip tahtaya sığıyor, ancak düğmeler iyi çalmak için çok yakın, bu yüzden daha büyük bir klavye yapmak daha iyi olur.
Devre, Arduino Nano üzerindeki USB bağlantısı üzerinden veya harici bir 5V güç kaynağı ile çalıştırılabilir. 2xAA pil kutusu ve ardından bir yükseltici dönüştürücü, mükemmel bir güç sağlama çözümüdür.
2. Adım: Yazılım
Ekli taslağı Arduino Nano'ya yükleyin ve hepsi çalışmalıdır.
Kod yalındır ve değiştirilmesi kolaydır, makine kodu ve kesinti yoktur, ancak zamanlayıcı ile etkileşim kurmak, düğme okumasını hızlandırmak ve ADC'nin davranışını kontrol etmek için kayıtlarla birkaç doğrudan etkileşim vardır. potansiyometre okuması için
3. Adım: Gelecekteki İyileştirmeler
Topluluktan gelen fikirler her zaman açığız!
En çok düğmelerden rahatsız oluyorum: küçükler ve basıldığında sert tıklıyorlar. Basması daha rahat olan daha büyük düğmelere sahip olmak gerçekten güzel olurdu. Ayrıca, kuvvete veya hıza duyarlı düğmeler, notaların yüksekliğini kontrol etmeye olanak tanır. Belki 3 yollu butonlar veya dokunmaya duyarlı butonlar işe yarayabilir?
Diğer güzel şeyler ise ses ayarlarını EEPROM'a kaydetmek olacaktır, EEPROM'da kısa melodileri saklamak da çok daha ilginç müzikler yapmanızı sağlayacaktır. Son olarak, daha karmaşık sesler üretilebilir, eğer biri perküsyon seslerini hesaplama açısından verimli bir şekilde nasıl üreteceğini biliyorsa, bu harika olurdu…
Önerilen:
Akıllı Motosiklet HUD Prototipi (adım adım Navigasyon ve Çok Daha Fazlası): 9 Adım
Akıllı Motosiklet HUD Prototipi (adım adım Navigasyon ve Çok Daha Fazlası): Merhaba !Bu Talimatlar, motosiklet kasklarına monte edilmek üzere tasarlanmış bir HUD (Heads-Up Display) platformunu nasıl tasarladığımın ve inşa ettiğimin hikayesidir. "Haritalar" yarışması bağlamında yazılmıştır. Maalesef tamamen bitiremedim
Arduino Araba Geri Geri Park Uyarı Sistemi - Adım Adım: 4 Adım
Arduino Araba Geri Geri Park Uyarı Sistemi | Adım Adım: Bu projede Arduino UNO ve HC-SR04 Ultrasonik Sensör kullanarak basit bir Arduino Araba Geri Park Sensörü Devresi tasarlayacağım. Bu Arduino tabanlı Araba Ters uyarı sistemi, Otonom Navigasyon, Robot Mesafesi ve diğer menzil r
Adım Adım Arduino Uno ile Akustik Kaldırma (8 adım): 8 Adım
Arduino Uno ile Akustik Kaldırma Adım Adım (8 adım): ultrasonik ses dönüştürücüler L298N erkek dc pinli Dc dişi adaptör güç kaynağı Arduino UNOBreadboardBu nasıl çalışır: İlk olarak, Arduino Uno'ya kod yüklersiniz (dijital ile donatılmış bir mikrodenetleyicidir) ve kodu dönüştürmek için analog bağlantı noktaları (C++)
Arduino Kullanan RC Paletli Robot - Adım Adım: 3 Adım
Arduino Kullanan RC Paletli Robot – Adım Adım: Merhaba arkadaşlar, BangGood'tan başka bir harika Robot kasasıyla geri döndüm. Spinel Crux V1 – Hareket Kontrollü Robot, Spinel Crux L2 – Robotik Kollu Arduino Al ve Yerleştir Robotu ve The Badland Braw
DIY Arduino Robotik Kol, Adım Adım: 9 Adım
Kendin Yap Arduino Robot Kol, Adım Adım: Bu eğitim size kendi başınıza bir Robot Kolunu nasıl oluşturacağınızı öğretiyor