รู้จัก DHT11
เป็นเซ็นเซอร์ที่ใช้วัดอุณหภูมิเป็นองศาเซลเซียล และองศาฟาเรนไฮ ยังสามารถวัดความชื้นได้อีกด้วย มีไลบารี่พร้อมใช่งานกับ Arduino สามารถใช้วัดค่าได้เที่ยงตรงกว่า NTC หรือ PTC มาก เพราะให้เอาต์พุตออกมาในรูปของดิจิตอล ใช้วัดอุณหภูมิอากาศโดยรอบ
การใช้งาน
DHT11 มีทั้งหมดอยู่ 4 ขา คือ
ลำดับ | ขาใช้งาน |
---|---|
1 | VCC |
2 | DATA |
3 | NC |
4 | GND |
DHT11 จะใช้วิธีการส่งข้อมูลให้กับไมโครคอนโทรลเลอร์ด้วยสายเพียงเส้นเดียวในแบบของดิจิตอลลอจิก
วงจรใช้งานกับ Arduino
Arduino library
สามารถดาว์โหลดได้จากลิ้ง https://github.com/adafruit/DHT-sensor-library นำไฟล์ที่คลายแล้ว ไปวางในโฟลเดอร์ Arduino\libraries แล้วก๊อบโค้ดด้านล้างลงบอร์ด
/* IOXhop - www.ioxhop.com */
#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht.begin();
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
float hi = dht.computeHeatIndex(f, h);
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(t);
Serial.print(" *C ");
Serial.print(f);
Serial.print(" *F\t");
Serial.print("Heat index: ");
Serial.print(hi);
Serial.println(" *F");
delay(2000);
}
เมื่อเปิด Serial Monitor ขึ้นมา ก็จะพบกับข้อความแสดงอุณหภูมิดังรูปด้านล่างนี้
-----------------------------------------------------------------------------------
DHT11 มีการตอบสนองต่ออุณหภูมิที่ค่อนข้างช้า ไม่ควรนำไปใช้วัดในสภาพแวดล้อมที่มีการเปลี่ยนแปลงไปอย่างรวดเร็ว
ไม่มีความคิดเห็น:
แสดงความคิดเห็น