เซ็นเซอร์สำหรับ Internet of Things (ภาคต่อ)

ในบทความฉบับก่อนผมได้แนะนำเซ็นเซอร์ประเภทต่างๆ ที่จะนำมาใช้สร้าง Wireless Sensor Network ไปบ้าง โดยเฉพาะเซ็นเซอร์ที่ใช้วัดการสัมผัสและแรง (Force) เช่น แรงกด แรงบิด แรงหมุน เป็นต้น ในบทความฉบับนี้ผมจะนำเสนอเซ็นเซอร์ประเภทที่ใช้ตรวจวัดคุณสมบัติทางกายภาพชนิดอื่นที่ไม่ใช่แรงเพิ่มเติมครับ

เซ็นเซอร์วัดก๊าซต่างๆ ในอากาศ

เซ็นเซอร์วัดก๊าซต่างๆ ในอากาศ

เซ็นเซอร์วัดอุณภูมิแบบกันน้ำ

เซ็นเซอร์วัดอุณภูมิแบบกันน้ำ

เซ็นเซอร์วัดความชื้นและอุณหภูมิ

เซ็นเซอร์วัดความชื้นและอุณหภูมิ

เซ็นเซอร์วัดฝุ่นละอองในอากาศ

เซ็นเซอร์วัดฝุ่นละอองในอากาศ

 

ประเภทเซ็นเซอร์เพิ่มเติม เซ็นเซอร์วัดอุณหภูมิและสภาพอากาศ
เซ็นเซอร์ที่ใช้ในการวัดอุณหภูมินั้นมีหลายประเภทและสามารถวัดอุณหภูมิของสสารได้หลายรูปแบบ เช่น การวัดอุณหภูมิของอากาศโดยการตั้งเซ็นเซอร์ให้ลอยไว้ในอากาศเฉยๆ หรือวัดอุณหภูมิของน้ำโดยสามารถจุ่มเซ็นเซอร์ลงไปในน้ำ ตัวเซ็นเซอร์ประเภทนี้จะถูกติดตั้งไว้ในอุปกรณ์ปิดสนิทกันน้ำได้ นอกจากนี้ ยังมีเซ็นเซอร์ที่วัดอุณหภูมิของวัตถุโดยใช้วิธีแนบสัมผัสตัวเซ็นเซอร์ไปกับวัตถุด้วย เซ็นเซอร์แต่ละชนิดนั้นมีช่วงวัดและความแม่นยำที่แตกต่างกัน

ดังนั้นผู้ใช้งานจึงควรอ่าน Datasheet ของเซ็นเซอร์นั้นๆ ก่อนนำไปใช้งาน การนำเซ็นเซอร์ประเภทนี้ไปใช้งานมักทำเพื่อวัดอุณหภูมิเพื่อปรับการทำงานของอุปกรณ์บางอย่าง เช่น วัดอุณหภูมิห้องเพื่อปรับเร่งเครื่องปรับอากาศ หรือวัดอุณหภูมิของเตาอบเพื่อเร่งหรือลดความร้อน เป็นต้น นอกจากนี้ ยังสามารถใช้เซ็นเซอร์ประเภทนี้เพื่อวัดความร้อนของตัวบอร์ด Arduino เองได้ด้วย เพื่อป้องกันไม่ให้บอร์ดทำงานหนักจนร้อนเกินไป และยังใช้เซ็นเซอร์นี้เพื่อปรับการวัดของเซ็นเซอร์ตัวอื่นได้ เนื่องจากเซ็นเซอร์บางประเภทจะให้ผลการวัดที่เปลี่ยนแปลงไปตามอุณหภูมิ ผู้เขียนโปรแกรมจึงต้องนำค่าอุณหภูมิปัจจุบันมาเป็นส่วนหนึ่งของการคำนวณค่าจากการวัดของเซ็นเซอร์นั้น

เซ็นเซอร์วัดความชื้นนั้นสามารถใช้วัดความชื้นในอากาศได้ และมักใช้ร่วมกับเซ็นเซอร์วัดอุณหภูมิ บางบริษัทจะผลิตเซ็นเซอร์ที่สามารถวัดได้ทั้งอุณหภูมิและความชื้นในตัว เดียวกันเลย การนำไปใช้งานมักนำไปใช้ตรวจวัดสภาพอากาศ เช่น วัดความชื้นในอากาศเพื่อควบคุมเครื่องปรับอากาศ หรือวัดสภาพอากาศเพื่อวิเคราะห์คุณภาพของผลผลิตทางการเกษตร เป็นต้น

เซ็นเซอร์วัดความกดอากาศก็เป็นอีกหนึ่งประเภทที่ใช้วัดสภาพแวดล้อม สามารถวัดความกดอากาศเพื่อประเมินสภาพอากาศได้ นอกจากนี้ ยังนำความกดอากาศที่วัดได้ไปประเมินค่าความสูงจากระดับน้ำทะเลของตัวเซ็นเซอร์นั้นได้ด้วย

เซ็นเซอร์วัดฝุ่นละออง (Dust sensor) นั้นทำงานโดยวัดการกระเจิงของแสงที่ฉายผ่านอากาศ อากาศที่มีฝุ่นละอองมากจะทำให้เกิดการกระเจิงของแสงมากตามไปด้วย อุปกรณ์นี้สามารถนำไปวัดปริมาณฝุ่นละอองในอากาศเพื่อตรวจสอบคุณภาพอากาศได้

เซ็นเซอร์วัดคุณภาพอากาศ (Air quality sensor) นั้นจะวัดก๊าซอันตรายที่ปะปนในอากาศ เช่น คาร์บอนมอน๊อกไซด์ แอลกอฮอล์ ฟอมัลดีไฮด์ เป็นต้น

เซ็นเซอร์วัดระยะทางด้วยคลื่นแสงและแสงอินฟาเรต

เซ็นเซอร์วัดระยะทางด้วยคลื่นแสง

เซ็นเซอร์วัดระยะทางด้วยคลื่นแสงและแสงอินฟาเรต

เซ็นเซอร์วัดระยะทางด้วยคลื่นแสงอินฟาเรต

เซ็นเซอร์วัดความเคลื่อนไหวแบบอินฟาเรต

เซ็นเซอร์วัดความเคลื่อนไหวแบบอินฟาเรต

 

มีเซ็นเซอร์ที่แยกวัดก๊าซแต่ละประเภทและเซ็นเซอร์ที่วัดก๊าซทั้งหมดโดยรวมด้วย สามารถนำไปใช้วัดคุณภาพของอากาศโดยรวม หรือแยกวัดก๊าซแต่ละประเภท เช่นวัดแอลกอฮอล์ในลมหายใจ เป็นต้น

โดยรวมแล้วเซ็นเซอร์ที่กล่าวไปนี้มักใช้เป็นอุปกรณ์ตรวจวัดคุณภาพอากาศทั้งภายในและภายนอกอาคาร เช่น โปรเจ็กต์หนึ่งที่ผมทราบก็ใช้เซ็นเซอร์วัดฝุ่นละอองและวัดเสียง (ที่กล่าวถึงในบทความที่แล้ว) ร่วมกับ GPS นำไปติดตั้งบนจักรยานแล้วขับวนรอบมหาวิทยาลัยเพื่อทดสอบคุณภาพของอากาศและเสียงรบกวนโดยรอบ เป็นต้น

เซ็นเซอร์วัดระยะทางและการเคลื่อนไหว
เซ็นเซอร์วัดระยะทางแบบไม่ต้องสัมผัสนั้นมีสองเทคนิคหลักๆ คือวัดด้วยคลื่นเสียงอัลตราโซนิค (คลื่นเสียงในช่วงความถี่สูงที่มนุษย์ไม่ได้ยิน) และวัดด้วยแสงอินฟราเรดหรือเลเซอร์ หลักการทำงานจะคล้ายกันนั่นคือ ตัวเซ็นเซอร์จะส่งคลื่นเสียงหรือแสงออกไปสะท้อนวัตถุกลับมา และวัดเวลาที่ใช้ในการสะท้อนคลื่นหรือองศาที่แสงสะท้อนกลับมา นำมาคำนวณเป็นระยะทางได้ แน่นอนว่า คุณสมบัติของคลื่นเสียงและแสงอินฟราเรดนั้นต่างกัน ดังนั้นผู้ใช้ก็ต้องเลือกเซ็นเซอร์ให้เหมาะสมกับงาน เช่น คลื่นเสียงอาจใช้วัดระยะของวัตถุที่มีความอ่อนนุ่มได้ไม่ดีเท่าไร เพราะเสียงจะถูกดูดกลืนได้ง่าย หรือเซ็นเซอร์แบบอินฟราเรดอาจใช้ในที่แจ้งกลางแดดได้ไม่ดีนักเพราะมีคลื่นความร้อนรบกวน

การนำเซ็นเซอร์นี้ไปใช้งานโดยหลักก็คือ ใช้วัดระยะของวัตถุ อาจใช้เป็นเซ็นเซอร์ป้องกันการชนหรือตกของหุ่นยนต์ได้ (เช่น มีวัตถุเข้ามาใกล้ในแนวราบ หรือระยะห่างจากพื้นเพิ่มขึ้นอย่างรวดเร็วก็คือเข้าใกล้ขอบโต๊ะหรือบันได) ใช้วัดระดับน้ำจากขอบบ่อก็ได้ (น้ำจะสะท้อนคลื่นเสียงได้ดี)

e197

ฉบับที่ 197 เดือนพฤษภาคม

กระเป๋าเงิน Virtual เชื่อมเศรษฐกิจดิจิตอล

เซ็นเซอร์วัดการเคลื่อนไหวนั้นใช้เทคนิคที่แตกต่างจากการวัดระยะ นั่นคือจะใช้หลัก Passive Infrared ที่ไม่ใช้การยิงแสงไปสะท้อนวัตถุ แต่จะใช้เซ็นเซอร์อินฟราเรดสองตัวหรือมากกว่าในการตรวจจับการเคลื่อนไหว เมื่อไม่มีการเคลื่อนไหวใดเซ็นเซอร์ทั้งสองตัวนั้นจะเห็นรังสีอินฟราเรดในปริมาณที่เท่าๆ กัน แต่เมื่อมีการเคลื่อนไหวผ่านหน้าเซ็นเซอร์ ปริมาณแสงที่เซ็นเซอร์แต่ละตัวจะวัดได้นั้นจะเปลี่ยนไปเพราะวัตถุจะบังแสงที่มาเข้าเซ็นเซอร์ เซ็นเซอร์ตัวหนึ่งจะวัดแสงได้น้อยลงก่อนอีกตัวขึ้นกับทิศทางการเคลื่อนไหวของวัตถุที่ผ่านเข้ามาหน้าเซ็นเซอร์ อุปกรณ์นี้ใช้ประโยชน์ได้หลายอย่าง เช่น เปิดไฟอัตโนมัติเมื่อมีคนเดินเข้ามาในห้อง หรือตรวจจับผู้บุกรุกยามวิกาล เป็นต้น

โปรเจ็กต์หนึ่งที่ผมทราบก็ใช้เซ็นเซอร์ วัดฝุ่นละอองและวัดเสียง (ที่กล่าวถึงในบทความที่แล้ว) ร่วมกับ GPS นำไปติดตั้งบนจักรยานแล้วขับวนรอบมหาวิทยาลัยเพื่อทดสอบคุณภาพของอากาศและเสียงรบกวนโดยรอบ

ประเด็นที่ต้องคำนึงถึงในการวัดระยะทางและการเคลื่อนไหวก็คือ ขอบเขตที่เซ็นเซอร์จะวัดได้ เซ็นเซอร์แต่ละตัวจะมีระยะต่ำสุดและสูงสุดที่วัดได้อย่างแม่นยำแสดงไว้ใน Datasheet ถ้าวัตถุเข้ามาอยู่ในระยะใกล้กว่าระยะต่ำสุด

อาจวัดระยะได้ผิดเพี้ยนไปมาก หรือถ้าอยู่ห่างจากระยะไกลสุดอาจไม่สามารถวัดได้เลย นอกจากนี้ ผู้ใช้ยังต้องคำนึงถึงมุมในการวัดด้วย เซ็นเซอร์แบบอัลตราโซนิกส์จะส่งคลื่นออกไปในมุมที่กว้างกว่าแบบอินฟราเรด ดังนั้น จะตรวจจับวัตถุขนาดเล็กได้ดีกว่า เซ็นเซอร์อินฟราเรดจะวัดระยะจากวัตถุได้ก็ต้องยิงแสงไปยังวัตถุนั้นโดยตรง เซ็นเซอร์วัดการเคลื่อนไหวนั้นอาจวัดได้ไม่ครบถ้วนทุกมุมทุกองศาขึ้นกับจำนวนเซ็นเซอร์ที่ใช้

เซ็นเซอร์วัดกระแสไฟฟ้าและสนามแม่เหล็ก
เซ็นเซอร์ที่ใช้วัดสนามแม่เหล็กนั้นเรียกว่า Hall Effect Sensor ซึ่งจะเปลี่ยนความต่างศักย์ไปตามความแรงของสนามแม่เหล็กที่ตรวจวัดได้ อุปกรณ์อีกประเภทเรียกว่า Reed Switch ซึ่งเป็นสวิทช์ไฟฟ้าที่เปิดปิดด้วยสนามแม่เหล็ก นั่นคือ ถ้ามีสนามแม่เหล็กจะทำให้สวิทช์ปิด ถ้าไม่มีก็จะทำให้สวิทช์เปิด รูปที่ 7 ด้านขวาเป็นรูปของ Reed Switch จะเห็นว่าถ้ามีแม่เหล็กเข้าใกล้แผ่นเหล็กข้างในสองแผ่นจะงอเข้ามาแนบชิดกัน ทำให้มีกระแสไฟฟ้าไหล

อุปกรณ์ทั้งสองประเภทนี้ที่นำมาใช้กับ Arduino อาจจะไม่ละเอียดพอที่จะวัดสนามแม่เหล็กของโลกได้นะครับ จะมีประโยชน์ก็ต้องใช้คู่กับแม่เหล็กด้วย ตัวอย่างการนำไปใช้งานที่พวกเราน่าจะคุ้นเคยก็คือ การเปิดปิดหน้าจอสมาร์ทโฟนหรือแท็บเบล็ต ในตัวเครื่องจะมีเซ็นเซอร์วัดสนามแม่เหล็กอยู่ และที่ฝาปิด (Cover) ก็จะฝังแม่เหล็กไว้ เมื่อเราปิดฝาเครื่องแม่เหล็กก็จะเข้ามาใช้เซ็นเซอร์ ทำให้เครื่องรับทราบว่าปิดฝาแล้วและดับหน้าจอให้ได้ ด้วยหลักการเดียวกัน เราสามารถนำเซ็นเซอร์ไปใช้ตรวจจับการเปิดปิดประตูหรือหน้าต่างได้เช่นกัน และใช้เป็นอุปกรณ์ตรวจจับการเคลื่อนไหวของสิ่งของ (ที่ติดแม่เหล็ก) ว่าเข้าใกล้หรือเคลื่อนผ่านตัวเซ็นเซอร์หรือไม่

หลักการนี้นำไปประยุกต์ใช้เป็นวิธีนับรอบของสิ่งหมุนเช่นกังหันได้ด้วย โดยติดแม่เหล็กไว้ที่ขอบด้านหนึ่งของกังหันและติดเซ็นเซอร์ไว้ใกล้ๆ เมื่อเซ็นเซอร์ตรวจจับได้ว่าแม่เหล็กเข้ามาใกล้แล้วก็ออกไปเป็นจำนวนสอง ครั้งก็แปลว่ากังหันหมุนครบหนึ่งรอบแล้ว

เซ็นเซอร์วัดสนามแม่เหล็ก

เซ็นเซอร์วัดสนามแม่เหล็ก

เซ็นเซอร์วัดกระแสไฟฟ้าแบบต่อสาย

เซ็นเซอร์วัดกระแสไฟฟ้าแบบต่อสาย

08b-current-clamp
 

เซ็นเซอร์วัดกระแสไฟฟ้ามีสองรูปแบบก็คือ ประเภทที่ต้องต่อสายไฟที่ต้องการวัดกระแสผ่านตัวเซ็นเซอร์เลย กับแบบที่ใช้ที่คีบหนีบคร่อมสายไฟเพื่อวัดกระแส แน่นอนว่าแบบที่สองน้ันใช้งานง่ายกว่าเนื่องจากไม่ต้องตัดและเดินสายไฟใหม่ แต่ผู้ใช้ควรศึกษา Datasheet ว่าเซ็นเซอร์แต่ละตัวนั้นวัดกระแสไฟได้สูงสุดแค่ไหน และวัดได้ทั้งกระแส AC หรือ DC หรือไม่ด้วย การนำไปใช้งานก็ค่อนข้างตรงตัวคือใช้วัดกระแสไฟฟ้าที่ไหลผ่านสายไฟ ซึ่งนำไปประยุกต์ใช้ในระบบตรวจวัดไฟฟ้าและควบคุมอุปกรณ์เพื่อประหยัดไฟฟ้าได้

สรุป
ในบทความนี้ผมได้นำเสนอเซ็นเซอร์ประเภทต่างๆ เพิ่มเติมจากบทความครั้งก่อน จะเห็นได้ว่ามีเซ็นเซอร์ที่ใช้วัดค่าประเภทต่างๆ ให้ใช้อย่างมากมาย และการวัดค่าบางประเภทก็มีเซ็นเซอร์มากกว่าหนึ่งแบบให้เลือกใช้ด้วย ผู้ใช้ควรศึกษา Datasheet เพื่อประเมินว่าเซ็นเซอร์ประเภทไหนเหมาะสมกับงานที่ต้องการมากที่สุด การนำเซ็นเซอร์เหล่านี้ไปประยุกต์ใช้ก็ต้องใช้ความคิดสร้างสรรค์และประสบการณ์ ผมแนะนำว่าให้ผู้สนใจลองไปหาวิดีโอในยูทูปที่โชว์ผลงานในการนำ Arduino ไปประยุกต์ใช้ของนักพัฒนาหลายๆ คนที่กระจายตัวกันอยู่ทั่วโลก จะได้เห็นวิธีการพลิกแพลงหลายรูปแบบมากขึ้นด้วย

Contributor

sethavidh

ดร.เสฎฐวิทย์ เกิดผล

จบการศึกษาระดับปริญญาเอก สาขาวิศวกรรมศาสตร์คอมพิวเตอร์ มหาวิทยาลัยเซาท์เธิร์นแคลิฟอร์เนียในปี 2548 ปัจจุบันเป็นอาจารย์ประจำภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยเกษตรศาสตร์ นอกเหนือจากการสอนแล้ว ยังได้ร่วมมือกับภาคธุรกิจและรัฐวิสาหกิจสร้างและออกแบบระบบสารสนเทศ จัดตั้งศูนย์ส่งเสริมการใช้งานโปรแกรมรหัสเปิด (Open Source Software) โดยเน้นที่โปรแกรมระบบสำหรับบริษัทและธุรกิจเป็นหลัก

Twitter: twitter.com/Sethavidh

Website: Sethavidh@gmail.com