Publish : 7 Febuary 2020
คงไม่มีใครปฏิเสธว่า "อากาศจำเป็นต่อชีวิต" หรอกนะครับ เรามักจะคิดว่าน้ำและอาหารเป็นสิ่งที่จำเป็น แต่สำหรับคนทั่วไปที่มีร่างกายปกติก็สามารถขาดน้ำได้ถึง 3 - 4 วัน และขาดอาหารได้ถึง 3 สัปดาห์(ทั้งนี้ก็ไม่แนะนำให้อดนะครับ อันนี้คืองานวิจัยในสภาวะขาดแคลนจริง ๆ) แต่เรามักลืมถึงสิ่งที่เราสัมผัสและเสพมันทุกวินาทีก็คืออากาศนั่นเอง ซึ่งพวกเราสามารถขาดอากาศได้เพียง 3 - 4 นาทีเท่านั้น แต่หากอากาศที่หายใจเข้าไปมีแก๊สพิษเป็นส่วนประกอบอยู่มากก็ไม่ต่างกับการขาดอากาศเช่นกัน ซึ่งหากเกิดเหตุการณ์เหล่านี้ก็จะทำให้เซลล์สมองเริ่มตาย สมองพิการ และตายได้ภายใน 5 นาทีเท่านั้น [1]
ทำความรู้จักกับ MQ-135 MQ-135 เป็นหนึ่งในเซ็นเซอร์ MQ Series ที่จะมีเซ็นเซอร์ตรวจจับแก๊สต่าง ๆ โดย MQ-135 นั้นเป็น Air Quality Sensor คือเซ็นเซอร์ที่ใช้วัดคุณภาพของอากาศ ไม่ได้เป็นเซ็นเซอร์วัดเฉพาะแก๊สใดแก๊สหนึ่งเหมือนตัวอื่น โดยเจ้า MQ-135 นั้นสามารถตรวจจับแก๊สต่าง ๆ คือ NH3, NOx, Alcohol, Benzene, CO2 และยังสามารถตรวจจับควันได้อีกด้วย เมื่อรู้ว่าเจ้า MQ-135 มันตรวจจับแก๊สอะไรได้บ้าง และแก๊สแต่ละตัวนั้นส่งผลอย่างไรกับร่างกาย ต่อไปคือการใช้ MQ-135 ซึ่งหากใครซื้อจากร้านเรา (คลิกดูสินค้าได้ที่นี่เลย) จะเป็นตัวเซ็นเซอร์ที่ติดมาบนบอร์ดขับเรียบร้อย ซึ่งก็จะมีให้ใช้งาน 4 ขาด้วยกัน คือ A0 D0 GND และ VCC แต่เราจะใช้งานเพียงแค่ 3 ขา คือ VCC GND สำหรับต่อไฟเลี้ยง และอีก 1 ขาคือ A0 ต่อกับ ADC ของบอร์ด Arduino ซึ่งตัวโมดูลนี้ใช้ไฟเลี้ยง 5V และส่งค่า Analog ออกมาที่ 0 - 5V ฉะนั้นใครที่ใช้กับบอร์ด ESP ต่าง ๆ หรือ Arduino รุ่นที่ใช้ไฟ 3.3V ต้องทำการแปลงสัญญาณโดยใช้ Logic Level Converter กันก่อนครับ แต่หากใครมีเฉพาะหัวเซ็นเซอร์เปล่า ๆ ก็ใช้งานได้เช่นกัน โดยต้องต่อวงจรกันอีกนิดหน่อยตามภาพด้านล่าง จากนั้นจึงเอาสาย Analog ไปต่อกับ ADC จับ VCC และ GND ไปต่อกับไฟเลี้ยงได้เลยครับ
เนื่องจาก MQ-135 มีความอเนกประสงค์สามารถวัดแก๊สต่าง ๆ ได้หลายอย่าง ซึ่งก็แลกมาด้วยความคลาดเคลื่อนที่เกิดขึ้นหากต้องการแยกแยะปริมาณของแก๊สชนิดต่าง ๆ ซึ่งโดยทั่วไปนั้น MQ-135 จะถูกใช้ในการวัดค่าคุณภาพอากาศแบบรวม ๆ หรือหากการคิดเป็นส่วนในล้านส่วน (ppm) ก็มักใช้กับแก๊ส CO2 เท่านั้น โดย MQ-135 นั้นสามารถตรวจจับได้ในช่วง 10 - 10000 ppm
เซ็นเซอร์ตระกูล MQ นั้นมีตัวตรวจจับโดยการให้ความร้อนกับสารกึ่งตัวนำ จึงมีคำแนะนำในการใช้งานเซ็นเซอร์ MQ-135 ดังนี้
(1) เมื่อแกะเซ็นเซอร์จากถุงมาใช้งานครั้งแรกควรทำการ Burn-in ตัวเซ็นเซอร์ โดยจ่ายไฟให้กับเซ็นเซอร์ทิ้งไว้ประมาณ 24 ชั่วโมง
(2) การใช้งานแต่ละครั้งควรทำการ Pre-heat ด้วยการจ่ายไฟให้กับเซ็นเซอร์ประมาณ 20 - 30 วินาทีก่อนทำการอ่านค่า เพื่อให้ตัวสารกึ่งตัวนำในเซ็นเซอร์ได้ความร้อนถึงจุดพอดี ทำให้วัดค่าได้อย่างแม่นยำขึ้น
(3) ตัวเซ็นเซอร์จะทำงานโดยใช้ความร้อน จึงควรใช้ความระมัดระวังในการสัมผัสเซ็นเซอร์ในขณะทำงาน อาจทำให้เกิดอันตรายและได้รับบาดเจ็บได้
วัดคุณภาพอากาศด้วย Arduino และ MQ-135
เมื่อรู้ถึงข้อมูลเกี่ยวกับตัวเซ็นเซอร์ที่จะใช้งานกันแล้ว ต่อไปจะมาเริ่มใช้งานกันเลย โดยตัวอย่างแรกจะเป็นการใช้งานแบบง่ายที่สุดคือการใช้คำสั่ง analogRead() ตามปกติทั่วไป และตามที่ได้บอกไปแล้วนั้นว่าต้องมีการ Pre-Heat ก่อน จึงใส่ delay 20 วินาทีลงไปในตอน setup ซะเลย

เปิด Serial Monitor ดูก็จะได้ผลลัพธ์ดังนี้เลย

แค่เท่านี้เราก็สามารถใช้งาน MQ-135 สำหรับวัดคุณภาพอากาศคร่าว ๆ ได้แล้วครับ แต่ใครอยากใช้งานแบบให้ค่าถูกต้องนิดนึง เราต้องนำค่าที่ได้นี้ ไปทำการพลิกแพลงสมการทางคณิตศาสตร์กันต่อ เริ่มต้นจากการเปิด Datasheet ดูกราฟความสัมพันธ์ระหว่างค่าความต้านทานของเซ็นเซอร์(ก็ที่เราอ่านได้แหละครับ) กับปริมาณแก๊สในหน่วย ppm กัน
เพื่อไม่ให้ปวดหัวกันมากมาย ผู้เขียนจะไม่ลงลึกถึงรากเหง้าทฤษฎีนะครับ จากกราฟเราจะไปขุดสมการ ม.ปลาย จะได้สมการกราฟพื้นฐานคือ
y = ax^b
จับตัวแปรในกราฟใส่ลงไป ได้สมการสุดท้ายออกมาคือ
ppm = a(Rs/Ro)^b
ในที่นี้ Rs คือ ค่าความต้านทานของเซ็นเซอร์ จะเปลี่ยนไปตามแต่แก๊สที่เราต้องการตรวจจับในอากาศมีมากน้อยมาชนแล้วทำให้ค่านี้เปลี่ยน Ro คือ ค่าความต้านทานตั้งต้นของเซ็นเซอร์ สำหรับ MQ-135 จะหาได้จากค่าที่วัดได้ในอากาศบริสุทธิ์ และมีปริมาณ NH3 อยู่ที่ 100ppm ซึ่งค่า Ro นี่แหละครับเป็นปัญหาของเรา เพราะต้องวัดค่าจากเซ็นเซอร์ที่อยู่ในอากาศบริสุทธิ์ มีปริมาณ NH3 100ppm และมีความชื้นสัมพัทธ์ที่ 33% ซึ่ง Hobbyist ไม่มีทางหาที่แบบนั้นได้(ตามโรงงานหรือห้องทดลองยังยากที่จะทำ) หรือจะลงทุนสร้างแล็ปก็ไม่ว่ากัน เราจะใช้ข้อมูลที่มีเผยแพร่ คือค่า CO2 ในบรรยากาศของเรา 412ppm (ณ วันที่เขียนบทความ มกราคม พ.ศ.2563 สามารถดูได้จาก https://www.co2.earth/) แล้วนำมาแทนค่าในสมการ
Ro=Rs* sqrt(a/ppm,b)
หรือ Ro=Rs*(a/ppm)^(1/b)
แทนค่าลงไปได้เลย Rs เราได้มาจากการวัดความต้านทานคร่อมขา A และ B ของเซ็นเซอร์ ppm ก็ 412 มาจากเว็บ ส่วน a และ b คือค่าคงที่ สามารถคำนวณได้จากกราฟ ได้ค่าคือ 116.6020682 และ -2.769034857 ตามลำดับ ก็จะได้ Ro ออกมาต่อไปคือช่วงของการวัดที่อยู่ในรูปของ Rs/Ro ซึ่งหาได้จากสูตร
min[Rs/Ro]=(max[ppm]/a)^(1/b)
max[Rs/Ro]=(min[ppm]/a)^(1/b)
ตัวแปรทุกอย่างเรามีครบ a และ b คงที่ตลอดกาลอยู่แล้ว min[ppm] กับ max[ppm] ก็ดูจาก Datasheet คำนวณออกมาได้ 0.358 และ 2.428 ตามลำดับอีกค่าที่ต้องมีคือ RL (ในโค้ดใช้ตัวแปร MQ_RESISTOR) ที่ต้องใช้คำนวณแปลงระดับ ADC เป็นค่า Input ของ Rs สามารถดูได้ด้านหลังบอร์ดเลย
เมื่อมีทุกอย่างครบพร้อมแทนค่าลงสมการทุกอย่าง จะได้โค้ดสุดท้ายดังนี้
ลองเปิด Serial Monitor ดูก็จะได้ผลลัพธ์ออกมา (ช่วง 400-750ppm ยังถือว่าดีอยู่)
เป็นไงบ้างครับกับการวัดคุณภาพอากาศด้วย MQ-135 ราคาถูก ๆ ถ้าจะใช้งานจริงจังก็ต้องบอกว่าซับซ้อนพอสมควร แต่ถ้าค่อย ๆ ทำความเข้าใจทีละนิดก็ไม่ยากเกินความสามารถทุกคน ส่วนการใช้เซ็นเซอร์แก๊สตระกูล MQ ตัวอื่น ๆ ก็มีวิธีใช้งานและเขียนโปรแกรมคล้าย ๆ กันนี่มาก ๆ เลย ทุกท่านคงไปประยุกต์กันได้นะครับ แล้วยังไงถ้ามีโอกาสก็จะกลับมาเขียนบทความเซ็นเซอร์ตระกูล MQ ตัวอื่นกันอีกที สำหรับวันนี้ สวัสดีครับ
FACT Tips :
รู้หรือไม่ แก๊สแต่ละชนิดที่ MQ-135 ตรวจจับได้มีทั้งประโยชน์ในการใช้งานต่าง ๆ และเกิดโทษกับร่างกาย ดังนี้ NH3 - แก๊สแอมโมเนีย เป็นแก๊สไม่มีสีแต่มีกลิ่นรุนแรง มีประโยชน์หลากหลายทั้งทำปุ๋ย ใช้ในตู้แช่เย็น โรงงานน้ำแข็ง แต่ก็เป็นพิษต่อระบบทางเดินหายใจอย่างรุนแรง ระคายเคืองตาและผิวหนัง NOx - สารประกอบไนโตรเจนออกไซด์ ได้แก่ แก๊สไนตริกออกไซด์(์N2O) และแก๊สไนโตรเจนไดออกไซด์(NO2) ซึ่งเกิดจากการสันดาปที่อุณหภูมิสูง(เช่น ในเครื่องยนต์) เป็นสาเหตุหลักของมลพิษทางอากาศ เป็นพิษต่อระบบทางเดินหายใจ สามารถทำปฏิกิริยากับละอองน้ำเกิดเป็นกรดไนตริก(HNO2) ที่มีฤทธิ์กัดกร่อนโลหะได้ Alcohol - เป็นที่ทราบกันดีว่าแอลกอฮอล์มีทั้ง ethyl alcohol ที่กินได้ และ methyl alcohol ที่กินไม่ได้ โดยประโยชน์ของแอลกอฮอล์ก็มีหลากหลาย ทั้งการนำไปฆ่าเชื้อ เป็นเชื้อเพลิง แต่ก็มีฤทธิ์ทำให้ผิวหนังแห้ง ติดไฟง่าย และอาจทำให้ระคายเคืองเยื่อบุทางเดินหายใจ Benzene - สารเบนซีน(C6H6) ใช้เป็นตัวทำละลายในสารต่าง ๆ เช่น สีทาบ้าน หมึกพิมพ์ มีพิษเฉียบพลันคือทำให้ง่วงซึมจนถึงหมดสติ เป็นผื่นแดง ระคายเคืองต่อทางเดินหายใจอย่างรุนแรง และมีพิษเรื้อรังทำให้เกิดโรคหอบหืด ทำลายไขกระดูก ก่อให้เกิดมะเร็ง CO2 - แก๊สคาร์บอนไดออกไซด์เป็นแก๊สที่เราคุ้นเคยกันดี แม้แต่ร่างกายเรายังหายใจขับแก๊สนี้ออกมา ประโยชน์หลัก ๆ คือใช้ทำน้ำแข็งแห้ง โดยปกติแก๊สคาร์บอนไดออกไซด์ในปริมาณน้อยจะไม่ส่งผลใด ๆ กับร่างกาย แต่หากเราสูดแก๊สนี้เข้าร่างกายมากเกินไปจะรู้สึกเปรี้ยวที่ปาก มีเหงื่อออกมาก หัวใจเต้นเร็วขึ้น และหายใจไม่สะดวก
อ้างอิง :
[1] ขาดอากาศหายใจ ขาดน้ำ ขาดอาหาร เราจะอยู่ได้นานเท่าไร?