我们将在春节假期期间对网站进行维护,可能暂时无法访问,同时工程师回复将有所延迟,敬请谅解.

TMS320F280049C: LLC闭环驱动波形异常,输出电压基本稳定。

Part Number: TMS320F280049C
Other Parts Discussed in Thread: TIDA-010062, SFRA

参考例程:TIDA-010062的llc_f280049

低压输入,在36v内,llc驱动波形是趋于方波的,如下图。超过36v的输入,波形有段时间会消失,导致这一现象的原因可能是什么?有什么调试的建议吗?

  • 您好,我们已收到您的问题并升级到英文论坛寻求帮助,如有答复将尽快回复您。谢谢!

  • 您好,

    LLC 级没有感应输入电压。 您说的情况应该是代码之外的硬件问题。

    请问您使用的是哪种类型的电路?

    llc驱动波形是趋于方波的

    以及驱动波形是什么意思?

  • 全桥LLc降压的电路,驱动波形指的是变压器降压后的PWM波形。

  • 您好,

    超过36v的输入,波形有段时间会消失

    1. 您的意思是,PWM消失一段时间后,还会恢复是吗?

    2. 您可以先检查下expression窗口中的一些寄存器/参数。 例如,过流/过压标志或 ePWM.TZFLG.OST。 检查下它们是否为1。 如果是的话,那么是因为某些原因触发了保护。

  • PWM描述如您所述,消失一段时间后恢复,再过一段时间又消失,如此周期循环。

    关于expression窗口如下描述:

    1.过压过流保护的函数已经屏蔽掉了,应该不是触发了保护。关于屏蔽保护函数这一操作是否会对环路调节有影响?

    2.在波形消失时我查看过PWM配置的参数【即函数  LLC_HAL_updatePWM()的参数tbprd_pri_ticks, cmpa_pri_1_ticks,
    cmpb_pri_1_ticks变化】,并未发现导致PWM消失的原因。

  • 好的我们跟进给工程师看下哈。由于这一周是国外的感恩节假期,工程师回复可能会较慢些,给您带来的不便敬请谅解。

  • 2.在波形消失时我查看过PWM配置的参数【即函数  LLC_HAL_updatePWM()的参数tbprd_pri_ticks, cmpa_pri_1_ticks,
    cmpb_pri_1_ticks变化】,并未发现导致PWM消失的原因。

    好的,目前看来所有 PWM 设置都正确(您需要log/plot该时间内寄存器的变化,以免错过信息)。 您还可以检查下死区值。

    此外请问代码中是否有逐周期跳闸区域设置? 这个应该不在原始代码中,您可以再仔细看下。

  • 1.死区时间设置的是500ns,PWM波形大概在50KHZ,这样的设置有问题吗?

    2.代码中没有逐周期区域设置。

  • 还有在闭环调节时,通过debug模式读取periodSet_pu值,发现输出的PWM总是在最大值。请问这一现象是否正常?

  • 还有在闭环调节时,通过debug模式读取periodSet_pu值,发现输出的PWM总是在最大值。请问这一现象是否正常?

    在什么测试条件下会发生这种情况? 能不能继续调节电压输出?

    您可以检查下输出电压感应控制环路的输入和电压基准,看下这两个值是否正确。 然后可以检查下控制环路中的中间参数。

  • 1.测试条件:0V到72V直流电压输入,不使用SFRA的闭环控制,控制方式是 DCL_runPID_C1();函数DCL_runPID_C1()的返回值是-1;
    依旧可以调节输出电压。
    2.控制环路的感应输入电压跟输出电压设置的值有关,比如:设置的输出电压为5V,感应输入电压为1.041V;设置的输出电压为10V,感应输入电压为2.08V;
    电压基准具体指的是什么?是否是ADC采样的基准电压,如果是,那么电压基准是2.5V;若不是,电压基准是通过什么参数设置的呢?
    3.怎么判断输出电压感应控制环路的输入和电压基准两个值是否正确呢?闭环工作时需要两个值相等吗?

  • 您好,关于上一次的问题有什么答复吗?

  • 您好,目前还没有,我们先催促下工程师,周五前还没有给到您相应答复的话我们再来发邮件催促下工程师哈。

  • 您好,

    抱歉回复晚了。

    2.控制环路的感应输入电压跟输出电压设置的值有关,比如:设置的输出电压为5V,感应输入电压为1.041V;设置的输出电压为10V,感应输入电压为2.08V;
    电压基准具体指的是什么?是否是ADC采样的基准电压,如果是,那么电压基准是2.5V;若不是,电压基准是通过什么参数设置的呢?

    我们是说,您可以检查下 LLC_vSecSet_pu 和 LLC_VSEC_pu,看下这些参数在问题发生时是否有意义。

    对于闭环运行来说,感测值 LLC_VSEC_pu 应该接近参考值 LLC_vSecSet_pu。 如果由于 ADC 感应问题导致 LLC_VSEC_pu 出错,您将会看到控制环路输出的钳位。 

    另一个可能的原因是,在该测试条件下,它达到了最大控制值,这是因为系统增益不足,也就意味着您无法更改频率来控制输出电压(超出规格设置)。 请问下为什么用该低输入电压而不是400V 进行测试?

  • 1.我观察了 LLC_vSecSet_pu 和 LLC_VSEC_pu这两个参数,当参考输出电压变化时(即 LLC_VSEC_REF_VOLTS值改变时), LLC_vSecSet_pu也会变化,闭环运行时 LLC_VSEC_pu 应该接近参考值 LLC_vSecSet_pu,说明参数在问题发生时有意义。

    2.系统增益是否满足怎么判断?

    3.因为直接400V测试害怕硬件会烧坏,所以用低输入电压进行测试,输出也相应设置较低,比如输出设置在3V左右。请问对于LLC的低压输入电压有没有最小的限制?

  • 您好,

    能不能麻烦您再重新说一下您目前的问题具体是什么?

  • 您好,

    如果您使用100V 输入电压和3V 输出电压进行测试, LLC 增益应该不会是问题所在,因为它与400/12V 电压相同。

    不知道您现在的进展如何?或者说您是否有新的发现?