اردوينو – الدرس الحادي عشر – اصدار الأصوات

مبتدئ

في هذا الدرس ستتعلم كيفية اصدار الاصوات بمتحكم الأردوينو.
اولاً ستقوم بتشغيل مقطع صوتي ، ثم القيام بالتلاعب بمستوى الصوت عبر المستشعر الضوئي ‘photocell’.

making sounds

القطع المطلوبة

1 kΩ Resistor

1 kΩ Resistor

Piezo sounder

Piezo sounder

سماعة البيزو

photocell

Photocell
المستشعر الضوئي

Half-size Breadboard

Half-size Breadboard

Arduino Uno R3

Arduino Uno R3

Jumper wires

Jumper wires

تشغيل المقطع الصوتي

في هذا الجزء ستجد ان سماعة البيزو ‘piezo buzzer’ موضوعه على لوح التجارب . واحده من ارجل القطعه موصولة بالمجال الأرضي GND والرجل الأخرى مربوطه بالمنفذ الرقمي digital pin 12 .

piezo breadbaord

piezo breadboard2

قم برفع الكود البرمجي التالي على متحكم الأردوينو

 

لتشغيل مقطع صوتي ، تقوم بتحديد المجال الترددي . انظر للجزء التالي من الدرس المخصص للصوت .
كل مجال ترددي لكل نوته صوتية تم الاحتفاظ به في مصفوفه ‘array’ . المصفوفه ‘array’ هي مثل القائمة ، وبذلك يتم تشغيل المقطع عبر الانتقال لكل نوته صويته بالقائمه.

في حلقة ‘for’ loop سيبدأ العد من 0 وحتى 9 باستخدام القيمه i . للحصول على المجال الترددي للنوته الصوتية لتشغيلها بكل خطوه نقوم باستخدام ‘tone‘. هذا يعني ان القيمة الموجودة في مصفوفة ‘tones’  في موضع ‘i’
كمثال ، قيمة ‘[0]tones’ هي 261 ، وقمية ‘[1]tones’ هي 277 .. وهكذا ..

الأمر ‘tone’ في الأردوينو  يقوم بأخذ متغيرين اثنين ، الأول هو المنفذ الذي يقوم بتشغيل المقطع الصوتي والثاني هي التردد الصوتي للمقطع لتشغيله.

عند الانتهاء من تشغيل من جميع النوتات الصوتية ، أمر ‘noTone’ يقوم بإيقاف تشغيل الصوت.

كان بإمكاننا  ان نضع الكود البرمجي لتشغيل الاصوات داخل دالة loop عوضاَ عن دالة setup وذلك لأنها ستكرر المقطع الصوتي مره بعد مره دون توقف مما سيتسبب بالإزعاج لذلك تم وضعه داخل دالة setup
لذلك دالة loop فارغة .

لاعادة تشغيل المقطع الصوتي كل ماعليك فعله هو الضغط على زر reset الموجود بمتحكم اردوينو .

الصوت

الصوت هو عبارة عن ذبذبة في ضغط الهواء . سرعة الذبذبة (دورات بالثانية أو هيرتز ) هي مايصدر الصوت. كلما زادت قوة الذبذبة كلما زاد علو الصوت.

piezo

المتوسط C عادة يعرف بالتردد 261Hz. وكأنك قمت بتشغيل واطفاء منفذ رقمي ‘digital pin’ لاكثر من 261 مره بالثانية .

لسماع النتيجة ، علينا القيام بتركيب قطعه تقوم بترجمة التردادت الالكترونية إلى صوت . هذا يمكن عن طريق تركيب سماعات كبيره او عبر استخدامنا لسماعة البيزو ‘piezo sounder’.

سماعة piezo تستخدم نوع خاص من الكريستال تتمدد وتنكمش كتردد الكتروني والتي ينتج عنها الصوت.

آلة Pseudo-Theremin الموسيقية

هذه الآلة تقوم بإصدار اصوات غريبة عند تمرير يدك امامها ،
سنقوم بصنع آلة مشابهه في الوظيفة للتحكم والتأثير على مستوى الصوت بمجرد تمرير يدك فوق المستشعر الضوئ ‘photocell’.

سنقوم باضافة المستشعر الضوئي ‘photocell’ و المقاوم resistor للوح التجارب.

piezo breadboard

الكود البرمجي للأردوينو

قم برفع الكود التالي على متحكم الاردوينو

الكود واضح ، نستخدم المنفذ التناظري ‘analog pin’  للقراءة من A0 لقياس الضوء. وستكون القيمة مابين 0 و 700.

اضفنا القيمة 200 لجعل التردد 200Hz كأقل تردد ، وببساطه يتم اضافة القراءه عبر قسمة القيمة على 4 ، لاصدار تردد مابين 200Hz و 370Hz.

امور اخرى عليك القيام بها

حاول تغيير القيمة 4 بالسطر التالي لخفض القيم المرتفعة

 

تغيير القيمه سيرفع أو يقلل من التردد اعتماداً على الرقم الذي قمت بوضعه.

حاول التلاعب بقيم النوتات الصوتية لترى ماذا سيحدث..