新增项目交接步骤手册
主要更改: 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