CGQ_TEST_DEVICE/README.md

138 lines
4.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 传感器测试设备软件 (Sensor Test System)
一款高安全性、高可靠性的传感器测试设备软件,作为传感器测试系统的核心控制单元,
实现从测试任务配置、自动化执行、实时监控、质量判定到加密报告生成的全流程闭环管理。
遵循 GJB 5000B 二级标准,满足军工级安全与可靠性要求。
## 功能特性
- **用户权限与双因子认证**: 支持操作员、工艺员、管理员三级权限集成TOTP动态口令认证
- **条码识别与模板匹配**: 通过扫码枪或手动输入传感器条码,自动匹配测试计划
- **自动化测试序列执行**: 自动控制压力加压DAQ数据采集支持暂停/继续/跳步
- **实时数据监控与绘图**: 实时显示压力-输出数据,报警状态指示
- **特征参数计算与判定**: 基于最小二乘法计算非线性、迟滞、重复性误差
- **加密报告生成与导出**: 生成PDF/A格式报告和CSV数据文件嵌入SM3哈希与数字水印
- **异常处理与自恢复**: 通讯中断后自动重连,恢复测试进度
## 技术栈
- Python 3.10+
- PyQt5 (GUI框架)
- reportlab (PDF生成)
- gmssl (SM3哈希算法)
- pyotp (TOTP动态口令)
## 项目结构
```
codegen-runs/codegen_d83282644a2a4b4b91e025e76d296e18/
├── README.md # 项目说明文档
├── requirements.txt # Python依赖清单
├── app/
│ ├── __init__.py # 包初始化
│ ├── main.py # 主入口与GUI界面
│ ├── data_structures.py # 数据结构定义
│ └── services.py # 业务逻辑服务层
└── tests/
├── __init__.py # 测试包初始化
└── test_basic.py # 单元测试与集成测试
```
## 安装与运行
### 1. 环境要求
- Python 3.10 或更高版本
- 支持操作系统麒麟V10 / Windows 10/11
### 2. 安装依赖
```bash
# 进入项目目录
cd codegen-runs/codegen_d83282644a2a4b4b91e025e76d296e18
# 创建虚拟环境(推荐)
python -m venv venv
# 激活虚拟环境
# Windows:
venv\Scripts\activate
# Linux/Kylin:
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
```
### 3. 启动应用
```bash
python -m app.main
```
### 4. 运行测试
```bash
# 运行所有测试
python -m pytest tests/ -v
# 或使用unittest
python -m unittest discover tests -v
```
## 使用说明
### 登录
1. 启动应用后显示登录对话框
2. 输入用户名和密码(默认测试账号见下表)
3. 输入6位TOTP动态口令测试环境使用 `123456`
| 用户名 | 角色 | 密码 |
|--------|------|------|
| admin | 管理员 | pass123 |
| tech01 | 工艺员 | pass123 |
| op01 | 操作员 | pass123 |
### 执行测试
1. 在条码输入框输入传感器型号(如 `SENSOR-001`),点击"加载测试计划"
2. 点击"开始"按钮启动自动化测试
3. 测试过程中可暂停/继续/跳步
4. 测试完成后自动显示判定结果PASS/FAIL
### 生成报告
1. 测试完成后,点击"生成报告"按钮
2. 系统生成PDF报告和CSV数据文件
3. 报告嵌入SM3哈希值和数字水印确保完整性
## 测试账号(演示用)
| 用户名 | 角色 | 权限说明 |
|--------|------|---------|
| admin | 管理员 | 系统管理、用户管理、解锁账户 |
| tech01 | 工艺员 | 传感器型号配置管理 |
| op01 | 操作员 | 执行测试、查看结果、生成报告 |
## 安全特性
- **双因子认证**: 静态密码 + TOTP动态口令
- **账户锁定**: 密码错误5次自动锁定管理员可解锁
- **数据不落地**: 所有测试数据仅驻留内存,断电自动清空
- **SM3哈希**: 报告完整性校验
- **数字水印**: 防篡改标识
## 约束说明
- 本工程为演示版本,硬件接口使用模拟数据
- 实际部署时需连接压力控制器、DAQ卡等硬件设备
- 双因子认证在演示中使用固定口令正式环境需配置TOTP密钥
- SM3哈希使用SHA256模拟正式环境使用gmssl库实现
- 网络隔离、USB白名单等功能在演示中简化为状态指示
## 许可证
本项目为传感器测试系统演示工程,仅供学习和评估使用。