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

التقنية القابلة للارتداء: قفاز تغيير الصوت: 7 خطوات
التقنية القابلة للارتداء: قفاز تغيير الصوت: 7 خطوات

فيديو: التقنية القابلة للارتداء: قفاز تغيير الصوت: 7 خطوات

فيديو: التقنية القابلة للارتداء: قفاز تغيير الصوت: 7 خطوات
فيديو: مايا خليفه تدعم أبو فله ب.15000 دعم 🤭❤🧿☝️ 2024, شهر نوفمبر
Anonim
التقنية القابلة للارتداء: قفاز تغيير الصوت
التقنية القابلة للارتداء: قفاز تغيير الصوت
التقنية القابلة للارتداء: قفاز تغيير الصوت
التقنية القابلة للارتداء: قفاز تغيير الصوت

حسنًا ، يبدو أن القفازات ذات القوى المذهلة هي كل الغضب هذه الأيام. بينما يعتبر Infinity Gauntlet ثانوس قفازًا قويًا جدًا ، أردنا صنع قفاز يمكنه فعل شيء أكثر روعة: تغيير صوت مرتديه في الوقت الفعلي.

يوفر Instructable هذا شرحًا تفصيليًا لكيفية تصميمنا لقفاز لتغيير الصوت. استخدم تصميمنا مستشعرات مختلفة ومتحكم دقيق في القفاز لاكتشاف الحركات ، والتي تم إرسالها عبر كود Arduino إلى تصحيح Max ، حيث تم بعد ذلك تغيير الإشارة الصوتية وتشويهها بطرق ممتعة. تتميز المستشعرات والحركات وتعديلات الصوت المحددة التي استخدمناها بالمرونة لاعتبارات مختلفة ؛ هذه مجرد طريقة واحدة لإنشاء قفاز يغير الصوت!

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

الخطوة 1: المواد

المواد
المواد
المواد
المواد
المواد
المواد

القطع:

  • متحكم HexWear (ATmega32U4) (https://hexwear.com/)
  • مقياس التسارع MMA8451 (https://www.adafruit.com/product/2019)
  • مستشعرات قصيرة مرنة (x4) (https://www.adafruit.com/product/1070)
  • قفاز تشغيل خفيف الوزن
  • # 2 مسامير وغسالات (x8)
  • موصلات طرفية تجعيد ؛ مقياس 22-18 (x8) (https://www.elecdirect.com/crimp-wire-terminals/ring-crimp-terminals/pvc-ring-terminals/ring-terminal-pvc-red-22-18-6- 100pk)
  • 50kΩ المقاوم (x4)
  • سلك (~ 20 مقياس)
  • دبوس أمان ذاتي اللصق
  • لباد أو قماش آخر (حوالي 10 أمتار مربعة)
  • خيوط الخياطة
  • زيبيتس
  • حاسوب محمول
  • ميكروفون USB

أدوات

  • طقم لحام
  • قواطع الأسلاك وقواطع الأسلاك
  • شريط كهربائي
  • بندقية الهواء الساخن
  • مفك براغي
  • مقص
  • ابرة خياطة

برمجة:

  • ماكس من ركوب الدراجات '74 (https://cycling74.com)
  • برنامج Arduino (https://www.arduino.cc/en/Main/Software)

الخطوة الثانية: تثبيت البرنامج

نبدأ بما هو حقًا الجزء الأكثر إثارة في أي مشروع: تثبيت المكتبات (والمزيد).

اردوينو:

قم بتحميل وتثبيت برنامج Arduino (https://www.arduino.cc/en/Main/Software).

HexWear:

1) (Windows فقط ، يمكن لمستخدمي Mac تخطي هذه الخطوة) قم بتثبيت برنامج التشغيل من خلال زيارة https://www.redgerbera.com/pages/hexwear-driver-installation. قم بتنزيل برنامج التشغيل وتثبيته (ملف exe. مدرج في الخطوة 2 أعلى صفحة RedGerbera المرتبطة).

2) قم بتثبيت المكتبة المطلوبة لـ Hexware. افتح Arduino IDE. ضمن "ملف" ، حدد "تفضيلات". في المساحة المتوفرة لعناوين URL لمدير اللوحات الإضافية ، الصق

github.com/RedGerbera/Gerbera-Boards/raw/master/package_RedGerbera_index.json.

ثم انقر فوق "موافق".

انتقل إلى Tools -> Board: -> Board Manager. من قائمة الزاوية العلوية اليسرى ، حدد "مساهمة".

ابحث عن ، ثم انقر فوق Gerbera Boards وانقر فوق تثبيت. قم بإنهاء Arduino IDE وإعادة فتحه.

للتأكد من تثبيت المكتبة بشكل صحيح ، انتقل إلى Tools -> Board ، وانتقل إلى أسفل القائمة. يجب أن ترى قسمًا بعنوان "Gerbera Boards" ، والذي يجب أن تظهر تحته على الأقل HexWear (إن لم يكن المزيد من اللوحات مثل mini-HexWear).

مقياس التسارع:

قم بتنزيل مكتبة مقياس التسارع وتثبيتها (https://learn.adafruit.com/adafruit-mma8451-accelerometer-breakout/wiring-and-test)

الخطوة 3: إرفاق مقياس التسارع

إرفاق مقياس التسارع
إرفاق مقياس التسارع
إرفاق مقياس التسارع
إرفاق مقياس التسارع

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

من أجل تجنب إتلاف Hex الخاص بك ، نوصي بوضع المسمار والغاسلة رقم 2 عبر المنافذ المرغوبة ، ثم إرفاق جميع التوصيلات بهذا المسمار. لمنع أي شيء من السقوط عند اللعب بالقفاز ، يجب أن تكون الوصلات ملحومة و / أو مجعدة. باستخدام بضع بوصات من الأسلاك لكل اتصال ، قم بإجراء التوصيلات التالية من Hex إلى مقياس التسارع (انظر pinouts أعلاه كمرجع):

مدخلات الجهد VINGROUND GNDSCL / D3 SCLSDA / D2 SDA

مع توصيل كل شيء بالأسلاك ، نحن مستعدون للاختبار!

كاختبار ، قم بتشغيل رمز عينة مقياس التسارع في Arduino (ملف-> أمثلة-> Adafruit_MMA8451-> MMA8451demo) ، مع التأكد من أنه يمكن إخراجها إلى الشاشة التسلسلية. يجب أن يخرج التسارع بسبب الجاذبية (~ 10 م / ث) في اتجاه z عند المستوى. بإمالة مقياس التسارع ، سيتم قياس هذا التسارع في اتجاه x أو y ؛ سنستخدم هذا للسماح لمن يرتديها بتغيير الصوت بتدوير يده!

الآن ، نحتاج إلى تقديم بيانات مقياس التسارع بطريقة يمكن من خلالها التفاعل مع Max. للقيام بذلك ، يجب علينا طباعة قيم x و y ، وربما تعديلها لتتناسب مع النطاق المطلوب (انظر الجزء 6). في الكود المرفق هنا ، نقوم بما يلي:

// قياس اتجاه x واتجاه y. نقسم ونضرب للوصول إلى النطاقات الصحيحة لـ MAX (النطاق 1000 في x والمدى 40 في y) xdir = event.acceleration.x / 0.02 ؛ ydir = القيمة المطلقة (event.acceleration.y) * 2 ؛ // اطبع كل شيء بتنسيق قابل للقراءة لـ Max - مع مسافات بين كل رقم Serial.print (xdir) ؛ Serial.print ("") ؛

هذا يجب أن يطبع Hex القيم المعدلة لاتجاهات x و y لمقياس التسارع في كل سطر. الآن نحن جاهزون لإضافة أجهزة الاستشعار المرنة!

الخطوة 4: إرفاق Flex Sensors

إرفاق أجهزة استشعار فليكس
إرفاق أجهزة استشعار فليكس
إرفاق أجهزة استشعار فليكس
إرفاق أجهزة استشعار فليكس
إرفاق أجهزة استشعار فليكس
إرفاق أجهزة استشعار فليكس

يمكن لمن يرتديها الحصول على الكثير من أدوات التحكم في الصوت المحتملة إذا تمكنا من اكتشاف ثني الأصابع. ستفعل أجهزة الاستشعار المرنة ذلك بالضبط. كل مستشعر مرن هو في الأساس مقياس جهد ، حيث يكون للانعكاس مقاومة ~ 25KΩ ، بينما يكون للثني الكامل مقاومة ~ 100KΩ. نضع كل مستشعر مرن في مقسم جهد بسيط بمقاوم 50 ك ، كما هو موضح في الصورة الأولى.

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

الآن ، نحتاج إلى كود Arduino لقراءة الفولتية من كل مستشعر. لأغراضنا ، تعاملنا مع المستشعرات المرنة كمفاتيح ؛ كانوا إما في وضع التشغيل أو إيقاف التشغيل. على هذا النحو ، يحدد الكود الخاص بنا ببساطة عتبة جهد أعلى من هذه العتبة ، ونخرج 1 إلى المنفذ التسلسلي (بمعنى أن المستشعر عازم) ، وإلا فإننا نخرج 0:

// خذ عددا من

عينات تناظرية وإضافتها لكل مستشعر فليكس

بينما (sample_count <NUM_SAMPLES) {

sum10 + = analogRead (A10) ؛

sum9 + = analogRead (A9) ؛

sum7 + = analogRead (A7) ؛

sum11 + = analogRead (A11) ؛

sample_count ++ ؛

// تأخير قصير حتى لا تأخذهم بسرعة كبيرة

تأخير (5) ؛

}

// حساب الجهد ،

متوسط على العينات السريعة

// استخدم 5.0 لـ 5.0V ADC

مقياس الفولت

// 5.015 فولت هو المعاير

مقياس الفولت

الجهد 10 = ((تعويم) sum10 /

(تعويم) NUM_SAMPLES * 5.015) / 1024.0 ؛

الجهد 9 = ((تعويم) sum9 /

(تعويم) NUM_SAMPLES * 5.015) / 1024.0 ؛

الجهد 7 = ((تعويم) sum7 /

(تعويم) NUM_SAMPLES * 5.015) / 1024.0 ؛

الجهد 11 = ((تعويم) sum11 /

(تعويم) NUM_SAMPLES * 5.015) / 1024.0 ؛

// تحقق مما إذا كان كل مستشعر مرن

أكبر من العتبة - إذا كان الأمر كذلك ، فاضبط الرقم

//خنصر الإصبع

إذا (الجهد 10> عتبة)

{

// - 5 لرفع

نبرة الصوت من اوكتاف واحد

فليكس 10 = -10 ؛

}

آخر flex10 = 0 ؛

// البنصر

إذا (الجهد 9>

(عتبة 0.4)) {

// 5 لخفض

نبرة الصوت من اوكتاف واحد

فليكس 9 = 5 ؛

}

آخر flex9 = 0 ؛

//الاصبع الوسطى

إذا (الجهد 7> عتبة) {

// 1 للضبط

تأثير الصدى

فليكس 7 = 1 ؛

}

آخر flex7 = 0 ؛

//السبابة

إذا (الجهد 11> عتبة)

{

// 50 للضبط

دورات إلى 50

فليكس 11 = 93 ؛

}

آخر flex11 = 0 ؛

// إعادة تعيين كل العد

متغير إلى 0 للحلقة التالية

sample_count = 0 ؛

sum10 = 0 ؛

sum9 = 0 ؛

sum7 = 0 ؛

sum11 = 0 ؛

في هذه المرحلة ، يجب أن يُظهر المنفذ التسلسلي قيمًا لاتجاه مقياس التسارع ، وأيضًا ما إذا كان كل مستشعر مرن منحنيًا. نحن على استعداد للحصول على كود Arduino الخاص بنا للتحدث إلى Max!

الخطوة 5: التواصل مع Max

التواصل مع ماكس
التواصل مع ماكس

الآن بعد أن قام رمز Hex ببصق الكثير من الأرقام عبر المنفذ التسلسلي ، نحتاج إلى برنامج Max لقراءة هذه الإشارات. كتلة التعليمات البرمجية المصورة أعلاه تفعل ذلك بالضبط! اهلا وسهلا.

ملاحظة مهمة: بعد تحميل الكود إلى Hex ، أغلق جميع نوافذ المنفذ التسلسلي ، ثم قم بتغيير الحرف المحاط بدائرة في Max code لمطابقة منفذ Hex. إذا لم تكن متأكدًا من الحرف الذي تريد تعيينه ، فسيؤدي الضغط على الجزء "طباعة" من رمز Max إلى سرد جميع المنافذ المتصلة.

تتم قراءة الخط المطبوع من المنفذ التسلسلي لـ Hex من خلال كتلة رمز Max ، ثم يتم تقسيمه بناءً على محددات المسافة. يسمح لك الإخراج في نهاية الكتلة القصوى بالحصول على كل رقم على حدة ، لذلك سنقوم بتوصيل مساحة الإخراج الأولى بالمكان الذي نريد أن يذهب فيه اتجاه x لمقياس التسارع ، وستكون المساحة الثانية هي الاتجاه y ، وما إلى ذلك. الآن ، ما عليك سوى توصيلها بكتل الأرقام للتأكد من أنها تعمل. يجب أن تكون قادرًا على تحريك مقياس التسارع وأجهزة الاستشعار المرنة ورؤية الأرقام تتغير في برنامج Max.

الخطوة السادسة: بناء باقي كود ماكس

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

بالنسبة لكل معلمة تحاول تغييرها ، قد ترغب في العبث بمجموعة القيم القادمة من كود Arduino للحصول على الحساسية الصحيحة فقط.

بعض النصائح الأخرى الخاصة باستكشاف الأخطاء وإصلاحها لـ Max:

  • إذا كنت لا تسمع صوتًا

    • تأكد من تعيين Max لاستقبال الصوت من الميكروفون (Options Audio Status Input Device)
    • تأكد من تشغيل شريط التمرير Master Volume في Max وأي عناصر تحكم أخرى في مستوى الصوت قد تكون لديك في التعليمات البرمجية الخاصة بك
  • إذا كان يبدو أن الكود لا يفعل أي شيء

    • تأكد من قفل التصحيح الخاص بك (رمز القفل في الزاوية اليسرى السفلية)
    • تأكد من خلال قراءات في التصحيح Max أن التصحيح Max الخاص بك لا يزال يحصل على البيانات من منفذ Arduino التسلسلي. إذا لم يكن كذلك ، فحاول إعادة تعيين المنفذ التسلسلي (كما هو موضح في الخطوة 5) و / أو تحقق من توصيلات الأسلاك المادية.
  • أصوات قطع غريبة عند تغيير المعلمات

    هذا شيء له علاقة بكيفية عمل tapin و ~ tapout ؛ على وجه التحديد أنه عند تغيير قيمهم ، يتم إعادة تعيينهم ، مما يؤدي إلى القطع. نظرًا لمعرفتنا المحدودة بالبرنامج ، فنحن على يقين تقريبًا من وجود طريقة أفضل للقيام بذلك في Max والقضاء على المشكلة …

الخطوة 7: نضعها معًا حرفيًا

حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا
حرفيا كل ذلك معا

كل ما تبقى الآن هو إرفاق دوائرنا بقفازنا. خذ القماش الإضافي واقطع شرائط أكبر قليلاً من المستشعرات المرنة. قم بخياطة القماش الإضافي بإصبع القفاز حيث تنحني المفصل ، تاركًا نوعًا من الأكمام ليجلس عليه المستشعر المرن (لا يمكننا لصق المستشعرات المرنة مباشرة على القفاز لأن نسيج القفاز يتمدد مع ثني الأصابع). بمجرد حياكة الغلاف في الغالب ، حرك المستشعر المرن للداخل ، وقم بخياطة الخيوط بعناية في القفاز ، مع تثبيت المستشعر المرن في مكانه. كرر هذا لكل مستشعر فليكس.

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

أنت على استعداد لوضع قفازك الغنائي النهائي على المحك! (قد نوصي بشدة بـ Daft Punk "Harder Better Faster Stronger" لإظهار قدراتك في تغيير الصوت بشكل كامل)

موصى به: