如果你正在使用 ANSYS Maxwell 进行平面变压器的损耗仿真,特别是想准确计算高频下的铜损和铁损,那么很可能已经遇到了一个经典难题:如何在瞬态场(Transient)中,既施加真实的时域激励波形(如PWM波),又能准确分离并提取出绕组的涡流损耗和磁芯的铁损?
传统的做法往往让人陷入两难:使用“场计算器”手动编写公式极其繁琐且容易出错;而简单地查看软件报告的“Ohmic Loss”又包含了直流损耗,无法反映高频涡流效应。这直接导致仿真结果与实测偏差巨大,设计优化失去依据。
本文将彻底解决这个问题。我们将深入探讨一种在 Maxwell 瞬态场仿真中施加激励并计算损耗的“新”方法。这里说的“新”,并非指软件发布了新功能,而是指一种被许多官方教程忽略,但在工程实践中极其高效、准确的流程与设置组合。它核心解决了两个问题:
- 如何正确施加激励:特别是对于多绕组、有相位差的平面变压器,如何用外部电路(External Circuit)或函数准确描述开关动作。
- 如何准确提取损耗:如何设置才能让软件自动报告出我们真正关心的“涡流损耗(Core Loss)”和“铁损(Solid Loss)”,而不是一个笼统的总损耗。
接下来,我将以一款典型的 LLC 谐振变换器中的平面变压器为例,手把手带你完成从模型建立、激励设置、求解配置到结果后处理的完整仿真流程。你将获得可直接复用的操作步骤、关键截图和最佳实践建议,从而将你的平面变压器损耗仿真精度提升一个等级。
1. 为什么平面变压器的损耗仿真如此棘手?
在深入操作之前,我们必须理解问题的根源。平面变压器因其低剖面、高功率密度、优良的热性能和可重复性,广泛应用于高频开关电源(如服务器电源、通信电源、车载充电机)。其工作频率通常在几百kHz到几MHz。
在这个频段下,损耗主要由两部分构成:
- 磁芯损耗(Core Loss):由磁芯材料在高频交变磁场下的磁滞、涡流和剩余效应引起。它与磁通密度变化率(dB/dt)、频率、磁芯材料特性密切相关。
- 绕组损耗(Winding Loss):包含直流电阻损耗(DCR)和由高频趋肤效应、邻近效应引起的涡流损耗。对于平面变压器,其绕组是印刷电路板(PCB)上的铜箔或多层铜层,邻近效应往往占主导,损耗分布极其不均匀。
在 Maxwell 中,稳态频域求解器(如 Eddy Current)虽然可以方便地计算某一特定频率下的损耗,但它无法模拟真实的、非正弦的时域开关波形(如方波、PWM波)对磁芯的磁化过程,也无法分析瞬态启动、负载突变等动态过程。因此,瞬态场(Transient)求解器是分析此类问题的必选项。
然而,Maxwell 瞬态场默认的损耗报告机制是针对“场”的,而不是直接针对“部件”的。如果不进行特殊设置,你只能得到整个模型的总体欧姆损耗,无法区分是铜的涡流损耗还是磁芯的涡流损耗,更无法直接得到符合 Steinmetz 或改进型 Steinmetz 公式计算的磁芯铁损。这就是我们需要寻找“新”激励给定方式和后处理方法的根本原因。
2. 核心概念澄清:Maxwell 中的损耗类型与设置
开始操作前,明确几个关键概念,避免后续配置混淆:
- 激励(Excitations):指施加在模型上的电压源、电流源或外部电路。它驱动整个仿真。对于变压器,通常在一次侧施加电压源或电流源,二次侧可连接负载。
- 材料属性(Material Properties):决定部件损耗计算的关键。必须正确设置:
- 导电材料(如铜):需要定义其电导率(Conductivity)。在瞬态场中,如果勾选了“Set Eddy Effect”(设置涡流效应),软件在计算磁场的同时,会求解由变化磁场在该导体中感应出的涡流场,从而计算出涡流损耗。
- 磁芯材料(如铁氧体):需要定义其 B-H 曲线(或相对磁导率)以及核心损耗属性(Core Loss)。在材料属性中,你需要输入磁芯损耗系数(Kh, Kc, Ke)或导入损耗曲线,软件才能在瞬态求解后,根据计算出的时域磁通密度波形,计算出磁芯损耗。
- 求解器设置(Solution Setup):这里需要勾选关键选项,以启用损耗计算。
- 场计算器(Fields Calculator)与后处理(Results):这是提取和查看特定部件损耗数据的主要工具。
传统方法 vs 本文方法对比
| 方面 | 传统方法(易出错) | 本文推荐方法(高效准确) |
|---|---|---|
| 激励施加 | 对绕组直接赋电压/电流值,难以模拟复杂开关序列或外部驱动芯片逻辑。 | 使用“外部电路(External Circuit)”或“分段线性电压源(Piecewise Linear Voltage Source)”,可精准描述任意时域波形。 |
| 涡流效应设置 | 容易遗漏为绕组或磁芯设置“Set Eddy Effect”。 | 在材料分配或模型设置中,明确为所有导体和磁芯勾选“Set Eddy Effect”。 |
| 磁芯损耗计算 | 依赖手动后处理,用场计算器积分损耗密度,步骤繁琐。 | 在材料属性中定义好 Core Loss 参数,并在求解设置中勾选“Calculate Core Loss”,软件自动计算并报告。 |
| 结果查看 | 主要看“Fields”云图,定量数据提取麻烦。 | 利用“Results”下的“Create Transient Report”直接生成损耗随时间变化的曲线,或使用“Data Table”导出数值。 |
3. 仿真环境准备与模型建立
3.1 软件版本与模块
- ANSYS Electronics Desktop (AEDT) 2023 R2 或更高版本。本文操作基于此版本,界面在早期版本中可能略有不同,但核心功能一致。
- 确保已安装并授权Maxwell 3D或Maxwell 2D模块。对于平面变压器(通常结构在XY平面内延伸,Z方向很薄),使用Maxwell 2D进行仿真可以极大减少计算量,且精度对于工程设计通常足够。本文以Maxwell 2D为例。
3.2 创建平面变压器几何模型
- 新建项目:启动 AEDT,新建一个 Maxwell 2D 设计项目。
- 设置求解器类型:在项目树中,右键点击
Maxwell2DDesign1,选择Solution Type->Transient(瞬态)。 - 建模:使用绘图工具(Draw)创建模型。一个典型的平面变压器模型包括:
- 磁芯(Core):绘制“U”型、“E”型或平面磁芯的截面。通常用矩形(Rectangle)或组合图形表示。
- 绕组(Winding):绘制代表 PCB 铜箔的矩形区域。重要:一次侧(Primary)和二次侧(Secondary)绕组需要是独立的物体(Object),以便分别分配激励和材料。
- 空气区域(Air Region):绘制一个足够大的区域包围所有模型,作为求解域。右键点击该区域,选择
Assign Region->Region。
- 模型检查:确保所有图形闭合,没有重叠或缝隙(除非是故意设置的绝缘间隙)。
3.3 分配材料属性
这是准确计算损耗的第一步,也是最重要的一步。
- 为磁芯分配材料:
- 在材料库(
Materials)中找到你的磁芯材料(如Ferrite_Material),或自定义一个。 - 双击材料进入属性窗口。
- 在
Core Loss选项卡下,选择损耗模型(如Electrical Steel模型需输入 Kh, Kc, Ke;Power Ferrite模型可能需输入不同参数或导入.dat文件)。务必根据数据手册填写准确参数。 - 将该材料拖拽到模型中的磁芯物体上。
- 在材料库(
- 为绕组分配材料:
- 将材料库中的
copper拖拽到所有绕组物体上。 - 关键操作:选中一个绕组物体,在属性窗口(
Properties)中,找到Model选项卡,将Model Type从默认的Lamination(叠片,不计算涡流)改为Solid(实体)。只有这样,后续勾选“Set Eddy Effect”才会生效。
- 将材料库中的
- 为空气区域分配材料:分配
vacuum或air。
4. 核心流程拆解:激励、边界条件与求解设置
4.1 施加激励——新的给定方式
传统方法是在绕组截面上直接画一个“截面(Section)”并赋电压值。对于平面变压器,更推荐以下两种方式:
方式一:使用外部电路(External Circuit)—— 最灵活此方法可以模拟真实的驱动芯片、MOSFET、二极管和负载电路。
- 在项目树中,右键点击
Maxwell2DDesign1,选择Create External Circuit。 - 在弹出的 Schematic 窗口中,从元件库放置电压源(如
VPULSE用于产生方波)、电阻、电感、电容等,搭建你的原边驱动和副边整流滤波电路。 - 将电路中需要与 Maxwell 2D 模型连接的节点,通过
Port元件引出。 - 在 Maxwell 2D 界面中,为绕组截面分配激励:
Assign Excitation->Voltage(或Current)。在设置窗口中,关键步骤:将Source从DC或Sinusoidal改为External,并选择你在外部电路中定义的对应Port。 - 这样,激励波形完全由外部电路定义,可以轻松实现 PWM、死区、软开关等复杂时序。
方式二:使用分段线性电压源(Piecewise Linear)—— 较简单如果不需要复杂电路,只想定义一个自定义的时域电压波形。
- 为绕组截面分配激励:
Assign Excitation->Voltage。 - 在设置窗口中,将
Function选为Piecewise Linear。 - 在
Data选项卡中,以(时间,电压值)的格式输入一系列点,例如(0, 0), (1e-6, 12), (2e-6, 12), (2.1e-6, 0), (4e-6, 0)来描述一个方波。 - 这种方式比固定频率的正弦波更贴近实际开关电源波形。
4.2 设置边界条件与网格
- 边界条件:对于 2D 模型,通常将最外层的空气区域边界设置为
Balloon(气球边界),表示磁场在此处衰减至零。 - 网格划分:
- 关键操作:由于要计算涡流,导体和磁芯表面的网格需要加密。选中绕组和磁芯物体,右键
Assign Mesh Operation->On Selection->Length Based。设置一个合适的最大单元长度(例如,小于趋肤深度的一半)。 - 趋肤深度计算公式:
δ = √(ρ / (π * f * μ)),其中 ρ 为电阻率,f 为频率,μ 为磁导率。对于 500kHz 的铜,趋肤深度约 0.1mm。
- 关键操作:由于要计算涡流,导体和磁芯表面的网格需要加密。选中绕组和磁芯物体,右键
4.3 配置瞬态求解器——启用损耗计算
- 右键点击
Analysis->Add Solution Setup。 - 在
General选项卡设置仿真总时间(Stop time)和步长(Time step)。步长需远小于激励波形的最小时间单位(如 PWM 周期的 1/100)。 - 最关键的一步:切换到
Solver选项卡。- 勾选
Enable Transient Solver(通常默认已勾选)。 - 勾选
Calculate Core Loss。只有勾选此项,软件才会在每一步求解时,利用材料中定义的 Core Loss 参数计算磁芯损耗。 - 勾选
Set Eddy Effect。在弹出的对话框中,选中所有绕组(铜)和磁芯物体。这意味着软件将求解这些区域内的涡流场。对于绕组,这计算的是涡流损耗;对于磁芯(如果材料导电),这也计算磁芯内的涡流损耗(通常很小,铁氧体不导电)。
- 勾选
- 点击
OK完成设置。
5. 运行仿真与结果验证
5.1 运行仿真
右键点击Setup1->Analyze。等待求解完成。求解时间取决于模型复杂度、网格数量和总步数。
5.2 验证仿真是否收敛
- 求解完成后,查看
Convergence数据。观察能量误差(Energy Error)是否随时间收敛到一个很小的值(如 <1%)。 - 查看残差(
Residual)曲线是否平滑下降并保持低位。 - 如果未收敛,可能需要减小时间步长、加密网格或检查激励设置是否有突变导致数值不稳定。
5.3 查看基本场结果
先直观感受一下仿真是否正常:
- 在
Results上右键 ->Create Field Plot->Rectangular Plot。 - 可以绘制磁力线(
Flux Lines)、磁通密度矢量(B Vector)或磁通密度模(B)的分布。这能帮助你判断磁芯是否饱和,磁场分布是否合理。
6. 准确提取损耗数据——后处理关键操作
这是本文方法的精华所在。仿真完成后,软件已经计算了所有数据,我们需要用正确的方式把它“取出来”。
6.1 查看磁芯损耗(Core Loss)
由于我们在求解设置中勾选了Calculate Core Loss,软件会自动计算。
- 在
Results上右键 ->Create Transient Report->Rectangular Plot。 - 在报告设置窗口中:
Category: 选择Core Loss。Quantity: 选择TotalCoreLoss(总磁芯损耗),或者CoreLossx(某个磁芯部件的损耗,如果你将磁芯分成了多个物体)。Function: 选择None或Avg(看个人需求)。
- 点击
New Report,即可生成磁芯损耗随时间变化的曲线。曲线应该是周期稳定的。 - 获取数值:在报告图上右键 ->
Export to File(如 CSV),可以导出数据用于计算平均损耗。或者,在报告窗口,点击Data Table标签,直接查看和复制数值。
6.2 查看绕组损耗(Winding Loss - Ohmic Loss)
绕组损耗(主要是涡流损耗)包含在总的欧姆损耗中。我们需要查看特定绕组的损耗。
- 在
Results上右键 ->Create Transient Report->Rectangular Plot。 - 在报告设置窗口中:
Category: 选择Solid Loss。- 重要:
Geometry这里需要选择。点击下拉箭头,展开模型树,精确选中你关心的那个绕组物体(例如Polyline1代表初级绕组)。 Quantity: 选择OhmicLoss。Function: 选择None。
- 点击
New Report,生成该绕组的欧姆损耗(即涡流损耗+直流损耗)曲线。注意:在瞬态场中,由于电流是变化的,此处的OhmicLoss是瞬时值,包含了趋肤效应和邻近效应的影响。 - 重复此步骤,为每个绕组生成报告。
6.3 使用场计算器进行高级提取(备选)
如果需要对特定区域进行更复杂的积分计算(例如,只计算绕组中某一部分的损耗),可以使用场计算器。
- 打开
Fields Calculator。 - 流程大致为:
Quantity->Ohmic Loss->Geometry(选择物体)->Scalar->Integrate->Evaluate。但此方法较为复杂,对于常规的部件总损耗提取,推荐使用上述 6.2 的报表方法。
7. 完整示例:一个 LLC 平面变压器仿真步骤
假设我们仿真一个 500kHz LLC 谐振变换器的平面变压器(E型磁芯,PCB绕组)。
步骤 1: 建模与材料
1. 在 Maxwell 2D 中,绘制 E 型磁芯截面(三个矩形)。 2. 绘制两个矩形分别代表初级和次级 PCB 绕组(铜箔),置于磁芯中柱两侧。 3. 绘制一个大矩形作为空气区域。 4. 分配材料:磁芯 -> `MnZn_Ferrite` (自定义材料,输入 Core Loss 参数);绕组 -> `copper`,并修改 Model Type 为 `Solid`;空气 -> `vacuum`。步骤 2: 激励与边界
1. 为初级绕组截面 Assign Excitation -> Voltage,选择 External,链接到外部电路。 2. 在外部电路中,用 VPULSE 源模拟半桥方波,设置 V1=0, V2=400V, TD=0, TR=1ns, TF=1ns, PW=1us, PER=2us (对应500kHz,50%占空比)。 3. 次级绕组截面 Assign Excitation -> Voltage,设置为 0V(模拟短路工况测损耗)或连接电阻负载。 4. 设置空气区域边界为 Balloon。步骤 3: 网格与求解
1. 对绕组和磁芯表面施加 Length Based 网格操作,Max Length = 0.05mm。 2. 添加 Transient Setup, Stop Time = 20us (10个周期), Time Step = 10ns。 3. 在 Solver 选项卡,勾选 Calculate Core Loss 和 Set Eddy Effect(选中所有绕组和磁芯)。步骤 4: 运行与后处理
1. 运行仿真。 2. 创建报告: - Report 1: Core Loss -> TotalCoreLoss,查看磁芯损耗曲线。 - Report 2: Solid Loss -> Geometry (选择初级绕组) -> OhmicLoss,查看初级绕组损耗。 - Report 3: Solid Loss -> Geometry (选择次级绕组) -> OhmicLoss,查看次级绕组损耗。 3. 使用 Data Table 功能,导出最后几个周期的数据,计算平均损耗值。8. 常见问题与排查思路
| 问题现象 | 可能原因 | 排查方式 | 解决方案 |
|---|---|---|---|
| 磁芯损耗结果为0或极小 | 1. 求解设置未勾选Calculate Core Loss。2. 磁芯材料未定义 Core Loss 属性。 3. 磁场太弱,未达到材料损耗显著区间。 | 1. 检查Setup -> Solver选项卡。2. 双击磁芯材料,检查 Core Loss标签页。3. 查看磁通密度 B 场图,看是否远低于饱和磁通密度。 | 1. 勾选Calculate Core Loss。2. 正确定义材料损耗参数。 3. 检查激励电压/电流是否足够。 |
| 绕组损耗(OhmicLoss)异常高 | 1. 未对绕组设置Set Eddy Effect,软件可能只计算了直流电阻损耗(但通常直流损耗很小)。2. 网格太粗,无法解析趋肤效应。 3. 激励频率设置错误,远高于实际值。 | 1. 检查Set Eddy Effect对话框中是否包含了绕组。2. 检查绕组区域的网格密度。 3. 核对外部电路或激励源的频率参数。 | 1. 在Set Eddy Effect中选中所有导体。2. 加密绕组及其附近区域的网格。 3. 修正激励频率。 |
| 仿真不收敛 | 1. 时间步长 (Time Step) 太大。2. 网格质量太差,特别是曲率大的地方。 3. 材料属性或激励有突变,导致方程刚性太大。 4. 模型有几何错误(如未闭合面)。 | 1. 查看收敛曲线,看在哪一步发散。 2. 检查 Mesh Operations和网格统计信息。3. 检查激励波形,避免电压/电流的瞬时无穷大跳变。 4. 使用 Modeler -> Validation Check检查几何。 | 1. 减小时间步长,可尝试设为激励最小时间特征的1/50~1/100。 2. 改进网格,使用 On Selection或Surface Approximation细化。3. 给激励添加微小的上升/下降时间(如1ns)。 4. 修复几何模型。 |
| 外部电路不工作 | 1. Maxwell 与外部电路的端口连接错误。 2. 外部电路本身有错误(如短路、开路)。 3. 仿真设置中未正确调用外部电路。 | 1. 在 Maxwell 中检查绕组激励的Source是否指向正确的Circuit Port。2. 在 Circuit 界面单独运行一下电路仿真(如果有此功能)。 3. 确保 Maxwell 设计和 Circuit 设计在同一个项目下。 | 1. 重新检查并分配端口连接。 2. 简化电路进行调试,先确保一个简单电压源能工作。 3. 保存并重新打开项目,有时可以刷新连接。 |
9. 最佳实践与工程建议
- 从简到繁:初次搭建复杂模型时,先用一个简单的环形磁芯+单绕组模型,施加正弦激励,验证损耗计算流程是否正确。成功后再替换为实际平面变压器模型和 PWM 激励。
- 善用参数化:对于优化设计,将关键尺寸(如气隙长度、绕组厚度)、激励参数(如频率、幅值)设置为变量。通过参数化扫描(Parametric Sweep)可以快速研究不同设计对损耗的影响。
- 结果可信度验证:
- 能量守恒:粗略验证。输入功率(源电压×电流)应略大于总损耗(磁芯损耗+绕组损耗+其它),差值表现为磁场储能的变化。
- 趋势判断:磁芯损耗应随频率升高而增加(近似于 f^x 关系),绕组涡流损耗随频率升高增加更猛(与 f^2 相关)。如果趋势相反,必有问题。
- 量级估算:根据经典公式(如 Steinmetz 公式、Dowell 公式)对损耗进行粗略估算,与仿真结果对比,应在同一数量级。
- 模型简化与对称性:充分利用模型的对称性。如果变压器结构对称,可以只建立 1/2 或 1/4 模型,并施加奇对称或偶对称边界条件(
Master/Slave),能极大缩短求解时间。 - 关注损耗密度分布:不仅要看总损耗,更要通过场图查看
Ohmic Loss Density和Core Loss Density的分布。这能直观揭示热点位置(如绕组拐角处、磁芯气隙附近),指导你进行结构优化(如增加绕组宽度、优化磁芯形状)。 - 温度效应考虑:本文方法计算的是电磁损耗。在实际中,损耗会导致温升,而温升会改变材料的电阻率和磁芯特性,进而影响损耗。对于精确分析,可能需要将电磁仿真与热仿真进行耦合迭代。
通过本文详细介绍的“新”激励给定方式(外部电路/分段线性源)与核心设置(勾选Calculate Core Loss和Set Eddy Effect),你应当能够系统性地在 Maxwell 瞬态场中完成平面变压器的损耗仿真。这套方法的核心思想是让软件的工具各司其职:用电路描述驱动,用材料属性定义损耗机理,用求解器选项启用计算,用后处理报告提取结果。掌握这个流程,你就能将仿真从“看起来有磁场”的定性阶段,推进到“能准确预测损耗数值”的定量设计阶段,从而为高频磁性元件的优化提供坚实的数据支撑。建议你在实际项目中按照此流程逐步实践,并将关键步骤和设置保存为模板,以后遇到类似仿真任务时效率会大幅提升。