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.

[参考译文] ePWM操作控制器

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/578224/epwm-action-controller

主题中讨论的其他部件:TMS320F2808

您好,先生,

我正在研究BLDC电机控制应用。 我正在将TMS320F2808 DSP控制器用于此应用。

工作代码从2407迁移到2808,以控制BLDC电机需要6个PWM脉冲。

根据生成PWM脉冲的顺序,从霍尔传感器获得3个信号。

PWM脉冲的命名如下所示

Epwm1A -> R (顶部), Epwm1B-> R (底部) Epwm2A -> Y (顶部), Epwm2A -> Y (底部), Epwm3A -> B (顶部) Epwm3B -> B (底部)

霍尔传感器序列  

A B C       PWM模式

o  1.       Y (顶部)和 R (底部)   

o 1 1 1        Y (顶部)和 B (底部)  

0 1 0       R (顶部)和 B (底部)  

1 1 0        R (顶部)和 Y (底部)  

1 0 0        B (顶部)和 Y (底部)  

1 0 1        B (顶部)和 R (底部)  

要获得上述 PWM模式,我使用以下操作设置

案例1.(0 0 1):

    

EPwm1Regs.AQCSRC.bit.CFFA = 2;
EPwm1Regs.AQCSFRC.bit.CSFB = 0;
EPwm2Regs.AQCSFRC.bit.CSFA = 0;
EPwm2Regs.AQCSFRC.bit.CSFB = 2;
EPwm3Regs.AQCSFRC.bit.CSFB = 2;
EPwm3Regs.AQCSRC.bit.CFFA = 2;


EPwm2Regs.AQCTLA.bit.CAU = AQ_CLEAR;
EPwm2Regs.AQCTLA.bit.CAD = AQ_SET;


EPwm1Regs.AQCTLB.bit.CAU = AQ_SET;
EPwm1Regs.AQCTLB.bit.CAD = AQ_Clear;


EPwm1Regs.CMPA.Half.CMPA=EPwm1Regs.CMPB=((PWM_BY_4)-占空比);
EPwm2Regs.CMPA.Half.CMPA=EPwm2Regs.CMPB=((PWM_BY_4)+占空比);


案例2. (0 1 1 1):

EPwm1Regs.AQCSRC.bit.CFFA = 2;
EPwm1Regs.AQCSFRC.bit.CSFB = 2;
EPwm2Regs.AQCSFRC.bit.CSFA = 0;
EPwm2Regs.AQCSFRC.bit.CSFB = 2;
EPwm3Regs.AQCSRC.bit.CFFA = 2;
EPwm3Regs.AQCSFRC.bit.CSFB = 0;


EPwm2Regs.AQCTLA.bit.CAU = AQ_CLEAR;
EPwm2Regs.AQCTLA.bit.CAD = AQ_SET;


EPwm3Regs.AQCTLB.bit.CAU = AQ_SET;
EPwm3Regs.AQCTLB.bit.CAD = AQ_Clear;


EPwm2Regs.CMPA.Half.CMPA=EPwm2Regs.CMPB=((PWM_BY_4)+占空比);
EPwm3Regs.CMPA.Half.CMPA=EPwm3Regs.CMPB=((PWM_BY_4)-占空比);


在case1中,Y (顶部)和R (底部)脉冲被释放,所有其他脉冲被强制为高,

同样,在case2中,Y (顶部)和B (底部)脉冲被释放  ,所有其它 脉冲被强制设置为高,

问题是当从R (底部)更改为B (底部)时,会出现延迟,这是延迟问题

当所有序列中相应的底部脉冲发生变化时,将会出现,但当顶部脉冲发生变化时,不会有延迟

由于此问题,BLDC电机中的电流波形不正确。

  下图是其中一个序列的顶部脉冲

如果我们观察到发生切换时的脉冲模式,则会出现两个顶部脉冲,没有延迟。

  下图是相同序列的底部脉冲

 

如果我们观察到发生切换时的脉冲模式,则会延迟两个底部脉冲,正好是PWM_BY_4的一半。

由于这种延迟,当我们观察到负区的电流波形时,负峰值处的电流会突然骤降,几乎为零

同样  ,当我反转操作限定符集和清除位时,在顶部脉冲中会观察到问题。

图示为当顶部脉冲延迟时获得的电流波形下方

如果我们观察到正循环和负循环,则由于顶部脉冲中的延迟问题,正循环的中间会出现几乎为零的突然骤降

同样, 当底部脉冲延迟时,负周期的中间会出现几乎为零的突然骤降

比较值在 零或周期加载到阴影寄存器,占空比是PWM_by 4的90 %。 当我使用具有相同代码和相同驱动器和电机的TMS320f2407 DSP时,不会发生此问题

 请帮助我解决这个问题

 谢谢,顺祝商祺

Madhu Sagar M D

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

    我正在努力让您与正确的人员联系,以回答您的问题。

    我们要指出,这两种设备之间有很大的不同。 如果您要进行迁移,我们强烈建议您为您的应用程序选择比F2808更新的设备。 我们的Piccolo类器件(如F2802x和F2803x)可能会考虑一些器件。

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

    您好,Kris,

     感谢 您的重播。

    我请求您尽快找到解决方案,因为由于此问题,项目正在延迟。

     谢谢,顺祝商祺

      Madhu

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

    您好,Kris,

    您是否对此问题有任何提示。

    请分享与此相关的详细信息。

    此致

    Madhu Sagar M D

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

    您好,Kris

    我们找到了问题的解决方案。

    感谢您的支持

    此致

    Madhu Sagar M D