全部项目

已完成

AquaPulse

面向多户住宅楼的智能用水管理。从 ESP32 传感器到网页应用和 Android 应用,每户的用水都被计量、公平计费,并时刻监测漏水。

  • ESP32
  • MQTT over TLS
  • FastAPI
  • TimescaleDB
  • React
  • Flutter
  • Docker
用四个场景展示 AquaPulse 的真实功能:水泵自动给屋顶水箱补水,AI 在夜间漏水时关闭阀门,pH 不安全时发出警报,月度账单完成支付。

问题,以及 AquaPulse 做什么

在许多公寓楼里,用水是共享的,没人真正知道谁用了多少。水箱会溢出或抽干,漏水的管道可能整夜流个不停,水费只能靠估算分摊。AquaPulse 让一栋普通的楼变成智能用水的楼。

业主

查看每户的用水,按真实读数公平计费,远程开关供水,监测水质并接收警报。

住户

查看自己的用水和账单,在线支付,自己开关供水,并确认水是安全的。

设备

每户一个 ESP32 节点,测量流量、pH 和温度,并驱动电动阀门;水箱节点控制水泵。没有硬件时,一个包含 10 户和一个水箱的数字孪生完成同样的工作。

业主的总览。
一户的实时情况。

它能做什么

  • 实时监测:每户的流量、pH 和温度通过加密的 MQTT 传输,在仪表盘上实时更新。
  • 远程阀门控制:只有设备本身确认后,命令才算完成。
  • 水箱和水泵:水箱节点在 25% 时自动开泵、95% 时关泵,绝不干转,即使服务器停机也照常工作。
  • 阶梯计费和支付:价格由业主设定,支持 11 种货币,生成 PDF 账单。可用现金、银行转账或通过 Stripe 刷卡支付(仅测试模式)。
  • AI 漏水检测和预测:发现缓慢漏水和爆管,可选择自动关阀;提供 7 天用水预测和月底账单估算,并标出异常的日子。在模拟测试数据上,它找出了全部 62 个预设的漏水和爆管,没有误报。
  • 警报:九条规则,通过应用和电子邮件发送,并可选 Firebase 推送通知。

整体结构

  1. ESP32 节点或数字孪生
  2. Mosquitto基于 TLS 的 MQTT,每台设备一个密码
  3. Ingestor检查每条消息
  4. TimescaleDB读数、账单、审计日志
  5. FastAPIAPI 和实时 WebSocket,位于 Caddy(HTTPS)之后
  6. 网页应用和 Android 应用React PWA 和 Flutter

868 个后端测试,覆盖率 95.4%;双因素登录、防篡改审计日志;每次改动都运行 CodeQL、Trivy、gitleaks、pip-audit、Bandit 和 OWASP ZAP 扫描。

我的角色

我设计并构建了整个系统,从需求规格说明书到硬件、后端、网页应用、Android 应用、AI 和安全。1.0.0 版于 2026 年 10 月 31 日以 MIT 许可证发布。

背景:从哪里开始

AquaPulse 源自我 2023 年在奎达 BUITEMS 的本科毕业设计“Smart Eco Utilization for Smart Edifice”(论文报告题为“IoT based Pure Aqua Utilization in Smart Edifice”)。在 Raja Asif Wagan 博士指导下,三人团队用 Arduino、蓝牙和一个 Android 应用实现了水箱水位测量和水泵自动控制。AquaPulse 保留了这个想法,并为整栋楼重新构建了其余的一切。