Talaan ng mga Nilalaman:

Lune - MIDI Controller With Arduino (para sa DJ o Musikero): 5 Hakbang (na may Mga Larawan)
Lune - MIDI Controller With Arduino (para sa DJ o Musikero): 5 Hakbang (na may Mga Larawan)

Video: Lune - MIDI Controller With Arduino (para sa DJ o Musikero): 5 Hakbang (na may Mga Larawan)

Video: Lune - MIDI Controller With Arduino (para sa DJ o Musikero): 5 Hakbang (na may Mga Larawan)
Video: #1 How to Build a MIDI controller with an Arduino: The DIY MIDI Controller Workshop 2.0 2024, Hulyo
Anonim
Image
Image
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)
Lune - MIDI Controller Sa Arduino (para sa DJ o Musikero)

Ito ang aking unang arduino (microcontroller) pangalan ng proyekto na Lune. Nais kong matutunan ang arduino sa isang kapaki-pakinabang at malaking proyekto kaya't napagpasyahan kong gumawa ng isang Midi DJ Controller na mayroong lahat ng mga pagpapaandar na kinakailangan upang mapag-isa upang makihalo.

Ang bawat uri ng sensor (potensyomiter, pindutan ng push, …) ay maaaring matuto nang nakapag-iisa at sa palagay ko ang pinakamahusay na paraan ay upang malaman ang "paano ito gumagana" at "kung paano ito konektado" para sa bawat hakbang na sensor.

Ang lahat ay gumagana tulad nito:

  1. Ang sensor na konektado sa arduino ay nakakita ng pagbabago
  2. Ipinadala ng arduino ang pagbabagong ito sa computer
  3. Ang isang software sa computer ay nagko-convert ng serial (arduino) na impormasyon sa MIDI na maaari mong gamitin sa ableton halimbawa

Ang aking controller ay mayroon

  • 6 potientometer axial para sa EQ
  • 3 potientometer axial para sa mga epekto
  • 6 potientometer linear para sa Dami
  • 2 pindutan ng push para sa Play
  • 2 Ultrasonic sensor (SR04) para sa mga epekto sa distansya ng aking mga kamay
  • 2 push botton para sa Cue
  • 2 x 4 na mga pindutan na humantong RGB pad
  • 1 encoder para sa Scratch

Hakbang 1: Mag-iisa o Software

Una sa lahat sinaliksik ko ang iba't ibang mga tutorial ng MIDI controller na may arduino.

Maaari mong gawin ang isang MIDI controller na may isang software na isinalin kung ano ang iyong ginagawa sa MIDI (kung ano ang nagawa ko)

Kakailanganin mong:

  1. Software para sa pagpapadala / pagtanggap ng midi data https://projectgus.github.io/hairless-midiserial/ Huwag kalimutang itakda ang rate ng baud sa "mga kagustuhan" alinsunod sa isa sa iyong arduino code (para sa akin 9600 dahil "Serial.begin (9600); ")
  2. Isang virtual na midi aparato

Isa pang halimbawa:

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

_

Maaari mong gawin ang isang "totoong" MIDI controller kung saan nang walang isang software na tumatakbo sa iyong computer upang isalin kung ano ang ginagawa mo sa controller sa MIDI ay nagpapadala ng MIDI sa computer

Para sa sandali sa isang arduino Uno o Mega kailangan mong i-flash ang arduino room o isang bagay na tulad nito upang direktang ipadala ang midi. Mula sa naintindihan ko kung ginawa mo ito kailangan mong siguraduhin ang code na ipinapadala mo sa arduino dahil kapag ang arduino ay flash hindi ka na maaaring magpadala ng code (kailangan mo ng muling pag-reflash). Nagawa ko ang maraming mga test code kaya't pinili ko ang pangalawang pagpipilian ngunit mas mahusay na magkaroon ng isang plug at i-play ang MIDI aparato para sigurado.

Halimbawa upang pumunta sa karagdagang:

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

MAJ 2018-02-28: https://www.arduino.cc/en/Referensi/MIDIUSB Ang pinakasimpleng paraan kung mayroon kang "microcontroller na may katutubong mga kakayahan ng USB (atmega32u4 based boards o ARM boards)" (Hindi OK para sa arduino UNO)

Hakbang 2: Kahoy at Kaso

Kahoy at Kaso
Kahoy at Kaso
Kahoy at Kaso
Kahoy at Kaso
Kahoy at Kaso
Kahoy at Kaso

Disenyo ng kaso ng kahoy: Gumamit ako ng isang case generator https://www.makercase.com/, tinanggal ang tuktok at ang puwang para sa itaas. Upang matukoy ang taas tumingin ako para sa taas ng aking pinakamataas na pindutan at magdagdag ng 2cm.

Para sa tuktok ginamit ko ang isang MDF board at isang Plywood Poplar 3mm na kung saan ay ang isang nakaukit.

Pinutol ng laser ang mga board ng kahoy na may mga plano.

Gupitin / drill isang butas para sa USB cable.

Sumali ako sa aking mga plano ngunit sa hakbang na ito ay mas nakakainteres na gawin ang iyong personal na controller.

Pagtitipon:

Para sa mga gilid ay nakadikit ako at binuo ang magkakaibang mga board ng panig.

Para sa tuktok nag-drill ako ng 4 na butas sa 2 nangungunang MDF. (diameter ng aking tornilyo + 1mm)

I-tornilyo ko ang isang bolt at idikit ang kulay ng nuwes sa anggulo ng apat na beses, upang i-tornilyo ang 2 tuktok na mga board ng kahoy sa tuktok pagkatapos.

Sa ganitong paraan mayroon akong 4 na mga anggulo na may isang nakadikit na kulay ng nuwes, ang mga butas na may nut ay ang mga butas para sa mga tornilyo upang ayusin ang mga nangungunang board. Sa katunayan hindi ako nakakakuha ng kulay ng nuwes sa ibaba kapag binulilyaso ko ang mga nangungunang board ng kahoy.

Nag-drill ako ng mga butas sa mga gilid na board (ang kahon), naayos (tornilyo at pagkatapos ng pandikit lahat) ang mga anggulo sa mga gilid.

Ilagay ang dalawang tuktok na board at i-tornilyo ang mga ito.

Sa pamamagitan ng ganitong paraan walang nakikitang nut at sa tuktok na board ay hindi kailangan ng kahoy na kalapating mababa ang lipad, nakakagulat na solid ngunit marahil ay may isang mas mahusay na paraan.

Polish:

Ginamit ko ang "Vernis bois makikinang na 125 ML Avel Louis XIII" (french polish) na gumagana nang napakahusay.

Medyo mahaba ito dahil inilatag ko ang maraming mga layer at naghihintay ng 24 oras sa pagitan ng bawat isa.

Ang tuktok ay mukhang mahusay at ang kahoy ay protektado. Ito ang aking unang pagkakataon kaya't hindi ako naghintay ng higit sa kinakailangan o naglagay ako ng sobrang vernish sa ilang mga bahagi dahil ang polish ay kung minsan ay hindi solid kahit na pagkatapos ng pagpapatayo, ngayon (2 buwan pagkatapos) ok na.

Grapiko: montage ng Fornaseti artworks at personal na pagguhit.

p.s: mga payo upang idisenyo ang midi controller, sa aking plano ang dalawang RGB 4 na mga pindutan na pad ay masyadong malapit sa bawat isa

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

Hakbang 3: Elektronik

Elektronik
Elektronik
Elektronik
Elektronik
Elektronik
Elektronik

Inilagay ko ang lahat (para sa aking proyekto) sa isang Fritzing file.

Para sa bawat uri ng sensor kailangan mong malaman kung paano ito gumagana o kung ano ang inilalagay niya sa arduino.

Upang magawa ito, panoorin ang mga tutorial sa hindi mabubuo halimbawa ("potentiometer arduino",…).

Ginamit ko:

  • Potensyomiter
  • RGB pad (Sparkfun
  • Ultrasound HC-SR04 (distansya ng detektor)
  • Encoder
  • Push button (arcade button)

Inirerekumenda ko kung kailan mo nais gawin ang iyong pangwakas na monteids upang gawin ito sa fritzing sa parehong oras dahil mahirap makita kapag may toneladang mga kable.

Order:

Matapos malaman ang lahat kung ano ang gusto ko o hindi bababa sa mas malaking bahagi ay nag-order ako ng aking mga sangkap. Sa ganitong paraan mayroon kang mas kaunting mga gastos sa pagpapadala.

Para sa aking bahagi, pinaka-order ako sa Conrad o RS (nasa France ako) at higit pang mga specifical na piraso tulad ng RGB pad sa robotshop.

Isang halimbawa ng aking utos na Conrad sa mga imahe

Hakbang 4: Arduino Code

Code ng Arduino
Code ng Arduino

Mayroong aking code para sa arduino. Kailangan mong ipadala ito, pagkatapos ng iyong mga pagbabago kung gumawa ka ng ibang controller, gamit ang Arduino IDE sa iyong microcontroller sa pamamagitan ng USB (ang mga tutorial sa youtube). Sa mga kalakip:

  • Ang panghuli
  • Isa lamang upang mapagana ang 2 RGB Pads na may 6 na kulay posible (RGB + cyan + rosas + dilaw).
  • Ang mga lumang bahagi ng code ay isinulat ko upang malaman ang pagkakaiba-iba ng sensor

Ang ilang mga bahagi ay kinuha ilang isinulat ko.

Kailangan mong mag-install ng mga arduino na aklatan (tingnan ang error at ang "isama") tulad ng Keypad.h para sa pad.

Ang mga magkakaibang klase ay nasa dulo ng mga file.

Maaari mong tandaan na ang isang uri ay narito upang ipadala ang serial information.

void MIDImessage (byte command, byte data1, byte data2) // --------- NECESSARY, ipasa ang mga halaga sa pamamagitan ng karaniwang Midi Command

{Serial.write (utos); Serial.write (data1); Serial.write (data2); }"

Hakbang 5: Mga Pagpapabuti

Gumagana ang lahat ngunit ito ay isang prototype. Mayroong ilang mga katanungan o punto ng pagpapabuti.

Enerhiya:

- Nang ginamit ko ang RGB pad sa bawat sensor ang RGB leds ay kumikinang nang kaunti. Ang 5v arduino ay masyadong kaunti sila para sa aking proyekto? Kapag ginamit ko lang sila, walang problema.

Code:

- Mayroon akong serial mula sa encoder ngunit hindi ko alam kung paano ito gumagana sa MIDI. Ibig kong sabihin kung ano ang nais nila sa output ng MIDI. Kung alam mo kung paano itakda ang encoder upang makalmot sa traktor makipag-ugnay sa akin.

- Ang ilan sa aking mga code para sa mga pindutan ay hindi mabuti para sa isang application ng musika. Kailangan namin ang pinakamabilis na kakayahang tumugon at nakita ko na ang ilan sa aking mga code ng pindutan ay hindi nakasulat sa pinakamahusay na paraan upang magawa iyon (Play button kung natatandaan kong mabuti).

Inirerekumendang: