目录1直接转矩控制的基本原理及特点与规律 (1)1.1直接转矩控制系统原理与特点 (1)1.2直接转矩系统的控制规律和反馈系统 (3)2系统建模与仿真 (5)2.1模块模型实现 (5)2.1.1电机模型 (6)2.1.2磁通和转矩滞环控制器 (7)2.1.3磁链选择器 (8)2.1.4电压矢量选择 (9)2.1.5其他模块 (10)3感受和体会 (11)附录 (12)参考文献 (18)直接转矩控制技术仿真分析1直接转矩控制的基本原理及特点与规律直接转矩控制系统简称DTC(Direct Torque Control)系统,是继矢量控制系统之后发展起来的另外一种高动态性能的交流电动机变压变频调速系统。
在它的转速环里面利用转矩反馈直接控制电机的电磁转矩,因此而得名为直接转矩控制。
1.1直接转矩控制系统原理与特点如图1-1为直接转矩控制的原理框图,和VC系统一样,它也是分别控制异步电动机的转速和磁链,转速调节器ASR的输出作为电磁转矩的给定信号*T,在*T后面设置转矩控制内环,它可以抑制磁链变化对于转矩的影响,从而使得转速和磁链系统实现解耦。
因此,从整体控制结构上来看,直接转矩控制(DTC)系统和矢量控制系统(VC)系统是一致的都获得了较高质量的动态性能以及静态性能。
图1-1直接转矩控制系统图的幅值从图中中可以看出,直接转矩控制系统,就是通过使定转子磁链s保持恒定,然后选择合理的零矢量的作用次序和作用时宽,以调节定子磁链矢量的运动速度,从而改变磁通角的大小,以实现对电机转矩的控制。
在直接转矩控制技术中,其基本控制方法就是通过电压空间矢量来控制定子磁链的旋转速度,控制定子磁链走走停停,以改变定子磁链的平均旋转速度的大小,从而改变磁通角的大小,以达到控制电动机转矩的目的。
直接转矩控制作为一种交流调速的控制技术具有以下特点:①直接转矩控制直接在定子坐标系下分析交流电动机的数学模型,直接控制电机的磁链和转矩。
它不需要将交流电动机和直流电动机做比较等效简化,不需要模仿直流电动机的控制,也不需要为解耦而简化交流电动机的数学模型,它省掉了矢量旋转变换等复杂的变换与计算。
因此,它所需要的信号处理工作特别简单,所用的信号使观察者对于交流电动机的物理过程能够做出直接和明确的判断。
②直接转矩以定子磁场定向,只要知道定子参数就可以把它观测出来。
而矢量控制磁场定向所用的是转子磁链,观测转子磁链需要知道电动机的转子电阻和电感。
因此,直接转矩控制大大减少了矢量控制技术中控制性能易受参数变化影响的问题。
③直接转矩控制采用空间电压矢量和六边形磁链轨迹,直接控制转矩。
④转矩和磁链都采用两点式调节,把误差限制在容许的范围内,控制直接又简化。
⑤控制信号的物理概念明确,转矩响应快,具有较高的静、动态性能。
由于以上的优点所以直接转矩控制技术在现代控制理论中得到广泛的运用。
1.2直接转矩系统的控制规律和反馈系统在DTC 系统中采用的是两相静止坐标(αβ坐标),为了简化数学模型,由三相坐标变换成两相是非常重要的,所以可以避开旋转变换。
由式(1-1)和式(1-2)可得ααααααψs s s s m s s s s s p i R pi L pi L i R u +=++= (1-1) ββββββψs s s s m s s s s s p i R pi L pi L i R u +=++= (1-2)移项并积分后得(1-3)(1-4)式(1-3)和式(1-4)就是图1-1中所采用的定子磁链模型,其结构框图如图1-2所示。
它适合于中低速时切换到电流模型,这是上述能提高鲁棒性的优点就不得不丢弃。
图1-2 定子磁链模型结构框图 在两相静止坐标系上的电磁转矩表达式为)(βααβs s r s m p e i i i i L n T -= (1-5) 整理可得⎰-=dt i R u s s s s )(αααψ⎰-=dt i R u s s s s )(αααψAu B u Cu Ai B i Ci αψS βψS)(βααβs s r s p e i i i i n T -= (1-6)这就是DTC 系统所用的系统模型,结构图如图1-3所示。
图1-3 转矩模型结构框图αψs βψs e2系统建模与仿真2.1模块模型实现建立如图2-1所示的直接转矩控制系统仿真模型,其中电动机采用基于 坐标系的数学模型,转速采用积分和输出限幅的PI调节器,定子磁链和转矩调节器采用带有滞环的双位式控制器,电压矢量选择环节采用simulink中的s函数编写。
2-1直接转矩控制系统仿真模型2.1.1电机模型在进行异步电机的仿真时,没有必要对四种状态方程逐一进行,只要以一种为内核,在外围加上坐标变换和状态变换,就可得到在不同的坐标下、不同状态量的仿真结果。
因此在此处建立以定子磁链、转速和电流为状态变量的状态结构为核心,构建异步电机仿真模型,如图2-2.其中Rt=(Rs*Lr*Lr*Rr*Lm*Lm )/(Lr*Lr)。
(2-1)1.定子磁链计算定子磁链的模拟和离散计算式为()s s s s u R i dt αβαβαβψ=-⎰ (2-2) ()()()121s s s s s KT z u R i Z αβαβαβψ+=-- (2-3)式中,s u αβ和s i αβ为αβ两相坐标系上的钉子电压和电流,K 为积分系数,sT 为采样时间。
磁链计算采用离散梯形积分,模块给出磁链,并由Complex toMagnitude-Angle 计算磁链s ψ的幅值和转角。
2.转矩计算电动机转矩计算式为()32e s s s s T p i i βααβψψ=- (2-4) 式中,p 为电动积极对数。
图2-2异步电机仿真模型2.1.2磁通和转矩滞环控制器电动机的转矩和磁链都采用滞环控制,其控制器结构如图2-3所示。
转矩控制是三位滞环控制方式,在转矩滞环宽度设为e dT 时,当转矩偏差大于/2e dT +和小于/2e dT -时,滞环模块分别输出“1”和“3”,当滞环模块输出为“2”时,经或非门NOR 输出状态“2”。
磁链控制是二位滞环控制,分别输出“1”和“2”。
图2-3转矩滞环控制器模块2.1.3磁链选择器直接转矩控制将磁链空间划分为6个区间,如图2-4所示,磁链选择器模块s ψ的位置角ϕ,判断磁链s ψ运行在哪一个分区。
磁链选择器结构如图2-5所示。
图2-4磁链矢量空间图2-5 Flux sector seeker 模块结构2.1.4电压矢量选择电压矢量环节采用s_function模块,如图2-6所示,s函数见附录。
图2-6电压矢量选择环节2.1.5其他模块仿真模型其他模块结构如下图所示。
图2-7两相坐标变换图2-8 K/P变换图2-9电流环图2-10 3/2变换3感受和体会通过这次课程设计,我发现了很多平时学习上的不足,也学到了很多以前没有涉及到得知识,在平时的学习中常常都是考试要考什么,我就学什么,对于一些公式根本就没有去理解和推导,导致考完试以后就把这些知识给忘掉,没有能够转化成自己的知识,所以刚刚开始做课设时有点吃力,但是在查阅了很多资料后慢慢对直接转矩控制系统仿真有了自己的理解。
尽管这次没有完全做出仿真结果,但我依然觉得学到了很多东西,再等我们这个小组钻研一段时间,应该就能完全弄懂,主要是现在时间真的很紧。
作为一名自动化的学生,通过这门课设学到了很多在课本上学习不到的知识,这这次课程设计也培养了我们的团队合作精神,让几个人一起作一个课题可以让我们更好的发挥自己的特长。
课程设计中我既巩固了课堂上学到的理论知识,又掌握了MATLAB的一些基本使用方法。
同时,这次课程设计也培养了我认真严谨的工作作风和实事求是的工作态度。
另外还要真诚感谢胡红明老师在我课设期间给我的帮助,学术探讨及建议。
附录function[sys,x0,str,ts,simStateCompliance]=caotian(t,x,u,flag,u1, u2,u3,u4,k)switch flagcase 0[sys,x0,str,ts,simStateCompliance] =mdlInitializeSizes(k);case 1sys = mdlDerivatives(t,x,u,k);case {2,9}sys = [];case 3sys = mdlOutputs(t,x,u);otherwiseDAStudio.error('Simulink:blocks:unhandledFlag',num2str(flag));endfunction [sys,x0,str,ts,simStateCompliance] = mdlInitializeSizes(k)sizes = simsizes;sizes.NumContStates = 1;sizes.NumDiscStates = 0;sizes.NumOutputs = 1;sizes.NumInputs = 1;sizes.DirFeedthrough = 0;sizes.NumSampleTimes = 1;sys = simsizes(sizes);str = [];x0 = [];ts = [0 0];simStateCompliance = 'DefaultSimState'; function sys = mdlDerivatives(t,x,u,k) if(u(1)==1&u(2)==1&u(3)==1)k=1;elseif(u(1)==1&u(2)==1&u(3)==0)k=2;elseif(u(1)==1&u(2)==0&u(3)==1)k=3;elseif(u(1)==1&u(2)==0&u(3)==0)k=4;elseif(u(1)==0&u(2)==1&u(3)==1)k=5;elseif(u(1)==0&u(2)==1&u(3)==0)k=6;elseif(u(1)==0&u(2)==0&u(3)==1)k=7;elseif(u(1)==0&u(2)==0&u(3)==0)k=8;endswitch u(4)case 1if(k==1)SA=1;SB=1;SC=0;else if(k==2)SA=1;SB=0;SC=0;else if(k==3)SA=0;SB=1;SC=0;else if(k==4)SB=1;SC=1;else if(k==5) SA=1;SB=0;SC=0;else if(k==6) SA=1;SB=0;SC=1;else if(k==7) SA=0;SB=1;SC=1;else if(k==8) SA=0;SB=0;SC=1;endcase 2if(k==1)SA=0;SB=1;SC=0;else if(k==2)SA=0;SB=0;SC=0;else if(k==3)SA=0;SB=1;SC=1;else if(k==4)SA=1;SB=1;SC=1;else if(k==5) SA=0;SB=0;SC=0;else if(k==6) SA=1;SB=0;else if(k==7)SA=1;SB=1;SC=1;else if(k==8)SA=1;SB=0;SC=1;endcase 3if(k==1)SA=0;SB=1;SC=1;else if(k==2)SA=0;SB=0;SC=0;else if(k==3)SA=0;SB=0;SC=1;else if(k==4)SA=1;SB=1;SC=1;else if(k==5)SA=0;SB=0;SC=0;else if(k==6) SA=1;SB=1;SC=0;elseif(k==7)SA=1;SB=1;SC=1;else if(k==8)SA=1;SB=0;SC=0;endcase 4if(k==1)SA=0;SB=0;SC=1;else if(k==2)SA=0;SB=0;SC=0;else if(k==3)SA=1;SB=0;SC=1;else if(k==4) SA=1;SB=1;SC=1;elseif(k==5)SA=0;SB=0;SC=0;else if(k==6)SA=0;SB=1;SC=0;elseif(k==7)SA=1;SB=1;SC=1;else if(k==8)SA=1;SB=1;SC=0;endcase 5if(k==1)SA=0;SB=1;SC=0;else if(k==2)SA=0;SB=0;SC=0;else if(k==3) SA=0;SB=1;SC=1;else if(k==4) SA=1;SB=1;SC=1;else if(k==5)SA=0;SB=0;SC=0;elseif(k==6) SA=1;SB=0;SC=1;else if(k==7)SA=1;SB=1;SC=1;else if(k==8) SA=1;SB=0;SC=1;endcase 6if(k==1)SA=0;SB=1;SC=0;else if(k==2)SA=0;SB=0;SC=0;else if(k==3) SA=0;SB=1;SC=1;else if(k==4) SA=1;SB=1;SC=1;else if(k==5)SA=0;SB=0;SC=0;else if(k==6)SA=1;SB=0;SC=1;else if(k==7)SA=1;SB=1;SC=1;else if(k==8)SA=1;SB=0;SC=1;endendendfunction sys = mdlOutputs(t,x,u)sys = x;参考文献[1]陈伯时.电力拖动自动控制系统.机械工业出版社,2002.[2]邹伯敏.自动控制理论.机械工业出版社,2003.[3]徐月华,汪仁煌.MATLAB在直流调速设计中的应用.广东工业大学,2001.[4]马葆庆,孙庆光.直流电动机的动态数学模型.电工技术,1997.[5]周渊深.交直流调速系统与MATLAB仿真.中国电力出版社,2003.[6]Leonhard W. Control of Electrical Drives Springer-Verlag,2001.。