gericandmorty/AirBnbrrr_raspi

GitHub: gericandmorty/AirBnbrrr_raspi

一个基于 Raspberry Pi 和 FastAPI 的窗式空调 IoT 监控与主动故障检测系统,通过机器学习、规则引擎与 LLM 相结合的混合诊断流水线在设备失效前发出预警。

Stars: 1 | Forks: 0

# AirBnBrrr:AI 驱动的 HVAC IoT 监控系统 AirBnBrrr 是一个专为窗式空调设计的端到端 IoT 监控和主动故障检测系统。它通过 Raspberry Pi 传感器阵列采集实时遥测数据,并经由 FastAPI 后端进行处理,以检测异常、生成可解释的报告并发送自动 SMS 警报。 ## 核心功能 * **IoT 遥测数据采集**:从定制的 Raspberry Pi 传感器套件接收实时数据,包括温度、湿度、振动、功耗、电压和粉尘水平。 * **混合诊断流水线**:一种稳健的三层异常检测方法: 1. **机器学习 (Isolation Forest)**:分析历史数据,检测传感器读数中的统计异常值。 2. **确定性规则引擎**:一个基于物理规则评估的系统,将实时数据与硬编码的工程阈值(例如压缩机过载、欠压)进行对比,以提供可验证、一致的检测结果。 3. **生成式 AI (LLM)**:使用 **`zai-glm-4.7`** 模型(可通过 Web UI 自定义)查询超快的 **Cerebras Inference API**,以生成上下文诊断和预测。后端包含一个稳健的清理层,可从 LLM 输出中清理 Markdown 代码块(```json ... ```),从而实现可靠的 JSON 解析。 * **自动化 SMS 警报**:集成 Traccar SMS Gateway,在检测到严重故障时立即通知维护人员。 * **响应式 Web Dashboard**:一个使用 Tailwind CSS 构建的简洁、用户友好的界面,用于可视化遥测数据、并排查看详细的异常报告以及管理系统联系人。 ## 技术栈 * **后端**:Python、FastAPI * **数据库**:PostgreSQL (Supabase) * **机器学习**:scikit-learn (Isolation Forest) * **前端**:HTML、Vanilla JavaScript、Tailwind CSS、Lucide Icons * **集成**:Traccar SMS Gateway、生成式 AI API ## 安装与设置 ### 前置条件 * Python 3.9+ * PostgreSQL 数据库(或 Supabase 项目) ### 环境配置 在根目录下创建一个包含以下变量的 `.env` 文件: ``` SUPABASE_URL=postgresql://[user]:[password]@[host]:[port]/[db_name] # 在此添加 Generative AI 服务所需的任何 API 密钥 ``` ### 设置步骤 1. **克隆仓库并进入目录**: git clone https://github.com/gericandmorty/AirBnbrrr.git cd AirBnbrrr 2. **创建并激活虚拟环境**: * Windows: python -m venv venv venv\Scripts\activate * macOS/Linux: python -m venv venv source venv/bin/activate 3. **安装依赖**: pip install -r requirements.txt 4. **运行数据库迁移**: 确保您的数据库具有所需的 schema 并初始化了自增序列。如有必要,请运行提供的迁移脚本: python fix_telemetry_id.py python fix_alerts_id.py python fix_contacts_id.py ## 运行应用 使用 Uvicorn 启动 FastAPI 服务器: ``` uvicorn main:app --reload --host 127.0.0.1 --port 8000 ``` Web Dashboard 将在 `http://127.0.0.1:8000` 上可用。 ## 架构概述 1. **Raspberry Pi** 采集传感器数据,并向 `/telemetry` 发送 POST 请求。 2. 后端存储原始数据并触发 **Isolation Forest** 模型。 3. 如果检测到异常,数据将被传递给 **规则引擎** 以进行基于物理规则的阈值验证。 4. 系统随后查询 **LLM** 以获取额外的上下文分析。 5. 系统会保存合并后的 JSON 报告,并向授权联系人发送包含摘要和详细报告链接的 **SMS 警报**。
标签:Apex, AV绕过, FastAPI, 后端开发, 异常检测, 故障预测, 机器学习, 测试用例, 物联网, 设备监控, 逆向工具