در این پرويژه قصد داریم شما را با آشکارساز نویز یا ردیاب صوتی هوشمند آشنا سازیم. “لطفا سکوت کنید!” حتما این پیام را در مکانهایی مانند کتابخانهها دیدهاید. اما برخی افراد تمایل دارند، به عمد یا ناخواسته، در چنین مناطقی سکوت خود را بشکنند و دیگران را آزار دهند. چه میشد اگر دستگاهی وجود داشت که میتوانست به حفظ سکوت در چنین مناطقی کمک کند؟
فهرست مطالب
ردیاب صوتی هوشمند
در پروژه آشکارساز نویز، یک ردیاب صوتی هوشمند ایجاد میکنیم که میتواند سر و صدا را شناسایی کند و با نمایش یک چراغ قرمز و ایجاد زنگ، ما را هشدار دهد. همچنین میتوانید این دستگاه را از طریق یک برنامه سفارشی شده به تلفن خود وصل کنید تا میزان حساسیت را مطابق انتخاب تنظیم نمایید.
برای شروع، اجزای زیر مورد نیاز است:
- آردوینو اونو
- چراغ قرمز
- بازر
- سنسور صدا
- چند سیم جامپر
- آداپتور 5 ولت DC / پاوربانک 5 ولت
برنامه نویسی آشکار ساز نویز
برنامهنرمافزاری (silence_zone.ino) در آردوینو كلیه توابع لازم را برای تشخیص سر و صدا به عهده میگیرد و کنترل مینماید. متغیرهایی را برای ذخیره مقادیر در کد آردوینو تنظیم کنید، همانطور که در شکل 1 نشان داده شده است.
سپس، پین بلوتوث و پین I/O را برای عملکرد و ورودی در تنظیمات ()setup تنظیم کنید. در اینجا، نرخ baud بلوتوث روی 9600 تنظیم شده است، اما میتوانید با نرخ پیش فرض 38400 نیز سعی کنید (شکل 2).
در مرحله بعدی، عملکردهای حلقه را برای اجرای مکرر کد تنظیم کنید (شکل 3). در این عملکرد حلقه، شرط ()if را ایجاد کنید که به رشتههای ورودی بلوتوث گوش میدهد. سپس آن رشته را به مقدار عدد صحیح تبدیل کرده و آن مقدار عدد صحیح را به مقدار آستانه تنظیم کنید.
در قسمت بعدی کدگذاری، عملکرد سنسور () را ایجاد کنید تا مقدار سنسور را بدست آورید (شکل 4). برای مقدار سنسور، به طور متوسط چندین قرائت از سطح نویز شناسایی شده را بگیرید. فرمول برای به دست آوردن بازده متوسط با جمع کل خوانشها / تعداد نمونههای گرفته شده ارائه میشود. در این پروژه 160 نمونه از سطوح مختلف نویز را در نظر گرفتیم تا متوسط بازده را بدست آوریم.
برنامه ساختمان
MIT App Inventor برای توسعه برنامه Android برای این پروژه استفاده میشود. با استفاده از مؤلفههای زیر یک طرح را در برنامه ایجاد کنید، همانطور که در شکل 5 نشان داده شده است:
- 2 سطح متن
- 1 ورودی متن
- 1 انتخابکننده لیست
- 1 دکمه
برای شروع ساختن برنامه، MIT App Inventor را از https://appinventor.mit.edu باز کنید و کد را در بخش Blocks Editor قرار دهید، همانطور که در شکل 6 نشان داده شده است. این کد را به عنوان sil_zone ذخیره کنید و پرونده .apk آن را در رایانه ذخیره کنید. این پرونده .apk بعدا در تلفن Android استفاده خواهد شد.
اتصالات مدار و آزمایش آشکار ساز نویز
بعد از توسعه سیستم عامل و برنامه، قطعات را به Arduino وصل کنید، همانطور که در شکل 7 نشان داده شده است. جزئیات اتصال پین آردوینو نیز در جدول نشان داده شده است.
در آشکارساز نویز ، بورد قدرت یا تابلو برق آردوینو با استفاده از آداپتور / پاوربانک 5 ولت DC متصل نمایید و پرونده bêdeng_zone.apk را از رایانه به تلفن Android کپی کنید. برنامه را نصب کرده و از طریق تلفن باز کنید. روی نماد بلوتوث در برنامه ضربه بزنید و HC-05 را از لیست انتخاب کنید تا تلفن با Bluetooth HC-05 در مدار متصل شود.
حالا میتوانید مقدار سطح صدا در نوار متن برنامه را ببینید. هنگامی که سطح صدا به مقدار آستانه میرسد، نور LED و زنگ به طور خودکار توسط Arduino راهاندازی میشوند. همچنین میتوانید مقدار آستانه را با استفاده از برنامه تنظیم مجدد کنید. برای این کار، روی کادر نوشتاری کنار Send ضربه بزنید، مقداری را که می خواهید اضافه کنید وارد کنید و بر روی Send کلیک کنید تا مقدار آستانه تنظیم شود.