İçindekiler:
Video: HX1-DM - İleri Dönüştürülmüş Arduino DUE Powered DIY Davul Makinesi (Ölü Bir Makine MK2 ile yapılmıştır): 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
Spec
- Hibrit Midi denetleyici / davul makinesi: Arduino DUE ile güçlendirilmiş!
- Çok düşük gecikme 1>ms ile 16 hız algılama pedi
- Herhangi bir Midi #CC komutuna atanabilen 8 düğme
- 16ch Dahili sıralayıcı (bilgisayar gerekmez!!)
- MIDI giriş/çıkış/thru işlevselliği (USB midi arayüzü olarak kullanılabilir!)
- Kısmi MIDI saat ve MTC desteği (MMC ve DAW kontrolü üzerinde çalışır)
Bu kesinlikle üzerinde çalıştığım en karmaşık projelerden biri, 17 çıkış kaydırmalı yazmaç, 6 giriş kaydırmalı yazmaç, bir devre kartı üzerinde çalışan 2x 16 kanallı çoklayıcıdan bahsediyordu Neyin nerede ve ne olduğu hakkında hiçbir fikrim yok artı hiç bulaşmadım önce vardiya kayıtları / çoklayıcılar ile ……
eBay'de bir dürtü satın alma olarak başladı, gerçekten bir Native Instruments Machine istedim çünkü sahip olduğum MPC stüdyosunda olanlara kıyasla her zaman üzerlerindeki bateri pedlerini sevdim, bu yüzden eBay'de 40 sterline hatalı bir tane gördüğümde düşündüm En kötü durum senaryosu ile düzeltmeye çalışırdım, 'eğer düzeltemezsem bir Arduino DUE'm var ve etrafta birkaç UNO var, her zaman biraz hack yapabilirim'
Zaten o davul pedlerini gerçekten çok seviyorum!!!!
Gereçler
1 x hatalı Native Instruments Makinesi MK2
1 x Arduino Ödeneği.
17 x SN74HC595'ler - 8 bit çıkış kaydırma yazmaçları
6 x SN74HC165'ler - 8 bit giriş kaydırma yazmaçları
2 x 74HC4067 - 16 kanal çoklayıcı.
2 adet 3.2” 256x64 OLED ekran.
bazı düz tel (eski disket kablosu yapacaktır)
Adım 1: Onarım
eBay satıcısı, açıklamada ne bekleyeceğine dair bir fikir verecek kadar kibardı ve USB portunu çıkarmıştı. Kart aşırı gerilime maruz kaldı ve açılmadı. Multimetreyi işaretleyin…. Anakartın kısa olduğu ortaya çıktı.. 'Daha önce sayısız anakartı şortla tamir ettim Peki ne kadar zor olabilir!?!' Bu aşırı voltajın (ve muhtemelen kart tasarımının bir parçası) neredeyse HER ŞEYİ çıkarmış olduğu ortaya çıktı. Ana CPU dahil olmak üzere karttaki bileşen. Bu tahta gerçekten kötü bir şekildeydi!
Multimetremle üretmeye ve dürtmeye devam ettim, bileşenler üzerinde biraz araştırma yaptım ve her birinin ne yaptığını anladım, ayrıca NI, anakartın etrafındaki çeşitli test noktalarıyla işleri oldukça belirgin hale getirmek için harika bir iş çıkardı ??.
Adım 2: Hack
Ana CPU dışındaki her şeyi değiştirmem gerekeceğini bilerek (buna gerek kalmayacak) eBay'e döndüm. Neyse ki gereken her şey ucuzdu, bu yüzden bir sürü sipariş vermek eğlenceliydi. ?
17 x SN74HC595'ler - 8 bit çıkış kaydırma yazmaçları
17 çıkış kaydırma yazmacı, bateri pedinin çok renkli LED'lerini ve tüm Düğme LED'lerini (tam olarak 136'sı!!) kontrol etmek için kullanılır… birbirine zincirlenmişler.
6 x SN74HC165'ler - 8 bit giriş kaydırma yazmacı
Bu giriş kaydırma kayıtları, 1 kanaldaki çoklu girişler için mükemmeldir. Toplamda 48 düğme var.
2 x 74HC4067 - 16 kanal çoklayıcı
16 pedimiz var ve 8 düğme kaldı, bunlar da analog. Karttakiler 8 kanal olduğu için bunları kullanmayı daha kolay buldum ve veri pinlerini nereye bağlayacağımı bulmakta zorlandım.. cue spagetti bağlantısı….
2 adet 3.2” 256x64 OLED ekran
Bazı ekranları olmalı!!! NI Machine'da gelen orijinal LCD ekranlar hakkında hiçbir bilgi bulamadım ve daha fazla zaman kaybetmekten rahatsız olmadım, bu yüzden Çin'den bazılarını sipariş etmeye karar verdim… Bunları çalıştırmak için UG8x8 kitaplığını kullandım. Yeni ekranlar orijinalinden biraz daha küçüktü, bu yüzden 'kötü kısımları' boş bıraktım.
1 x Arduino Ödeneği
Tüm bu güç için yeterince değerli bir projeyi beklerken bir süre etrafta yattım! Karşılaştığım bir sorun vardı, Görünüşe göre bu panoların bazı revizyonlarında sıfırlama sorunu var, bu da bir çizim yükledikten sonra şeyi çalıştırmak için bazen sıfırlama düğmesine basmam gerektiği anlamına geliyordu. Bu, 10K'lık bir dirençle kolayca düzeltildi (Arduino forumunda bununla ilgili bir yazı var).
Adım 3: Kod
Arduino topluluğunda ne kadar destek olduğundan gerçekten çok etkilendim, çeşitli bileşenler için kod örnekleri ve kitaplıklar bulmak gerçekten basit ve basitti.
USB midi'yi kurmak ve çalıştırmak kolaydı ve birkaç dakika sürdü. LED'ler biraz zaman aldı ve her pini 1 saniyelik aralıklarla aşamalı olarak YÜKSEK ayarlayan ve not alan bir taslak oluşturmak zorunda kaldım. Her şeyi kodlamaya gelince kolaylaştırmak için PIN numaralarını tutan bir dizi yaptım.
Çoklayıcılarla konuşmak için 2 kitaplık yaptım, biri analog pedleri, diğeri düğmeleri idare ediyor. Yine bu gerçekten basitti. Ekledim, düzenleme vb. kullanmaktan çekinmeyin.
Bir sıralayıcıya ve bilgisayara ihtiyaç duymadan kayıt yapabilme yeteneğine sahip olmak istedim, BPM'yi ms'ye nasıl dönüştüreceğime dair bazı bilgiler buldum ve harika bir Arduino DUE zamanlayıcı kitaplığı buldum.
Zamanlayıcı kitaplığını kullanarak okuma girdilerini ve bazı şeyleri aralıklarla ayarlayabildim:
Pedler @ 1ms - Bunu, yanıt/geri sıçrama artefaktları arasında en iyi dengeyi sağlamak için buldum.
Düğmeler @ 40ms - Bir sıra kitaplığı kullandım, böylece hiçbir baskı kaçırılmadı.
İşleme ana döngüde yapılır, Arduino'yu kilitleyeceğinden, kesinti yaptığınızda çok fazla bir şey yapamazsınız.
Midi şeyler @BPM (ms cinsinden) - sıralama için, istenen BPM'de, ETC notalarının çalınacağını ve vuruş sayacını arttıran güncellemeleri yapan bir fonksiyon çağrılır.
Adım 4: Sonuç
Burada ne yaptığımdan emin değilim ama oldukça gururluyum, pedler mükemmel tepki veriyor, tepki verme ve geri tepme sorunlarıyla doğru dengeyi elde etmek için zamanlamayla uğraşmak zorunda kaldım. Sıralama harika çalışıyor ve DAW desteğini bulduğumda bu şeyi iş akışıma tamamen entegre edebiliyorum ve her zaman istediğim şeyleri bir kontrol cihazına ekleyebiliyorum! Bu üzerinde çalışmak gerçekten eğlenceli bir proje ve harika bir egzersizdi. C ile başa çıkmak, tersine mühendisliği ve çoklayıcıların, kaydırmalı yazmaçların ve MIDI sıralamasının nasıl çalıştığını anlamak. Ana kodu geliştirmeye devam ediyorum ve bir gün açık kaynak ritim tasarımcısı olarak yayınlayabilirim.
İPUÇLARI:
Arduino/SAM klasöründeki başlık dosyalarından birini düzenleyerek DUE'nin USB adını nasıl değiştireceğimi buldum.
MIDI-OX, Midi işlevselliğini test etmek için harika bir araçtır
BAĞLANTILAR:
www.usb.org/sites/default/files/midi10.pdf - USB MIDI Spesifikasyonuhttps://midi.teragonaudio.com/tech/miditech.htm https://guitargearfinder.com/guides/convert-ms -mi… BPM'yi ms'ye dönüştürme hakkında bazı bilgiler
travis-ci.com/SMFSW/Queue - Herhangi bir basışı kaçırmamamız için düğme girişleri için!
github.com/olikraus/u8g2/wiki/u8x8referenc… - LED/LCD Ekranlar için UG8 lib
github.com/ivanseidel/DueTimer/releases - Arduino DUE Zamanlama kütüphanesi
www.pjrc.com/teensy/td_libs_Encoder.html - Büyük düğme için Encoder Lib
shiftregister.simsso.de/ - ShiftIn Register lib - Henrik Heine tarafından düzenlendi, 24 Temmuz 2016
forum.arduino.cc/index.php?topic=57636.0 - MIDI Zaman Kodu öğeleri
Önerilen:
Arduino Uno ve Mozzi ile Basit Davul Makinesi: 4 Adım
Arduino Uno ve Mozzi ile Basit Davul Makinesi: Arjantin'de yaşamak, uluslararası postaların çalınacağı veya gümrükte takılacağı anlamına gelir. Coronavirus karantinasını ekleyin ve bir sonraki projeniz eski bir Arduino Uno panosuyla sınırlandırılır. İyi haberler? Rolling Stones'un büyük şairinin dediği gibi “Zaman on
İnsan-Bilgisayar Arayüzü: EMG Kullanarak Bilek Hareketi ile bir Tutucu (Kirigami tarafından yapılmıştır) İşlevi: 7 Adım
İnsan-Bilgisayar Arayüzü: EMG Kullanarak Bilek Hareketi ile bir Tutucu İşlevi (Kirigami tarafından yapılmıştır) python ve arduino aracılığıyla ve origami tabanlı bir tutucuyu çalıştırdı
Makey Makey Elektrikli Davul / Davul Makinesi: 8 Adım
Makey Makey Elektrikli Davullar / Davul Makinesi: Bir dizi elektrikli davulun nasıl oluşturulacağına ilişkin bu eğitim, Makey Makey yarışmasına giriş niteliğindedir, kullanılabilirlik ve kişisel tercihlere göre değişiklik gösterir. Karton daha dayanıklı malzemelerle değiştirilebilir ve katmanlı olabilir köpük ile / tex için diğer
Basit LED El Feneri - Geri Dönüştürülmüş Pilden Yapılmıştır: 6 Adım
Basit LED Meşale - Geri Dönüştürülmüş Pilden Yapılmıştır: Bu talimat için kırmızı bir LED kullandım, çünkü görmek net olandan daha kolay ve elimde küçük, net bir LED yoktu. Talimatları kullanarak bunlardan birini yaparsanız, fotoğraftakinden çok daha parlak olacaktır, sadece daha kolay
Davul Aşınması: Giysilerinizde Davul Var!: 7 Adım
Davul Aşınması: Giysilerinizde Davul Var!: Herhangi bir şehir otobüsünün sürücülerine bakın. Birçoğu müzik çalarlarına takılı, ritme ayak uyduruyor ve ellerinde davul varmış gibi davranıyorlar. Şimdi rol yapmaya gerek yok! Davul aşınması, hevesli davulculara tamamen taşınabilir ve eğlenceli bir