新增项目交接步骤手册
主要更改: 1. 项目交接文档: - 新增完整的项目交接步骤手册 - 详细说明代码结构和模块功能 - 提供部署和配置指南 - 包含故障排除和维护说明 2. 文档内容: - ESP32固件开发指南 - Android应用集成说明 - 云端服务器配置 - 硬件连接和调试步骤 3. 交接要点: - 关键技术栈说明 - 重要配置参数 - 常见问题解决方案 - 后续开发建议 目标:为项目交接提供完整的技术文档支持
This commit is contained in:
parent
e4d7ac11c0
commit
a17d39445f
377
使用手册/手册指南/项目交接步骤手册.md
Normal file
377
使用手册/手册指南/项目交接步骤手册.md
Normal file
|
|
@ -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 <kingfun2000@qq.com>
|
||||
- **项目文档**:查看`使用手册/`目录下的详细文档
|
||||
- **问题记录**:根目录下的各种`.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 (离职交接文档)
|
||||
**项目状态**:生产就绪,等待硬件升级
|
||||
Loading…
Reference in New Issue
Block a user