جدول المحتويات:
- الخطوة 1: المواد
- الخطوة الثانية: تثبيت البرنامج
- الخطوة 3: إرفاق مقياس التسارع
- الخطوة 4: إرفاق Flex Sensors
- الخطوة 5: التواصل مع Max
- الخطوة السادسة: بناء باقي كود ماكس
- الخطوة 7: نضعها معًا حرفيًا
فيديو: التقنية القابلة للارتداء: قفاز تغيير الصوت: 7 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:39
حسنًا ، يبدو أن القفازات ذات القوى المذهلة هي كل الغضب هذه الأيام. بينما يعتبر 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" لإظهار قدراتك في تغيير الصوت بشكل كامل)
موصى به:
[الماوس القابل للارتداء] وحدة تحكم الماوس القابلة للارتداء القائمة على Bluetooth لنظامي التشغيل Windows 10 و Linux: 5 خطوات
[الماوس القابل للارتداء] جهاز التحكم بالماوس القابل للارتداء المستند إلى Bluetooth لنظامي التشغيل Windows 10 و Linux: لقد صنعت وحدة تحكم بالماوس تستند إلى Bluetooth يمكن استخدامها للتحكم في مؤشر الماوس وإجراء العمليات المتعلقة بالماوس على الكمبيوتر أثناء التنقل ، دون لمس أي أسطح. يمكن استخدام الدوائر الإلكترونية المضمنة في قفاز لتتبع h
المشروع النهائي للتكنولوجيا القابلة للارتداء - خوذة DJ: 6 خطوات
المشروع النهائي للتكنولوجيا القابلة للارتداء - خوذة DJ: الهدف من هذا المشروع هو جعل خوذة DJ مزودة بمصابيح LED تفاعلية مع الموسيقى لعامل العرض والإبهار. نحن نستخدم شريط LED قابل للعنونة من Amazon.com بالإضافة إلى خوذة دراجة نارية و Arduino uno وسلك
التكنولوجيا القابلة للارتداء للأطفال: شارة البطل: 4 خطوات
التكنولوجيا القابلة للارتداء للأطفال: شارة البطل: ستغطي هذه التعليمات كيفية صنع "شارة بطل" تضيء عند ارتدائها. يعد استخدام شريط قماش موصل وخيط موصل ومصابيح LED قابلة للخياطة نشاطًا رائعًا لطلاب المدارس لتعلم أساسيات الدوائر والتقنيات القابلة للارتداء. تي
التقنية القابلة للارتداء: براميل الهواء: 5 خطوات
التقنية القابلة للارتداء: براميل الهواء: كان هدفنا من هذا المشروع هو صنع مجموعة طبول يمكن ارتداؤها من بعض مقاييس التسارع وأقراص الضغط. كانت الفكرة أنه عند ضرب اليد ، ستسمع ضوضاء كمين ؛ أو ، عند الضغط على القدم ، سيتم تشغيل صوت طبل عالي أو صوت طبل. ليتحكم
حلقة كشف الكذب القابلة للارتداء من اردوينو: 7 خطوات
حلقة كشف الكذب القابلة للارتداء من Arduino: لتبدأ بـ … ثرثرة: توم ، طالب في الصف الخامس عاد من المدرسة الابتدائية. بمجرد عودته إلى المنزل ، ضغط والده على الجلوس. ثم يفتش الأب لوقت طويل ، وأخيراً يغطى الغبار بشيء صغير ، يقوم والده بتشغيله و