当前位置: 首页 > news >正文

【物联网】什么是 DHT11(数字温湿度传感器)?

在这里插入图片描述

正面照片(蓝色传感器朝上,针脚朝下)

丝印标注非常清晰:

左边 → S 👉 信号 (DATA)

中间 → + 👉 VCC (电源,3.3V 或 5V)

右边 → - 👉 GND (地)

✅ 正确接法(Arduino Nano 33 IoT)

S (最左边脚) → D2(和你代码 #define DHTPIN 2 一致)

中间 + → 3.3V(⚠️ Nano 33 IoT 不能用 5V)


1. 什么是 DHT11

  • DHT11 是一种常见的 数字温湿度传感器

  • 它内部集成了:

    • NTC 热敏电阻 → 测温
    • 湿度感应电容 → 测湿度
    • 8 位单片机 → 把温湿度信号转化为数字信号输出
  • 输出方式:单线数字信号(用一个数据引脚就能同时传温度和湿度)。

  • 优点:便宜、简单、广泛用于教学和 IoT 入门项目。

  • 缺点:精度不高(±2°C 温度,±5%RH 湿度),采样频率低(每秒 1 次)。


2. 为什么在你的项目里选择 DHT11

IFN649 Assessment 1 中,你需要一个 传感器节点 来模拟现实 IoT 数据源:

  • DHT11 非常适合入门实验:便宜 + 易用 + Arduino 有成熟库。

  • 它可以提供 真实的物理环境数据(温度、湿度) → 给整个 IoT 管道“上行”传输用。

  • 在实验里:

    • Arduino Nano 33 IoT 通过 dht.readTemperature() / dht.readHumidity() 采集数据。
    • 这些数据通过 BLE characteristic (dhtCharacteristic) 广播给 Pi。
    • Pi 再转发到 MQTT Broker。

👉 所以 DHT11 在项目里就是 “数据源”,它给整个 IoT 系统提供真实输入。


3. 怎么方便理解

可以把 DHT11 想象成一个 “数字温湿度计”,它插在 Arduino 上,让你的 IoT 系统能“感知世界”。

类比生活:

  • 小米温湿度计(蓝牙/米家网关上传)
  • 空调里的温度传感器(决定什么时候制冷/加热)
  • 智能加湿器的湿度探头

4. 现实生活中的运用

DHT11 或类似传感器常见应用:

  • 智能家居:温湿度检测 + 云端联动(控制空调、加湿器)。
  • 农业大棚:监测环境温度/湿度,自动喷雾或通风。
  • 物联网学习/教学:初学者常用来练习传感器 → 网关 → 云端的完整流程。
  • 服务器机房:检测温湿度,联动风扇或告警。

5. 你作业1中的代码和它的关系

Nano33_DHT_BLE.ino 里:

  • #include <DHT.h> / #include <DHT_U.h>
    → 引入 DHT11 库。
  • DHT dht(DHTPIN, DHTTYPE);
    → 定义一个 DHT11 传感器实例。
  • float h = dht.readHumidity();
    → 读取湿度值。
  • float t = dht.readTemperature();
    → 读取温度值。
  • String payload = "H:" + String(h) + " T:" + String(t);
    → 把温湿度拼成字符串。
  • dhtCharacteristic.writeValue(payload);
    → 把温湿度数据广播给 Raspberry Pi。

👉 在 Assessment 1 里,DHT11 = IoT 数据源,它和你的 Arduino BLE 程序直接相关,是“上行数据链路”的起点。


✅ 总结:
DHT11 = 物理环境的“传感器眼睛”,负责让你的 IoT 系统采集真实温湿度。
在项目里,它让你模拟现实 IoT 系统中“感知世界 → 上传云端”的环节。


http://www.dtcms.com/a/356442.html

相关文章:

  • C++ 编译和运行 LibCurl 动态库和静态库
  • SyncBack 备份同步软件: 使用 FTPS、SFTP 和 HTTPS 安全加密传输文件
  • 【2025 完美解决】Failed connect to github.com:443; Connection timed out
  • 网络编程(2)—多客户端交互
  • 跨境物流新引擎:亚马逊AGL空运服务赋能卖家全链路升级
  • Pycharm 登录 Github 失败
  • idea2023.3遇到了Lombok失效问题,注释optional和annotationProcessorPaths即可恢复正常
  • “FAQ + AI”智能助手全栈实现方案
  • 极飞科技AI智慧农业实践:3000亩棉田2人管理+产量提15%,精准灌溉与老农操作门槛引讨论
  • autojs RSA加密(使用public.pem、private.pem)
  • 【拍摄学习记录】03-曝光
  • Lora与QLora
  • 创维E910V10C_晶晨S905L2和S905L3芯片_线刷固件包
  • SpringMVC相关梳理
  • 第三方软件测试:【深度解析SQL注入攻击原理和防御原理】
  • [Mysql数据库] 知识点总结6
  • 《Linux 网络编程六:数据存储与SQLite应用指南》
  • LabVIEW转速仪校准系统
  • uniapp跨平台开发---uni.request返回int数字过长精度丢失
  • uni-app + Vue3 开发H5 页面播放海康ws(Websocket协议)的视频流
  • 学习:uniapp全栈微信小程序vue3后台(6)
  • Uniapp + UView + FastAdmin 性格测试小程序方案
  • 2025最新uni-app横屏适配方案:微信小程序全平台兼容实战
  • 项目一系列-第9章 集成AI千帆大模型
  • 实现自己的AI视频监控系统-第二章-AI分析模块5(重点)
  • js AbortController 实现中断接口请求
  • 【MFC教程】C++基础:01 小黑框跑起来
  • 【MFC应用创建后核心文件详解】项目名.cpp、项目名.h、项目名Dlg.cpp 和 项目名Dlg.h 的区别与作用
  • Java项目打包成EXE全攻略
  • Kafka 副本同步异常与 ISR 收缩故障排查实录