ماژول سنسور گاز MQ-4 تشخیص گاز متان و گاز طبیعی CNG
ماژول سنسور گاز MQ-4 تشخیص گاز متان و گاز طبیعی CNG
سنسور گاز MQ-4 یک سنسور رایج برای تشخیص انواع گازها، از جمله متان (CH4) و گاز طبیعی (CNG) است. این سنسور بر اساس یک لایه حساس به نام اکسید استانوزیوم (SnO2) که در حضور گازهای هدف تغییر مقاومت خود را نشان میدهد، عمل میکند.ماژول سنسور گاز MQ-4 یک بسته کامل است که شامل سنسور MQ-4 و مدارهای الکترونیکی لازم برای پردازش سیگنال و خروجی است. این ماژول برای اتصال آسان به میکروکنترلرها و سیستمهای الکترونیکی طراحی شده است.ماژول سنسور MQ-4 به طور معمول با ولتاژ 5 ولت کار میکند و خروجی آن میتواند به صورت آنالوگ یا دیجیتال باشد. در حالت آنالوگ، خروجی سنسور به طور مستقیم با غلظت متان یا CNG مرتبط است. در حالت دیجیتال، سیگنال خروجی بر اساس یک آستانهی کاربر تعیین شده به صورت منطقی با مقادیر بالا یا پایین است.ماژول سنسور گاز MQ-4 در زمینههای مختلفی، مانند تشخیص نشتی گاز در محیطهای خطرناک، سیستمهای هشدار حریق، سیستمهای ایمنی و کنترل صنعتی استفاده میشود.
مشخصات فنی سنسور گاز MQ4
- ولتاژ کاری: 5 ولت DC
- محدوده ولتاژ خروجی آنالوگ: 0 تا 5 ولت
- محدوده ولتاژ خروجی دیجیتال: 0 ولت (LOW) و 5 ولت (HIGH)
- محدوده تشخیص گاز متان: 300ppm تا 10,000ppm
- زمان پاسخدهی: کمتر از 10 ثانیه
- زمان بازیابی: کمتر از 30 ثانیه
- دمای کاری: -10 درجه سانتیگراد تا +50 درجه سانتیگراد
- رطوبت کاری: 95 درصد رطوبت نسبی (بدون تشکیل شبنم)
- اندازهگیری محیط: هوای طبیعی
بررسی پایه های سنسور گاز MQ4
- VCC: این پایه به ولتاژ تغذیه مورد نیاز سنسور (5 ولت DC) متصل میشود. از طریق این پایه، سنسور برق مورد نیاز خود را میگیرد.
- GND: این پایه به منبع منفی (زمین) سیستم متصل میشود. اتصال این پایه از جهت ایمنی و صحیح عملکرد سنسور بسیار حیاتی است.
- AOUT: این پایه خروجی آنالوگ سنسور است. مقدار ولتاژ خروجی بر اساس غلظت گاز تشخیص داده شده تغییر میکند. میتوانید از این پایه برای خواندن مقدار آنالوگ و استفاده در برنامههای میکروکنترلری استفاده کنید.
- DOUT: این پایه خروجی دیجیتال سنسور است. وضعیت سیگنال خروجی به صورت منطقی (HIGH یا LOW) بر اساس تشخیص تعیین آستانه (threshold) قابل تنظیم توسط کاربر تغییر میکند.
به همراه سنسور گاز MQ4 چه اقلامی باید خریداری شود؟
- برد آردوینو
- نمایشگر OLED
- برد بورد
- کابل فلت
راه اندازی سنسور گاز MQ4 با آردوینو
در ادامه کد آردوینو را برای خواندن سنسور MQ-4 و محاسبه غلظت گاز در واحد بر میلیون (ppm) نوشته شده است.
- const int sensorPin = A0;: در این خط، یک ثابت تعریف شده است که به پین آنالوگ A0 متصل است و ورودی سنسور را مشخص میکند.
- void setup(): این تابع برای تنظیمات اولیه اجرای برنامه است. در اینجا، سرعت ارتباط سریال را با دستور Serial.begin(9600); تنظیم کردهایم.
- void loop(): این تابع بخش اصلی برنامه است که به صورت مکرر اجرا میشود.
- int sensorValue = analogRead(sensorPin);: در این خط، مقدار آنالوگ خوانده شده از سنسور را در متغیر sensorValue ذخیره میکنیم.
- float voltage = sensorValue * (5.0 / 1023.0);: این خط مقدار آنالوگ را به ولتاژ تبدیل میکند. فرمول استفاده شده در این خط به صورت مقدار آنالوگ * (ولتاژ کلی / تعداد مقادیر آنالوگ) است.
- float concentration = map(voltage, 0.2, 4.0, 0, 10000);: در این خط، ولتاژ را به محدوده غلظت گاز در ppm تبدیل میکند. تابع map به صورت map(مقدار ورودی, حداقل ورودی, حداکثر ورودی, حداقل خروجی, حداکثر خروجی) عمل میکند.
- Serial.print("غلظت گاز: ");: این دستور متن "غلظت گاز: " را چاپ میکند.
- Serial.print(concentration);: این دستور مقدار غلظت گاز را چاپ میکند.
- Serial.println(" ppm");: این دستور " ppm" را چاپ میکند و خط جدید را به انتهای چاپ اضافه میکند.
- delay(1000);: این دستور تاخیر یک ثانیه را فراهم میکند تا قبل از خواندن داده بعدی صبر کنیم.
// تعریف پین آنالوگ برای سنسور
const int sensorPin = A0;
void setup() {
Serial.begin(9600); // شروع ارتباط سریال
}
void loop() {
// خواندن مقدار آنالوگ از سنسور
int sensorValue = analogRead(sensorPin);
// تبدیل مقدار آنالوگ به ولتاژ
float voltage = sensorValue * (5.0 / 1023.0);
// تبدیل ولتاژ به غلظت گاز در ppm
float concentration = map(voltage, 0.2, 4.0, 0, 10000);
// چاپ غلظت گاز
Serial.print("غلظت گاز: ");
Serial.print(concentration);
Serial.println(" ppm");
delay(1000); // تاخیر 1 ثانیه قبل از خواندن بعدی
}
راه اندازی سنسور گاز MQ4 با میکروپایتون
در ادامه، کد مایکروپایتون برای خواندن سنسور MQ-4 و محاسبه غلظت گاز در واحد بر میلیون (ppm) نوشته شده است.
from machine import ADC: در این خط، کلاس ADC از ماژول machine را وارد میکنیم تا بتوانیم از آن برای خواندن ورودیهای آنالوگ استفاده کنیم.
sensor_pin = ADC(0): در این خط، یک شیء ADC را با شماره پین 0 ایجاد میکنیم که به عنوان پین ورودی آنالوگ برای سنسور مورد استفاده قرار میگیرد.
while True:: این بلوک به صورت بینهایت تکرار میشود.
sensor_value = sensor_pin.read(): در این خط، مقدار آنالوگ خوانده شده از سنسور را در متغیر sensor_value ذخیره میکنیم.
voltage = sensor_value * (3.3 / 1023.0): این خط مقدار آنالوگ را به ولتاژ تبدیل میکند. فرمول استفاده شده در این خط به صورت مقدار آنالوگ * (ولتاژ کلی / تعداد مقادیر آنالوگ) است.
concentration = int((voltage - 0.2) / 4.8 * 10000): این خط ولتاژ را به محدوده غلظت گاز در ppm تبدیل میکند. تابع int اعشارهای محاسبه شده را به عدد صحیح تبدیل میکند.
print("غلظت گاز: {} ppm".format(concentration)): این دستور غلظت گاز را در ppm را چاپ میکند. دستور format برای جایگزین کردن متغیرها در متن استفاده میشود.
time.sleep(1): این دستور تاخیر 1 ثانیه را فراهم میکند تا قبل از خواندن داده بعدی صبر کنیم.
from machine import ADC
import time
# تعریف پین آنالوگ برای سنسور
sensor_pin = ADC(0)
while True:
# خواندن مقدار آنالوگ از سنسور
sensor_value = sensor_pin.read()
# تبدیل مقدار آنالوگ به ولتاژ
voltage = sensor_value * (3.3 / 1023.0)
# تبدیل ولتاژ به غلظت گاز در ppm
concentration = int((voltage - 0.2) / 4.8 * 10000)
# چاپ غلظت گاز
print("غلظت گاز: {} ppm".format(concentration))
time.sleep(1) # تاخیر 1 ثانیه قبل از خواندن بعدی
مشخصات
- کاربری
- مناسب برای استفاده شخصی
- نوع ماژول
- گاز و فشار سنج
- سطح تجربه مورد نیاز
- پیشرفته
- ابعاد
- 32x20mm
- ولتاژ ورودی
- 5 ولت DC
- دمای نگهداری
- 20 تا 70 درجه سانتی گراد
- دمای کاری
- - 10 تا + 50 درجه سانتی گراد
- تعداد پایه ها
- 4
- نوع کانکتور
- پین هدر
- محدوده اندازه گیری
- 300 تا 10000ppm
- تعداد خروجی
- 2
- جریان مصرفی درحالت فعال
- در حدود 150 میلی آمپر
- نوع گاز قابل تشخیص
- متان و گاز طبیعی
- نوع سنسور
- تشخیص گاز
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.