في هذا المشروع ، سنصنع دائرة كلابر باستخدام مفهوم ADC (التحويل التناظري إلى الرقمي) في ARDUINO UNO. سنستخدم MIC و Uno لاستشعار الصوت وإطلاق استجابة. يعمل مفتاح Clap ON Clap OFF هذا بشكل أساسي على تشغيل أو إيقاف تشغيل الجهاز ، باستخدام صوت التصفيق ، كمفتاح. لقد قمنا مسبقًا ببناء مفتاح Clap ومفتاح Clap ON Clap OFF ، باستخدام 555 Timer IC.
عند التصفيق ، ستكون هناك إشارة ذروة في MIC أعلى بكثير من المعتاد ، ويتم تغذية هذه الإشارة إلى مكبر الصوت ، من خلال مرشح تمرير عالي. يتم تغذية إشارة الجهد المضخم هذه إلى ADC ، والتي تحول هذا الجهد العالي إلى رقم. لذلك ستكون هناك ذروة في قراءة ADC لـ UNO. في اكتشاف الذروة هذا ، سنقوم بتبديل مؤشر LED على اللوحة ، في كل تصفيق. تم شرح هذا المشروع بالتفصيل أدناه.
الميكروفون أو الميكروفون عبارة عن محول طاقة لاستشعار الصوت ، والذي يحول بشكل أساسي الطاقة الصوتية إلى طاقة كهربائية ، لذلك مع هذا المستشعر لدينا صوت كجهد متغير. نحن عادة نسجل أو نستشعر الصوت من خلال هذا الجهاز. يستخدم محول الطاقة هذا في جميع الهواتف المحمولة وأجهزة الكمبيوتر المحمولة. يشبه MIC النموذجي ،
تحديد قطبية ميكروفون المكثف:
يوجد لدى MIC طرفان أحدهما موجب والآخر سالب. يمكن العثور على قطبية الميكروفون باستخدام مقياس متعدد. خذ المسبار الموجب لـ Multi-Meter (ضع المقياس في وضع DIODE TESTING) وقم بتوصيله بأحد طرفي MIC والمسبار السالب بالطرف الآخر من MIC. إذا حصلت على القراءات على الشاشة ، فإن الطرف الموجب (MIC) يكون عند الطرف السالب لـ Multi-Meter. أو يمكنك ببساطة العثور على المحطات من خلال النظر إليها ، فالطرف السالب به خطان أو ثلاثة خطوط لحام متصلة بالعلبة المعدنية للميكروفون. يمكن أيضًا اختبار هذا الاتصال ، من الطرف السالب إلى العلبة المعدنية باستخدام اختبار الاستمرارية ، لمعرفة الطرف السالب.
المكونات المطلوبة:
الأجهزة:
ARDUINO UNO ، مصدر طاقة (5 فولت) ، ميكروفون مكثف (موضح أعلاه)
2N3904 الترانزستور NPN ،
مكثفات 100nF (قطعتان) ، مكثف واحد 100 فائق التوهج ،
1K المقاوم ، 1MΩ المقاوم ، 15K المقاوم (2 قطعة) ، LED واحد ،
واللوح وتوصيل الأسلاك.
البرنامج: Arduino IDE - Arduino ليلاً.
مخطط الدائرة وشرح العمل:
يظهر الرسم التخطيطي لدائرة المصفق في الشكل أدناه:
قمنا بتقسيم العمل إلى أربعة أجزاء ، وهي: الترشيح ، والتضخيم ، والتحويل التناظري الرقمي والبرمجة لتبديل LED
عندما يكون هناك صوت ، يلتقطه الميكروفون ويحوله إلى جهد ، خطي إلى حجم الصوت. لذلك بالنسبة للصوت العالي ، لدينا قيمة أعلى ولصوت أقل لدينا قيمة أقل. يتم تغذية هذه القيمة أولاً إلى مرشح التمرير العالي للترشيح. ثم يتم تغذية هذه القيمة المفلترة إلى الترانزستور من أجل التضخيم ويوفر الترانزستور الناتج المضخم عند المجمع. يتم تغذية إشارة المجمع هذه إلى قناة ADC0 الخاصة بـ UNO للتحويل التناظري إلى الرقمي. وأخيرًا ، تمت برمجة Arduino لتبديل مؤشر LED ، المتصل بـ PIN 7 من PORTD ، في كل مرة تتجاوز فيها قناة ADC A0 مستوى معينًا.
1. الترشيح:
بادئ ذي بدء ، سنتحدث بإيجاز عن RC High Pass Filter ، والذي تم استخدامه لتصفية الضوضاء. إنه سهل التصميم ويتكون من مقاوم واحد ومكثف واحد. بالنسبة لهذه الدائرة ، لا نحتاج إلى الكثير من التفاصيل ، لذلك سنبقيها بسيطة. يسمح مرشح التمرير العالي بتمرير إشارات التردد العالي من الإدخال إلى الإخراج ، بمعنى آخر تظهر إشارة الإدخال عند الإخراج إذا كان تردد الإشارة أعلى من التردد المحدد للمرشح. في الوقت الحالي ، لا داعي للقلق بشأن هذه القيم لأننا هنا لا نصمم مكبر صوت. يظهر مرشح تمرير عالي في الدائرة.
بعد هذا المرشح ، يتم تغذية إشارة الجهد إلى الترانزستور للتضخيم.
2. التضخيم:
جهد MIC منخفض جدًا ولا يمكن تغذيته إلى UNO من أجل ADC (التحويل التناظري إلى الرقمي) ، لذلك نقوم بتصميم مضخم بسيط باستخدام الترانزستور. هنا قمنا بتصميم مضخم ترانزستور واحد لتضخيم جهد MIC. يتم تغذية إشارة الجهد المضخم هذه إلى قناة ADC0 في Arduino.
3. التحويل التناظري إلى الرقمي:
يحتوي ARDUINO على 6 قنوات ADC. من بين هؤلاء ، يمكن استخدام أي واحد منهم أو جميعها كمدخلات للجهد التناظري. UNO ADC ذو دقة 10 بت (لذا فإن قيم الأعداد الصحيحة من (0- (2 ^ 10) 1023)). هذا يعني أنه سيعين الفولتية المدخلة بين 0 و 5 فولت إلى قيم صحيحة بين 0 و 1023. لذلك لكل (5/1024 = 4.9mV) لكل وحدة.
الآن ، لكي تقوم UNO بتحويل الإشارة التناظرية إلى إشارة رقمية ، نحتاج إلى استخدام قناة ADC الخاصة بـ ARDUINO UNO ، بمساعدة الوظائف التالية:
1. analogRead (دبوس) ؛ 2. analogReference () ؛
قنوات UNO ADC لها قيمة مرجعية افتراضية تبلغ 5 فولت. هذا يعني أنه يمكننا إعطاء جهد دخل أقصى قدره 5 فولت لتحويل ADC في أي قناة إدخال. نظرًا لأن بعض المستشعرات توفر جهدًا كهربيًا من 0-2.5 فولت ، لذلك مع مرجع 5 فولت ، نحصل على دقة أقل ، لذلك لدينا تعليمات تمكننا من تغيير هذه القيمة المرجعية. لذلك لتغيير القيمة المرجعية لدينا "analogReference () ؛"
في دائرتنا ، تركنا هذا الجهد المرجعي على الوضع الافتراضي ، حتى نتمكن من قراءة القيمة من قناة ADC 0 ، عن طريق استدعاء الوظيفة مباشرة "analogRead (pin) ؛" هنا يمثل "pin" دبوس حيث قمنا بتوصيل الإشارة التناظرية ، في في هذه الحالة سيكون "A0". يمكن أخذ القيمة من ADC إلى عدد صحيح كـ “int sensorValue = analogRead (A0)؛ "، من خلال هذه التعليمات ، يتم تخزين القيمة من ADC في العدد الصحيح" sensorValue ". الآن ، لدينا قيمة الترانزستور في شكل رقمي ، في ذاكرة UNO.
4. برمجة Arduino لتبديل مؤشر LED في كل Clap:
في الحالات العادية ، يوفر MIC إشارات عادية وبالتالي لدينا قيم رقمية عادية في UNO ، ولكن عند التصفيق هناك ذروة مقدمة من MIC ، مع هذا لدينا قيمة رقمية قصوى في UNO ، يمكننا برمجة UNO للتبديل مصباح LED يعمل وينطفئ متى كانت هناك ذروة. لذلك عند التصفيق الأول ، يتم تشغيل مصباح LED ويظل قيد التشغيل. في التصفيق الثاني ، ينطفئ المصباح ويظل مغلقًا حتى التصفيق التالي. مع هذا لدينا دائرة كلابر. تحقق من رمز البرنامج أدناه.