littlebot
Published on 2025-04-14 / 1 Visits
0

【源码】基于Arduino的水流监测系统

项目简介

本项目是基于Arduino的开源水流监测系统,致力于开发水流使用传感器,增强人们对水资源浪费问题的认识。系统硬件涵盖ESP8266 Wifi微控制器单元、水流传感器、3D打印外壳等,软件基于Arduino开发,能把收集的水流数据上传到后端服务器的Postgres数据库,用户可通过Web前端界面查看用水情况。

项目的主要特性和功能

主要特性

  • 以ESP8266 Wifi微控制器单元为核心处理设备。
  • 配备水流传感器,能实时监测水流状况。
  • 定制3D打印外壳,结构紧凑稳固。
  • 有Web前端界面,可实时展示和追踪用水数据。

主要功能

  • 实时收集并分析水流数据。
  • 通过HTTP请求将数据上传至后端服务器,存储到Postgres数据库,实现远程监控。
  • 分析用户用水习惯和趋势,提供节水建议。
  • 提供可视化数据展示界面,便于用户直观查看用水情况。
  • 支持传感器校准,实现更精确的流量测量。
  • 软件和硬件扩展性良好,可与其他智能家居系统兼容。
  • 集成定时功能,能在特定时间或流量达到设定值时触发警报或自动关闭水龙头。

安装使用步骤

第一步:环境准备

  1. Arduino官方网站下载并安装Arduino IDE。
  2. 准备好所需硬件:ESP8266 Wifi MCU、水流传感器、3D打印外壳、硅胶密封剂。

第二步:复制项目代码

  1. 点击项目仓库的绿色“Code”按钮,复制链接。
  2. 执行命令git clone <粘贴复制链接>

第三步:配置设备信息

  1. 打开复制项目中的ESP8266_sensor_code/main/main.ino文件,在第13和14行设置自己路由器的Wifi名称和密码。
  2. 打开ESP8266_sensor_code/main/http_functions.ino文件,将变量device_ID改为唯一的整数。可通过此链接,点击左侧面板的群组图标,再点击“Select”查看已使用的编号。

第四步:设置Arduino IDE

  1. 选择开发板为“Node MCU 1.0”(路径:Tools > Board > 滚动找到Node MCU 1.0)。若该选项不存在,按此教程安装开发板管理器。
  2. 确保安装以下库(路径:Sketch > Include Library > Manage Libraries):
    • ArduinoJson by Benoit Blanchon Version 5.13.2
    • NTPClient by Fabrice Weinberg 3.2.0(可参考帮助文档

第五步:上传代码

将设备连接到电脑,确保波特率(使用115200)和端口设置正确,然后上传代码。

第六步:校准传感器

  1. 成功上传代码后,打开“Serial Monitor”,用量杯量取约500 ml水。
  2. 将水通过水流传感器(或反向操作,将水倒入传感器直至量杯达到约500 ml)。
  3. 记录串口监视器上的测量值。
  4. sensor_functionsESP8266_sensor_code/main/sensor_functions.ino)中找到calibrationFactor并记录其值。
  5. 计算新的校准因子:NewCalibrationFactor = (500 / 测量值) * 旧校准因子

第七步:使用设备

将设备安装到水槽末端,打开水龙头让水通过水流传感器,在Arduino控制台可看到记录的水量。访问网站,点击左侧面板的群组页面,选择自己的设备ID,即可查看数据。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】