1.前言
在之前的之后中已经发过一篇复矢量电流环和我们平时用的比较多的前馈补偿的电流环的对比,感觉复矢量电流环的效果还是挺明显的。
https://zhuanlan.zhihu.com/p/682880365https://zhuanlan.zhihu.com/p/682880365
当时在看文献的时候,复矢量电流环一般都和“有源阻尼”联系在一起,但是迫于当时个人水平比较低,搭出来的模型和论文里展示的效果不同一样。
这两天花了些时间看了看,大概能明白个皮毛了。也能看到明显的仿真效果。
电流环中的“有源阻尼”有什么作用呢?参考参考 Sang-Hoon Kim大神的 书,这一版可以在他的IEEE主页下载。
(以下内容截取原文)“如第2.3节所述,在单独励磁直流电机的控制中,通过增加电枢电阻和/或摩擦系数,系统的阻尼增加,且对电压阶跃输入的速度响应的振荡较小。然而,摩擦和阻力降低了控制系统的效率。与被动阻尼器不同的是,如图4.2所示,通过反馈控制增加主动阻尼器,可以将振荡的欠阻尼器响应改变为过阻尼器响应。
在图4.2中,通过将Ractive与Ra一起添加,电枢电阻增加了Ractive,并且系统的特征值发生了变化。此外,如果Ractive比Ra大得多,则带主动阻尼器的控制器对电枢电阻Ra的变化具有较强的鲁棒性。同样的原理也可以应用于摩擦的情况,系统的摩擦力B可以通过主动阻尼器来控制。从这个例子可以看出,根据控制框图和对系统的物理理解,可以使用反馈控制来主动插入阻尼项,以增强控制系统的动态性能。这种通过反馈对系统特征值的操作在现代控制理论中被称为状态反馈控制。”
从我自己的理解来看,相当于在电流环中加了一个电阻,这个电阻的作用相当于增大了系统传递函数中的电阻阻值,进而改变了系统的惯性时间常数。
其他的参考文献可以看看下面这些:
2.有源阻尼电流环的仿真搭建
下面这是截取的一些有源阻尼电流环的框图。
根据上面这个Fig.5.,“有源阻尼”就是在原来电流环的基础上改进2点:
- 在积分器回路给电流误差延时两拍,并且乘上有源阻尼电阻R_active,最后加在输出上。
- 在电压输出的末端,减去电流与有源电阻R_active的乘积。
有源电阻R_active的最佳取值是多少呢?上面的论文也给了答案。
3.500Hz电流环带宽下的仿真波形
无特殊说明的情况下,以下仿真用的电流环都是用传统的PI+前馈补偿。
这里注意一个问题,我们平时的电流环,用带宽配置法,一般是Kp=wc*Ls,Ki=wc*Rs,其中wc=2*fc*pi。我说的500Hz电流环带宽指的就是fc=500Hz。但是我上面发的那几篇IEEE trans论文里,他们用的都是离散的电流环,可以看到他们的电流环增益K一般就取0.2,0.3.
为什么他们论文的电流环增益的那么低?我推导了一下,如果我没算错的话,他们离散电流环的K=wc/fs,fs是控制频率。以K=0.3,fs=10kHz,为例子,那它们论文里这时候对应的wc就是3000,对应的频率就是477Hz。
仿真参数:
Ts = 5e-7;%仿真步长
Tpwm = 1e-4;%开关周期
Tsample = Tpwm/1;%采样周期/控制周期
Tspeed = Tsample;%转速采样周期
Pn = 4;%电机极对数
Ls = 5e-3;%定子电感,采用隐极的,Ld=Lq=Ls
Rs = 1;%定子电阻
flux = 0.1688;%永磁体磁链
Vdc = 500;%直流母线电压
iqmax = 20;%额定电流
Tdead = 1e-6;%死区时间
J = 2e-3;%转动惯量
B = 2e-3;%阻尼系数
n_init = 1000;%初始转速
fc_lpf = 300;%转速计算的低通滤波器截止频率
%转速环PI参数
Kpw=0.25;
Kiw=50;
%电流环PI参数
Ld1 = Ls;
Lq1 = Ls;
flux1 = flux;
Rs1 = Rs;
fc = 500;%电流环带宽
ActiveRs = 0;%有源阻尼参数
t_interrupt = 0.1;%扰动突加时间
3.1 0RPM启动波形
我们先来看看从0速开始加速到2000RPM时的启动电流波形。
根据上面的电机参数,以及最佳有源电阻R_active_opt的计算公式,可以算出,最佳的最佳有源电阻R_active_opt = 12.1。那我下面取R_active为0、5、10、12.1、15,来对比看看效果。
从上面几个波形可以看到:
R_active=0时,q轴电流并没有快速跟随参考值,还是有点静差的;
R_active=5/10时,q轴电流能跟上参考值了,但是超调量有点大;
R_active=12.1时,q轴电流虽然还有点超调量,但是调节速度明显快了不少,能快速跟上参考值;
R_active=15时,q轴电流不能快速跟上参考值,存在明显静差。至于为什么有源电阻太大时,电流参考值和实际值之间会存在静差,这是与电压有关的,待会后面解释一下。
3.2 抗扰性能
为了验证电流环的抗扰动性能,我在0.1s时,给电流环的PI输出上,突加20V的电压指令。
从上面几个波形可以看到:
R_active=0,在d-q回路突加20V的电压扰动下,d-q电流出现了明显的波动,且在经过0.05s后,实际电流仍没有跟上参考电流;
R_active=5/10/12.1/15时,在d-q回路突加20V的电压扰动下,d-q电流出现了较小的波动,实际电流能够跟上参考电流;而且,有源电阻越大,电流的波动越小。
4.电压对有源阻尼的影响
这里解释一下为啥前面在有源电阻R_active太大时会出现静差。回过头去看一下有源阻尼电流环的输出,其电流环输出等于PI调节器输出再减去一个(R_active*i)。
以刚才的情况为例子,我的电流i是20A,那我R_active=15的时候,这时候R_active相当于消耗了300V的电压,而我的直流母线电压是500V,逆变器最大输出电压是(500/根号3)V,这样一算,实际上没有多少电压是在电机上的。
或者从下面这个式子也可以看出来,有源电阻R_active越大,产生相同电流需要的电压就越大。
我们来看看R_active=12.1时,不同电压情况下的仿真效果。
可以看到,在有源阻尼为R_active=12.1情况下,400V电压就出现了电流静差。
但是这里注意一个问题啊!有源阻尼R_active=12.1,只是一个虚拟的电阻,实际上是不消耗电压的,它只是会让电流环输出的电压极限变小。那我可以把电流环的电压限幅给高一些,比如实际直流母线电压Vdc有500V,但是我把电流环里面用到的Vdc设置为800V。这样就可以解决这个问题。
我感觉我这个解释有点难懂,自己试一试大概就明白了。下面是仿真波形。
关于这个电压对有源阻尼的影响,我没有参考文献,没看到有人说过这个事。这一小节的东西,都是我自己的臆想而已,说法不一定对(看看就好)。
5.复矢量电流环的有源阻尼控制
5.1复矢量电流环的有源阻尼控制仿真出现的问题
Ts = 5e-7;%仿真步长
Tpwm = 1e-4;%开关周期
Tsample = Tpwm/1;%采样周期/控制周期
Tspeed = Tsample;%转速采样周期
Pn = 4;%电机极对数
Ls = 5e-3;%定子电感,采用隐极的,Ld=Lq=Ls
Rs = 1;%定子电阻
flux = 0.1688;%永磁体磁链
Vdc = 500;%直流母线电压
iqmax = 20;%额定电流
Tdead = 1e-6;%死区时间
J = 2e-3;%转动惯量
B = 2e-3;%阻尼系数
n_init = 1000;%初始转速
fc_lpf = 300;%转速计算的低通滤波器截止频率
%转速环PI参数
Kpw=0.25;
Kiw=50;
用上面仿真参数时,发现,我的复矢量电流环控不好,如下图所示。
而以前我的模型是没问题的,找了一下原因,发现是转速环低通滤波器的问题。实际转速和控制器里面得到的转速有相位滞后,如下图所示。
复矢量电流环结构如下图所示。这里注意,由于解耦项设置we,又因为我转速滤波有滞后,就导致解耦项的we不是真实的we,最终导致实际电流环无法实现完全的d-q解耦。
那既然是我转速滞后太大,我直接把转速环低通滤波器的截止频率调高一些就好了。下面把低通滤波器的截止频率从300Hz改成600Hz。
如果转速环仍采用300Hz,要解决电流波动,可以直接加上有源阻尼。
从上面可以看到,当有源阻尼电阻开始增加的时候,转矩在进入稳态时的波动明显减小;而且,随着有源电阻数值的增加,在0.1s处突加电压扰动产生的转矩波动也逐渐减小了。
5.2复矢量电流环和前馈补偿电流环的对比
最大q轴电流为21.94A,超调数值1.94A;且d轴电流存在一定波动,d轴电流峰峰值1.2A。
最大q轴电流为21.91A,超调数值1.91A;d轴电流波动明显更小,d轴电流峰峰值0.6A。
前馈补偿+有源阻尼VS复矢量电流环+有源阻尼:
两者差距不大,基本没有差别,只不过在一些情况下,复矢量电流环+有源阻尼的d轴电流波动会更小一点而已。或者说复矢量电流环+有源阻尼的d-q解耦性能更好。
仿真模型已上传某鱼。
1)电流环采用前馈补偿+有源阻尼:
https://m.tb.cn/h.gRY9ChT?tk=vNZ73YG8Bi9https://m.tb.cn/h.gRY9ChT?tk=vNZ73YG8Bi9
2)复矢量电流环+有源阻尼:
https://m.tb.cn/h.gRYkPqt?tk=BDL23YGRQjjhttps://m.tb.cn/h.gRYkPqt?tk=BDL23YGRQjj