اليوم سنقوم بنشاط آخر باستخدام مستشعر الصوت. في المنشور السابق ، تعلمنا كيفية التعامل مع dht11 مع Arduino. أتمنى أن تكون قد نجحت. لكن مستشعر الصوت هذا مع نشاط Arduino بسيط من آخر نشاط. هنا لا تحتاج إلى تثبيت أي مكتبة أو أي شيء. ما عليك سوى إجراء الاتصال وتحميل الكود إلى Arduino. سنقوم بمشاركة كل المعلومات لجعل هذا النشاط الأساسي. مستشعر الصوت أفضل من ميكروفون واحد للتفاعل مع Arduino. أو لجعل المشاريع. بمجرد أن أنجز مشروعًا باستخدام ميكروفون و MOSFET فقط ، لكنه لم يكن بهذه الدقة
في المستشعر ، سيحصل الميكروفون على الموجة الصوتية على شكل اهتزازات جزيئات الهواء. يرسل الحجاب الحاجز هذه الموجة الكهربائية المحولة إلى مكبر التشغيل. هنا مكبر الصوت lm398 يستخدم في الغالب في مستشعر الصوت. وهناك مقياس جهد يمكنه ضبط حساسية المستشعر. هناك أربعة دبابيس في المستشعر. دبوس البيانات ، الدبوس الأرضي ، D1 ، ودبوس A1. من حيث يمكنك الحصول على البيانات التناظرية والرقمية ، فهذا يعتمد على كيفية استخدامك للمستشعر.
إذا كنت تستخدم الدبوس الرقمي ، فلن تحتاج إلى فتح الشاشة التسلسلية ولكن إذا كنت تستخدم تناظريًا ، فيجب أن تعرف كيفية فتح الشاشة التسلسلية ومراقبة الشاشة التسلسلية للقيمة
كيفية مراقبة القيمة التناظرية في الشاشة التسلسلية. أولاً ، عليك ذكر الشاشة التسلسلية لتبدأ في الكود. وبعد تحميل الكود في Arduino ، تحتاج إلى فتح الشاشة التسلسلية. وإذا لم تكن على علم بالتقدم ، فيمكنك تفضيل الصور الموضحة أدناه.
مخطط دائرة مشروع مستشعر الصوت اردوينو (الدبوس الرقمي)
كود اردوينو لمستشعر الصوت
int val = 0 ;
void setup()
{
Serial.begin(9600); // sensor buart rate
pinMode(7,HIGH); // LED PIN
pinMode(6,HIGH); // BUZZER PIN
}
void loop()
{
val = digitalRead(7); // pir sensor output pin connected
Serial.println(val); // see the value in serial mpnitor in Arduino IDE
delay(100);
if(val == 0 )
{
digitalWrite(7,HIGH); // LED ON
digitalWrite(6,LOW); // BUZZER ON
delay(1000);
}
else
{
digitalWrite(11,HIGH); // LED OFF
digitalWrite(12,LOW); // BUZZER OFF
}
رسم تخطيطي للدبوس التناظري
حساس الصوت كود اردوينو (تناظري)
void setup()
{
Serial.begin(9600);
pinMode(7,OUTPUT); // Red led pin
pinMode(6,OUTPUT); // Buzzer pin
}
void loop()
{
int s1=analogRead(A0);
Serial.println(s1);
delay(50);
if(s1>100 )
{
digitalWrite(7,LOW); // Red led off
digitalWrite(6,HIGH); // Buzzer on
}
else
{
digitalWrite(7,HIGH); // Red led on
digitalWrite(6,LOW); // Buzzer off
}
}