تشخیص الکل با سنسور MQ3 و آردوینو
محتویات
اکنون سنسورها با تشخیص دود، آتش یا گاز و هشدار دادن به فرد مناسب، نقش اساسی در ایمنی و امنیت طیف وسیعی از آپارتمانها، خانهها و مشاغل دارند. پست امروز یکی از این سنسورها، MQ-3 را مورد بحث قرار خواهد داد. MQ-3 یک حسگر حساس به الکل است.
پیشنهاد میکنم پروژه تستر الکل آردوینو را نیز مشاهده کنید.
سنسور الکل MQ-3
ماژول سنسور تشخیص گاز MQ-3 شامل چهار پین VCC، GND، Aout و Dout است که 2 پین آن برای استخراج داده ها از سنسور استفاده می شود. پین های سنسور تشخیص الکل MQ-3 به شرح زیر است:
- VCC پایه منبع تغذیه سنسور تشخیص گاز است که می تواند به منبع 5 ولت متصل شود.
- GND پایه زمین برد است که باید به پایه GND آردوینو متصل شود.
- DOUT پین خروجی دیجیتال برد است. خروجی کم نشان می دهد که هیچ الکلی در محیط وجود ندارد، در حالی که خروجی بالا نشان دهنده وجود الکل است.
- AOUT پین خروجی آنالوگ برد است که سیگنال آنالوگ را در اختیار ما قرار می دهد که بسته به سطح الکل شناسایی شده بین Vcc و GND متفاوت است.
مدار اتصال سنسور MQ3 به آردوینو
اکنون که می دانیم سنسور الکل MQ-3 چگونه کار می کند، می توانیم تمام سیم های لازم را به Arduino Uno متصل کنیم و نحوه عملکرد آن را ببینیم. ما با مولفه آنالوگ شروع می کنیم و سپس به قسمت دیجیتال می رویم که بسیار ساده است.
مدار اتصال سنسور الکل به آردوینو
برای کار با سنسور ابتدا باید آن را تغذیه کنیم. ما از پایه های 5 ولت و GND آردوینو UNO استفاده می کنیم و پایه خروجی سنسور به پایه A0 آردوینو متصل می شود.
ما یک LED را به پین 6 آردوینو وصل کرده ایم، پایه آنالوگ را به پایه A0 آردوینو وصل کرده ایم و همانطور که در مدار بالا نشان داده شده است، پایه GND بین led و سنسور به اشتراک گذاشته شده است. ما آردوینو را طوری پیکربندی می کنیم که روشنایی LED در پاسخ به غلظت الکل در محیط تغییر کند.
برای خواندن پایه دیجیتال سنسور، فقط خروجی سنسور را به هر پین دیجیتالی در آردوینو وصل کنید و با دستور digitalRead وضعیت آن پین را بخوانید. اگر آردوینو یک پالس HIGH را بخواند، الکل شناسایی شده است. اگر آردوینو پالس LOW را بخواند، هیچ الکلی در محیط وجود ندارد.
کد آردوینو برای تشخیص الکل
کد ماژول حسگر الکل با آردوینو ساده است. ما به سادگی داده های آنالوگ را از سنسور می خوانیم و روشنایی LED را برای مطابقت با داده ها تنظیم می کنیم. لطفاً به خاطر داشته باشید که ما صرفاً داده های آنالوگ را پردازش می کنیم. برای پردازش داده های دیجیتال میتوانید به ال ای دی روی ماژول توجه کنید.
ما چهار ماکرو را تعریف می کنیم: دو مورد اول مقادیری هستند که ما برای الکل کم و الکل زیاد در نظر می گیریم. سومی برای پین سنسور و چهارمی برای led است که وقتی روشن می شود نشان دهنده وجود الکل است.
#define Sober 150 #define Drunk 400 #define MQ3 0 #define ledPin 6
همانطور که می دانید سنسور باید کمی گرم شود تا خوانش دقیقی داشته باشد. این قسمت از کد همه چیز را متوقف می کند و ماژول سنسور را به مدت 20 ثانیه گرم می کند.
Serial.println("MQ3 Heating up!"); delay(20000);
پس از اتمام گرمایش، شروع به خواندن داده های آنالوگ دریافتی از پین آنالوگ سنسور می کنیم و داده ها را روی نمایشگر سریال چاپ می کنیم. از قبل مقادیری برای الکل کم و زیاد در نظر گرفتیم. اکنون مقدار خوانده شده از سنسور را بررسی میکنیم و با توجه به میزان الکل موجود، پیامی را روی سریال مانیتور نمایش میدهیم.
sensorValue = analogRead(MQ3); // خواندن پایه آنالوگ A0 Serial.print("Sensor Value: "); Serial.print(sensorValue); if (sensorValue < Sober) { Serial.println(" | Status: Sober"); } else if (sensorValue >= Sober && sensorValue < Drunk) { Serial.println(" | Status: Drinking but within legal limits"); } else { Serial.println(" | Status: DRUNK");
یک LED به پایه 6 متصل است و ما یک سیگنال PWM مطابق با مقدار سنسور تولید می کنیم تا LED روشن شود. هنگامی که مقدار سنسور بیشتر از 150 باشد، LED شروع به درخشش می کند و از آنجایی که ما LED را از طریق سیگنال PWM تغذیه می کنیم، با افزایش مقدار سنسور، روشنایی آن افزایش می یابد.
unsigned int outputValue = map(sensorValue, 0, 1023, 0, 255); if (sensorValue > 150){ analogWrite(ledPin, outputValue); } else{ digitalWrite(ledPin, LOW); }
کار ماژول سنسور MQ-3
عملکرد سنسورهای MQ-3 در فیلم زیر نشان داده شده است. زمانی که هیچ الکلی در محیط وجود نداشته باشد، LED خاموش است، اما زمانی که مقدار کمی IPA ارائه کردیم، LED روشن می شود. هرچه الکل بیشتری در محیط وجود داشته باشد، LED روشن تر می شود. زمانی که غلظت الکل در هوا 500 پی پی ام باشد، ال ای دی با بیشترین روشنایی می درخشد.
موارد موجود در فایل : فایل سورس کامل
برای دانلود فایل ها باید حساب کاربری داشته باشید ثبت نام / ورود