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.
尊敬的 C2000专家:
我开始评估电源上的 F28004x,现在我想知道 F280049是否支持以下逐周期(CBC)保护功能。
1:CBC 发生时的占空比匹配特性。 我将使用相同的占空比、180度相位来配置 ePWMxA 和 ePWMxB。 这意味着 ePWMxB 落后于 ePWMxA 半个周期。 我需要的是、当 CBC 出现在 ePWMxA 上时、ePWMxB 应该与 ePWMxA 保持相同的脉冲宽度、反之亦然。 如何配置器件以支持此功能?
下面是我想要的波形、CBC 出现在 EPWM1A 上、EPWM1B 应保持与 EPWM1A 相同的脉冲宽度、这是可行的吗?
2、在接收到大量连续 CBC 事件后需要锁存 EPWM、并且 EPWM 应因 CBC 事件而跳闸。
下面的波形显示了我想要的、ePWMxA 应该在连续3个 CBC 事件后被锁存、这是可行的吗?
3.f28003?TRM 中‘基于周期的硬件锁定(同步)相位关系’的含义是什么?
4.‘故障条件下的逐周期跳闸和单次跳闸的可编程跳闸区域分配的含义。’ 在 f2800?trm 中?
谢谢。。。
尊敬的 Jack:
1) 1)我们无法编写新代码并将其提供给您、但我将与系统工程师联系、以查看现有的任何电源套件是否具有使用此方法或类似方法的软件。
2) 2)我认为没有硬件方法来实现这一点。 有事件预分频器、但当事件未发生时、这些预分频器不会复位。 因此、我认为您需要对 ISR 中的连续事件进行计数、如果超出限制、则需要对 SW 跳闸进行计数。
Manish、您好!
i.在第一个波形上、XA 占空比仅由 CBC 事件确定? 或者、当 CBC 未被触发并且占空比被设定为30%并且 CBC 是一个特殊情况时、是否有一个用例。
JACK ->否、如果 CBC 未触发、XA 占空比由 COMx 寄存器中编程的占空比决定。 如果 CBC 在 A 的下降沿之前触发、则 CBC 确定占空比、XB 应具有与 XA 相同的脉冲宽度(其中 CBC 触发 XA 拉低)。
二 如果 XA 占空比由该固定占空比确定,假设30%和 CBC 事件发生在20%占空比上,XB 将是20%或30%???
JACK -> XB 应为20%。
三 此外,在显示的波形中,XB 永远不会触发 CBC 事件??? 是这样吗? 或者、您不想对其进行计数、即使它确实如此?
JACK ->如果 CBC 在 XB 上触发、XA 应具有与 XB 相同的占空比。
例如、如果闭环输出为50%占空比、但 CBC 会在30%上触发 XB、则 XA 应为30%。
尊敬的 Jack:
可以在 TMS320F28004x 器件上实现具有占空比匹配行为的 CBC。 我几年前就编写了所附文件。 本文档介绍 了当 CBC 事件发生在开关周期的前半个周期时、以及您希望在接下来的半个周期中使用相同的导通时间时、如何实现此目的。 您将需要一个额外的 PWM 资源来执行此操作。 如果希望 CBC 事件在第二个半周期发生时具有相同的行为、并且希望在接下来的半个周期中具有相同的导通时间、则可能需要使用另一个类似的资源。
如果您对此有任何疑问/疑虑、请告诉我。
Hrishi
e2e.ti.com/.../3678.Half_2D00_bridge_5F00_Charge_2D00_Sec_5F00_balance_5F00_E2E.pdf
尊敬的 Jack:
TI 的邮件中包含硬件。 收到后、我将编写一些示例代码。
您实际上不会使用 CBC。 您需要了解的是操作限定符中的新 T1/T2功能。 这是一种在数字比较事件上更改 PWM 输出而不会实际使 PWM 跳闸的方法。 因此、在发生跳闸的情况下、T1事件会在 A 通道到达下降沿的比较事件之前将其强制为低电平。 该比较事件仍会发生、这一点无关紧要、因为 T1事件已将 PWM 设为低电平。 这也意味着 B 通道不会跳闸、并且上升沿比较事件仍会发生。 在跳闸情况下、T2将在 B 通道下降沿的比较事件之前发生。
此致、
Kris
Kris、
在开始沿着此路径前进之前、请记住、此处的关键要求是在开关周期的下半部分的开关周期中使用导通时间(TRIP/T1/T2事件的结果)。 开关周期的后半部分没有 CBC 事件。 我不认为使用 T1/T2是解决方案。 请参阅上面发布的我的 pdf 文件。
插孔、
如果没有 CBC 事件、EPWMxB 将不会跳闸、并将转至编程值。 这在我的图中的前两个开关周期中进行了说明、编程的导通时间等于 D1和 D2。 这是可能的、因为 PWM 时基 y 在跳闸事件上同步。 没有跳闸事件时基 y 仅在 PWMx 周期结束时同步、不会缩短该开关周期中的 PWMxB 导通时间。
该解决方案适用于固定频率。 它也适用于可变频率、但您必须注意周期和比较寄存器的更新时间和位置。 更新这些值的 ISR 必须与开关周期同步。
我目前没有可以共享的代码。 我在上一篇文章中介绍的配置就是实现此功能所需的一切。 以这种方式开始配置 PWM 后、如果您需要帮助、请告诉我。
Hrishi
Hrishi、
我错过了您之前的回复中的 PDF。 这看起来是一个很好的解决方案、与我的想法非常相似。 如何将 ePWMx 返回到系统中使用的 PWM 中以导致周期的后半部分跳闸? 您是否将其接至引脚并将其路由回 X-BAR?
在我的解决方案中、我将在周期的后半部分创建 T2事件、PWM 看起来与您建议的类似。 我认为这也可能是 CBC。 他们的一个或两个(T1/T2或 CBC)将起作用、只需进一步了解详情即可尝试。
此致、
Kris
我可以在不使用额外引脚的情况下执行此操作。 我使用了前面介绍的方法(T1/T2事件创建下降沿、PWM 上占空比为50%)、但我使用的不是 ePWM。 ECAP 的优势是可以通过 ePWM X-BAR 在内部将其路由到 ePWM。
我也将 ECAP 引入 GPIO 以进行演示、但它可以从 GPIO 中移除、这仍然有效。 我在下面包含了一个波形。 您将看到、随着 A 通道占空比的变化、B 通道在同一 PWM 周期中自动匹配。 在示例代码中、我只是修改 CMPA 以更改 PWMA 的脉冲宽度、但由于 ECAP 正在与 PWM1A 的下降沿同步、因此无论导致下降沿(CMPA、CBC、T1)的原因是什么、这都是有效的。
该代码实际上是在 F28379D launchpad 上创建的、但该解决方案仍然适用于 F28004x。 您可以将此代码复制到示例项目中、只需进行一些小改动即可开始并运行。
在 APWM 模式下同步 ECAP 是否存在任何已知的芯片问题? 如果 CTRPHS 大于0 (在本例中、我使用了8)、则部分同步事件丢失或上升沿事件丢失。 您可以在下面的红色框中看到、尽管 PWMA 有下降沿、但 ECAP 仍然缺少脉冲。 它不会影响上面发布的解决方案、因为它在 CTRPHS = 0时工作正常。 但是、似乎需要进一步调查这种情况的发生原因。 您可以通过获取附加的示例代码并更改 ECap1Regs.CTRPHS = 8来复制此代码。
随附了示例代码。 欢迎访问!e2e.ti.com/.../epwm_5F00_up_5F00_aq_5F00_cpu01.c
此致、
Kris