TI中文支持网
TI专业的中文技术问题搜集分享网站

FOC电机控制技术

我现在做的是纯开环。具体的情况我简单说一下,码盘用的是旋转变压器,可以读到电机转子的位置,我是在SVPWM模块输入Ualpha,Ubeta均设定为常数,电机转子转到特定位置,这时读出电机转子的位置作为零位置。然后我加入帕克反变换,其输入参数Iq=0.15,Id=0,按照我的理解的话,电机应该可以转,但是电机一上电,转子被定位在一个某个位置,用手拧也拧不动。我的以上这些都没加PI调节,PWM中断的频率是12K。我不清楚我的哪里出错了,还望不吝赐教!

Joey Mao:

guosheng zhu,

根据你的现象有几点建议,仅供参考:

观察变量输出是否是预期值,例如Ud、Uq,还有角度模块的输出正余弦值;

反park变换的输入Ds、Qs确认没有弄反;

减小输入参数Iq,到能用手转动电机,观察角度等变量的输出判断一下是否正常变化。

我现在做的是纯开环。具体的情况我简单说一下,码盘用的是旋转变压器,可以读到电机转子的位置,我是在SVPWM模块输入Ualpha,Ubeta均设定为常数,电机转子转到特定位置,这时读出电机转子的位置作为零位置。然后我加入帕克反变换,其输入参数Iq=0.15,Id=0,按照我的理解的话,电机应该可以转,但是电机一上电,转子被定位在一个某个位置,用手拧也拧不动。我的以上这些都没加PI调节,PWM中断的频率是12K。我不清楚我的哪里出错了,还望不吝赐教!

mingguang liu1:

回复 Joey Mao:

楼主需要确认的:

1、通直流时,Ualpha = 固定值,Ubeta=0,Angle=0;这时能够看到电机稍微旋转。

2、开环让他转起来,则Id=0,Iq=固定值即可。

电机没有旋转最大的可能是你加的电压正好滞后90°。

我现在做的是纯开环。具体的情况我简单说一下,码盘用的是旋转变压器,可以读到电机转子的位置,我是在SVPWM模块输入Ualpha,Ubeta均设定为常数,电机转子转到特定位置,这时读出电机转子的位置作为零位置。然后我加入帕克反变换,其输入参数Iq=0.15,Id=0,按照我的理解的话,电机应该可以转,但是电机一上电,转子被定位在一个某个位置,用手拧也拧不动。我的以上这些都没加PI调节,PWM中断的频率是12K。我不清楚我的哪里出错了,还望不吝赐教!

guosheng Zhu1:

回复 Joey Mao:

我换了台电机,我原先的程序里offset_angle测的不正确,电机可以开环转了。感谢您!如果电机的相电流比较小的话,可以加电流环吗?

我现在做的是纯开环。具体的情况我简单说一下,码盘用的是旋转变压器,可以读到电机转子的位置,我是在SVPWM模块输入Ualpha,Ubeta均设定为常数,电机转子转到特定位置,这时读出电机转子的位置作为零位置。然后我加入帕克反变换,其输入参数Iq=0.15,Id=0,按照我的理解的话,电机应该可以转,但是电机一上电,转子被定位在一个某个位置,用手拧也拧不动。我的以上这些都没加PI调节,PWM中断的频率是12K。我不清楚我的哪里出错了,还望不吝赐教!

mingguang liu1:

回复 guosheng Zhu1:

楼主的电机是永磁同步电机吧。

在空载条件下,忽略损耗和摩擦,令Id=0,这时的Iq也接近0,电机电流非常小,Iq稍微增加,电机的转速就会上去。

因此,外环需要速度环,内环需要电流环。这是基本的矢量控制方法。

赞(0)
未经允许不得转载:TI中文支持网 » FOC电机控制技术
分享到: 更多 (0)