Hệ thống giám sát chất lượng nước
Trung cấp20/6/2026

Hệ thống giám sát chất lượng nước

Xây dựng hệ thống giám sát chất lượng nước với các tính năng: đo độ đục của nước, đo nhiệt độ, TDS, pH, độ đục của nước, hiển thị trạng thái cảnh báo và mở rộng gửi dữ liệu realtime qua MQTT. Phù hợp cho theo dõi chất lượng nước hồ cá, thủy canh, bể chứa nước hoặc mô hình giám sát nước tham khảo. Lưu ý: Kết quả đo từ cảm biến phổ thông không thay thế thiết bị kiểm định chuyên dụng hoặc xét nghiệm phòng lab.

ESP32IoTWater QualityMQTTArduino IDETDSpHDS18B20
0 lượt thích2 người đã làm1 giờ7 bước9 linh kiện
← Quay lại dự án
Hướng dẫn chi tiết

Phần 2: Kiến trúc hệ thống và sơ đồ đấu nối

Trình bày kiến trúc dữ liệu, bảng chân kết nối và cách bảo vệ chân ADC của ESP32 khi dùng cảm biến analog.

Cập nhật 20/06/2026

Phần 2: Kiến trúc hệ thống và sơ đồ đấu nối

Hệ thống gồm ba khối chính: cảm biến nước, ESP32 xử lý dữ liệu và khối hiển thị/cảnh báo/cloud.

[Water Sensors]
  ├── DS18B20 Temperature Sensor
  ├── TDS Sensor
  ├── pH Sensor
  └── Turbidity Sensor
        │
        ▼
[ESP32]
  ├── Đọc dữ liệu cảm biến
  ├── Lọc nhiễu
  ├── Tính toán giá trị đo
  ├── Đánh giá trạng thái nước
  └── Gửi Serial / MQTT / Dashboard
        │
        ▼
[Output]
  ├── Serial Monitor
  ├── LED / Buzzer
  ├── OLED Display
  └── MQTT Dashboard

2.1. Bảng chân kết nối tổng hợp

Thiết bịChân thiết bịESP32Ghi chú
DS18B20DATAGPIO4Cần điện trở kéo lên 4.7kΩ.
TDS SensorAOGPIO34ADC1, input-only.
pH SensorAOGPIO35ADC1, input-only.
Turbidity SensorAOGPIO32Cần chia áp nếu output lớn hơn 3.3V.
LED xanhAnodeGPIO26Báo trạng thái NORMAL.
LED đỏAnodeGPIO27Báo WARNING/DANGER.
BuzzerINGPIO25Bật khi DANGER hoặc SENSOR_ERROR.

2.2. Kết nối DS18B20

DS18B20 dùng giao tiếp 1-Wire. Chân DATA cần điện trở kéo lên 4.7kΩ về 3.3V.

3.3V ----[4.7kΩ]---- DATA DS18B20
                    │
GPIO4 --------------┘
GND ---------------- GND DS18B20

2.3. Bảo vệ chân ADC ESP32

ESP32 chỉ nên nhận tín hiệu analog tối đa khoảng 3.3V. Nếu module turbidity hoặc pH xuất tín hiệu cao hơn, cần dùng chia áp.

AO Sensor ---- R1 10kΩ ----+---- GPIO32 ESP32
                           |
                         R2 20kΩ
                           |
                          GND

Công thức chia áp:

Vout = Vin × R2 / (R1 + R2)

Với R1 = 10kΩ và R2 = 20kΩ, ESP32 nhận khoảng 66.7% điện áp gốc từ cảm biến.