
做电机仿真、电磁场分析的人很多都遇到过这个场景CAD 里辛苦画好的模型导入 JMAG 后却怎么也用不了——要么导入时报一堆“破面”“干涉”要么能导入但网格剖分直接卡死甚至算出来的结果明显不合理。这篇文章要讲的不是怎么用 JMAG 建一个简单的几何体而是“从 CAD 到 JMAG 模型”这条完整流程。内容思路来自 JMAG 2026 暑期培训中关于“基于 JMAG 从 CAD 到模型的基本操作流程”部分下面会拆成可落地的步骤并给出 CAD 导出前的清理方法、JMAG 导入后的检查方式、材料与边界条件设置的思路以及常见问题的排查清单。先给一个判断CAD 模型是给制造用的JMAG 模型是给求解器算的。这两者目标不同。如果直接拿原始 CAD 模型导入 JMAG你会花大量时间处理本来就不该存在的圆角、倒角、小孔和碎面。真正高效的流程是在进入 JMAG 之前先把 CAD 模型“净化”成适合电磁仿真的几何。1. 从 CAD 到 JMAG为什么需要一套专门流程很多工程师第一次用 JMAG 时的习惯是CAD 里画完电机直接“另存为 STEP”然后拖进 JMAG开始设置材料、设边界条件、求解。结果往往卡在网格剖分阶段或者求解器一直提示“模型不满足要求”。原因很简单CAD 模型包含的细节很多是制造工艺需要的不是电磁计算需要的。比如定子铁芯上的倒角、定位孔、压铆孔、螺纹孔再比如一些外壳上的散热筋、安装支架、标签凸台。这些特征在电磁仿真里对磁路和电磁力的影响几乎可以忽略但它们会大幅增加模型的面数导致网格剖分慢、求解内存高还会让“模型检查器”报出大量不痛不痒的问题。所以一个合理的“从 CAD 到 JMAG 模型”流程应该分成六步在 CAD 软件里做“仿真几何简化”。统一单位、坐标系导出中间格式。在 JMAG 中导入 CAD 文件。使用模型检查器检查几何缺陷。做几何修复、区域命名方便后续分配材料和边界条件。设置材料、边界条件、网格并求解验证。这一步的关键不是“导入文件”而是“把面向制造的几何转换为面向求解的几何”。把这一步想清楚后面所有操作都会顺畅很多。2. JMAG 能识别哪些 CAD 格式文件格式怎么选JMAG 支持多种 CAD 中间格式但不同格式的实际效果差异很大。下面是我在培训流程中常用的格式对比格式类型适用场景注意点STEP.step/.stp实体模型首选格式兼容性最好建议使用 AP214保留颜色和图层信息Parasolid.x_t实体模型如果是 NX/Solidworks 导出文件很干净部分 CAD 版本兼容需要确认IGES.igs曲面模型老 CAD 系统常见容易出现破面导入后修复工作量大SAT实体模型部分 CAD 软件原生格式依赖版本兼容性不如 STEPSTL三角网格快速预览、3D 打印不建议用于 JMAG 电磁分析很难转为有效实体从工程实践角度看优先导出 STEP AP214。它既保留实体信息又不会像 IGES 那样常出破面而且大多数 CAD 软件都支持。这里有一个容易踩的坑不要贪图方便导出 STL。STL 本质是三角形网格导入 JMAG 后会变成大量碎面模型检查器几乎一定报错。如果你在项目里只拿到 STL 模型宁可花时间重新建模也不要硬导入。另一个需要注意的点是 2D 和 3D 的区别。很多电机仿真会用 JMAG 的 2D 求解器这时可以在 CAD 里把电机轴向截面导出为 DXF 或直接用 3D STEP 导入后切面。最稳妥的方式是先导入 3D STEP再在 JMAG 里选择 2D 分析并取截面这样单位、坐标系和模型方向都不容易出错。3. 导入前的 CAD 处理单位、坐标系、图层与特征简化3.1 单位与坐标系必须先统一JMAG 对单位很敏感。CAD 里用英寸画图导出 STEP 时如果没有正确设置单位导入 JMAG 后模型尺寸会完全不对后续设置气隙、网格尺寸都会出错。建议在 CAD 导出前完成两件事把模型单位统一为mm。把电机旋转轴设置为Z 轴模型中心尽量靠近坐标系原点。这样做的好处是JMAG 里的旋转运动设置、周期边界设置都会更方便。如果模型坐标系乱七八糟后面设置“旋转运动”时还要自己换算角度非常容易错。3.2 几何简化把与电磁无关的特征删掉对于电机模型导入 JMAG 前至少要做一次“仿真几何简化”。常见的简化原则如下删除倒角、圆角、螺纹孔、定位孔、压铆特征、标签、安装座、散热筋。保留定子铁芯、绕组、转子铁芯、磁钢、转轴可简化、气隙区域。如果需要做涡流损耗分析再考虑保留屏蔽层、机壳等导磁或导电部件。这里要强调一点不需要把所有零件都导入。很多新手的误区是“一个总装模型全部导入反正只算电磁”。但 JMAG 是有限元仿真模型里面每一个实体都参与网格剖分。无关零件越多剖分越慢越容易出错。3.3 批量清理 CAD 图层的 Python 示例对于 CAD 制图初学入门比较推荐从一开始就建立图层规范。比如“机械结构”放一层“绕组部件”放一层“辅助结构”放一层。图层清晰之后可以用脚本批量清理重复线、零长度线等无效对象。下面是一个用 Python 配合ezdxf库处理 DXF 文件的示例。它会把模型空间里长度接近 0 的 LINE 对象批量删除避免这些微小对象在后续几何导入中变成碎片。# 文件路径clean_cad_lines.py # 依赖pip install ezdxf import ezdxf def clean_zero_length_lines(dxf_path, output_path, tolerance1e-6): doc ezdxf.readfile(dxf_path) msp doc.modelspace() removed 0 for entity in msp: if entity.dxftype() LINE: start entity.dxf.start end entity.dxf.end if start.distance(end) tolerance: msp.delete_entity(entity) removed 1 doc.saveas(output_path) print(f清理零长度线段数量{removed}) print(f输出文件{output_path}) if __name__ __main__: clean_zero_length_lines(motor_raw.dxf, motor_clean.dxf)运行方式python clean_cad_lines.py这段代码的核心思路是把 CAD 文件当作数据文件处理而不是打开软件一个一个找。如果你们团队每天都要处理大量 CAD 文件这种脚本可以明显减少手工工作量。3.4 CAD 导出参数推荐不同 CAD 软件导出 STEP 时的对话框不一样但通常都有“高级选项”。这里给一份通用导出配置可以直接对照设置{ units: mm, format: STEP AP214, export_solid_only: true, exclude_hidden_components: true, export_sketches: false, export_construction_geometry: false, simplify_small_features: false, coordinate_system: absolute }说明一下export_solid_only只导出实体不导出曲面、片体。exclude_hidden_components隐藏组件不导出方便在 CAD 里把无关零件隐藏后再导出。export_sketches不导出草图草图对 JMAG 没有意义。simplify_small_features不建议让 CAD 自动简化简化过程容易把关键配合面也删掉最好人工控制。导出之后建议在 JMAG 导入前单独打开 STEP 文件看一眼确认没有丢失关键部件。这一步十几秒但能避免后面反复“导入—报错—回 CAD 改”的低效循环。4. JMAG 导入操作把 CAD 文件载入 JMAGCAD 文件准备好之后就可以进入 JMAG。以下是基于培训中演示的通用流程不同版本菜单名称可能有差异但核心逻辑一致。新建 JMAG 项目选择分析维度2D 或 3D。点击导入选择 STEP 或 Parasolid 文件。在导入向导中确认单位一般选 mm。确认模型方向检查旋转轴是否为 Z 轴。导入完成后先打开“模型检查器”检查几何不要急着设置材料。导入后JMAG 左侧模型树会出现几何实体。此时这些实体往往还是“原始几何”没有区分定子、转子、气隙。下一步需要做两件事检查几何和区域命名。这里最容易犯的错误是一导入就开始分配材料、设置边界条件结果后面网格剖分失败又回过来检查几何。建议所有人都养成一个习惯几何没过模型检查器之前不进行任何物理设置。5. 模型检查器与几何修复把“画出来的模型”变成“能算的模型”5.1 模型检查器会查什么问题JMAG 的模型检查器Model Checker会扫描几何检查影响网格和求解的问题。常见检查项包括检查项说明实体完整性是否存在开口面、非实体片体干涉检查两个零件是否重叠或互穿重复面是否存在重合面或重复几何短边/小面是否存在极短边、极小面会导致网格过密未闭合区域气隙区域是否闭合是否形成连续求解域如果模型检查器报出大量“短边”或“小面”不要一个个忽略。这些通常来自 CAD 里的圆角、倒角、微小台阶。正确处理方式是回到 CAD 里把这些特征删掉再重新导出。5.2 几何修复的常用操作在 JMAG 或前处理工具里可以做的修复动作包括合并共面把相邻的共面小面合成一个大面。删除短边把极小边直接移除并让相邻面重新缝合。缝合曲面对破面模型进行曲面缝合生成闭合实体。简化圆角倒角把不参与电磁计算的圆角、倒角直接替换成直角或删除。要特别注意几何修复不等于“修到看起来没问题”。修复之后必须重新运行模型检查器确认报错数量下降或者关键问题已消除。5.3 区域命名为材料分配做准备当几何检查通过之后下一步是给每个几何体定义区域名称。这一步的意义是后续分配材料、设置边界条件和网格尺寸时可以直接按区域选择而不是手动一个一个面去点。下面是一套电机模型的推荐区域命名区域名称对应几何STATOR定子铁芯WINDING绕组线圈ROTOR转子铁芯MAGNET永磁体AIR_GAP气隙区域SHAFT转轴区域命名规范非常重要。如果你只做一次仿真怎么命名都无所谓但如果你要反复优化结构或者团队成员要共享模型命名不统一会带来大量沟通成本。建议在项目启动时就定好命名规则。6. 为仿真模型分配材料从模型到物理属性几何和区域命名完成之后才开始分配材料。这里先纠正一个常见误解材料分配不是“选中实体选一种材料”这么简单。在 JMAG 里材料分配的准确性会直接影响转矩、损耗、效率等核心结果。对于电机仿真常见材料包括定子铁芯、转子铁芯软磁材料需要 B-H 曲线。永磁体钕铁硼、铁氧体等需要剩磁、矫顽力、电导率。绕组铜或铝需要电导率。转轴一般用结构钢如果是电磁分析可设绝缘或忽略。JMAG 自带材料库但很多情况下要使用你自己的材料数据。团队内部维护一份统一的材料参数文件很有价值比如 CSV 格式Name,Category,RelativePermeability,Conductivity[S/m],MassDensity[kg/m3],CoerciveForce[A/m],RemanentFlux[T] Steel_35JN250,SoftMagnetic,2000,2000000,7600,0,0 N35H_PM,PermanentMagnet,1.05,666666,7500,880000,1.22 Copper_Winding,Conductor,1,58000000,8900,0,0实际导入 JMAG 时应该以官方材料编辑器支持格式为准。这里给出 CSV 的主要目的是把材料参数集中管理方便团队复用和审计。分配材料时要注意两个细节永磁体磁化方向不能只选材料还要设置充磁方向。常见的径向充磁、平行充磁必须在几何坐标上明确指定。软磁材料的 B-H 曲线尤其是高饱和区数据会影响电机过载工况的仿真结果。不要用线性磁导率代替非线性 B-H 曲线。如果你发现模型检查器通过、材料也分配好了但求解结果明显不对优先检查材料数据和永磁体方向。7. 设置运动条件、边界条件与网格让模型进入可求解状态7.1 运动条件对于旋转电机需要设置运动条件。这一步会用到前面“坐标系绕 Z 轴”的设置运动类型旋转。旋转轴Z 轴。转速根据工况设置单位一般是 rpm。初始位置决定转子初始角度要和激励相位配合。7.2 边界条件JMAG 的边界条件设置里常用的是周期边界如果只建了一个极或一对极需要对边界设置 Periodic 条件。对称/半周期边界模型存在对称性时使用可以减少求解规模。自然边界模型外边界默认处理一般不需要特殊设置。边界条件最容易出错的地方是“周期边界的方向不一致”。如果导入的模型本身没按周期切好在 JMAG 里强行设置周期边界求解器会报错或结果不连续。7.3 激励条件激励可以是电流源、电压源或外电路。对于永磁同步电机的初步仿真常用电流源激励直接给定三相电流的幅值、频率和相位。电压源激励则需要额外设置绕组电阻、电感甚至配合外电路复杂度更高。7.4 网格设置网格真的不是越细越好。网格过细会导致求解时间急剧增加但精度提升有限网格过粗又捕捉不到气隙磁场的细节。推荐从以下顺序开始对象网格策略气隙多层网格气隙至少 3~5 层磁钢标准密度即可必要时加密表面定子齿部适当加密关注饱和区域绕组如果只算电磁可以较粗转轴不影响结果时用粗网格网格剖分失败时不要第一时间“把全局网格调小”。正确做法是看剖分报错位置大概率是几何仍存在短边、狭长面或干涉需要回几何修复。8. 求解设置与结果验证如何判断 CAD 转换是否成功8.1 求解器与时间步设置选择求解器时瞬态场是电机仿真最常用的选择。需要设置求解时间至少覆盖一个电周期。时间步长一般取电周期的 1/100 到 1/200。非线性迭代使用默认或按精度要求调整。8.2 判断结果是否合理的标准求解完成后不要直接保存图片。先看几个关键结果转矩波形是否平缓是否有周期性波动波动过大可能是网格不够。磁通密度云图是否有异常集中点磁力线是否出现尖角、穿越实体等不连续现象。磁链波形三相是否对称相位关系是否正确如果你发现磁通密度云图在某处出现“锯齿”或明显不连续大多数时候不是求解器问题而是几何修复不彻底或区域命名错误。8.3 用简单算例验证流程第一次跑通整个流程时建议先用一个最简单的模型比如单个磁钢加一个导磁块把“导入—检查—材料—边界条件—网格—求解”完整跑一遍。确认每一步都没有障碍后再处理完整的电机模型。这个方法看起来慢但能在初期把流程问题暴露出来避免把“几何问题”和“物理设置问题”混在一起排查。9. 常见问题与排查方法问题现象可能原因排查方式解决方案导入 STEP 后模型是空的导出时勾选了构造几何或隐藏组件回到 CAD 检查导出选项重新导出只保留可见实体模型检查器报大量短边CAD 里包含倒角、圆角、碎面查看报错位置定位特征在 CAD 中删除对应特征后重新导出模型检查器报干涉不同零件之间发生重叠检查干涉位置确认装配关系调整 CAD 装配或删除不影响计算的干涉零件网格剖分失败几何有狭长面或未缝合区域放大报错位置检查模型检查器日志执行曲面缝合、合并共面、删除短边材料分配不到某个区域区域名称或几何选择不正确检查模型树中的区域列表重新命名区域确保每个区域对应唯一实体周期边界报错模型没有按整数数目的极切割检查边界位置和切割角度使用对称模型或重新切割 CAD 几何转矩波形波动异常大气隙网格不足或材料 B-H 曲线不完整检查气隙网格层数和材料数据加密气隙网格补充高饱和区 B-H 点上面这些问题绝大部分都不是 JMAG 自身故障而是“几何准备”环节没有做好。所以排查时建议按照“几何 → 网格 → 材料 → 边界条件 → 求解设置”的顺序不要直接改求解器参数。10. 从培训中总结的最佳实践与工程建议结合 JMAG 2026 暑期培训中关于“从 CAD 到模型”的内容我在实际项目中沉淀下来几条经验第一把“CAD 仿真模型”和“CAD 制造模型”分开管理。不要直接在总装模型上做几何简化而是复制一份命名为“XX 模型_仿真用”在副本上删除倒角、小孔。这样既能保证仿真模型干净又不影响制造模型完整性。第二固定导出模板。项目组内部统一使用 STEP AP214、毫米、Z 轴为旋转轴的导出模板。不同人导出同一模型结果应该完全一致。第三区域命名是团队资产。推荐在项目一开始就定义一套命名规范比如 STATOR、ROTOR、MAGNET、AIR_GAP。命名规范越早建立后期做参数化优化、多方案对比时越省力。第四材料参数要有版本记录。用 CSV 或类似格式维护材料参数每次修改都要记录来源和修改日期。推荐磁钢和硅钢材料数据必须来源于实际供应商测试报告不要长时间使用默认库数据。第五先批量验证几何再开始做方案。如果同一个平台有多个电机模型需要仿真可以在 CAD 脚本里写批量导出再用 JMAG 脚本或模型检查器批量验证。这样能在几十分钟内发现问题而不是等做完一轮仿真才发现几何错了。第六建议收藏好每一步的截图和日志。JMAG 的模型检查器会输出检查日志网格剖分也会输出统计。把这些日志保存到项目文件夹后续排查问题时可以快速对比。后续如果想继续深入可以沿着“几何自动化清理”和“仿真流程标准化”两个方向学。前者是用 Python 脚本和 CAD API 把重复性工作自动化后者是把材料、边界条件、网格参数、求解设置变成可复用的模板。这样在做电机多方案对比时才能真正把精力放在设计优化上而不是反复处理几何模型。这次培训里最有价值的一点不是某一个按钮怎么点而是“CAD 模型到 JMAG 模型”这条链路要当作一项工程能力来建设。把这条链路打通后面的仿真工作才会真正高效。