เซ็นเซอร์ตรวจจับควัน แก๊ส MQ2-Gas Sensor For Arduino

 เซนเซอร์ MQ2-Gas คือ โมดูลที่เหมาะสำหรับใช้ในการตรวจจับแก๊สจำพวก LPG, Propane, Hydrogen, Methane, Butane, Smoke สามารถตรวจจับระดับความเข้มของแก๊สได้ในช่วงระหว่าง 300-10000 ppm

หลักการทำงานของ MQ2-Gas

ทำจากแร่ที่มีความไวต่อแก๊สสูง คือ SnO2 ซึ่งมีค่าการนำไฟฟ้าต่ำเมื่อมีก๊าซที่ติดไฟได้ตามปริมาณที่เข้มข้นพอ วงจรบนแผงโมดูลจะทำหน้าที่ขยายสัญญาณไฟฟ้าอันน้อยนิดให้ส่งออกมายัง Output เพื่อให้เรารับรู้ได้

Output ของ MQ2-Gas

จากภาพวงจรด้านบนทำให้เห็นว่าขาของเซนเซอร์มีทั้งหมดด้วยกัน 4ขา แหล่งจ่ายไฟ+,- 2ขา และอีก 2ขาที่เหลือคือขาออก Output  ซึ่งมีขาออกให้เลือกใช้ได้ทั้ง 2แบบ คือ ดิจิตอลเอาต์พุต(Digital Output ; DO)  และ อนาล็อกเอาต์พุต(Analog Output ; AO)
  • ดิจิตอลเอาต์พุต(Digital Output ; DO) คือ จะส่ง 0 กับ 1 ออกมาเจอแก๊สเป็น 1(5V.) ไม่เจอเป็น 0(0V.)
  • อนาล็อกเอาต์พุต(Analog Output ; AO) คือ สามารถวัดปริมาณของแก๊สได้แบบละเอียด

ข้อมูลจำเพาะ ของ MQ2-Gas

แรงดันที่ต้องการ(Operating voltage)5V
ความต้านทานโหลด(Load resistance)20 KΩ
ความต้านทานต่ออุณภูมิ(Heater resistance)33Ω ± 5%
ความร้อน(Heating consumption)<800mw
ความต้านทานขณะวัดค่า(Sensing Resistance)10 KΩ – 60 KΩ
ระดับความเข้มข้น(Concentration Scope)200 – 10000ppm
เวลาการทำงาน(Preheat Time)Over 24 hour
ppm คือ Part Per Million หนึ่งส่วนในล้านส่วน(1 ใน 1,000,000) หน่วยวัด PPM ที่เรามักจะพบเจอส่วนใหญ่แล้วจะเป็นเรื่องของสิ่งแวดล้อมในงานอุตสาหกรรมหรือตามหน่วยงานต่างๆ เช่น การวัดค่ามลพิษทางอากาศ หมายถึงส่วนของปริมาณก๊าซพิษในปริมาณของอากาศล้านส่วน หรือปริมาณของตัวถูกละลายในสารละลายล้านส่วน นั่นเอง

ตัวปรับจูนความไวในการตรวจจับ


ใช้สำหรับปรับความไวในการตรวจจับก๊าซ โดยถ้าหากปรับหมุน ตามเข็มนาฬิกาจะเป็นการเพิ่มความไวการจับ หากหมุนทวนเข็มจะลดความไวลง สามารถทดลองโดยปรับจน LED-PWR ติดสว่างแล้วค่อยปรับลดลงมา

Code Program สำหรับ Arduino IDE

#define MQ2pin (0)

float sensorValue;  //สร้างตัวแปรชื่อ sensorValue เพื่อเก็บค่าเซนเซอร์

void setup()
{
  Serial.begin(9600); // กำหนด serial port ไปที่ 9600
  Serial.println("Gas sensor warming up!");
  delay(20000); // หน่วงเวลาเพื่อวอมเซนเซอร์ 20วินาที
}

void loop()
{
  sensorValue = analogRead(MQ2pin); // อ่านรับค่า analog input ที่ pin 0
  
  Serial.print("Sensor Value: ");
  Serial.print(sensorValue);
  
  if(sensorValue > 300)
  {
    Serial.print(" | Smoke detected!");
  }
  
  Serial.println("");
  delay(2000); // รอ 2วินาที ก่อนอ่านค่าใหม่อีกครั้ง
}


แสดงความคิดเห็น

0 ความคิดเห็น