TMS320F280049C: 用SPLL对AC电进行锁相

Part Number: TMS320F280049C

我使用SPLL对AC电进行锁相,目的是检测AC电的过零点

SPLL的配置如下

AC电频率配置为50Hz,

    如果给的实际的AC电的频率也是50Hz,那么AC电的过零点检测就很准确

    如果给的实际的AC电的频率不是50Hz,那么AC电的过零点检测就会有偏差,频率差的越多,过零点的偏差会越大

1)请问这个问题应该如何解决

2)SPLL_1PH_SOGI_config函数的最后两个参数是干什么用的,过零点检测偏差会不会和这两个参数的配置值不准确有关系?

// 定义SPLL

SPLL_1PH_SOGI spllForGrid;    

// SPLL初始化配置
SPLL_1PH_SOGI_reset(&spllForGrid);
SPLL_1PH_SOGI_config(&spllForGrid, 
                                           50,                   // AC_FREQ,
                                           25L*1000,       // SPLL_CHECK_FREQUENCY,
                                           166.9743385,
                                           -166.2661165);
SPLL_1PH_SOGI_coeff_calc(&spllForGrid);

// 调用SPLL进行锁相
SPLL_1PH_SOGI_run(&spllForGrid, gridVoltAdcValueForSpll);