WiFi temperature – humidity station (ESP32)
LibreINO

WiFi temperature – humidity station (ESP32)

Gumawa ng temperature at humidity station gamit ang ESP32 at DHT22, tingnan ang sukat sa telepono gamit ang WiFi. Step-by-step na gabay, libreng source code.

Mga file na ida-download

Lisensyang CC BY 4.0 — libreng gamitin, banggitin ang pinagmulang “OctaX.vn”. Demo sa totoong bersyon, kailangan ng libreng account para mag-download.

Gusto ninyong baguhin ayon sa inyong gusto?

Binabago ng OctaX assistant ang sukat, nilalaman, at branding ayon sa request — tantiya ≈ 4 credit.

✦ Pag-customize gamit ang AI

Mga materyales

  • ESP32 DevKit
  • DHT22 sensor (AM2302)
  • 10 kΩ na resistor
  • Jumper wire, breadboard
  • USB cable, 5V power supply

Mga hakbang

  1. I-install ang Arduino IDE, idagdag ang ESP32 board (Espressif) at ang "DHT sensor library" ng Adafruit.
  2. Ikonekta ang DHT22: pin 1 → 3V3, pin 2 (DATA) → GPIO4 at 10 kΩ na pull-up resistor papuntang 3V3, pin 4 → GND.
  3. Buksan ang source code, ilagay ang pangalan ng WiFi at password sa TEN_WIFI, MAT_KHAU.
  4. I-upload ang code, buksan ang Serial Monitor (115200) para makita ang IP address.
  5. Buksan ang browser ng telepono (sa parehong WiFi) at pumunta sa IP address na iyon: kusang nagre-refresh ang pahina kada 10 segundo.

Source code

// Trạm đo nhiệt độ – độ ẩm WiFi — OctaX.vn (CC BY 4.0)
// Bo: ESP32. DHT22 DATA → GPIO4 (kéo lên 10 kΩ về 3V3). Cần thư viện "DHT sensor library" (Adafruit).
#include 
#include 
#include 

const char* TEN_WIFI = "ten-wifi";      // ← điền tên WiFi
const char* MAT_KHAU = "mat-khau-wifi"; // ← điền mật khẩu WiFi

DHT dht(4, DHT22);
WebServer may(80);
float nhietDo = NAN, doAm = NAN;
unsigned long lanDoTruoc = 0;

// Trang web gọn: tự làm mới mỗi 10 giây
void trangChu() {
  String h = ""
             "Trạm đo"
             ""
             "

Trạm đo OctaX

"; if (isnan(nhietDo)) h += "

Chưa đọc được cảm biến — kiểm tra dây DATA và điện trở kéo lên.

"; else h += "

" + String(nhietDo, 1) + " °C

" "

" + String(doAm, 0) + " %

"; may.send(200, "text/html; charset=utf-8", h); } // Trả dữ liệu dạng JSON cho ứng dụng khác đọc (vd OctaX MiniApp) void duLieu() { may.send(200, "application/json", "{\"nhietDo\":" + String(nhietDo, 1) + ",\"doAm\":" + String(doAm, 0) + "}"); } void setup() { Serial.begin(115200); dht.begin(); WiFi.begin(TEN_WIFI, MAT_KHAU); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.print("\nMở trình duyệt vào: http://"); Serial.println(WiFi.localIP()); may.on("/", trangChu); may.on("/du-lieu", duLieu); may.begin(); } void loop() { may.handleClient(); // DHT22 chỉ nên đọc tối đa 1 lần / 2 giây if (millis() - lanDoTruoc > 2500) { lanDoTruoc = millis(); float t = dht.readTemperature(), a = dht.readHumidity(); if (!isnan(t) && !isnan(a)) { nhietDo = t; doAm = a; } } }

Mga template sa parehong grupo

3-palapag na kahoy na wall shelf
LibreCSV

3-palapag na kahoy na wall shelf

Gumawa ng 3-palapag na kahoy na wall shelf 800×600 mm: cutting list ng tabla, mga gamit, hakbang sa pag-assemble at matibay na pagkabit. Libreng CSV.

🛠️ DIY – Gawin mo mismo