Arduino UNO R4 DHT11

Trong hướng dẫn này, chúng ta sẽ học cách sử dụng cảm biến nhiệt độ và độ ẩm DHT11 với Arduino UNO R4. Cụ thể, chúng ta sẽ tìm hiểu:

Arduino UNO R4 và module cảm biến dht11

Linh Kiện Cần Thiết

1×Arduino UNO R4 WiFi hoặc Arduino UNO R4 Minima
1×(Tùy chọn) DIYables STEM V4 IoT, tương thích với Arduino Uno R4 WiFi
1×Arduino UNO R4 Minima (Thay thế)
1×Cáp USB Type-C
1×Module Cảm Biến Nhiệt Độ Độ Ẩm DHT11
1×Điện trở 10 kΩ
1×breadboard
1×Dây Jumper
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino UNO R4
1×(Khuyến nghị) Breadboard Shield for Arduino UNO R4
1×(Khuyến nghị) Enclosure for Arduino UNO R4
1×(Khuyến nghị) Power Splitter for Arduino UNO R4
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

1×DIYables STEM V4 IoT Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về Cảm Biến Nhiệt Độ và Độ Ẩm DHT11

DHT11
Điện áp hoạt động3 đến 5V
Dải nhiệt độ 0°C đến 50°C
Độ chính xác nhiệt độ ± 2°C
Dải độ ẩm 20% đến 80%
Độ chính xác độ ẩm 5%
Tốc độ đọc 1Hz (một lần mỗi giây)

Sơ Đồ Chân

DHT11 có sẵn ở hai dạng: cảm biến và module.

sơ đồ chân cảm biến nhiệt độ và độ ẩm dht11

Cảm biến DHT11 có bốn chân.

  • Chân GND: kết nối với GND (0V)
  • Chân VCC: kết nối với VCC (5V hoặc 3.3V)
  • Chân DATA: dùng để giao tiếp giữa cảm biến và Arduino UNO R4
  • Chân NC: không kết nối, có thể bỏ qua

Module DHT11 có ba chân.

  • Chân GND: kết nối với GND (0V).
  • Chân VCC: kết nối với VCC (5V hoặc 3.3V).
  • Chân DATA: dùng để giao tiếp giữa cảm biến và Arduino UNO R4.

Một số nhà sản xuất cung cấp cảm biến DHT11 dưới dạng module với ba chân được ghi nhãn: GND, VCC, và DATA (hoặc đôi khi là -, +, và OUT).

Sơ Đồ Kết Nối

Để kết nối cảm biến DHT11 với Arduino UNO R4, hãy sử dụng điện trở từ 5K đến 10K Ohm. Điện trở này giúp duy trì đường dữ liệu ở mức cao, cho phép cảm biến và Arduino giao tiếp đúng cách.

Kết Nối Arduino UNO R4 - Cảm Biến DHT11

sơ đồ kết nối cảm biến nhiệt độ và độ ẩm dht11 Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Kết Nối Arduino UNO R4 - Module DHT11

Hầu hết các module cảm biến DHT11 đều có điện trở tích hợp sẵn, nên không cần thêm điện trở. Điều này giúp việc kết nối hoặc hàn dễ dàng hơn.

sơ đồ kết nối module nhiệt độ và độ ẩm dht11 Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Cách Lập Trình Cho Cảm Biến Nhiệt Độ DHT11

Việc lập trình cho cả cảm biến và module đều giống nhau.

  • Bao gồm thư viện.
#include <DHT.h>
  • Đặt chân trên Arduino UNO R4 kết nối với cảm biến DHT:
#define DHT11_PIN 2
  • Tạo đối tượng cảm biến DHT11.
DHT dht11(DHT11_PIN, DHT11);
  • Khởi động cảm biến:
dht11.begin();
  • Đọc giá trị độ ẩm:
float humi = dht11.readHumidity();
  • Đọc nhiệt độ theo độ C:
float tempC = dht11.readTemperature();
  • Đọc nhiệt độ theo độ F.
float tempF = dht11.readTemperature(true);

Code Arduino UNO R4 - DHT11

/* * Mã Arduino UNO R4 này được phát triển bởi newbiely.vn * Mã Arduino UNO R4 này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino-uno-r4/arduino-uno-r4-dht11 */ #include <DHT.h> #define DHT11_PIN 2 // The Arduino UNO R4 pin connected to DHT11 DHT dht11(DHT11_PIN, DHT11); void setup() { Serial.begin(9600); dht11.begin(); // initialize the sensor } void loop() { // wait a few seconds between measurements. delay(3000); // read humidity float humidity = dht11.readHumidity(); // read temperature as Celsius float tempC = dht11.readTemperature(); // read temperature as Fahrenheit float tempF = dht11.readTemperature(true); // check if any reads failed if (isnan(humidity) || isnan(tempC) || isnan(tempF)) { Serial.println("Failed to read from DHT11 sensor!"); } else { Serial.print("DHT11# Humidity: "); Serial.print(humidity); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } }

Các Bước Thực Hiện

Thực hiện theo hướng dẫn từng bước:

  • Nếu đây là lần đầu tiên bạn sử dụng Arduino Uno R4 WiFi/Minima, hãy tham khảo hướng dẫn về Arduino UNO R4 - Cài Đặt Phần Mềm.
  • Kết nối các linh kiện theo sơ đồ được cung cấp.
  • Kết nối board Arduino Uno R4 với máy tính của bạn bằng cáp USB.
  • Khởi động Arduino IDE trên máy tính.
  • Chọn board Arduino Uno R4 phù hợp (ví dụ: Arduino Uno R4 WiFi) và cổng COM.
  • Nhấp vào biểu tượng Libraries ở phía bên trái của Arduino IDE.
  • Tìm kiếm "DHT" và định vị thư viện cảm biến DHT của Adafruit.
  • Nhấp nút Install để thêm thư viện.
thư viện cảm biến dht Arduino UNO R4
  • Bạn cần cài đặt thêm các thư viện phụ thuộc
  • Nhấp nút Install All để cài đặt tất cả thư viện cần thiết.
thư viện adafruit unified sensor Arduino UNO R4
  • Sao chép code cho cảm biến của bạn và mở nó trong Arduino IDE.
  • Nhấn nút Upload trong Arduino IDE để tải code lên Arduino UNO R4.
  • Thay đổi nhiệt độ xung quanh cảm biến để nóng hơn hoặc lạnh hơn.
  • Kiểm tra kết quả trên Serial Monitor.
COM6
Send
DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.

Bình Luận