Daftar Isi:
Video: HX1-DM - Mesin Drum DIY Bertenaga Arduino DUE (dibuat Dengan Mesin Mati MK2): 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Spesifikasi
- Kontroler Midi / mesin drum hibrida: Bertenaga Arduino DUE!
- 16 Bantalan penginderaan kecepatan dengan latensi sangat rendah 1>ms
- Pengguna 8 kenop dapat dialihkan ke perintah Midi #CC apa pun
- Sequencer bawaan 16ch (tidak perlu komputer!!)
- Fungsionalitas masuk/keluar/melalui MIDI (dapat digunakan sebagai antarmuka midi USB!)
- Jam MIDI parsial & dukungan MTC (bekerja pada kontrol MMC dan DAW)
Ini jelas merupakan salah satu proyek paling rumit yang pernah saya kerjakan, berbicara tentang 17 register geser keluaran, 6 register geser input, 2x 16 saluran multiplekser yang bekerja pada papan sirkuit Saya tidak tahu apa itu apa dan di mana plus saya tidak pernah mengacaukannya dengan register geser / multiplexer sebelum ……
Ini dimulai sebagai pembelian impulsif dari eBay, saya benar-benar menginginkan Maschine Instrumen Asli karena saya selalu menyukai bantalan drum di dalamnya dibandingkan dengan yang ada di studio MPC yang saya miliki jadi ketika saya melihat yang rusak di eBay seharga £ 40 pound saya pikir Saya akan mencoba memperbaikinya dengan skenario terburuk adalah ' jika saya tidak dapat memperbaikinya, saya memiliki Arduino DUE dan beberapa UNO tergeletak di sekitar, saya selalu dapat melakukan peretasan'
Saya sangat suka bantalan drum itu!!!!
Perlengkapan
1 x Instrumen Asli yang rusak Maschine MK2
1 x Arduino Karena.
17 x SN74HC595 - register geser keluaran 8-bit
6 x SN74HC165 - register geser input 8-bit
2 x 74HC4067 - 16 multiplekser saluran.
Layar OLED 2x3,2” 256x64.
beberapa kabel datar (kabel floppy lama bisa digunakan)
Langkah 1: Perbaikan
Penjual eBay cukup baik untuk memberikan gambaran tentang apa yang diharapkan dalam deskripsi dan telah melepas port USB. Papan telah mengalami tegangan berlebih dan tidak menyala. Tandai multimeter…. Papan tampaknya memiliki kekurangan.. 'Saya telah memperbaiki motherboard yang tak terhitung jumlahnya dengan celana pendek sebelumnya Jadi betapa sulitnya itu!?!' Ternyata tegangan berlebih ini (dan mungkin sebagian desain papan), telah mengambil hampir SETIAP komponen di papan termasuk CPU utama. Papan ini benar-benar buruk!
Saya terus mendorong & menyodok dengan multimeter saya, melakukan sedikit riset pada komponen dan mencari tahu apa yang masing-masing lakukan ditambah NI melakukan pekerjaan yang bagus untuk membuat hal-hal menjadi cukup jelas dengan berbagai titik uji di sekitar motherboard ??.
Langkah 2: Peretasan
Mengetahui bahwa saya perlu mengganti semua yang ada di CPU utama (yang tidak akan diperlukan) saya beralih ke eBay. Syukurlah semua yang dibutuhkan murah sehingga memesan banyak dari mereka menyenangkan. ?
17 x SN74HC595 - register geser keluaran 8-bit
17 register geser keluaran digunakan untuk mengontrol LED multi-warna pad drum dan semua LED Tombol (tepatnya 136!!) Ini sangat mudah digunakan dan dengan cepat menemukan perpustakaan menggunakan Arduino IDE untuk menyelamatkan diri saya membuat satu.. mereka dirantai bersama.
6 x SN74HC165 - register geser input 8-bit
Register geser input ini sangat bagus untuk banyak input pada 1 saluran. Total ada 48 tombol.
2 x 74HC4067 - 16 multiplekser saluran
Kami memiliki 16 bantalan dan 8 kenop yang tersisa, ini juga analog. Saya merasa lebih mudah menggunakan ini karena yang ada di papan adalah 8 saluran dan saya kesulitan menemukan di mana harus menghubungkan pin data.. isyarat spaghetti junction….
Layar OLED 2x3,2” 256x64
Itu harus memiliki beberapa layar!!! Saya tidak dapat menemukan info apa pun pada layar LCD asli yang disertakan dalam NI Maschine dan saya tidak dapat repot membuang waktu lagi untuk mencobanya, jadi saya memutuskan untuk memesan beberapa dari Cina… Saya menggunakan perpustakaan UG8x8 untuk membuatnya berfungsi. Layar baru sedikit lebih kecil dari aslinya jadi saya hanya menghilangkan 'bit buruk'.
1 x Arduino Karena
Saya memiliki ini tergeletak di sekitar untuk beberapa waktu menunggu proyek yang cukup layak untuk semua kekuatan itu!! Ada masalah yang saya temui, Sepertinya beberapa revisi papan ini memiliki masalah reset yang berarti saya harus menekan tombol reset kadang-kadang untuk menjalankannya setelah mengunggah sketsa. Ini mudah diperbaiki dengan resistor 10K (ada posting di forum Arduino tentang ini).
Langkah 3: Kode
Saya sangat terkesan dengan banyaknya dukungan yang ada di komunitas Arduino, menemukan contoh kode dan pustaka untuk berbagai komponen sangat sederhana dan mudah.
Mengaktifkan dan menjalankan midi USB itu mudah dan membutuhkan waktu beberapa menit. LED membutuhkan beberapa waktu dan saya harus membuat sketsa yang secara bertahap mengatur setiap pin TINGGI dalam interval 1 detik dan mencatat.. Saya membuat sebuah array yang menyimpan nomor PIN untuk membuatnya lebih mudah ketika harus mengkodekan semuanya.
Saya membuat 2 perpustakaan untuk berbicara dengan multiplexer, satu menangani bantalan analog dan yang lainnya tombol. Sekali lagi ini sangat sederhana. Saya telah melampirkannya, silakan gunakan edit dll.
Saya ingin memiliki sequencer dan kemampuan untuk merekam tanpa memerlukan komputer, saya menemukan beberapa informasi tentang cara mengubah BPM ke ms dan menemukan perpustakaan timer Arduino DUE yang hebat.
Menggunakan perpustakaan pengatur waktu, saya dapat mengatur input bacaan dan hal-hal dalam interval:
Pads @ 1ms - Saya menemukan ini untuk memberikan keseimbangan terbaik antara artefak respons / de-bounce.
Buttons @ 40ms - Saya menggunakan pustaka antrian sehingga tidak ada penekanan yang terlewatkan.
Pemrosesan dilakukan di loop utama, Anda tidak dapat melakukan terlalu banyak saat Anda dalam interupsi karena ini akan mengunci Arduino.
Midi stuff @BPM (dalam ms) - untuk pengurutan, pada BPM yang diinginkan, sebuah fungsi dipanggil untuk memperbarui nada DLL yang akan dimainkan dan meningkatkan penghitung ketukan.
Langkah 4: Kesimpulan
Tidak yakin apa yang saya buat di sini, tetapi saya cukup bangga, bantalan merespons dengan sangat baik, saya harus mengutak-atik waktu untuk mendapatkan keseimbangan yang tepat dengan masalah responsif dan debounce. Urutannya berfungsi dengan baik dan begitu saya mengetahui dukungan DAW, saya dapat sepenuhnya mengintegrasikan hal ini ke dalam alur kerja saya dan dapat menambahkan hal-hal dalam pengontrol yang selalu saya inginkan!. Ini adalah proyek yang sangat menyenangkan untuk dikerjakan dan latihan yang hebat dalam memahami C, memahami rekayasa balik dan cara kerja multiplexer, register geser, dan pengurutan MIDI. Saya terus meningkatkan kode utama dan mungkin akan merilisnya suatu hari nanti sebagai desainer ritme open source.
TIPS:
Saya menemukan cara mengubah nama USB DUE dengan mengedit salah satu file header di folder Arduino/SAM.
MIDI-OX adalah alat yang hebat untuk menguji fungsionalitas Midi
LINK:
www.usb.org/sites/default/files/midi10.pdf - Spesifikasi MIDI USBhttps://midi.terragonaudio.com/tech/miditech.htm https://guitargearfinder.com/guides/convert-ms -mi… Beberapa info tentang cara mengonversi BPM ke ms
travis-ci.com/SMFSW/Queue - Untuk input tombol agar kami tidak ketinggalan penekanan!
github.com/olikraus/u8g2/wiki/u8x8referenc… - UG8 lib untuk Layar LED/LCD
github.com/ivanseidel/DueTimer/releases - Arduino DUE Timing lib
www.pjrc.com/teensy/td_libs_Encoder.html - Encoder Lib untuk tombol besar
shiftregister.simsso.de/ - ShiftIn Register lib - Dibuat oleh Henrik Heine, 24 Juli 2016
forum.arduino.cc/index.php?topic=57636.0 - hal-hal Kode Waktu MIDI
Direkomendasikan:
Text to Speech Klik pada UChip Bertenaga ARMbasic, dan SBC Bertenaga ARMbasic Lainnya: 3 Langkah
Text to Speech Klik pada UChip Bertenaga ARMbasic, dan SBC Bertenaga ARMbasic Lainnya: Intro: Selamat siang. Nama saya Tod. Saya seorang profesional kedirgantaraan dan pertahanan yang juga sedikit geek di hati.Inspirasi: Berasal dari era BBS dial-up, Mikrokontroler 8-bit, komputer pribadi Kaypro/Commodore/Tandy/TI-994A, ketika R
Ubah Drum X-box Rock Band Menjadi Drum Elektronik Midi Stand Alone.: 4 Langkah (dengan Gambar)
Ubah Drum X-box Rock Band Menjadi Drum Elektronik Midi Stand Alone.: Saya beruntung mendapatkan set drum x-box bekas, bentuknya agak kasar, dan tidak ada dayung, tetapi tidak ada yang tidak bisa diperbaiki. mengubahnya menjadi satu set drum listrik mandiri. Membaca nilai analog dari sensor piezo dan mengubahnya menjadi perintah MIDI
Sistem Pelacakan Sepeda Dengan Peringatan Orang Mati Dengan Sigfox: 7 Langkah (dengan Gambar)
Sistem Pelacakan Sepeda Dengan Peringatan Orang Mati Dengan Sigfox: Sistem keamanan untuk pengendara sepeda dengan fitur pelacakan dan pengiriman peringatan. Jika terjadi kecelakaan, alarm dikirim dengan posisi GPS. Keamanan bagi pengendara sepeda adalah suatu keharusan, dengan kecelakaan sepeda jalan atau sepeda gunung terjadi dan sesegera mungkin darurat per
Drum Elektronik DIY (Persyaratan Modul Drum): 4 Langkah
Drum Elektronik DIY (Req'd Modul Drum): Jadi tahun lalu saya perlu menjaga hal-hal yang tenang untuk teman serumah saya, dan sebagai drummer yang mengambil sedikit menahan diri. Saya menjelajahi internet dan menemukan beberapa situs web yang bagus setelah membaca tentang set drum DIY di Hack-a-day, dan apa yang Anda tahu, mon
Memakai Drum: Drum dalam Pakaian Anda!: 7 Langkah
Drum Wear: Drum di Pakaian Anda!: Lihatlah pengendara bus kota mana pun. Banyak dari mereka terhubung ke pemutar musik mereka, mengetuk mengikuti irama, berpura-pura memiliki drum. Sekarang tidak perlu berpura-pura! Keausan drum memberi calon drummer alat yang sepenuhnya portabel dan fu