《计算机控制技术》课程设计报告PID控制器的设计与实现学号:1323010117姓名:张三年级专业:13测控技术与仪器河南大学物理与电子学院测控技术与仪器教研室计算机控制技术——PID控制器的设计与实现1.PID基本原理在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象﹐或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。比例(P)控制比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差。积分(I)控制在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。微分(D)控制在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。(1)连续系统PID控制器在连续控制系统中,采用如图1所示的PID控制器,其控制规律的形式为图1连续PID控制系统框图其基本传递规律为(1)或写成传递函数的形式(2)其中,KP为比例系数,TI为积分时间常数,错误!未找到引用源。D为微分时间常数,U(t)为控制器的输出量,e(t)为控制器输入量,即给定量与输出量的偏差。为了用计算机实现PID控制规律,必须将连续形式的微分方程式(1)离散化成差分方程的形式。为此,取T为采样周期,k=0,l,2,…,i,…为采样信号,因采样周期T相对信号的变化周期是很小的,所以就可以用矩形面积求和的方法近似式(1)中的积分作用和向后差分的方法近似微分作用,即于是(1)可以改为如下差分形式(3)其中,u(k)为采样时刻k的输出量,e(k)和e(k-1)分别为采样时刻k和k-1时刻的偏差值,式(3)输出量u(k)为全量输出,它对应于被控对象执行机构(如调节阀)每次采样时刻应达到的位置,为此,式(3)称为PID位置型控制算式。这即是PID控制规律的离散化形式。(2)PID控制器的离散实现方法位置式PID式(3)称为PID位置型控制算式,增量式PID若按式(3)计算u(k),输出值与过去所有状态有关,计算时就需要占用大量计算机内存和计算时间,这对用于实时控制的计算机来说非常不利。为此,考虑将式(3)改写成速推形式。根据式(3)写出第k-1个采样时刻的的输出值为(4)用式(3)两边减去式(4)两边,得(5)按式(5)计算采样时刻k的输出量u(k),只需用到采样时刻k的偏差值e(k),以及向前递推两次的偏差值e(k-1)、e(k-2)和向前递推一次的输出值u(k-1),这就大大节约了计算机内存和计算时间。由(5)可得(6)式(6)称为增量型PID控制算式(3)某变形的PID控制器在标准PID算法中,积分系数在整个调节过程中保持不变。变速积分的思想是,根据偏差的大小,改变积分项的累加速度,即偏差越大,积分越慢,甚至没有;偏差越小,积分越快,以利于尽快消除静差。具体算法如下设置一个系数f[e(k)],是偏差e(k)的函数,其取值方法如下每次采样后将f[e(k)]与e(k)相乘,积记为e’(k),然后再进行累加,即积分项的计算方法为变速积分PID与标准PID相比,有以下优点:①完全消除了积分饱和现象②大大减小了超调量,可以很容易地使系统稳定。③适应能力强,某些标准PID控制不理想的过程可以考虑采用这种算法。④参数整定容易,各参数间相互影响减小了,而且A为两参数的要求不精确,可作一次性确定。变速积分与积分分离法相比有相似之处,但调节方式不同。积分分离对积分项采取“开关”控制,而变速积分则是缓慢地变化,故后者调节品质可以大大提高。2.控制对象简介直流电机(directcurrentmachine)是指能将直流电能转换成机械能(直流电动机)或将机械能转换成直流电能(直流发电机)的旋转电机。它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。速度控制系统(speedcontrolsystems),以速度(或转速)作为被控制量的自动控制系统。速度控制系统广泛应用于各种工业部门。例如,当用原动机(水轮机或汽轮机)驱动一个以某一频率(例如50赫)发电的交流发电机时,必须采用速度控制系统使原动机转速保持恒定,以保证发电机发出的交流电的频率符合要求。对于一台不带负载的柴油机,如不采用速度控制,就会产生飞车现象。在速度控制系统中,所期望的速度变化形式是由生产过程中对生产机械的工艺要求决定的。电流限幅20,设置电流大小上限为201.C++实现PID的程序设计主要PID控制程序:#defineS_FUNCTION_NAMEctrl#defineS_FUNCTION_LEVEL2/*includefiles*/#includemath.h#includeD:\Matlab\R2010b\simulink\include\simstruc.h#defineSPD(*u0[0])#includepid.h//通过有参数的构造函数设置默认的控制参数//CPid(doubleTs,doubleKp,doubleTi,doubleTd,doublesetpoint);CPidSPDpid(0.0002,8,1,0.001,100);/*=============================*//*Function:mdlInitalizeSizes*//*=============================*/...doubleCPid::GetControlValue(doublepv){doubleEVn;//当前偏差值doubleincrease;//当前控制量增量doubleMVn;//当前计算出了控制量EVn=Sv-pv;//获得偏差increase=Kp*((EVn-EVn1)+Ts*EVn/Ti+(EVn-2*EVn1+EVn2)*Td);计算当前的控制量的增量MVn=MVn1+increase;//计算当前的控制量if(MVn20)//控制量的上限控制MVn=20.0;elseif(MVn-20)//控制量的下限控制MVn=-20.0;//保存历史记录EVn1=EVn;EVn2=EVn1;MVn1=MVn;return(double)MVn;}2.PID直流电机控制效果KP初始值为8。PID功能是利用目标信号和反馈信号的差值来调节输出频率的,一方面,我们希望目标信号和反馈信号无限接近,即差值很小,从而满足调节的精度:另一方面,我们又希望调节信号具有一定的幅度,以保证调节的灵敏度。解决这一矛盾的方法就是事先将差值信号进行放大。比例增益KP就是用来设置差值信号的放大系数的。TI初始值为1。比例增益KP越大,调节灵敏度越高,但由于传动系统和控制电路都有惯性,调节结果达到最佳值时不能立即停止,导致“超调”,然后反过来调整,再次超调,形成振荡。为此引入积分环节TI,其效果是,使经过比例增益P放大后的差值信号在积分时间内逐渐增大(或减小),从而减缓其变化速度,防止振荡。错误!未找到引用源。TD初始值为0.0001。微分时间TD是根据差值信号变化的速率,提前给出一个相应的调节动作,从而缩短了调节时间,克服因积分时间过长而使恢复滞后的缺陷。(1)最初图像(2)当(KP=1.6,TI=1,TD=0.0001)时,效果图如下(3)当(KP=80,TI=1,TD=0.0001)效果图如下(4)当(KP=8,Ti=6,TD=0.0001)时,效果图如下(5)当(KP=8,TI=1,TD=0.001)时,效果图如下增大比例系数Kp将加快系统的响应速度,在有静差系统中有利于减小静差,但加大Kp只能是减小静差,却不能从根本上消除静差。而且过大的Kp会使系统产生超调,并产生振荡或使振荡次数加多,使调节时间加长,并使系统稳定性变坏或使系统变得不稳定。若Kp选得太小,又会使系统的动作迟缓。增大积分时间常数TI(积分减弱)有利于减小超调。减小振荡,使系统更稳定,但同时要延长系统消除静差的时间。TI大小会降低系统的稳定性,增大系统的振荡次数。偏大或偏小时,系统的超调量仍然较大,调节时间仍然较长。只有当TD比较合适时,才能得到比较满意的过渡过程。增大比例系数P一般将加快系统的响应,在有静差的情况下有利于减小静差,但是过大的比例系数会使系统有比较大的超调,并产生振荡,使稳定性变坏。增大积分时间I有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长。增大微分时间D有利于加快系统的响应速度,使系统超调量减小,稳定性增加,但系统对扰动的抑制能力减弱。5.总结在这次设计中,在老师耐心地指导和我不懈的努力下,使我初步掌握和了解了MATLAB系统仿真和PID校正设计的方法和步骤,对课程也有了更深刻的认识,我们综合运用本专业所学课程的理论进行校正装置的设计,培养和提高了独立工作能力,巩固与扩充了课程所学的内容,同时为以后的学习打下了坚实的基础。在这次实习,使我收获了很多,也从中悟出了一些道理:“我们在决定要做某一件事之前,先要对其有所了解,有所准备,并按照预定的计划进行操作,就可以收到事半功倍的效果。但是事情的进展不一定是一帆风顺的。“虚心使人进步,骄傲使人落后。”要想获得进步,必须虚心向学,敢于求知。对于不懂的问题,要向有经验或有学识的人请教,或者通过网络等途径寻找资料自行解决。切忌不懂装懂,因为这是学习的大忌,也是人们获得进步的绊脚石。参考文献1.胡寿松《自动控制原理》,北京:科学出版社,20132.赵广元MATLAB与控制系统仿真实践北京:北京航空航天大学出版社,20093.刘金锟先进PID控制MATLAB仿真北京:电子工业出版社,20064.百度百科词条直流电机速度控制系统5.陈怀琛.MATLAB及在电子信息课程中的应用.北京:电子工业出版社,2009