Mündəricat:
- Addım 1: anlayışlar
- Addım 2: Breadboard Protoyping
- Addım 3: İstehsal
- Addım 4: CAD Mock-up və Layout
- Addım 5: PCB Dizaynı
- Addım 6: Ekran montajları
- Addım 7: Qapaq
- Addım 8: Uh-oh
- Addım 9: Boyayın
- Addım 10: Kabel çəkmə
- Addım 11: Arduino Kodu
- Addım 12: Nəticə
Video: Arduino MIDI Ayaq Nəzarətçisi: 12 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
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
İ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
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
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
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 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ı
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
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
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
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ə
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
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ə
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ə:
Arduino MIDI Nəzarətçisi qurmaq: 9 addım (şəkillərlə birlikdə)
Arduino MIDI Controller qurmaq: Bu təlimat ilk dəfə 28 İyun 2020 -ci ildə blogumda yayımlandı. Elektronikadan ibarət əşyalar tikməkdən zövq alıram və həmişə Arduino -dan istifadə edərək bir şeylər qurmaq istəyirdim. MIDI nəzarətçi
Arduino əsaslı DIY Oyun Nəzarətçisi - Arduino PS2 Oyun Nəzarətçisi - DIY Arduino Gamepad ilə Tekken oynamaq: 7 addım
Arduino əsaslı DIY Oyun Nəzarətçisi | Arduino PS2 Oyun Nəzarətçisi | DIY Arduino Gamepad ilə Tekken Oynamaq: Salam uşaqlar, oyun oynamaq həmişə əyləncəlidir, ancaq öz DIY xüsusi oyun nəzarətçinizlə oynamaq daha əyləncəlidir, buna görə də bu təlimatlarda arduino pro micro istifadə edərək bir oyun nəzarətçisi edəcəyik
AVR mikro nəzarətçisi. Pulse Genişliyi Modulyasiyası. DC Motor və LED İşıq Gücünün Nəzarətçisi .: 6 Addım
AVR mikro nəzarətçisi. Pulse Genişliyi Modulyasiyası. DC Motor və LED İşıq Gücünün Nəzarətçisi .: Hamıya salam! Pulse Width Modulation (PWM) telekommunikasiya və güc nəzarətində çox yayılmış bir texnikadır. bir mühərrik, bir LED, dinamiklər və s., bir elektrik cihazına verilən enerjini idarə etmək üçün ümumiyyətlə istifadə olunur. Əsasən bir modudur
YABC - Başqa bir Blynk Nəzarətçisi - IoT Bulud İstilik və Rütubət Nəzarətçisi, ESP8266: 4 Addım
YABC - Başqa bir Blynk Nəzarətçisi - IoT Bulud Temperaturu və Rütubət Nəzarətçisi, ESP8266: Salam Yaradıcılar, bu yaxınlarda evdə göbələk, İstiridye göbələyi yetişdirməyə başladım, ancaq ev dəmləməyim, arvadım üçün Fermentator Temperaturuna nəzarət etmək üçün evdə bu nəzarətçilərin üçdə birini var. indi də bu Kombucha işini edir və İstilik üçün Termostat olaraq
Spielatron və ya digər MIDI Synth üçün MIDI 5V LED Şerit İşıq Nəzarətçisi: 7 Addım (Şəkillərlə)
MIDI 5V Spielatron və ya digər MIDI Synth üçün LED Şerit İşıq Nəzarətçisi: Bu nəzarətçi, not başına 50mS üçün üç rəngli LED şerit işıqlarını yandırır. G5-D#6 üçün mavi, E6-B6 üçün qırmızı, C7-G7 üçün yaşıl. Nəzarətçi bir ALSA MIDI cihazıdır, buna görə MIDI proqramı bir MIDI synth cihazı ilə eyni vaxtda LED -lərə çıxara bilər