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

28379D做永磁同步电机控制感觉电流环影响速度环带宽,速度环始终调不好

在学习用28379D做永磁同步电机控制,先说一下我的方案,我是有感方案,有测角传感器,有测速传感器,角度速度都不用估计。

我的程序框架是参考了TI推荐的FCL例程自己写的,当然park变换,SVPWM这些肯定还是用的TI的电机函数库。虽然没有做到FCL的电流环代码执行时间1us,但是我自己写的框架也基本做到了电流环执行时间1.5us,也达到了FCL文档中说的电流环执行时间最好小于2us的指标。电流环Id的阶跃响应我觉得也还可以。但是发现的问题就是感觉电流环会影响速度环带宽,加了电流环后我的速度环增益始终上不去,刚度也上不去。反倒是让电流环开环,直接控制速度环时速度环的增益,刚度都可以提上去。我之前一直以为是我自己的电流环做的不好,但是经过仔细对比,不论从电流环执行时间,还是电流环阶跃响应,我觉得都跟FCL例程差不多了,但是实际效果并不好。照理说FCL和28379D是TI从去年到今年主推的永磁同步电机FOC方案,在文档中也提到这种方案可以实现高精度的永磁同步电机控制,但是我做出来后感觉并不是很理想,别说高精度,最直接的问题就FOC电流闭环时甚至达不到电流环开环时的效果!尤其是电流环闭环后,速度环增益和带宽反而提不上去了,很是恼火。我实在是不知道问题出在哪,求指点。

PS:之所以不直接用FCL例程,是因为FCL例程库被封死了,并且只支持编码器,电流环kp,ki也不能自己调,用起来不太方便。

shuai ma:

应该可以调节,在main中看见这样一段代码

//Initialize Fast current loop variables here fast_current_loop_vars_init();

pi_id.Kp = _IQ(1.0); //_IQ(LS * CUR_LOOP_BW); pi_id.Ki = _IQ(T/0.04); //_IQ((RS * T) * CUR_LOOP_BW); pi_id.Kerr = (pi_id.Ki*0.5) + pi_id.Kp, pi_id.KerrOld = (pi_id.Ki*0.5) – pi_id.Kp; pi_id.Umax = _IQ(0.5) * maxModIndex; pi_id.Umin = _IQ(-0.5) * maxModIndex;// pi_id.i1 = pi_id.ui = 0; pi_id.Ref = 0;

// Init PI module for IQ loop pi_iq.Kp = pi_id.Kp; pi_iq.Ki = pi_id.Ki; pi_iq.Kerr = (pi_iq.Ki*0.5) + pi_iq.Kp, pi_iq.KerrOld = (pi_iq.Ki*0.5) – pi_iq.Kp; pi_iq.Umax = _IQ(0.8) * maxModIndex; pi_iq.Umin = _IQ(-0.8) * maxModIndex;// pi_iq.i1 = pi_iq.ui = 0; pi_iq.Ref = 0;

赞(0)
未经允许不得转载:TI中文支持网 » 28379D做永磁同步电机控制感觉电流环影响速度环带宽,速度环始终调不好
分享到: 更多 (0)