亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Blynk + Arduino 读取 DHT11 温湿度数据教程

元器件与物料清单

元器件 数量
DHT11 温湿度传感器 (4 引脚) 1
杜邦线 (公对公/公对母) 1 套
Arduino UNO 1
Android 设备 (运行 Blynk App) 1

应用与在线服务

项目简介

本教程演示如何使用 Blynk 平台读取 DHT11 温湿度数据并实时显示在手机上。如果不清楚如何在 Linux 下连接 Arduino,可参考另一教程(无需添加 LED)。

注意: 不要在 Blynk 添加 LED 按钮,也不要上传那个教程的代码!必须上传本文"代码"部分提供的代码。

原理图见文末"原理图"部分,展示 DHT11 与 Arduino 接线方法。

Blynk App 配置

完成基础连接后,你应看到设备在线。接下来添加两个仪表盘并按如下设置:

Blynk + Arduino 读取 DHT11 温湿度数据教程
Blynk + Arduino 读取 DHT11 温湿度数据教程
Blynk + Arduino 读取 DHT11 温湿度数据教程

可选:添加历史图表记录趋势

Blynk + Arduino 读取 DHT11 温湿度数据教程

最终界面效果:

Blynk + Arduino 读取 DHT11 温湿度数据教程

一切正常则能看到实时数据:

Blynk + Arduino 读取 DHT11 温湿度数据教程

开始体验吧!

Blynk + Arduino 读取 DHT11 温湿度数据教程

运行效果

仪表盘实时显示温度和湿度,历史图表记录变化趋势。这是一个简单易上手的项目,喜欢请点赞关注!

P.S. 享受制作乐趣最重要!

代码

DHT11 + Blynk 代码 (C/C++)

/**************************************************************
 * Blynk 平台支持通过拖拽组件快速构建图形界面控制 Arduino/Raspberry Pi 等设备
 * 下载/文档/教程: https://www.blynk.cc
 * 社区: https://community.blynk.cc
 * Blynk 库采用 MIT 许可证,示例代码公共领域
 **************************************************************
 * 本示例演示通过普通 Arduino Serial 连接 Blynk (USB 串口模式)
 * 可应用于其他示例,非常简单!
 **************************************************************
 * USB 连接教程: https://tiny.cc/BlynkUSB
 **************************************************************/

#include 
SoftwareSerial DebugSerial(2, 3); // RX, TX 调试串口
#define BLYNK_PRINT DebugSerial
#include 
#include 
#include 

#define DHTPIN 5         // DHT11 数据引脚
#define DHTTYPE DHT11    // DHT 11
//#define DHTTYPE DHT22  // DHT 22, AM2302, AM2321
//#define DHTTYPE DHT21  // DHT 21, AM2301

DHT dht(DHTPIN, DHTTYPE);
SimpleTimer timer;

// 在 Blynk App 项目设置(螺丝刀图标)获取 Auth Token
char auth[] = "YourAuthToken";

// 定时发送传感器数据到虚拟引脚
// App 中组件读取频率设为 PUSH 模式,由代码控制发送频率
void sendSensor() {
  float h = dht.readHumidity();
  float t = dht.readTemperature(); // 或 dht.readTemperature(true) 华氏度
  
  if (isnan(h) || isnan(t)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }
  
  // 发送到虚拟引脚 V5(湿度)、V6(温度)
  // 频率不超过 10 次/秒
  Blynk.virtualWrite(V5, h);
  Blynk.virtualWrite(V6, t);
}

void setup() {
  DebugSerial.begin(9600);  // 调试串口
  Serial.begin(9600);       // 硬件串口用于 Blynk 通讯
  Blynk.begin(Serial, auth);
  
  // 每秒调用一次 sendSensor
  timer.setInterval(1000L, sendSensor);
}

void loop() {
  Blynk.run();
  timer.run(); // 运行定时器
}

原理图

未找到 DHT11 模型,暂用 TMP36 代替标注

Fritzing 源文件: dht11_JqQomro2Tj.fzz

制造工艺

  1. 集成二维码、RFID与体温验证的门禁控制系统
  2. 树莓派2上使用DS18B20读取温度完整指南
  3. 树莓派配合 EzTemp 实现无缝温湿度监测
  4. 树莓派自动化气雾栽培系统:湿度传感器智能控制
  5. 验证并校准湿度传感器以实现精准测量
  6. DHT11 温湿度传感器项目:LED 指示与压电蜂鸣器报警
  7. Arduino + DHT11 + 以太网盾板温湿度数据记录仪
  8. BME280 环境数据实时显示于 Nextion 触摸屏——Visuino 图形化开发
  9. Arduino 合成乐音:从零实现 88 键钢琴全音域
  10. Arduino 连接 NMEA-0183 设备全攻略:从硬件接线到协议解析
  11. Arduino Modbus 从机开发全攻略:基于 RS485 扩展板的分步实现指南
  12. MKR1000 接入 Azure IoT:DHT22 温湿度实时上云监控