Isi kandungan:

Stesen Gelung MIDI Pelbagai Laluan Arduino: 6 Langkah
Stesen Gelung MIDI Pelbagai Laluan Arduino: 6 Langkah

Video: Stesen Gelung MIDI Pelbagai Laluan Arduino: 6 Langkah

Video: Stesen Gelung MIDI Pelbagai Laluan Arduino: 6 Langkah
Video: Nikmati lautan Jepun dan penerokaan gua hanya satu jam dari Tokyo!【Kamakura1】 2024, November
Anonim
Stesen Gelung MIDI Pelbagai Laluan Arduino
Stesen Gelung MIDI Pelbagai Laluan Arduino
Stesen Gelung MIDI Pelbagai Laluan Arduino
Stesen Gelung MIDI Pelbagai Laluan Arduino
Stesen Gelung MIDI Pelbagai Laluan Arduino
Stesen Gelung MIDI Pelbagai Laluan Arduino

Loop station, atau looper, pada dasarnya adalah alat untuk memainkan semula secara real-time riff instrumental anda (gelung). Ini tidak dimaksudkan sebagai media rakaman, tetapi instrumen untuk membentuk inspirasi tanpa gangguan (dan akhirnya tampil secara langsung…).

Terdapat banyak stesen gelung rakaman audio di luar sana, baik dalam bentuk perkakasan khusus (hampir setiap pengeluar pedal gitar mempunyai produk sendiri) atau perisian komputer (Linux Sooper Looper atau windows Mobius yang sangat baik, sebagai contoh yang paling terkenal). Saya hanya dapat mencari beberapa projek mengenai DIY bukan audio tetapi MIDI loopers, yang bermaksud alat untuk merakam peristiwa MIDI dan memainkannya dengan segera kembali; kebanyakan projek ini (semuanya mesti saya katakan) terbengkalai atau hilang… baiklah, di sini kita ada projek yang lengkap untuk semua orang!

Stesen gelung Arduino MIDI ini hanya mengesan peristiwa MIDI yang masuk dan memainkannya semula. Anda hanya perlu menekan pedal rakaman, buat riff terbaik anda dan hentikan rakaman dengan menekan pedal sekali lagi. Sangat senang:)

Projek ini berdasarkan perkakasan terbuka yang mudah dicari (Arduino DUE), perisian (firmware saya sendiri dan Arduino IDE) dan boleh disesuaikan untuk menggambarkan pilihan anda.

Mari lakukannya!

PS: ya, ia sangat murah!

Langkah 1: Had

Sebelum anda mula memperoleh bahagian perkakasan untuk projek ini, izinkan saya memberitahu anda mana hadnya sehingga anda dapat memutuskan untuk terus maju atau berhenti di sini.

- kerana had perkakasan (memori Aduino DUE pada dasarnya), panjang maksimum lalai frasa yang dapat anda rakam terhad kepada 46 saat.

- gelung tidak dapat disimpan dan dimainkan semula setelah dimatikan. Anda boleh menghantarnya ke PC dan menyimpannya.

- tidak ada kuantisasi nota.

- Jam MIDI disokong, tetapi pada peringkat awal pada masa ini.

- MIDI yang dirakam adalah nota, nota, perubahan kawalan dan lengkungan nada; mesej MIDI lain seperti selepas sentuhan, perubahan program, SysEx, dan lain-lain tidak diambil kira.

- max polyphony ditetapkan ke 10 secara lalai (sekali lagi, had memori Aduino DUE).

Di sisi positifnya, aliran MIDI dari pelbagai instrumen yang berbeza, masing-masing memancarkan salurannya sendiri, disokong; ini bermaksud bahawa anda boleh merakam pelbagai instrumen MIDI sekaligus, berlapis atau dengan trek mereka sendiri (lebih banyak kebaikan pada langkah seterusnya;)).

Sekiranya hidup dengan batasan-batasan ini nampaknya masuk akal (dan itu adalah untuk saya), anda akan mempunyai masa yang sangat baik dengan perkara ini;)

Langkah 2: Bagaimana Ia Berfungsi

Stesen gelung MIDI di sini sangat mudah dikendalikan. Ia berfungsi dengan cara yang serupa dengan stesen gelung audio perkakasan yang dimiliki setiap pengeluar pedal gitar dalam katalognya sendiri.

1) Pilih trek yang ingin anda rakam urutan MIDI anda. Secara lalai trek "satu" dipilih, tetapi anda boleh mengubahnya dengan menekan salah satu butang trek (satu untuk setiap trek).

2) Semasa anda menekan suis / pedal kaki "REC" pada kali pertama, gelung tersebut dilekatkan. LED hijau menyala. Ia akan menunggu sehingga nota pertama anda diterima sebelum mula merakam urutan / riff sebenar.

3) Setelah anda menyelesaikan urutan anda, tekan suis "REC" / pedal kaki sekali lagi untuk menentukan panjang sebenar riff. Lampu LED hijau mati. Looper akan mula menghasilkan semula urutan MIDI anda dengan segera. Sekiranya anda mencapai masa maksimum, rakaman akan berhenti secara automatik dan urutan akan mula dihasilkan semula dalam satu gelung.

4) Sekarang, anda boleh memutuskan untuk mengungguli urutan anda di trek semasa atau memilih trek baru dan merekamnya, dengan menekan pedal suis / kaki "REC". Dalam kedua kes, LED kuning akan menyala, walaupun trek baru kosong, kerana trek "hamba" (disambungkan ke trek pertama yang dirakam). Tekan sekali lagi untuk menghentikan overdubbing (LED kuning padam).

Bagi anda yang berpasangan dengan stesen gelung audio, perkembangan MIDI ini disebut "REC / PLAY / OVERDUB" dan satu-satunya yang disokong.

Sekiranya pada bila-bila masa anda merasakan overdub terbaru anda tidak baik, anda boleh menghapusnya dengan menekan suis "undo" / pedal kaki. Anda boleh membersihkan keseluruhan trek semasa dengan menekan pedal "REC" selama lebih dari 3 saat; anda boleh menetapkan semula looper (reset perisian) dengan menekan tiga butang trek pertama pada masa yang sama atau dengan membersihkan semua trek yang digunakan.

Anda boleh membisukan / membisukan lagu dengan menekan butang trek trek semasa.

Anda boleh menghantar PANIK! mesej dengan menekan butang panik. Anda bahkan boleh menghantar PANIK! mesej dengan menekan butang dua trek pertama pada masa yang sama.

Looper mempunyai metronom sederhana: nota pada mesej MIDI untuk nota nombor "64" dihantar pada 100 BPM pada saluran 10 (saluran yang mungkin didengar oleh mesin dram anda). Anda boleh menaikkan atau menurunkan tempo dengan menggunakan pengekod optik; dengan menekan suis pengekod optik, anda boleh mengaktifkan / mematikan metronome. Perhatikan bahawa mesin dram anda harus diatur untuk memainkan suara (snare, bass atau apa sahaja suara yang anda suka) semasa menerima nota MIDI "64" atau metronome akan disenyapkan.

Versi barebone dari loopstation MIDI ini dapat dibuat dengan suis kaki tunggal untuk memulakan dan menghentikan rakaman. Memastikan suis ditekan selama lebih dari 3 saat akan memulakan semula stesen gelung.

Sekiranya anda ingin meluangkan masa tambahan untuk membangunkan perkakasan, penambahan suis dan butang akan menjadikan stesen gelung lebih fleksibel. Dalam gambar adalah bagaimana saya telah mengkonfigurasi empat trek saya (sehingga lima disokong) stesen gelung lengkap.

CATATAN PENTING: perkakasan dalam gambar saya adalah prototaip. Saya menggunakan soket jack lebih banyak daripada yang diperlukan tetapi hanya empat butang untuk trek. Ini kerana semasa saya memulakan projek, saya tidak begitu yakin dengan syarat akhir.

Butang dan suis kaki setara secara elektronik dan anda boleh menggunakan satu daripada yang lain; untuk keperluan saya, kerana selalu ada ruang lantai yang terlalu kecil (pedal kesan yang indah;), saya mengekang pedal kaki ke fungsi REC tunggal.

Langkah 3: Perkakasan

Perkakasan
Perkakasan
Perkakasan
Perkakasan
Perkakasan
Perkakasan
Perkakasan
Perkakasan

Bil bahan:

Stesen gelung MIDI 5 trek yang lengkap

1x Arduino SEPANJANG

Butang tekan 7x sesaat

Kotak plastik 1x (saya menggunakan sarung 150 x 110 x 70 mm)

Penyambung soket MIDI panel wanita 2x 5-pin DIN

Soket bicu panel 1x 6,3 mm

1x papan sisi 50x70 mm dua sisi

LED 5x3 mm (hijau)

LED 1x 3 mm (kuning)

Pengekod optik 1x

1x H11L1 optocoupler

1x 1N4148 diod

Perintang 3x 1000 ohm

Perintang 3x 220 ohm

Perintang 10x470 ohm

Beberapa wayar solder, beberapa kabel, stesen solder… dan masa lapang:)

Masa yang diperlukan untuk menyelesaikan projek: 6-9 jam

Mengapa tidak UNO?

Ujian pertama (dan kod kerja permulaan) ditulis di papan UNO arduino "biasa". Papan ini mempunyai had RAM yang memaksa saya mengurangkan polifoni menjadi "4", panjang maksimum hingga kurang dari 4 saat dan resolusi 40 ms pada maksimum. Ini tanpa pengendalian pelbagai saluran. Dengan membuang penjejakan halaju juga, saya dapat meningkatkan masa rakaman hingga 7 saat.

Dengan UNO, anda dapat merealisasikan stesen gelung MIDI yang "berfungsi" pada masa itu, tetapi sangat terhad.

Langkah 4: Perisian

Perisian sangat bergantung pada perpustakaan FortySevenEffects MIDI. Perpustakaan ini hebat dan menjadikan projek seperti ini dapat dilakukan walaupun untuk pengguna geoder bukan pengkod.

Arduino IDE dan komuniti adalah bahagian penting lain dari "kejayaan" ini.

Saya tidak akan menerangkan secara terperinci mengenai cara memuat naik lakaran ke arduino DUE anda. Sekiranya ini adalah pengalaman pertama anda dengan arduino IDE, sila baca ini terlebih dahulu.

Saya menulis dua versi kod yang berbeza, berdasarkan dua pendekatan yang sama sekali berbeza.

Prinsip kerja versi 1 adalah semasa rakaman atau overdubing cek dan penyimpanan Arduino DUE di dalamnya (tidak stabil) memori MIDI yang disokong (nota, nota, perubahan kawalan dan lengkungan nada); paksi masa dihitung dalam 20 ms langkah dan mesej yang diterima disimpan di slot tersebut dengan sewajarnya. Semasa bermain, mesej MIDI yang tersimpan dihantar kembali ke synth berkenaan dengan penghitungan masa.

Prinsip kerja versi 2, sebaliknya, adalah "sekadar" merakam peristiwa midi dan waktu di mana acara itu mesti dicetuskan. Versi 2 mempunyai had yang berbeza daripada versi 1 (disenaraikan pada langkah sebelumnya). cubalah kedua-duanya dan gunakan yang paling sesuai untuk anda.

Terdapat pengendalian Jam awal juga, tetapi ia memerlukan beberapa penyesuaian untuk berfungsi sebagaimana mestinya. Kod mengandaikan bahawa anda merakam gelung 4/4 - 4 bar (16 denyutan).

Anda boleh menyahaktifkan jam luaran dengan terus menekan butang "panik" semasa menghidupkan gelung.

Kod dimuat di SINI. Komen diletakkan di atasnya, sehingga anda dapat membengkokkan firmware tersebut sesuka hati;)

Langkah 5: Pendawaian

Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian
Pendawaian

Litar MIDI IN dan MIDI OUT dilaporkan dalam gambar yang dilampirkan. Perhatikan bahawa TX1 dan RX1 digunakan, bukan TX0 dan RX0.

Pin input Arduino DUE tidak dapat menangani 5V, tetapi 3.3V; inilah sebabnya mengapa optocoupler H11L1 digunakan dan bukannya 6N138 yang lebih biasa. Saya mempunyai bukti bahawa menggunakan 6N138 digabungkan dengan pembahagi voltan untuk mengurangkan voltan isyarat ke TX1, seperti dalam prototaip pertama saya, dapat berfungsi secara tidak menentu dalam beberapa persediaan.

LED disambungkan ke pin output Arduino DUE melalui 470 perintang Ohm. Anda boleh menggunakan perintang hingga 1K ohm untuk mengurangkan arus masuk ke LED dan mengurangkan kecerahannya.

Butang / suis / bicu disambungkan secara langsung ke pin input Arduino berkat resistor penarik input, yang diaktifkan dalam lakaran. Tidak memerlukan perintang luaran (turun naik).

Pengekod optik disambungkan ke GND dan + 5V. Ia menuju ke pin input Arduino yang melewati 2 480 ohm perintang, satu untuk setiap output data optik.

Arduino DUE digerakkan terus dari pin 5V dan ground melalui hub DC + 5V.

Semua kawasan diikat bersama.

Dilampirkan adalah meja dengan sambungan dari pin arduino ke periferal IN / OUT. Nombor pin Arduino mencerminkan nombor dalam perkakasan proptotaip saya dan kelihatan (kadangkala…) secara rawak. Anda boleh dengan mudah mengubah lokasi pin dalam lakaran sesuka hati;)

Langkah 6: Bagaimana jika Saya Mempunyai Lebih Dari Satu Sumber MIDI?

Bagaimana Sekiranya Saya Mempunyai Lebih Dari Satu Sumber MIDI?
Bagaimana Sekiranya Saya Mempunyai Lebih Dari Satu Sumber MIDI?

Setelah mencari penggabungan MIDI secara ringkas, saya dapati bahawa penyelesaian yang paling praktikal (dan murah) adalah penukar MIDI.

Pengalih MIDI adalah peranti pasif yang membolehkan sumber MIDI dan mematikan semua sumber lain. Semudah itu.

Jantung suis MIDI adalah multi posisi (lombong adalah 6 kedudukan), suis 2 tiang. Adalah sangat penting bahawa bilangan tiang adalah "2" kerana setiap soket MIDI mesti dipotong sepenuhnya jika tidak dipilih dan tidak berhubung dengan yang lain. Terlampir adalah gambar yang saya sedar untuk kegunaan saya sendiri.

Pada LINK INI skema.

Disyorkan: