0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

构建一个小电路以将Arduino与DHT11温湿度传感器接口

单片机 来源:单片机 2020-05-14 10:54 次阅读

DHT11是湿度和温度传感器,可产生校准的数字输出。DHT11可以与任何微控制器(如Arduino,Raspberry Pi等)接口并获得即时结果。DHT11是一款低成本的湿度和温度传感器,具有很高的可靠性和长期稳定性。

在这个项目中,我们将构建一个小电路以将Arduino与DHT11温湿度传感器接口。将DTH11传感器与Arduino连接的主要应用之一是天气监控。

在本文中,我们已经了解了湿度,相对湿度,湿度传感器及其类型。

电路图

下图显示了实施该项目所需的所有必要连接。

所需组件

Arduino UNO

DHT11温湿度传感器

面包板(或穿孔板)

电源

16 x 2 LCD

10K欧姆电位器

5K欧姆电阻(1/4 W)

连接线

电路说明

我们将看到DHT11与Arduino接口的电路设计。DHT11湿度和温度传感器有两种变体:仅传感器或模块。

主要区别在于该模块由上拉电阻器组成,并且还可能包括一个通电的LED。我们在该项目中使用了一个模块,如果您想使用传感器本身,则需要另外连接一个5KΩ上拉电阻。

进行设计时,DHT11传感器的数据引脚连接到Arduino的引脚11。16 x 2 LCD显示屏用于显示结果。LCD的控制引脚,即RS和E(LCD上的引脚4和6)连接到Arduino的引脚4和5。LCD的数据引脚,即D4至D7(LCD上的引脚11至14)连接至LCD上的引脚0至3。

注意:为便于连接,我们将DHT11传感器模块连接到Arduino的ICSP引脚,因为它提供了相邻的VCC,DATA和GND引脚。不需要这种类型的连接,您可以将传感器的数据引脚连接到普通的数字I / O引脚。

组件说明

DHT11温湿度传感器

DHT11是DHTXX系列湿度传感器的一部分。该系列的另一个传感器是DHT22。这两个传感器都是相对湿度(RH)传感器。结果,他们将同时测量湿度和温度。尽管DHT11湿度传感器价格便宜,速度慢,但在爱好者和初学者中非常受欢迎。

DHT11湿度和温度传感器由3个主要组件组成。电阻型湿度传感器,NTC(负温度系数)热敏电阻(用于测量温度)和8位微控制器,可转换来自两个传感器的模拟信号并发送单个数字信号

任何微控制器或微处理器都可以读取此数字信号,以进行进一步分析。

DHT11湿度传感器由4个引脚组成:VCC,数据输出,未连接(NC)和GND。VCC引脚的电压范围为3.5V至5.5V。5V电源会很好。来自数据输出引脚的数据是串行数字数据。

下图显示了DHT11湿度和温度传感器的典型应用电路。DHT11传感器可以测量相对湿度(RH)的20 – 90%范围内的湿度值,以及0 – 500C范围内的温度。传感器的采样周期为1秒,即所有DHT11传感器均准确经过实验室校准,结果存储在存储器中。可以在Arduino和DHT11传感器等任何微控制器之间建立单线通信

另外,电缆的长度可以长达20米。来自传感器的数据包括相对湿度(RH)和温度的整数和小数部分。

DHT11传感器的数据由40位组成,格式如下:

8 – RH积分值的位数据,8 – RH十进制值的位数据,8 –积分温度值的位数据,8 –积分温度值的位数据,8 –校验和位数据。

考虑从DHT11传感器接收的数据是

00100101 00000000 00011001 00000000 00111110。

该数据可以根据上述结构如下进行分离

为了检查接收到的数据是否正确,我们需要进行少量计算。将RH和Temperature的所有整数和十进制值相加,并检查总和是否等于校验和值,即最后8位数据。

00100101 + 00000000 + 00011001 + 00000000 = 00111110

该值与校验和相同,因此接收到的数据有效。现在要获取RH和Temperature值,只需将二进制数据转换为十进制数据即可。

RH = 00100101的十进制= 37%

温度=十进制00011001 = 250C

项目运作

使用Arduino UNO和DHT11湿度和温度传感器构建了一个简单的项目,其中环境的湿度和温度在LCD显示屏上显示。

建立连接后,我们无需执行任何操作,因为该程序将处理所有事情。尽管DHT11模块有一个特殊的库称为“ DHT”,但我们并未使用它。如果要使用此库,则需要单独下载该库并将其添加到Arduino的现有库中。

编写的程序基于数据手册中提供的数据时序图。该程序将使Arduino自动从传感器读取数据,并将其作为湿度和温度显示在LCD显示屏上。

代码


注释:
pinMode(gate,INPUT_PULLUP);//by default it will become high due to internal pull up

应用领域

DHT11相对湿度和温度传感器可用于许多应用,例如:

HVAC(供暖,通风和空调)系统

气象站

湿度测量医疗设备

家庭自动化系统

汽车和其他天气控制应用

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 湿度传感器
    +关注

    关注

    7

    文章

    287

    浏览量

    58317
  • Arduino
    +关注

    关注

    184

    文章

    6425

    浏览量

    184775

原文标题:如何用Arduino读取DHT11湿度传感器数据?

文章出处:【微信号:aidanpianji,微信公众号:单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【原创】DHT11传感器温湿度监测系统毕设,论文、代码、原理图和仿真介绍

    设计要求 1.设计基于51单片机和DHT11传感器温湿度监测系统; 2.传感器
    发表于 03-13 00:53

    【先楫HPM5361EVK开发板试用体验】温湿度传感器DHT11实践

    复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。 DHT11传感器包括
    发表于 01-03 23:46

    【LuckFox Pico 开发板免费试用】5.内核驱动温湿度传感器 DHT11

    前期写好的驱动,我这篇帖子也是基于此项目写的。 1. DHT11 简介 DHT11数字温湿度传感器款含有已校准数字信号输出的
    发表于 11-06 15:43

    Arduino篇—自制温湿度测量仪

    DHT11数字温湿度传感器DHT11数字温湿度传感器是一款含有已校准数字信号输出的
    的头像 发表于 11-02 10:16 758次阅读
    <b class='flag-5'>Arduino</b>篇—自制<b class='flag-5'>温湿度</b>测量仪

    DHT11数字温湿度传感器主要参数

    一.DHT11介绍 DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,
    的头像 发表于 09-11 11:17 4923次阅读
    <b class='flag-5'>DHT11</b>数字<b class='flag-5'>温湿度</b><b class='flag-5'>传感器</b>主要参数

    基于STM32的DHT11温湿度数据采集仿真设计

    通过STM32采集DHT11温度传感器的数据,将温湿度信息显示在LCD显示屏上及虚拟串口上。
    的头像 发表于 09-01 09:32 995次阅读
    基于STM32的<b class='flag-5'>DHT11</b><b class='flag-5'>温湿度</b>数据采集仿真设计

    立创·梁山派GD32F4】-DHT11温湿度传感器模块移植过程

    详情请跳转:https://lceda001.feishu.cn/wiki/JNvYwEU5SiGldFkNcxncYXhZnZc DHT11数字温湿度传感器款含有已校准数字信号输
    发表于 08-30 15:15

    Openwrt开发指南 第28章 DHT11 温湿度传感器

    下图是我们温度传感器的接入引脚,3.3V 供电,io 口接 P13 的 GP0( GPIO0 的简称 )。DHT11数字温湿度传感器 是一款含有已校准数字信号输出的
    的头像 发表于 07-15 16:18 952次阅读
    Openwrt开发指南 第28章 <b class='flag-5'>DHT11</b> <b class='flag-5'>温湿度</b><b class='flag-5'>传感器</b>

    DHT11驱动通过串口打印采集到的环境温湿度数据

    DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度综合传感器,常用于暖通空调、汽车、除湿器、自动控制等领域。
    发表于 06-13 15:25 658次阅读
    <b class='flag-5'>DHT11</b>驱动通过串口打印采集到的环境<b class='flag-5'>温湿度</b>数据

    【CW32饭盒派开发板试用体验】+万物互联之温湿度采集

    CW32饭盒派开发板 提供了多种传感器接口,上面就有温湿度传感器DHT11接口。但是,我手上
    发表于 06-11 16:05

    【CW32饭盒派开发板试用体验】读取自己的温湿度传感器

    周末到了,是时候折腾手里的开发板了。我自己有DHT11温湿度传感器,想想就用开发板读下这
    发表于 06-03 11:01

    使用ESP8266驱动DHT11温湿度传感器

    DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度综合传感器,在Arduino提高篇
    的头像 发表于 05-19 14:20 4442次阅读
    使用ESP8266驱动<b class='flag-5'>DHT11</b><b class='flag-5'>温湿度</b><b class='flag-5'>传感器</b>

    STM32+DHT11监测环境的温湿度

    DHT11是一种数字温湿度传感器,能够通过数字信号输出当前环境的温度和湿度值。DHT11可以通过一条数据信号线连接到微控制器或其他外设,从而
    的头像 发表于 05-17 09:22 3113次阅读
    STM32+<b class='flag-5'>DHT11</b>监测环境的<b class='flag-5'>温湿度</b>

    【CW32饭盒派开发板试用体验】DHT11温湿度检测

    在饭盒派的开发板上,配有温度传感器DHT11接口,见图1所示。 图1 传感器接口 稍感不足的是,该接口
    发表于 05-08 19:43

    【沁恒 CH32V208 开发板免费试用】CH32V208读取DHT11温湿度

    五一假期快结束了,我要加快进度完成测评了。下一个帖子做什么我纠结了很久。突然想起来我手里有DHT11温湿度
    发表于 05-03 09:46