龙源期刊网 http://www.qikan.com.cn
基于S函数的异步电机矢量控制仿真研究
作者:余耀威 周少武 李苏城
来源:《中小企业管理与科技·中旬刊》2018年第04期
【摘 要】根据异步电机在两相静止坐标系下的数学模型,利用MATLAB环境下的S函数建立了其仿真模型。通过在空间矢量脉宽调制(SVPWM)调速系统的仿真研究,验证了该模型的正确性,得到了比较理想的效果,该模型可作为研究异步电机交流调速系统的仿真平台。 【Abstract】Based on the mathematical model of the asynchronous motor in the two phase static coordinate system, the simulation model is established by using the S function under the MATLAB environment. Through the simulation research of the space vector pulse width modulation
(SVPWM) speed regulation system, the correctness of the model is verified, and the ideal effect is achieved, so the model can be used as a simulation platform for asynchronous motor AC speed regulation system.
【关键词】异步电机;S函数;空间矢量脉宽调制;仿真平台
【Keywords】asynchronous motor;S function;space vector pulse width modulation;simulation platform
【中图分类号】TM343 【文献标志码】A 【文章编号】1673-1069(2018)04-01-03 1 引言
三相异步电机是一个非线性、强耦合、高阶次的控制对象[1],针对异步电机的多变量数学模型人们已经进行过大量的研究,其建模方法也多种多样,各有优缺点。传统使用Simulink中的各个模块来搭建异步电机模型,它简单、直观。但这种利用静态建模的方法构建的模型,仿真过程中动态性能不佳,连线也比较复杂。因此,本文采取能良好适应动态仿真的S函数建立异步电机仿真模型,它与Simulink通用模块库的兼容性好,仿真精度也得到了提高,经过封装后便可用于异步电机交流调速平台中。 2 异步电机数学模型
在两相静止坐标系下,异步电机的状态空间方程可描述为:=a-RsLr ωrLm2 RrLm ωrLmLr-ωrLm2 -RsLr -ωrLmLr RrLm RsLm -ωrLmLs -RrLs -ωrLrLsωrLmLs RsLm ωrLrLs -RrLs IsαIsβIrαIrβ+
a Lr 0 0 0 0 Lr 0 0-Lm 0 0 0 0 -Lm 0 0UsαUsβ 0 0 (1)
龙源期刊网 http://www.qikan.com.cn
式(1)中,Usα、Usβ、Isα、Isβ、Rs、Ls分别为αβ坐标系下定子电压、电流瞬时值及电阻、电感值;Irα、Irβ、Rr、Lr分别为αβ坐标系下转子电流瞬时值及折算后的电阻、电感值;Lm、ωr分别为互感、转子角速度;其中a=1/(LrLs-Lm2) 异步电机的运动方程为:=(Te-TL)(2)
式(2)中,np、J、Te、TL分别为电机极对数、转动惯量、电磁转矩、负载转矩 异步电机的电磁转矩方程为:Te=npLm(IsβIrα-IsαIsβ) (3)
式(1)、式(2)和式(3)构成异步电机在两相静止坐标系下数学模型,可以看出异步电机的数学模型是一个具有多参数、强耦合的复杂系统。若采用Simulink用各个模块搭建,必然复杂,因此有必要用S函数对其进行建模。 3 S函数的编写与建模
MATLAB是一种交互式仿真系统[3],其语言可按照所建立的数学模型方便表述。在Simulink工具中,利用S函数对其进行扩展,可大大减少多模块参与连线的复杂度,方便实现仿真实验。S函数模型用于仿真状态空间形式的连续或离散系统的模块,其基本格式为[4]:Function[sys,x0]=函数名(t,x,u,flag)
其中,t、x、u分别为时间、状态变量、输入参量;flag为返回变量标志。 针对前面异步电机数学模型的描述,可利用S函数对其进行封装,如图1所示。 由图1可见,该模型包括两个S函数模块motor1(式(1)和式(3))和(motor2式(2)),下面分别对其部分子函数进行描述。 ①motor1中,根据式(1)和式(3),可确定 输入参量u(1)=Usα, u(2)=Usβ, u(3)=ωr
输出变量y(1)=Usα, u(2)=Usβ, y(3)=Isα, y(4)=Isβ, y(5)=Te 电机参数Rr,Lr,Rr,Lr,Lm,np
function[sys,x0]= motor1(t,x,u,Rs,Rr,Ls,Lr,Lm) a=1/(Lm*Lm-Ls*Lr); switch flag
龙源期刊网 http://www.qikan.com.cn
case0
sys=[4;0;5;3;0;0];x0=[0;0;0;0];%4个状态变量,5个输入,1个输出 case1
sys(1)=(Rs*Lr*x(1)-Lm*u(3)*x(2)-Rr*Lm*x(3)-Lr*Lm*u(3)*x(4)-Lr*u(1))*a;
sys(2)=(Lm*Lm*u(3)*x(1)+Rs*Lr*x(2)+Lr*Lm*u(3)*x(3)-Rr*Lm*x(4)-Lr*u(2))*a;
sys(3)=(Rs*Lm*x(1)+Lm*Ls*u(3)*x(2)+Rr*Ls*x(3)+Lr*Ls*u(3)*x(4)+Lm*u(1))*a;
sys(4)=(-Lm*Ls*u(3)*x(1)-Rs*Lm*x(2)-Lr*Ls*u(3)*x(3)+Rr*Ls*x(4)+Lm*u(2))*a; case3
sys(1)=x(1);sys(2)=x(2);sys(3)=x(3);sys(4)=x(4); sys(5)=np*Lm*(x(2)*x(3)-x(1)*x(4)); case{2,4,9} sys=[]; otherwise
error(['Unhandled flag=',num2str(flag)]); end
②motor2中,根据式(2)(此处应注意:若负载转矩大于电磁转矩,会导致电机反转,为避免这种情况,应该在S函数中加以判断)可得: 输入参量u(1)=Te, u(2)=TL 输出变量y(1)=ωr 状态变量x(1)=
龙源期刊网 http://www.qikan.com.cn
电机参数J,np
function[sys,x0] = motor2(t,x,u,flag,np,J) swith flag case0
sys=[1;0;1;2;0;0;0];x0=0; case1
if((u(1)-u(2))*np/J sys=0; else
sys=(u(1)-u(2))*np/J; end case3
sys(1)=x(1); case {2,4,9} sys=[]; otherwise
error(['Unhandled flag=',num2str(flag)]); end
S函数编写完成后,点击电机模型中motor1与motor2处,将其添加到S函数模块中,并在参数栏添加所需的参数以便封装。 4 仿真及验证
为验证上述模型的正确性,下面利用异步电机的矢量控制方法进行仿真。三相异步电机的矢量控制技术就是以异步电机的动态数学模型为基础,把电机定子上的电流矢量分解成励磁电
龙源期刊网 http://www.qikan.com.cn
流矢量和转矩电流矢量,并分别控制其大小和方向,使其合并成逆变器可控的有效信号[5]。异步电机矢量控制的原理图如图2所示。
由图2可知,矢量控制包括转速PI调节器、磁链PI调节器、坐标变换模块、空间矢量脉宽调制(SVPWM)、磁链计算等模块,这些模块均可使用S函数来实现。
在Simulink中将各模块连接后,设置电机参数:额定功率Pw=1.7KW,Rs=4.1Ω,Rr=2.5Ω,Ls=0.545H,Lr=0.553H,Lm=0.510H,J=0.02kg*m2,np=2。仿真时采用ode23tb算法,可变步长,仿真时间是1.0s。仿真结果如下:
①空载情况下,转速参考值nr=1500r/min时,电机的定子电流、电磁转矩及转速的仿真结果如图3。②转速参考值=1500r/min情况下,0~0.5s内空载,0.5s时突加负载TL=20N*m,电机的转速的仿真结果如图4。
从仿真实验可以看出,异步电动机仿真模型静态性能稳定,在0.15s内便可达到稳定状态;在突加负载后,也能在极短的时间内重新达到平衡状态,说明其动态响应快,故该模型仿真结果与理论分析相一致。 5 结语
本文根据异步电机在两相静止坐标系下的数学模型,在MATLAB环境下用S函数建立了电机模型,经过对异步电机矢量控制的仿真实验,证明了该模块的动静态性能良好。由于该模块简单方便,扩展性强,故可用于交流调速系统仿真研究中。 【参考文献】
【1】纪志成,薛花,沈艳霞.基于Matlab交流异步电机矢量控制系统的仿真建模[J].系统仿真学报,2004,16(3):384-3.