Mục lục:

Cách sử dụng cảm biến DHT11 bằng Arduino: 5 bước
Cách sử dụng cảm biến DHT11 bằng Arduino: 5 bước

Video: Cách sử dụng cảm biến DHT11 bằng Arduino: 5 bước

Video: Cách sử dụng cảm biến DHT11 bằng Arduino: 5 bước
Video: [Arduino basic #18] Cảm biến độ ẩm, nhiệt độ DHT11 2024, Tháng mười một
Anonim
Cách sử dụng cảm biến DHT11 bằng Arduino
Cách sử dụng cảm biến DHT11 bằng Arduino
Cách sử dụng cảm biến DHT11 bằng Arduino
Cách sử dụng cảm biến DHT11 bằng Arduino
Cách sử dụng cảm biến DHT11 bằng Arduino
Cách sử dụng cảm biến DHT11 bằng Arduino

Trong hướng dẫn này, chúng tôi sẽ thử cảm biến DHT11 bằng Arduino.

DHT11 có thể được sử dụng để đo nhiệt độ và độ ẩm.

Các thành phần bắt buộc:

  • Arduino Nano
  • Cảm biến nhiệt độ và độ ẩm DHT11
  • USB Mini
  • Cáp nhảy

Thư viện yêu cầu:

Thư viện DHT

Bước 1: Kết nối DHT11 với Arduino

Kết nối DHT11 với Arduino
Kết nối DHT11 với Arduino
Kết nối DHT11 với Arduino
Kết nối DHT11 với Arduino
Kết nối DHT11 với Arduino
Kết nối DHT11 với Arduino

Kết nối DHT11 với Arduino bằng cáp jumper.

Xem hình hoặc làm theo hướng dẫn bên dưới.

DHT11 sang Arduino

+ => + 5V

hết => D12

- => GND

Sau đó kết nối arduino với máy tính bằng USB mini

Bước 2: Thêm Thư viện DHT

Thêm Thư viện DHT
Thêm Thư viện DHT
Thêm Thư viện DHT
Thêm Thư viện DHT
Thêm Thư viện DHT
Thêm Thư viện DHT

Thư viện DHT có thể tải về tại đây:

Thư viện DHT11.

Để thêm thư viện, hãy xem hình ảnh thr ở trên hoặc làm theo hướng dẫn bên dưới:

Mở Sketch ==> Bao gồm Thư viện ==> thêm Thư viện. Zip

Tìm tệp thư viện mà bạn đã được tải xuống.

Nếu thành công, hãy đóng Arduino và mở lại.

Bước 3: Chọn Bảng Arduino

Chọn bảng Arduino
Chọn bảng Arduino

Goto Tools và điều chỉnh board arduino như hình trên.

Bảng "Arduino Nano"

Proccesor "ATmega328P (Bộ nạp khởi động cũ)"

Để có bài viết đầy đủ hơn, bạn có thể đọc phần "Cách sử dụng Arduino Nano v.3" mà tôi đã thực hiện trước đó.

Bước 4: Chương trình

Chương trình
Chương trình

Bao gồm mã này để đọc giá trị từ cảm biến DHT11

// Cảm biến nhiệt độ & độ ẩm DHT // Ví dụ về thư viện cảm biến hợp nhất // Được viết bởi Tony DiCola cho Adafruit Industries // Được phát hành theo giấy phép của MIT.

// YÊU CẦU các thư viện Arduino sau:

// - Thư viện cảm biến DHT: https://github.com/adafruit/DHT-sensor-library // - Adafruit Unified Sensor Lib:

#bao gồm

#include #include

#define DHTPIN 2 // Chân kỹ thuật số được kết nối với cảm biến DHT

// Feather HUZZAH ESP8266 lưu ý: sử dụng các chân 3, 4, 5, 12, 13 hoặc 14 - // Chân 15 có thể hoạt động nhưng phải ngắt kết nối DHT trong quá trình tải lên chương trình.

// Bỏ ghi chú loại cảm biến đang sử dụng:

// # xác định DHTTYPE DHT11 // DHT 11 # xác định DHTTYPE DHT22 // DHT 22 (AM2302) // # xác định DHTTYPE DHT21 // DHT 21 (AM2301)

// Xem hướng dẫn để biết chi tiết về cách sử dụng và đấu dây cảm biến:

//

DHT_Unified dht (DHTPIN, DHTTYPE);

uint32_t delayMS;

void setup () {

Serial.begin (9600); // Khởi tạo thiết bị. dht.begin (); Serial.println (F ("Ví dụ về cảm biến hợp nhất DHTxx")); // In chi tiết cảm biến nhiệt độ. cảm biến sensor_t; dht.tempentic (). getSensor (& cảm biến); Serial.println (F ("------------------------------------")); Serial.println (F ("Cảm biến nhiệt độ")); Serial.print (F ("Loại cảm biến:")); Serial.println (sensor.name); Serial.print (F ("Driver Ver:")); Serial.println (sensor.version); Serial.print (F ("ID duy nhat:")); Serial.println (sensor.sensor_id); Serial.print (F ("Giá trị tối đa:")); Serial.print (sensor.max_value); Serial.println (F ("° C")); Serial.print (F ("Giá trị nhỏ nhất:")); Serial.print (sensor.min_value); Serial.println (F ("° C")); Serial.print (F ("Độ phân giải:")); Serial.print (sensor.resolution); Serial.println (F ("° C")); Serial.println (F ("------------------------------------")); // In chi tiết cảm biến độ ẩm. dht.humidity (). getSensor (& cảm biến); Serial.println (F ("Cảm biến độ ẩm")); Serial.print (F ("Loại cảm biến:")); Serial.println (sensor.name); Serial.print (F ("Driver Ver:")); Serial.println (sensor.version); Serial.print (F ("ID duy nhat:")); Serial.println (sensor.sensor_id); Serial.print (F ("Giá trị tối đa:")); Serial.print (sensor.max_value); Serial.println (F ("%")); Serial.print (F ("Giá trị nhỏ nhất:")); Serial.print (sensor.min_value); Serial.println (F ("%")); Serial.print (F ("Độ phân giải:")); Serial.print (sensor.resolution); Serial.println (F ("%")); Serial.println (F ("------------------------------------")); // Đặt độ trễ giữa các lần đọc cảm biến dựa trên chi tiết cảm biến. delayMS = sensor.min_delay / 1000; }

void loop () {

// Độ trễ giữa các phép đo. sự chậm trễ (delayMS); // Lấy sự kiện nhiệt độ và in giá trị của nó. sự_kiện cảm_tác; dht.tempentic (). getEvent (& event); if (isnan (event.tempether)) {Serial.println (F ("Lỗi đọc nhiệt độ!")); } else {Serial.print (F ("Nhiệt độ:")); Serial.print (sự kiện. nhiệt độ); Serial.println (F ("° C")); } // Lấy sự kiện độ ẩm và in giá trị của nó. dht.humidity (). getEvent (& sự kiện); if (isnan (event.relative_humidity)) {Serial.println (F ("Lỗi khi đọc độ ẩm!")); } else {Serial.print (F ("Độ ẩm:")); Serial.print (event.relative_humidity); Serial.println (F ("%")); }}

Hoặc tải file bên dưới Sketch mà mình cung cấp bên dưới.

Sau đó nhấp vào tải lên và đợi cho đến khi hoàn tất.

Bước 5: Kết quả

Kết quả
Kết quả
Kết quả
Kết quả

Để xem kết quả đo nhiệt độ và độ ẩm, nhấp vào Serial Monitor, kết quả sẽ hiển thị ở đó.

Nếu thành công kết quả sẽ như hình 1

nếu cảm biến không được cài đặt, nó sẽ giống như hình ảnh 2

cảm ơn bạn đã đọc, nếu có câu hỏi chỉ cần viết nó trong cột ý kiến

Đề xuất: