ZHCAAX3 March 2021 TMS320F280021 , TMS320F280021-Q1 , TMS320F280023 , TMS320F280023-Q1 , TMS320F280023C , TMS320F280025 , TMS320F280025-Q1 , TMS320F280025C , TMS320F280025C-Q1 , TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1 , TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S , TMS320F28384D , TMS320F28384D-Q1 , TMS320F28384S , TMS320F28384S-Q1 , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
C2000is a TM ofTI corporate name.
Other TMs
提高电源转换效率是近几年的一个重要话题。关于这一方面,业界提出了许多拓扑和方法来减少功率器件中的传导损耗和开关损耗。CRM 和 ZVS 技术是提高效率和降低功率器件损耗的关键软开关技术。
数字控制的 PFC 转换器如图 2-1 所示。对于重 PFC 负载,电感器电流 iL 可以是连续导电模式 (CCM)。而在轻负载下,电流可能变得不连续 (DCM)。在 DCM 运行期间,升压电感器 L 与 PFC MOSFET 输出电容 Cds 自由谐振。数字 PFC 设计人员可使用外部组件和内部算法检测 MOSFET Vds 的逐周期 ZVS 或 CRM 位置。C2000 4 类 PWM 提供内部硬件来实现 MCU 带宽利用率减小而且不使用这些外部组件的 CRM/ZVS PFC。
图 2-1 显示传统的升压 PFC 拓扑。电感器电流 iL 可维持临界导电模式 (CRM)。当电感器电流不连续时,MOSFET 的 Vds 电压可谐振至零伏,从而产生 ZVS 开关瞬间。图 2 显示 CRM/ZVS 状态下的 PWM 信号、MOSFET 的 Vds 和电感器电流波形。
如果交流输入电压高于直流总线电压的一半,MOSFET 应在电压达到谷点时将其接通以实现 ZCS(CRM)。MOSFET Vds 从不会谐振至零伏,如图 2-2 中所示。但是,当交流输入电压低于输出电压的 1/2 时,MOSFET 的 Vds 可谐振至零伏,且被 MOSFET 体二极管钳制。MOSFET 可在这种状态下实现 ZVS 和 ZCS,如图 2-3 中所示。
传统的预测周期方法需要快速计算并消耗显著的 CPU 带宽。使用额外的资源计算升压电感器电流 iL 从峰值回归到零的谐振时间和持续时间。本报告提出了一种基于 MCU 内部硬件的方法,通过利用 C2000 MCU 外设实现 CRM/ZVS PFC 控制。这些内部外设包括 CMPSS、横杆 (X-BAR) 和 4 类 PWM。
图 3-1 显示从外部 PFC 功率级硬件到 C2000 内部外设的信号接口,该接口用于生成 PWM 信号。本报告以 CMPSS5、X-BAR(TRIP5)、ePWM1 为例介绍了通过 4 类 PWM 实现 CRM/ZVS PFC 的过程。
图 3-1 中的输入信号是 PFC 电感器电流 iL。选择此信号作为 CMPSS 模块的 COMPH 正极引脚的输入,详情参见图 3-2。捕捉电流过零 (ZC) 的阈值是接近零的固定值,应用于 DACHVALS(阴影寄存器 DAC 值)。电流 ZC 阈值通过参考 DAC 设置为 COMPH 的负输入。选择比较器的反相输出作为 CTRIPH 并异步连接到 X-BAR。
CMPSS5 CTRIPH 信号连接到 X-BAR TRIP5 mux8,如图 3-3 中所示。若要使任何信号直达 ePWM,请启用 TRIP5MUXENABLE 寄存器中的 mux8。CMPSS 输出通过 ePWM X-BAR 输送到 ePWM 直流子模块。TRIP5 指电感器电流负过零 (NZC) 事件,通过设置 DCAHTRIPSEL 生成 DCAH 信号。请注意,正过零事件是按消隐窗口过滤的,如图 3-7 所示。然后,TZDCSEL 寄存器的配置限定对选定 DCAH 信号的操作,该信号生成 DCAEVT1 事件。然后,通过配置 DCACTL 过滤 DCAEVT1 事件以提供有过滤版本的事件信号的 DCAEVT1.sync。然后 DCAEVT1.sync 生成一个同步脉冲,发给时基计数器。
图 3-4 详细展示了事件过滤逻辑块,这对于实现 ZVS/ZCS 至关重要。事件过滤块可捕捉跳闸事件的 TBCTR 值以提供有 PWM 周期的控制算法并将周期值存储在 DCCAP 寄存器。消隐逻辑用于在生成正确的同步信号前筛除信号上的潜在噪声和电感器电流正过零 (PZC) 事件。图 3-4 所示为事件过滤逻辑模块中的信号流。选择 DCAEVT1 事件作为带有消隐窗口(消隐控制逻辑)的事件过滤逻辑块 (DCFCTL[SRCSEL]) 的输入。这时,比较器输出被选为事件过滤逻辑块的输入。消隐窗口与 DCAEVT1 进行与运算。选择软件触发源作为重置并重新启动边沿滤波器 (VCAPCTL[TRIGSEL]) 的事件。最后,根据硬件参数配置 VCAPCTL [EDGEFILTDLYSEL] 以应用延迟(SWVDELVAL 中的软件编程值)。现在,DCCAP 可以捕捉与电感器电流负过零相关的事件的 TBCTR 值。该 TBCTR 值表示当前 PWM 开关循环的周期。
最后,通过设置事件触发块的 DCACTL[EVT1SYNCE] 启用 DCAEVT1.sync(如图 3-5 中所示),并通过设置时基子模块的 TBCTL[PHSEN] 启用相移以同步 TBCTR(如图 3-6 中所示)。
图 3-7 显示外设配置后的主要信号波形。DCAEVT1 信号的上升沿和下降沿代表基于图 3-7 的相应正负过零点。消隐窗口与 DCAEVT1 进行与运算,以生成 DCEVTFILT,以便在 MOSFET 导通时间内筛除电感器电流正过零 (PZC) 边沿和噪声。这样,消隐窗口长度应该比 PWM 导通时间长。直流子模块应用对应电感器负过零 (NZC) 边沿的延迟来生成同步事件。
实现过程的流程图如图 4-1 所示。CMPSS、X-BAR 和 ePWM 是在起始状态配置的。
//----------------------------------------------------------------------
// CMPSS5H 捕捉 ZVS(电感器电流 NZC)
//----------------------------------------------------------------------
//设置 CMPSS 5 的模拟输入,将电感器电流信号连接到 CMPSS5
ASysCtl_selectCMPHPMux(ASYSCTL_CMPHPMUX_SELECT_5, 2);
// 在本地启动比较器
CMPSS_enableModule(base5);
// 将反相输入连接到内部 DAC。反相 CMPH 输出。
CMPSS_configHighComparator(base5, CMPSS_INSRC_DAC|CMPSS_INV_INVERTED);
// 设置 DAC 输出
CMPSS_setDACValueHigh(base5, (int16_t)(iL_limit));
// DACHVALA 从 DACHVALS 更新(无内坡道)
CMPSS_configDAC(base5, CMPSS_DACSRC_SHDW);
// 输出 = 异步比较器输出(反相输出)
CMPSS_configOutputsHigh(base5, CMPSS_TRIP_ASYNC_COMP);
// Xbar 设置
//------------------------------------------------------------------------
// CMPSS5H - ZVS(电感器电流 NZC)
//------------------------------------------------------------------------
XBAR_setEPWMMuxConfig(XBAR_TRIP5, ZVS_CAPTURE_XBAR_MUX_CONFIG);
XBAR_enableEPWMMux(XBAR_TRIP5, ZVS_CAPTURE_XBAR_MUX);
//初始化期间清除 XBAR 标记
XBAR_clearInputFlag(XBAR_INPUT_FLG_CMPSS2_CTRIPH);
//***********************************************************************************
// 为开关频率和谷底开关配置 PWM1A。
//***********************************************************************************
// ZVS(电感器电流 NZC)相关的寄存器设置由此开始
// 选择 DCAEVT1 事件之一作为事件过滤逻辑块的输入
EPWM_setDigitalCompareFilterInput(base1, EPWM_DC_WINDOW_SOURCE_DCAEVT1);
// 选择边沿滤波器
EPWM_enableDigitalCompareEdgeFilter(base1);
// 选择边沿模式
EPWM_setDigitalCompareEdgeFilterMode(base1, EPWM_DC_EDGEFILT_MODE_BOTH);
// 选择边沿计数
EPWM_setDigitalCompareEdgeFilterEdgeCount(base1,1);
//软件触发器(在 ISR 中触发)
EPWM_setValleyTriggerSource(base1, EPWM_VALLEY_TRIGGER_EVENT_SOFTWARE);
//启用谷底捕捉
EPWM_enableValleyCapture(base1);
//应用 DELAY
EPWM_enableValleyHWDelay(base1);
//SW DELAY 持续时间
EPWM_setValleySWDelayValue(base1, SWDELAY);
// DCAH = 比较器 5 输出 = TRIP5in
EPWM_selectDigitalCompareTripInput(base1, EPWM_DC_TRIP_TRIPIN5,EPWM_DC_TYPE_DCAH);
//DCAH = 高(边沿滤波器生成 1 TBCLK 宽脉冲)
EPWM_setTripZoneDigitalCompareEventCondition(base1, EPWM_TZ_DC_OUTPUT_A1,
EPWM_TZ_EVENT_DCXH_HIGH);
//源已过滤 DCAEVT1
EPWM_setDigitalCompareEventSource(base1, EPWM_DC_MODULE_A, EPWM_DC_EVENT_1,
EPWM_DC_EVENT_SOURCE_FILT_SIGNAL);
//异步
EPWM_setDigitalCompareEventSyncMode(base1, EPWM_DC_MODULE_A, EPWM_DC_EVENT_1,
EPWM_DC_EVENT_INPUT_NOT_SYNCED);
//使用消隐窗口过滤 PZC 边沿和噪声
EPWM_enableDigitalCompareBlankingWindow(base1);
EPWM_setDigitalCompareBlankingEvent(base1, EPWM_DC_WINDOW_START_TBCTR_ZERO);
// 消隐窗口偏移 = CMPA(n+1)
EPWM_setDigitalCompareWindowOffset(base1, 1);
// 消隐窗口长度
EPWM_setDigitalCompareWindowLength(base1, MIN_PERIOD);
// 启用时基计数器捕捉
EPWM_enableDigitalCompareCounterCapture(base1);
//ZVS 代码到此结束
以下代码置于 ePWM1 ISR 中,因为 ePWM1 提供 PFC MOSFET 的驱动信号。ePWM1 ISR 每当 TB 计数器为 0 时发生。
//设置位 1 (VCAPSTART),边沿滤波器的软件触发源
EPWM_startValleyCapture(EPWM1_BASE);
//DCCAP
capturedPeriod = EPWM_getDigitalCompareCaptureCount(EPWM1_BASE);
// blankingWindowLength=50~70 ticks margin + duty*DCCAP (MOSFET on-time)
blankingWindowLength = blankingBsuffer+ePwm1Cmpb;
EPWM_setDigitalCompareWindowLength(EPWM1_BASE, blankingWindowLength);
本文介绍了 CRM/ZVS PFC 技术和 C2000 4 类 PWM 模块的配置,以实现这种软开关技术。它提出了一种不使用任何复杂的外部逻辑电路的升压 PFC 转换器数字控制优化技术。提议的优化方法利用 C2000 MCU 的内部可编程数字比较块以实现用于 PFC 的 CRM/ZVS 开关。提议的方法是使用德州仪器 (TI) TMDSCNCD280049C MCU 进行验证的。
TI 均以“原样”提供技术性及可靠性数据(包括数据表)、设计资源(包括参考设计)、应用或其他设计建议、网络工具、安全信息和其他资源,不保证其中不含任何瑕疵,且不做任何明示或暗示的担保,包括但不限于对适销性、适合某特定用途或不侵犯任何第三方知识产权的暗示担保。 |
所述资源可供专业开发人员应用TI 产品进行设计使用。您将对以下行为独自承担全部责任:(1) 针对您的应用选择合适的TI 产品;(2) 设计、验证并测试您的应用;(3) 确保您的应用满足相应标准以及任何其他安全、安保或其他要求。所述资源如有变更,恕不另行通知。TI 对您使用所述资源的授权仅限于开发资源所涉及TI 产品的相关应用。除此之外不得复制或展示所述资源,也不提供其它TI或任何第三方的知识产权授权许可。如因使用所述资源而产生任何索赔、赔偿、成本、损失及债务等,TI对此概不负责,并且您须赔偿由此对TI 及其代表造成的损害。 |
TI 所提供产品均受TI 的销售条款 (http://www.ti.com.cn/zh-cn/legal/termsofsale.html) 以及ti.com.cn上或随附TI产品提供的其他可适用条款的约束。TI提供所述资源并不扩展或以其他方式更改TI 针对TI 产品所发布的可适用的担保范围或担保免责声明。IMPORTANT NOTICE |
邮寄地址:上海市浦东新区世纪大道 1568 号中建大厦 32 楼,邮政编码:200122
Copyright © 2021 德州仪器半导体技术(上海)有限公司 |