ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

DAB变换器峰值电流前馈控制:PLECS仿真复现与工程实践

DAB变换器峰值电流前馈控制:PLECS仿真复现与工程实践

双有源桥(DAB)变换器的峰值电流前馈控制,是电力电子领域里一个既经典又容易被做浅的题目。我最初接触这个方向,是因为在做一款中等功率隔离电源的数字控制方案时,遇到了一个很典型的问题:负载突变时,输出电压跌落明显,动态响应跟不上,而单纯调PI参数要么牺牲稳态精度,要么在轻载时出现明显的振荡。后来翻到一篇IEEE顶刊上的DAB峰值电流前馈控制文章,思路很清晰,但复现过程中踩的坑远比想象中多——模型搭出来波形不对、前馈量算出来符号反了、仿真步长和开关频率不匹配导致采样失真,这些问题在论文里往往一笔带过。这篇内容就是把我用PLECS复现这套控制策略的完整过程拆开讲,从DAB的功率传输原理、峰值电流的解析推导,到前馈项怎么嵌进控制环、PLECS里怎么搭模型、参数怎么定、波形怎么验证,尽量把论文里省略的中间步骤补全。适合正在做DAB数字控制、想搞懂前馈到底前馈了什么、以及准备用PLECS做电力电子仿真复现的读者参考,不管你是刚上手DAB的新手,还是已经调过几版PI想进一步优化动态的老手,应该都能从中找到能直接抄作业的部分。

1. 先搞清楚DAB到底在传什么:功率与电流的解析关系

在动手搭模型之前,有一个问题必须先想明白:DAB的峰值电流前馈,前馈的到底是什么量,它和输出功率之间是什么关系。很多人一上来就照着论文公式抄,结果符号搞反、系数漏掉,波形一塌糊涂,根本原因是对DAB的功率传输机理没有吃透。这一节把DAB的功率传输方程和峰值电流的解析表达式从头推一遍,这是后面所有控制设计的地基。

1.1 单移相下的功率传输方程

DAB的基本结构是两个全桥通过一个高频变压器和串联电感耦合,原副边桥臂输出方波电压,通过控制两个方波之间的移相角来调节功率流向和大小。单移相(SPS)是最基础的调制方式,原边桥输出占空比50%的方波,副边桥同样输出50%方波,两者之间相差一个移相角φ。

设原边桥输出电压为v1,副边桥折算到原边的电压为v2,串联电感为L,开关频率为fs,开关周期Ts=1/fs。在单移相控制下,传输功率的经典表达式是:

P = (n·V1·V2·φ·(π - |φ|)) / (2·π²·fs·L)

其中n是变压器变比,V1、V2是两侧直流母线电压,φ是移相角(单位为弧度,范围在-π/2到π/2之间通常用于额定功率以内)。这个公式是复现的起点,必须理解它的来源:它是通过对电感电流在一个开关周期内分段积分、再对功率求平均得到的。电感电流的波形在每个开关周期内是分段线性的,因为电感两端电压在每种开关状态下都是常数。

我建议在PLECS里搭模型之前,先在纸上把这个分段线性波形画一遍:一个周期内电感电流有四个线性段,对应四种开关状态组合。画清楚每一段的电压和斜率,后面推导峰值电流就是水到渠成的事。这一步偷懒,后面公式一定用错。

1.2 峰值电流出现在哪个时刻

峰值电流前馈的核心,是要找到电感电流在一个开关周期内的最大值,并把它作为前馈量。在单移相调制下,电感电流的峰值出现在移相角对应的开关时刻附近,具体位置取决于功率流向和移相角的正负。

对于功率从原边流向副边(φ>0)的情况,电感电流的峰值出现在原边桥臂换流的时刻。推导过程是这样的:设t=0时原边桥输出从-V1跳到+V1,此时电感两端电压为V1+n·V2(折算后),电流以(V1+n·V2)/L的斜率上升;到t=φ/(2π·fs)时副边桥换流,电感电压变为V1-n·V2,电流斜率改变;再经过半个周期原边桥再次换流,电流开始下降。峰值就出现在第一次斜率切换之前的那个时刻,也就是副边桥换流的瞬间。

把分段积分的结果整理出来,单移相下电感电流峰值(折算到原边)的表达式为:

Ipeak = (V1·(π - 2·|φ|) + n·V2·π) / (4·π·fs·L) (近似形式,需按实际分段核对)

这里我要特别提醒:不同论文里这个表达式的写法差异很大,有的把n折算进V2,有的用移相角占空比D=φ/π来表示,有的把电感定义为漏感加外串电感。抄公式之前一定要先确认论文的变量定义和你的模型一致,否则系数差一个2或者π,前馈量就完全错了。我复现时就因为没注意论文里φ的定义是弧度还是归一化占空比,导致前馈项大了π倍,输出直接饱和。

1.3 为什么峰值电流比平均电流更适合做前馈

这里有一个设计上的关键取舍值得说清楚。做前馈控制,可以前馈平均电流,也可以前馈峰值电流,为什么顶刊文章选峰值?原因在于DAB的电流应力和保护逻辑都直接和峰值挂钩。电感电流峰值决定了开关管的电流应力、磁芯的饱和裕度,也是过流保护的直接判据。用峰值电流做前馈,一方面能在负载突变时更快地给出正确的移相角指令,另一方面前馈量和保护阈值天然统一,控制逻辑更简洁。

从动态响应角度看,平均电流前馈需要额外的低通滤波来提取平均值,引入了相位滞后,而峰值电流在每个开关周期内可以直接采样或估算得到,响应更快。这就是为什么在高动态要求的场合,峰值电流前馈更有优势。理解了这个"为什么",你在调参时就知道前馈通道不应该加太多滤波,否则就丧失了这个方案的核心优势。

2. 前馈项怎么嵌进控制环:结构设计与符号核对

公式推出来了,接下来是把它放进控制环。这一步最容易出问题的地方不是数学,而是结构——前馈加在哪个节点、和PI输出怎么叠加、符号怎么对齐。我见过不少复现失败的案例,公式没错,但前馈和反馈的极性打架,系统直接发散。

2.1 前馈-反馈复合控制的基本框架

DAB的输出电压控制通常是一个外环电压PI加内环移相角的结构。峰值电流前馈的加入方式,是把负载电流(或负载功率)对应的峰值电流指令,经过一个前馈增益直接叠加到移相角指令上,PI只负责补偿模型误差和稳态偏差。

具体结构是:电压环PI输出一个移相角的基础分量φ_pi,前馈通道根据当前负载电流估算出所需的峰值电流,再反解出对应的移相角φ_ff,两者相加得到最终的移相角指令φ_ref = φ_pi + φ_ff。这里的关键是前馈通道的输入选什么——可以直接用负载电流采样,也可以用输出功率估算。用负载电流采样最直接,但需要额外的电流传感器;用输出功率估算则依赖母线电压和负载电流的乘积,计算量稍大但省传感器。

我在PLECS里两种都试过,实测下来用负载电流直接前馈响应最快,但要注意采样噪声;用功率估算的版本对噪声不敏感,但动态上慢了半个控制周期。如果你的应用对成本敏感,选功率估算;如果对动态要求极致,选电流采样。

2.2 前馈增益的推导与符号对齐

前馈增益的推导,本质是把峰值电流表达式对移相角求反函数。已知峰值电流Ipeak和移相角φ的关系,要由期望的负载电流反解出φ_ff。在小信号意义下,前馈增益Kff = dφ/dIload,这个增益随工作点变化,所以严格来说前馈应该是非线性的。

实际工程里常用的做法是取额定工作点附近的线性化增益,或者直接用查表法。我在复现时先用线性化增益,发现轻载时前馈过量、重载时前馈不足,后来改成基于功率的分段线性查表,效果明显改善。这里给一个实操建议:前馈增益表按输出功率分5到8段,每段用该段中点工作点的解析增益,段间线性插值,这样既保证精度又不至于计算量爆炸。

符号对齐是另一个大坑。前馈量的符号必须和PI输出的符号约定一致:如果PI输出正对应功率正送,那么前馈量在负载增加时也应该增大移相角。我建议在PLECS里单独把前馈通道拉出来看波形,先断开PI,只给前馈,看负载阶跃时移相角是否朝正确方向变化,确认无误再闭环。这个"开环验证前馈"的步骤能省掉大量调试时间。

2.3 前馈通道的限幅与抗饱和

前馈通道必须加限幅,这一点论文里经常不写但实际必做。原因很简单:负载电流采样可能因为干扰出现尖峰,前馈量瞬间过大,移相角指令超出允许范围,轻则波形畸变,重则触发保护。限幅的上下界应该和移相角的物理约束一致,通常取±π/2对应的范围,再留一点裕度。

抗饱和的处理也要考虑:当PI饱和时,前馈量不应该继续累加导致积分 windup。我的做法是前馈通道独立限幅,PI用标准的抗饱和结构(积分分离或反计算),两者限幅后的结果再相加,最后对总和再做一次物理限幅。这样即使前馈和PI同时饱和,移相角指令也不会越界。

3. PLECS建模:从器件到控制器的完整搭建

PLECS做电力电子仿真有个很大的优势:开关器件和控制部分可以分开建模,电气网络用理想开关加导通电阻,控制部分用信号处理模块,仿真速度快且波形干净。但DAB的建模有几个细节必须处理好,否则波形和论文对不上。

3.1 主电路拓扑的参数化搭建

主电路我建议全部参数化,用PLECS的初始化脚本定义所有参数,这样改工作点不用动模型。关键参数包括:两侧直流母线电压V1、V2,变压器变比n,串联电感L(含漏感和外串电感),开关频率fs,死区时间,开关管导通电阻和输出电容。

变压器在PLECS里可以用理想变压器加漏感建模,也可以用耦合电感。我推荐用理想变压器加独立漏感,因为漏感是DAB功率传输的关键参数,独立出来方便调整。注意漏感的定义要和论文一致——有的论文把漏感折算到原边,有的折算到副边,建模时统一折算到原边最不容易出错。

死区时间必须加,虽然理想仿真里死区不影响功率传输公式,但它会影响电流波形在换流点的细节,进而影响峰值电流的采样。我一开始没加死区,峰值电流采样值和理论值差了几个百分点,加上死区后对上了。死区取开关周期的1%到2%比较合理,具体看器件。

3.2 峰值电流的采样与估算实现

峰值电流前馈需要每个开关周期拿到峰值电流。PLECS里可以直接用电流探头测电感电流,然后用峰值检测模块提取。但要注意采样时刻:峰值出现在换流瞬间,如果采样点偏移,测到的不是真峰值。我的做法是用一个与开关信号同步的触发脉冲,在峰值理论出现时刻之后一个小延时(比如开关周期的1%)采样,避开换流尖峰。

如果不想用理想峰值检测,也可以用解析估算:根据当前移相角和母线电压,用第1节推的公式直接算峰值电流。这种估算方式没有采样噪声,但依赖参数准确性。我在PLECS里两种都实现了,实测解析估算在稳态下很准,动态过程中因为母线电压波动会有偏差,所以最终方案是解析估算加一个慢速的采样校正,兼顾速度和精度。

3.3 控制器的离散化与仿真步长选择

PLECS支持连续和离散两种控制器建模。做数字控制复现,一定要用离散控制器,因为实际系统是数字实现的,连续控制器会掩盖采样延迟和量化效应。离散控制器的采样周期设成和实际数字信号处理器一致,比如开关频率100kHz、控制频率也是100kHz(每个开关周期采样一次),或者控制频率减半。

仿真步长的选择有个经验法则:步长要小于开关周期的1/100,才能准确捕捉开关瞬态。如果开关频率100kHz,步长取100ns以下比较稳妥。但步长太小仿真慢,我的折中是步长取开关周期的1/200,配合PLECS的变步长求解器,在开关时刻自动加密,兼顾速度和精度。

这里有个容易忽略的点:离散控制器的采样时刻要和PWM载波对齐。PLECS里可以设置采样触发和载波同步,如果不对齐,采样到的电流值会有周期性波动,前馈量跟着抖,输出波形上能看到低频纹波。我踩过这个坑,调了半天以为是控制参数问题,最后发现是采样不同步。

4. 参数整定与动态验证:让波形说话

模型搭好、控制环闭合,接下来是参数整定和验证。这一步不能只看稳态波形漂亮就完事,动态响应才是前馈控制的价值所在。我一般分三步验证:稳态精度、负载阶跃响应、母线电压扰动响应。

4.1 PI参数与前馈强度的协同整定

PI参数和前馈强度是耦合的,不能分开调。正确的顺序是:先断开前馈,把PI调到稳态无静差、动态可接受(会有明显跌落但能恢复);然后加入前馈,前馈强度从零逐渐增大,观察负载阶跃时的电压跌落是否减小。前馈太强会导致超调,太弱则动态改善不明显。

我实测的经验值是:前馈强度取理论值的80%到90%比较稳,留一点给PI补偿,避免前馈模型误差导致过冲。这个"留余量"的做法在论文里不会写,但是工程上很实用,因为实际系统的参数总有偏差,前馈打满反而容易振荡。

整定时建议用PLECS的阶跃负载模块,负载从50%跳到100%再跳回,看电压跌落和恢复时间。有前馈和没前馈各跑一遍,对比才有说服力。我复现时做了这个对比,前馈加入后电压跌落从8%降到3%左右,恢复时间缩短一半,这个改善幅度和论文报告的基本一致,说明复现是成功的。

4.2 负载阶跃下的峰值电流波形核对

验证前馈是否真正起作用,最直接的方法是看负载阶跃瞬间的峰值电流波形。前馈正确工作时,负载突增的瞬间移相角会立即增大,电感电流峰值快速上升,而不是等电压跌落被PI检测到才动作。

我在PLECS里抓了阶跃瞬间的波形:没有前馈时,移相角在负载跳变后约两个控制周期才开始变化;有前馈时,移相角在跳变后一个控制周期内就响应了。这个时间差就是前馈的价值。核对波形时要注意看峰值电流是否超过器件应力限值,前馈响应快意味着峰值电流上升也快,必须确认不超过安全裕度。

4.3 母线电压扰动下的鲁棒性检查

除了负载阶跃,母线电压扰动也是DAB常见的工况。前馈控制如果只依赖负载电流,母线电压变化时前馈量不会立即调整,会有短暂的动态偏差。我的做法是在前馈通道里同时引入母线电压的倒数项,这样母线电压升高时前馈量自动减小,保持功率平衡。

这个改进论文里不一定有,但实际系统母线电压波动很常见,加上这一项鲁棒性明显提升。验证方法是给母线电压加一个10%的阶跃,看输出电压的波动幅度,有母线电压前馈的版本波动明显更小。

5. 复现过程中踩过的坑与排查链路

这一节把我复现时遇到的问题按排查顺序列出来,每个都给出定位过程和解决方法。这些问题在论文里基本不会提,但复现时几乎都会遇到。

5.1 波形对不上:先查参数定义再查模型

最开始搭完模型,稳态波形和论文差很多,功率传输明显偏小。排查顺序是:先核对所有参数的单位和定义(电感是mH还是μH、频率是kHz还是Hz、移相角是弧度还是度),再核对变压器变比的折算方向,最后核对功率公式里的π和2有没有漏。我最后发现是移相角的定义搞错了,论文里用的是归一化占空比D,我当成弧度代入,差了π倍。

这个坑的教训是:复现任何论文,第一步是把论文的变量定义表抄下来,和自己的模型参数一一对应,别急着跑仿真。

5.2 前馈引起振荡:检查符号和限幅

加入前馈后系统振荡,第一反应是前馈太强,但降低强度后振荡只是变慢没消失。真正的原因是前馈符号反了,负反馈变成了正反馈。定位方法是断开PI只留前馈,给一个负载阶跃,看移相角变化方向是否和预期一致。符号修正后振荡消失。

另一个振荡来源是前馈通道没限幅,负载电流采样的噪声被放大。加上限幅和一个小时间常数(远小于控制周期)的低通滤波后解决。注意滤波时间常数不能大,否则前馈的快速性就没了。

5.3 峰值电流采样偏差:同步与死区

峰值电流采样值和理论值对不上,偏差在5%左右。排查发现两个原因:一是采样时刻没和开关同步,采到了换流尖峰;二是没加死区,换流点波形和理想有差异。解决方法是用同步触发采样加死区建模,偏差降到1%以内。

5.4 动态响应不如论文:控制延迟没算对

复现的动态响应比论文慢,一度怀疑是前馈没生效。后来发现是控制器的计算延迟没建模——实际数字控制有一个控制周期的计算延迟,PLECS里如果控制器是理想的,响应会偏快。加上一个控制周期的延迟环节后,响应变慢,反而和论文对上了。这说明论文里的响应数据是包含实际延迟的,复现时必须把延迟算进去,否则会高估性能。

6. 从仿真到实际:几个值得提前想清楚的问题

仿真跑通不等于能落地,DAB的峰值电流前馈在实际实现时还有几个问题值得提前考虑。第一个是采样精度和噪声,实际电流传感器的带宽和噪声远不如仿真理想,前馈通道的滤波设计要更保守。第二个是参数漂移,电感和变压器参数随温度变化,前馈增益表需要留足裕度或者加在线辨识。第三个是保护逻辑的配合,前馈让峰值电流响应变快,过流保护的阈值和响应时间要重新核算,避免正常动态过程触发保护。

我个人在实际操作中的体会是,前馈控制的价值不在于把稳态调得多漂亮,而在于动态过程中那几十微秒的提前量。这个提前量在仿真里看得很清楚,在实际系统里则依赖采样和计算的实时性。所以复现这类控制策略,仿真阶段就要把延迟、噪声、限幅这些非理想因素尽量建模进去,否则仿真和实测的差距会让你怀疑人生。另外,前馈增益表不要一次定死,留一个可以在线微调的接口,调试阶段会省很多事。

返回列表