Part Number:TIDA-010062Other Parts Discussed in Thread:TIDM-02008
不知版主,有没有拿到资料,也分享一下。我也比较关注
yao zhang:
最好能有一份文档解释,电流环,和电压环 算法
、代码中计算电流环代码如下:
TTPLPFC_gi_out = GI_RUN(&TTPLPFC_gi,TTPLPFC_ac_cur_sensed_pu,TTPLPFC_ac_cur_ref_inst_pu);
2、输出前馈代码如下,该怎么理解?
TTPLPFC_dutyPU = ( TTPLPFC_gi_out + (TTPLPFC_ac_vol_sensed_pu *(float32_t)TTPLPFC_VAC_MAX_SENSE_VOLT /(float32_t)TTPLPFC_VDCBUS_MAX_SENSE_VOLT)- TTPLPFC_inductor_voltage_drop_feedforward )/ (TTPLPFC_vBus_sensed_pu);
3、计算电感电压降前馈代码如下,该怎么理解?
TTPLPFC_inductor_voltage_drop_feedforward = -(float32_t)1.0 *(TTPLPFC_ac_cur_ref_inst_pu -TTPLPFC_ac_cur_ref_inst_prev_pu) *((float32_t)TTPLPFC_PFC_INDUCTOR_VALUE *TTPLPFC_CONTROL_ISR_FREQUENCY *TTPLPFC_IL_MAX_SENSE_AMPS /TTPLPFC_VDCBUS_MAX_SENSE_VOLT);
TTPLPFC_ac_cur_ref_inst_prev_pu = TTPLPFC_ac_cur_ref_inst_pu;
4、这部分代码的意义
if(fabsf(TTPLPFC_vBusRef_pu – TTPLPFC_vBusRefSlewed_pu) > 0.0001f) { if(TTPLPFC_vBusRef_pu > TTPLPFC_vBusRefSlewed_pu) { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRefSlewed_pu + 0.0001f; } else { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRefSlewed_pu – 0.0001f; } } else { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRef_pu; }
,
Ben Qin:
你好,我将咨询相关资深工程师,一旦有回复会立即回复您。
,
yao zhang:
好的,多谢
,
Ben Qin:
不客气
,
dd ss:
请问一下版主,有这个代码的解释了吗,我也想知道
,
Ben Qin:
yao zhang 说:最好能有一份文档解释,电流环,和电压环 算法
对于TTPL PFC,你可以参考TIDM-02008用户指南。
yao zhang 说:
代码中计算电流环代码如下:
TTPLPFC_gi_out = GI_RUN(&TTPLPFC_gi,TTPLPFC_ac_cur_sensed_pu,TTPLPFC_ac_cur_ref_inst_pu);
GI_Run是一个控制循环函数。输入是参考电流和反馈电流。gi 包含控制函数的系数。
yao zhang 说:输出前馈代码如下,该怎么理解?
你可以参考TIDM-02008用户指南。
yao zhang 说:if(fabsf(TTPLPFC_vBusRef_pu – TTPLPFC_vBusRefSlewed_pu) > 0.0001f) { if(TTPLPFC_vBusRef_pu > TTPLPFC_vBusRefSlewed_pu) { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRefSlewed_pu + 0.0001f; } else { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRefSlewed_pu – 0.0001f; } } else { TTPLPFC_vBusRefSlewed_pu = TTPLPFC_vBusRef_pu; }
这只是为了控制输出电压参考在您更改参考时线性上升。