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.8035万:ILPFCkit问题

Guru**** 2564565 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/640984/tms320f28035-ilpfckit-question

部件号:TMS320F2.8035万

您好,

1.下面的"ILPFC_Base-Settings.h"中有代码。 我想是将数字转换为Q24格式,但为什么要将4095相乘,而不是4096?
#define VBUS_OVP_TRHRSHLD (((Int32)(((VBS/VBUS_MAX_SENSE 435.0)*4095*4095)))</s>4095

2.在ILPFC-DPL-ISR.ASM中,对于电压和电流回路控制(INCR_Build = 3),软件流的结束方式为:
读取ADC结果--> PFC ICMD --> CNTL_2P2Z电流控制--> PWM1寄存器更新-->计算1/(Vrms*Vrms)-->计算平均Vbus --> CNTL_2P2Z电压控制-->计算电压。
该顺序似乎不合理,因为我们必须先实施CNTL_2P2Z电压控制并获得输出,然后才能实施CNTL_2P2Z电流控制。 我们必须在控制CNTL_2P2Z电压之前计算电压。

3. 对于正弦分析器,为什么我们不设置阈值=0,这样的阈值有什么好处?
//正弦分析器初始化
Sine_mainsV.Vin=0;
Sine_mainsV.Iin=0;
Sine_mains.SampleFreq=_IQ15 (1万.0);
Sine_mains.threshold=_IQ15 (0.1);//(0.015);//(0.02);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1. 12位二进制数= 1111.1111万1111111=4095。111.1111万。</s>4095 因此对于Q24,您必须乘以4095*4095</s>4095

    2.不能,一旦从ADC获得电流反馈,您就可以快速实施电流控制器并更新PWM。 这将使当前循环计算和更新延迟保持在最小值。 电流回路比电压回路快得多,因此应尽量减少电流回路的延迟。 电压回路很慢,其回路BW约为10Hz,因此可被电流回路延迟。

    3.整流正弦波的阈值为零可能难以检测。 波形可能不会达到零。 因此最好使用非零阈值。 这不会改变频率或与电压相关的任何其他信息。

    Shamim
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢。 但我不太确定第一个答案,如果您将Q0数字转换为Q8,您将向左移动8,它等于乘以2^8,而不是乘以(2^8-1)。