认识DHT11温湿度传感器并制作温度报警器

GIF.gif

  • Arduino UNO

    图片.png

  • Arduino IDE开发环境

    图片.png

  • Arduino DHT11温湿度传感器

    图片.png

一、认识Arduino的DHT11温度湿度传感器

DHT传感器由电容式湿度传感器和热敏电阻两部分组成。除此之外,模块内部还有一些模拟信号到数字信号的转换,将温度湿度以数字信号的方式输出。

DHT11湿度温度传感器特性如下:

  • 成本较低,更适合DIY
  • 供电3.3-5V
  • 2.5ma最大电流
  • 20-80%读数精度在5%之内
  • 0-50°C温度读数精度为±2°C
  • 频率不超过1赫兹,现场每一次集中
  • 模块尺寸较小,15.5mm x 12mm x 5.5mm

DHT11模块有三个引脚加一个LED

  • VCC :连接供电电源的主板
  • DAT :将数字信号输出
  • GND :连接供电电源的规格
  • 电源指示:模块正常供电时会亮

二、编写程序获取温湿度传感器的数值

  • 连接Arudino UNO与DHT11温度湿度传感器

    Arduino UNODHT11湿度温度传感器
    GNDGND
    5VVCC
    D8DAT

    图片.png

  • 编写程序获取DHT11温湿度传感器的数字信号

    • 下载DHT11的库文件

    • 解压文件并添加至arudino安装路径下的库

      图片.png

    • 导入DHT11库文件

      #include <dht11.h>  
        
      dht11 DHT11;  
      

    • 定义指标

       #define PIN_DHT11 8 
       float temp,humi;
      
    • setup()初始化。

      这里大家可能会有疑问,但是为什么要获取DHT11模块的数字信号,不用初始化设定该引脚为输入模式呢?

      本质上是需要的,但是已经在库文件中定义了设置,所以这里不一定重复设置

      void setup() {
        Serial.begin(9600);  
        temp=0;
        humi=0;
      }
      
      
    • Loop()写入主体函数

      void loop() {
        DHT11.read(PIN_DHT11);  
        humi = (float)DHT11.humidity;
        temp = (float)DHT11.temperature;
        Serial.println(humi, 2);  
        Serial.println(temp, 2);  
      }
      
      
  • 连接Arduino UNO至电脑

  • 编译并上传程序至Arduino UNO

  • 测试效果

    • 接上USB运行Arduino程序的时候,可以看到DHT11模块的LED是亮着的,说明模块正常供电

    • 向模块哈气,以增加温度可以与湿度测试看数据的变化输出

      GIF.gif

三、制作温度报警器

  • 基于步骤二,连接LED与Arduino UNO

    引领Arduino UNO
    短脚GND
    长脚D10

    图片.png

  • 步骤基础二的程序整合上LED程序

    分析需求,这里我们仅使用DHT11提供的温度

    • 当温度大于23的时候,点亮LED
    • 当温度小于23的时候,马上LED

    定义指标

    #define PIN_DHT11 8 
    float temp,humi;
    

    setup() 初始化

    void setup() {
      Serial.begin(9600);  
      pinMode(10,OUTPUT);
      temp=0;
      humi=0;
    }
    

    Loop()函数主体

    void loop() {
      DHT11.read(PIN_DHT11);  
      Serial.print("湿度 (%): ");  
      humi = (float)DHT11.humidity;
      Serial.println(humi, 2);  
      Serial.print("温度 (oC): ");  
      temp = (float)DHT11.temperature;
      Serial.println(temp, 2);  
      if(temp > 23)
        digitalWrite(10,HIGH);
      else
        digitalWrite(10,LOW);
      delay(500); 
    }
    

    整合全部程序:

    #include <dht11.h>  
      
    dht11 DHT11;  
    #define PIN_DHT11 8 
    float temp,humi;
    void setup()  
    {  
      Serial.begin(9600);  
      pinMode(10,OUTPUT);
      temp=0;
      humi=0;
    }  
      
    void loop()  
    {  
      DHT11.read(PIN_DHT11);  
      Serial.print("湿度(%): ");  
      humi = (float)DHT11.humidity;
      Serial.println(humi, 2);  
      Serial.print("温度(oC): ");  
      temp = (float)DHT11.temperature;
      Serial.println(temp, 2);  
      if(temp > 23)
        digitalWrite(10,HIGH);
      else
        digitalWrite(10,LOW);
      delay(500);  
    }  
    
  • 编译并上传程序测试效果

    GIF.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/215187.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[oeasy]python0002_终端_CLI_GUI_编程环境_游戏_真实_元宇宙

回忆 上次 了解了 python 语言的特点 历史悠久功能强大深受好评已成趋势 3大主流操作系统 macwindowslinux 我们 选择 linux 作为基础系统 为什么选择 黑乎乎的命令行界面呢&#xff1f;&#x1f914; GUI vs CLI 个人电脑 用图标和菜单组成 图形界面(GUI) Graphic User I…

电容、电感和电阻

一、电感 1&#xff09;图片 2&#xff09;作用 a&#xff09;储存容量 例如dcdc转换器的原理,将一个电压值转换成另外一个电压值 b&#xff09;选择信号 比如空气中弥漫着很多信号&#xff0c;我们应该怎么选取我们所需要的信号。 电感和电容可以看成一个电阻&#xff0c;当电…

基于springboot实现的垃圾分类管理系统

一、系统架构 前端&#xff1a;html | layer | jquery | css 后端&#xff1a;springboot | mybatis 环境&#xff1a;jdk1.8 | mysql | maven 二、 代码及数据库 三、功能介绍 01. 登录页 02. 系统设置-用户管理 03. 系统设置-页面管理 04. 系统设置-角色管…

015 OpenCV 霍夫变换(圆检测)

目录 一、环境 二、算法原理 三、完整代码 一、环境 本文使用环境为&#xff1a; Windows10Python 3.9.17opencv-python 4.8.0.74 二、算法原理 霍夫圆检测&#xff08;Hough Circle Detection&#xff09;是计算机视觉中一种常用的图像处理技术&#xff0c;主要用于检测…

fpga rom 初始化文件的一些心得

目录 可能遇到的问题 问题 解决方案 rom的初始化 用途 文件类型 如何生成初始化文件 示例 Altera Xilinx 可能遇到的问题 问题 altera FPGA的rom找不到初始化文件&#xff0c;编译过程会提示类似的问题 Error(127001): Cant find Memory Initialization File or He…

中通快递单号查询入口,并分析筛选出揽收中转延误件

批量查询中通快递单号的物流信息&#xff0c;并将其中的揽收中转延误件(从“揽收”至“到达转运中心”之间的时间差超过24小时的单号)分析筛选出来。 所需工具&#xff1a; 一个【快递批量查询高手】软件 中通快递单号若干 操作步骤&#xff1a; 步骤1&#xff1a;运行【快递…

【Docker实操】创建一个Nginx服务

一、不使用DockerFile 1、获取nginx官方镜像 docker pull nginx //拉取nginx官方镜像 docker image nginx //查看镜像2、创建项目目录 项目目录&#xff1a;/root/www2/nginx //如果当前目录在root mkdir www2 mkdir www2/nginx cd www2/nginx //进入项目目录3、创建源码文…

产品经理面试问题(四)

今天和大家免费分享产品经理常见的面试题目&#xff0c;含回答思路分析和回答事例。 【资源下载】 这个模板可以在 Axure高保真原型哦 小程序里免费下载 打开小程序后&#xff0c;在文档模板模块&#xff0c;搜索产品经理面试题目&#xff0c;获取下载地址 更多原型模板、视…

护眼灯什么光对眼睛好?适合考研党用的台灯推荐

如今&#xff0c;大多数人的日常工作和学习都离不开电子设备&#xff0c;长时间盯着屏幕容易造成眼睛疲劳和视力下降。全国近视率占多数的还是青少年&#xff0c;护眼台灯作为一种照明设备&#xff0c;具有调节光线亮度和色温的功能&#xff0c;可以有效减少眼睛的疲劳&#xf…

实时设计#N3期训练营DONE,ComfyUI中文社区@上海

作为主办方&#xff0c;我们非常高兴能够举办这次AIGC训练营&#xff0c;重点解决Comfyui的安装和入门。活动在下午1:30开始&#xff0c;在上海永兴仓库举行。 首先&#xff0c;我们向参与者介绍了本次活动的目的和安排&#xff0c;让大家对活动有一个清晰的认识。 接着&#x…

每周一算法:背包问题(三)多重背包

多重背包 有 N N N件物品和一个容量是 M M M的背包。第 i i i种物品最多有 s i s_i si​件&#xff0c;每件的体积是 v i v_i vi​&#xff0c;价值是 w i w_i wi​。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。 输…

Qt 如何操作SQLite3数据库?数据库创建和表格的增删改查?

# 前言 项目源码下载 https://gitcode.com/m0_45463480/QSQLite3/tree/main # 第一步 项目配置 平台:windows10 Qt版本:Qt 5.14.2 在.pro添加 QT += sql 需要的头文件 #include <QSqlDatabase>#include <QSqlError>#include <QSqlQuery>#include &…

Dockerfile脚本编写流程及示例

学习dockerfile指令 Dockerfile 指令 说明 FROM 指定基础镜像 MAINTAINER 声明镜像的维护者 LABEL 添加元数据标签 RUN 在容器中执行命令 CMD 容器启动后默认执行的命令 EXPOSE 暴露容器的端口 ENV 设置环境变量 ADD 将文件、目录或远程文件添加到容器中 COP…

以用户为中心的前端性能

1. 简介 前端性能跟用户体验息息相关。举个栗子&#xff0c;当你打开乘车码扫码进站&#xff0c;网页白屏了很久才加载出来&#xff0c;延误了乘车时间&#xff1b;当你在微信抢红包时&#xff0c;点击按钮后延迟了一会才开始转圈圈&#xff0c;最终没抢到红包。当出现这样的情…

医疗器械设备模组的具体应用

直线模组是一种高精度、高速度的精密传动元件&#xff0c;目前被广泛应用在各种工业自动化领域&#xff1b;尤其是在激光加工、电子制造、医疗设备、物流设备和机器人等行业中&#xff0c;都发挥着重要作用&#xff0c;接下来我们看看医疗器械设备模组的具体应用吧&#xff01;…

echarts笔记-GeoJSON河北数据下并裁剪为冀北地图并使用echarts加载

首先找个网站把河北的GeoJSON数据下载下来&#xff0c;我用的是这个&#xff0c;理论上任意一个都可以 DataV.GeoAtlas地理小工具系列 将json数据下载后&#xff0c;进行裁剪&#xff0c;仅保留冀北数据。 如下&#xff0c;我裁剪的数据&#xff1a; {"type": &qu…

【备忘干货】c/c++ (wasm)和js互相调用记录

c/c&#xff08;wasm&#xff09;和js互相调用记录 废话 :)准备工作&#xff1a;安装Emscripten初探&#xff1a;C(wasm)之hello world进一步探究&#xff1a;接口调用1.js调用c&#xff0c;一些基本类型的传递&#xff08;char*&#xff0c;int&#xff0c;float&#xff09;以…

企业安全生产管理系统功能介绍

安全生产管理系统通过借助信息化手段和技术算法&#xff0c;建立了一个集安全风险监测预警、安全分区管理、隐患排查治理、特殊作业、人员定位管控于一体的“一张图”平台。平台可以实现企业安全生产管控的全面监管&#xff0c;推动公司生产安全业务的动态管理、集中管理和协同…

014 OpenCV canny边缘检测

一、环境 本文使用环境为&#xff1a; Windows10Python 3.9.17opencv-python 4.8.0.74 二、canny原理 OpenCV中的Canny边缘检测算法是一种基于图像处理的计算机视觉技术&#xff0c;主要用于检测图像中的边缘。Canny边缘检测算法的原理是通过计算图像中像素点之间的梯度值来…

GPT4-Turbo技术原理研发现状及未来应用潜力分析报告

今天分享的是GPT4-Turb系列深度研究报告&#xff1a;《GPT4-Turbo技术原理研发现状及未来应用潜力分析报告》。 &#xff08;报告出品方&#xff1a;深度行业分析研究&#xff09; 报告共计&#xff1a;46页 图像理解能力提升&#xff1a;三大视觉学习方法  为打造视觉大模…