《基于ZN法的PID校正分析与综合设计.docx》由会员分享,可在线阅读,更多相关《基于ZN法的PID校正分析与综合设计.docx(12页珍藏版)》请在优知文库上搜索。
1、北方民族大学实训报告系姓专电气信息工程学院学号班级191同组人员课程名称控制系统仿真与设计综合实训实训题目名称.基于ZN法的PlD校正分析与综合设计起止时间成绩指导教师签名北方民族大学教务处制目录一、实验目的与任务21.1设计目的21.2设计任务2二、课程设计内容与分析321T-f32. 2设计分析3三、校正前系统分析4四、校准装置设计54. 1系统建模55. 2vj-5五、校正后系统性能分析66. 1PlD参数及仿真67. 2MAT1.AB程序98. 3MAT1.AB系统阶跃响应图11六、设计总结及心得体会H9. 1.vj-116.2心得体会12七、参考文献12一、实验目的与任务1.1 设计
2、目的1、通过课程设计熟悉温度控制系统的工作原理;2、通过课程设计掌握温度控制系统的分析方法;3、通过课程设计掌握控制器的设计方法;4、通过在实际控制系统中校正设计的运用,理解系统校正在实际工程中的意义。1.2 设计任务已知轧钢车间加热炉的传递函数为Gl(三)=詈其温度传感器与变120.9+1送器的传递函数为G,(三)=2,试用Ziegler-NiChe)IS整定法计算P、PKPIDIOS+1控制器的参数,并进行阶跃响应的仿真。综合实训报告中要求写清楚计算分析的过程,列出MAT1.AB程序和MAT1.AB输出。由上述结果,你可以得出怎样的结论。二、课程设计内容与分析2.1 设计内容基于Matla
3、b的Simulink环境下,已知加热炉的传递函数和温度传感器与变送器的传递函数,通过ZN法对PlD参数进行整定。通过程序求取不同PlD参数,仿真验证加热炉传递函数,并对仿真函数进行分析。2.2 设计分析PlD参数调整的方法,大体有两种,一种是理论计算法,利用数学模型,根据理论公式计算得出;二是工程方法,依据工程经验,现场进行调试,而本次设计采用理论计算法,用ZN法进行参数整定。Ziegler-Nichols正定方法即ZN法,是一种基于频域设计PID控制器的方法,JohnZiegler和NathanielNichols发明了著名的回路整定技术使得PID算法在所有应用在工业领域内的反馈控制策略中是
4、最常用的。Ziegler-Nichols整定技术是1942年第一次发表出来,直到现在还被广泛地应用着。ZiegIe-Nichols方法分为两步:1 .构建闭环控制回路,确定稳定极限。2 .根据公式计算控制器参数。稳定极限是由P元件决定的。当KP值由零逐渐增大到系统的输出首次呈现持续的等幅震荡,此时的KP值称为临界增益,用KC表示,同时记下临界震荡周期Tc。确定临界增益KC和临界振荡周期TC后,根据下表的公式,计算其他参数:PlD参数分别会对系统产生不同的影响,是PlD调节的关键。在用程序求取出参数后与计算结果比较并进行仿真,根据结果再进行微调,最后确定系数。三、校正前系统分析由自动控制理论第2
5、24页可知ZN法第一法仅适用于对象的阶跃响应曲线为S形的系统,ZN法第二法需要持续等幅振荡的系统响应曲线。lIIllhaNaJJSUfcMMmuhrkQlP*jkParameters:PIDCoMroIIefxBiiplayDiagBmSimulationAnatyssodeJcxAHdpPlDCoalrollerI一(X)ThisblockiBplcwntsCOntinUmHranddiscrctc-tiBPIDContlI,“asanti-vlndu.TXterrMdreset.HndsinaltrckimcYouCafit,Tune.*button(requiresSiaulinkCon
6、trolDesign).rrnController:PlDHo,Tierdcain:如图所示,使用ZN法第二法计算。四、校准装置设计Siepk4,对我.7Kp*7;P6.Fk,8OP工。必XcA7cOPxOo.&ko*。.心r&-4PP1.Pi-D二卜代山Z-Z嚎V?当;5Tt7P嵋万耳笨UPl限节*专必pD嗝市&手钮“S1*1百心)O“,76/.JsrS,k八4,mis0才施)5,医界嘴近,k与,j1.p+It论/叫F阖节蓼抻GgUkN3助(plr弟象uVjC什Tfe红。2t,1D图空器&Gi。二k。什十T5)-M6fs书6眸)F二13$已加筋Y产Dr,乂十传JE十W3的C五、校正后系统性能
7、分析5.1P工D参数及仿真P:Step1BlockParameters:PIDControllerPIDControllerThisblockimpleBentscontinuous-anddiscrete-timePlDcontrolalgorithmsandincludesadvancedfeaturessueasanti-vinduptexternalreset,andsigna1tracking.YoucantunethePIDgainsautomaticalIyusingtheTune.button(requiresSioulinkControlDesign).Form:ParalI
8、elController:PlDTiDedomain:Continuous-tineODiscrete-ti三cMainPIDAdvancedDataTypesStateAttributesControllerparaetersCoimensatorforaulaSource:Proportional(P):Integral(I):Derivative(D):FiltercoefficientInitialconditionsSource:internalIntegrator:0Filter:0Externalreset:none5ICancelHelpAPPIyPI:1BlockParame
9、ters:PIDControllerPlDControllerThisblockimplementscontinuous-anddiscrete-ti三ePIDcontrolalgorithmsandincludesadvancedfeaturessueasanti-windup,externalreset,andsignaltracking.YoucantunethePIDgainsHUlOnaIiCalIyusingthe,Tune.button(requiresSimulinkControlDesign).Controller:PIDForm:Parallelinternal三ComDe
10、nsalorforula1.2I95I0.00498IoPJiDn,S+T,oISITune.Timedomain:您Continuous-timeODiscrete-IiBeMainPIDAdvancedDalaTypesStaleAttributesControlIerparametersSource:Proportional(P):Integra!(I):Derivative(D):Filtercoefficient(N)InitialconditionsSource:internal1ntcgrator:0Filter:0Extcrnalreset:nonePID:ilBlockPar
11、ameters:PIDControllerPIDControllerThisblockimpIesentscontinuous-anddiscrete-timePIDcontrolalgorithmsandincludesadvancedfeaturessueasanti-windup,externalreset,andsignaltracking.YoucantunethePIDgainsautomaticallyusingthe,Tune.button(requiresSinulinkControlDesign).Form:ParalIelController:PIDTinedomain:
12、您Continuous-timeODiscrete-timeTune.InitialconditionsSource:internalIntegrator:Filter:叵Externalreset:none5.2MAT1.AB程序MAT1.AB函数ziegler()functionGc,Kp,Ti,Td,H=ziegler(key,vars)Ti=n;Td=n;H=n;iflength(vars)=4K=VarS(1);1.=VarS(2);T=vars(3);N=vars(4);a=K*1./T;ifkey=1Kp=la;elseifkey=2Kp=0.9/a;Ti=3.33*1.;els
13、eifkey=3Kp=1.2/a;Ti=2*1.;Td=1./2;endelseiflength(vars)=5K=VarS;TC=VarS(2);N=VarS;ifkey=1Kp=0.5*K;elseifkey=2Kp=0.4*K;Ti=0.8*Tc;elseifkey=3Kp=0.6*K;Ti=0.5*Tc;Td=0.12*Tc;endelseiflength(vars)=5K=VarS;TC=VarS(2);rb=vars(3);pb=pi*vars(4)/180;N=vars(5);Kp=K*rb*cos(pb);ifkey=2Ti=-Tc(2*pi*tan(pb);elseifkey=3Ti=Tc*(l+sin(pb)(pi*cos(pb);Td=Ti4;endendswitchkeycase 1Gc=Kp;case 2Gc=tf(Kp*Ti,l,TtO);case 3nn=Kp*Ti*Td*(N+l)N,Kp*(Ti+TdN),Kp;dd=Ti*TdN,l,OjGc=tf(nn,dd);endk=1.0593;T=IlO;1.=100;nl=k;dl=Tl;Gl=tf(nl,dl);np,dp=pade(1.,2)jGp=tf(np,dp);Gcl,Kpl=ziegler(l,kf1.,r11l)iGclG