Isi kandungan:
- Langkah 1: Bahan
- Langkah 2: Reka bentuk
- Langkah 3: Pembinaan dan Pendawaian
- Langkah 4: Pengaturcaraan
- Langkah 5: Persediaan
Video: Arduino Uno Midi Fighter: 5 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:10
Instruksional ini dibuat untuk memenuhi keperluan projek Makecourse di University of South Florida (www.makecourse.com)
Berdasarkan MidiFighter oleh DJ Techtools yang popular, alat kawalan Arduino buatan Musical Instrument Digital Interface (MIDI) buatan sendiri ini boleh digunakan sebagai peranti MIDI di mana-mana perisian Digital Audio Workstation (DAW). Pengawal MIDI dapat mengirim dan menerima mesej MIDI dari komputer dan dapat digunakan untuk mengendalikan secara langsung perisian mana yang sedang digunakan. Selain itu, kawalan pada pengawal MIDI dapat disesuaikan sepenuhnya - yang bermaksud bahawa setiap butang, slider dan tombol individu dapat dipetakan ke fungsi apa pun dalam DAW. Contohnya, menekan butang dapat memainkan nota tertentu atau diprogramkan untuk menukar tempo projek audio anda.
github.com/jdtar/Arduino-Midi-Controller
Langkah 1: Bahan
Berikut adalah senarai bahan dan alat yang digunakan dalam projek ini.
Arduino Uno
Papan roti
4051/4067 Multiplexer
Wayar pelompat
Kawat Tambahan
Potensiometer slaid linear 2x 10k ohm
16x Sanwa 24mm butang
Panaskan Kecilkan
Besi pematerian
Pisau cukur
Perintang 4.7 kΩ
Lembaran akrilik (untuk penutup)
Perumahan untuk kancing dan Arduino
Pencetak 3-D
Pemotong Laser
Langkah 2: Reka bentuk
Saya telah menyediakan tempat tinggal untuk pengawal MIDI saya sebelum memulakan projek, jadi saya memperolokkan lakaran penutup untuk menggambarkan bagaimana semuanya diletakkan. Saya tahu bahawa saya mahukan sekurang-kurangnya 16 butang dan beberapa potensiometer sebagai ciri, jadi saya cuba mengasingkan komponennya sekerap mungkin.
Setelah membuat susun atur penutup, saya mengeksport fail sebagai PDF 1: 1 dan menghantarnya ke pemotong laser untuk memotong selembar akrilik. Untuk lubang skru, saya menandakan di mana saya mahu lubang itu mempunyai penanda dan mencairkan akrilik dengan filamen panas.
Terlampir adalah PDF 1: 1 yang dapat dicetak sebagai 1: 1 dan dipotong dengan alat kuasa jika pemotong laser tidak tersedia.
Langkah 3: Pembinaan dan Pendawaian
Setelah memotong akrilik, saya dapati bahawa akrilik terlalu nipis untuk menyokong semua komponen dengan secukupnya. Saya kemudian memotong helaian lain dan melekatkannya bersama yang kebetulan berfungsi dengan sempurna.
Pendawaian komponen memerlukan beberapa percubaan dan ralat tetapi lakaran Fritzing dilampirkan. Saya mula-mula memasang wayar tanah dan perintang 4.7kΩ, memateri dan memanaskan sambungan pada butang. Memasang dua potensiometer slaid diperlukan lubang lebur untuk skru dalam akrilik. Setelah kedua-dua potensiometer dipasang, mereka disambungkan ke pin analog A0 dan A1. Setelah pendawaian selesai, saya teringat bahawa tidak ada penutup kenop untuk fader saya, jadi daripada membelinya, saya mencetak beberapa penutup kenop menggunakan pencetak 3-D dengan membuat sketsa di Autodesk Fusion 360 dan mengeksport ke fail STL. De
Arduino Uno hanya mempunyai 12 pin input digital yang tersedia tetapi 16 butang harus dihubungkan. Untuk mengimbanginya, saya memasang 74HC4051 Multiplexer pada papan roti yang menggunakan 4 pin input digital dan membolehkan pelbagai isyarat menggunakan talian bersama sehingga 8 pin input digital tersedia untuk sejumlah 16 pin digital yang tersedia untuk digunakan.
Memasang butang ke pin yang betul adalah soal membuat matriks 4x4 dan menggunakannya dalam kod. Walau bagaimanapun, bahagian yang rumit adalah bahawa multiplexer tertentu yang dibeli mempunyai susun atur pin tertentu yang dibantu oleh lembar data dan juga saya mempunyai susun atur nota tertentu semasa memasang butang yang akhirnya kelihatan seperti ini:
CATATAN MATRIK
[C2] [C # 2] [D2] [D # 2]
[G # 2] [A1] [A # 2] [B1]
[E1] [F1] [F # 1] [G1]
[C2] [C # 2] [D2] [D # 2]
MATRIK PIN (M = MUX INPUT)
[6] [7] [8] [9]
[10] [11] [12] [13]
[M0] [M1] [M2] [M3]
[M4] [M5] [M6] [M7]
Langkah 4: Pengaturcaraan
Setelah pemasangan selesai, pengaturcaraan Arduino masih ada. Skrip yang dilampirkan ditulis dengan cara yang mudah disesuaikan.
Permulaan skrip merangkumi perpustakaan MIDI.h dan perpustakaan pengawal yang dipinjam dari blog Notes and Volts yang keduanya disertakan dalam fail zip untuk kod tersebut. Dengan menggunakan perpustakaan pengawal, objek untuk butang, potensiometer dan butang multipleks dapat dibuat yang mengandungi nilai data yang merangkumi nombor nota, nilai kawalan, kecepatan nota, nombor saluran MIDI, dll. Perpustakaan MIDI.h membolehkan komunikasi MIDI I / O pada Port bersiri Arduino yang seterusnya mengambil data dari objek pengawal, mengubahnya menjadi mesej MIDI dan menghantar mesej ke mana-mana antara muka midi yang disambungkan.
Bahagian penyediaan yang tidak sah dari skrip memulakan semua saluran sebagai tidak aktif dan juga memulakan sambungan bersiri pada 115200 baud, laju lebih cepat daripada isyarat MIDI yang ditukar.
Gelung utama pada dasarnya mengambil susunan butang dan butang berbilang dan menjalankan gelung untuk memeriksa yang mana butang telah ditekan atau dilepaskan dan menghantar bait data yang sesuai ke antara muka midi. Gelung potensiometer memeriksa kedudukan potensiometer dan menghantar perubahan voltan yang sesuai kembali ke antara muka midi.
Langkah 5: Persediaan
Setelah skrip dimuat ke Arduino, langkah seterusnya adalah memasang dan memainkan. Ada beberapa langkah, bagaimanapun, sebelum dapat digunakan.
Pada OSX, Apple menggabungkan ciri untuk membuat peranti midi maya yang dapat diakses melalui aplikasi Audio Midi Setup pada mac. Setelah peranti baru dibuat, MIDI Tanpa Rambut dapat digunakan untuk membuat sambungan bersiri antara Arduino dan peranti midi maya baru. Sambungan bersiri dari Arduino melalui Hairless MIDI beroperasi pada kadar baud yang ditentukan dalam bahagian persediaan kosong skrip dan mesti ditetapkan setara dalam tetapan pilihan MIDI Tanpa Rambut.
Untuk tujuan pengujian, saya menggunakan Midi Monitor untuk memeriksa apakah data yang betul dikirimkan mengira sambungan serial-MIDI. Setelah saya menentukan bahawa semua butang menghantar data yang betul melalui saluran yang betul, saya menetapkan isyarat MIDI untuk membuat laluan ke Ableton Live 9 sebagai Input MIDI. Di Ableton saya dapat memetakan sampel audio yang dihiris ke setiap butang dan memainkan setiap sampel.
Disyorkan:
Pengangkatan Akustik Dengan Arduino Uno Langkah demi Langkah (8-langkah): 8 Langkah
Acoustic Levitation With Arduino Uno Step-by Step (8-step): transduser suara ultrasonik L298N Dc power adaptor wanita dengan pin dc lelaki Arduino UNOBreadboardBagaimana ini berfungsi: Pertama, anda memuat naik kod ke Arduino Uno (ia adalah mikrokontroler yang dilengkapi dengan digital dan port analog untuk menukar kod (C ++)
Hentikan Tangan dan Kaki Berkeringat Dengan Sweat Fighter !: 7 Langkah (dengan Gambar)
Hentikan Tangan dan Kaki Berkeringat Dengan Sweat Fighter !: 3/1/19 Kemas kini: Sebilangan orang melaporkan kesakitan, yang disebabkan oleh pembalikan polaritas yang cepat. Saya akan mengemas kini kod untuk mengurangkan masalah itu, tetapi buat masa ini anda harus menahan diri untuk membina ini. Hyperhidrosis adalah keadaan yang menyebabkan lebihan
Arduino-UNO yang Lebih Kuat, Massduino-UNO: 9 Langkah
Arduino-UNO yang Lebih Kuat, Massduino-UNO: Apa Massduino? Massduino adalah barisan produk baru, yang menggabungkan platform periferal Arduino -kaya, pembangunan yang mudah dan cepat, kos rendah dan senang menghasilkan kelebihan pengeluaran berskala besar. Hampir semua kod Arduino boleh menjadi
Fighter MIDI Based Arduino (Sensitive Touch): 7 Langkah (dengan Gambar)
Arduino Based MIDI Fighter (Touch Sensitive): MIDI bermaksud Antaramuka Digital Alat Muzik. Di sini, kami membuat pejuang MIDI sensitif sentuhan. Ia mempunyai 16 pad. ini boleh ditambah atau dikurangkan. Di sini saya telah menggunakan 16 kerana pin arduino terhad. Juga saya telah menggunakan pin input analog
Pengawal Lampu Jalur LED MIDI 5V untuk Spielatron atau MIDI Synth lain: 7 Langkah (dengan Gambar)
Pengawal Lampu Jalur LED MIDI 5V untuk Spielatron atau MIDI Synth Lain-lain: Pengawal ini menyalakan lampu jalur LED triwarna untuk 50mS per nota. Biru untuk G5 hingga D # 6, merah untuk E6 hingga B6 dan hijau untuk C7 hingga G7. Pengawal adalah peranti ALSA MIDI sehingga perisian MIDI dapat mengeluarkan ke LED pada masa yang sama dengan peranti synth MIDI