1. 项目概述与ePWM核心价值
在电力电子和电机驱动的世界里,精确的时序控制是系统稳定与高效运行的基石。无论是驱动一台伺服电机平稳旋转,还是为数据中心服务器提供纹波极低的直流电源,其背后都离不开对功率开关器件(如MOSFET、IGBT)导通与关断时刻的精准指挥。脉冲宽度调制(PWM)技术,正是这场精密指挥中的核心“节拍器”。然而,当系统从单一开关管扩展到多相交错、多电平或复杂桥式拓扑时,简单的独立PWM信号便力不从心。此时,多个PWM信号之间的同步关系与精确的相位差控制,直接决定了系统的电磁干扰(EMI)水平、输出纹波大小、磁性元件的利用率乃至整体效率。
德州仪器(TI)的C2000系列微控制器,其增强型脉冲宽度调制(ePWM)模块,正是为解决此类复杂时序协同问题而生的利器。它远不止是一个简单的PWM发生器,更是一个集成了时间基准、比较、动作限定、死区、事件触发等丰富资源的子系统。特别是其强大的**多模块同步(Sync)与相位控制(Phase Shift)**能力,允许工程师像编排交响乐一样,协调多个ePWM模块,生成具有严格时序关系的多路PWM波形。这对于实现多相交错DC/DC变换器(以降低输入/输出电流纹波)、三相逆变器(用于电机驱动和并网逆变器)、移相全桥(实现软开关,提升效率)等先进拓扑至关重要。
本文将以TI TMS320F280015x微控制器为例,深入剖析ePWM模块在多模块协同工作中的应用。我们将超越手册中的框图,从实际工程角度,拆解其同步与相位控制的工作原理、配置方法,并深入探讨在Buck变换器、三相逆变器、交错并联变换器等具体电源拓扑中的实战配置与避坑指南。无论你是正在设计高性能伺服驱动的工程师,还是致力于提升电源功率密度的研发人员,理解并掌握这些内容,都将为你打开一扇通往更高效、更紧凑电源系统设计的大门。
2. ePWM多模块同步与相位控制原理深度解析
要驾驭多个ePWM模块协同工作,首先必须理解其内部的核心协调机制:时间基准(TB)子模块的同步链与相位寄存器。这是实现从“各自为政”到“步调一致”的关键。
2.1 时间基准子模块:同步的发动机
每个ePWM模块都有一个独立的时间基准计数器(TBCTR)和周期寄存器(TBPRD)。计数器按照设定的计数模式(递增、递减、递增-递减)循环运行,其与比较寄存器(CMPA/CMPB)的比较结果,经过动作限定器(AQ)后,最终生成PWM波形。而**同步输入(EPWMxSYNCI)和同步输出(EPWMxSYNCO)**信号,则是连接这些独立“发动机”的齿轮。
同步输入(SYNCI):这是一个模块接收外部同步信号的入口。这个外部信号可以来自另一个ePWM模块的SYNCO,也可以是外部引脚或系统级同步信号。当SYNCI事件发生时,可以触发两种关键操作:
- 强制同步:立即将本模块的TBCTR计数器复位到0(或加载相位值)。
- 相位加载:将时间基准相位寄存器(TBPHS)的值加载到TBCTR中。
同步输出(SYNCO):这是一个模块对外发出同步信号的出口。它可以被配置为在多种内部事件时触发,例如:
CTR = PRD:计数器达到周期值时发出同步脉冲(常用于递增或递增-递减模式的一个周期结束点)。CTR = CMPB:计数器等于比较寄存器B的值时发出同步脉冲(允许在周期内任意点同步)。CTR = ZERO:计数器归零时发出同步脉冲(常用于递减模式)。- 直通模式:直接将SYNCI输入信号转发到SYNCO输出,用于构建更长的同步链。
通过灵活配置每个模块的SYNCI和SYNCO,可以构建出主从(Master-Slave)、**链式(Daisy-Chain)**等多种同步拓扑结构。
2.2 相位寄存器(TBPHS):精确的相位差控制器
同步解决了“同时开始”或“在特定时刻对齐”的问题,而相位控制则解决了“错开一定角度”运行的需求。这正是实现多相交错并联技术的核心。
每个ePWM模块都有一个16位的时间基准相位寄存器(TBPHS)。它的作用是在接收到SYNCI同步脉冲时,为TBCTR计数器提供一个起始值,而非总是从0开始。
工作流程:
- 主模块自由运行,其TBCTR从0开始计数至TBPRD。
- 当主模块的TBCTR达到其设定的同步输出事件(如
CTR=PRD)时,它产生一个SYNCO脉冲。 - 这个脉冲作为从模块的SYNCI输入。
- 从模块在接收到SYNCI脉冲的瞬间,如果其配置为“使能相位加载”,则会立即将TBPHS寄存器中的值载入自己的TBCTR计数器。
- 此后,从模块的TBCTR基于这个相位值开始继续计数(递增、递减或增减)。
相位差计算: 相位差(以度为单位)由TBPHS的值与TBPRD的比值决定。假设主从模块使用相同的TBPRD值(即相同频率),且工作在递增计数模式。相位差(度) = (TBPHS / TBPRD) × 360°
例如,若TBPRD = 600,希望从模块滞后主模块120°,则需设置从模块的TBPHS = (120°/360°) × 600 = 200。这样,每当主模块计数器归零(发出同步脉冲)时,从模块的计数器被加载为200,其PWM波形在时间轴上就相当于滞后了主模块1/3个周期。
关键理解:相位控制本质上是通过设置不同的计数器初始值,来偏移PWM波形的整个时间轴。它不影响单个模块内部的占空比生成逻辑(CMPA/CMPB的比较依然基于本模块的TBCTR),但实现了多个模块输出波形在时间上的精确错位。
2.3 主从模式与同步链配置实战
理解了原理,我们来看最常见的配置模式。图14-59展示了一个典型的主从配置。
主模块(EPWM1)配置要点:
- SYNCO源:通常配置为
CTR = PRD。这样,每当主模块的计数器完成一个周期(达到TBPRD值),就产生一个同步脉冲。这个脉冲标志着系统的一个“全局周期”起点。 - SYNCI:可以忽略外部输入(
SWFSYNC或外部引脚),或用于接收更上一级的同步信号。 - TBPHS:主模块的TBPHS通常设置为0,因为它定义了系统的“零相位”参考点。
从模块(EPWM2)配置要点:
- SYNCI源:必须配置为接收来自主模块(或其他上游模块)的SYNCO信号。
- 相位加载使能:必须使能
TBCTL[PHSEN]位。这样,当SYNCI事件发生时,才会将TBPHS的值加载到TBCTR。 - TBPHS:设置为期望的相位偏移值,如上面的例子中的200。
- SYNCO:可以配置为直通(将SYNCI转发出去),也可以配置为基于自身计数器事件产生新的同步脉冲,用于驱动下游更多模块,形成同步链。
代码配置示例(概念性):
// 主模块 EPWM1 配置 EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_SYNCOSEL_CTR_ZERO; // SYNCO 在 CTR=0 时产生(递增-递减模式常用) EPwm1Regs.TBCTL.bit.PHSEN = TB_DISABLE; // 主模块禁止相位加载 EPwm1Regs.TBPHS.half.TBPHS = 0; // 主模块相位设为0 // 从模块 EPWM2 配置 EPwm2Regs.TBCTL.bit.SYNCOSEL = TB_SYNCOSEL_SYNCIN; // SYNCO 直通,方便扩展 EPwm2Regs.TBCTL.bit.PHSEN = TB_ENABLE; // 使能相位加载 EPwm2Regs.TBPHS.half.TBPHS = 200; // 设置相位偏移,假设TBPRD=600,则滞后120度 // 注意:需要正确配置 EPwm2Regs.TBCTL.bit.SYNCOSEL 和 SYNCI 的输入源映射这种主从架构是构建所有复杂多模块同步应用的基础。接下来,我们将看到这一基础能力如何在具体的电源拓扑中大放异彩。
3. 多模块同步在典型电源拓扑中的应用与实现
掌握了核心原理,我们就可以将其应用到具体的电路拓扑中。ePWM的多模块同步功能,直接决定了这些拓扑能否正常工作以及性能优劣。
3.1 独立与同步的多路Buck变换器控制
Buck(降压)变换器是最基础的DC/DC拓扑之一。在多路输出或大电流应用中,常采用多个Buck并联。
场景一:独立频率控制(图14-60)当每个Buck变换器需要工作在不同频率时(例如,为了错开噪声频率或适应不同的负载动态特性),最佳方案是让每个ePWM模块独立运行,无需同步。
- 配置:每个ePWM模块(EPWM1, EPWM2, EPWM3, EPWM4)都配置为主模式(Master),
SYNCO输出被禁用(连接到X)。TBPHS寄存器成为“不关心”项。 - 优势:设计简单,各通道完全独立,互不干扰。
- 挑战:输入电流纹波可能是各相纹波的简单叠加,可能在某些频点产生较大的噪声。电磁兼容(EMC)设计需要考虑更宽的频谱。
场景二:同步同频控制(图14-62)当需要多个Buck变换器严格同步,且工作频率相同时,可以采用主从模式。
- 配置:EPWM1配置为主模块,
SYNCO在CTR=PRD时产生。EPWM2配置为从模块,其SYNCI接收EPWM1的SYNCO,并使能相位加载。但此时TBPHS设置为0(或一个固定值,若需相位差)。 - 结果:EPWM1和EPWM2的输出波形完全同频同相。这对于需要严格对齐开关噪声的应用可能有用,但并未发挥交错并联的优势。
场景三:同步且交错(相位偏移)控制这是提升性能的关键模式。假设两个Buck交错并联,目标是让它们的开关时刻相差180°,从而使输入和输出电流纹波相互抵消,显著减小滤波电容和电感的尺寸。
- 配置:EPWM1为主,EPWM2为从。
- 关键参数:
TBPRD(周期值)两者设为相同。对于两相交错,相位差应为180°。假设TBPRD = 1000,则TBPHS = (180°/360°) × 1000 = 500。 - 波形效果:EPWM1的PWM波在0°开始,EPWM2的PWM波在180°(即半个周期后)开始。两个电感电流的纹波峰值错开,叠加后总电流纹波频率加倍,幅值减小。
实操心得:死区与互补PWM:在控制单个Buck(通常是一个高边开关)时,通常只使用ePWMxA输出。但如果使用同步Buck(包含高边和低边开关),则需要配置**动作限定器(AQ)和死区生成器(DB)**来产生一对互补的、带有死区时间的PWM信号(EPWMxA和EPWMxB),分别驱动高边和低边开关,防止直通短路。多模块同步时,每个模块内部的死区配置是独立的,需根据所用开关器件的导通/关断时间谨慎设置
DBRED和DBFED。
3.2 三相逆变器与电机驱动控制
驱动一个三相交流电机(如永磁同步电机PMSM或感应电机ACI)需要标准的三相全桥逆变器,包含六个开关管(上臂A/B/C,下臂A/B/C)。这需要三对互补的PWM信号。
控制需求:
- 严格同步:三相桥臂的PWM必须基于同一个时间基准,以保证生成的三相电压对称。
- 固定相位差:在空间矢量调制(SVPWM)等算法中,三相调制波本身互差120°电角度。虽然这通常由调制算法通过更新CMPA/CMPB值来实现,但ePWM模块间的硬件同步确保了计数器的起点一致,为软件算法提供了稳定的时间平台。
- 可扩展性:对于双电机驱动(如图14-66),可能需要两组独立的三相PWM。
配置方案(以单逆变器为例):
- 主从链式结构:EPWM1配置为主模块。EPWM2和EPWM3配置为从模块。
- 同步链:EPWM1的
SYNCO-> EPWM2的SYNCI。EPWM2的SYNCO配置为直通模式(SYNCOSEL = SYNCIN)-> EPWM3的SYNCI。 - 相位设置:三个模块的
TBPHS通常都设置为0,因为三相之间的120°相位差是由软件算法实时计算并更新到各自的CMPA/CMPB寄存器来完成的,而非通过硬件相位寄存器固定偏移。硬件同步保证了它们计数的“时钟”是同时起步的。 - 关键点:三个模块必须设置相同的
TBPRD(载波频率)和计数模式(通常为递增-递减模式,以产生中心对称的PWM,谐波特性更好)。
双逆变器控制(图14-66):
- 方案A(独立频率):两组逆变器分别以EPWM1和EPWM4为主模块,各自带两个从模块(EPWM2, EPWM3和EPWM5, EPWM6)。两组之间不同步。适用于两个独立运行的电机。
- 方案B(同步频率):仅使用EPWM1一个主模块,EPWM2-EPWM6全部配置为其从模块,形成一个长的同步链。这样所有6个PWM模块都基于同一个时间基准,适合需要严格同步的双电机协同作业场景(如某些牵引系统)。从模块的频率可以是主模块的整数倍(通过设置不同的
TBPRD实现),但通常为了控制简单,设为相同。
3.3 多相交错并联DC/DC变换器
这是体现相位控制价值的经典应用。通过将多个相同的变换器单元并联,并使其开关相位均勻错开,可以显著降低输入和输出的电流纹波,从而允许使用更小、更便宜的滤波元件,提升功率密度。
以三相交错Buck为例(图14-70):
- 目标:三个Buck单元并联,每个单元开关相位相差120°。
- 配置:
- EPWM1设为主模块,
SYNCO = CTR=PRD,TBPHS = 0。 - EPWM2设为从模块,
SYNCI接EPWM1的SYNCO,使能相位加载。其TBPHS需设置为滞后120°对应的值。若TBPRD=600,则TBPHS = (1/3) * 600 = 200。 - EPWM3设为从模块,
SYNCI接EPWM2的SYNCO(直通模式),使能相位加载。其TBPHS需设置为滞后240°(或领先120°)对应的值,即TBPHS = (2/3) * 600 = 400。
- EPWM1设为主模块,
- 通用公式:对于N相交错,第M个模块(M从1到N)的相位寄存器值应为:
TBPHS(M) = (TBPRD / N) * (M - 1)其中,主模块视为M=1,其TBPHS(1)=0。
波形效果(图14-71):三个Buck单元的PWM开关管导通时刻均匀分布在一个周期内。它们的电感电流纹波相位也相应错开120°,在输入端和输出端叠加后,总电流纹波的频率变为单相的3倍,幅值大幅降低。这直接意味着可以使用更小的输入电容和输出电容。
注意事项:均流问题。交错并联降低了纹波,但并未自动解决各并联单元之间的电流均分问题。均流仍需通过电流采样、闭环调节(调整各单元的占空比或相位微调)来实现。ePWM的相位控制为均流算法提供了稳定的相位框架,但均流本身是另一个控制环路。
3.4 移相全桥(PSFB)与零电压开关(ZVS)控制
移相全桥是一种在中大功率场合广泛应用的高效率软开关拓扑。其核心控制思想不再是调节占空比(通常固定为接近50%),而是调节全桥中两个桥臂(左臂和右臂)之间的相位差,从而控制传输到变压器原边的电压方波的“有效宽度”,进而调节输出功率。
ePWM配置方案(图14-72):
- 资源分配:一个全桥需要四个开关管(Q1-Q4)。通常使用两个ePWM模块(EPWM1和EPWM2)来控制,每个模块产生一对互补带死区的PWM信号(A和B),分别驱动一个桥臂的上下管。
- EPWM1A -> Q1, EPWM1B -> Q4 (左桥臂)
- EPWM2A -> Q2, EPWM2B -> Q3 (右桥臂)
- 同步与相位控制:EPWM1设为主模块,EPWM2设为从模块,并使能相位加载。两个模块的
TBPRD(频率)必须严格相同。 - 功率调节:通过实时改变从模块EPWM2的
TBPHS寄存器值,来动态调整两个桥臂驱动信号之间的相位差(Φ)。Φ从0°到接近180°变化,对应输出功率从最大到最小变化。 - 软开关实现:固定的50%占空比和移相控制,结合谐振电感与开关管寄生电容,创造了实现**零电压开关(ZVS)**的条件,即在开关管开通前其两端电压已降至零,从而大幅降低开关损耗(见图14-73中
ZVS transition标示的区域)。
配置关键:
- 两个模块必须工作在递增-递减计数模式,以产生中心对称的PWM,这是移相控制波形对称的基础。
- 死区时间必须根据开关管特性仔细设置,既要防止直通,又要为ZVS创造条件留出足够的时间窗口。
TBPHS的更新通常在每个开关周期或每若干个开关周期进行一次,由软件根据电压/电流环的计算结果进行刷新。为了平滑控制,更新应发生在计数器为0或周期(CTR=ZERO或CTR=PRD)的时刻,利用影子寄存器实现无毛刺更新。
4. 高级应用与配置细节
除了上述基本拓扑,ePWM的同步与相位控制还能支持更复杂的应用场景,并涉及一些关键的配置细节。
4.1 峰值电流模式控制
峰值电流模式是一种常用的反馈控制方式,它通过直接控制电感电流的峰值来提高动态响应和提供内在的过流保护。ePWM模块可以与片内模拟比较器结合来实现此功能(图14-74)。
工作原理:
- 电感电流通过采样电阻转换为电压信号,送入模拟比较器的正输入端。
- 比较器的负输入端接一个参考电压(可由内部DAC或外部提供),该参考电压代表了期望的电流峰值。
- 比较器的输出连接到ePWM的数字比较(DC)子模块的Trip输入。
- 配置ePWM的动作限定器(AQ),使得当Trip事件发生时,立即强制PWM输出为低电平(或高电平,取决于配置),关闭开关管。
- 在每个开关周期开始时,由时间基准子模块的
CTR=ZERO事件将PWM输出重新置位。
与同步/相位控制的关系:在多个交错并联的峰值电流模控制模块中,每个模块的电流环是独立的,但它们的时钟(即PWM周期)仍然需要通过ePWM的同步功能来保持固定的相位关系。例如,在一个三相交错Buck中,三个ePWM模块需要如前所述设置120°的相位差,而每个模块自身的峰值电流保护功能独立工作。这实现了均流与交错并联的完美结合:硬件同步保证了相位固定,独立的峰值电流环保证了各相电流的限值和动态平衡。
4.2 高分辨率PWM(HRPWM)与同步的协同
在高频开关电源(如>500kHz)或需要极高精度调制的场合(如Class D音频放大器),常规PWM的分辨率会因计数器位数限制而严重下降。HRPWM技术通过微边沿定位器(MEP),能够在单个系统时钟周期内进行更精细的时间分割,将边沿定位精度提升到皮秒级。
HRPWM对同步/相位控制的意义:
- 高精度相位控制:当使用
TBPHSHR寄存器时,可以对相位偏移进行高分辨率设置。这对于需要精确相位匹配的多相变换器至关重要,能进一步降低因相位误差导致的纹波增大。 - 高精度占空比控制:在移相全桥中,虽然主要控制变量是相位,但占空比仍需精确保持在50%附近。
CMPAHR/CMPBHR可以确保占空比的高精度。 - 高分辨率死区:
DBREDHR和DBFEDHR允许更精细地调整死区时间,这对于优化软开关窗口、最大化效率尤为重要。
配置注意事项:
- HRPWM的扩展寄存器(如
CMPAHR,TBPHSHR)与它们对应的常规寄存器(CMPA,TBPHS)共同组成一个24位或更高的有效控制字。写入时需要以32位操作一次性完成。 - 在启用HRPWM功能时,需通过
HRCNFG寄存器仔细选择控制模式(边沿模式、控制模式等)。例如,对于相位控制,应选择双边沿(BE)控制模式,并关联TBPHSHR寄存器。 - MEP的步进尺寸(MEP Step Size)与芯片工艺和温度有关。TI提供了软件比例因子优化(SFO)库函数,用于在后台自动校准和更新
HRMSTEP寄存器,以确保HRPWM精度。在涉及多模块同步的应用中,需要确保所有使用HRPWM的模块都正确初始化和校准。
4.3 寄存器锁保护与系统鲁棒性
在复杂的实时控制系统中,防止软件跑飞或意外访问导致关键PWM寄存器被篡改,是保证系统安全的重要一环。TMS320F280015x的ePWM模块提供了寄存器锁保护机制。
保护机制:
EPWMLOCK寄存器是总开关。向该寄存器的KEY字段写入0xA5A5值,可以解锁或锁定特定的寄存器组。- 可被锁定的寄存器组包括:
HRLOCK:高分辨率PWM相关寄存器。GLLOCK:全局加载控制寄存器。TZCFGLOCK:Trip-Zone配置寄存器。TZCLRLOCK:Trip-Zone清除寄存器。DCLOCK:数字比较模块寄存器。
- 一旦锁定,对这些受保护寄存器的写操作将被忽略,直到再次解锁。
实战建议:
- 初始化阶段:在系统初始化配置ePWM所有参数后,立即锁定关键寄存器组。特别是Trip-Zone和数字比较寄存器,它们关系到系统的保护功能,绝不能出错。
- 运行时更新:对于需要周期性更新的寄存器,如
CMPA(占空比)、TBPHS(移相角),不要锁定其所在的影子寄存器或活动寄存器。锁保护应针对不常更改的配置寄存器。 - 注意写入方式:对
EPWMLOCK的写操作必须是32位写。16位写操作会被忽略,这可能导致锁保护功能失效。 - 在多模块系统中,建议对所有ePWM模块的配置寄存器实施一致的锁保护策略,以增强整体鲁棒性。
5. 常见问题、调试技巧与避坑指南
在实际工程中,配置多ePWM模块同步时,常会遇到一些棘手问题。以下是一些经验总结和调试方法。
5.1 同步信号“丢失”或不起作用
现象:从模块的波形没有与主模块同步,看起来仍在独立运行。排查步骤:
- 检查时钟源:确认所有ePWM模块的时钟
EPWMxCLK是否已使能且频率正确。这是所有模块工作的基础。 - 确认SYNCI输入源:检查从模块的
EPWMxSYNCI信号是否真正连接到了主模块的EPWMxSYNCO输出。在软件配置中,这通常通过EPwmXRegs.TBCTL.bit.SYNCOSEL和系统级交叉开关配置来完成。务必查阅数据手册的“输入X-BAR”和“ePWM同步链”部分。 - 验证同步脉冲事件:确保主模块的
SYNCO事件配置正确。例如,在递增计数模式下,通常使用CTR=PRD作为同步事件;在递增-递减模式下,使用CTR=ZERO可能更合适。 - 检查相位加载使能:对于需要相位控制的从模块,必须将
TBCTL.bit.PHSEN位设置为1(使能)。否则,即使收到同步脉冲,也不会加载TBPHS值。 - 使用示波器探测:如果芯片引脚允许,可以将主模块的
SYNCO信号和从模块的SYNCI信号映射到GPIO,用示波器观察是否有脉冲产生。这是最直接的硬件验证方法。
5.2 相位控制不准确或出现毛刺
现象:设置的TBPHS值没有产生预期的相位差,或者在相位更新时PWM输出出现异常脉冲。排查步骤:
- 计算验证:重新计算
TBPHS值。确保使用公式TBPHS = (期望相位差 / 360°) × TBPRD。注意TBPRD是影子寄存器还是活动寄存器的值?在递增-递减模式下,一个完���电周期对应的计数范围是0到TBPRD再到0,计算相位差时应基于半个周期还是整个周期?这需要与你的计数模式和解码逻辑保持一致。 - 影子寄存器更新时机:
TBPHS有影子寄存器。如果你在运行时动态更新相位值,必须确保在同步事件发生之前将新值写入影子寄存器。通常,在CTR=ZERO或CTR=PRD时更新影子寄存器是安全的。错误的更新时机会导致加载到计数器的值不稳定,产生相位跳变或毛刺。 - 同步竞争条件:如果软件在接近同步事件发生的时刻更新
TBPHS影子寄存器,可能存在风险。更稳健的做法是,利用CTR=PRD或CTR=ZERO事件触发中断,在中断服务程序中更新下一个周期的相位值,这样有足够的时间裕量。 - HRPWM影响:如果启用了高分辨率相位控制(使用
TBPHSHR),请确保HRCNFG寄存器中的控制模式(CTLMODE)已正确设置为“双边沿控制,使用TBPHSHR”。同时,检查MEP校准(SFO)是否已完成且HRMSTEP值有效。
5.3 多相并联系统中的环流与不均流
现象:在多相交错并联系统中,即使PWM相位设置正确,各相电感电流也不均衡,可能导致个别单元过热。分析与解决:
- 相位误差:首先用高精度示波器测量各相PWM驱动信号的实际上升沿/下降沿,确认相位差是否精确符合设计(如120°)。微小的时序误差可能源于PCB布局不对称、驱动芯片延迟差异等。ePWM硬件本身精度很高,问题常出在后续硬件链路上。
- 参数失配:各功率通道的电感值、MOSFET导通电阻、采样电阻等存在公差。ePWM的同步控制解决了“时序”一致性问题,但无法解决“幅值”一致性问题。这需要引入均流控制环。
- 均流策略:
- 主从均流:指定一相为主模块,其电压环输出作为公共占空比指令。其他从模块通过调节自身的占空比(在相位固定的前提下,微调
CMPA值),使其电流跟随主模块电流。这需要每个模块都有独立的电流采样和ADC转换。ePWM的事件触发(ET)模块可以精准触发各相自身的ADC采样时刻。 - 平均电流均流:计算所有相电流的平均值,每相都调节自身电流至这个平均值。这种方式动态性能更好。
- 利用ePWM的灵活性:均流环的输出是一个对占空比的微调量(ΔD)。你可以在保持
TBPHS固定的前提下,在软件中实时更新该相ePWM模块的CMPA影子寄存器。ePWM的独立性和精确的时间控制,为软件实现高性能均流算法提供了完美硬件平台。
- 主从均流:指定一相为主模块,其电压环输出作为公共占空比指令。其他从模块通过调节自身的占空比(在相位固定的前提下,微调
5.4 死区时间与同步的相互影响
现象:在同步的互补PWM输出中,死区时间插入异常,导致波形不对称或出现非预期的关断。关键理解:死区生成是在每个ePWM模块内部、动作限定器(AQ)之后独立进行的。同步信号控制的是时间基准计数器(TBCTR)的起点,而死区模块根据原始的EPWMxA和EPWMxB信号生成带死区的最终输出。配置要点:
- 对于需要同步的多个模块,它们的死区时间(
DBRED,DBFED)通常应设置为相同的值,以确保各桥臂行为一致。 - 在移相全桥等拓扑中,死区时间的设置尤为关键。它必须大于开关管的关断时间,但又要小于为实现ZVS而预留的谐振时间窗口。需要根据实际器件参数和实验仔细调整。
- 如果使用了高分辨率死区(
DBREDHR,DBFEDHR),确保在HRCNFG2寄存器中正确配置了死区高分辨率控制模式。
5.5 使用事件触发(ET)与ADC协同采样
在数字电源和电机控制中,ADC采样时刻的精确性直接影响控制性能。ePWM的事件触发(ET)模块可以与同步功能完美配合。最佳实践:
- 对于多相交错系统,应将各相的电流/电压ADC采样时刻,设置在该相PWM周期的中心点或开关管导通的中点附近,以避开开关噪声。
- 利用每个ePWM模块独立的
CTR=CMPA或CTR=CMPB事件来触发本相的ADC开始转换(EPWMxSOCA或SOCB)。 - 通过设置不同的CMP值,可以精确设定各相的采样时刻。由于各模块的计数器通过同步和相位控制已精确对齐,因此各相的采样时刻也将在整个系统时间轴上精确错开,实现了同步且交错的数据采集,为数字控制算法提供了高质量的同步采样数据。
通过深入理解ePWM的同步与相位控制机制,并结合具体的电源拓扑需求进行精心配置,工程师能够构建出时序精确、性能优越、可靠性高的数字电源与电机控制系统。从降低纹波到实现软开关,从多相并联到双电机协同,这项技术是现代电力电子系统迈向高效化、高功率密度化不可或缺的核心工具。