基于UCD3138的硬开关全桥DC-DC数字电源设计实战
做电源这么多年从最早的模拟方案一路折腾到数字控制越来越觉得数字电源这条路线确实绕不开。尤其是中大功率的DC-DC硬开关全桥加UCD3138的组合既能保留全桥拓扑的可靠性又把环路调试、通信监控这种原来很麻烦的事简化了不少。前阵子刚把手头一个基于UCD3138的硬开关全桥DC-DC电源完整跑完从方案选型到参数计算再到环路整定和实测前后踩了不少坑这里把整个设计过程整理出来。这篇文章适合正在做数字电源、想从模拟方案转数字控制或者准备用UCD3138做全桥/半桥电源的工程师参考。内容偏实战不会堆一堆理论公式就完事重点讲清楚每一步为什么要这么做、做的时候容易在哪里翻车。1. 方案选型为何锁定UCD3138与硬开关全桥组合1.1 数字电源控制器选型绕不开的UCD3138先聊控制器本身。UCD3138是TI面向隔离电源推出的一款数字电源控制器内部集成了ARM7内核、三个DPWM模块、两个高速EADC、多个滤波器和一个完整的PID运算单元。和用MCU加DSP自己做环路不同UCD3138的核心优势在于它把电源控制常用的外设都整合好了环路计算在硬件里完成不需要软件逐周期去算响应速度足以支撑100kHz甚至更高频的开关电源。对比过几款常见的方案。用STM32做数字电源灵活度高但逐周期保护、DPWM分辨率、死区精度这些都要自己花不少精力去调而且高速ADC采样和环路计算的时序配合在MCU上很难做到理想状态。UCD3138这种专用芯片的思路就是把这些电源关键路径全部硬化留给工程师做配置和上层逻辑开发开发周期短得多。UCD3138还内置了PMBus通信接口用来做输出电压微调、电流监控、状态上报非常方便。量产调试时通过Fusion GUI就能修改环路参数、看实时波形不用反复烧录修改代码这一点在实际开发中省了大量时间。1.2 硬开关全桥拓扑在成本与可靠性之间找平衡全桥拓扑选择上并没有一味追求高效的移相全桥ZVS或LLC而是老老实实用了硬开关全桥。原因很简单目标应用对电磁干扰和效率的要求在合理范围内而硬开关全桥控制逻辑简单、工作模式清晰、对器件应力可控非常适合作为数字控制方案的第一款产品。移相全桥通过谐振实现初级开关管的ZVS效率确实能往上走但副边整流管的电压振荡、滞后臂ZVS范围受限、占空比丢失补偿等问题调试起来并不轻松。LLC效率更高但设计参数多、轻载调压范围窄不太适合要求宽负载范围的场景。相比之下硬开关全桥在100kHz开关频率下用CoolMOS加快恢复二极管满载效率也能做到92%以上综合下来性价比很高。还有一个考虑是数字控制的上手难度。硬开关全桥的时序就是简单的对角导通加死区控制量就是占空比正好适合用来熟悉UCD3138的配置流程和环路整定方法。把硬开关全桥跑通了后续再上移相全桥或者LLC很多配置经验是可以直接复用的。1.3 系统指标与整体框架这次设计的目标电源规格如下参数指标输入电压300V-400V DCPFC输出母线输出电压48V输出电流20A额定功率960W开关频率100kHz效率目标满载不低于92%控制方式UCD3138数字控制电压环电流环系统框架分为功率级和控制级两大部分。功率级包括输入EMI滤波、全桥逆变、高频变压器、副边全波整流、LC滤波控制级以UCD3138为核心负责输出电压采样、原边电流采样、DPWM驱动信号生成、故障保护以及与上位机的PMBus通信。2. 功率级硬件设计从变压器到驱动电路的关键计算2.1 主电路拓扑与关键器件应力分析先确定主电路的具体形式。全桥逆变部分由四个MOSFET组成两个桥臂对角管子同时导通通过变压器将能量传递到副边。副边采用全波整流结构中心抽头变压器加两个快恢复二极管输出端接LC滤波器。MOSFET的电压应力等于输入母线电压按照400V输入考虑留1.5倍安全裕量选择600V耐压的管子足够。电流应力方面原边电流有效值大概在输出功率除以输入电压和效率后换算960W输出对应原边平均电流约2.7A考虑纹波和瞬态选择10A以上电流等级的管子很稳妥。最终选了英飞凌的IPW60R099CP耐压600V导通电阻99mΩTO247封装散热条件良好。副边整流二极管承受的反向电压为两倍的副边电压按变压器匝比8:1计算副边电压约50V反向电压约100V选择200V耐压的管子即可。电流方面要过20A输出选了两个35A的肖特基二极管并联使用。2.2 高频变压器设计绕法比磁芯选型更重要变压器是全桥电源的核心元件。设计前先确定匝比。输出电压48V副边整流管压降约1VLC滤波压降忽略副边电压约49V。输入电压最低300V考虑到最大占空比不超过0.85硬开关全桥要留足死区时间原边最低电压按300V计算匝比n300×0.85/49≈5.2取整为5。磁芯选择上960W功率在100kHz频率下选择EE55磁芯PC40材质磁通摆幅取0.2T左右。根据法拉第定律计算原边匝数Np Vin_min×D_max/(2×f×ΔB×Ae) 300×0.85/(2×100000×0.2×354×10^-6) ≈ 18匝副边匝数NsNp/n18/53.6取4匝。这样实际匝比18:44.5重新核算最大占空比需求D_max49×4.5/3000.735留有余量没问题。绕制工艺上原边用0.1mm×50股的利兹线绕18匝分成两层副边用0.1mm×200股的利兹线绕4匝中心抽头。原副边之间加三层绝缘胶带隔离。这里要特别强调夹层绕法的重要性先绕原边一半9匝再绕副边4匝再绕原边一半9匝这样能把漏感控制在较低水平。硬开关虽然对漏感不像移相全桥那么敏感但漏感过大会导致关断尖峰明显损耗和EMI都会恶化。2.3 输出滤波电感与电容的取值计算输出滤波电感按电流纹波系数20%设计即纹波电流4A。全桥输出滤波电感的计算公式L Vo×(1-D_min)/(2×f×ΔI)输出电压48V输入最高400V时占空比最小D_min48/(400/4.5)≈0.54。代入公式L48×(1-0.54)/(2×100000×4)≈27.6μH取27μH选择铁硅铝磁环绕制时注意气隙均匀分布。输出滤波电容按输出电压纹波50mV设计并考虑ESR的影响。纹波电流4A要在电容ESR上产生的压降不超过50mV要求ESR≤12.5mΩ。选择两颗470μF/100V的固态电解电容并联单颗ESR约25mΩ并联后约12.5mΩ刚好满足要求。高频纹波电流部分再加两个2.2μF的CBB电容和两个0.1μF的MLCC吸收。2.4 驱动电路和采样电路的工程实现四颗MOSFET的驱动采用隔离驱动方案。选用了UCC21520双通道隔离驱动芯片一路负责高边两管一路负责低边两管每路输出峰值电流4A驱动能力足够。驱动电阻取10Ω开关速度经过实际波形调整后确定。驱动电源采用隔离的DC-DC模块输出15V和-3V负压确保管子快速关断防止dv/dt引起的误导通。采样电路是整个数字控制的关键环节。输出电压采样用电阻分压后接到UCD3138的EADC输入分压比例按EADC满量程1.6V设计48V输出经分压后得到约1.2V留出过压保护余量。分压电阻选用0.1%精度的低温漂电阻并在EADC引脚前加RC低通滤波截止频率设在10kHz左右。原边电流采样采用电流互感器初级穿心穿过全桥对角线回路的导线次级输出经过整流和采样电阻转换为电压信号连接到UCD3138的电流采样引脚。互感器变比100:1采样电阻10Ω原边最大电流按10A设计次级电压最大1V。3. 数字控制环路设计UCD3138的配置与整定3.1 UCD3138内部资源先看清再动手拿到芯片后先梳理内部资源避免后续配置时找不到对应的寄存器或引脚。UCD3138有3个DPWM模块分别是DPWM0、DPWM1、DPWM2其中DPWM0和DPWM1可以配置为互补输出适合驱动全桥的一个桥臂DPWM2可作为辅助PWM或者同步整流控制信号。每个DPWM模块都有独立的死区发生器、故障保护输入和周期同步功能。EADC部分有两个高速误差ADC每个都可以独立配置采样增益、偏置和采样窗口。EADC的采样结果可以直接送到数字比较器用于过流保护也可以送进滤波器块参与环路计算。滤波器部分有3个可配置的二阶滤波器和一个PID模块每个环节都能独立设置增益和零极点。通信接口方面I2C/PMBus接口兼容Fusion GUI通过这个接口实时读写芯片内部的寄存器、监控环路状态。调试阶段几乎离不开这个接口建议硬件设计时预留出PMBus测试点或I2C排针方便用USB转I2C适配器连接上位机。3.2 Fusion GUI配置流程一步步搭出控制框架Fusion GUI是UCD3138的配套配置软件整个配置流程主要分四步第一步是电源系统参数配置包括输入输出电压采样分压比、电流采样系数、开关频率等第二步是DPWM配置设置PWM频率、死区时间、输出极性和引脚映射第三步是EADC配置设置采样通道、增益、偏置和采样时刻第四步是滤波器与PID配置确定环路的补偿网络。开关频率100kHz对应周期10μs。配置DPWM时载波周期寄存器设为10μs对应的计数值死区时间设为200ns也就是2%的周期。死区时间的设置需要结合MOSFET关断延迟和驱动传播延迟综合确定。UCC21520的传播延迟约30nsMOSFET的关断延迟约60ns200ns的死区对于100kHz硬开关来说稍显保守等实际波形测量后再进一步优化。输出电压环路的采样点设置在PWM周期的中心点这个时刻开关管导通副边二极管续流输出电压纹波比较小采样值更有代表性。电流采样窗口设置在开关管导通的中间时段避开开关瞬态的电流尖峰。3.3 电压环电流环的补偿网络设计UCD3138的环路补偿结构和模拟控制很相似只是把运算放大器换成了数字滤波器。电压外环负责稳定输出电压电流内环这里主要做限流保护负责限制最大输出电流。电压环的补偿计算如下输出LC滤波器的转折频率f_LC1/(2π√(LC))1/(2π√(27μH×940μF))≈1kHz。为了获得足够的相位裕度环路穿越频率设置在开关频率的1/10即10kHz。在10kHz处LC滤波器的增益已经下降很多需要补偿网络提供足够的增益提升。补偿采用PD加高频极点的形式零点放在1kHz位置补偿LC滤波器的相位滞后极点放在20kHz位置抑制高频噪声。按照UCD3138滤波器配置公式计算PD环节的比例系数设为8微分时间常数设为0.16ms高频极点频率20kHz。PID参数整定过程中先在Fusion GUI的环路分析界面里输入计算得到的零极点参数然后下载到芯片观察波特图。第一次实测的相位裕度只有38°低于45°的目标值把微分时间常数从0.16ms调到0.2ms后相位裕度提升到了53°动态响应明显改善。3.4 死区补偿与占空比丢失的数字处理硬开关全桥同样会遇到死区时间引起的输出占空比丢失问题。死区期间虽然两个桥臂的管子都不导通但变压器的励磁电流和负载电流会通过体二极管续流导致输出电压在这段时间内不跟随占空比变化。数字控制的一个优势是可以对死区造成的电压损失做软件补偿。补偿方法是提高有效占空比。在UCD3138中DPWM模块支持占空比微调功能在输出目标占空比的基础上加上一个补偿量。补偿量的大小和负载电流成正比和输入电压成反比。在电流环采样值的基础上计算补偿量每5%的负载电流增加约0.8%的占空比补偿。这个补偿值需要通过实测校准。在输入360V、满载输出时测量输出电压为47.2V比目标值48V低0.8V折算后相当于占空比损失了1.6%。在Fusion GUI里把补偿系数调整到对应值后输出电压恢复到了48V±0.1V的范围内。校准一次后不同负载和输入电压条件下的表现都比较稳定。4. 调试实录与常见问题排查4.1 第一次上电从控制板到功率级的渐进流程第一次上电不能直接满输入电压测试要一步一步来。先把UCD3138控制板的供电接好用示波器确认3.3V和1.8V电源正常晶振起振Fusion GUI能够识别到芯片。然后在不开功率级的情况下配置好DPWM用示波器测量驱动信号确认四个管子的驱动波形占空比、死区时间和相位关系正确。确认驱动信号无误后接入功率级但输入电压先通过调压器升到50V。此时输出电压应该在7V左右50/4.5×0.7测量输出电压有值、无振荡后逐步升压到300V。每升一次检查输出电压是否跟随同时用热成像仪观察MOSFET和变压器的温度。整个升压过程耗时大概两小时虽然有耐心但值得能避免一下子上高压烧管子的风险。调压过程中要注意输出电容的充电过程。如果软启动时间设置不当输出电压建立过快输出电容充电电流会触发过流保护。把UCD3138的软启动时间配置为20ms输出电压从0到48V的爬升过程平滑无过冲过流保护也没有误触发。4.2 满载测试时的波形分析和参数微调加载到满载测试时波形分析是判断电源状态最直接的手段。重点观察原边MOSFET的Vds波形、驱动Vgs波形和输出电压纹波。Vds波形上硬开关全桥在开通瞬间会有明显的电压振荡这是由MOSFET的输出电容和变压器漏感谐振引起的。振荡幅度控制在50V以内可以接受如果超过100V就需要减小驱动电阻增加开关速度或者在变压器原边并联RC吸收电路。实测满载时Vds尖峰约520V余量充足没有加吸收电路。驱动波形检查的重点是死区期间是否有异常。理想情况下死区期间Vgs应该完全拉低Vds保持不变。实际波形中如果Vgs在死区期间出现小幅抬升说明dv/dt通过米勒电容耦合到栅极有误导通风险。把驱动电路的关断负压从0V改为-3V后这个问题彻底消失。输出电压纹波在满载时实测约35mV在50mV的目标范围内。纹波频率为200kHz是开关频率的两倍说明全波整流工作正常。纹波波形中叠加了一个100Hz的低频分量这是输入母线电压的纹波通过占空比调节传递过来的。在UCD3138中开启了输入电压前馈功能后100Hz纹波分量明显减小。4.3 调试过程中踩过的几个典型坑整个调试过程遇到不少问题挑几个有代表性的说说。第一个问题是PWM输出空载时占空比抖动。现象是输出电压空载时正常但用示波器看DPWM波形时发现占空比有约1%的随机跳动。排查后定位到是输出电压采样信号上叠加了开关噪声EADC采样值不准导致环路输出波动。解决办法是把采样时刻从PWM周期中心点调整到死区结束后的一小段时间这个时间点开关管刚导通变压器原边的di/dt造成的干扰最小。第二个问题是重载启动时过流保护误触发。满载启动瞬间输出电容充电电流加上正常负载电流的总和超过了限流点保护电路动作。原来的限流点设置在110%额定电流改成150%后启动过程中没有再出现误保护。同时把过流保护的动作模式从锁定改成打嗝模式故障解除后自动恢复更适合现场应用。第三个问题发生在效率测试阶段。最开始满载效率只有89%远低于92%的目标。通过热成像和损耗分析定位到副边整流二极管的损耗过大。原来的快恢复二极管反向恢复特性不佳换成了超快恢复二极管后效率提升到91.8%。再把死区时间从200ns优化到160ns效率最终稳定在92.3%。4.4 高频布线与PCB Layout的避坑经验电路设计完成后PCB Layout对电源性能的影响非常大。做一个1200W功率级的全桥电源Layout的核心原则是功率回路最小化、控制回路远离功率回路、敏感信号加屏蔽。功率回路方面输入母线的正负极要尽量平行走线通过大面积铺铜降低寄生电感。MOSFET的源极和漏极回路要短而粗走线宽度至少3mm以上必要时采用多层板进行电流叠加。变压器的原边绕组走线同样要宽并且尽量覆盖整个板层宽度这样能减少绕组的交流电阻。控制信号方面EADC的采样走线要远离高频开关节点建议在采样信号线两侧加地线包裹形成屏蔽。驱动信号走线要短而直驱动芯片尽量靠近MOSFET放置。UCD3138的数字地和模拟地要分开铺在芯片下方的单点连接防止数字信号的地弹干扰模拟采样。还有一个容易忽视的地方是电流互感器的采样走线。互感器次级的采样电压信号虽然幅度不大但它的参考地如果处理不好会引入很大的共模噪声。把采样电阻的地直接连接到UCD3138的模拟地并与功率地做单点连接这样可以有效避免采样信号被共模噪声淹没。5. 数字电源设计的一些实操心得项目做完了回头看整个设计过程有几个体会想单独说一下。数字控制相比模拟控制最大的变化不是把电位器换成软件参数而是整个调试思维要变。模拟电源调环路要反复换电阻电容数字电源只需要在Fusion GUI里改几个数字就能看结果。这个便利性也带来了新的要求你得清楚每个参数背后的物理意义不然改了参数也不知道为什么调来调去反而乱了。UCD3138这款芯片的学习曲线不算陡但一定要在硬件上预留足够的调试接口。这次设计预留了PMBus通信接口、每个关键信号的测试点、以及多个备用采样通道调试过程中几乎都用上了。尤其是PMBus接口从一开始配置寄存器到后面环路整定全程都用它省了大量反复插拔烧录器的时间。关于硬开关全桥本身是个很成熟的拓扑放到数字控制的框架里难的不是拓扑而是怎么把数字环路调稳、把保护做全。建议刚接触的朋友先不要追求效率指标先把环路稳定、保护可靠这两件事做好再逐步优化效率。效率优化是另一个层面的事涉及器件的开关特性、变压器的绕制工艺、甚至Layout细节一环扣一环。如果需要在这个项目基础上继续扩展可以考虑的方向包括把副边整流改成同步整流效率可以再提升两三个百分点增加UCD3138的PMBus通信功能实现上位机对输出电压、电流、温度的远程监控或者把硬开关全桥升级为移相全桥ZVS在保留数字控制平台的前提下进一步提升效率。这些后续工作都建立在这次积累的调试经验上路是通的。