diff --git a/使用手册/手册指南/项目交接步骤手册.md b/使用手册/手册指南/项目交接步骤手册.md new file mode 100644 index 0000000..88885c5 --- /dev/null +++ b/使用手册/手册指南/项目交接步骤手册.md @@ -0,0 +1,377 @@ +# 智能家居项目交接步骤手册 + +## 📋 项目概述 + +**项目名称**:智能家居系统 (Smart Home System) +**技术栈**:ESP32 + Android + 云端后台 +**主要功能**:热成像火灾检测、人员检测、红外控制、雷达监测、WiFi配置、云端报警 +**开发周期**:2024-2026年 +**交接日期**:2026年2月28日 + +--- + +## 🗂️ 项目目录结构详解 + +### **根目录:`d:\XinJiaPo\Firefly_code\smart-home\`** + +``` +smart-home/ +├── 📱 Smarthome_android/ # Android应用程序 +├── 🔧 firefly_esp32/ # ESP32固件代码 (核心) +├── ☁️ cloud-backend-jdk8/ # 云端后台服务 +├── 📚 使用手册/ # 技术文档和手册 +├── 🎨 ziyuan/ # 资源文件 +├── 🧪 python_test/ # Python测试脚本 +└── 📄 各种.md文件 # 问题修复记录和说明 +``` + +--- + +## 🎯 **核心模块详细说明** + +### **1. ESP32固件 - `firefly_esp32/`** ⭐⭐⭐⭐⭐ +**这是整个项目的核心!** + +#### **主程序文件**: +- **`main/app_main.cpp`** - **🔥 ESP32主程序入口** (67KB,最重要的文件) +- **`main/CMakeLists.txt`** - 编译配置文件 +- **`sdkconfig`** - ESP32系统配置文件 + +#### **核心功能模块**: +``` +main/ +├── 🔥 AI2/ # AI算法模块 (火灾检测+人员检测) +│ ├── FireDetect.cpp/h # 火灾检测算法 +│ ├── PersonDetect.cpp/h # 人员检测算法 +│ └── tinycnn_model_data.h # TensorFlow Lite模型 +│ +├── 🌡️ Sensor/ # 传感器模块 +│ ├── HTPAd32x32L1k7/ # 当前热成像传感器 (32x32) +│ ├── HTPA60x40dR1L0.9/ # 新热成像传感器 (60x40) - 预备代码 +│ └── 其他传感器/ +│ +├── 🎛️ Controller/ # 控制器模块 +│ ├── IRController.cpp/h # 红外控制 +│ ├── LEDController.cpp/h # LED控制 +│ └── BuzzerController.cpp/h # 蜂鸣器控制 +│ +├── 📡 Module/ # 基础模块 +│ ├── WiFiManager.cpp/h # WiFi管理 +│ ├── Timer.cpp/h # 定时器 +│ └── Wire.cpp/h # I2C通信 +│ +├── 🔔 Notifier/ # 通知模块 +│ ├── CloudAlarmReporter.cpp/h # 云端报警 +│ └── LocalNotifier.cpp/h # 本地通知 +│ +├── 📶 RF433/ # 433MHz射频模块 +├── 🔄 OTA/ # 固件升级模块 +└── ⚡ PowerManager/ # 电源管理模块 +``` + +#### **重要配置文件**: +- **`partitions.csv`** - 分区表配置 +- **`sdkconfig`** - 系统配置 (WiFi、蓝牙、内存等) +- **`dependencies.lock`** - 依赖库版本锁定 + +--- + +### **2. Android应用 - `Smarthome_android/`** ⭐⭐⭐⭐ + +#### **主要版本**: +- **`android5.4.2/`** - **当前生产版本** (主要使用这个) +- **`Smarthome_android/`** - 开发版本 +- **`demo/`** - 演示版本 + +#### **核心文件**: +``` +android5.4.2/ +├── app/src/main/java/com/example/smarthome/ +│ ├── MainActivity.java # 主界面 +│ ├── WiFiConfigActivity.java # WiFi配置界面 +│ ├── IrControlActivity.java # 红外控制界面 +│ ├── AlarmActivity.java # 报警界面 +│ └── bridge/ +│ └── Esp32JsBridge.java # ESP32通信桥接 (重要) +│ +├── app/src/main/assets/www/ # Web界面资源 +└── app/build.gradle # 构建配置 +``` + +--- + +### **3. 云端后台 - `cloud-backend-jdk8/`** ⭐⭐⭐ + +#### **主要功能**: +- 设备管理和认证 +- 报警数据存储和推送 +- 用户管理 +- API接口服务 + +#### **核心文件**: +``` +cloud-backend-jdk8/ +├── src/main/java/com/smarthome/ +│ ├── controller/ # API控制器 +│ ├── service/ # 业务逻辑 +│ ├── entity/ # 数据实体 +│ └── config/ # 配置文件 +│ +├── application.yml # 应用配置 +└── pom.xml # Maven依赖 +``` + +--- + +### **4. 技术文档 - `使用手册/`** ⭐⭐⭐⭐ + +#### **重要文档**: +``` +使用手册/ +├── 📖 手册指南/ # 使用指南 (你现在在这里) +├── ⚙️ 环境配置/ # 开发环境配置 +├── 🔄 后续调整修改部分/ # 升级指南 +│ ├── HTPA60x40传感器升级指南.md # 传感器升级 +│ └── AI算法更新指南.md # AI算法更新 +└── 🎥 视频/ # 演示视频 +``` + +--- + +## 🚀 **快速上手步骤** + +### **第1步:环境准备** (预计1-2天) + +#### **开发工具安装**: +1. **ESP32开发环境**: + - 安装ESP-IDF v4.4+ + - 配置Python环境 + - 安装USB驱动 + +2. **Android开发环境**: + - 安装Android Studio + - 配置JDK 8 + - 安装SDK和NDK + +3. **云端开发环境**: + - 安装JDK 8 + - 安装Maven + - 配置数据库 + +#### **参考文档**: +- `使用手册/环境配置/配置教程网址.md` +- `firefly_esp32/ESP32编译烧录指南.md` + +### **第2步:代码理解** (预计2-3天) + +#### **ESP32固件理解顺序**: +1. **先看主程序**:`firefly_esp32/main/app_main.cpp` + - 理解程序启动流程 + - 了解各模块初始化顺序 + - 掌握主循环逻辑 + +2. **再看核心模块**: + - `AI2/` - AI算法模块 + - `Sensor/` - 传感器模块 + - `Controller/` - 控制器模块 + +3. **最后看辅助模块**: + - `Module/` - 基础功能 + - `Notifier/` - 通知功能 + - `OTA/` - 升级功能 + +#### **Android应用理解顺序**: +1. **MainActivity.java** - 主界面逻辑 +2. **Esp32JsBridge.java** - ESP32通信核心 +3. **各功能Activity** - 具体功能实现 + +### **第3步:编译测试** (预计1天) + +#### **ESP32固件编译**: +```bash +cd firefly_esp32 +idf.py build +idf.py flash monitor +``` + +#### **Android应用编译**: +1. 用Android Studio打开`android5.4.2/` +2. 同步Gradle依赖 +3. 编译并安装到手机 + +#### **云端服务启动**: +```bash +cd cloud-backend-jdk8 +mvn spring-boot:run +``` + +### **第4步:功能测试** (预计1-2天) + +#### **基础功能测试**: +1. **WiFi配置** - 使用Android应用配置ESP32 WiFi +2. **传感器数据** - 查看热成像和雷达数据 +3. **红外控制** - 测试空调、电视控制 +4. **报警功能** - 测试火灾检测和云端报警 + +#### **测试工具**: +- `python_test/` - Python测试脚本 +- `firefly_esp32/firefly_tool/` - ESP32调试工具 + +--- + +## 🔧 **常见问题和解决方案** + +### **编译问题**: +1. **ESP32编译失败**: + - 检查ESP-IDF版本 + - 清理build目录:`idf.py clean` + - 查看`firefly_esp32/BUILD_REPORT.md` + +2. **Android编译失败**: + - 检查JDK版本 (必须JDK 8) + - 清理项目:Clean Project + - 同步Gradle:Sync Project + +### **运行问题**: +1. **ESP32无法连接WiFi**: + - 使用`wifi_config_simple.py`重新配置 + - 检查路由器兼容性 + +2. **传感器数据异常**: + - 检查I2C连接 (GPIO14=SDA, GPIO21=SCL) + - 查看传感器供电是否正常 + +3. **Android无法连接ESP32**: + - 确保手机和ESP32在同一网络 + - 检查防火墙设置 + +--- + +## 📋 **重要文件清单** + +### **绝对不能删除的核心文件**: +1. **`firefly_esp32/main/app_main.cpp`** - ESP32主程序 +2. **`firefly_esp32/sdkconfig`** - ESP32系统配置 +3. **`android5.4.2/app/src/main/java/com/example/smarthome/bridge/Esp32JsBridge.java`** - 通信桥接 +4. **`firefly_esp32/main/AI2/tinycnn_model_data.h`** - AI模型数据 +5. **`使用手册/后续调整修改部分/`** - 升级指南 + +### **重要配置文件**: +1. **`firefly_esp32/partitions.csv`** - 分区配置 +2. **`android5.4.2/app/build.gradle`** - Android构建配置 +3. **`cloud-backend-jdk8/application.yml`** - 云端配置 + +--- + +## 🔄 **后续升级计划** + +### **硬件升级**: +1. **HTPA60x40传感器升级**: + - 参考:`使用手册/后续调整修改部分/HTPA60x40传感器升级指南.md` + - 新传感器代码已准备:`firefly_esp32/main/Sensor/HTPA60x40dR1L0.9/` + +2. **AI算法更新**: + - 参考:`使用手册/后续调整修改部分/AI算法更新指南.md` + - 客户会提供新的AI模型文件 + +### **软件优化**: +1. **性能优化** - 已完成传感器代码优化 +2. **功耗管理** - 已实现WiFi省电模式 +3. **云端同步** - 已实现报警云端推送 + +--- + +## 📞 **技术支持和联系方式** + +### **代码问题**: +- **原开发者**:fw +- **项目文档**:查看`使用手册/`目录下的详细文档 +- **问题记录**:根目录下的各种`.md`文件记录了历史问题和解决方案 + +### **调试工具**: +1. **ESP32调试**: + - 串口监控:`idf.py monitor` + - OTA调试:`firefly_esp32/ota_debug.ps1` + - WiFi配置:`firefly_esp32/wifi_config_simple.py` + +2. **Android调试**: + - Logcat日志查看 + - Chrome DevTools (WebView调试) + +3. **云端调试**: + - 查看应用日志 + - 数据库查询工具 + +--- + +## 🎯 **学习建议** + +### **第1周:熟悉项目** +- 阅读所有技术文档 +- 理解项目整体架构 +- 搭建开发环境 + +### **第2周:代码理解** +- 深入研究ESP32主程序 +- 理解AI算法工作原理 +- 掌握Android通信机制 + +### **第3周:实践操作** +- 编译和烧录固件 +- 测试各项功能 +- 尝试小的修改 + +### **第4周:进阶开发** +- 理解传感器升级流程 +- 学习AI算法更新方法 +- 掌握问题诊断技巧 + +--- + +## ⚠️ **重要提醒** + +### **安全注意事项**: +1. **备份重要**:修改代码前务必备份 +2. **版本管理**:使用Git管理代码变更 +3. **测试充分**:任何修改都要充分测试 + +### **性能注意事项**: +1. **内存管理**:ESP32内存有限,注意内存使用 +2. **实时性**:火灾检测要求实时响应 +3. **稳定性**:系统需要7x24小时稳定运行 + +### **兼容性注意事项**: +1. **硬件兼容**:新传感器需要验证兼容性 +2. **软件版本**:保持各组件版本一致 +3. **网络环境**:考虑不同网络环境的适配 + +--- + +## 📈 **项目发展历程** + +### **2024年**: +- 项目启动,基础架构搭建 +- ESP32固件开发 +- Android应用开发 + +### **2025年**: +- AI算法集成 +- 云端服务部署 +- 功能完善和优化 + +### **2026年**: +- 传感器升级准备 +- 性能优化完成 +- 项目交接准备 + +--- + +**祝新同事工作顺利!如有问题,请参考技术文档或联系原开发团队。** + +--- + +**文档版本**:v1.0 +**创建时间**:2026年2月28日 +**最后更新**:2026年2月28日 +**作者**:fw (离职交接文档) +**项目状态**:生产就绪,等待硬件升级