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.

[参考译文] TMS320F2.8027万:尝试增加负载变化的PID响应

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/579995/tms320f28027-trying-to-increase-pid-response-on-a-load-change

部件号:TMS320F2.8027万
主题中讨论的其他部件:UCD3138controlSUITEC2000WARE

大家好!

我想在TMS320上更改模拟PWM UC... 我有一个降压转换器,它需要调节输出电流(而不是电压!),因此输出电容器几乎不存在。 I`m将 LEM用作传感器。 例如,有500 Hz的负载频率(可在0至5 KHz之间更改) 换向短路,R=5欧姆。

之前有一个模拟调节器,速度更快。 电流过冲的幅度至少在3倍内小于 。 我`m尝试某种方式来提高TMS320速度。  在适用于ucd3138的SLUA708中,有一个2.2 “PI控制器的固件实施”,似乎有 机会根据错误更改增益。 F_PWM=50kHz (T=20us)。 我写了一些粗码来尝试
中断void CPU_timer2_ISR(void)-自周期开始以来的5 us每个周期:

diff = ADC_Vout1 - Vout_Ref_wInj;

IF (diff > 90万)//约1 A量级
{//
 CpuTimer2.InterruptCount++;
 Pgain = 4000;
 Igain = 1;
 CpuTimer2Regs.tcr.bit.tie = 0;//stop timer2
 IF (CpuTimer2.InterruptCount > 5 && flag_top == 0)//新增益在短时间内不应超过5次
 {
  Pgain = 2500;//
  增益= 80;
  CpuTimer2.InterruptCount = 0;
  Flag_Trip = 1;
 }
}

如果(diff <= 90万)//如果误差小于1 A,则使用小增益

 Flag_Trip = 0;
 Pgain = 2500;
 增益= 80;
 CpuTimer2.InterruptCount = 0;
}

这比仅仅2500或4000的情况更糟,因为 振荡。 您n`t:为什么从 一开始就不使用Pgain = 4000! 我`ll也有振荡。 有这样一种依赖性:大增益-振荡和不稳定的系统,小增益-大过冲。 这是通常和合乎逻辑的。

有人能n`t一些工作源代码片段(我无法找到ucd3138 PWR026 PFC EVM 源代码)吗? TMS320的这种方法是否有任何意义?  有人会为这种负载模式提供某种方法吗? `s不可能得到与模拟控制器相同的结果,但 我想 尽可能接近它。

非常感谢您的帮助!

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

    此技术有时称为"增益调度"。 它可以很好地发挥作用,我们已经在两个C2000套件上实施了它:高电压交错升压PFC和(最近) 3相维也纳整流器。 两者都可以在controlSUITE中找到。 我附加了一张幻灯片,其中显示了前一个(升压PFC)套件的控制响应。  升压PFC代码以汇编代码的形式写入,并在定点F2.8035万上运行(与F2.8027万类似)。 Vienna套件以C语言编写,并在浮点F2.8377万D上运行。

    有一个新的浮点器件(F2.8004万x),它具有一些用于数字电源控制的好功能。 您可以看到的另一种方法是真正的非线性控制定律;浮点数字控制库(DCL)中有一种,您可以在C2000Ware中找到它。 我附上该库的用户指南中的相关页面。 在具有50kHz切换频率的100MHz F28.0049万上,您可以使用2000 周期,因此这种方法可能是可行的。

    我希望这能有所帮助。

    此致,

    Richard

    e2e.ti.com/.../Non-Linear-Control-of-Voltage-Loop-ILPFC.pdf

    e2e.ti.com/.../Pages-from-SPRUID3.pdf

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

    非常感谢! 我`ll这一点。