# 工厂测试页面使用说明

## 概述

工厂测试页面是专门为机器人生产线设计的测试界面，提供了简化的操作流程和全面的功能测试。

## 访问方式

启动服务器后，可以通过以下方式访问工厂测试页面：

1. **直接访问**：http://服务器 IP:5010/factory_test.html
2. **简短路由**：http://服务器 IP:5010/factory
3. **本地访问**：http://127.0.0.1:5010/factory

## 主要功能

### 1. 连接测试

- 输入机器人 IP 地址
- 一键连接/断开
- 实时显示连接状态

### 2. 基础信息测试

- 机器人名称获取
- 版本信息检查
- 电池状态监控
- 一键获取所有基础信息

### 3. 动作控制测试

- **姿态测试**：站立、坐下、趴下
- **驱动模式**：工作模式、锁定模式
- **身高设置**：27-40cm 范围调节

### 4. 运动控制测试

- **基础移动**：前进、后退、左转、右转
- **速度控制**：自定义前进和转向速度
- **步态设置**：小跑、步行、爬楼梯步态
- **紧急停止**：一键停止所有运动

### 5. 灯光测试

- 开灯/关灯
- 呼吸灯模式
- 闪烁模式

### 6. 风扇测试

- **标准风扇测试**：执行默认风扇测试脚本
- **风扇脚本测试**：执行指定的风扇脚本
- **风扇转速测试**：测试风扇转速功能
- **风扇停止**：停止风扇运行
- **自定义脚本**：支持输入自定义脚本文件名

### 7. 网络接口测试

- **EtherCat 网卡测试**：测试 EtherCat 网络接口
- **EtherNet 网卡测试**：测试标准以太网接口

### 8. 接口测试

- **USB Host 测试**：测试 USB 主机接口功能
- **PTP 串口测试**：测试 PTP 精确时间协议串口
- **单片机串口测试**：测试与单片机通信的串口

### 9. 系统组件测试

- **RTC 时钟测试**：测试实时时钟功能
- **灯效测试**：测试 LED 灯光效果
- **自定义硬件测试**：支持输入自定义硬件测试脚本

### 10. 快速测试套件

- **完整功能测试**：自动执行所有测试项目（包含所有硬件测试）
- **基础测试**：快速验证核心功能
- **实时进度显示**：测试进度条和结果统计

## 状态监控

### 实时状态显示

- 连接状态
- 机器人基本信息
- 当前工作模式
- 各功能状态（灯光、风扇）
- 网络接口状态
- 串口接口状态
- 系统组件状态
- 最后更新时间

### 测试日志

- 详细的操作日志
- 成功/失败状态标识
- 时间戳记录
- 日志导出功能

## 测试流程建议

### 标准测试流程

1. **连接测试**：确保机器人通信正常
2. **基础信息测试**：验证机器人基本功能
3. **动作控制测试**：测试各种姿态和驱动模式
4. **运动控制测试**：验证移动功能
5. **灯光测试**：检查 LED 功能
6. **风扇测试**：验证风扇系统功能
7. **网络接口测试**：测试 EtherCat 和以太网接口
8. **串口接口测试**：测试 USB、PTP 和单片机串口
9. **系统组件测试**：测试 RTC 时钟和灯效
10. **完整功能测试**：自动化全面测试

### 硬件专项测试流程

1. **网络接口专测**：EtherCat → EtherNet
2. **接口专测**：USB Host → PTP 串口 → 单片机串口
3. **系统组件专测**：RTC 时钟 → 灯效测试

### 快速验证流程

1. 连接机器人
2. 运行"基础测试"
3. 检查测试结果

## 安全注意事项

1. **紧急停止**：随时可以点击"紧急停止"按钮
2. **运动测试**：确保机器人周围有足够空间
3. **测试时间**：移动测试会自动在 2 秒后停止
4. **状态监控**：注意观察电池电量和连接状态

## 故障排除

### 连接问题

- 检查 IP 地址是否正确
- 确认 API 服务器已启动
- 验证网络连接

### 测试失败

- 查看详细日志信息
- 检查机器人状态
- 重新连接后重试

### 性能优化

- 定期清空日志
- 避免同时运行多个测试
- 关注电池电量

## 技术特性

- **响应式设计**：支持不同屏幕尺寸
- **实时反馈**：即时显示操作结果
- **错误处理**：完善的异常捕获和提示
- **日志系统**：详细的操作记录
- **进度显示**：可视化测试进度

## 与主控制面板的区别

工厂测试页面相比主控制面板(demo_gui.html)具有以下特点：

1. **简化界面**：专注于测试功能，界面更简洁
2. **自动化测试**：提供一键测试套件
3. **生产导向**：针对工厂环境优化
4. **快速验证**：支持批量快速测试
5. **状态监控**：实时显示关键状态信息

适合在生产线上进行机器人功能验证和质量检测。

## 硬件测试技术详情

### API 接口

所有硬件测试都通过调用机器人 SDK 的`call_method`方法实现：

```javascript
{
    method_name: 'FactoryTest',
    script_name: 'test_script_name',
    request_id: 'factory-test-demo'
}
```

### 完整测试脚本列表

#### 风扇测试

- **fan_test.sh**：基本风扇功能测试
- **fan_speed_test.sh**：风扇转速测试
- **fan_stop.sh**：停止风扇运行

#### 网络接口测试

- **ethercat_test**：EtherCat 网卡功能测试
- **ethernet_test**：标准以太网接口测试

#### 接口测试

- **usbhost_test**：USB 主机接口测试
- **ptp_test**：PTP 精确时间协议串口测试
- **singlechip_test**：单片机通信串口测试

#### 系统组件测试

- **rtc_test**：实时时钟(RTC)功能测试
- **light_test**：LED 灯效功能测试

### 自定义脚本

支持输入自定义脚本文件名，可以根据具体需求执行不同的风扇测试脚本。

### 状态监控

- 实时显示风扇测试状态
- 详细的操作日志记录
- 测试结果反馈

### 集成测试

风扇测试已集成到完整功能测试套件中，作为标准测试项目之一。
