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

اردوينو - بيانو بيزو بثلاثة أزرار: 4 خطوات
اردوينو - بيانو بيزو بثلاثة أزرار: 4 خطوات

فيديو: اردوينو - بيانو بيزو بثلاثة أزرار: 4 خطوات

فيديو: اردوينو - بيانو بيزو بثلاثة أزرار: 4 خطوات
فيديو: لوحة انارة السلم البيانو SMART AMC V1.1 2024, ديسمبر
Anonim
Image
Image

البيانو المكون من ثلاثة أزرار هو مشروع للمبتدئين الذين لديهم بعض الخبرة في استخدام Arduino.

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

المواد المطلوبة تشمل:

  • 1 اردوينو
  • 1 اللوح
  • 1 كابل يو اس بي
  • أسلاك العبور (ألوان مختلفة)
  • 1330 كيلو أوم المقاوم
  • 1 بيزو الجرس
  • 3 أزرار دفع
  • 1 مقياس الجهد

الخطوة 1: بيزو الجرس

بيزو الجرس
بيزو الجرس

للبدء ، قم بإعداد بيزو على لوح التجارب في Arduino. يجب أن يمتد جانب واحد منه (جانب الساق الأقصر) إلى الأرض. يحتاج الجانب الآخر (الجانب الأطول للساق) إلى الاتصال بدبوس إدخال رقمي. اخترت توصيله بـ 8.

الخطوة الثانية: أزرار الضغط

أزرار الدفع
أزرار الدفع
أزرار الدفع
أزرار الدفع

بعد ذلك ، حان الوقت لإعداد الأزرار الانضغاطية. مثل بيزو ، تحتاج الأزرار الانضغاطية إلى الاتصال بالأرض وبدبوس إدخال رقمي.

الخطوة 3: مقياس الجهد

مقياس فرق الجهد
مقياس فرق الجهد
مقياس فرق الجهد
مقياس فرق الجهد

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

الساق اليمنى: شريط سلبي (أرضي)

الساق الوسطى: دبوس تناظري 0

الساق اليسرى: شريط إيجابي

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

أثناء كتابة التعليمات البرمجية لهذا المشروع ، أشرت إلى معلومات حول بعض الأنواع المحددة من الوظائف:

نغمة، رنه()

noTone () (لم ينتهي بي الأمر باستخدام هذا. لقد قمت بتعيين التردد على "0" بدلاً من ذلك.)

خريطة()

يمكن العثور هنا على مرجع رائع آخر لمستخدمي Piezo Buzzers لأول مرة. على الرغم من أن فكرة تغيير صوت جرس بيزو تبدو بسيطة ، إلا أنها قد تكون مربكة بعض الشيء في البداية!

يمكن تقسيم وظيفة النغمة () إلى ثلاثة أجزاء:

  1. دبوس (الدبوس الذي يتصل به جرس بيزو)
  2. التردد (تردد الصوت بالهرتز)
  3. Duration (مدة الصوت المعطاة بالمللي ثانية)

في الأساس ، يبدو الأمر كما يلي: النغمة (رقم التعريف الشخصي ، التردد ، المدة). المكون الثالث (المدة) اختياري ، بينما المكونان الآخران ضروريان ليعمل الجرس. مكون "التردد" لوظيفة النغمة هو ما يمكن اعتباره "الصوت" الذي يصدره الجرس.

ستلاحظ أيضًا أن الكود يحتوي على وحدتين أخريين من الكود. هناك بعض عبارات if / else التي تم إعدادها لإخبار Arduino بما يجب فعله إذا تم الضغط على أزرار مختلفة وكذلك لإعداده باستخدام "التردد = 0" في المواقف التي لا يتم فيها الضغط على أي من الأزرار. ضمن عبارات if / else ، تُستخدم وظائف map () لتعيين مقياس الجهد على مجموعة من الترددات. يمكن تغيير هذه! جرّب قيم التردد المختلفة لمعرفة الأصوات المختلفة التي يمكنك الحصول عليها من بيزو.

تحقق من الكود الذي استخدمته لإنشاء البيانو بثلاثة أزرار هنا أو تحقق أدناه.

كثافة العمليات piezoPin = 8 ؛ // قم بإعداد دبوس متصل بـ Piezo.

حساس int sensorPin = 0 ؛ // قم بإعداد دبوس متصل بجهاز الاستشعار (مقياس الجهد). حساس intValue = 0 ؛

int button1 = 5 ؛ // قم بإعداد دبابيس الإدخال المتصلة بالأزرار.

int button2 = 4 ؛ int button3 = 3 ؛

تردد كثافة العمليات = 0 ؛

const int delayTime = 500 ؛ // قم بإعداد ثابت لمتغير وقت التأخير في وظيفة النغمة ().

الإعداد باطل() {

pinMode (button1 ، INPUT_PULLUP) ؛ pinMode (button2 ، INPUT_PULLUP) ؛ pinMode (button3 ، INPUT_PULLUP) ؛ }

حلقة فارغة() {

sensorValue = analogRead (sensorPin) ؛ // اقرأ المجس. // قم بتعيين القيم المختلفة لمقياس الجهد إلى مجموعة من الترددات لكل زر من الأزرار الثلاثة. إذا (digitalRead (button1) == منخفض) {التردد = الخريطة (sensorValue ، 0 ، 1023 ، 400 ، 499) ؛ } else if (digitalRead (button2) == LOW) {frequency = map (sensorValue، 0، 1023، 500، 599)؛ } else if (digitalRead (button3) == LOW) {frequency = map (sensorValue، 0، 1023، 600، 699)؛ } آخر {التردد = 0 ؛ } نغمة (بيزوسبين ، تردد ، delayTime) ؛ // إعداد وظائف النغمة () مع المتغيرات. }

موصى به: