DHT11温湿度传感器详解

DHT11 是由奥松电子(Aosong Electronics)研发的低成本数字式温湿度一体化传感器,凭借 “单芯片集成 + 单总线通信” 的设计优势,成为智能家居、消费电子、环境监测及工业入门级场景的核心感知部件。其核心价值在于以极低的成本实现温湿度数据的数字化输出 —— 无需外部模数转换(ADC)电路,仅通过 3 根线即可与微控制器(如 51 单片机、Arduino、STM32)通信,大幅降低硬件设计复杂度与开发成本。​

一、DHT11 的工作原理​

DHT11 的工作流程围绕 “信号采集 - 信号处理 - 数据输出” 三个核心环节展开,其内部架构由湿度敏感单元、温度敏感单元、信号调理模块、MCU 核心及单总线接口五部分组成,各模块协同实现温湿度数据的精准采集与数字化传输。​

(1) 温湿度信号采集​
  • 湿度采集:高分子湿敏电阻的电阻变化效应​

DHT11 内部集成高分子聚合物湿敏电阻,其电阻值与环境相对湿度呈负相关特性:当相对湿度升高时,湿敏电阻吸收空气中的水分子,导致电阻值显著降低;当相对湿度降低时,湿敏电阻释放水分子,电阻值回升。为将电阻变化转化为可测量的电信号,传感器内部设计了固定分压电路 —— 以 5V 供电为例,湿敏电阻与内部基准电阻串联,分压点输出的模拟电压信号随湿度变化呈线性波动(如 20% RH 时输出 1.2V,60% RH 时输出 2.8V),完成 “湿度→电阻→电压” 的第一次转换。​

  • 温度采集:NTC 热敏电阻的温度系数特性​

温度采集依赖负温度系数(NTC)热敏电阻:其电阻值随温度升高而减小,随温度降低而增大。与湿度采集类似,NTC 热敏电阻同样通过内部分压电路与基准电阻串联,分压输出的模拟电压信号随温度变化(如 0℃时输出 3.5V,50℃时输出 1.1V),实现 “温度→电阻→电压” 的信号转换。​

(2)信号处理:从模拟信号到数字数据的转化​

采集到的温湿度模拟信号需经过信号调理 + 模数转换,才能转化为微控制器可识别的数字数据,具体流程如下:​

  1. 信号放大:由于湿敏电阻与 NTC 热敏电阻输出的模拟信号幅度较小(通常仅 0.5~4V),需通过内部运算放大器将信号放大至 ADC 的最佳输入范围(如 0~3.3V),避免信号过弱导致的量化误差;​
  2. 滤波去噪:通过 RC 低通滤波电路滤除环境电磁干扰(如电源噪声、外部电机 / 继电器的射频干扰),减少信号波动 —— 例如,针对 50Hz 工频干扰,滤波电路的截止频率设计为 10Hz,确保输出信号平稳;​
  3. 模数转换(ADC):采用 8 位逐次逼近型 ADC,将滤波后的模拟电压信号转换为数字信号。由于 DHT11 的分辨率设计为 “温度 1℃、湿度 1% RH”,8 位 ADC 的量化精度(256 级)已能满足需求,无需更高位数的 ADC(如 12 位),既降低成本又简化内部电路;​
  4. 数据校验:内部 MCU 核心对 ADC 输出的温湿度数字数据进行校验 —— 通过预设的校准算法修正温度 / 湿度的非线性误差(如 NTC 热敏电阻的非线性特性),同时计算校验和(前 32 位数据累加和),确保数据准确性。​
(3)数据输出:单总线协议的双向通信​

DHT11 采用自定义单总线协议实现与主机(微控制器)的通信,无需时钟线(SCL),仅通过 DATA 线完成 “主机启动信号” 与 “传感器数据响应” 的双向交互:​

  1. 主机通过拉低 DATA 线发送 “启动信号”,触发传感器内部数据处理流程;​
  2. 传感器完成数据校验后,按照固定格式(40 位数据)将温湿度数据通过 DATA 线传输给主机;​
  3. 主机接收数据后,通过校验和验证数据有效性,若校验通过则解析温湿度值,否则触发重新采集。​

二、主要性能参数与特性​

(1)核心测量参数

参数类别​

规格范围​

典型值(25℃环境)​

测试条件​

温度测量范围​

0℃ ~ 50℃​

-​

相对湿度 40%~60% RH​

温度测量精度​

±2℃​

±1.5℃​

0℃~50℃全量程​

湿度测量范围​

20%RH ~ 90%RH​

-​

温度 25℃​

湿度测量精度​

±5%RH​

±4%RH​

40% RH~60% RH 区间​

分辨率​

温度 1℃,湿度 1% RH​

-​

全量程​

采样周期​

≥2 秒​

2 秒​

连续采集模式​

响应时间​

温度≤3 秒,湿度≤5 秒​

温度 2.5 秒,湿度 4 秒​

温度从 25℃→33℃,湿度从 0% RH→63% RH​

(2)关键电气特性​
  • 供电电压:3.3V ~ 5.5V DC(兼容主流单片机供电,无需电平转换);​
  • 工作电流:测量状态(数据采集阶段)2.5mA,待机状态(无采集指令)≤100μA(适合电池供电设备,如无线温湿度传感器);​
  • 输出接口:单总线(DATA),支持双向数据传输,硬件连接仅需 VCC、DATA、GND 三根线;​
  • 存储环境:温度 - 20℃~60℃,湿度 0% RH~80% RH(无冷凝),满足大部分场景的存储需求;​
  • 封装形式:4 针 DIP(直插)、4 针 SMT(贴片),DIP 封装适合面包板实验,SMT 封装适合批量生产的 PCB 设计。​
(3)核心技术特性​
  • 单芯片集成设计:将温湿度采集、信号调理、ADC 转换、数据校验及通信接口集成于单一芯片,体积仅为 15mm×12mm×5mm(DIP 封装),节省 PCB 空间;​
  • 数字信号直接输出:无需外部 ADC 模块或信号调理电路,避免模拟信号传输过程中的干扰与衰减,提升数据可靠性;​
  • 内置数据校验机制:通过 40 位数据中的最后 8 位校验和(前 32 位数据累加和)验证数据完整性,降低传输错误率;​
  • 低门槛开发:无需复杂校准流程(出厂前已完成校准),上电即可工作,且 Arduino、STM32 等平台均有成熟开源驱动,开发周期可缩短至 1~2 天;​
  • 成本优势显著:批量采购成本仅为高精度传感器(如 SHT30,15~25 元 / 颗)的 1/5~1/8,适合对成本敏感的批量项目(如智能家居网关、温湿度记录仪)。​

三、与其他传感器的对比​

为明确 DHT11 的技术定位,将其与同类型温湿度传感器(DHT22、SHT30)及纯温度传感器(DS18B20)进行多维度对比,帮助开发者根据场景需求选型。​

(1)DHT22(AM2302)对比​

DHT22 是 DHT11 的工业级升级型号,核心优化方向为 “测量范围扩展 + 精度提升”,具体差异如下

对比维度​

DHT11​

DHT22(AM2302)​

温度范围​

0℃~50℃​

-40℃~80℃​

温度精度​

±2℃(全量程)​

±0.5℃(-10℃~65℃)​

湿度范围​

20%RH~90%RH​

0%RH~100%RH​

湿度精度​

±5%RH(40%RH~60%RH)​

±2%RH(20%RH~80%RH)​

分辨率​

温度 1℃,湿度 1% RH​

温度 0.1℃,湿度 0.1% RH​

采样周期​

≥2 秒​

≥2 秒​

供电电流​

测量 2.5mA,待机 100μA​

测量 1.5mA,待机 100μA​

价格​

1~3 元 / 颗​

5~8 元 / 颗​

适用场景​

民用场景(室内监测)​

工业场景(冷链、实验室)​

选型建议:若场景对温湿度范围或精度有要求(如冷链运输需 - 20℃~5℃测量、实验室需 ±1% RH 精度),优先选择 DHT22;若仅需室内常规监测,DHT11 性价比更高。​

(2) SHT30 对比​

SHT30 是瑞士盛思锐(Sensirion)推出的高端温湿度传感器,代表行业高精度水平,与 DHT11 的差异体现在 “精度、功耗、协议” 三大维度:​

对比维度​

DHT11​

SHT30​

温度精度​

±2℃​

±0.2℃(0℃~65℃)​

湿度精度​

±5%RH​

±2%RH(20%RH~80%RH)​

分辨率​

温度 1℃,湿度 1% RH​

温度 0.01℃,湿度 0.01% RH​

通信协议​

自定义单总线​

I2C 标准协议(支持 100kHz/400kHz)​

功耗​

测量 2.5mA,待机 100μA​

测量 3.4mA,待机 0.1μA​

校准机制​

出厂一次性校准​

内置自动校准算法​

价格​

1~3 元 / 颗​

15~25 元 / 颗​

优势​

低成本、易开发​

高精度、低功耗、高稳定性​

选型建议:医疗设备(如 incubator)、气象监测、工业过程控制等对精度要求极高的场景,选择 SHT30;民用或成本敏感型项目,选择 DHT11。​

(3)  DS18B20 对比​

DS18B20 是 Maxim 推出的单总线温度传感器,仅支持温度测量,与 DHT11 的核心差异在于 “功能定位”:​

对比维度​

DHT11​

DS18B20​

测量功能​

温湿度一体化​

仅温度​

温度范围​

0℃~50℃​

-55℃~125℃​

温度精度​

±2℃​

±0.5℃(-10℃~85℃)​

分辨率​

1℃(固定)​

9~12 位可编程(0.5℃~0.0625℃)​

通信协议​

自定义单总线​

1-Wire 标准单总线​

多传感器挂载​

支持(需自定义地址)​

支持(64 位唯一序列号)​

适用场景​

需同时测温湿度的场景​

高精度测温场景(工业炉、冷库)​

选型建议:若场景仅需温度测量且要求宽范围、高精度,选择 DS18B20;若需同时监测温湿度,选择 DHT11。​

四、引脚功能介绍​

DHT11 的常见封装为 4 针 DIP(直插)和 4 针 SMT(贴片),两种封装的引脚定义完全一致,以下以 4 针 DIP 封装为例(引脚朝向开发者,从左至右依次为 1~4 脚),详细说明各引脚功能及硬件连接要点

引脚​

引脚名称​

电气特性​

功能描述与连接建议​

1​

VCC​

3.3V~5.5V DC​

电源正极,为传感器内部电路(湿敏单元、ADC、MCU)提供工作电压。连接建议:在 VCC 与 GND 之间并联 0.1μF 陶瓷电容(去耦电容),滤除电源噪声,避免供电波动影响测量精度。​

2​

DATA​

双向 I/O​

单总线数据引脚,承担 “主机发送启动信号” 与 “传感器发送温湿度数据” 的双向通信功能。连接建议:必须通过 4.7kΩ~10kΩ 上拉电阻连接到 VCC,确保总线空闲时为高电平(否则传感器无法检测启动信号);若传输距离超过 2 米,建议使用屏蔽线,减少信号衰减与电磁干扰。​

3​

NC​

无电气连接​

空脚(No Connection),无任何功能,仅为封装结构设计。连接建议:设计 PCB 时悬空处理,禁止连接任何电路(包括 GND),避免引入不必要的干扰。​

4​

GND​

0V​

电源负极,电路参考地,为传感器内部各模块提供统一电位基准。连接建议:必须与微控制器的 GND 共地,确保电位一致;若系统存在多个接地(如模拟地、数字地),需将 DHT11 的 GND 连接到数字地,避免地环流干扰。​

硬件连接常见误区:​

  1. 省略 DATA 线上拉电阻:导致总线空闲时为低电平,传感器无法识别主机的启动信号,表现为 “数据读取失败”;​
  2. VCC 与 GND 接反:直接烧毁传感器内部 MCU 核心,属于不可逆损坏;​
  3. 未并联去耦电容:电源噪声会导致 ADC 转换误差,表现为温湿度数据波动(如温度频繁跳变 ±1℃)。​

五、通信协议与数据读取​

DHT11 采用自定义单总线协议,数据传输对时序精度要求极高(微秒级),整个通信过程分为 “主机发送启动信号” 和 “传感器响应与数据发送” 两个阶段,以下详细解析通信时序与数据读取流程。​

步骤 1:主机发送启动信号​

  1. 主机将 DATA 引脚配置为 “输出模式”,拉低 DATA 线,持续 18ms(代码中常用delay(20)确保满足时长);​
  2. 主机释放 DATA 线(将 DATA 引脚配置为 “输入模式”),等待 20~40μs,进入 “响应检测” 阶段。​

步骤 2:传感器响应与数据发送​

  1. 传感器拉低 DATA 线 80μs,主机检测到低电平后,确认传感器正常;​
  2. 传感器释放 DATA 线,DATA 线在了你上拉电阻作用下变为高电平,持续 80μs;​
  3. 80μs 后,传感器开始连续发送 40 位数据,数据格式为:​

8位湿度整数 + 8位湿度小数 + 8位温度整数 + 8位温度小数 + 8位校验和​

(注:DHT11 的湿度小数和温度小数固定为 0,因此对应字节恒为 0x00,实际有效数据为 “湿度整数 + 温度整数”)。​

步骤 3:数据校验与解析​

  1. 主机接收 40 位数据后,计算前 32 位数据的累加和,与第 33~40 位(校验和)对比;​
  2. 若 “累加和 = 校验和”,数据有效,解析公式为:​
  • 相对湿度 = 湿度整数位(十进制) % RH​
  • 温度 = 温度整数位(十进制) ℃​

若校验失败,判定为 “数据错误”,需重新发起读取流程。

 六、DHT11的相关应用设计

基于单片机空气质量检测/气体检测系统

基于单片机智能浇花/智能灌溉/智慧农业/智能大棚

👉👉👉👉其他作品题目速选一览表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小新单片机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值