项目简介
本项目借助Arduino和Node-RED达成对农村住宅中两个独立水箱水位的自动控制。系统利用超声波传感器监测水位变化,依据预设条件自动控制水泵的启停,保证水箱水位处于安全范围。同时,系统支持通过MQTT协议进行远程监控与数据上传。
项目的主要特性和功能
- 水位监测:运用超声波传感器实时监测两个水箱的水位。
- 自动控制:依据水位数据自动控制水泵的启停,确保水箱水位在预设范围内。
- 远程监控:通过MQTT协议实现远程数据传输和监控,可通过Node-RED仪表板实时查看系统状态。
- 数据记录:把监测到的水位数据上传至Node-RED服务器,方便后续分析和处理。
安装使用步骤
硬件准备
- 1个Arduino Uno板
- 1个Protoboard
- 1个水泵
- 1个继电器(SRD-05VDC-SL-C)
- 3个LED灯(红色、蓝色、黄色)
- 2个超声波传感器(HC-SR04)
- 5个1kΩ电阻
- 若干跳线用于连接硬件
软件安装
- Arduino IDE:
- 下载并安装Arduino IDE。
- 打开Arduino IDE,导入项目代码文件
monitoring-system.ino
。 - 将代码上传至Arduino板。
- Node-RED:
- 通过npm安装Node-RED。
- 启动Node-RED,配置MQTT节点和仪表板节点。
- 创建数据流,连接Arduino与MQTT Broker。
系统配置与测试
- 硬件连接:
- 按照项目文档中的电路图连接所有硬件组件。
- 确保所有连接正确无误。
- 软件配置:
- 在Node-RED中配置MQTT Broker,创建相应的主题用于数据交互。
- 在Node-RED中创建数据流,连接Arduino与MQTT Broker。
- 系统测试:
- 启动系统,观察水位监测和自动控制的运行情况。
- 通过Node-RED仪表板实时查看系统状态和数据。
注意事项
- 在进行任何硬件连接或更改之前,请确保电源已断开。
- 请勿将水泵长时间置于无水状态下运行,以免损坏。
- 在进行系统调试时,请确保有人在场并随时观察系统的运行状态。
- 若遇到问题,请及时查看代码、接线或配置是否正确。
- 本系统的运行依赖于稳定的网络连接和可靠的MQTT Broker服务。请确保网络连接的稳定性和Broker的正常运行。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】