Мазмұны:

Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін): 5 қадам (суреттермен)
Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін): 5 қадам (суреттермен)

Бейне: Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін): 5 қадам (суреттермен)

Бейне: Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін): 5 қадам (суреттермен)
Бейне: Тестирование оптопар 4n25 во входных MIDI-цепях 2024, Шілде
Anonim
Image
Image
Lune - Arduino көмегімен MIDI контроллері (диджей немесе музыкант үшін)
Lune - Arduino көмегімен MIDI контроллері (диджей немесе музыкант үшін)
Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін)
Lune - MIDI контроллері Arduino көмегімен (диджей немесе музыкант үшін)
Lune - Arduino көмегімен MIDI контроллері (диджей немесе музыкант үшін)
Lune - Arduino көмегімен MIDI контроллері (диджей немесе музыкант үшін)

Бұл менің бірінші arduino (микроконтроллер) жобасының атауы Lune. Мен arduino -ны пайдалы және үлкен жобамен үйренгім келді, сондықтан мен араласуға дербес болу үшін барлық функциялары бар midi DJ контроллерін жасауды шештім.

Сенсордың кез келген түрін (потенциометр, түймешік,…) өз бетінше үйренуге болады, және менің ойымша, ең жақсы әдіс - әр сенсор үшін «қалай жұмыс істейтінін» және «қалай қосылғанын» біртіндеп үйрену.

Барлығы келесідей жұмыс істейді:

  1. Ардуиноға қосылған сенсор өзгерісті анықтайды
  2. Arduino бұл өзгерісті компьютерге жібереді
  3. Компьютердегі бағдарламалық қамтамасыз ету MIDI -дегі сериялық (arduino) ақпаратты түрлендіреді, оны сіз аблетонда қолдануға болады.

Менің контроллерімде бар

  • EQ үшін осьтік 6 потенометр
  • 3 потенциалометр осьтік
  • Көлемі бойынша 6 сызықтық потенциал
  • Ойнату үшін 2 түйме
  • Қолдарымның арақашықтығына әсер ететін ультрадыбыстық сенсор (SR04)
  • Cue үшін 2 түймені басыңыз
  • 2 x 4 түйме RGB жарықдиодты тақтасы
  • Scratch үшін 1 кодер

1 -қадам: Автономды немесе бағдарламалық қамтамасыз ету

Ең алдымен мен MIDI контроллерінің әр түрлі оқулықтарын arduino көмегімен зерттедім.

Сіз MIDI контроллерін MIDI -де (мен жасаған нәрсені) аударатын бағдарламалық жасақтамамен жасай аласыз

Саған қажет болады:

  1. Midi деректерін жіберуге/алуға арналған бағдарламалық жасақтама https://projectgus.github.io/hairless-midiserial/ «преференцияларға» беру жылдамдығын arduino кодыңызға сәйкес орнатуды ұмытпаңыз (мен үшін 9600, себебі «Serial.begin» (9600); «)
  2. Виртуалды midi құрылғысы

Тағы бір мысал:

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

_

Сіз MIDI -дегі контроллерде жасағанды аудару үшін компьютерде жұмыс жасайтын бағдарламалық жасақтамасыз MIDI -ді компьютерге жіберетін «нақты» MIDI контроллерін жасай аласыз

Қазіргі уақытта Arduino Uno немесе Mega көмегімен midi жіберу үшін сізге arduino бөлмесін немесе сол сияқты нәрсені жыпылықтау қажет. Менің түсінуімше, егер сіз мұны істеген болсаңыз, сіз arduino жіберетін кодқа сенімді болуыңыз керек, себебі arduino жыпылықтаған кезде сіз енді код жібере алмайсыз (сізге қайта жаңарту қажет). Мен көптеген сынақ кодтарын жасадым, сондықтан мен екінші нұсқаны таңдадым, бірақ MIDI құрылғысын қосқан дұрыс.

Әрі қарай жүруге мысал:

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

MAJ 2018-02-28: https://www.arduino.cc/kz/Reference/MIDIUSB Егер сізде «жергілікті USB мүмкіндіктері бар микроконтроллер (atmega32u4 негізіндегі тақталар немесе ARM тақталары)» болса, ең қарапайым әдіс (arduino UNO үшін OK жоқ)

2 -қадам: Ағаш пен корпус

Ағаш пен корпус
Ағаш пен корпус
Ағаш пен корпус
Ағаш пен корпус
Ағаш пен корпус
Ағаш пен корпус

Ағаш корпустың дизайны: Мен https://www.makercase.com/ корпус генераторын қолдандым, үстіңгі жағын және үстіңгі жағындағы ұяшықты жойдым. Биіктігін анықтау үшін мен ең биік батырманың биіктігін іздеп, 2 см қосамын.

Үстіңгі жағында мен бір МДФ тақтасын және бір мм фанера тығын қолдандым, ол ойылған.

Жоспар бойынша ағаш тақталарды лазер кеседі.

USB кабелі үшін тесікті кесіңіз/бұрғылаңыз.

Мен өз жоспарларыма қосылдым, бірақ бұл қадамда сіздің жеке контроллеріңізді жасау әлдеқайда қызықты.

Жинау:

Бүйірлері үшін мен әр түрлі тақталарды желімдеп, жинадым.

Үстіңгі жағы үшін мен 2 жоғарғы МДФ -да 4 тесік бұрғыладым. (менің бұранда диаметрі + 1мм)

Мен болтты бұрап, гайканы төрт рет бұрышқа жабыстырамын, содан кейін 2 үстіңгі ағаш тақтаны жоғарыдан бұрап алу керек.

Осылайша менде бір гайка желімделген 4 бұрыш бар, гайкамен тесіктер - бұл жоғарғы тақталарды бекіту үшін бұрандалардың тесіктері. Мен ағаш тақтайшаларды бұрап жатқанда, төмендегі жаңғаққа кіре алмаймын.

Мен бүйірлік тақталарда (қорапта) тесіктер бұрғыладым, бекітілген (бәрін бұрап бекітіңіз).

Жоғарғы екі тақтаны салыңыз және оларды бұраңыз.

Осылайша, көрінетін жаңғақ жоқ және үстіңгі тақтаны ағаштан бекіту қажет емес, бұл таңқаларлықтай берік, бірақ жақсы әдіс бар шығар.

Поляк:

Мен өте жақсы жұмыс істейтін «Vernis bois brillant 125 мл Avel Louis XIII» (француз поляк) қолдандым.

Бұл біраз уақыт болды, себебі мен бірнеше қабатты салып, әрқайсысының арасында 24 сағат күтемін.

Үстіңгі жағы керемет көрінеді және ағаш қорғалған. Мен бірінші рет болдым, сондықтан қажет болғанша күтпедім немесе кейбір жерлеріне лак жағып жібердім, себебі лак кейде кептірілгеннен кейін де қатты болмайды, қазір (2 айдан кейін) бәрі жақсы.

Графика: Fornaseti өнер туындыларының монтажы және жеке сурет.

p.s: midi контроллерді жобалау бойынша кеңестер, менің жоспарымда RGB 4 түймелерінің екі тақтасы бір -біріне тым жақын

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

3 -қадам: электронды

Электронды
Электронды
Электронды
Электронды
Электронды
Электронды

Мен бәрін (менің жобам үшін) Fritzing файлына қойдым.

Сенсордың әр түрі үшін сіз оның қалай жұмыс істейтінін немесе arduino -ға не бергенін білуіңіз керек.

Мұны істеу үшін, мысалы, оқшауланбаған нұсқауларды қараңыз («arduino потенциометрі», …).

Мен қолдандым:

  • Потенциометр
  • RGB тақтасы (Sparkfun
  • Ультрадыбыстық HC-SR04 (қашықтық детекторы)
  • Кодтаушы
  • Басу түймесі (аркадалық түйме)

Мен сіз соңғы монтажды жасағыңыз келсе, оны бір уақытта фритингте жасауға кеңес беремін, себебі көптеген кабельдер болған кезде көру қиын.

Тапсырыс:

Мен не қалайтынымды немесе кем дегенде үлкен бөлігін білгеннен кейін мен компоненттерге тапсырыс бердім. Осылайша сіз жеткізу шығындарын азайтасыз.

Мен өз тарапымнан Conrad немесе RS (мен Франциядамын) мен робот дүкеніндегі RGB pad сияқты ерекше бөлшектерге тапсырыс беремін.

Суреттердегі менің Конрад командасының бір мысалы

4 -қадам: Arduino коды

Arduino коды
Arduino коды

Менің arduino коды бар. Егер сіз басқа контроллерді жасасаңыз, оны өзгертулерден кейін Arduino IDE көмегімен микроконтроллерге USB арқылы жіберуіңіз керек (youtube -те оқулықтар бар). Қосымшаларда:

  • Соңғысы
  • Біреу - бұл 6 түсті (RGB+көгілдір+раушан+сары) 2 RGB жастықшасымен жұмыс істеу.
  • Мен сенсорды үйрену үшін кодтың ескі бөліктерін жаздым

Кейбір бөліктерді мен жаздым.

Тақталар үшін Keypad.h сияқты arduino кітапханаларын (қатені және «қосу» қараңыз) орнату керек.

Әр түрлі сыныптар файлдардың соңында орналасқан.

Бұл жерде сериялық ақпаратты жіберу үшін бір кластер бар екенін байқауға болады.

«void MIDImessage (байт пәрмені, байт деректері1, байт деректері2) // --------- ҚАЖЕТ, стандартты Midi пәрмені арқылы мәндерді жіберу

{Serial.write (команда); Serial.write (data1); Serial.write (data2); } «

5 -қадам: жақсартулар

Барлығы жұмыс істейді, бірақ бұл прототип. Кейбір сұрақтар немесе жақсарту нүктесі бар.

Энергия:

- Мен әр сенсормен RGB тақтасын қолданған кезде, RGB шамдары өте аз жарқырайды. 5v arduino менің жобам үшін тым аз ба? Мен оларды қолданған кезде ғана проблема болмайды.

Код:

- Менде кодерден алынған сериал бар, бірақ мен оның MIDI -де қалай жұмыс істейтінін білмеймін. Мен MIDI шығысында олар қалайтын нәрсені айтамын. Егер сіз кодтаушыны тракторға қалай сызатуға болатынын білсеңіз, маған хабарласыңыз.

- Менің батырмаларға арналған кейбір кодтарым музыкалық қосымшаға жарамайды. Бізге тез жауап беру керек, мен түйменің кейбір кодтары осылай жазылмағанын көрдім (егер есімде жақсы болса, ойнату түймесі).

Ұсынылған: