Field Log

IoT Air Monitoring System

สถาปัตยกรรมของระบบตรวจวัดคุณภาพอากาศที่พัฒนาโดยใช้ ESP32 + PMS7003 + SHT31

4 MIN READ
05/04/2026
IoT Air Monitoring System

📡 System Architecture: IoT Air Monitoring System

สถาปัตยกรรมของระบบตรวจวัดคุณภาพอากาศที่พัฒนาโดยใช้ ESP32 + PMS7003 + SHT31 ซึ่งทำหน้าที่อ่านค่าจากเซนเซอร์และส่งข้อมูลไปยังระบบ backend เพื่อแสดงผลบน dashboard ตามที่ได้พัฒนาเครื่องวัดสภาพอากาศในบทความนี้


🧩 System Overview

ระบบถูกออกแบบเป็นแบบ IoT End-to-End Architecture แบ่งออกเป็น 4 ชั้นหลัก:

  • Device Layer → ESP32 + Sensors
  • Communication Layer → WiFi / HTTP
  • Backend Layer → API + Database
  • Application Layer → Web Dashboard

🔷 System Diagram

flowchart TD A[Air Environment] --> B[PMS7003 Sensor] A --> C[SHT31 Sensor] B --> D[ESP32] C --> D[ESP32] D --> E[Data Processing] E --> F[JSON Payload] F --> G[WiFi / Internet] G --> H[API Server] H --> I[Database] I --> J[Web Dashboard] J --> K[User]

⚙️ Device Layer (ESP32 + Sensors)

อุปกรณ์หลักในระบบประกอบด้วย:

  • ESP32

    • ทำหน้าที่เป็น microcontroller
    • เชื่อมต่อ WiFi
    • อ่านค่าจากเซนเซอร์
  • PMS7003

    • วัดค่า PM1.0 / PM2.5 / PM10
    • สื่อสารผ่าน UART
  • SHT31

    • วัดอุณหภูมิและความชื้น
    • สื่อสารผ่าน I2C

🔄 Data Processing Flow

ESP32 จะทำงานตามลำดับดังนี้:

  1. อ่านค่าจาก PMS7003
  2. อ่านค่าจาก SHT31
  3. รวมข้อมูลเป็นโครงสร้างเดียว
  4. แปลงเป็น JSON
  5. ส่งข้อมูลไปยัง server

📦 Example JSON Payload

{ "device_id": "ESP32-001", "temperature": 32.5, "humidity": 68.2, "pm1_0": 12, "pm2_5": 25, "pm10": 40, "timestamp": "2026-04-05T10:30:00Z" }

🌐 Communication Layer

ESP32 ใช้ WiFi ในการเชื่อมต่ออินเทอร์เน็ต และส่งข้อมูลไปยัง backend ผ่าน:

  • MQTT API

🖥️ Backend Layer

ฝั่ง server ทำหน้าที่:

  • รับข้อมูลจาก ESP32
  • ตรวจสอบความถูกต้องของข้อมูล
  • บันทึกลงฐานข้อมูล
  • ให้บริการ API สำหรับ frontend

📊 Application Layer (Dashboard)

Dashboard (iot.weaq.cc) ใช้สำหรับ:

  • แสดงค่าปัจจุบันแบบ real-time
  • แสดงกราฟย้อนหลัง
  • วิเคราะห์แนวโน้มของฝุ่นและสภาพอากาศ
  • รองรับหลาย device

🧠 Design Considerations

  • รองรับการเพิ่มจำนวนอุปกรณ์ (scalable)
  • แยกหน้าที่แต่ละ layer ชัดเจน
  • สามารถต่อยอดไประบบแจ้งเตือน (Telegram / Email)
  • รองรับการเปลี่ยน protocol (HTTP → MQTT)

🔚 Summary

ระบบนี้เป็น IoT monitoring system แบบ end-to-end ที่เชื่อมต่อตั้งแต่ hardware sensor ไปจนถึง web dashboard โดยมี ESP32 เป็นตัวกลางในการรวบรวมและส่งข้อมูล เพื่อให้สามารถติดตามคุณภาพอากาศได้แบบเรียลไทม์และย้อนหลัง

Share this log to social network