永磁同步电机高性能控制算法:有源阻尼电流环详解
永磁同步电机高性能控制算法:有源阻尼电流环详解
永磁同步电机的高性能控制是电机驱动系统中的关键技术之一。本文将深入探讨有源阻尼电流环的原理、仿真搭建和效果分析,通过详细的理论解释和仿真波形分析,帮助读者理解有源阻尼电流环在电机控制中的重要作用。
1. 前言
在之前的讨论中已经介绍过复矢量电流环和前馈补偿电流环的对比,复矢量电流环的效果较为明显。在研究文献时发现,复矢量电流环通常与“有源阻尼”相关联。经过一段时间的学习,现在能够理解其基本原理并观察到明显的仿真效果。
电流环中的“有源阻尼”有什么作用呢?参考 Sang-Hoon Kim 大神的书,这一版可以在他的 IEEE 主页下载。书中提到,在单独励磁直流电机的控制中,通过增加电枢电阻和/或摩擦系数,可以增加系统的阻尼,减小对电压阶跃输入的速度响应振荡。然而,摩擦和阻力会降低控制系统的效率。与被动阻尼器不同的是,通过反馈控制增加主动阻尼器,可以将振荡的欠阻尼器响应改变为过阻尼器响应。
在图4.2中,通过将 Ractive 与 Ra 一起添加,电枢电阻增加了 Ractive,并且系统的特征值发生了变化。此外,如果 Ractive 比 Ra 大得多,则带主动阻尼器的控制器对电枢电阻 Ra 的变化具有较强的鲁棒性。同样的原理也可以应用于摩擦的情况,系统的摩擦力 B 可以通过主动阻尼器来控制。从这个例子可以看出,根据控制框图和对系统的物理理解,可以使用反馈控制来主动插入阻尼项,以增强控制系统的动态性能。这种通过反馈对系统特征值的操作在现代控制理论中被称为状态反馈控制。
从个人理解来看,相当于在电流环中加了一个电阻,这个电阻的作用相当于增大了系统传递函数中的电阻阻值,进而改变了系统的惯性时间常数。
2. 有源阻尼电流环的仿真搭建
下面是一些有源阻尼电流环的框图。
根据上面这个 Fig.5,“有源阻尼”就是在原来电流环的基础上改进两点:
- 在积分器回路给电流误差延时两拍,并且乘上有源阻尼电阻 R_active,最后加在输出上。
- 在电压输出的末端,减去电流与有源电阻 R_active 的乘积。
有源电阻 R_active 的最佳取值是多少呢?上面的论文也给出了答案。
3. 500Hz 电流环带宽下的仿真波形
无特殊说明的情况下,以下仿真用的电流环都是用传统的 PI+前馈补偿。
这里注意一个问题,我们平时的电流环,用带宽配置法,一般是 Kp=wcLs,Ki=wcRs,其中 wc=2fcpi。我说的 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,d-q 电流在启动时的电流波形
R_active=5,d-q 电流在启动时的电流波形
R_active=10,d-q 电流在启动时的电流波形
R_active=12.1,d-q 电流在启动时的电流波形
R_active=15,d-q 电流在启动时的电流波形
从上面几个波形可以看到:
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 电流突加扰动时的电流波形
R_active=5,d-q 电流突加扰动时的电流波形
R_active=10,d-q 电流突加扰动时的电流波形
R_active=12.1,d-q 电流突加扰动时的电流波形
R_active=15,d-q 电流突加扰动时的电流波形
从上面几个波形可以看到:
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 时,不同电压情况下的仿真效果。
Vdc=500V
Vdc=400V
可以看到,在有源阻尼为 R_active=12.1 情况下,400V 电压就出现了电流静差。
但是这里注意一个问题啊!有源阻尼 R_active=12.1,只是一个虚拟的电阻,实际上是不消耗电压的,它只是会让电流环输出的电压极限变小。那我可以把电流环的电压限幅给高一些,比如实际直流母线电压 Vdc 有 500V,但是我把电流环里面用到的 Vdc 设置为 800V。这样就可以解决这个问题。
我感觉我这个解释有点难懂,自己试一试大概就明白了。下面是仿真波形。
直流母线电压 Vdc=500V,电流环的 Vdc 也设置为 500V,R_active=20
直流母线电压 Vdc=500V,电流环的 Vdc 设置为 800V,R_active=20
关于这个电压对有源阻尼的影响,我没有参考文献,没看到有人说过这个事。这一小节的东西,都是我自己的臆想而已,说法不一定对(看看就好)。
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;
用上面仿真参数时,发现,我的复矢量电流环控不好,如下图所示。
定子三相电流、转矩、转速波形(R_active = 0)
d-q 电流波形
而以前我的模型是没问题的,找了一下原因,发现是转速环低通滤波器的问题。实际转速和控制器里面得到的转速有相位滞后,如下图所示。
标题
复矢量电流环结构如下图所示。这里注意,由于解耦项设置 we,又因为我转速滤波有滞后,就导致解耦项的 we 不是真实的 we,最终导致实际电流环无法实现完全的 d-q 解耦。
标题
那既然是我转速滞后太大,我直接把转速环低通滤波器的截止频率调高一些就好了。下面把低通滤波器的截止频率从 300Hz 改成 600Hz。
定子三相电流、转矩、转速波形(R_active = 0,低通滤波器截止频率 600Hz)
如果转速环仍采用 300Hz,要解决电流波动,可以直接加上有源阻尼。
定子三相电流、转矩、转速波形(R_active = 0)
定子三相电流、转矩、转速波形(R_active = 2)
定子三相电流、转矩、转速波形(R_active = 5)
定子三相电流、转矩、转速波形(R_active = 12.1)
从上面可以看到,当有源阻尼电阻开始增加的时候,转矩在进入稳态时的波动明显减小;而且,随着有源电阻数值的增加,在 0.1s 处突加电压扰动产生的转矩波动也逐渐减小了。
5.2 复矢量电流环和前馈补偿电流环的对比
前馈补偿+有源阻尼(R_active = 12.1)
最大 q 轴电流为 21.94A,超调数值 1.94A;且 d 轴电流存在一定波动,d 轴电流峰峰值 1.2A。
复矢量电流环+有源阻尼(R_active = 12.1)
最大 q 轴电流为 21.91A,超调数值 1.91A;d 轴电流波动明显更小,d 轴电流峰峰值 0.6A。
前馈补偿+有源阻尼(R_active = 12.1)
复矢量电流环+有源阻尼(R_active = 12.1)
前馈补偿+有源阻尼 VS 复矢量电流环+有源阻尼:
两者差距不大,基本没有差别,只不过在一些情况下,复矢量电流环+有源阻尼的 d 轴电流波动会更小一点而已。或者说复矢量电流环+有源阻尼的 d-q 解耦性能更好。