جدول المحتويات:

الواجهة الموسيقية الرقمية: 6 خطوات (بالصور)
الواجهة الموسيقية الرقمية: 6 خطوات (بالصور)

فيديو: الواجهة الموسيقية الرقمية: 6 خطوات (بالصور)

فيديو: الواجهة الموسيقية الرقمية: 6 خطوات (بالصور)
فيديو: كل المميزات والتغيرات في تحديث واجهة سامسونج الـ One UI 6 على اندرويد 14 2024, شهر نوفمبر
Anonim
الواجهة الموسيقية الرقمية
الواجهة الموسيقية الرقمية

مرحبا بالجميع،

أود أن أريكم الواجهة الرقمية الموسيقية الخاصة بي. لقد صنعته خلال درجتي الصوتية التقنية ، هذه هي أوراق بحثي. في البداية ، سألتني كيف يمكنني تأليف الموسيقى بدون DAW ، مع الإمدادات المعاد تدويرها وإمكانية التشغيل بشكل مستقل.

في هذا الدليل ، سوف أعلمك كيفية استخدام الاتصال التسلسلي لإرسال / استقبال معلومات المستشعرات (التناظرية والرقمية) من Arduino إلى Raspberry pi نحو البرامج puredata لتشغيل الصوت.

المواد المطلوبة هي:

x1 توت العليق PI3

x1 Boîter de Protection PI3

x1 Micro SD (32 جيجا بايت)

x1 اردوينو UNO

x1 حساس IR شارب GP2Y0E02B

x1 بريدبورد

مقياس اختبار اللوحة x1 (0.2)

x28 المقاومة 10MΩ

x2 المقاومة 1.8kΩ

x1 المقاومة 10kΩ

x20 العروات الطرفية ذكر / أنثى

x1 جندى الناقل

x1 لفائف القصدير (1 متر)

X1 لحام الحديد

x25 الأشرطة المرنة ذكر / ذكر

الخطوة الأولى: المستشعرات

مجسات
مجسات
مجسات
مجسات
مجسات
مجسات

لقد استخدمت 4 كهرضغطية قادمة من جهاز التحكم عن بعد "Guitar Hero" Harmonix XBOX 360. لقد استخدمت زر تشغيل / إيقاف لأن مفتاح القصب المغناطيسي لجهاز التحكم عن بعد بدواسة قدم المربى.

لقد استخدمت مستشعر الأشعة تحت الحمراء Sharp GP2Y0E02B. لجميع هذه المستشعرات ، قمت بتجميع السحب للتشغيل الفعال …

لذلك وجدت من الناحية التجريبية قيمة مقاومة لمستشعر الزر ومستشعر الأشعة تحت الحمراء. ومع ذلك ، فقد اختبرت الكهروإجهادية من أجل معرفة النطاق الكامل لهذا ، وقيمة المقاومة الثابتة المطلوبة والمطبقة على أجهزة الاستشعار التناظرية الأربعة.

الخطوة 2: سحب المونتاج

سحب المونتاج
سحب المونتاج
سحب المونتاج
سحب المونتاج
سحب المونتاج
سحب المونتاج
سحب المونتاج
سحب المونتاج

بعد اختبار كهرضغطية مع مولد الجهد ، قمت بتثبيت قيمة المقاومة عند 7MΩ.

كان سحب تجميع مقاومة الزر 10 كيلو أوم.

بالنسبة لمستشعر الأشعة تحت الحمراء ، استخدمت مقاومتين 1 ، 8kΩ بين جهد الإمداد على التوالي و SDA (البيانات) و SCL (الساعة).

كن حذرًا لأن قيم المقاومة هذه تخص RTX Arduino UNO ؛ شيء يجب معرفته عن مدخلات مقاومة Arduino: 10MΩ.

يمكنك رؤية مونتاج السحب على الصورة الأخيرة لهذه الخطوة ؛ لقد قمت بتثبيت الأشرطة الكهروإجهادية في 0 1 2 3 دبابيس على UNO ، وحزام الزر في 2 دبوس رقمي ولكن أبلغت القيمة على 6 دبوس على حزام مستشعر UNO و IR في 4 5 دبابيس على UNO ، جميع المدخلات التناظرية لـ Arduino Uno.

الخطوة 3: كود اردوينو

للتأكد من أن العملية كانت فعالة ، اختبرت إرسال / تلقي معلومات من أجهزة الاستشعار إلى Arduino.

أضع الملفات في الوصف ولكن يمكنك العثور عليها في قسم الأمثلة في برمجة Arduino Genuino ، باستثناء مستشعر الأشعة تحت الحمراء لأنه لم يكتمل ، لقد غيرت بعض المعلومات في قسم "تحديد" مثل "التحول" وقمت بتغيير حساب القياس ليكون منتظمًا في تباينات المسافة. ربما تكون قد شاهدت "سلك" في رمز مستشعر الأشعة تحت الحمراء. في الواقع لقد استخدمت بروتوكول I2C للتواصل ، أدعوكم لرؤية بروتوكول I2C ، إنه ممتع للغاية ، يمكنك استخدام هذا البروتوكول لإرسال جميع أجهزة الاستشعار الرقمية التي تريدها في الوقت الفعلي.

الخطوة 4: كلا الاتصال التسلسلي Arduino Raspberry

كلا من Arduino Raspberry Serial Communication
كلا من Arduino Raspberry Serial Communication
كلا من Arduino Raspberry Serial Communication
كلا من Arduino Raspberry Serial Communication

نعم: D

كما ترى في الصورة الأولى ، رابط Arduino-Raspberry هو قابس USB.

لقد وجدت طريقة لتلقي معلومات المستشعرات مباشرة بواسطة PureData Extented المثبتة في Raspberry PI. لماذا PureData Extended؟ لأن إصدار Vanilla لا يستخدم نفس المكتبة من تطبيق في بيئة Raspbian.

لذا قم بتشغيل StandardFirmata في Arduino Genuino لإصلاح I / O وقيمة الاختلافات بالطريقة الصحيحة!

لاستعادة معلومات القيمة في Raspberry PI ، يوجد بروتوكولين: Firmata و Msg.

اخترت Firmata لسبب واحد ، كان من الأسهل الحصول على المعلومات في PureData عبر patch Pduino ، بيئة واحدة.

أدعوك لاكتشاف الرسائل إذا كنت تستخدم بروتوكول OSC.

الخطوة 5: تلقي تصحيح PureData

تم تلقي تصحيح PureData
تم تلقي تصحيح PureData

في الواقع ، بعد أسابيع من البرمجة على Genuino ، نجحت في تلقي جميع معلومات المستشعر في صفحة واحدة ، مما سمح لي برؤية الاختلافات في الوقت الفعلي بفضل Pduino ، وهو تصحيح في Puredata ، قسم librairies الإضافي.

من هذه الخطوة ، لم نعد نتطرق إلى كود Arduino. معلومات القيمة قابلة للقراءة.

كما لاحظت في الخطوة 3 ، تلقيت معلومات من زر رقمي في 6 دبوس تناظري ، كان من السهل رؤية التشغيل الفعال للاتصال. الكل في سطر واحد.

الخطوة 6: تطوير PureData

تطوير PureData
تطوير PureData
تطوير PureData
تطوير PureData
تطوير PureData
تطوير PureData
تطوير PureData
تطوير PureData

PureData هي لغة محددة ويجب أن تقضي وقت فراغك لتنجح في عمل خليط لطيف.

سيتوفر بعض تصحيح PureData في GitHub.

آمل أن يكون ما كتبته هنا قد ساعدك في بدء مشروعك الخاص بالقرب من مشروعي.

موصى به: