Mündəricat:

Arduino MIDI Ayaq Nəzarətçisi: 12 addım
Arduino MIDI Ayaq Nəzarətçisi: 12 addım

Video: Arduino MIDI Ayaq Nəzarətçisi: 12 addım

Video: Arduino MIDI Ayaq Nəzarətçisi: 12 addım
Video: Playtron USB MIDI nəzarətçisi sınanır 2024, Noyabr
Anonim
Arduino MIDI Ayaq Nəzarətçisi
Arduino MIDI Ayaq Nəzarətçisi

Bu yaxınlarda bu MIDI idarəedicisini Boss DD500 gecikmə pedalına quraşdırılmış söz döngəsini idarə etmək üçün hazırladım. Bir Behringer FCB MIDI lövhəsi ilə bütün gitara qurğumu idarə edirəm və bu, eyni zamanda amp kanallarını dəyişdirərkən, effekt döngəsindəki gecikmə pedalındakı yamaqları dəyişdirməyə imkan verir.

DD500 -də çox sadə bir döngə funksiyası quraşdırılmışdır, lakin çatışmazlıqlarından biri də döngə aktiv olduqda pedaldakı ayaq açarları tərəfindən idarə edilməsidir. Bu o deməkdir ki, döngə aktiv olarkən pedaldakı yamaqları dəyişdirə bilməzsiniz, çünki bu, ayaq açarlarının funksiyalarını ələ keçirir. MIDI istifadə etdiyim üçün bu məhdudiyyət mövcud deyil, çünki bu sadəcə fiziki bir problemdir. Bu, əsas MIDI nəzarətçimdə döngə üçün 5 ayaq açarı ayırmaq demək idi və buna görə də onlar üçün ayrı bir nəzarətçi qurmağa qərar verdim.

Bunun üçün ilk planım, kiçik bir Hammond korpusu götürüb 5 ayaq açarı qoyub özümə bir neçə əsas Arduino kodlaşdırma öyrətmək idi. Daha çox öyrənməyə başlayanda və kodum işləyərkən, məni daha çox şey sınamağa həvəsləndirdi və sonra daha böyük bir şeyə çevrildi.

Addım 1: anlayışlar

Konsepsiyalar
Konsepsiyalar
Konsepsiyalar
Konsepsiyalar

İlk fikirlərdən biri, status LEDləri ilə ardıcıl olaraq 5 düymənin olması idi. Arduino ilə bir çörək taxtasında maket çəkmək olduqca sadə idi. Yeni xüsusiyyətlərin və avadanlıqların əlavə edilməsi, kağız üzərində fiziki düzeni daim dizayn etdiyim və yenidən qurduğum və çörək taxtası layihəsi üzərində qurduğum bir proses oldu. Çox planlaşdırma olsa belə, bu işin bir çoxu bir anda başlanğıcda edildi.

Yuxarıdakı 2 şəkil, ilk növbədə fikri işə salan kağız üzərində etdiyim ilk rəsm əsərini, sonra fiziki və PCB planlarını formalaşdıran bir aylıq qeydləri göstərir.

Addım 2: Breadboard Protoyping

Çörək Paneli Protoyping
Çörək Paneli Protoyping
Çörək Paneli Protoyping
Çörək Paneli Protoyping

Bütün layihə bir çörək taxtası üzərində quruldu və daimi olaraq mənzil üzərində hər hansı bir işə başlamazdan əvvəl DD500 ilə tam işlədiyini yoxlamaq üçün tam sınaqdan keçirildi. Koda bəzi əlavə xüsusiyyətlər əlavə edildi ki, bu da nəzarətçiyə DD500 -ün çatışmayan bəzi əlavə funksiyalarını verdi. Bunlar kod bölməsində daha ətraflı müzakirə olunacaq.

Pedal 5 ayaq açarı, 4 status LED, 5 I2C LCD ekrana malikdir və Arduino Nano Every tərəfindən idarə olunur. Adətən bir MIDI bağlayıcısında istifadə edilməyən 2 sancaqdan istifadə edərək MIDI kabeli üzərində bu gücü daşıyan ayrı bir kəsmə qutusu vasitəsi ilə 9V gitara pedalı PSU -dan güc alır.

Addım 3: İstehsal

İstehsal
İstehsal
İstehsal
İstehsal
İstehsal
İstehsal

Layihəni yerləşdirmək üçün bir çox mümkün vəziyyətə baxdım və hətta alüminium təbəqələrdən öz çantamı əymək fikrini düşündüm. Nəhayət, seçdiyim 5 16X2 LCD ekranı yerləşdirmək üçün kifayət qədər geniş olan Hammond korpusuna yerləşdim.

Ayaq açarları ümumi ani yumşaq toxunma açarları idi.

Bu mərhələdə önün təmiz görünməsini təmin etmək üçün xüsusi montaj ekran çərçivələri düzəltmək qərarına gəldim, çünki ekran deliklərini Dremel ilə əllə kəsəcəyəm və ehtimal ki, mükəmməldən az olan bir neçə sahənin olacağını bilirdim. Bunları əvvəlcə ölçülərimin düzgün olduğundan əmin olmaq üçün karton şablonlar kimi lazer kəsmə edən yerli bir dizayn studiyası tərəfindən kəsdim, sonra son parça üçün 3 mm ağ akril.

Addım 4: CAD Mock-up və Layout

CAD Mock-up və Layout
CAD Mock-up və Layout
CAD Mock-up və Layout
CAD Mock-up və Layout

Kağız eskizlərimdən bütün fiziki komponentləri düzmək və ölçüləri və mövqeləri tamamlamaq üçün Inkscape -dən istifadə etdim. Eləcə də bu nöqtədə ekrana montaj üsulu ilə gəldim. Ön tərəfdəki görünən boltların miqdarını minimuma endirmək üçün bütün ekranları dayaqlardan istifadə edərək arxadan bəzi alüminium lövhələrə bağlamağa qərar verdim və sonra onları lövhəyə bərkitmək üçün lövhədə yalnız 4 bolt lazımdır. ekran çərçivələrini də yerində saxlayardı.

Addım 5: PCB Dizaynı

PCB Dizaynı
PCB Dizaynı
PCB Dizaynı
PCB Dizaynı
PCB Dizaynı
PCB Dizaynı
PCB Dizaynı
PCB Dizaynı

PCB yaratmaq üçün EasyEDA adlı bir veb saytından istifadə etdim. Komponentlərinizin bir sxemini çəkə biləcəyiniz, bir PCB planına çevirə biləcəyiniz və sonra lövhələr halına gətirmək üçün birbaşa JLCPCB -ə ixrac edə biləcəyiniz bir redaktor mühitinə malikdir. Daha əvvəl belə bir şey etməmişdim, amma saytın redaktorunun necə işlədiyini izah edən əla bir bələdçisi var və bir saat ərzində lövhəni hazırlayıb sifariş verdim.

Göyərtədəki bəzi sahələr, məsələn, hər birinə ayrı bir yem vermək əvəzinə, ekran gücü üçün tək 5V ray istifadə etmək kimi təcrübəsizlik üzündən zəif dizayn edilmişdir. Şükürlər olsun ki, baş verən hər hansı bir gərginlik düşməsi ekranlarda problem yaratmağa kifayət etmədi.

Lövhələr təxminən 2 həftə sonra gəldi və şükürlər olsun ki, heç bir problem olmadan çalışdı.

Addım 6: Ekran montajları

Ekran montajları
Ekran montajları
Ekran montajları
Ekran montajları
Ekran montajları
Ekran montajları

Hazırlanan ilk hissələr ekran montajları idi. Bunun üçün 3 mm alüminiumdan istifadə etdim və dayaqlar üçün deliklər qazdım. Ölçülər, son pedalın olmasını istədiyim kimi hər şeyi masanın üstünə qoyaraq və PCB -lərin montaj deliklərindən ölçməklə təyin olundu. Məsafələri öyrənmək üçün ayaqları da onlara yerləşdirdim.

Bütün deliklər qazıldıqdan sonra, ekranlar monte edildi və düz alt kənarlarına bir hökmdar tutaraq kvadratın olub -olmadığını yoxladı. İndiyə qədər hər şey düzülmüşdü.

Addım 7: Qapaq

Mühafizə
Mühafizə
Mühafizə
Mühafizə
Mühafizə
Mühafizə

Sonrakı işin dəyişdirilməsi idi. Ayaq açarları və LED -lər sadə idi, çünki hər biri sırasıyla 12 mm və 5 mm çuxur tələb edirdi.

Fiziki işin əsas hissəsi ekran deliklərinin kəsilməsi zamanı gəldi. Sonradan deşikləri təmizləmək üçün bəzi ağır iş diskləri və müxtəlif sənədləri olan bir Dremel istifadə etdim. Bu hissə təxminən 2 saat çəkdi.

İstifadə etdiyim korpus sənaye məqsədləri üçün hazırlanmışdır və tək bir metal parçasını əyməklə və küncləri qaynaq etməklə hazırlanmışdır. Bu, aşağı nöqtələri düzəltmək və kənarındakı boşluqları doldurmaq üçün avtomobil gövdəsi doldurucusundan istifadə edərək bu küncləri təmizləmək üçün bir az iş görülməli olduğu anlamına gəlirdi.

Bu nöqtədə dava tamamilə hazırlandı və necə görünəcəyini görmək üçün hər şeyi lağa qoydum.

Addım 8: Uh-oh

Uh-oh
Uh-oh
Uh-oh
Uh-oh
Uh-oh
Uh-oh

Və sonra başa düşdüm ki, bütün planlaşdırma və ölçmələrimə baxmayaraq, böyük bir səhv etdim. Lövhə və kassa planını bir -birindən asılı olmayaraq hazırladım. Kafamda, lövhə demək olar ki, üst divara söykənəcək və arxasında qısa bir dayaq olardı. Ancaq bunun uyğun gələ biləcəyi heç bir yol yox idi. Və onu da kənara qoymağa yer yox idi. Nəhəng bir nəzarət, amma şükürlər olsun ki, korpusun arxa qapağındakı ekran montajları arasında hələ də kifayət qədər boşluq olduğu üçün düzəldə bildim. Ekran montajlarında bir neçə deşik açıldı və bir neçə dayanma oldu və qapağı örtmək üçün kifayət qədər yerimiz olan işimizə qayıtdıq.

Addım 9: Boyayın

Çəkmək
Çəkmək
Çəkmək
Çəkmək
Çəkmək
Çəkmək

Hər şey yenidən söküldü və qutu Metallic Candy Red, sonra bir neçə qat lak ilə boyandı. Dava bir həftə müalicə olunmaq üçün qaldı, baxmayaraq ki, hər şeyi qurarkən lakın hələ də bir qədər yumşaq olduğunu kəşf etdim. Bu səbəbdən boyanın kiçik hissələri zədələndi. Növbəti layihəmdə qarşısını almaq istədiyim bir şey.

Bu müddət ərzində bir 3D printer aldım və ayaq keçidləri üçün bəzi yuyucular etmək üçün istifadə etmək qərarına gəldim, çünki aldığım neylonların dəhşətli bir sarımtıl rəngli rəngləri vardı və ölçüləri zəif idi.

Addım 10: Kabel çəkmə

Kablolama
Kablolama
Kablolama
Kablolama
Kablolama
Kablolama
Kablolama
Kablolama

Fiziki montajın son hissəsi hər şeyi tellə bağlamaq idi. Yenə də korpus dizaynı/PCB dizaynı ilə bağlı problemlər yenidən gündəmə gəldi və PCB -dəki bəzi başlıq mövqeləri, bir çox telin bir -birinin üstündən keçməsi və işləri gözlədiyimdən bir az daha qarışıq etmək demək idi.

Ekranlar üçün tellər 4 dəstə yığılmış və bir parça halına gətirilmiş istilik daralma və örgülü sarğı istifadə edilmişdir.

Addım 11: Arduino Kodu

Image
Image

Arduino kodlaşdırma işinə yeni başlayanlar kimi, gedərkən özümü öyrədirdim. Kod, ehtimal ki, 'uzun bir yolun' proqramlaşdırma ekvivalentidir, amma təyin olunduğu kimi işlədiyindən məmnun oldum.

DD500 -dəki looper 5 əsas funksiyaya malikdir:

  • Döngə açma/söndürmə
  • Qeyd/Overdub/Play
  • Qeydə alınmış döngəni oxudun
  • Çalmağı dayandırın
  • Qeydə alınmış döngəni silin

Bu funksiyaların hər birinin uyğun bir ayaq açarı və dayanma düyməsi istisna olmaqla, vəziyyət LED -i var. LCD ekranlar, pedalın qeyd etmə, çox səsləndirmə və ya oynatma rejimində olub olmadığını və o anda baş verənlərə bağlı olaraq hər bir ayaq açarının hansı funksiyanı yerinə yetirəcəyini göstərmək üçün müvafiq məlumatlar ilə də yenilənir.

Əlavə etdiyim digər bir xüsusiyyət, qeyd/overdub xüsusiyyətinin neçə dəfə aktivləşdirildiyini izləmək idi. Bu, 'tampon' ekranında görünən və neçə parçanın yazıldığını göstərən bir tam ədəd artırmaqla kodda izlənilir. DD500 fərdi parçaları silə bilməsə də, bunu işlədə biləcəyimi görmək üçün bunu kodlaşdırma məşqi olaraq əlavə etdim.

Faylları Instructables -a yükləməkdə bir problem var və buna görə kodun bir nüsxəsini Pastebin -ə yerləşdirdim:

Kodda 2 kitabxana istifadə edildi:

LiquidCrystal_I2C

FortySevenEffects MIDI kitabxanası

Addım 12: Nəticə

Nəticə
Nəticə

Bu layihədən aldığım ən böyük şeylərdən biri, vaxtından əvvəl bacardığınız qədər planlaşdırmağın potensial problemlərdən qaçınmasıdır. PCB montajımdakı problemlər bunun əhəmiyyətini göstərir. Yaxşı qeydlər aparmaq da çox tövsiyə etdiyim bir şeydir. Bunlar olmasaydı, ola biləcəyimdən daha çox problemlə qarşılaşardım. Hal -hazırda ikinci MIDI nəzarətçimi qururam və bu dəfə kodumu düzəltmək üçün daha çox səy göstərmişəm və cihazımı PCB -nin necə quraşdırılacağı ətrafında dizayn etmişəm.

Tövsiyə: