การใช้งาน DHT11 / DHT22 กับ ESP32 อ่านค่าอุณหภูมิและความชื้น
บทนำ:
DHT11 และ DHT22 เป็นเซ็นเซอร์ยอดนิยมสำหรับวัดอุณหภูมิและความชื้น ใช้งานง่าย ราคาถูก เหมาะกับโปรเจกต์ Smart Farm และ IoT โดยเฉพาะเมื่อต่อกับ ESP32 ซึ่งมีขาให้เลือกใช้เยอะ รองรับการอ่านค่าจากเซ็นเซอร์แบบ Realtime
🔧 สิ่งที่ต้องมี
บอร์ด ESP32 DevKit
เซ็นเซอร์ DHT11 หรือ DHT22
สาย Jumper
🔌 การต่อสาย
| DHT11 / DHT22 | ต่อกับ ESP32 |
|---|---|
| VCC | 3.3V หรือ 5V |
| DATA | GPIO ที่ต้องการอ่านค่า (เช่น GPIO 4) |
| GND | GND |
แสดงผลค่าเซนเซอร์บน Disply แบบต่างๆ
👉 ดูบทความทั้งหมดในหมวด ESP32 DHT
💻 ตัวอย่างโค้ด Arduino (ใช้ไลบรารี DHT)
#include "DHT.h"
#define DHTPIN 4 // ขาที่เชื่อมกับ DATA
#define DHTTYPE DHT22 // เปลี่ยนเป็น DHT11 ถ้าใช้ DHT11
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
dht.begin();
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("อ่านค่าไม่ได้ ลองเช็คสายหรือไฟเลี้ยง");
return;
}
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\tTemperature: ");
Serial.print(t);
Serial.println(" °C");
delay(2000);
}
📌 ความแตกต่างระหว่าง DHT11 และ DHT22
| คุณสมบัติ | DHT11 | DHT22 |
|---|---|---|
| ช่วงอุณหภูมิ | 0–50°C | -40–80°C |
| ความแม่นยำ | ±2°C | ±0.5°C |
| ความชื้น | 20–90% RH | 0–100% RH |
| ความแม่นยำ RH | ±5% RH | ±2–5% RH |
| อัปเดตข้อมูล | 1Hz | 0.5Hz |
| ราคา | ถูกกว่า | แพงกว่า |
❓ FAQ: คำถามที่พบบ่อย
Q: DHT11 กับ DHT22 ใช้ไลบรารีเดียวกันได้ไหม?
A: ใช้ได้ครับ ใช้ไลบรารี DHT.h จาก Adafruit โดยเลือกชนิดเซ็นเซอร์ผ่าน #define DHTTYPE DHT11 หรือ DHT22
Q: ถ้าอ่านค่าไม่ได้ ต้องเช็คอะไรบ้าง?
A:
เช็คการต่อสาย DATA กับ GPIO ที่กำหนดในโค้ด
ตรวจสอบไฟเลี้ยง (3.3V / 5V)
ใช้ DHT.read() ทุก 2 วินาทีขึ้นไป ไม่เร็วเกินไป
Q: ใช้กับ ESP32 ได้ทุกขาไหม?
A: ส่วนใหญ่ได้ครับ แต่ควรหลีกเลี่ยงขา GPIO ที่ใช้เฉพาะ เช่น GPIO 6–11 หรือ GPIO 34–39 (อินพุตเท่านั้น)
Q: ใช้ 3.3V หรือ 5V ดี?
A:
DHT11 ใช้ 3.3V ได้
DHT22 แนะนำให้ใช้ 5V เพื่อความเสถียร
แต่ DATA ต้องดึงลงมาที่ระดับ 3.3V ถ้าใช้ 5V (ESP32 รองรับได้บ้างแต่ไม่แนะนำ)
🔗 สรุป
การใช้งาน DHT11/22 กับ ESP32 เป็นจุดเริ่มต้นที่ดีของสาย Smart Farm เพราะสามารถวัดอุณหภูมิ/ความชื้นได้ง่าย ใช้งบไม่เยอะ และต่อยอดได้กับระบบควบคุมพัดลมหรือระบบรดน้ำอัตโนมัติ เช่นผ่านแอป PoPo หรือรีเลย์แบบ 4 ช่อง
🔗 บทความที่เชื่อมต่อ (Internal Linking):
1. ESP32 คืออะไร? แนะนำบอร์ดยอดนิยมสำหรับสาย Maker
เพื่อปูพื้นฐานเรื่อง ESP32 ก่อนเริ่มใช้งานเซ็นเซอร์
2. ESP32 Web Server Control Relay Module ควบคุมโมดูลรีเลย์
เชื่อมโยงว่าเมื่อรู้ค่าอุณหภูมิ/ความชื้นแล้ว สามารถใช้ ESP32 สั่งเปิด/ปิดรีเลย์เพื่อควบคุมพัดลมหรือปั๊มน้ำได้
3. ESPAsyncWebServer – สร้างหน้า Wi-Fi Manager
สำหรับผู้ที่ต้องการเชื่อม ESP32 เข้ากับ WiFi และดูค่าจาก DHT ผ่านหน้าเว็บ
4. เก็บค่า WiFi ลง Preferences – ไม่ต้องแก้โค้ดใหม่
เพื่อให้การเชื่อมต่อ WiFi ของ ESP32 เสถียรและไม่ต้องตั้งค่าใหม่ทุกครั้ง




