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

آلة الضوضاء اردوينو: 4 خطوات
آلة الضوضاء اردوينو: 4 خطوات

فيديو: آلة الضوضاء اردوينو: 4 خطوات

فيديو: آلة الضوضاء اردوينو: 4 خطوات
فيديو: الدرس 23 - المشروع 5 - جهاز تشغيل الإضاءة عن طريق التصفيق 2024, شهر نوفمبر
Anonim
آلة الضوضاء اردوينو
آلة الضوضاء اردوينو
آلة الضوضاء اردوينو
آلة الضوضاء اردوينو
آلة الضوضاء اردوينو
آلة الضوضاء اردوينو

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

الخطوة 1: الأجزاء التي ستحتاجها

اردوينو اونو

أسلاك اللوح والطائر

1 مكبر صوت صغير أو جرس بيزو

1 مفتاح الضغط

3 10Ω مقاييس فرق الجهد

1 22Ω المقاوم

1 10kΩ المقاوم

الخطوة الثانية: بناء الدائرة

بناء الدائرة
بناء الدائرة

قم بتوصيل اللوح بدبوس Arduino 5V و GND. ضع مفتاح الضغط على أقصى يمين أو يسار اللوح وقم بتوصيله بجهد 5 فولت والأرضي باستخدام المقاوم 10kΩ. قم بتوصيل سلك من دائرة التبديل بالدبوس 2 على Arduino.

على الجانب الآخر من اللوح ، قم بإعداد دائرة مكبر الصوت / بيزو على 5 فولت والأرضي باستخدام المقاوم 220. يتحكم هذا المقاوم في التيار وبالتالي يتحكم في الحجم ؛ يمكنك تجربة مقاومات مختلفة هنا للحصول على حجم أعلى أو أقل.

رتب مقاييس فرق الجهد الخاصة بك في وسط لوح التجارب لإعطاء مساحة كافية للعبث بالمقابض. يجب توصيل كل وعاء بـ 5 فولت والأرضي والمسامير المركزية على كل منها متصلة بمسامير تناظرية A0 و A1 و A2

الخطوة الثالثة: الكود

مقياس الجهد أو وعاء هو المقاوم المتغير والذي عند توصيله بأردوينو سيعيد قيمة بين 0 و 1023. سنستخدم الدالة map () لتغيير هذه القيم لتناسب احتياجاتنا الخاصة. تأخذ الدالة map () خمس حجج وفي حالتنا نحتاج إلى إعادة تعيين النطاق إلى ما بين 220 و 2200 لإنتاج صوت مسموع معقول.

تبدو الوظيفة شيئًا كالتالي:

خريطة (وعاء ، 0 ، 1023 ، 220 ، 2200) ؛

يمكنك التلاعب بالقيمتين الأخيرتين لنغمات التردد الأعلى والأدنى ، فقط كن حذرًا لأنك لا تزعج كلبك.

Noise_Machine.ino

/ * آلة ضوضاء تستخدم ثلاثة مقاييس جهد متصلة بمدخلات تناظرية
ومكبر صوت بيزو أو مكبر صوت صغير. يقوم زر الضغط بتشغيل الضوضاء ، مقاييس فرق الجهد
التحكم في الملعب باستخدام وظيفة نغمة Arduino () ، وتأخير اثنين
القيم التي تتحكم في طول كل نغمة والطول بينهما
كل نغمة. تعطي مقاييس الجهد القيم التناظرية التي تم تغييرها
استخدام الدالة map () في نطاقات أكبر أو أصغر لتلائم نطاقك
الأذواق الموسيقية.
هذا الرمز في المجال العام.
مات توماس 2019-04-05
*/
زر القابس buttonPin = 2 ؛ // Pushbutton pin 2
مكبر صوت ثابت = 9 ؛ // مكبر الصوت أو بيزو في دبوس 9
int buttonState = 0 ؛ // متغيرات الزر
وعاء int // ومقاييس الجهد
وعاء intOne
وعاء intwo
الإعداد باطل() {
pinMode (9 ، الإخراج) ؛ // مكبر الصوت / دبوس الإخراج بيزو
}
حلقة فارغة() {
buttonState = digitalRead (buttonPin) ؛ // اقرأ حالة الزر الانضغاطي
potZero = analogRead (A0) ؛ // متغيرات لقراءة القيم التناظرية
potOne = analogRead (A1) ؛
potTwo = analogRead (A2) ،
int htz = خريطة (potZero، 0، 1023، 0، 8800) ؛ // تعيين القراءات التناظرية إلى
كثافة عالية = خريطة (potOne ، 0 ، 1023 ، 0 ، 100) ؛ // نطاقات عدد جديدة وخلق
int low = map (potTwo، 0، 1023، 0، 100) ؛ // متغيرات جديدة
if (buttonState == HIGH) {// إذا تم الضغط على زر الضغط …
نغمة (مكبر الصوت ، htz) ؛ // الصوت مفعل
تأخير (مرتفع) ؛ // طول النغمة
noTone (مكبر الصوت) ؛ // كتم
تأخير (منخفض) ؛ // الوقت حتى النغمة التالية
} آخر {
noTone (مكبر الصوت) ؛ // لا توجد نغمة إذا تم تحرير الزر
}
}

عرض rawNoise_Machine.ino مستضاف مع ❤ بواسطة GitHub

الخطوة 4: النهاية

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

موصى به: