关于HVPM_Sensorless_2833x电流采样的问题
[复制链接]
大家好,在HVPM_Sensorless_2833x程序中有关于电流采样的程序
#ifdef DSP2833x_DEVICE_H
clarke1.As=((AdcMirror.ADCRESULT1)*0.00024414-offsetA)*2*0.909; // Phase A curr.
clarke1.Bs=((AdcMirror.ADCRESULT2)*0.00024414-offsetB)*2*0.909; // Phase B curr.
#endif // ((ADCmeas(q12)/2^12)-offset)*2*(3.0/3.3)
我对这句话的理解是offsetA和offsetB是一个dsp对电机交流电流采样的一个偏置电压,为了保证可以采样负的电流值而在采样电路中设置一个Vref,所以这个值因每个人的电流采样放大电路各异所以也就不相同;但是这个值大约在0.5附近后面在乘上一个2,就可以保证AdcMirror.ADCRESULT1)*0.00024414-offsetA)*2在-1到+1之间变化,而后面的0.909也就是3.0/3.3的值,是把电流采样的输入电压进行标幺值处理;
以上是我对程序中这句话的理解,请大神指点一二,不知道上面的理解是否正确。
下面是我的主要困惑:
在HVPM_Sensorless_2833x程序中,可以看到是一个标幺值系统,请问
clarke1.As=((AdcMirror.ADCRESULT1)*0.00024414-offsetA)*2*0.909; // Phase A curr.
clarke1.Bs=((AdcMirror.ADCRESULT2)*0.00024414-offsetB)*2*0.909; // Phase B curr.
这两句话是不是说clark变换的输入必须是标幺值?在程序中定义了很多BASE_VOLTAGE 、BASE_CURRENT、 BASE_FREQ等等类似于这种值,请问在程序怎样进行标幺化的,一直不理解?、
问题有点多,请大家见谅,恳请大家帮忙解决问题,谢谢!!