当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]通过实时监控车辆的在场情况、距离、温度和湿度,可以显著提升车库的智能化水平。在这个项目中,我使用ESP8266 NodeMCU、红外传感器、HC-SR04超声波传感器以及DHT11温湿度传感器,构建了一个简单的智能车库监控系统。

通过实时监控车辆的在场情况、距离、温度和湿度,可以显著提升车库的智能化水平。在这个项目中,我使用ESP8266 NodeMCU、红外传感器、HC-SR04超声波传感器以及DHT11温湿度传感器,构建了一个简单的智能车库监控系统。

ESP8266收集传感器数据,并通过Wi-Fi将信息发送至KiwisIoT平台,在平台上以实时仪表盘的形式显示数据。

该系统可监控以下四个参数:

•车辆在场状态

•距离

•温度

•湿度

该项目是一个简单的示例,展示了如何将传感器、ESP8266和物联网仪表板结合在一起,构建一个联网的监控系统。

工作原理

红外传感器用于检测车库内是否有车辆。

当检测到车辆时,系统会向KiwisIoT发送“True”;当没有车辆时,则发送“False”。

HC-SR04超声波传感器用于测量传感器与物体之间的距离,可用于监控车库内车辆的位置。

DHT11传感器用于测量车库的温度和湿度。

所有传感器读数均由ESP8266收集,并发送至不同的KiwisIoT通道。

传感器数据大约每两秒更新一次。

电路连接

红外传感器

红外传感器输出端连接至D7。

HC-SR04超声波传感器

超声波传感器使用D1作为触发信号,D2作为回波信号。

注意:如果HC-SR04产生5V的回波信号,请在将其连接到ESP8266 GPIO之前,使用合适的电压分压器或电平转换器。

DHT11

DHT11的数据引脚连接至D5。

引脚配置

KiwisIoT 配置

传感器数据通过四个通道发送至 KiwisIoT 平台。

创建一个 KiwisIoT 仪表板,并为这四个通道配置相应的小部件。

在 Arduino 代码中,将 Wi-Fi 和 Topic ID 的占位符替换为您的实际信息。

Arduino IDE 设置

我使用 Arduino IDE 1.8.19 编程 ESP8266 NodeMCU。

在上传程序前,请先安装 ESP8266 板件和所需库。

所需库:

•ESP8266WiFi

•KiwisIoT

•DHT

选择:

Tools → Board → ESP8266 Boards → NodeMCU 1.0 (ESP-12E Module)

然后选择正确的 COM 端口并上传程序。

Arduino 代码

理解代码

车辆检测

使用 digitalRead() 函数读取红外传感器的输出。

当传感器输出为低电平时,系统认为已检测到车辆。

结果发送至 KiwisIoT 通道 0。

距离测量

HC-SR04 发送超声波脉冲,并测量回波返回的时间。

距离计算公式如下:

计算出的距离值随后发送至 KiwisIoT 通道 1。

温度与湿度

DHT11 提供温度和湿度读数。

温度数据发送至通道 2。

湿度数据发送至通道 3。

数据更新

ESP8266 每约 2 秒读取并发送一次传感器数据,同时 kiwisiot.run() 保持物联网通信处于活动状态。

测试

上传程序后,我以115200波特率打开了Arduino串口监视器。

ESP8266成功读取了传感器数据,并将信息发送至KiwisIoT。

示例输出如下:

KiwisIoT仪表板

KiwisIoT仪表板通过独立的组件显示四个参数。

仪表板包含:

•检测到的车辆

•距离

•温度

•湿度

测试期间,仪表盘显示:

这为通过物联网仪表盘远程监控车库提供了一种简便的方式。

工作流程

结果

智能车库监控系统成功通过ESP8266 NodeMCU采集了红外传感器、超声波传感器和DHT11的数据。

传感器读数通过Wi-Fi传输至KiwisIoT,并在仪表板上显示。

结论

本项目展示了如何使用ESP8266和几个简单的传感器来构建一个联网的车库监控系统。红外传感器用于检测车辆是否存在,超声波传感器测量距离,DHT11则监测温度和湿度。

通过将ESP8266连接到KiwisIoT,所有这些信息都可以通过一个统一的仪表盘实时查看。

该项目也可作为开发更高级智能车库、停车及物联网自动化应用的起点。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭