【雕爷学编程】Arduino动手做(55)--DHT11温湿度传感器

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验,不管能否成功,都会记录下来---小小的进步或是搞不掂的问题,希望能够抛砖引玉。 

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)

实验五十五:DHT11 温湿度复合传感器模块(数字型单总线通信)

温度

度量物体冷热的物理量,是国际单位制中7个基本物理量之一。温度是物体内分子间平动动能的一种表现形式。分子运动愈快,即温度愈高,物体愈热;分子运动愈慢,即温度愈低,物体愈冷。从分子运动论观点看,温度是物体分子运动平均动能的标志,温度是分子热运动的集体表现,含有统计意义。在生产和科学研究中,许多物理现象和化学过程都是在一定的温度下进行的,人们的生活也和它密切相关。

湿度

湿度很久以前就与生活存在着密切的关系,但用数量来进行表示较为困难。对湿度的表示方法有绝对湿度、相对湿度、露点、湿气与干气的比值(重量或体积)等等。日常生活中最常用的表示湿度的物理量使空气的相对湿度。用%RH表示。在物理量的导出上相对湿度与温度有着密切的关系。一定体积的密闭气体,其温度越高相对湿度越低,温度越低,其相对湿度越高。其中涉及到复杂的热力工程学知识。

温湿度与人们生活的关系

如:冬天温度为18至25℃,湿度为30%至80%;夏天温度为23至28℃,湿度为30%至60%。在此范围内感到舒适的人占95%以上。在装有空调的室内,室温为19至24℃,湿度为40%至50%时,人会感到最舒适。如果考虑到温、湿度对人思维活动的影响,最适宜的室温度应是工作效率高。18℃,湿度应是40%至60%,此时,人的精神状态好,思维最敏捷。

DHT11
是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为4针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。

 

 

 

模块参数

供电电压: 3.3~5.5V DC

输 出: 单总线数字信号

测量范围: 湿度 20-90%RH, 温度 0~50℃

测量精度: 湿度+-5%RH, 温度+-2℃

分 辨 率: 湿度 1%RH, 温度 1℃

长期稳定性: <±1%RH/年

 

注意事项

1、避免在结露情况下使用

2、长期保存温度 10-40℃,湿度 60%以下

3、使用时电源和地接法要正确,以免损坏传感器

 

模块电原理图

模块描述
1、可以检测周围环境的湿度和温度
2、传感器采用DHT11
3、湿度测量范围:20%-95%(0度-50度范围)湿度测量误差:+-5%
4、温度测量范围:0度-50度 温度测量误差:+-2度
5、工作电压3.3V-5V
6、输出形式 数字输出         
7、设有固定螺栓孔,方便安装
8、小板PCB尺寸:3.2cm*1.4cm
9、电源指示灯(红色)
10、每套重量约为8g

模块接口说明(3线制)
1 VCC 外接3.3V-5V
2 GND 外接GND
3 DO  小板开关数字量输出接口 接单片机IO口

模块使用事项

传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品连接方便,可直接插接到Arduino传感器扩展板上。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/*
 
【Arduino】168种传感器模块系列实验(55)
 
实验五十五:DHT11 温湿度复合传感器模块(数字型单总线通信)
 
*/
 
  
 
#include "DHT.h" 
 
  
 
#define DHTPIN 8
 
#define DHTTYPE DHT11
 
DHT dht(DHTPIN, DHTTYPE);
 
  
 
void setup() {
 
  Serial.begin(9600);
 
  dht.begin();
 
}
 
  
 
void loop() {
 
  delay(2000);
 
  float h = dht.readHumidity();
 
  float t = dht.readTemperature();
 
  Serial.print("Humidity: ");
 
  Serial.println(h);
 
  Serial.print("Temperature: ");
 
  Serial.print(t);
 
  Serial.println(" ℃ ");
 
}

  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
 
【Arduino】168种传感器模块系列实验(55)
 
实验五十五:DHT11 温湿度复合传感器模块(数字型单总线通信)
 
实验程序之二
 
*/
 
#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() {
 
 
 
delay(2000);
 
floath = dht.readHumidity();
 
floatt = dht.readTemperature();
 
floatf = dht.readTemperature(true);
 
 
 
if(isnan(h) || isnan(t) || isnan(f)) {
 
Serial.println("Failed to read from DHT sensor!");
 
return;
 
  }
 
floathi = dht.computeHeatIndex(f, h);
 
Serial.print("Humidity: ");
 
  Serial.print(h);
 
Serial.print(" %");
 
Serial.print("\t");
 
Serial.print("Temperature: ");
 
  Serial.print(t);
 
Serial.println(" *C ");
 
 
 
}

  

 

 

posted @   行者花雕  阅读(2184)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
点击右上角即可分享
微信分享提示