İçindekiler:

Lune - Arduino'lu MIDI Kontrolör (DJ veya Müzisyen için): 5 Adım (Resimlerle)
Lune - Arduino'lu MIDI Kontrolör (DJ veya Müzisyen için): 5 Adım (Resimlerle)

Video: Lune - Arduino'lu MIDI Kontrolör (DJ veya Müzisyen için): 5 Adım (Resimlerle)

Video: Lune - Arduino'lu MIDI Kontrolör (DJ veya Müzisyen için): 5 Adım (Resimlerle)
Video: Melodica cool trick 2024, Temmuz
Anonim
Image
Image
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)
Lune - Arduino'lu MIDI Kontrol Cihazı (DJ veya Müzisyen için)

Bu benim ilk arduino (mikrodenetleyici) projem Lune. Kullanışlı ve büyük bir proje ile arduino öğrenmek istedim, bu yüzden miksaj için bağımsız olması gereken tüm fonksiyonlara sahip bir midi DJ kontrol cihazı yapmaya karar verdim.

Her tür sensör (potansiyometre, basma düğmesi,…) bağımsız olarak öğrenilebilir ve bence en iyi yol, her sensör için "nasıl çalıştığını" ve "nasıl bağlandığını" adım adım öğrenmektir.

Her şey şu şekilde çalışır:

  1. Arduino'ya bağlı sensör bir değişiklik algıladı
  2. Arduino bu değişikliği bilgisayara gönderir
  3. Bilgisayardaki bir yazılım, örneğin yetenekte kullanabileceğiniz seri (arduino) bilgilerini MIDI'ye dönüştürür.

benim kontrol cihazım var

  • EQ için eksenel 6 potansiyometre
  • Efektler için 3 eksenli potansiyometre
  • Hacim için 6 lineer potansiyometre
  • Oynat için 2 basma düğmesi
  • 2 Ultrasonik sensör (SR04) ellerimin mesafesindeki efektler için
  • Cue için 2 basma düğmesi
  • 2 x 4 düğme RGB led ped
  • Scratch için 1 kodlayıcı

1. Adım: Bağımsız veya Yazılım

Öncelikle arduino ile MIDI denetleyicisinin farklı öğreticilerini araştırdım.

MIDI'de yaptığınızı (benim yaptığımı) çeviren bir yazılımla bir MIDI denetleyicisi yapabilirsiniz

İhtiyacın olacak:

  1. Midi verilerini göndermek/almak için yazılım https://projectgus.github.io/hairless-midiserial/ "tercihler" bölümünde baud hızını arduino kodunuzdakine göre ayarlamayı unutmayın (benim için 9600 çünkü "Serial.begin" (9600);")
  2. Sanal bir midi cihazı

Başka bir örnek:

www.instructables.com/id/Easy-3-Pot-Potantiometer-Arduino-Uno-Effects-Midi-/

_

MIDI'deki denetleyicide yaptığınızı çevirmek için bilgisayarınızda çalışan bir yazılım olmadan bilgisayara MIDI gönderen "gerçek" bir MIDI denetleyicisi yapabilirsiniz

Şu an için bir arduino Uno veya Mega ile doğrudan midi göndermek için arduino odasını veya bunun gibi bir şeyi flaş etmeniz gerekiyor. Anladığım kadarıyla, bunu yaptıysanız, arduino'ya gönderdiğiniz koddan emin olmanız gerekir, çünkü arduino flaş olduğunda artık kod gönderemezsiniz (tekrar reflash gerekir). Birçok test kodu yaptım, bu yüzden ikinci seçeneği seçtim ama kesinlikle tak ve çalıştır MIDI cihazının olması daha iyi.

Daha ileri gitmek için örnek:

create.arduino.cc/projecthub/etiennedesportes/ableton-live-midi-controller-9182b3

MAJ 2018-02-28: https://www.arduino.cc/en/Reference/MIDIUSB "Yerel USB özelliklerine sahip mikrodenetleyiciniz (atmega32u4 tabanlı kartlar veya ARM kartları)" varsa en basit yol (Arduino UNO için TAMAM değil)

Adım 2: Ahşap ve Kasa

Ahşap ve Kasa
Ahşap ve Kasa
Ahşap ve Kasa
Ahşap ve Kasa
Ahşap ve Kasa
Ahşap ve Kasa

Ahşap kasa tasarımı: Bir kasa oluşturucu https://www.makercase.com/ kullandım, üst kısmı ve üst kısımdaki yuvayı sildim. Yüksekliği belirlemek için en yüksek düğmemin yüksekliğini arıyorum ve 2cm ekliyorum.

En üstte bir adet MDF levha ve bir adet de oyulmuş olan Plywood Poplar 3mm kullandım.

Ahşap levhaları lazerle planlarla kesin.

USB kablosu için bir delik açın/delin.

Planlarıma katıldım ama bu adımda kişisel kontrolörünüzü yapmak çok daha ilginç.

Birleştirme:

Kenarlar için farklı yan levhaları yapıştırdım ve birleştirdim.

Üst kısım için 2 üst MDF'ye 4 delik açtım. (vidamın çapı + 1mm)

Bir cıvatayı vidaladım ve 2 üst ahşap levhayı üstten vidalamak için somunu dört kez açıya yapıştırdım.

Bu şekilde bir somun yapıştırılmış 4 açım var, somunlu delikler vidaların üst panoları sabitlemek için delikleridir. Aslında üstteki tahtaları vidaladığımda alttaki somuna ulaşamıyorum.

Yan levhalarda (kutuda) delikler açtım, kenarlara açıları sabitledim (vidala ve her şeyi yapıştırdıktan sonra).

İki üst tahtayı koyun ve vidalayın.

Bu sayede görünür bir somun yoktur ve üst panonun sabitlenmesi için tahta sürtüğün yapılmasına gerek yoktur, şaşırtıcı derecede sağlamdır ama belki daha iyi bir yolu vardır.

Lehçe:

Çok iyi çalışan "Vernis bois brillant 125 ml Avel Louis XIII" (fransız cilası) kullandım.

Biraz uzun oldu çünkü birkaç kat koydum ve her biri arasında 24 saat bekledim.

Üst harika görünüyor ve ahşap korunuyor. İlk seferimdi, bu yüzden gereği kadar beklemedim ya da cila bazen kuruduktan sonra bile katı olmadığı için bazı yerlere çok fazla vernik sürdüm, şimdi (2 ay sonra) sorun yok.

Grafik: Fornaseti sanat eserlerinin montajı ve kişisel çizim.

p.s: midi denetleyiciyi tasarlama önerileri, planımda iki RGB 4 düğme pedi birbirine çok yakın

www.instructables.com/id/A-Framework-For-Making-Affordable-Stylish-Modula/

3. Adım: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Her şeyi (projem için) bir Fritzing dosyasına koydum.

Her sensör tipi için nasıl çalıştığını veya arduinoya ne verdiğini öğrenmeniz gerekir.

Bunu yapmak için, örneğin ("potansiyometre arduino", …) incructable ile ilgili öğreticileri izleyin.

Kullandım:

  • Potansiyometre
  • RGB pedi (Sparkfun
  • Ultrason HC-SR04 (mesafe dedektörü)
  • kodlayıcı
  • Basma düğmesi (arcade düğmesi)

Son montajını yapmak istediğinde aynı anda fritzing yapmanı tavsiye ederim çünkü tonlarca kablo varken görmek zor.

Emir:

Ne istediğimi veya en azından büyük kısmını öğrendikten sonra bileşenlerimi sipariş ettim. Bu sayede daha az nakliye maliyetiniz olur.

Benim açımdan, en çok Conrad veya RS'den (Fransa'dayım) ve robot mağazasında RGB ped gibi daha özel parçalar sipariş ediyorum.

Görüntülerdeki Conrad komutumun bir örneği

Adım 4: Arduino Kodu

Arduino Kodu
Arduino Kodu

Arduino için kodum var. Değişikliklerinizden sonra Arduino IDE ile farklı bir controller yapıyorsanız USB ile mikrodenetleyicinize göndermeniz gerekiyor (youtube'da öğreticiler var). Eklerde:

  • sonuncusu
  • Biri sadece 2 RGB Pad'i 6 renkle çalıştırmak için (RGB + camgöbeği + gül + sarı).
  • Farklı sensörleri öğrenmek için yazdığım kodun eski kısımları

Bazı kısımlar tarafımdan alınmıştır.

Pad için Keypad.h gibi arduino kitaplıkları kurmanız (hataya bakın ve "dahil edin") gerekir.

Farklı sınıflar dosyaların sonundadır.

Seri bilgileri göndermek için bir sınıfın burada olduğunu not edebilirsiniz.

void MIDImessage(bayt komutu, bayt veri1, bayt veri2) // --------- GEREKLİ, değerleri standart Midi Komutu aracılığıyla iletin

{ Serial.write(komut); Serial.write(veri1); Serial.write(veri2); }"

Adım 5: İyileştirmeler

Her şey çalışıyor ama bu bir prototip. Bazı sorular veya iyileştirme noktası var.

Enerji:

- RGB pedini her sensörle kullandığımda RGB ledleri çok az parlıyor. 5v arduino projem için çok mu az? Sadece onları kullandığımda sorun yok.

Kod:

- Kodlayıcıdan seri var ama MIDI'de nasıl çalıştığını bilmiyorum. MIDI çıktısında istediklerini kastediyorum. Enkoderi traktörde nasıl çizileceğini biliyorsanız benimle iletişime geçin.

- Bazı düğme kodlarım bir müzik uygulaması için iyi değil. En hızlı sorumluluğa ihtiyacımız var ve bazı buton kodlarımın bunun için en iyi şekilde yazılmadığını gördüm (iyi hatırlıyorsam oynat butonu).

Önerilen: