PCB轴向磁通电机自动化仿真系统设计方案介绍.md 52 KB

PCB轴向磁通电机自动化仿真系统设计方案介绍

项目 内容
文档版本 V2.0(实现现状同步)
作者 Car.Lin
编制日期 2026-08-26
文档状态 已实施同步(2026-08-29,P1~P3 平台化落地)
参考原型 axial_mag_pull(Motor-CAD 轴向磁拉力仿真项目)
参考原型 axial_mag_pull(Motor-CAD 轴向磁拉力仿真项目)

1. 项目背景与目标

1.1 背景

轴向磁通电机(AFM)因其高功率密度、短轴向尺寸的优势,在电动汽车、航空航天、工业驱动等领域得到广泛应用。但其设计过程涉及多拓扑(SSSR / DRSS / SDSR)、多物理场(电磁 / 热 / 结构 / NVH)、多目标(效率 / 功率密度 / 扭矩 / 成本)的耦合优化,传统的"人工调参 → 单次仿真 → 人工分析"模式效率极低,且高度依赖工程师个人经验。

现有 axial_mag_pull 项目已验证了"知识库驱动 + 脚本化执行 + 结果校验"的微缩闭环可行性,但仅覆盖单一目标(轴向磁拉力)、单一拓扑(SSSR)、单一工具(Motor-CAD)。本项目在此基础上,构建一个通用的、可扩展的、双系统解耦的轴向磁通电机自动化仿真平台

1.2 核心目标

  1. 方案生成智能化:用户输入边界条件后,系统基于经验库 + 知识库 + AI推理,自动生成可执行的仿真方案(参数扫描范围、扫描顺序、工况列表、校验规则)。
  2. 仿真执行自动化:执行程序读取方案后,自动驱动仿真工具完成全部迭代,记录每次结果,输出汇总数据表。
  3. 双系统解耦:方案系统(网页端、需联网/AI)与执行程序(本地exe、无需联网/AI)通过标准化接口通信,可独立迭代。
  4. 知识自动沉淀:每次仿真的方案、结果、结论自动结构化存储,反哺经验库和知识库,实现系统自我进化。
  5. 人在回路:AI推荐方案 → 人工确认 → 执行,关键决策点保留人工审核权。

2. 系统总体架构

2.1 双系统解耦架构

┌─────────────────────────────────────────────────────────────────┐
│                    企业内网(需登录 / 权限控制)                     │
│                                                                   │
│  ┌─────────────────────────────────────────────────────────┐    │
│  │           系统一:仿真方案生成及优化系统(Web端)            │    │
│  │                                                           │    │
│  │  ┌──────────┐  ┌──────────┐  ┌──────────────────────┐  │    │
│  │  │ 前端UI    │  │ 后端服务  │  │ 数据层               │  │    │
│  │  │ (Vue/React)│→│ (FastAPI) │→│ PostgreSQL + 向量库   │  │    │
│  │  └──────────┘  └────┬─────┘  └──────────────────────┘  │    │
│  │                      │                                     │    │
│  │         ┌────────────┼────────────┐                       │    │
│  │         ▼            ▼            ▼                       │    │
│  │   ┌──────────┐ ┌──────────┐ ┌──────────┐                │    │
│  │   │方案生成引擎│ │结果分析引擎│ │知识库管理 │                │    │
│  │   │(规则+AI)  │ │(敏感性+Pareto)│ │(经验+知识)│                │    │
│  │   └──────────┘ └──────────┘ └──────────┘                │    │
│  └─────────────────────────────────────────────────────────┘    │
│                              │                                    │
│                              │ 接口:simulation_plan.json         │
│                              │ (手动导出 / 内网API)                │
│                              ▼                                    │
│  ┌─────────────────────────────────────────────────────────┐    │
│  │           系统二:仿真执行程序(本地 EXE)                   │    │
│  │                                                           │    │
│  │  ┌─────────────────────────────────────────────────┐    │    │
│  │  │  用户界面 (PyQt/PySide)                            │    │    │
│  │  │  方案加载 → 执行监控 → 结果导出 → 日志查看          │    │    │
│  │  └──────────────────────┬──────────────────────────┘    │    │
│  │                         │                                 │    │
│  │         ┌───────────────┼───────────────┐                 │    │
│  │         ▼               ▼               ▼                 │    │
│  │  ┌───────────┐  ┌───────────┐  ┌───────────┐            │    │
│  │  │执行引擎    │  │仿真适配器  │  │结果记录器  │            │    │
│  │  │(循环+断点) │  │(Motor-CAD/│  │(CSV+JSON+ │            │    │
│  │  │            │  │ Maxwell/  │  │ 日志)      │            │    │
│  │  │            │  │ JMAG/Flux)│  │            │            │    │
│  │  └───────────┘  └───────────┘  └───────────┘            │    │
│  └─────────────────────────────────────────────────────────┘    │
│                              │                                    │
│                              │ 结果:simulation_results.csv       │
│                              │ (手动导入 / 内网API)                │
│                              ▼                                    │
│                    反馈到系统一进行分析迭代                          │
└─────────────────────────────────────────────────────────────────┘

2.2 设计原则

原则 说明
解耦优先 方案生成与仿真执行完全独立,通过标准化JSON接口通信,任一侧升级不影响另一侧
工具无关 仿真工具通过"适配器"模式抽象,新增工具只需实现适配器接口
拓扑可扩展 电机拓扑以配置化方式管理,新增拓扑只需定义参数体系和仿真模板
人在回路 AI生成的方案和知识库迭代内容均需人工确认后才生效
知识驱动 所有方案生成均基于经验库检索 + 物理规则约束 + AI推理,三者交叉验证
结果可校验 每次仿真结果自动通过可插拔的校验规则集,不通过的标记为异常

3. 系统一:仿真方案生成及优化系统(Web端)

3.1 前端用户界面

前端采用单页应用(SPA),分为四个核心工作区:

3.1.1 边界条件输入区

输入类别 字段示例 说明
电机拓扑 SSSR / DRSS / SDSR(单选,带拓扑示意图) 初期支持SSSR和DRSS,SDSR后续扩展
轴向尺寸 总轴向长度上限(mm) 约束条件
径向尺寸 外径上限 / 内径下限(mm) 约束条件
性能目标 输出功率(kW)、额定扭矩(Nm)、峰值扭矩(Nm) 目标值
效率要求 额定点效率目标(%)、高效区范围 目标值
转速范围 额定转速 / 最高转速(rpm) 工况定义
冷却方式 自然冷却 / 水冷 / 油冷 影响热仿真边界
约束条件 温升上限、磁钢最高工作温度、成本上限 硬约束

3.1.2 方案预览与编辑区

  • AI生成的方案以可视化形式展示:
    • 参数扫描矩阵(变量 × 范围 × 步长 × 优先级)
    • 扫描顺序甘特图(先扫哪些参数、后扫哪些)
    • 预估总耗时(基于历史单次仿真时间 × 迭代次数;初期按现有案例数据参考(单次电磁仿真约88~151秒),后续根据实际仿真结果和运行日志不断自动修正耗时基准
    • 工况列表(空载 / 负载 / 不同温度点)
  • 支持人工微调:修改参数范围、调整优先级、增删工况
  • 每个参数建议附带依据标签(历史案例 / 物理约束 / 经验公式 / AI推理)

3.1.3 结果分析仪表盘

  • 迭代结果数据表:每次迭代的输入参数 + 输出指标 + 校验状态
  • 参数敏感性热力图:各参数对各目标的影响程度(Morris/Sobol指数)
  • Pareto前沿图:多目标优化的非支配解集(如效率 vs 功率密度)
  • 收敛曲线:最优值随迭代次数的变化趋势
  • 异常点标记:校验不通过的迭代点红色标记,可查看错误详情

3.1.4 知识库管理区

  • 经验案例库:按拓扑 / 功率段 / 应用场景分类浏览
  • 相似案例检索:输入新需求,自动检索Top-N最相似历史案例
  • 知识条目审核:AI自动生成的知识条目进入待审核队列,专家确认后入库
  • 知识库版本管理:每条知识有版本历史,可追溯修改记录

3.2 后端核心模块

3.2.1 方案生成引擎

方案生成采用三源融合策略:

用户边界条件
     │
     ├──→ ① 经验库检索:找Top-N相似历史案例,提取其参数范围和扫描策略
     │
     ├──→ ② 规则引擎:基于物理约束确定参数可行域(如磁钢厚度受轴向尺寸约束、
     │                 气隙受加工精度约束、电流密度受冷却约束)
     │
     └──→ ③ AI推理:基于经验和规则,推荐扫描顺序、采样方法、优化算法
              │
              ▼
         三源交叉验证 → 生成候选方案 → 人工确认 → 输出 simulation_plan.json
  • 经验库检索:使用向量相似度检索(边界条件向量化后在经验库中匹配),返回最相似的3-5个历史案例,其参数范围和扫描策略作为方案初值
  • 规则引擎:内置电机设计的物理约束规则集(如 磁钢厚度 ≤ 轴向长度 × 0.4气隙 ≥ 0.3mm(加工精度下限)电流密度 ≤ 12 A/mm²(自然冷却)),自动裁剪参数可行域
  • AI推理:在经验初值和规则约束的基础上,AI推荐扫描策略(全因子 / LHS / 贝叶斯)、参数优先级、采样密度

3.2.2 结果分析引擎

执行程序返回结果后,结果分析引擎自动完成:

  1. 数据清洗:剔除校验不通过的异常点,标记缺失值
  2. 敏感性分析
    • 初步筛选:Morris方法(计算量小,区分关键/非关键参数)
    • 精确分析:Sobol方法(对关键参数做全局方差分解,量化主效应和交互效应)
  3. 代理模型构建:对关键参数构建Kriging / RSM代理模型,用于快速预测
  4. 多目标优化:在代理模型上运行NSGA-II / MOPSO,搜索Pareto前沿
  5. 迭代方案生成:基于分析结果,自动生成下一轮仿真方案(如缩小参数范围、加密采样、聚焦Pareto最优区域)

3.2.3 知识库管理模块

  • 经验库(结构化案例数据):
    • 每条案例包含:边界条件、仿真方案、迭代结果、最优解、结论标签
    • 支持向量检索(按边界条件相似度匹配)
    • 支持按拓扑 / 功率段 / 应用场景筛选
    • 冷启动策略:初期不做历史数据批量导入(暂无结构化历史数据),经验库从空白开始,重点在于在实际案例测试、仿真结果输出、运行日志记录的过程中自动积累经验。每完成一次仿真,系统自动提取关键参数组合与结果对应关系,结构化存入经验库;随着测试案例增多,经验库质量自然提升
  • 知识库(方法论文档):
    • 参数语义字典(各拓扑下各参数的物理含义、取值范围、易错点)
    • 仿真方法SOP(各工具的操作流程、已知坑、探测技术)
    • 校验规则集(可插拔的结果可信度判据)
    • 物理公式库(用于解析量级校验、参数初值估算)
  • 自动迭代机制
    • 每次仿真完成后,AI自动提取"可沉淀的知识"(如"XX拓扑下,气隙对效率的影响显著高于磁钢厚度")
    • 生成知识条目草稿,进入待审核队列
    • 专家审核通过后正式入库,并关联到对应案例

3.3 AI协同的定位

AI在系统中扮演"检索 + 推理 + 解释"的助手角色,而非黑盒决策者:

AI能力 应用场景 人工审核点
相似案例检索 新需求进来,自动匹配历史案例 无(检索结果仅供参考)
方案生成 基于经验+规则+AI,生成仿真方案草稿 必须人工确认后才下发执行
结果分析 自动计算敏感性、构建代理模型、生成Pareto前沿 无(分析结果客观呈现)
迭代方案推荐 基于分析结果,推荐下一轮扫描方案 必须人工确认后才下发执行
知识提取 从仿真结果中自动提取可沉淀的经验 必须专家审核后才入库

4. 系统二:仿真执行程序(本地 EXE)

4.1 用户界面

基于PyQt/PySide的桌面应用,封装为独立exe(PyInstaller打包)。目标用户为仿真工程师,可接受较专业的界面,注重参数透明度、过程可控性和调试信息的完整性。界面分为四个区域:

区域 功能
方案加载区 导入 simulation_plan.json,解析并展示执行计划(总迭代次数、参数组合列表、预估耗时)
执行监控区 实时显示:当前第N次/共M次、当前参数组合、已用时间/预计剩余时间、Motor-CAD/Maxwell窗口状态
结果展示区 已完成迭代的结果数据表(输入参数 + 输出指标 + 校验状态),支持实时刷新
日志查看区 分级日志(INFO / WARNING / ERROR),仿真工具原始输出归档,支持按级别筛选和导出

操作按钮:开始仿真 / 暂停 / 继续 / 停止 / 导出结果 / 导出日志

4.2 执行引擎

执行引擎是一个通用的方案解释器,核心逻辑:

加载 simulation_plan.json
     │
     ▼
解析 scan_strategy → 生成参数组合队列(按优先级排序)
     │
     ▼
┌─── 循环:对每个参数组合 ──────────────────────────────┐
│                                                         │
│  1. 检查断点:如果该组合已完成(结果文件存在且校验通过),跳过 │
│  2. 调用仿真适配器:设置参数 → 运行仿真 → 提取结果          │
│  3. 运行校验规则集:对结果做可信度校验                       │
│  4. 记录结果:写入CSV + JSON + 日志                         │
│  5. 更新进度:刷新UI显示                                    │
│                                                         │
│  异常处理:                                                │
│  - 仿真工具崩溃 → 自动重启,重试最多3次 → 仍失败则标记跳过   │
│  - 许可证失效 → 暂停执行,提示用户检查许可证                  │
│  - 求解不收敛 → 记录警告,标记结果为uncertain,继续执行      │
│                                                         │
└─────────────────────────────────────────────────────────┘
     │
     ▼
全部完成 → 输出汇总数据表 simulation_results.csv + 执行报告

关键特性:

  • 断点续跑:每次迭代结果独立存储,程序中断后重启可从上次未完成的点继续(通过检查结果文件完整性判断)
  • 错误恢复:仿真工具崩溃自动重启重试,许可证失效暂停等待,求解不收敛标记后继续
  • 无人值守模式:可选模式,遇到非致命错误自动跳过继续,致命错误才暂停
  • 前台运行:仿真工具默认前台弹出(方便人工检查),可切换为后台模式

4.3 仿真适配器(多工具兼容)

采用适配器模式抽象仿真工具,每个工具实现统一接口:

class SimulationAdapter(ABC):
    @abstractmethod
    def connect(self) -> bool: ...        # 连接/启动仿真工具

    @abstractmethod
    def load_model(self, model_path: str) -> bool: ...  # 加载模型

    @abstractmethod
    def set_parameter(self, name: str, value: float) -> bool: ...  # 设置参数

    @abstractmethod
    def run_simulation(self, case: dict) -> bool: ...  # 运行仿真

    @abstractmethod
    def extract_result(self, metric: str) -> float: ...  # 提取结果

    @abstractmethod
    def disconnect(self) -> None: ...  # 断开/关闭

适配器规划:

优先级 仿真工具 自动化接口 物理场 状态
P0 Motor-CAD PyMotorCAD (Python API) 电磁(初期) 已有验证基础(axial_mag_pull项目)
P1 Ansys Maxwell 3D PyAEDT (Python API) / VBScript 电磁 / 结构 规划中
P2 JMAG JSAT / Python API 电磁 / 热 / 结构 规划中
P3 Flux Python API / 脚本 电磁 / 热 规划中

初期重点:先完成Motor-CAD电磁仿真适配器,验证全流程闭环后再扩展其他工具。

4.4 结果记录与日志

输出文件结构:

output/
├── simulation_results.csv       # 汇总数据表(所有迭代的输入+输出+校验状态)
├── simulation_results.json      # 完整结果(含波形数据、校验详情)
├── iteration_001/               # 每次迭代的独立目录
│   ├── params.json              # 该次的输入参数
│   ├── results.json             # 该次的输出结果
│   ├── model_working.mot        # 工作模型副本(原模型不污染)
│   └── raw_output.log           # 仿真工具原始输出
├── execution_log.txt            # 执行程序日志(分级)
└── execution_report.md          # 执行报告(汇总统计、异常列表、耗时分析)

汇总数据表字段(CSV):

字段 说明
iteration_id 迭代序号
timestamp 执行时间戳
topology 电机拓扑
param_1, param_2, ... 各扫描参数的取值(动态列)
case_id 工况ID
metric_1, metric_2, ... 各输出指标的数值(动态列)
validation_status 校验状态(PASS / FAIL / UNCERTAIN)
validation_details 校验详情(各判据的偏差值)
solve_time_s 本次求解耗时
error_message 错误信息(如有)

5. 接口设计(双系统通信契约)

5.1 仿真方案 JSON Schema

两个系统之间的核心契约是 simulation_plan.json,结构定义如下:

{
  "plan_id": "SP-20260826-001",
  "plan_version": "1.0",
  "created_at": "2026-08-26T22:00:00+08:00",
  "created_by": "engineer_001",
  "status": "draft",

  "motor_spec": {
    "topology": "SSSR",
    "model_template": "MARS-12S10P_SSSR.mot",
    "axial_length_max_mm": 30,
    "outer_diameter_max_mm": 150,
    "inner_diameter_min_mm": 60,
    "output_power_kw": 5,
    "rated_torque_nm": 10,
    "peak_torque_nm": 20,
    "rated_speed_rpm": 5000,
    "max_speed_rpm": 10000,
    "target_efficiency": 0.92,
    "cooling_method": "water",
    "constraints": {
      "max_temperature_c": 120,
      "max_magnet_temp_c": 150,
      "cost_max_rmb": 500
    }
  },

  "scan_strategy": {
    "method": "sequential_screening",
    "description": "先Morris筛选关键参数,再LHS采样构建代理模型,最后NSGA-II多目标优化",
    "max_total_iterations": 100,
    "variables": [
      {
        "name": "Airgap",
        "display_name": "气隙",
        "unit": "mm",
        "range": [0.6, 1.5],
        "step": 0.3,
        "priority": 1,
        "screening_phase": "morris",
        "basis": "历史案例SP-20260801-003显示气隙对轴向力影响最大(磁负刚度~207N/mm)"
      },
      {
        "name": "Magnet_Length",
        "display_name": "磁钢轴向厚度",
        "unit": "mm",
        "range": [2, 5],
        "step": 1,
        "priority": 2,
        "screening_phase": "morris",
        "basis": "物理约束:磁钢厚度 ≤ 轴向长度 × 0.4"
      }
    ],
    "sampling": {
      "method": "latin_hypercube",
      "n_samples": 30,
      "seed": 42
    },
    "optimization": {
      "method": "NSGA-II",
      "population_size": 50,
      "max_generations": 30,
      "objectives": [
        {"metric": "efficiency", "direction": "maximize"},
        {"metric": "power_density", "direction": "maximize"}
      ],
      "constraints": [
        {"metric": "torque_nm", "operator": ">=", "value": 10},
        {"metric": "temperature_c", "operator": "<=", "value": 120}
      ]
    }
  },

  "cases": [
    {
      "id": "OC_100C",
      "name": "空载热态",
      "type": "no_load",
      "magnet_temp_c": 100,
      "rms_current_a": 0
    },
    {
      "id": "OL_rated",
      "name": "额定负载",
      "type": "load",
      "magnet_temp_c": 100,
      "rms_current_a": 21,
      "speed_rpm": 5000
    }
  ],

  "output_metrics": [
    {"name": "axial_force_n", "display_name": "轴向磁拉力", "unit": "N"},
    {"name": "torque_nm", "display_name": "输出扭矩", "unit": "Nm"},
    {"name": "efficiency", "display_name": "效率", "unit": "%"},
    {"name": "core_loss_w", "display_name": "铁耗", "unit": "W"},
    {"name": "copper_loss_w", "display_name": "铜耗", "unit": "W"}
  ],

  "validation_rules": [
    {
      "rule_id": "action_reaction",
      "name": "作用-反作用校验",
      "description": "定转子合力反号,偏差<5%",
      "threshold_pct": 5,
      "enabled": true
    },
    {
      "rule_id": "analytic_magnitude",
      "name": "解析量级校验",
      "description": "FEA结果与解析估算同量级(比值0.5~2.0)",
      "ratio_range": [0.5, 2.0],
      "enabled": true
    },
    {
      "rule_id": "torque_crosscheck",
      "name": "转矩交叉校验",
      "description": "Σ(Ft×r)与转矩图偏差<10%",
      "threshold_pct": 10,
      "enabled": true
    }
  ],

  "stop_criteria": [
    {"type": "objective_met", "condition": "efficiency >= 0.92 AND torque_nm >= 10"},
    {"type": "max_iterations", "value": 100},
    {"type": "convergence", "metric": "best_efficiency", "tolerance": 0.001, "patience": 10}
  ],

  "execution_config": {
    "simulation_tool": "MotorCAD",
    "tool_version": "2026R1",
    "model_path": "MARS-12S10P_SSSR_D76-C150_V5.0-0819.mot",
    "foreground": true,
    "max_retries": 3,
    "timeout_per_iteration_s": 600,
    "checkpoint_enabled": true
  }
}

5.2 结果数据格式

执行程序输出 simulation_results.csv(汇总表)和 simulation_results.json(完整数据),JSON结构:

{
  "plan_id": "SP-20260826-001",
  "executed_at": "2026-08-26T23:00:00+08:00",
  "execution_duration_s": 7200,
  "total_iterations": 45,
  "successful": 42,
  "failed": 3,
  "iterations": [
    {
      "iteration_id": 1,
      "timestamp": "2026-08-26T23:01:00+08:00",
      "parameters": {"Airgap": 0.6, "Magnet_Length": 2},
      "case_id": "OC_100C",
      "results": {
        "axial_force_n": 513.1,
        "torque_nm": null,
        "efficiency": null
      },
      "validation": {
        "status": "PASS",
        "checks": {
          "action_reaction": {"deviation_pct": 1.7, "passed": true},
          "analytic_magnitude": {"ratio": 1.41, "passed": true}
        }
      },
      "solve_time_s": 151,
      "error": null
    }
  ],
  "summary": {
    "best_efficiency": 0.935,
    "best_torque_nm": 12.5,
    "pareto_front": [{"efficiency": 0.935, "power_density": 4.2}, ...]
  }
}

5.3 通信方式

阶段 方式 说明
初期(手动) 文件交换 方案系统导出 simulation_plan.json → U盘/共享文件夹拷贝 → 执行程序导入;执行完成后导出 simulation_results.csv → 拷贝回方案系统导入
中期(内网API) REST API 方案系统提供内网API:POST /api/plan/{id}/download(下载方案)、POST /api/plan/{id}/upload-results(上传结果);执行程序可配置API地址自动拉取方案和回传结果
远期(全自动) 消息队列 方案系统下发任务到消息队列,执行程序监听队列自动领取任务、执行、回传结果;支持多执行节点并行

两种通信方式的数据格式完全一致(JSON/CSV),只是传输通道不同,确保平滑升级。


6. 方案生成引擎算法选型

基于检索到的电机优化领域论文和专利(Kriging-PSO、SVM多目标优化、Morris/Sobol灵敏度分析、LHS采样等),结合轴向磁通电机的设计特点,方案生成引擎采用四阶段分层优化策略

6.1 第一阶段:参数筛选(Morris灵敏度分析)

目标:从众多设计参数中快速筛选出对目标影响显著的关键参数,降低后续优化维度。

方法:Morris初等效应法

  • 属于全局灵敏度分析的One-Factor-At-a-Time(OAT)方法
  • 计算每个参数的初等效应均值(μ)和标准差(σ)
  • μ大 → 参数主效应显著;σ大 → 参数交互效应或非线性强
  • 计算量小(通常k个参数需要10~50次评估),适合初步筛选

输出:参数分类

  • 核心参数(μ大、σ大):进入第二阶段精细优化
  • 敏感参数(μ大、σ小):线性影响显著,可固定为最优值或粗扫
  • 普通参数(μ小):影响不显著,固定为经验值,不参与扫描

参考依据:《基于代理模型的电机多学科优化关键技术综述》(电工技术学报)指出Morris方法逻辑清晰、易于实现,适合参数维度高时的初步筛选;IEEE综述《Review of Sensitivity Analysis Methods for Optimal Design Parameters of Motors》确认Sobol方法可信度高但计算量大,Morris方法适合预筛选。

6.2 第二阶段:实验设计与采样(LHS拉丁超立方)

目标:在关键参数的设计空间内均匀采样,为代理模型构建提供高质量训练数据。

方法:拉丁超立方采样(Latin Hypercube Sampling, LHS)

  • 在每个维度上分层采样,确保边缘分布均匀
  • 比全因子设计和随机采样更高效,能以较少样本覆盖设计空间
  • 适合构建代理模型的训练数据

样本量:通常为参数维度的5~10倍(如5个关键参数,取30~50个样本)

参考依据:《基于Kriging-PSO算法的双转子PCB轴向磁通电机优化设计与分析》(电机工程学报)采用LHS方法采样优化变量并进行全局敏感性分析;MDPI论文《Design, Optimization, and Validation of a Dual Three-Phase YASA Axial Flux Machine》采用LHS+RSM+GA的代理模型优化框架。

6.3 第三阶段:代理模型构建(Kriging)

目标:用代理模型近似仿真输入-输出关系,大幅加速后续优化搜索。

方法:Kriging(克里金)代理模型

  • 基于高斯过程的插值模型,能给出预测值和预测不确定性
  • 对非线性、多峰的电机设计空间拟合精度高
  • 预测不确定性可用于指导后续采样(加点准则)

备选:响应面法(RSM)—— 适合强线性关系,计算更简单;神经网络 —— 适合极高维,但需要更多训练数据

验证:用留一法交叉验证(LOOCV)或R²指标评估代理模型精度,R²>0.9才用于优化

参考依据:Kriging-PSO是国内电机优化论文的主流方法组合(电机工程学报多篇论文采用);安世亚太CAE+AI融合方案也采用"自动仿真生成数据→训练代理模型→AI优化算法搜索"的标准化流程。

6.4 第四阶段:多目标优化(NSGA-II)

目标:在代理模型上搜索多目标Pareto最优解集。

方法:NSGA-II(非支配排序遗传算法)

  • 最经典的多目标进化算法,收敛性和分布性均衡
  • 输出Pareto前沿(非支配解集),供决策者权衡选择
  • 适合电机设计中"效率 vs 功率密度 vs 成本"的多目标权衡

备选:MOPSO(多目标粒子群)—— 收敛更快,但容易早熟;SMS-EMOA —— 注重解集分布性

输出:Pareto前沿解集,每个解包含完整参数组合和预测性能

参考依据:PMC论文《Multi-objective optimization of dual-stator permanent magnet motor based on composite algorithm》采用"灵敏度分析分类→Taguchi优化显著变量→Kriging+GA优化非显著变量"的复合算法;IET论文采用多级优化框架。

6.5 第五阶段:精确验证与迭代

目标:对Pareto最优解做精确FEA验证,确认代理模型预测的准确性。

方法

  1. 从Pareto前沿选取3~5个代表性候选解(如最高效率、最高功率密度、折中解)
  2. 用真实仿真工具精确计算(不通过代理模型)
  3. 对比代理模型预测值与FEA真实值,偏差>5%的标记为代理模型失准
  4. 将验证结果加入训练集,更新代理模型,必要时重新优化

闭环:如果验证结果不满足目标,或代理模型精度不足,自动生成下一轮仿真方案(在失准区域加密采样),进入下一轮迭代。

6.6 算法选型总结

用户边界条件
     │
     ▼
┌─────────────────────────────────────────────┐
│ 阶段1: Morris筛选 (10~50次仿真)              │
│ 输出: 参数分类 (核心/敏感/普通)               │
└──────────────────┬──────────────────────────┘
                   ▼
┌─────────────────────────────────────────────┐
│ 阶段2: LHS采样 (30~50次仿真)                 │
│ 输出: 训练数据集                               │
└──────────────────┬──────────────────────────┘
                   ▼
┌─────────────────────────────────────────────┐
│ 阶段3: Kriging代理模型构建 (0次仿真, 纯计算)  │
│ 输出: 代理模型 + 精度验证(R²)                 │
└──────────────────┬──────────────────────────┘
                   ▼
┌─────────────────────────────────────────────┐
│ 阶段4: NSGA-II多目标优化 (0次仿真, 纯计算)    │
│ 输出: Pareto前沿解集                           │
└──────────────────┬──────────────────────────┘
                   ▼
┌─────────────────────────────────────────────┐
│ 阶段5: 精确FEA验证 (3~5次仿真)                │
│ 输出: 验证后的最优解                           │
└──────────────────┬──────────────────────────┘
                   ▼
          不满足 → 生成下一轮方案 → 循环
          满足 → 输出最终设计方案

总仿真次数估算:约50~110次/轮(相比全因子扫描的数百上千次,效率提升5~10倍)


7. 多物理场仿真规划

7.1 分阶段实施

阶段 物理场 仿真工具 目标 优先级
第一期 电磁 Motor-CAD 电磁性能(扭矩、效率、损耗、轴向力) P0
第二期 Motor-CAD热模块 / Flux热 温升分布、热点温度、冷却效果 P1
第三期 结构力学 Maxwell结构 / Workbench 转子应力、变形、模态分析 P2
第四期 NVH Maxwell + Workbench谐响应 电磁噪声、振动 P3

7.2 多物理场耦合策略

  • 单向耦合(初期):电磁仿真输出损耗 → 作为热仿真的热源 → 热仿真输出温度 → 修正电磁仿真的材料属性(磁钢Br温度系数、绕组电阻温度系数)
  • 双向耦合(远期):电磁-热-结构全耦合迭代,直到温度和应力收敛

7.3 接口预留

  • simulation_plan.jsoncases 字段支持多物理场工况定义
  • 仿真适配器接口支持多物理场结果提取
  • 校验规则集支持多物理场专属判据(如热仿真的温升限值、结构仿真的应力限值)

8. 电机拓扑覆盖规划

8.1 拓扑参数体系

拓扑 缩写 特点 关键参数 优先级
单定子单转子 SSSR 结构简单,有不平衡轴向力 气隙、磁钢厚度、定子参数 P0
双转子单定子 DRSS 轴向力对消,功率密度高 双气隙、双磁钢厚度、定子参数 P0
双定子单转子 SDSR 转子居中,散热好 双气隙、双定子参数、磁钢厚度 P1

8.2 拓扑管理方式

  • 每种拓扑定义独立的参数语义字典(参数名、物理含义、取值范围、与其他拓扑的对应关系)
  • 每种拓扑有独立的仿真模板(基础.mot模型、默认工况、默认校验规则)
  • 方案生成引擎根据拓扑选择对应的参数体系和仿真模板
  • 新增拓扑只需:定义参数字典 + 提供基础模型模板 + 配置默认规则,无需修改引擎核心代码

8.3 初期重点

  • SSSR:基于现有 axial_mag_pull 项目直接迁移,默认模板采用 MARS-12S10P_SSSR_D76-C150_V5.0-0819.mot,最快验证全流程闭环
  • DRSS:轴向磁通电机的主流高功率密度拓扑,基础模型模板后续补充,待SSSR流程验证稳定后启动开发

9. 技术栈选型

9.1 系统一(Web端)

层级 技术选型 说明
前端框架 Vue 3 + TypeScript + Element Plus 企业级UI组件丰富,适合数据密集型仪表盘
可视化 ECharts + D3.js ECharts做常规图表(热力图、Pareto图、收敛曲线),D3.js做自定义架构图/拓扑图
后端框架 Python FastAPI 异步高性能,自动生成API文档,与仿真脚本同语言便于维护
关系数据库 PostgreSQL 存储用户、项目、方案、结果等结构化数据
向量数据库 pgvector(PostgreSQL扩展) 存储经验案例的向量表示,支持相似度检索;无需额外部署独立向量库
AI推理 可插拔LLM接口(API-Key / 内网部署) 初期:通过API-Key调用大模型(数据经内网代理网关,敏感字段脱敏);第二期:迁移到企业内网部署的大模型(Ollama + 本地模型 / 私有API网关),数据完全不出内网
优化算法库 scikit-learn + pymoo + SALib scikit-learn做代理模型,pymoo做NSGA-II多目标优化,SALib做Morris/Sobol灵敏度分析
任务队列 Celery + Redis 异步处理方案生成、结果分析、知识提取等耗时任务
部署 Docker + Nginx 容器化部署,内网服务器运行

9.2 系统二(本地EXE)

层级 技术选型 说明
GUI框架 PySide6 (Qt for Python) LGPL许可,比PyQt5更宽松;Qt Designer可视化设计界面
仿真驱动 PyMotorCAD / PyAEDT / 各工具Python API 适配器模式封装
数据处理 pandas + openpyxl 结果数据表处理,支持导出Excel
打包 PyInstaller 打包为单文件exe,约40~80MB
日志 loguru 比标准logging更易用,支持分级、轮转、彩色输出
配置 YAML / JSON 执行程序配置(工具路径、API地址等)

9.3 共用组件

组件 说明
方案JSON Schema 两个系统共用的接口契约定义(JSON Schema格式)
校验规则引擎 可插拔的结果可信度校验框架,两个系统共用(执行端实时校验,方案端批量复核)
参数语义字典 各拓扑的参数定义,两个系统共用

10. 数据安全与权限管理

10.1 部署环境

  • 系统一部署在企业内网服务器,不暴露到公网
  • 数据库仅在内网访问,设置防火墙规则
  • 执行程序在工程师本地电脑运行,通过内网API与系统一通信(或纯文件交换)

10.2 用户权限管理

角色 权限
工程师 创建/编辑自己的项目、输入边界条件、确认方案、查看自己项目的结果、导出方案/结果
专家 工程师全部权限 + 审核知识库条目 + 查看所有项目(只读) + 管理校验规则集
管理员 全部权限 + 用户管理 + 系统配置 + 数据库备份/恢复
  • 项目级权限:每个项目有创建者和共享成员列表,非成员不可见
  • 操作审计:所有关键操作(方案确认、知识审核、数据导出)记录审计日志

10.3 数据加密

  • 传输加密:内网HTTPS
  • 存储加密:敏感数据(电机设计参数)数据库加密存储
  • 导出控制:数据导出操作记录审计,可配置导出审批流程

11. 实施路线图

11.1 总体节奏

月份:  1    2    3    4    5    6    7    8    9    10   11   12
       ├────┼────┼────┼────┼────┼────┼────┼────┼────┼────┼────┤
Phase1 │████████████│                                              │
  最小闭环  接口定义+执行程序(Motor-CAD电磁)+SSSR拓扑+手动文件交换   │
       │    ├─────────────────┤                                    │
Phase2 │    │█████████████████████████│                            │
  方案系统  Web端基础框架+经验库+规则引擎+方案生成+结果分析+人在回路  │
       │         ├─────────────────────────────┤                   │
Phase3 │         │██████████████████████████████████│              │
  算法增强  Morris筛选+LHS+Kriging+NSGA-II+DRSS拓扑+内网API通信    │
       │              ├──────────────────────────────────────────┤│
Phase4 │              │██████████████████████████████████████████││
  扩展完善  热/结构仿真+SDSR拓扑+Maxwell/JMAG适配器+知识库自动迭代  │

11.2 各阶段详细目标

Phase 1:最小闭环验证(第1-2月)

目标:验证双系统解耦架构和接口契约的可行性

  • 定义 simulation_plan.jsonsimulation_results.csv 的完整Schema
  • 开发执行程序核心框架(PySide6 UI + 方案解析 + 执行引擎 + 结果记录)
  • 实现Motor-CAD电磁仿真适配器(基于axial_mag_pull项目迁移)
  • 支持SSSR拓扑
  • 支持手动文件交换(导出JSON → 执行 → 导入CSV)
  • 用现有轴向磁拉力案例做端到端验证

交付物:执行程序V0.1(exe)、接口规范文档V1.0、验证报告

Phase 2:方案系统基础(第2-5月)

目标:Web端方案系统可用,实现人在回路的方案生成和结果分析

  • Web端基础框架(Vue3 + FastAPI + PostgreSQL)
  • 用户管理和权限系统
  • 项目管理(创建/编辑/共享)
  • 边界条件输入界面
  • 经验库(结构化存储 + 向量检索)
  • 规则引擎(物理约束裁剪参数可行域)
  • 方案生成(经验检索 + 规则 + AI推荐,人工确认)
  • 方案预览与编辑界面
  • 结果导入与分析仪表盘(数据表 + 基础图表)
  • 知识库管理(手动录入 + 审核流程)

交付物:方案系统V0.5(内网可访问)、使用手册

Phase 3:算法增强与拓扑扩展(第4-8月)

目标:实现完整的四阶段优化算法,支持DRSS拓扑,内网API通信

  • Morris灵敏度分析模块
  • LHS拉丁超立方采样模块
  • Kriging代理模型构建与验证
  • NSGA-II多目标优化模块
  • 四阶段分层优化策略整合
  • 参数敏感性热力图
  • Pareto前沿可视化
  • 收敛曲线
  • DRSS拓扑支持(参数字典 + 仿真模板)
  • 内网API通信(方案下载 + 结果上传)
  • 迭代方案自动推荐(结果分析 → 下一轮方案)

交付物:方案系统V1.0、执行程序V1.0、算法验证报告

Phase 4:多物理场与工具扩展(第6-12月)

目标:扩展物理场和仿真工具,完善知识库自动迭代

  • 热仿真模块(Motor-CAD热模块 / Flux)
  • 结构力学仿真模块(Maxwell结构 / Workbench)
  • SDSR拓扑支持
  • Ansys Maxwell 3D仿真适配器
  • JMAG仿真适配器(可选)
  • 知识库自动提取与迭代(AI从仿真结果中提取经验,专家审核入库)
  • 多物理场耦合(电磁-热单向耦合)
  • NVH仿真(可选)

交付物:方案系统V2.0、执行程序V2.0、多物理场验证报告


12. 风险与应对

风险 影响 概率 应对措施
仿真工具API不稳定 执行程序频繁出错 适配器模式隔离变化;内置重试和错误恢复;保留手动操作兜底
代理模型精度不足 优化结果偏离真实最优 严格的R²验证门槛;Pareto解必须FEA验证;失准区域自动加密采样
经验库冷启动质量差 初期方案生成不可靠 初期以规则引擎为主,AI推荐为辅;手动录入标杆案例;每轮仿真后人工审核知识提取
多拓扑参数体系差异大 方案生成引擎难以通用 拓扑配置化管理,参数字典独立定义;引擎核心不依赖具体拓扑
仿真耗时长,迭代周期慢 用户体验差 四阶段优化策略减少总仿真次数;断点续跑;远期支持多节点并行
企业内网部署限制 AI模型无法调用公网API 支持内网部署的大模型;初期可用API网关代理,后期迁移内网模型
数据安全合规 电机设计数据泄露 内网部署 + 权限管理 + 操作审计 + 导出控制
多物理场耦合复杂 后期扩展困难 接口预留多物理场字段;先做单向耦合,双向耦合作为远期目标

13. 参考资料

13.1 学术论文

  1. 《基于Kriging-PSO算法的双转子PCB轴向磁通电机优化设计与分析》— 电机工程学报,采用LHS采样+全局敏感性分析+Kriging响应面+PSO优化
  2. 《基于代理模型的电机多学科优化关键技术综述》— 电工技术学报,2022,系统综述Morris/Sobol灵敏度分析、代理模型、优化算法
  3. Design, Optimization, and Validation of a Dual Three-Phase YASA Axial Flux Machine — MDPI Energies, 2025,采用LHS+RSM+GA的代理模型优化框架
  4. A General SVM-Based Multi-Objective Optimization Methodology for Axial Flux Motor Design — ResearchGate,基于SVM的多目标优化方法
  5. Review of Sensitivity Analysis Methods for Optimal Design Parameters of Motors — IEEE Xplore,电机优化参数灵敏度分析方法综述
  6. Multi-objective optimization of dual-stator permanent magnet motor based on composite algorithm — PMC, 2024,灵敏度分析分类+Taguchi+Kriging+GA复合算法

13.2 专利与行业方案

  1. CN202511697293 — 电机系统多学科协同设计与工程数字化平台(NLP+多物理场仿真+自动化工艺生成)
  2. CN107944666A — 一种电机云设计平台(云基础服务+设计资源库+核心设计云服务)
  3. 基于AI辅助的多物理场耦合电机优化设计方法及系统(2026专利)— LHS采样+AI代理模型+LPTN热网络双向耦合
  4. Ansys Maxwell + OptiSlang — 商业电机优化方案(OptiSlang做敏感性分析和优化,Maxwell做仿真)
  5. 安世亚太CAE+AI融合方案 — 标准化AI仿真研发流程(参数化模型→自动仿真→代理模型→AI优化→验证)

13.3 内部参考

  1. axial_mag_pull 项目 — Motor-CAD轴向磁拉力仿真(本系统的原型验证)
  2. docs/KNOWLEDGE_BASE.md — 知识库原型(方法/参数语义/探测技术/SOP)
  3. axial_force_final.py — 仿真脚本原型(PyMotorCAD驱动+三判据校验)

附录A:术语表

术语 全称 说明
AFM Axial Flux Motor 轴向磁通电机
SSSR Single Stator Single Rotor 单定子单转子
DRSS Dual Rotor Single Stator 双转子单定子
SDSR Single Rotor Dual Stator 双定子单转子
LHS Latin Hypercube Sampling 拉丁超立方采样
RSM Response Surface Methodology 响应面法
GA Genetic Algorithm 遗传算法
PSO Particle Swarm Optimization 粒子群优化
NSGA-II Non-dominated Sorting Genetic Algorithm II 非支配排序遗传算法第二代
MOPSO Multi-Objective Particle Swarm Optimization 多目标粒子群优化
DOE Design of Experiments 实验设计
FEA Finite Element Analysis 有限元分析
YASA Yokeless And Segmented Armature 无轭分段电枢(轴向磁通电机拓扑)

文档结束 — V1.1,作者 Car.Lin,2026-08-26

V1.1 更新说明:明确AI模型部署策略(初期API-Key,第二期内网部署);SSSR默认模板采用MARS-12S10P模型;执行程序目标用户为仿真工程师;经验库冷启动策略调整为运行中自动积累;仿真耗时基准按现有案例参考、后续日志自动修正。


附录 B:实现现状对照(V2 增补,2026-08-29)

本附录由 V1.1 设计蓝图出发,对照 2026-08-29 已实施的 P1~P3 平台化批次(及 P4 进行中项), 如实记录"设计与实现"的差距,消除文档漂移。设计蓝图章节保持原文不变,以下为增量对照。

B.1 版本记录

版本 日期 内容
V1.1 2026-08-26 设计蓝图初稿(架构/接口/算法选型/路线图)
V2.0 2026-08-29 增补实现现状对照:afmcore 共享核心层、方案 Schema 单一权威、双系统解耦落地、执行策略实际实现、adaptive 闭环、可靠性增强、已知限制

B.2 共享核心层(src/afmcore)

V1.1 设想"通用可扩展平台";P1~P3 已把可复用能力沉淀到共享核心层,Web 端与本地 EXE 双端接入:

模块 职责 实现状态
src/afmcore/metrics.py 25 项指标定义 + 归一化解析器(单一事实源) ✅ 已实施(P1)
src/afmcore/topology.py 拓扑注册表(SSSR 8 组 37 项参数体系,DRSS/SDSR 预留) ✅ 已实施(P2)
src/afmcore/adapters/ 仿真适配器抽象(SimulationAdapter 注册表 + MotorCADAdapter/FakeAdapter) ✅ 已实施(P1)
src/afmcore/strategies/ 执行策略注册表(full_factorial / lhs / adaptive 三实现) ✅ 已实施(P3-M1)
src/plan_schema.py 方案 JSON Schema(dataclass + parse/validate,单一权威) ✅ 已实施(P4-M1 增强)

B.3 方案 Schema 单一权威(P4-M1)

  • 权威src/plan_schema.pyparse_plan() / validate_plan_dict() / SimulationPlan.validate(require_model_path=…))。
  • Web 端接入main.py 注入仓库根路径;plans.py 创建/更新、ai_plan.py 生成保存均先校验,非法返回 400/422。
  • 别名容错:扫描变量 min_value/max_value 自动映射 start/stop,避免字段名不一导致的静默错误点。
  • 分级校验:draft 阶段不强制 model_path 存在,执行阶段强制。

B.4 双系统解耦落地(Web 智能层 + 本地执行层)

V1.1 §2/§5 的接口契约已落地为:

Web 端(方案生成/优化)
   │  POST /api/plans/{id}/start-simulation  → create_task(task_type=scan|adaptive_batch)
   │  任务状态机:pending → dispatched → running → completed / failed / cancelled
   ▼
本地执行器(scripts/task_executor.py,可多实例 --instances N)
   │  GET /api/tasks?status=pending → 原子认领(dispatch_task 条件更新,恰好一次)→ 执行 → report_results(point_id 回填)
   ▼
Web 端(SimulationResult 入库 → 分析 → 经验库)
  • 状态词统一由 src 侧契约(task_contract.py)保证。
  • 执行器心跳/监控:/api/executor/heartbeat|status|overview

B.5 执行策略:设计蓝图 vs 实际实现

V1.1 设计蓝图(§6) 实际实现(P3) 说明
Morris 灵敏度筛选 full_factorial(全因子) 蓝图作为高级目标;实际先提供确定性策略
LHS 拉丁超立方采样 lhs 策略 ✅ 已实现
Kriging 代理模型 + NSGA-II 多目标 adaptive(可行性优先 + active learning + trust region) 蓝图的高级全局优化管线未全量落地;adaptive 以"L0 预筛选 + 初始采样 + 主动学习选批 + 局部 trust region 细化"实现,收敛判断/预算控制完整
约 50~110 次仿真/轮 max_solver_calls 预算控制(默认 80) 口径一致

B.6 Adaptive 闭环链路(P3-M6,已打通)

AI 方案(Kimi,可降级纯定量)→ L0 预筛选 → 初始 LHS 采样
  → active learning 选批(search.select_next_batch)
  → submit_batch_to_executor(打包为 adaptive_batch Task,含 loop_id/batch_id/point_ids)
  → 本地执行器认领/求解(mock 或真实 Motor-CAD)
  → report_results 回填(point_id 对齐)→ 分析 → 经验库
  → 收敛 / 预算耗尽 → 结束

B.7 可靠性增强(P3 收尾,2026-08-29)

  • 并发原子认领task_manager.dispatch_task 改为条件 UPDATE + rowcount 判定,多执行器竞争同一任务恰好一次成功(test_p3_concurrency.py)。
  • 断点恢复FeasibilityFirstSearch.import_state() + AdaptiveLoop.export_state()/restore_state() + GET /loops/{id}/exportPOST /loops/import,进程重启后可恢复搜索状态并继续(test_p3_checkpoint.py)。
  • 真实 Motor-CAD 烟雾验证:连接→基线加载→求解→解析 21 指标,back_emf=11.15V 与历史一致(TEST-010)。

B.8 已知限制与后续(P4 进行中)

状态
本地 EXE 打包(PyInstaller,headless 执行器) P4-M3 进行中
前端 adaptive 视图(批次可视化/收敛曲线) P4-M4 规划中(当前 UI 为全因子展示)
L0 预筛选上提共享核心层 P4-M5 规划中(当前在 web 端)
多物理场(L2 热/结构、L3 Maxwell/JMAG) 接口预留,未接入执行
真实 Motor-CAD 依赖 license server(1055@localhost) 环境依赖,脚本内置检查与降级
AI 分析依赖 Kimi API key(无 key 自动降级纯定量) 已实现门控

附录 B 为 V2.0 增量;设计蓝图正文保持 V1.1 原样。