في هذا الدرس، سنتعلم كيفية استخدام المتحكم الدقيق SunFounder ESP32 لتشغيل النغمات الموسيقية باستخدام جرس سالب وترانزستور. يهدف المشروع إلى توضيح كيفية توليد الصوت بترددات محددة من خلال التحكم في الجرس عبر دبابيس GPIO الخاصة بـ ESP32.
سوف نقوم بتوصيل جرس سلبي إلى ESP32، مما سيمكننا من إنتاج نغمات موسيقية مختلفة بناءً على التردد الذي نقدمه. يتضمن هذا الإعداد استخدام ترانزيستور لتشغيل الجرس وإيقافه بسرعات عالية، مما يخلق موجات صوتية يمكننا سماعها. لمزيد من التوضيح حول المشروع، تأكد من مشاهدة الفيديو (في الفيديو عند 00:30).
مخطط جرس ESP32-13
شرح الأجهزة
المكونات الرئيسية المستخدمة في هذا المشروع تشمل المتحكم الدقيق SunFounder ESP32، جرسًا سالبًا، وترانزستور NPN (2N8050). يعد ESP32 لوحة تطوير قوية مجهزة بوظائف الواي فاي والبلوتوث المدمجة، مما يجعلها متعددة الاستخدامات لمجموعة متنوعة من تطبيقات إنترنت الأشياء. في هذه الحالة، ستقوم بتوليد إشارات للتحكم في الجرس.
يعمل جرس التنبيه الساكن عن طريق توليد الصوت عند تطبيق جهد متناوب عليه. على عكس جرس التنبيه النشط، الذي يحتوي على مذبذب مدمج، فإن جرس التنبيه الساكن يتطلب إشارة خارجية لإنتاج الصوت. يعمل الترانزستور كأداة تبديل، مما يسمح لـ ESP32 بالتحكم في الجرس دون تزويده بالطاقة مباشرة، مما يضمن عدم تجاوز تصنيف التيار لوحدة التحكم الدقيقة.
S87050_transistor
تفاصيل ورقة البيانات
مصنع
سان فاوندر
رقم القطعة
جرس سلبي
جهد التشغيل
3.3 فولت - 5 فولت
التردد الرنيني
2 كيلوهرتز - 4 كيلوهرتز
الاستهلاك الحالي
≤ 30 مللي أمبير
مستوى ضغط الصوت
≥ 70 ديسيبل
حزمة
ثقب ممر
ملاحظات / متغيرات
None
تأكد من صحة القطبية عند توصيل الجرس.
استخدم مقاومة تحديد التيار لقاعدة الترانزستور.
قم بتوصيل الجرس بمصدر طاقة متوافق مع تقدير جهده.
احذر من تجاوز الحد الأقصى لتصنيف التيار للترانزستور.
احرص على تنظيم الأسلاك لتجنب الدوائر القصيرة.
اختبر الدائرة قبل رفع الكود لتجنب تلف المكونات.
استخدم لوحة التجارب لتسهيل توصيل المكونات.
تأكد من استخدام معالجة تذبذب المدخلات إذا كنت تستخدم الأزرار.
اعتبر إضافة مبرد للترانزستور إذا تم استخدامه عند تيار عالٍ.
تعليمات التوصيل
ESP32-13-buzzer-wriing
لتوصيل المكونات، ابدأ بتوصيل الطرف الموجب من الجرس الساكن إلى دبوس 3.3 فولت على ESP32. يجب توصيل الطرف السالب من الجرس بمجمع الترانزستور NPN. يجب توصيل دبوس الباعث من الترانزستور بالأرض (GND) الخاصة بـ ESP32.
بعد ذلك، قم بتوصيل مقاومة بقيمة 1 كΩ من قاعدة الترانزستور إلى دبوس GPIO 14 على ESP32. هذه المقاومة تحد من التيار المتدفق إلى قاعدة الترانزستور. أخيرًا، تأكد من أن جميع توصيلات الأرض متصلة معًا لتوفير مرجع مشترك للدائرة.
أمثلة الشيفرة وشرح تفصيلي
const int buzzerPin = 14; // the buzzer pin
void setup()
{
pinMode(buzzerPin, OUTPUT); // Set as output
}
في الكود، نحدد متغيرًا ثابتًاbuzzerPinالذي تم ضبطه على 14، مما يشير إلى دبوس GPIO المتصل بقاعدة الترانزستور. في الـsetup()نقوم بتعيين هذه الدبوس كإخراج، مما يسمح لـ ESP32 بالتحكم في الجرس.
void loop()
{
for (int i = 0; i < 50; i++) // Loop 50 times and play a short tone each time
{
digitalWrite(buzzerPin, HIGH); // Set to HIGH to make the buzzer sound
delay(3); // Wait for 3 milliseconds
digitalWrite(buzzerPin, LOW); // LOW to turn off the buzzer
delay(3); //
}
delay(1000); // Wait for 1s before starting the next loop
}
المـloop()تحتوي الدالة على حلقة for تعمل 50 مرة. في كل تكرار، يتم تشغيل وإيقاف جرس بشكل سريع، مما ينتج عنه نغمة. تتحكم التأخيرات التي تبلغ 3 ملليseconds في مدة تنشيط الجرس وإيقافه، بينما يوفر تأخير مدته 1 ثانية في نهاية الحلقة فاصلًا قبل التكرار.
عرض / ما يمكن توقعه
بمجرد اكتمال التوصيلات الكهربائية ورفع الشيفرة، يجب أن تسمع سلسلة من النغمات القصيرة التي ينتجها الجرس. إذا لم يكن الجرس يصدر صوتاً، تحقق من الاتصالات، خاصةً اتجاه الترانزستور وقيمة المقاوم. تأكد من استخدام الدبوس الصحيح في الشيفرة وأن ESP32 موصل بالطاقة بشكل صحيح.
خلال العرض، إذا واجهت مشاكل، فقد يكون ذلك بسبب الأسلاك غير الصحيحة أو استخدام دبوس خاطئ للجرس. تحقق من الأسلاك مقابل التعليمات وتأكد من أن مصدر الطاقة كافٍ (في الفيديو في 08:15).
طوابع زمنية للفيديو
:00 بداية
١:٥٢ مقدمة للمشروع
4:11 شرح الأسلاك
8:11 اختيار لوحة ESP32 ومنفذ COM في بيئة تطوير أردوينو