Агуулгын хүснэгт:

Arduino Uno Midi Fighter: 5 алхам
Arduino Uno Midi Fighter: 5 алхам

Видео: Arduino Uno Midi Fighter: 5 алхам

Видео: Arduino Uno Midi Fighter: 5 алхам
Видео: Мини-реле для создания умного дома на Arduino. Железки Амперки 2024, Долдугаар сарын
Anonim
Arduino Uno Midi Fighter
Arduino Uno Midi Fighter

Энэхүү зааварчилгааг Өмнөд Флоридагийн их сургуулийн Макекурсын төслийн шаардлагыг биелүүлэх зорилгоор бүтээсэн болно (www.makecourse.com)

DJ Techtools -ийн алдартай MidiFighter дээр үндэслэн гар хийцийн Arduino хөдөлгүүртэй Musical Instrument Digital Interface (MIDI) хянагчийг ямар ч дижитал аудио ажлын станц (DAW) програм хангамжийн MIDI төхөөрөмж болгон ашиглаж болно. MIDI хянагч нь компьютерээс MIDI мессеж илгээх, хүлээн авах боломжтой бөгөөд аль програм хангамжийг ашиглаж байгааг шууд удирдах боломжтой. Нэмж дурдахад MIDI хянагчийн хяналтыг бүрэн тохируулах боломжтой бөгөөд ингэснээр товчлуур, гулсагч, товчлуур бүрийг DAW -ийн аль ч функц дээр буулгаж болно гэсэн үг юм. Жишээлбэл, товчлуур дарахад тодорхой тэмдэглэл тоглох эсвэл аудио төслийнхөө хурдыг өөрчлөх програмчлагдах боломжтой.

github.com/jdtar/Arduino-Midi-Controller

Алхам 1: Материал

Энэхүү төсөлд ашигласан материал, багаж хэрэгслийн жагсаалтыг доор харуулав.

Ардуино Уно

Талхны самбар

4051/4067 Multiplexer

Холбогч утас

Нэмэлт утас

2х 10к ом шугаман слайд потенциометр

16х Sanwa 24мм товчлуур

Дулаан багасгах

Гагнуурын төмөр

Сахлын хутга

4.7 кОм эсэргүүцэл

Нийлэг хуудас (тагны хувьд)

Товчнууд болон Arduino -д зориулсан орон сууц

3 хэмжээст хэвлэгч

Лазер таслагч

Алхам 2: Дизайн

Дизайн
Дизайн
Дизайн
Дизайн

Төслийг эхлүүлэхээс өмнө MIDI хянагчийнхаа орон сууцыг надад өгсөн байсан тул бүх зүйлийг хаана байрлуулахыг төсөөлөхийн тулд тагныхаа ноорогыг доог тохуу хийсэн. Би дор хаяж 16 товчлуур, хос потенциометрийг ашиглахыг хүсч байгаагаа мэдэж байсан тул бүрэлдэхүүн хэсгүүдийг аль болох жигд байрлуулахыг хичээсэн.

Тагны схемийг зурсны дараа би файлыг 1: 1 форматтай PDF форматаар гаргаж, нийлэг хуудас хайчлахаар лазер зүсэгч рүү илгээв. Шураг нүхний хувьд би нүхийг тэмдэглэгээтэй байлгахыг хүссэн газраа тэмдэглээд акрилийг халуун судалтай хайлуулав.

1: 1 форматтай PDF файлыг 1: 1 болгон хэвлэж, лазер таслагч байхгүй тохиолдолд цахилгаан хэрэгслээр хайчилж болно.

Алхам 3: Барилга ба утас

Барилга ба утас
Барилга ба утас
Барилга ба утас
Барилга ба утас
Барилга ба утас
Барилга ба утас

Акрилийг хайчилж авсны дараа нийлэг нь маш нимгэн бөгөөд бүх бүрэлдэхүүн хэсгүүдийг хангалттай дэмжиж чаддаггүй болохыг олж мэдэв. Дараа нь би өөр нэг хуудас хайчилж аваад хооронд нь наасан бөгөөд энэ нь төгс тохирсон байв.

Бүрэлдэхүүн хэсгүүдийг холбоход бага зэрэг туршилт, алдаа гарсан боловч Fritzing -ийн ноорогыг хавсаргасан болно. Би эхлээд газардуулгын утас, 4.7 кОм эсэргүүцэл, гагнуур, дулааныг товчлуур дээр холбосон. Хоёр слайд потенциометрийг суурилуулахад нийлэг доторх эрэгний хайлах цооног шаардлагатай байв. Хоёр потенциометрийг шургуулсны дараа тэдгээрийг A0 ба A1 аналог тээглүүрт холбосон. Цахилгааны утас дууссаны дараа би faders-ийн бариулын таг байдаггүйг санаж, худалдаж авахаасаа өмнө 3-D принтер ашиглан зарим товчлуурыг Autodesk Fusion 360 дээр зурж STL файл руу экспортлоод хэвлэв. Де

Arduino Uno нь зөвхөн 12 дижитал оролтын зүүтэй боловч 16 товчлуурыг холбох ёстой байв. Үүнийг нөхөхийн тулд би 74HC4051 мультиплексорыг 4 дижитал оролтын зүү ашигладаг бөгөөд хуваалцсан шугамыг ашиглах олон дохиог ашиглан 8 дижитал оролттой нийт 16 дижитал тээглүүр ашиглах боломжтой болсон.

Товчлууруудыг зөв зүүгээр холбох нь ердөө 4x4 хэмжээтэй матриц үүсгэж, үүнийг кодонд ашиглах явдал байв. Хамгийн хэцүү зүйл бол худалдаж авсан тодорхой мультиплексор нь өгөгдлийн хүснэгтэд тусалж буй тодорхой зүү байрлалтай байсан бөгөөд товчлууруудыг холбохдоо би тодорхой тэмдэглэлийн зохион байгуулалтыг санаж байсан бөгөөд энэ нь иймэрхүү харагдаж байв.

Тэмдэглэл MATRIX

[C2] [C#2] [D2] [D#2]

[G#2] [A1] [A#2] [B1]

[E1] [F1] [F#1] [G1]

[C2] [C#2] [D2] [D#2]

ПИН МАТРИКС (M = MUX INPUT)

[6] [7] [8] [9]

[10] [11] [12] [13]

[M0] [M1] [M2] [M3]

[M4] [M5] [M6] [M7]

Алхам 4: Програмчлал

Програмчлал
Програмчлал

Угсралт дууссаны дараа Arduino програмчлах нь үлдсэн юм. Хавсаргасан скриптийг хялбархан өөрчлөх боломжтой байдлаар бичсэн болно.

Скриптийн эхэнд MIDI.h номын сан, кодын зип файлд багтсан Notes and Volts блогоос зээлсэн хянагчийн номын сан орно. Хянагчийн номын санг ашиглан тэмдэглэлийн дугаар, хяналтын утга, тэмдэглэлийн хурд, MIDI сувгийн дугаар гэх мэт өгөгдлийн утгыг агуулсан товчлуур, потенциометр ба мултиплекс товчлуурын объект үүсгэж болно. MIDI.h номын сан нь MIDI I/O холболтыг идэвхжүүлдэг. Arduino цуваа портууд нь хянагчийн объектуудаас өгөгдлийг авч, MIDI мессеж болгон хөрвүүлж, midi интерфэйсийг холбосон аль ч хэсэгт мессеж илгээдэг.

Скриптийн хоосон тохиргооны хэсэг нь бүх сувгийг унтраасан байдлаар эхлүүлж, MIDI дохиог солилцохоос илүү хурдтай 115200 baud дээр цуваа холболтыг эхлүүлдэг.

Үндсэн давталт нь товчлуурууд болон олон талт товчлууруудын массивыг авч, for давталтыг ажиллуулдаг бөгөөд товчлуур дарагдсан эсвэл суллагдсан эсэхийг шалгаж, холбогдох өгөгдлийн байтыг midi интерфэйс рүү илгээдэг. Потенциометрийн давталт нь потенциометрийн байрлалыг шалгаж, харгалзах хүчдэлийн өөрчлөлтийг midi интерфэйс рүү буцааж илгээдэг.

Алхам 5: Тохируулах

Image
Image
Тохируулах
Тохируулах
Тохируулах
Тохируулах
Тохируулах
Тохируулах

Скриптийг Arduino дээр ачаалж дууссаны дараа дараагийн алхам бол залгаж тоглуулах явдал юм. Үүнийг ашиглахаас өмнө хэд хэдэн алхам байдаг.

OSX дээр Apple нь macs дээрх Audio Midi Setup програмаар дамжуулан нэвтрэх боломжтой виртуал midi төхөөрөмжүүдийг бий болгох функцтэй болсон. Шинэ төхөөрөмжийг үүсгэсний дараа Hairless MIDI -ийг ашиглан Arduino болон шинэ виртуал midi төхөөрөмж хооронд цуваа холболт үүсгэж болно. Ардуиногоос Үсгүй MIDI -ээр дамжих цуваа холболт нь скриптийн хоосон тохиргооны хэсэгт тодорхойлогдсон дамжуулалтын хурдаар ажилладаг бөгөөд Үсгүй MIDI тохиргооны тохиргоонд ижил төстэй байх ёстой.

Туршилтын зорилгоор би Midi Monitor-ийг ашиглан сериал-MIDI холболтоор зөв өгөгдөл илгээгдсэн эсэхийг шалгаж үзсэн. Бүх товчлуур бүр зөв өгөгдлийг зөв сувгаар дамжуулдаг болохыг тогтоосны дараа би MIDI дохиог Аблетон Live 9 рүү MIDI оролт болгон чиглүүлэхээр тохируулсан. Аблетон дээр би товчлуур бүрт хэрчсэн аудионы дээжийг гаргаж, дээж бүрийг тоглуулах боломжтой болсон.

Зөвлөмж болгож буй: