# PCB轴向磁通电机自动化仿真系统

> 双系统解耦的轴向磁通电机自动化仿真平台：Web端方案生成 + 本地EXE仿真执行

| 项目 | 内容 |
|---|---|
| 文档版本 | V0.1（Phase 1 最小闭环） |
| 作者 | Car.Lin |
| 启动日期 | 2026-08-27 |
| 状态 | Phase 1 开发中 |
| 设计方案 | [PCB轴向磁通电机自动化仿真系统设计方案介绍.md](PCB轴向磁通电机自动化仿真系统设计方案介绍.md) |

---

## 项目目标

构建一个通用的、可扩展的、双系统解耦的轴向磁通电机自动化仿真平台：

- **系统一（Web端）**：输入边界条件 → 基于经验库+规则+AI生成仿真方案 → 人工确认 → 下发
- **系统二（本地EXE）**：读取方案 → 驱动Motor-CAD自动仿真 → 输出结果 → 回传
- **核心闭环**：边界条件 → 方案 → 仿真 → 结果 → 反馈调整 → 经验库积累

### Phase 1 目标（当前）

跑通最小闭环：**本地GUI方案编辑 → Motor-CAD自动化仿真 → 结果输出 → 经验库积累**

- 仿真工具：Motor-CAD 2026R1（电磁仿真）
- 拓扑：SSSR（单定子单转子）
- 调试模型：`MARS-12S10P_SSSR_D76-C150_V5.0-0819.mot`
- 输出指标：平均转矩、转矩脉动(%)、系统效率、总损耗
- 通信方式：本地文件交换（simulation_plan.json → simulation_results.csv）

---

## 快速开始

### 环境要求

| 项 | 要求 | 验证 |
|---|---|---|
| 系统 | Windows 10/11 | — |
| Motor-CAD | 2026R1 (v261) | `echo %MOTORCAD_ACTIVEX%` |
| Python | ≥ 3.10 | `python --version` |
| PyMotorCAD | `pip install ansys-motorcad-core` | `python -c "import ansys.motorcad.core"` |
| 许可证 | FlexNet `ANSYSLMD_LICENSE_FILE=1055@localhost` | ANSYS License Management Center |

### 安装依赖

```bash
pip install ansys-motorcad-core pyside6 pandas
```

### 运行单工况验证

```bash
python scripts/run_single.py
```

Motor-CAD会前台弹出，求解约2分钟，结束后输出转矩、效率、损耗等指标。

### 运行参数扫描

```bash
python scripts/run_scan.py --plan simulation_plan.json
```

---

## 项目结构

```
PCB轴向磁通电机自动化仿真系统/
├── README.md                          # 本文件
├── AGENTS.md                          # AI工具工作说明（必读）
├── .gitignore
├── PCB轴向磁通电机自动化仿真系统设计方案介绍.md  # 完整设计方案V1.1
├── docs/
│   ├── KNOWLEDGE_BASE.md              # 核心知识库（方法/参数语义/坑/SOP）
│   └── CONVERSATION_LOG.md            # 对话与决策记录（带时间戳）
├── src/
│   ├── solver_core.py                 # 仿真核心（Motor-CAD连接/参数/求解/结果提取）
│   ├── scan_engine.py                 # 参数扫描引擎
│   ├── plan_schema.py                 # 方案JSON Schema定义
│   ├── experience_db.py               # 经验库（SQLite）
│   └── gui/
│       └── main.py                    # PySide6 GUI主程序
├── scripts/
│   ├── run_single.py                  # 单工况快速验证
│   └── run_scan.py                    # 命令行扫描入口
├── models/
│   └── MARS-12S10P_SSSR_D76-C150_V5.0-0819.mot  # 调试模型（只读）
├── output/                            # 仿真输出（不入库）
├── experience/                        # 经验库数据
├── axial_mag_pull-master/            # 参考案例1：轴向磁拉力仿真
├── torqrippswap-master/              # 参考案例2：转矩脉动参数扫描+GUI
└── 书籍与论文/                         # 理论参考资料
```

---

## 参考案例

本项目基于两个已验证的参考案例构建：

| 案例 | 路径 | 核心价值 |
|---|---|---|
| axial_mag_pull | [axial_mag_pull-master/](axial_mag_pull-master/) | 单一目标微缩闭环验证、三判据校验、AFM轴向力数据口 |
| torqrippswap | [torqrippswap-master/](torqrippswap-master/) | 参数扫描引擎、PyQt5 GUI+EXE打包、工程化规范 |

## 理论参考

轴向磁通电机基础理论知识参见 [书籍与论文/](书籍与论文/) 目录：

- 《轴向磁通永磁无刷电机（原书第2版）》Jacek F. Gieras — 国际权威，主要参考
- 《轴向磁场无刷同步电机理论与设计》邓秋玲 — 国内工程实践，补充参考

当方案生成、参数初值估算、物理约束规则等需要理论支撑时，优先查阅上述书籍。

---

## 项目纪律（硬性）

1. **每次运行仿真前 git commit**（脚本改动先入库再跑）
2. **结果与报告带时间戳+简要说明并提交**；报告版本化不覆盖
3. **Motor-CAD前台运行**，跑完保持打开供人工检查
4. **生成物不入库**（output/、*.log、build/、dist/）
5. **原始.mot只读**，一切修改在时间戳副本上进行
6. **参数写入后必须回读校验**，不一致标记FAILED
7. **每个扫描点重新加载基线模型**，防止参数污染
8. **对话与决策带时间戳记入 docs/CONVERSATION_LOG.md**

---

## 阶段路线图

| 阶段 | 目标 | 状态 |
|---|---|---|
| **M1** | 环境验证 + 单工况仿真脚本 | 进行中 |
| **M2** | 参数扫描引擎（单参数/多参数） | 待开始 |
| **M3** | 方案JSON接口 + 本地GUI（方案编辑+执行监控） | 待开始 |
| **M4** | 经验库雏形 + 反馈闭环 | 待开始 |
| Phase 2 | Web端方案系统基础框架 | 规划中 |
| Phase 3 | 算法增强（Morris/LHS/Kriging/NSGA-II）+ DRSS拓扑 | 规划中 |
| Phase 4 | 多物理场（热/结构）+ 多工具扩展 | 规划中 |
