ماژول MQ8 سنسور گاز H2 تشخیص گاز هیدروژن
معرفی سنسور MQ8 گاز H2
این ماژول دارای یک سنسور دارای MQ-8 است و دارای یک مقاومت محافظتی و یک مقاومت قابل تنظیم روی برد است. سنسور گاز MQ-8 دارای هیدروژن بسیار حساس و حساسیت کمتری به الکل و بخارهای پخت و پز دارد. این سنسور می تواند در دستگاه های تشخیص نشت گاز در پروژه های کوچک و صنعتی استفاده شود. مقاومت موجود در برد باعث تغییر حساسیت اندازهگیری غلظت گاز هدف میشود. سنسور گاز MQ 8 یکی دیگر از سنسورهای گاز نیمه هادی فلزی اکسید (MOS) از خانواده سنسورهای گاز MQ شامل MQ 2 ، MQ 4 ، MQ 3 ، MQ 7 ، MQ 135 است و عمدتا به عنوان یک هیدروژن ردیاب استفاده می شود. این سنسور شامل یک عنصر سنجش، سرامیک عمدتا مبتنی بر اکسید آلومینیوم است که با دی اکسید قلع (SnO2) پوشانده شده و در یک شبکه فولاد ضد زنگ محصور شده است. هرگاه گاز H2 با عنصر حسگر تماس پیدا کند، مقاومت عنصر تغییر می کند. سپس تغییر برای بدست آوردن غلظت گازهای موجود اندازه گیری می شود. این سنسور هیدروژن دارای یک عنصر گرمایشی کوچک است، که برای گرم شدن سنسور برای ورود به آن در پنجره کار مورد نیاز است. این سنسور می تواند گاز H2 را در محدوده غلظت 100 تا 1000ppm تشخیص دهد. از آنجا که گاز H2 بسیار اشتعال پذیر است، نشت آن در صنعت می تواند با از دست دادن اموال و جان بسیار خطرناک باشد. بنابراین برای شناسایی هر گونه نشتی و جلوگیری از تلفات جانی و مالی ، می توانیم از این سنسور استفاده کرده و از این شرایط جلوگیری کنیم.
ویژگی های سنسور گاز MQ8
سنسور گاز MQ-8 یک سنسور گاز حساس به هیدروژن (H2) است که به طور گسترده در برنامههایی که به تشخیص و کنترل غلظت هیدروژن نیاز دارند مورد استفاده قرار میگیرد.مشخصات فنی این سنسور به شرح زیر است:
- ولتاژ عملیاتی: 5 ولت DC
- محدوده غلظت قابل تشخیص: 100 تا 10000 پارت بر میلیون (ppm) هیدروژن
- دمای عملیاتی: -10℃ تا +50℃
- حساسیت: Rہ/Rہ ۲۵℃ در هوای خشک ≥۳٫۵
- زمان پاسخگویی: کمتر از ۵۰ ثانیه
- مقاومت اولیه: ۲۰۰۰ ±۵۰۰ اهم در شرایط آزمایشگاهی
- شرایط آزمایشگاهی: دمای ۲۰℃، رطوبت ۶۵±۵٪ ، فشار ۱۰۱۳±۱۰ میلی بار
- اندازهها: ۳۶ میلیمتر در ۲۴ میلیمتر در ۲۲ میلیمتر
بررسی پایه های سنسور گاز MQ8
سنسور گاز MQ-8 دارای 4 پایه است که هر کدام وظایف خاص خود را دارند. پایه های سنسور MQ-8 به شرح زیر هستند:
Vcc: این پایه، به منبع تغذیه (5 ولت) متصل میشود.
GND: این پایه، به زمین منبع تغذیه متصل میشود.
D0: این پایه، خروجی دیجیتال سنسور است و وقتی که غلظت گاز بالای یک حد مشخص (تعیین شده توسط تنظیمات) میرسد، خروجی 1 میشود و در غیر این صورت خروجی 0 است.
A0: این پایه، خروجی آنالوگ سنسور است و ولتاژ خروجی آن به میزان غلظت گاز در محیط تغییر میکند.
به همراه ماژول MQ8 چه اقلامی باید خریداری شود؟
برای استفاده از سنسور گاز MQ8، باید از بردها و قطعات الکترونیکی دیگری نیز استفاده کرد. به طور کلی، برای اتصال سنسور MQ8 به میکروکنترلرها مانند آردوینو، بردها و قطعات زیر را نیاز دارید.
- برد آردوینو: برای برنامهریزی و کنترل سنسور MQ8، میتوانید از برد آردوینو استفاده کنید که با پایههای سنسور MQ5 سازگار باشند.
- ماژول تغذیه: برای تأمین ولتاژ مناسب برای سنسور MQ5 و همچنین مدارهای الکترونیکی دیگر، میتوانید از ماژولهای تغذیه با ولتاژ خروجی مطابق با نیاز سنسور MQ8 استفاده کنید.
- برد تقویت کننده آنالوگ: برای تقویت سیگنال خروجی آنالوگ سنسور MQ8، میتوانید از بردهای تقویت کننده آنالوگ مانند ماژولهای آمپلیفایر استفاده کنید.
- مقاومتها: برای تنظیم ولتاژ و جریان ورودی سنسور MQ8 و دیگر قطعات الکترونیکی، میتوانید از مقاومتهای مختلف استفاده کنید.
- کانکتورها و کابلها: برای اتصال سنسور MQ8 و سایر قطعات الکترونیکی به یکدیگر، میتوانید از کانکتورها و کابلهای مناسب استفاده کنید.
راه اندازی سنسور گاز MQ8 با آردوینو
در این کد که با آردوینو نوشته شده است، در ابتدا پایه ورودی آنالوگی که به سنسور MQ-8 وصل شده را، همچنین ولتاژ تغذیه و مقاومت بار روی سنسور تعریف میکنیم. سپس در تابع loop()، مقاومت سنسور را خوانده، نسبت Rs/Ro را محاسبه و با استفاده از یک معادله لگاریتمی بر اساس دیتاشیت سنسور، آن را به غلظت گاز در ppm تبدیل میکنیم. در نهایت، غلظت گاز را در مانیتور سریال چاپ کرده و 1 ثانیه صبر کرده تا فرایند مجددا تکرار شود.تابع readSensor() برای خواندن مقدار سنسور و تبدیل آن به مقاومت با استفاده از فرمول تقسیم ولتاژ بکار میرود. توجه داشته باشید که شاید نیاز باشد مقادیر Vc، Rl و Ro را بر اساس تنظیمات خاص خود و دیتاشیت سنسور تنظیم کنید.
int mq8_pin = A0; // Analog input pin for MQ-8 gas sensor
float Vc = 5.0; // Supply voltage to the sensor (in Volts)
float Rl = 10.0; // Load resistance on the sensor (in kOhms)
float Ro = 10.0; // Sensor resistance in clean air (in kOhms)
float Rs = 0.0; // Sensor resistance in the current environment (in kOhms)
float ratio = 0.0; // Ratio of Rs/Ro
float ppm = 0.0; // Gas concentration in parts per million (ppm)
void setup() {
Serial.begin(9600); // Start serial communication
}
void loop() {
Rs = readSensor(mq8_pin); // Read the sensor resistance
ratio = Rs / Ro; // Calculate the ratio of Rs/Ro
ppm = pow(10, ((log10(ratio) - 1.6) / 0.26)); // Convert ratio to ppm
Serial.print("Gas concentration: ");
Serial.print(ppm);
Serial.println(" ppm");
delay(1000); // Wait for 1 second
}
float readSensor(int pin) {
int value = analogRead(pin); // Read the sensor value
float voltage = (value * Vc) / 1023.0; // Convert sensor value to voltage
float current = voltage / Rl; // Calculate current through the sensor
float resistance = (Vc - voltage) / current; // Calculate sensor resistance
return resistance;
}
راه اندازی سنسور گاز MQ8 با میکروپایتون و ESP32
توسط برد ESP32 ابتدا کتابخانههای لازم را وارد میکنیم و پایه ورودی آنالوگ متصل به سنسور MQ-8 را تعریف میکنیم، همچنین ولتاژ تغذیه و مقاومت بار بر روی سنسور را تعیین میکنیم. سپس در تابع readSensor()، مقدار سنسور را خوانده و با استفاده از فرمول تقسیم ولتاژ، آن را به مقاومت تبدیل میکنیم.در حلقه اصلی، مقاومت سنسور را خوانده، نسبت Rs/Ro را محاسبه و با استفاده از یک معادله لگاریتمی بر اساس دیتاشیت سنسور، آن را به غلظت گاز در ppm تبدیل میکنیم. در نهایت، غلظت گاز را در کنسول چاپ کرده و ۱ ثانیه قبل از تکرار فرآیند منتظر میمانیم.توجه داشته باشید که شما باید مقادیر Vc، Rl و Ro را بر اساس نصب و راهاندازی خود و دیتاشیت سنسور تنظیم کنید. همچنین شماره پایه ADC مورد استفاده بستگی به برد و پایهای که سنسور MQ-8 را به آن متصل کردهاید، دارد.
from machine import ADC
import math
import time
mq8_pin = ADC(0) # Analog input pin for MQ-8 gas sensor
Vc = 5.0 # Supply voltage to the sensor (in Volts)
Rl = 10.0 # Load resistance on the sensor (in kOhms)
Ro = 10.0 # Sensor resistance in clean air (in kOhms)
def readSensor(pin):
value = pin.read() # Read the sensor value
voltage = (value * Vc) / 1023.0 # Convert sensor value to voltage
current = voltage / Rl # Calculate current through the sensor
resistance = (Vc - voltage) / current # Calculate sensor resistance
return resistance
while True:
Rs = readSensor(mq8_pin) # Read the sensor resistance
ratio = Rs / Ro # Calculate the ratio of Rs/Ro
ppm = math.pow(10, ((math.log10(ratio) - 1.6) / 0.26)) # Convert ratio to ppm
print("Gas concentration: {:.2f} ppm".format(ppm))
time.sleep(1) # Wait for 1 second
راه اندازی سنسور گاز MQ8 با میکروپایتون و RP2040
این کد مقدار آنالوگ از سنسور MQ-8 که به پین 26 از میکروکنترلر RP2040 وصل شده است، میخواند و از فرمول ولتاژ دهی که به منظور تقسیم ولتاژ استفاده میشود، آن را به مقاومت تبدیل میکند. سپس نسبت Rs/Ro را محاسبه کرده و با استفاده از یک معادله لگاریتمی که بر اساس صفحه دادههای سنسور تعریف شده است، این نسبت را به غلظت گاز در واحد بر میلیون (ppm) تبدیل میکند.توجه داشته باشید که مقادیر خاص Vc، Rl و Ro باید بر اساس تنظیمات و صفحه دادههای سنسور MQ-8 شما تنظیم شوند. همچنین، این کد شامل تاخیر 1 ثانیه بین خواندنها است.
from machine import Pin, ADC
import math
import utime
# Define ADC pin number and sensor parameters
adc_pin = 26
Vc = 5.0 # Supply voltage in Volts
Rl = 5.0 # Load resistance in kOhms
Ro = 10.0 # Sensor resistance in kOhms
# Define function to read sensor value and convert to resistance
def readSensor():
adc = ADC(Pin(adc_pin))
adc.atten(ADC.ATTN_11DB)
adc.width(ADC.WIDTH_12BIT)
sensor_value = adc.read()
voltage = sensor_value * Vc / 4095.0
resistance = (Vc * Rl - voltage * Rl) / voltage
return resistance
# Main loop to read sensor resistance and convert to gas concentration
while True:
sensor_resistance = readSensor()
ratio = sensor_resistance / Ro
gas_ppm = math.pow(10, ((math.log10(ratio) - 1.1) / -0.38))
print("Gas concentration: {:.2f} ppm".format(gas_ppm))
utime.sleep(1)
مشخصات
- کاربری
- مناسب برای استفاده شخصی
- نوع ماژول
- گاز و فشار سنج
- سطح تجربه مورد نیاز
- پیشرفته
- ابعاد
- 23x20mm
- ولتاژ مورد نياز
- 5 ولت DC
- چاپ مس
- دارای چاپ آبی
- تعداد پایه ها
- 4 پایه
- ترتیب پایه ها
- AO-DO-GND-VCC
- محدوده اندازه گیری
- 100 تا 10000 ppm
- کد تجاری
- MH -MQ Sensor
- پردازنده
- LM393
- سایر توضیحات
- دارای 2 خروجی دیجیتال و آنالوگ (DO-AO)
- سایر قابلیتها
- دارای پتانسیومتر جهت تنظیم حساسیت
- نوع گاز قابل تشخیص
- هیدروژن
- نوع سنسور
- تشخیص گاز
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.