README_Central_Mag_Arc扫描.md 2.3 KB

Central Mag Arc 扫描脚本

脚本通过 Motor-CAD 的 Windows COM 接口,扫描当前模型的 Central Mag Arc [ED](自动化名 MagnetCentralArc_HalbachRing),并输出 Torque Ripple 列表与简单分析。

使用前

  1. 在 Motor-CAD 中打开目标 .mot(脚本连接现有实例,不新开实例)。
  2. 使用安装了 ansys-motorcad-core 的 Windows 原生 Python。
  3. 关闭或暂停其它会控制同一 Motor-CAD 实例的脚本。

若同时开了多个 Motor-CAD,先按进程 ID 找监听端口,再显式传给脚本:

Get-CimInstance Win32_Process -Filter "Name='MotorCAD.exe'" | Format-List ProcessId,CommandLine
netstat -ano | Select-String '<目标进程ID>$'
python .\scan_central_mag_arc.py --port 65479

选择该进程的 IPv4 LISTENING 端口;端口号每次启动可能变化,示例值不能长期复用。 若现有窗口含未保存工作,使用独立实例最安全:

python .\scan_central_mag_arc.py --new-instance

命令

python .\scan_central_mag_arc.py

默认:80 到 120 EDeg,步长 1,TorquePointsPerCycle=120,气隙网格 mesh/layers=960。120 点与原始 840 网格不对齐,会触发 Motor-CAD 交互弹窗;960 是 Motor-CAD 提示的兼容值,同时比参考项目最终复算用的 1680 更快。

自定义范围和步长:

python .\scan_central_mag_arc.py --start 90 --stop 110 --step 2

最终候选高精度复算:

python .\scan_central_mag_arc.py --start 96 --stop 104 --step 1 --torque-points 180 --airgap-mesh 1440 --no-resume

若要求连求解采样设置也完全保持模型原值(原模型为 30 点,但会混叠 18 次谐波):

python .\scan_central_mag_arc.py --torque-points 0 --airgap-mesh 0 --no-resume

结果写入 results/central_mag_arc_scan.csv,每个点完成后立即落盘;中断后重跑会跳过 已有成功点。results/central_mag_arc_analysis.md 是自动生成的结果表和简要分析。

每个点开始前脚本都会重新加载原始 .mot,然后只修改 Central Mag Arc;结束后再次加载 原模型,因此不会把最后一个扫描值留在当前模型中。默认的 120 点仅改变本次求解的数值采样, 不改变其它几何、材料、绕组或工况参数。