This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28379D:在变频运行的可变相移期间丢失 PWM 脉冲

Guru**** 2589280 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1126187/tms320f28379d-pwm-pulses-missing-during-variable-phase-shift-with-variable-frequency-operation

器件型号:TMS320F28379D

您好!

我运行的是一个交流/直流转换器、它使用全桥逆变器和全桥整流器。 转换器中的所有这四个半桥(两个逆变器半桥和两个整流器半桥)需要以50%占空比运行。 应对它们之间的相移进行调制、并根据线路周期电压改变工作频率、以实现转换器的 PFC 操作。  为此、我将使用 ePWM 1 - 4、并从查找表加载这些 ePWM 的 TBPRD 和 TBPHS 值、该表存储相对于交流线路电压的相移和频率值。

转换器的工作频率在275kHz 至300kHz 之间变化(相应的 TBPRD 值分别在365至330之间变化)。  

这些半桥2至4的相移在以下范围内相对于半桥1有所不同:

半桥2:始终为180度

半桥3:25度至130度

半桥4:130度至225度

EPWM 1和2输出正常、但 EPWM 3中的脉冲在一段时间内缺失、并且 EPWM 3和4中的一个或两个周期间歇性发生比较跳跃事件。

 

我知道、在主动改变 TBPHS 和 CMPA 值的同时、我需要小心一点。 在更新 TBPHS 和 CMPA 值时、如果我的新 CMPA 值介于新的 TBPHS 和旧的 TBPHS 值之间、我将在这一开关周期中使我的新 CMPA 值变为新的 TBPHS + 1、然后返回到所需的 CMPA 值。

即使在我的代码中实现了这一点、我也面临着同样的问题。  

是否有任何意见或建议可解决此问题?

谢谢、此致

Dheeraj

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Dheeraj、

    是否为 TBPRD 和 CMPA 值启用了影子加载? 您的计数器模式是什么?您的 AQ 操作是什么? 了解如何配置 EPWM3或 EPWM4会很有帮助。  

    此致、

    Marlyn

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Marlyn、

    感谢您的回复。

    计数器等于零时、TBPRD 的影子加载被启用。 未为 CMPA 启用影子加载。

    计数器模式为递增计数。 AQ 操作:ePWM 3A/4A -当计数器等于零时置1、当计数器等于 CMPA 值时清零。 ePWM 3B/4B 分别设置为与 ePWM 3A/4A 互补。  

    此致、

    Dheeraj

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Dheeraj、

    感谢您提供更多信息。 是否可以设置 TBPRD 和 CMPA 的影子加载在周期或 ZRO/PRD 事件上发生。 由于您正在使用向上计数模式、因此从技术上讲、ZRO 和 PRD 是相同的事件、但其他操作可能会有问题。 此外、什么是为 ePWM 2、3和4提供同步、当 ePWM 1的 TBCTR 为零时是这样?

    [引用 userid="504274" URL"~/support/microriers/C2000-microriers-group/C2000/f/C2000-microriers-forum/1126187/tms320f28379d-PWM-Pms-pulsese-missing-during -variable-phand-variable-frequency operation"]我使用 ePWM 1 - 4来存储这些相移值和 TBPRD[引用的相位移值并将其从 TBPHS 表中加载到这些值]。

    这是在其中一个 ePWM ISR 还是另一个 ISR 内发生? 通常、如果它不在 ePWM ISR 内、那么我建议进入全局加载/单次触发加载模式。 您可以确定需要哪些值、然后设置一次性标志、以便同时将所有影子加载到 TBPRD/CMPA 等的活动寄存器中(如果在 ePWM 模块之间设置链接、则可能会跨 ePWM 模块进行此操作)、 这有助于减少一个 ePWM 模块先于另一个模块进行更新的机会、并降低您在 ePWM 3和 ePWM 4中看到的丢失脉冲的风险。  

    此致、

    Marlyn