请教一下TMDSHVMTRPFCKIT(version2.0)问题!
最近我们这里买了几套TMDSHVMTRPFCKIT套件,我们现在需要控制永磁同步电机,我们现在在研究带传感器的永磁同步电机控制,其中程序中有几点不是很明白。
疑问1、一般永磁同步电机的启动必要条件就是要知道转子初始角。可是在该程序中并没有看到这个控制,我看了pmsm3_1可以加直流电压然后给angle一个角度让转子和A相角度相重合。
疑问2、程序中很多是标幺值的,那这个标幺值的基准值是如何选择的呢,我看在HVPM_Sensored-Settings.h里面有
#define BASE_VOLTAGE 236.14 // Base peak phase voltage (volt), Vdc/sqrt(3)
#define BASE_CURRENT 10 // Base peak phase current (amp), Max. measurable peak curr.
#define BASE_TORQUE // Base torque (N.m)
#define BASE_FLUX // Base flux linkage (volt.sec/rad)
#define BASE_FREQ 200 // Base electrical frequency (Hz)
这几句话就是基准值吧,那这个是怎么选的呢,是最大值作为基准值吗?如果是的话,那么转速基准值就是200x60/8=1500(我的电机极对数是8),难道转速最大值才是1500转吗?
疑问3、ADC是如何采集数据的?程序中就看到了宏ADC初始化也有计算,但中断程序里面没有ADC采样啊,就是没有调用ADC_cal,只有这些
clarke1.As = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT1)-offsetA); // Phase A curr.
clarke1.Bs = _IQmpy2(_IQ12toIQ(AdcResult.ADCRESULT2)-offsetB); // Phase B curr.
这是什么意思呢,难道说转换完了就已经将结果放在AdcResult.ADCRESULT1了吗?
疑问4、程序时如何进行中断的,怎么没有eqep中断呢?