การใช้งาน PM 2.5 Sensor กับ UNO wifi rev2 (ตอนที่ 1) วันนี้เรามาลองใช้
sensor ตรวจวัดค่าฝุ่น PM 2.5 และเก็บข้อมูลไว้เพื่อแสดงกันบน Thingspeak กันนะครับ


เริ่มจากการเปรียบเทียบ spec กับรุ่นก่อนหน้าอย่าง UNO wifi ที่ออกมาขายช่วงปี 2016 จะเห็นจุดต่างที่สำคัญ คือ ตัวไมโครคอนโทรเลอร์ที่ใช้ จะเปลี่ยนเป็นรุ่นใหม่ ATmega 4809 ซึ่งถึงแม้จะเป็นสถาปัตยกรรมแบบ 8 บิตเหมือนกันแต่มี Flash memory มากขึ้นเป็น 48 kB และที่สำคัญคือเปลี่ยนชิปที่ใช้ทำหน้าที่ติดต่อผ่านระบบ Wifi เป็น ESP32 u-blox รุ่นใหม่กว่าเดิม

ข้อมูลการติดตั้งเพื่อใช้
UNO Wifi Rev 2 อ่านได้ที่บทความของเราที่นี่ครับ
https://www.arduitronics.com/article/67https://www.arduitronics.com/article/68และจากผู้ผลิตโดยตรงที่
เมื่อลองทดสอบการติดต่อกับเน็ตเวอร์คสำเร็จแล้ว ให้ทดสอบต่อด้วยการต่อสาย Tx, Vcc และ GND กับบอร์ด
UNO Wifi Rev 2 กับ
PMS sensor ดังรูป

และลองทดสอบการทำงานของ
PMS sensor ตามบทความการใช้งาน PMS
https://www.arduitronics.com/article/69/
หากอ่านค่าได้ตามบทความก่อนหน้านี้ก็ถึงเวลาลองโยนค่าที่อ่านได้ไปที่ thingspeak.com กัน
สำหรับใครที่ยังไม่เคยใช้งาน thingspeak.com ผมอธิบายง่ายๆครับ thingspeak เป็นเว็บไซต์สำหรับ Maker ที่ต้องการพัฒนา Internet of thing (IoT) ซึ่งทำหน้าที่รับฝากข้อมูลที่วัดค่าจาก sensor ไปที่ server และแสดงค่าออกมาให้ดูเป็นกราฟ มีข้อดีคือ
- แสดงค่าเป็น graph ที่ update แบบ real time ตามที่อุปกรณ์ IoT ส่งค่าไป
- รับฝากค่าเพื่อให้อุปกรณ์ IoT สามารถใช้เพื่อกำหนดสถานะ เช่น การสั่งให้เปิดปิด หรือแสดงค่าการสถานะ
- แสดงค่าได้หลายค่าพร้อมๆกัน บน Channel เดียว เช่น สามารถรับค่าอุณหภูมิ ความชื้น ค่า PM 2.5 ได้
- ค่าต่างๆที่ส่งขึ้นไปสามารถแสดงได้บนหลายๆ platform เช่น เว็บไซต์ / Application หรือ แสดงบนหน้าจอของอุปกรณ์ IoT
- Export ค่าไปวิเคราะห์ต่อบนโปรแกรมที่ซับซ้อนขึ้นเช่น Matlab หรือ บนโปรแกรม Python
โดยที่ทั้งหมดนี้สามารถใช้งานได้ฟรี (สำหรับฟังก์ชั่นพื้นฐาน) แบบไม่ต้องพัฒนาโปรแกรมบน Server ของตัวเอง ไม่ต้องเช่าพื้นที่เพื่อตั้ง server รับและส่งค่าแบบสมัยก่อน
จากนั้นให้ลองสมัครใช้งาน thingspeak ดูที่
https://thingspeak.com/users/sign_up ดังรูป

จากนั้นเราต้องใส่ค่าที่สำคัญ 2 ค่าลงใน sketch ของเราใน Arduino IDE ได้แก่ Channel ID และ API key นะครับ

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

ซึ่งจะเห็นว่าส่วนบนแสดงสถานะการต่อกับเน็ตเวอร์ค และส่วนต่อมาแสดงผลการวัดค่าที่ได้จาก Sensor PMS3003 และ ส่วนสุดท้าย "Channel update successful." แสดงค่าค่าที่อ่านได้ถูกส่งต่อไปเก็บที่ thingspeak.com สำเร็จครับ
เสร็จเรียบร้อยสำหรับการส่งค่าขึ้นไปเก็บและแสดงบนเว็บนะครับ เพื่อนๆสามารถ download application thingspeak มาใช้เพื่อติดตามค่าที่วัดได้บนโทรศัพท์มือถือได้อีกด้วย
คิดว่าคงไม่ยากเกินไปสำหรับข้อมูลในบทความนี้นะครับ
โดย Mountain "A"