Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Yaqinda men bu MIDI boshqaruvchisini Boss DD500 kechiktirish pedaliga o'rnatilgan iborali looperni ishlatish uchun yaratdim. Men butun gitara qurilmamni Behringer FCB MIDI platasi yordamida boshqaraman va bu menga effektlar tsiklidagi kechiktiruvchi pedaldagi yamoqlarni o'zgartirishga imkon beradi, shu bilan birga kuchaytirgich kanallarini almashtiradi.
DD500 juda oddiy ilmoq funktsiyasiga ega, lekin uning kamchiliklaridan biri shundaki, ilmoq faol bo'lsa, uni pedaldagi oyoq kalitlari boshqaradi. Bu shuni anglatadiki, siz faol bo'lganingizda pedaldagi yamoqlarni o'zgartira olmaysiz. MIDI -dan foydalanayotganimda, bu cheklov mavjud emas, chunki bu faqat jismoniy muammo. Bu mening asosiy MIDI kontrollerimga 5 ta tayanch tugmachasini ilmoq uchun zaxiralashni anglatardi, shuning uchun men ular uchun alohida boshqaruvchi qurishga qaror qildim.
Mening birinchi rejam, Hammondning kichik korpusini olib, 5 ta oyoqli kalitni qo'yib, o'zimga Arduino -ning asosiy kodlashni o'rgatish edi. Men ko'proq o'rganishni boshlaganimda va mening kodim ishlayotganda, u meni ko'proq narsalarni sinab ko'rishga undadi va keyin u asosan katta narsaga aylandi.
1 -qadam: tushunchalar
Dastlabki g'oyalardan biri, ketma -ket 5 LED tugmachalari bo'lishi kerak edi. Arduino bilan non taxtasida maket qilish juda oddiy edi. Yangi funktsiyalar va qo'shimcha qurilmalarning qo'shilishi jarayon bo'lib, men doimiy ravishda qog'oz sxemasini loyihalash va qayta loyihalash va non paneli loyihasini tuzish jarayoniga aylandim. Hatto juda ko'p rejalashtirish bilan ham, bu borada ko'p ishlar boshida biroz bajarilgan.
Yuqoridagi 2 ta rasmda men birinchi bo'lib qog'ozga chizilgan rasmni ko'rsatdim, u birinchi navbatda bu g'oyani ochib berdi, so'ngra jismoniy va PCB sxemalarini shakllantirgan yozuvlar yozildi.
2 -qadam: Breadboard protoyping
Butun loyiha non panelida qurilgan va uni doimiy ravishda uy -joy bilan ta'minlash bo'yicha ish boshlashdan oldin uning DD500 bilan to'liq ishlashini tekshirish uchun to'liq sinovdan o'tgan. Kodga ba'zi qo'shimcha funktsiyalar qo'shildi, bu esa nazoratchiga DD500 etishmayotgan qo'shimcha funktsiyalarni berdi. Bular kod bo'limida to'liqroq muhokama qilinadi.
Pedalda 5 ta tayanch tugmasi, 4 ta LED holati, 5 ta I2C LCD displeyi va Arduino Nano Every tomonidan boshqariladi. U 9V gitara pedalli PSU -dan alohida ajratish qutisi orqali quvvat oladi, bu quvvatni MIDI kabelida odatda MIDI ulagichida ishlatilmaydigan 2 ta pin yordamida uzatadi.
3 -qadam: ishlab chiqarish
Men loyihani joylashtirish uchun ko'plab mumkin bo'lgan holatlarni ko'rib chiqdim va hatto alyuminiydan o'z korpusimni burish haqida o'ylab ko'rdim. Oxir -oqibat, men tanlagan 5 ta 16X2 o'lchamli LCD displeyga ega bo'lgan Hammond korpusiga joylashdim.
Oyoq kalitlari bir lahzalik yumshoq sensorli kalitlar edi.
Bu bosqichda men old tomonni toza saqlash uchun maxsus ekranli panellar yasashga qaror qildim, chunki men Dremel yordamida ekran teshiklarini qo'lda kesib tashlagan bo'lardim va ehtimol, mukammal bo'lmagan joylar borligini bilardim. Men ularni lazerli kesish bilan shug'ullanadigan mahalliy dizaynerlik studiyasi oldim, avval karton andozalar bo'lib, ularning o'lchamlari to'g'ri ekanligiga ishonch hosil qildim, so'ngra oxirgi qism uchun 3 mm oq akril.
4-qadam: SAPRning maketi va tartibi
Men qog'oz chizmalarimdan Inkscape -dan foydalanib, barcha jismoniy komponentlarni joylashtirdim va o'lchamlari va pozitsiyalarini yakunladim. Men bu vaqtda ekranni o'rnatish usulini ham o'ylab topdim. Old tomondan ko'rinadigan murvat miqdorini minimallashtirish uchun men barcha ekranlarni orqa tomondan alyuminiy plitalarga o'rnatishga qaror qildim, shundan so'ng ularni har bir plastinkaga 4 ta bolt kerak bo'ladi. ekran panellarini ham joyida ushlab turardi.
5 -qadam: PCB dizayni
PCB yaratish uchun men EasyEDA deb nomlangan veb -saytdan foydalandim. U muharrir muhiti bilan jihozlangan, uning yordamida siz komponentlarning sxemasini chizishingiz, uni PCB sxemasiga aylantirishingiz va keyin uni to'g'ridan -to'g'ri JLCPCBga eksport qilishingiz mumkin. Men ilgari hech qachon bunday qilmaganman, lekin ular saytida muharrir qanday ishlashini tushuntirib beradigan ajoyib qo'llanma bor va men bir soat ichida taxtani ishlab chiqdim va buyurtma berdim.
Bortdagi ba'zi joylar tajribasizligi sababli yomon ishlab chiqilgan, masalan, ekran quvvatiga bitta 5Vli temir yo'lni ishlatish, masalan, har biriga alohida besleme berish. Yaxshiyamki, har qanday kuchlanish pasayishi ekranlar bilan bog'liq muammolarni keltirib chiqarishi uchun etarli emas edi.
Taxminan 2 hafta o'tgach, taxtalar keldi va minnatdorchilik bilan hech qanday muammosiz ishladilar.
6 -qadam: Ekranni o'rnatish
Dastlabki qismlar ekranga o'rnatilgan. Buning uchun men 3 mm alyuminiydan foydalanardim va to'xtash uchun teshiklar qildim. O'lchamlar hamma narsani stolga qo'yish orqali aniqlandi, chunki men oxirgi pedalni xohladim va ekran PCB -laridagi o'rnatish teshiklaridan o'lchashni xohladim. Men ular uchun masofani aniqlash uchun oyoq tutqichlarini ham joylashtirdim.
Hamma teshiklar burg'ilangandan so'ng, ekranlar o'rnatildi va chiziqning pastki chetiga o'lchagichni ushlab kvadratga tekshirildi. Hozirgacha hamma narsa navbatda turibdi.
7 -qadam: mahkamlash
Keyingisi ishni o'zgartirish edi. Oyoqlar va LEDlar juda oddiy, chunki ularning har biriga mos ravishda 12 mm va 5 mm teshik kerak edi.
Jismoniy ishning asosiy qismi ekranning teshiklarini kesib tashlashda edi. Men teshiklarni tozalash uchun bir nechta og'ir ishlaydigan disklar va turli fayllar bilan Dremel ishlatardim. Bu qism taxminan 2 soat davom etdi.
Men ishlatadigan korpus sanoat maqsadlari uchun mo'ljallangan bo'lib, bitta bo'lak metallni burish va burchaklarni payvandlash orqali qilingan. Bu shuni anglatadiki, past burchaklarni tekislash va chetidagi bo'shliqlarni to'ldirish uchun avtomobil korpusining plomba yordamida bu burchaklarni tozalash uchun biroz ish kerak bo'ladi.
Bu vaqtda ish to'liq tayyor edi va men qanday ko'rinishini ko'rish uchun hamma narsani masxara qildim.
8-qadam: Oh-oh
Va keyin men hamma narsani rejalashtirish va o'lchashga qaramay, men katta xato qilganimni angladim. Men taxta va korpus tartibini bir -biridan mustaqil ravishda ishlab chiqdim. Mening boshimda, taxta yuqori devorga qarama-qarshi o'tirar, orqasida qisqa stend bor edi. Ammo bunga hech qanday yo'l yo'q edi. Va uni yon tomonga qo'yishga joy yo'q edi. Katta nazorat, lekin minnatdorchilik bilan men buni tuzatishga muvaffaq bo'ldim, chunki korpusning orqa qopqog'idagi ekran o'rnatgichlari o'rtasida hali ham bo'sh joy bor edi. Yana bir nechta teshiklar ekranga o'rnatiladi va bir nechta to'xtash joylari ochiladi va biz o'z ishimizga qaytdik, qopqoqni yopish uchun etarli joy bor.
9 -qadam: bo'yoq
Hamma narsa yana demontaj qilindi va korpusga Metall Candy Red, so'ngra bir necha qatlamli lak bo'yalgan. Ish bir hafta davomida davolanishi uchun qoldirildi, garchi men hamma narsani qurayotganimda lak hali ham biroz yumshoq ekanligini aniqladim. Shu sababli bo'yoqning bir nechta kichik joylari shikastlangan. Keyingi loyihamdan qochmoqchi bo'lgan narsa.
Bu vaqt mobaynida men 3D -printerni sotib oldim va undan oyoq kiyimlarini yuvish uchun yuvish vositalarini yasashga qaror qildim, chunki men sotib olgan neylonlarning sarg'ish tuslari juda qo'rqinchli edi va o'lchamlari past edi.
10 -qadam: simlarni ulash
Jismoniy yig'ishning oxirgi qismi hamma narsani sim bilan bog'lash edi. Shunga qaramay, korpus dizayni/PCB dizayni bilan bog'liq muammolar yana paydo bo'ldi va PCB -dagi ba'zi sarlavha pozitsiyalari bir -birining ustidan ko'plab simlarni kesib o'tishni anglatar edi, bu esa men kutganimdan biroz chalkashroq edi.
Ekranlar uchun simlar 4 tadan iborat bo'lib, bitta bo'lakka o'ralgan va o'ralgan o'rash yordamida ishlatilgan.
11 -qadam: Arduino kodi
Arduino kodlashni mutlaqo yangi boshlovchi sifatida men ketayotganimda o'zimni o'rgatganman. Kod, ehtimol, "uzoq yo'l" ning dasturiy ekvivalenti, lekin men uning maqsadga muvofiq ishlaganidan mamnun bo'ldim.
DD500 datchigi 5 ta asosiy funktsiyaga ega:
- Looperni yoqish/o'chirish
- Yozib olish/Overdub/O'ynatish
- Yozib olingan tsiklni o'ynating
- Qayta tinglashni to'xtating
- Yozib olingan tsiklni tozalash
Ushbu funktsiyalarning har birida mos keladigan oyoq tugmasi va to'xtatish tugmachasidan tashqari, LED holati mavjud. LCD displeylar, shuningdek, pedalni yozish, haddan ziyod ko'paytirish yoki ijro etish rejimida ekanligini, shuningdek, o'sha paytda nima bo'layotganiga qarab, har bir tayanch qanday vazifani bajarishini ko'rsatish uchun tegishli ma'lumotlar bilan yangilanadi.
Men qo'shgan yana bir xususiyat - rekord/overdub funksiyasi necha marta faollashtirilganligini kuzatib borish edi. Bu kodda "bufer" ekranida ko'rsatiladigan tamsayı sonini ko'paytirish orqali kuzatiladi va qancha trek yozilganligi ko'rsatilgan. DD500 individual treklarni o'chira olmasa -da, men buni kodlash mashqlari sifatida qo'shib qo'ydimki, bu ishni bajarishim mumkinmi.
Instructables -ga fayllarni yuklashda muammo yuz berdi, shuning uchun kodning nusxasini Pastebin -ga qo'ydim:
Kodda 2 ta kutubxona ishlatilgan:
Suyuq kristal_I2C
FortySevenEffects MIDI kutubxonasi
12 -qadam: Xulosa
Men bu loyihani eng katta yutuqlaridan biri shundaki, iloji boricha oldindan rejalashtirish mumkin bo'lgan muammolarni oldini oladi. Mening tenglikni o'rnatish bilan bog'liq muammolar buning ahamiyatini ko'rsatadi. Yaxshi yozuvlarni saqlash ham men tavsiya qiladigan narsadir. Ularsiz men o'zimdan ko'ra ko'proq muammolarga duch kelgan bo'lardim. Men hozirda ikkinchi MIDI kontrollerimni qurmoqdaman va bu safar men o'z kodimni soddalashtirishga va o'z qurilmamni tenglikni qanday o'rnatish kerakligini loyihalashga harakat qildim.