MATLAB控制系统与仿真课程设计报告院(系):电气与控制工程学院专业班级:测控技术与仪器1301班姓名:吴凯学号:1306070127指导教师:杨洁昝宏洋基于MATLAB的PID恒温控制器本论文以温度控制系统为研究对象设计一个PID控制器。PID控制是迄今为止最通用的控制方法,大多数反馈回路用该方法或其较小的变形来控制。PID控制器(亦称调节器)及其改进型因此成为工业过程控制中最常见的控制器(至今在全世界过程控制中用的84%仍是纯PID调节器,若改进型包含在内则超过90%)。在PID控制器的设计中,参数整定是最为重要的,随着计算机技术的迅速发展,对PID参数的整定大多借助于一些先进的软件,例如目前得到广泛应用的MATLAB仿真系统。本设计就是借助此软件主要运用Relay-feedback法,线上综合法和系统辨识法来研究PID控制器的设计方法,设计一个温控系统的PID控制器,并通过MATLAB中的虚拟示波器观察系统完善后在阶跃信号下的输出波形。关键词:PID参数整定;PID控制器;MATLAB仿真。DesignofPIDControllerbasedonMATLABAbstractThispaperregardstemperaturecontrolsystemastheresearchobjecttodesignapidcontroller.Pidcontrolisthemostcommoncontrolmethodupuntilnow;thegreatmajorityfeedbackloopiscontrolledbythismethodoritssmalldeformation.Pidcontroller(claimregulatoralso)anditssecondgenerationsobecomethemostcommoncontrollersintheindustryprocesscontrol(sofar,about84%ofthecontrollerbeingusedisthepurepidcontroller,it’llexceed90%ifthesecondgenerationincluded).Pidparametersettingismostimportantinpidcontrollerdesigning,andwiththerapiddevelopmentofthecomputertechnology,itmostlyrecurstosomeadvancedsoftware,forexample,matlabsimulationsoftwarewidelyusednow.thisdesignistoapplythatsoftmainlyuseRelayfeedbacklawandsyntheticmethodonthelinetostudypidcontrollerdesignmethod,designapidcontrolleroftemperaturecontrolsystemandobservetheoutputwaveformwhileinputstepsignalthroughvirtualoscilloscopeaftersystemcompleted.Keywords:PIDparametersetting;PIDcontroller;MATLABsimulation。三、正文1.课题来源及PID控制简介1.1课题的来源和意义任何闭环的控制系统都有它固有的特性,可以有很多种数学形式来描述它,如微分方程、传递函数、状态空间方程等。但这样的系统如果不做任何的系统改造很难达到最佳的控制效果,比如快速性稳定性准确性等。为了达到最佳的控制效果,我们在闭环系统的中间加入PID控制器并通过调整PID参数来改造系统的结构特性,使其达到理想的控制效果。1.2PID控制简介当今的自动控制技术都是基于反馈的概念。反馈理论的要素包括三个部分:测量、比较和执行。测量关心的变量,与期望值相比较,用这个误差纠正调节控制系统的响应。这个理论和应用自动控制的关键是,做出正确的测量和比较后,如何才能更好地纠正系统,PID(比例-积分-微分)控制器作为最早实用化的控制器已有50多年历史,现在仍然是应用最广泛的工业控制器。PID控制器简单易懂,使用中不需精确的系统模型等先决条件,因而成为应用最为广泛的控制器。PID控制器由比例单元(P)、积分单元(I)和微分单元(D)组成。其输入e(t)与输出u(t)的关系为公式(1-1)公式(1-1)因此它的传递函数为公式(1-2)公式(1-2)比例调节作用:是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差。比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统的不稳定。积分调节作用:是使系统消除稳态误差,提高无差度。因为有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一个常值。积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强。反之Ti大则积分作用弱,加入积分调节可使系统稳定性下降,动态响应变慢。积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。因此,可以改善系统的动态性能。在微分时间选择合适情况下,可以减少超调,减少调节时间。微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。此外,微分反应的是变化率,而当输入没有变化时,微分作用输出为零。微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或PID控制器。PID控制器由于用途广泛、使用灵活,已有系列化产品,使用中只需设定三个参数(Kp,Ki和Kd)即可。在很多情况下,并不一定需要全部三个单元,可以取其中的一到两个单元,但比例控制单元是必不可少的。首先,PID应用范围广。虽然很多控制过程是非线性或时变的,但通过对其简化可以变成基本线性和动态特性不随时间变化的系统,这样PID就可控制了。其次,PID参数较易整定。也就是,PID参数Kp,Ki和Kd可以根据过程的动态特性及时整定。如果过程的动态特性变化,例如可能由负载的变化引起系统动态特性变化,PID参数就可以重新整定。第三,PID控制器在实践中也不断的得到改进,下面两个改进的例子,在工厂,总是能看到许多回路都处于手动状态,原因是很难让过程在“自动”模式下平稳工作。由于这些不足,采用PID的工业控制系统总是受产品质量、安全、产量和能源浪费等问题的困扰。PID参数自整定就是为了处理PID参数整定这个问题而产生的。现在,自动整定或自身整定的PID控制器已是商业单回路控制器和分散控制系统的一个标准。在一些情况下针对特定的系统设计的PID控制器控制得很好,但它们仍存在一些问题需要解决:如果自整定要以模型为基础,为了PID参数的重新整定在线寻找和保持好过程模型是较难的。闭环工作时,要求在过程中插入一个测试信号。这个方法会引起扰动,所以基于模型的PID参数自整定在工业应用不是太好。如果自整定是基于控制律的,经常难以把由负载干扰引起的影响和过程动态特性变化引起的影响区分开来,因此受到干扰的影响控制器会产生超调,产生一个不必要的自适应转换。另外,由于基于控制律的系统没有成熟的稳定性分析方法,参数整定可靠与否存在很多问题。因此,许多自身整定参数的PID控制器经常工作在自动整定模式而不是连续的自身整定模式。自动整定通常是指根据开环状态确定的简单过程模型自动计算PID参数。但仍不可否认PID也有其固有的缺点:PID在控制非线性、时变、耦合及参数和结构不确定的复杂过程时,工作地不是太好。最重要的是,如果PID控制器不能控制复杂过程,无论怎么调参数都没用。虽然有这些缺点,PID控制器是最简单的有时却是最好的控制器。2对象建模(1)系统为制热使用最大信号去控制系统,直到稳定之后,也就是热到达无法再上升时,此时系统特性就会出现,如下图3-5所示:10℃50℃图(1)系统制热的特性图(1)一阶系统带有延迟特性L0.632kkaT’T”TC(t)图(2):一阶系统带有延迟特性图一阶系统1TsK加一个传递lse来近似被控对象,则其近似转移函数如公式1所示:1)(TsKesGLs公式(1-3)此系统采用对象函数为:sessG31132)(对输入一预期达到的温度值,通过一定时间达到稳定,使其超调量不超过10%,稳态误差小于5%。3.对象特性分析下图为未加PID的控制系统及其阶跃响应的输出图形:此切线为最大斜率图(3):初始系统的simulink结构图图(4):初始系统的阶跃响应曲线如图可知,此系统不能够满足使温度达到预计值并且稳定,因此需加PID控制系统使系统稳定。4.对象控制要求由于原系统不能达到预期要求,需对对象函数加PID进行调节,而进行PID调节前首先就是PID的系数的确定。num=2;den=(13,1);Step(num,den);K=dcgain(num,den)知k=2;通多step函数得到的曲线得到L=0.3,T=0.8;已知被控对象的K、L和T值后,我们可以根据Ziegler—Nichols整定公式编写一个MATLAB函数ziegler_std()用以设计PID控制器。该函数程序如下:function[num,den,Kp,Ti,Td,H]=Ziegler_std(key,vars)Ti=[];Td=[];H=[];K=vars(1);L=vars(2);T=vars(3);a=K*L/T;ifkey==1num=1/a;%判断设计P控制器elseifkey==2Kp=0.9/a;Ti=3.33*L;%判断设计PI控制器elseifkey==3,Kp=1.2/a;Ti=2*L;Td=L/2;%判断设计PID控制器endswitchkeycase1num=Kp;den=1;%P控制器case2num=Kp*[Ti,1];den=[Ti,0];%PI控制器case3%PID控制器p0=[Ti*Td,0,0];p1=[0,Ti,1];p2=[0,0,1];p3=p0+p1+p2;p4=Kp*p3;num=p4/Ti;den=[1,0];end输入:K=2;L=0.3,T=0.8;[num,den,Kp,Ti,Td]=Ziegler_std(3,[K,L,T])运行结果如下:num=0.48601.45082.1653den=10Kp=1.1Ti=0.06Td=0.15由此可以确定PID的三个系数为1.1,0.06,0.15。带进pid对象中。5.仿真结果如下图为加入PID后的整个系统simulink的结构框图和输出曲线图。图(4):加入PID后的系统框图图(5):加入PID后的阶跃响应函数曲线图由上图知:系统输出的曲线超调量小于10%,稳态误差小于2%,满足设计指标。6.结论通过添加PID模块使系统达输出达到稳定,超调量和稳态误差都满足设计的指标,到了预期的要求,完成了使温度能够通过PID调节后达到稳定,稳态误差较小,对温度控制严格的某些方面的应用能够有所提高,对以后的温度方面的应用都会有一个很大的提高。四、参考文献【1】:王正林,郭阳宽著MATLAB与过程控制系统仿真(修订版)。北京:电子工业出版社,2012.【2】:王仁先.自动控制原理.北京:兵器工业出版社,1996.【3】:王正林.MATLAB/Simulink与控制系统仿真.第三版.北京:电子工业出版社,2012.【4】:师黎,PID控制的参数模糊自整定方法[J].郑州工业大学学报2001.