项目简介
本项目是基于Python和Telegram Bot的水消费管理系统,可帮助用户自动收集和存储家庭水表的用水数据。借助Telegram Bot,用户能便捷接收水表读数、查看用水统计与进行数据分析,系统还支持通过IoT设备自动上传水表数据,减少手动输入麻烦。
项目的主要特性和功能
- Telegram Bot交互:用户通过Telegram Bot接收水表读数提醒、查看当前读数及获取过去7天和30天的用水量变化。
- 自动数据收集:利用IoT设备(如Wemos D1 mini)自动读取水表数据,通过MQTT协议上传到服务器。
- 数据存储与分析:数据存于本地SQLite数据库,用户可通过Grafana查看用水统计和趋势分析。
- 用户友好:Telegram Bot提供友好交互界面,方便用户管理水表数据和接收提醒。
安装使用步骤
假设用户已下载项目的源码文件。
1. 环境准备:
- 确保服务器或Raspberry Pi上安装了Python 3、Grafana、Mosquitto、Node-RED和SQLite。
- 安装必要的Python库,如paho-mqtt
、sqlite3
、telegram
等。
2. 配置Telegram Bot:
- 在Telegram中创建一个Bot,获取API密钥。
- 将API密钥填入settings.py
文件中的API_KEY
字段。
3. 配置IoT设备:
- 按指南连接Wemos D1 mini到水表,并进行固件烧录。
- 配置MQTT服务器地址和主题,保证设备能正确上传数据。
4. 启动服务:
- 运行bot.py
文件启动Telegram Bot。
- 启动Node-RED流,确保MQTT数据能正确处理并存储到SQLite数据库。
- 启动Grafana,配置数据源为SQLite,创建仪表盘查看用水统计。
5. 使用Telegram Bot:
- 通过Telegram与Bot交互,发送/start
开始使用,/readings
获取当前读数,/stats
查看用水统计等命令。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】