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.

[参考译文] CCS/TMS320F28027:有关 TMS320F28027的问题:Piccolo HVPSFB (PCMC)

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/780097/ccs-tms320f28027-questions-about-tms320f28027-piccolo-hvpsfb-pcmc

器件型号:TMS320F28027

工具/软件:Code Composer Studio

尊敬的 TI 社区

我正在 HVPSFB 上开发 PCMC。

有问题。

  1. 2p2z 参数

    在「HVPSFB-Calculations.xls」中

    fz1、fz2、fp1、fp2、kdc 被设定为调整参数。

    我认为它们是指 KDC (s-fz1)(s-fz2)/(s-fp1(s-f p2)。

    然后从 连续时间更改为离散时间。

    这些是对的吗?

    另外,如何从 连续时间更改为离散时间?

  2. 比较器
    比较器侧的输入在 DacDrvCnf 处设置。

    但我在代码中找不到设置+side。

    它是在哪里设置的?


  3. 过流的更多信息

    当过流时、比较器2为高电平。

    之后、ePWM1 DCAEVT1发生、并且 ePWM1A/B 为低电平。

    但是、ePWM2的 DCAEVT1被分配为比较器1。

    因此、我想当过流时、ePWM2不是低电平。

    过流时为什么 ePWM2为低电平?

  4. 汇编器代码
    IN「HVPSFB-DPL-ISR.asm」第336行、

     LB  EXIT_ISR         ;大约127个周期,包括针对这个分支的4个周期

    但是、即使我进行了计数、也请参阅「TMS320C28x CPU 和指令集参考指南」、

    它不是127个周期。

    我认为、

    「EALLOW」为4个周期。

    通过时、「B」为4周期。 跳转时为7个周期。

    「lb」为4周期。

    「ADCDRV_4ch」为14个周期

    「ADCDRV_1CH」为5个周期

    「DACDRV_RAMP」为9个周期

    「CNTL_2P2Z」为36个周期

    「EDIS」为4个周期

    「IRET」为8个周期

    另一个是1个周期。

    是这样吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我将研究上述问题。 我将根据美国 CST 时间的具体情况提供最新信息。

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

    所有这些参数都已经基于 Z 域。
    例如:Kdc (z - fz1)(z - fz2)/((z - fp1)(z - f p2))。

    2、+side 是电流反馈值、它来自用作比较器/ADC 的 GPIO。 您可以参考器件 TRM 中的模拟子系统方框图来找到它。 它完全基于模拟连接。 无需代码设置。

    我不确定这一点、可能是因为一旦 EPWM1A/B 没有输出、续流电流将通过 EPWM2B 或 EPWM2A 下降到零。 我将就此向您回复。

    4.你可能是对的,因为它是一个旧的评论。 我也会就此向您返回。

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

    1.then 、KDC(z - fz1)(z - fz2)/((z - FP1)(z - f P2))=KDC(z^2-(fz1+fz2) z+fz1*fz2)/(z^2-(FP1+FP2) z+FP1*FP2)

    =Kdc (1-(fz1+fz2) z^(-1)+fz1*fz2*z^(-2))/(1-(FP1+FP2) z^(-1)+FP1*FP2*z^(-2))。

    它与(b0+b1*z^(-1)+b2*z^(-2))/(1+a1*z^(-1)+a2*z^(-2))进行比较,

    B0=KDC

    b1=-Kdc (fz1+fz2)

    b2=KDC*fz1*fz2.

    A1=-(FP1+FP2)

    A2=FPA*FP2

    但是,在 Excel 计算中,

    值为基准值。

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

    我想我上次没有正确解释。 是的、它已从 s 域更改为 Z 域。 请看下面的两个主题。
    e2e.ti.com/.../428178
    e2e.ti.com/.../53646

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

    我检查了这些线程。
    但在线程中、
    不会告知以下表达式的含义


     fs=100000;//100kHz
     fz1=2000;
     fz2=(FS/3.14);
     FP2=(FS/3.14);
     FP1=0;
     KDC=6000;
     pi=3.14;wz1 = 2*pi*fz1;
     wz2=2*pi*fz2;
     WP1 = 0;f//积分器极点、f=0
     WP2 = 2*PI*FP2;
     


     WR = sqrt (wz1*wz2);
     q = wz1*wz2/(wz1+wz2)*wr);
     
     C2 = KDC/(wr*wr);
     C1 = KDC/(Q*wr);
     C0 = KDC;
     
     D2 = 1/WP2;
     D1 = 1;
     D0 = 0;
     
     DEN = 4*D2*FS*FS + 2*D1*FS + d0;
     
     B0_I =(4*C2*FS*FS + 2*C1*FS + c0)/DEN;
     b1_i =(-8*c2*fs*fs          + 2*c0)/den;
     b2_i =(4*c2*fs*fs - 2*c1*fs + c0)/den;
     
     a1_i =((-8*d2*fs*fs          + 2*d0)/den)*-1.0;
     a2_i =((4*d2*fs*fs - 2*d1*fs + d0)/den)*-1.0;

    我想知道表达式上方的推导过程。


    和、
    在该线程中编码到「DiscretePIDcontroller.pdf」、
    微分项使用 s =(z-1)/Tz。
    积分项使用 s=(2*(z-1)/(T*(z+1))。

    然后
    关于 K (s - fz1)(s - fz2)/(s - FP1)(s - FP2)、
    哪些 s 是 s =(z-1)/Tz 或 s =(2*(z-1))/(t*(z+1))?

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

    尊敬的用户5277039:

    我不确定在本例中它到底是如何推导出来的。 该函数可能稍有不同、但应非常接近第32页(www.ti.com/.../spruhz5a.pdf)中显示的2p2z 函数。 另外,根据这两个文件,它是根据 s=(2*(z-1)/(T*(z+1))计算得出的。 基本而言、它执行系数映射。

    www.ti.com/.../slua622.pdf 第13页
    www.ti.com/.../spruhz5a.pdf 第32页

    此致,

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

    感谢您的支持。

    我想看这篇文档。