Mục lục:

ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ - Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn: 6 bước
ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ - Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn: 6 bước

Video: ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ - Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn: 6 bước

Video: ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ - Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn: 6 bước
Video: How to use DHT11 DHT22 with NodeMCU ESP8266 to read temperature over WiFi - IoT 2024, Tháng bảy
Anonim
ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ | Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn
ESP8266 Theo dõi nhiệt độ Nodemcu bằng DHT11 trên máy chủ web cục bộ | Nhận nhiệt độ và độ ẩm phòng trên trình duyệt của bạn

Xin chào các bạn hôm nay chúng ta sẽ làm hệ thống giám sát độ ẩm & nhiệt độ sử dụng cảm biến nhiệt độ ESP 8266 NODEMCU & DHT11. Nhiệt độ và độ ẩm sẽ thu được từ Cảm biến DHT11 & nó có thể được nhìn thấy trên trình duyệt mà trang web sẽ được quản lý bởi esp 8266 bằng cách lưu trữ nó trên một Webserver cục bộ.

Bước 1: Những thứ bạn cần

Những thứ bạn cần
Những thứ bạn cần
Những thứ bạn cần
Những thứ bạn cần

Bạn cần những thứ sau cho dự án này: 1x ESP 8266 Nodemcu:

1x DHT11: https://www.utsource.net/itm/p/8831706.html1x breadboard:.:

Vài jumper:

Bước 2: Mạch

Mạch điện
Mạch điện

Mạch rất dễ dàng kết nối tất cả mọi thứ Theo như hiển thị trong sơ đồ

Bước 3: Nhận các thư viện

Nhận các thư viện
Nhận các thư viện
Nhận các thư viện
Nhận các thư viện

Mở IDE Arduino của bạn và đi tới Phác thảo> Bao gồm Thư viện> Quản lý Thư viện. Trình quản lý thư viện sẽ mở ra. Tìm kiếm “DHT” trên hộp Tìm kiếm và cài đặt thư viện DHT từ Adafruit. Sau khi cài đặt thư viện DHT từ Adafruit, hãy nhập “Cảm biến hợp nhất Adafruit” vào hộp tìm kiếm. Cuộn xuống hết cỡ để tìm thư viện và cài đặt nó. Sau khi cài đặt các thư viện, hãy khởi động lại Arduino IDE của bạn.

Bước 4: Mã

Mã số
Mã số

Sau khi thực hiện những việc trên, hãy tải mã sau lên ESP8266 gật gù (vui lòng chọn cổng & bo mạch phù hợp) & trước khi tải mã lên, vui lòng nhập ssid & mật khẩu wifi của bạn vào mã: // Bao gồm thư viện WiFi ESP8266 # include #include "DHT. h "// Bỏ ghi chú một trong các dòng bên dưới cho bất kỳ loại cảm biến DHT nào bạn đang sử dụng! #define DHTTYPE DHT11 // DHT 11 // # define DHTTYPE DHT21 // DHT 21 (AM2301) // # define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 // Thay thế bằng chi tiết mạng của bạn; // Khởi tạo DHT sensor. DHT dht (DHTPin, DHTTYPE); // Các biến tạm thờistatic char catorsTemp [7]; static char fahrenheitTemp [7]; static char MoistTemp [7]; // chỉ chạy một lần khi thiết lập bootvoid () { // Khởi tạo cổng nối tiếp cho mục đích gỡ lỗi Serial.begin (115200); chậm trễ (10); dht.begin (); // Kết nối với mạng WiFi Serial.println (); Serial.print ("Đang kết nối với"); Serial.println (ssid); WiFi.begin (ssid, mật khẩu); while (WiFi.status ()! = WL_CONNECTED) {delay (500); Serial.print ("."); } Serial.println (""); Serial.println ("Đã kết nối WiFi"); // Khởi động máy chủ web server.begin (); Serial.println ("Máy chủ web đang chạy. Đang đợi IP ESP…"); trì hoãn (10000); // In địa chỉ IP ESP Serial.println (WiFi.localIP ());} // chạy đi chạy lại loop () {// Lắng nghe các máy khách mới WiFiClient client = server.available (); if (máy khách) {Serial.println ("Máy khách mới"); // bolean để xác định thời điểm yêu cầu http kết thúc boolean blank_line = true; while (client.connected ()) {if (client.available ()) {char c = client.read (); if (c == '\ n' && blank_line) {// Kết quả đọc của cảm biến cũng có thể 'cũ' lên đến 2 giây (cảm biến rất chậm) float h = dht.readHumidity (); // Đọc nhiệt độ dưới dạng độ C (mặc định) float t = dht.readTempe Heat (); // Đọc nhiệt độ dưới dạng Fahrenheit (isFahrenheit = true) float f = dht.readTempe Heat (true); // Kiểm tra xem có lần đọc nào không và thoát ra sớm (để thử lại). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println ("Không thể đọc từ cảm biến DHT!"); strcpy (c °Temp, "Không thành công"); strcpy (fahrenheitTemp, "Không thành công"); strcpy (MoistTemp, "Không thành công"); } else {// Tính giá trị nhiệt độ theo độ C + độ F và Độ ẩm float hic = dht.computeHeatIndex (t, h, false); dtostrf (hic, 6, 2, c °Temp); float hif = dht.computeHeatIndex (f, h); dtostrf (hif, 6, 2, fahrenheitTemp); dtostrf (h, 6, 2, MoistTemp); // Bạn có thể xóa Serial.print's sau, nó chỉ dành cho mục đích gỡ lỗi Serial.print ("Humidity:"); Serial.print (h); Serial.print ("% / t Nhiệt độ:"); Serial.print (t); Serial.print ("* C"); Serial.print (f); Serial.print ("* F / t Chỉ số nhiệt:"); Serial.print (hic); Serial.print ("* C"); Serial.print (hif); Serial.print ("* F"); Serial.print ("Độ ẩm:"); Serial.print (h); Serial.print ("% / t Nhiệt độ:"); Serial.print (t); Serial.print ("* C"); Serial.print (f); Serial.print ("* F / t Chỉ số nhiệt:"); Serial.print (hic); Serial.print ("* C"); Serial.print (hif); Serial.println ("* F"); } client.println ("HTTP / 1.1 200 OK"); client.println ("Loại-Nội dung: text / html"); client.println ("Kết nối: đóng"); client.println (); // trang web thực tế của bạn hiển thị ứng dụng khách nhiệt độ và độ ẩm

Bước 5: Lấy IP

Nhận IP
Nhận IP

Bạn xem nhiệt độ và độ ẩm mà chúng ta cần để lấy IP của trang web. Vì vậy, hãy đảm bảo rằng esp8266 của bạn được kết nối với PC, sau đó mở màn hình nối tiếp và trên màn hình nối tiếp, bạn có thể thấy IP của trang web máy chủ web ESP8266 của mình.

Bước 6: Kiểm tra nhiệt độ & độ ẩm của bạn trên trình duyệt

Kiểm tra nhiệt độ & độ ẩm của bạn trên trình duyệt
Kiểm tra nhiệt độ & độ ẩm của bạn trên trình duyệt

Vì vậy, sau khi nhận được IP của nút ESP8266 của bạn, chỉ cần mở trình duyệt trong PC hoặc Di động nhưng đảm bảo PC / thiết bị di động của bạn được kết nối với cùng một mạng với Nodemcu / ESP8266 của bạn và sau đó truy cập trình duyệt của bạn (nếu bạn đang sử dụng thiết bị di động, vui lòng sử dụng trình duyệt mặc định tức là đối với Android, hãy sử dụng chrome) và sau đó nhập IP mà chúng tôi đã nhận được ở bước trước và trang web cục bộ sẽ hiển thị với độ ẩm và nhiệt độ như tôi hiển thị trong hình ảnh.

Đề xuất: