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.

[参考译文] 如何基于 SFRA 成功测量降压转换器的频率响应

Guru**** 2589330 points
Other Parts Discussed in Thread: SFRA

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/856023/how-to-measure-successfully-the-frequency-response-of-the-buck-converter-based-on-sfra

主题中讨论的其他器件:SFRA

尊敬的支持:

  我‘s SFRA 工具来获取控制 F28035的降压转换器系统的受控体和开环频率响应。根据 SFRA 模块用户指南、我添加了必要的代码和功能。现在、我发现最近测得的结果与理想输出不同。 但整个系统不稳定且具有强振荡、因此我无法使用补偿设计器来设计补偿器。    因此、您能否为我提供有关如何测量降压转换器正确波特图的帮助、我将不胜感激、谢谢。谢谢。

这张图片描述了理想的结果。

下一张图片是我自己衡量的不满意的结果

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

    user6184829、

    我注意到您在 SFRA GUI 的数学模式中选择了"浮点"。  我的理解是、F2803x 不包含本机 FPU、因此您可能在程序中使用定点 IQ 数学运算?  如果是、您将需要改用"定点"选项。

    Tommy

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

    很抱歉、实际上2806x 是我的微控制器、最终得出了一个原生 FPU、其中在 SFRA GUI 的数学模式中选择了正确的"浮点"。我认为还有其他因素会导致更差的结果。谢谢。   

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

    您能否确认您的控制软件是否使用 FPU 浮点表示法而不是 IQmath?  有些示例甚至在包含 FPU 硬件的器件上使用 IQMath。  GUI 选择应与软件实现匹配、而不是与硬件可用性匹配。

    您是否正在使用 TI 创建的软件示例和硬件、或者是定制的?

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

    首先、感谢您花时间回答我的问题。上图是 TI 创建的软件示例、其中包含了当前项目、2806x 是我的微控制器、最后是本机 FPU。但是、硬件平台是由我自己根据 TI 的示例进行开发的。

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

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

    user6184829、

    在我看来、该示例使用定点 IQ 数学。

    cntl3p3z_vars1.Fdbk=_IQsat ((((float32) Vout1R*ADC_pu_scaling)-offset_Vout)、1.0、0.0);
    
    //更新 PWM 值
    EPwm1Regs.cmpa.half.cmp=_IQ24mp1 (((long)(buck_pwm_period)、cn3vrq1s.fp3z_str1
    
    ;cntlp3vran.fp3p3r1;cntlps1 

    您还可以检查 SFRA 扫描数据数组的内容以确认:

    float32 Plant_MagVect[SFRA_FREQ_LENG];
    float32 Plant_PhaseVect[SFRA_FREQ_LENG];
    float32 OL_MagVect[SFRA_FREQ_LENG];
    float32 OL_PhaseVect[SFRA_FREQ_LENG];
    float32 FreqVect[SFRA_LENG] 

    我认为在 GUI 中尝试定点选项是有道理的。