Mundarija:
- 1 -qadam: Sensorlar
- 2-qadam: tortish moslamasi
- 3 -qadam: Arduino kodi
- 4 -qadam: Arduino Raspberry Serial aloqasi
- 5 -qadam: PureData tuzatmasi qabul qilindi
- 6 -qadam: PureData -ni ishlab chiqish
Video: Musiqiy raqamli interfeys: 6 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:28
Hammaga xush kelibsiz, Men sizga o'z musiqiy raqamli interfeysimni ko'rsatmoqchiman. Men buni texnik ovoz darajasida o'qiganman, bu mening ilmiy ishlarim. Boshlash uchun, men mendan qanday qilib DAW holda, qayta ishlangan materiallar va mustaqil ijro etish bilan musiqa yozishim mumkinligini so'radim.
Bu yo'riqnomada men sizga ketma -ket aloqadan Arduino -dan Raspberry pi -ga sensorlar (analog va raqamli) ma'lumotlarini yuborish/qabul qilish uchun dasturiy ta'minotni tozalovchi ma'lumotlarga yo'naltirishni o'rgataman.
Quyidagi materiallar talab qilinadi:
x1 Raspberry PI3
x1 PI3 himoyasi
x1 Micro SD (32G)
x1 Arduino UNO
x1 sensori IQ Sharp GP2Y0E02B
x1 Breadbord
x1 plastinka sinov o'lchagichi (0,2)
x28 qarshilik 10MΩ
x2 qarshilik 1,8 kΩ
x1 qarshilik 10 kΩ
x20 Terminal qulflari Erkak/Ayol
x1 Lehim tashuvchisi
x1 kalay lasan (1 metr)
x1 Lehimlash temir
x25 moslashuvchan tasmalar erkak/erkak
1 -qadam: Sensorlar
Men "Guitar Hero" Harmonix XBOX 360 masofadan boshqarish pultidan keladigan 4 ta piezoelektrikdan foydalandim. Men tugmachani yoqish/o'chirish tugmasidan foydalanardim, chunki murabbo oyoq pedalli gitara qahramonining pulti magnitlangan.
Men Sharp GP2Y0E02B infraqizil sensoridan foydalandim, bu sensorlar uchun men samarali ishlash uchun tortish moslamasini o'rnatdim.
Shunday qilib, men empirik ravishda tugma sensori va IQ sensoriga qarshilik qiymatini topdim. Ammo men uning to'liq o'lchovini bilish uchun piezoelektrikni sinab ko'rdim va qarshilikning qiymatini aniqlab, 4 ta analog datchik uchun qo'lladim.
2-qadam: tortish moslamasi
Piezoelektrni kuchlanish generatori bilan sinab ko'rganimdan so'ng, qarshilik qiymatini 7MΩ ga o'rnatdim.
Tugmalar qarshiligining yig'ilishi 10 kΩ edi.
IQ sensori uchun men mos ravishda besleme zo'riqishida va SDA (ma'lumotlar) va SCL (soat) o'rtasida 1, 8kΩ ikkita qarshilik ishlatganman.
Ehtiyot bo'ling, chunki bu qarshilik qiymatlari RTX Arduino UNO uchun; Arduino impedans kiritish haqida bilish kerak bo'lgan narsa: 10MΩ.
Ushbu qadamning oxirgi rasmida siz tortiladigan montajni ko'rishingiz mumkin; Men UNO -ga 0 1 2 3 pinli piezoelektrik tasmalarni o'rnatdim, 2 raqamli pinli tugmachali tasmani, lekin UNO -dagi 6 pinli va IQ sensori tasmasidagi 4 ta pinli UNO -dagi qiymatni, Arduino Uno -ning barcha analog kirishlarini bildiraman.
3 -qadam: Arduino kodi
Operatsiya samarali bo'lishini ta'minlash uchun men sensorlar haqidagi ma'lumotlarni Arduino -ga yuborish/qabul qilishni sinab ko'rdim.
Men fayllarni tavsifga joylashtiraman, lekin siz ularni Arduino Genuino dasturining misollar bo'limida topishingiz mumkin, chunki IR sensori to'liq emas, men "ta'rif" bo'limida "siljish" kabi bir nechta ma'lumotni o'zgartirdim va o'lchov hisobini odatiy qilib o'zgartirdim. Siz, ehtimol, IR sensori kodidagi "sim" ni ko'rgansiz. Haqiqatan ham, men muloqot qilish uchun I2C protokolidan foydalandim, men sizni I2C protokolini ko'rishga taklif qilaman, bu juda qiziq, siz undan xohlagan raqamli sensorlarni real vaqtda uzatish uchun foydalanishingiz mumkin.
4 -qadam: Arduino Raspberry Serial aloqasi
Ha: D.
Birinchi rasmda ko'rib turganingizdek, Arduino-Raspberry havolasi-bu USB vilkasi.
Men sensorlar ma'lumotlarini to'g'ridan -to'g'ri Raspberry PI -da o'rnatilgan PureData Extented orqali olish usulini topdim. Nima uchun PureData kengaytirilgan? Chunki Vanilla versiyasi Raspbian muhitidagi ilovadan ko'ra bir xil kutubxonadan foydalanmaydi.
Shunday qilib, Arduino Genuino -da StandardFirmata -ni ishga tushiring, kirish -chiqish va o'zgarishlarni to'g'ri sozlash uchun!
Raspberry PI -da qiymat ma'lumotlarini qaytarish uchun 2 ta protokol mavjud: Firmata va Msg.
Men bir sababga ko'ra Firmata -ni tanladim, PureData -da bitta muhit Patch orqali ma'lumot olish osonroq edi.
Agar siz OSC protokolidan foydalansangiz, sizni Msg -ni topishga taklif qilaman.
5 -qadam: PureData tuzatmasi qabul qilindi
Haqiqatan ham, bir necha haftadan so'ng Genuino-da kodlashdan so'ng, men sensorning barcha ma'lumotlarini bitta sahifada olishimga muvaffaq bo'ldim, bu esa Pduino, Puredatadagi yamoq, qo'shimcha bo'limlar librairiyasi tufayli real vaqtda o'zgarishlarni ko'rish imkonini berdi.
Bu qadamdan biz endi Arduino kodiga tegmaymiz. Value ma'lumotlari o'qilishi mumkin.
3 -qadamda sezganimdek, men 6 pinli analogli raqamli tugmachadan ma'lumot oldim, aloqa samarali ishlashini ko'rish oson edi. Hammasi bitta qatorda.
6 -qadam: PureData -ni ishlab chiqish
PureData - bu o'ziga xos til va siz bo'sh vaqtingizni yaxshi patchwork ishlarini bajarish uchun sarflashingiz kerak.
PureData tuzatishlarining bir qismi GitHub -da mavjud bo'ladi.
Umid qilamanki, bu erda yozganlarim sizga o'z loyihangizni boshlashingizga yordam berdi.
Tavsiya:
Light Show bilan musiqiy quti: 9 qadam (rasmlar bilan)
Light Show bilan musiqa qutisi: Salom va xush kelibsiz, ushbu darsda biz o'z musiqiy qutimizni yorug'lik shousi yordamida qanday yasashni ko'rsatamiz. Sizga faqat bo'sh sumka kerak. Biz odatda asboblar uchun ishlatiladigan ishni oldik. Ushbu loyihada siz juda ijodiy bo'lishingiz mumkin, shuning uchun sizga kerak emas
Ultrasonik sensorli interfeys bilan DIY raqamli masofani o'lchash: 5 qadam
Ultrasonik sensorli interfeys yordamida DIY raqamli masofani o'lchash: Ushbu ko'rsatmaning maqsadi GreenPAK SLG46537 yordamida raqamli masofa sensori loyihalashdir. Tizim ultratovush sensori bilan ishlash uchun ASM va GreenPAK tarkibidagi boshqa komponentlar yordamida yaratilgan. Tizim shunday tuzilganki
Raqamli soat va haroratli musiqiy spektr: 9 qadam (rasmlar bilan)
Raqamli soat va haroratli musiqiy spektr: Biz sizga yana yoqadigan loyiha bilan keldik. Agar siz musiqa tinglashni yoqtirsangiz va vizualizmdan zavqlansangiz, bu loyiha siz uchun. DIGITAL CLOCK MUSIC SPECTRUM ELECTRONIC SITEMERATURE DISPLAY. Bu elektron to'plam. Pr -ni tugatganingizda
Raqamli va ikkilik soat 8 raqamli X 7 segmentli LED displeyda: 4 qadam (rasmlar bilan)
Raqamli va ikkilik soat 8 ta raqamli X 7 segmentli LED displeyda: Bu mening raqamli & 8 dyuymli x 7 segmentli LED displey yordamida ikkilik soat. Men odatiy qurilmalar, xususan, soatlar uchun yangi xususiyatlar berishni yaxshi ko'raman va bu holda ikkilik soat uchun 7 segmentli displeydan foydalanish noan'anaviy va
Oson tugmachali musiqiy interfeys: 5 qadam (rasmlar bilan)
Oson tugmachali musiqiy interfeys: Ushbu loyiha 5 dollarlik shtapelning oson tugmachasini va arzon USB klaviaturasini o'zgartiradi, shunda ular jonli musiqiy chiqishlarni (yoki tugma yoki oyoq ushlagichini talab qiladigan boshqa narsalarni) kirish qurilmasi sifatida ishlatilishi mumkin. Bu arzon tugmachalarni yaratishga imkon beradi