Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Arpeggiator MIDI Arduino

Komponen dan persediaan

Arduino Nano R3
× 1
Potensiometer putar (generik)
× 7
Sakelar Tombol Tekan SparkFun 12mm
× 7
port MIDI
× 1
Resistor 221 ohm
× 4
LED (generik)
× 2

Tentang proyek ini

Pembaruan 11.03.2019

Hai, Saya membuat firmware baru untuk arpeggiator, kode sumbernya ditulis ulang sepenuhnya. Sekarang struktur modular memungkinkan Anda menjalankan arpeggio pada platform yang berbeda, tidak hanya Arduino. Juga fitur baru yang menarik sebagai sajak Euclidean ditambahkan. Saya akan kembali dengan deskripsi rinci nanti!

https://github.com/raszhivin/arpeggio2

Bagian perangkat keras tetap serupa, sumber baru kompatibel dengan sketsa fritzting dari bawah.

Pembaruan 25.06.2019

Perangkat keras baru dibuat oleh saya, periksa video baru:

Pendahuluan

Musik elektronik adalah hobi saya dan saya sangat senang bermain dengan Korg Volca Keys saya. Beberapa waktu lalu saya bertemu dengan aplikasi web yang disebut “Arpeggiator Progresi Chord”, dan saya terkesan dengan kekuatan dan kesederhanaan algoritme musik. Luangkan beberapa menit di aplikasi, dan Anda akan mengerti mengapa saya sangat terinspirasi oleh ide menghasilkan arpeggio di Korg saya. Video “Korg Volca Keys arp yang indah! (dan urutan 128 not)” menunjukkan not arpeggio yang dimasukkan secara manual, tetapi terlalu rumit dan tidak fleksibel untuk memasukkan semua not dengan tangan.

Karena saya seorang pengembang perangkat lunak, saya memutuskan untuk membuat perangkat berbasis Arduino, yang menghasilkan arpeggio dalam bentuk pesan MIDI dan mengirim pesan melalui port DIN (MIDI). Tentu saja arpeggiator dapat digunakan bersama dengan perangkat keras atau perangkat lunak lain, tetapi saya tidak memiliki yang lain satu.

Teori musik dasar

(Teks di bawah ini diambil dari reddit, banyak terima kasih kepada pengguna kmmeerts)

Jadi ada seluruh spektrum suara. Ternyata setiap suara itu memiliki frekuensi fundamental, seberapa cepat udara bergoyang. Frekuensi yang lebih rendah terdengar, baik, lebih rendah, dan frekuensi yang lebih tinggi kita lihat sebagai nada yang lebih tinggi. Dua instrumen berbeda yang dimainkan pada saat yang sama mungkin terdengar sangat berbeda, tetapi mereka akan tetap tampak bagi kita sebagai nada yang sama. Perbedaan ini disebut timbre, dan itulah cara Anda membedakan antara seruling dan cello yang memainkan nada yang sama. Hal ini memungkinkan instrumen yang sangat berbeda untuk dimainkan bersama secara harmonis.

Pada tingkat tertinggi, spektrum ini dibagi menjadi oktaf. Satu oktaf adalah interval antara nada dan nada lainnya dengan frekuensi dua kali lipat. Ini adalah subdivisi paling dasar dalam musik. Catatan yang berbeda dalam jumlah oktaf (yaitu di mana frekuensi terkait satu sama lain dengan kekuatan dua) mendapatkan nama yang sama:piano dan biola mungkin keduanya memainkan C, tetapi satu jauh lebih rendah dari yang lain. Mengapa kita melakukan ini? Yah karena mereka terdengar harmonis bersama, bahkan orang yang paling tuli nada pun bisa mendengarnya.

Oktaf itu sendiri dibagi menjadi 12 nada, yang kami beri nama:

[A, A#, B, C, C#, D, D#, E, F, F#, G, G#]

Ini adalah nada paling dasar dalam musik barat, dan sesuai dengan tuts putih dan hitam pada piano. Anda dapat melihat bahwa setelah setiap 12 tombol, polanya berulang. Mengapa 12? Ini rumit dan memiliki sejarah panjang, tetapi intinya adalah kedengarannya yang terbaik. Interval yang paling menyenangkan diwakili dengan baik oleh sistem 12 kunci, dengan cara yang tidak akan dilakukan dengan lebih banyak atau lebih sedikit kunci (walaupun orang mencoba).

Dari 12 nada ini terbentuk tangga nada. Tangga nada adalah kumpulan nada yang, yah..., terdengar bagus bersama-sama. Arpeggiator saya hanya memiliki tangga nada heptatonic diatonic, yang disebut mode. Heptatonic berarti setiap tangga nada memiliki 7 nada, dan hampir semua musik barat dibangun di atasnya. Diatonic berhubungan dengan urutan interval antar nada. Misalnya tangga nada C mayor hanyalah nada-nada tanpa tanda-tanda tajam dimulai dari C:[ C D E F G A B ]. Setiap skala dimulai dari nada dasar. Ada juga tangga nada mayor yang berakar pada D:[ D E F# G A B C# ]. Tangga nada ditentukan oleh pola nada mana yang harus dilewati. Tangga nada mayor adalah [ W W H W W W H ], di mana W berarti "ambil catatan dan lewati satu" dan H berarti "ambil catatan". Mode lainnya memiliki pola lain untuk mencatat dan melewatkan.

Untuk masing-masing dari tujuh nada itu ada sekumpulan akord. Akord yang digunakan di sini sederhana:mulai dari satu nada, ambil tiga nada, setiap kali lewati satu nada dalam tangga nada yang kita gunakan. Jadi dalam tangga nada C mayor sederhana (CDEFGAB), akord V (V =lima, jadi pada nada kelima) akan menjadi G (lewati A) B (berputar, lewati C) D, jadi GBD. Pola ini dapat diulang, naik satu oktaf (6 nada:GBDGBD). Sebuah arpeggio (bahasa Italia untuk 'patah') hanya memainkan nada-nada itu satu per satu, bukan semuanya bersama-sama.

Apa yang mendefinisikan sebuah lagu sebagian besar adalah progresi akord. Komposer memilih mode, memilih nada dasar, lalu memilih 8 (atau lebih atau kurang) akord dari kunci yang ditentukan oleh nada dasar itu. Tentu saja ada beberapa aturan tentang akord yang harus dipilih, tetapi ini tetap merupakan seni. Dalam lagu yang sebenarnya, pada akord ini sisanya dibangun, tentu saja ada segala macam penyimpangan dari struktur ini, segala macam ornamen, tetapi seringkali Anda masih dapat mengenali akord dalam urutan itu.

Skema

Skema arpeggiator saya cukup sederhana, terdiri dari 7 potensiometer, 7 tombol, port MIDI, 2 LED dan 4 resistor. Ini dapat dengan mudah dirakit di papan tempat memotong roti seperti yang ditunjukkan di bawah ini, tetapi jika Anda seorang pemula di dunia arduino akan jauh lebih baik jika Anda memulai dengan tutorial berikut terlebih dahulu:

https://www.arduino.cc/en/main/howto

https://www.arduino.cc/en/Tutorial/Blink

https://www.arduino.cc/en/Tutorial/InputPullupSerial

https://www.arduino.cc/en/tutorial/potentiometer

https://www.arduino.cc/en/Tutorial/Midi

Kontrol

Potensiometer:

  • Oktaf nada tonik (0..7)
  • Oktaf akor (0..7)
  • Penundaan antar not dalam progresi (detak per menit)
  • Tonik / nada akar (C...B)
  • Langkah Arpeggio (1...5)
  • Mode musik (Ionia, dorian...)
  • Gaya Arpeggio (Naik, turun, naik+turun, acak)

Tombol:dengan menekan tombol, progresi akor yang sesuai dimainkan.

Demonstrasi

Di video pertama saya menjelaskan fungsionalitas perangkat dan kontrolnya:

Video kedua menunjukkan selai kecil dengan arpeggiator:

Sinkronisasi

Anda dapat menyinkronkan tempo arpeggio dengan Korg Volca:sambungkan jack audio arpeggiator ke "SYNC OUT" synthesizer. Pastikan untuk mengonfigurasi kode sumber dengan cara yang benar di arpeggiator.ino :

// Sinkronisasi:pilih salah satu dari dua opsi yang memungkinkan:

#define EXT_SYNC

//#define INT_SYNC

Batalkan komentar EXT_SYNC untuk sinkronisasi melalui SYNC IN, atau INT_SYNC untuk kontrol tempo melalui poti.

Saya akan senang untuk setiap umpan balik dan komentar, jika Anda memiliki ide bagaimana meningkatkan perangkat - silakan tinggalkan komentar.

Selamat bersenang-senang dan semoga berhasil!

Kode

Kode sumber
https://github.com/raszhivin/arpeggiator

Skema

untuk Fritzing arpeggiator_LICtzK2a2Q.fzz

Proses manufaktur

  1. Arduino Digital Dice
  2. Unopad - Pengontrol MIDI Arduino dengan Ableton
  3. Iron Man
  4. Temukan Saya
  5. Adaptor MIDI Nirkabel USB-BLE
  6. Arduino 3D-Printed Robotic Arm
  7. Kontrol Humidifier Arduino
  8. Gerbang Pemantauan Suhu Tanpa Kontak
  9. NeoMatrix Arduino Pong
  10. Arduino Joystick