Bài viết này sẽ hướng dẫn các bạn cách đọc nhiệt độ - độ ẩm từ cảm biến. Hy vọng rằng qua bài viết này, bạn sẽ dần hiểu được Arduino tạo cho người dùng một sự đơn giản và tiện lợi đến mức nào.
4. Cảm biến DHT11
Cảm biến DHT11 đã được tích hợp trong một mạch duy nhất, bạn chỉ việc nối dây nguồn (Vcc, GND) và dây tín hiệu (Signal) vào mạch Arduino là xong.
Thông số kĩ thuật
- Điện áp hoạt động: 3-5.5V DC
- Ngưỡng độ ẩm: 20 - 90%
- Sai số độ ẩm: ± 5%
- Ngưỡng nhiệt độ: 0 - 55oC
- Sai số nhiệt độ: ± 2oC
Download và cài đặt thư viện hỗ trợ sử dụng DHT11: download tại đây
Kết nối cảm biến DHT11 với mạch Arduino
DHT11 | Arduino UNO R3 |
GND | GND |
Vcc | 5V |
Signal | D2 |
Lập trình
1. // Gọi thư viện DHT11
2. #include"DHT.h"
3.
4. constintDHTPIN=2; //Đọc dữ liệu từ DHT11 ở chân 2 trên mạch Arduino
5. constintDHTTYPE=DHT11; //Khai báo loại cảm biến, có 2 loại là DHT11 và DHT22
6.
7. DHT dht(DHTPIN,DHTTYPE);
8.
9. voidsetup(){
10. Serial.begin(9600);
11. dht.begin(); // Khởi động cảm biến
12. }
13.
14. voidloop(){
15. floath=dht.readHumidity(); //Đọc độ ẩm
16. floatt=dht.readTemperature();//Đọc nhiệt độ
17.
18. Serial.print("Nhiet do: ");
19. Serial.println(t); //Xuất nhiệt độ
20. Serial.print("Do am: ");
21. Serial.println(h); //Xuất độ ẩm
22.
23. Serial.println(); //Xuống hàng
24. delay(1000); //Đợi 1 giây
25. }
Sau khi upload chương trình lên mạch Arduino, bạn hãy bấm Ctrl + Shift + M để mở cửa sổ Serial Monitor và xem kết quả.
Một lưu ý nho nhỏ cho những bạn lập trình nâng cao, đó là cảm biến DHT11 sẽ "treo" (delay) chương trình của bạn trong quá trình nó đọc nhiệt độ, độ ẩm!