




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PID控制原理和特点9 二班 李卓奇工程实际中,应用最为广泛调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制主要技术之一。当被控对象结构和参数不能完全掌握,或不到精确数学模型时,控制理论其它技术难以采用时,系统控制器结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。即当我们不完全了解一个系统和被控对象或不能有效测量手段来获系统参数时,最适合用PID控制技术。PID控制,实际中也有PI和PD控制。PID控制器就是系统误差,利用比例、积分、微分计算出控制量进行控制。1、比例控制(P):比例控制是最常用的控制手段之一,比方说我们控制一个加热器的恒温100度,当开始加热时,离目标温度相差比较远,这时我们通常会加大加热,使温度快速上升,当温度超过100度时,我们则关闭输出,通常我们会使用这样一个函数e(t) = SP y(t)-u(t) = e(t)*PSP设定值e(t)误差值y(t)反馈值u(t)输出值P比例系数滞后性不是很大的控制对象使用比例控制方式就可以满足控制要求,但很多被控对象中因为有滞后性。也就是如果设定温度是200度,当采用比例方式控制时,如果P选择比较大,则会出现当温度达到200度输出为0后,温度仍然会止不住的向上爬升,比方说升至230度,当温度超过200度太多后又开始回落,尽管这时输出开始出力加热,但温度仍然会向下跌落一定的温度才会止跌回升,比方说降至170度,最后整个系统会稳定在一定的范围内进行振荡。如果这个振荡的幅度是允许的比方说家用电器的控制,那则可以选用比例控制2、比例积分控制(PI):积分的存在是针对比例控制要不就是有差值要不就是振荡的这种特点提出的改进,它常与比例一块进行控制,也就是PI控制。其公式有很多种,但大多差别不大,标准公式如下:u(t) = Kp*e(t) + Kie(t) +u0u(t)输出Kp比例放大系数Ki积分放大系数e(t)误差u0控制量基准值(基础偏差)大家可以看到积分项是一个历史误差的累积值,如果光用比例控制时,我们知道要不就是达不到设定值要不就是振荡,在使用了积分项后就可以解决达不到设定值的静态误差问题,比方说一个控制中使用了PI控制后,如果存在静态误差,输出始终达不到设定值,这时积分项的误差累积值会越来越大,这个累积值乘上Ki后会在输出的比重中越占越多,使输出u(t)越来越大,最终达到消除静态误差的目的PI两个结合使用的情况下,我们的调整方式如下:1、先将I值设为0,将P值放至比较大,当出现稳定振荡时,我们再减小P值直到P值不振荡或者振荡很小为止(术语叫临界振荡状态),在有些情况下,我们还可以在些P值的基础上再加大一点。2、加大I值,直到输出达到设定值为止。3、等系统冷却后,再重上电,看看系统的超调是否过大,加热速度是否太慢。通过上面的这个调试过程,我们可以看到P值主要可以用来调整系统的响应速度,但太大会增大超调量和稳定时间;而I值主要用来减小静态误差。pid 算法控制点目前包含三种比较简单的控制算法,分别是:增量式算法,位置式算法,微分先行。这三种是最简单的基本算法,各有其特点,一般能满足控制的大部份要求:1、PID增量式算法离散化公式(注:各符号含义如下): u(t)- 控制器的输出值。 e(t)- 控制器输入与设定值之间的误差。 Kp- 比例系数。 Ti- 积分时间常数。 Td- 微分时间常数。 T- 调节周期。2、积分分离法离散化公式: u(t) = q0e(t) + q1e(t-1) + q2e(t-2) 当|e(t)|时 q0 = Kp(1+T/Ti+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T 当|e(t)|时 q0 = Kp(1+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T u(t) = u(t-1) + u(t) 注:各符号含义如下 u(t)- 控制器的输出值。 e(t)- 控制器输入与设定值之间的误差。 Kp- 比例系数。 Ti- 积分时间常数。 Td- 微分时间常数。(有的地方用Kd表示) T- 调节周期。 - 积分分离阈值3、微分先行PID算法离散化公式:u(t)- 控制器的输出值。 e(t)- 控制器输入与设定值之间的误差。 Kp- 比例系数。 Ti- 积分时间常数。 Td- 微分时间常数。(有的地方用Kd表示) T- 调节周期。 - 积分分离阈值PID控制:因为PI系统中的I的存在会使整个控制系统的响应速度受到影响,为了解决这个问题,我们在控制中增加了D微分项,微分项主要用来解决系统的响应速度问题,其完整的公式如下:u(t) = Kp*e(t) + Kie(t) + Kde(t) e(t-1)+u0在PID的调试过程中,我们应注意以下步骤:1、 关闭I和D,也就是设为0.加大P,使其产生振荡;2、 减小P,找到临界振荡点;3、 加大I,使其达到目标值;4、重新上电看超调、振荡和稳定时间是否吻合要求;5、 针对超调和振荡的情况适当的增加一些微分项;6、 注意所有调试均应在最大争载的情况下调试,这样才能保证调试完的结果可以在全工作范围内均有效;PID控制器参数整定PID控制器参数整定是控制系统设计核心内容。它是被控过程特性确定PID控制器比例系数、积分时间和微分时间大小。PID控制器参数整定方法很多,概括起来有两大类:一是理论计算整定法。它主依据系统数学模型,理论计算确定控制器参数。这种方法所到计算数据未必可以直接用,还必须工程实际进行调整和修改。二是工程整定方法,它主要依赖工程经验,直接控制系统试验中进行,且方法简单、易于掌握,工程实际中被广泛采用。PID控制器参数工程整定方法,主要有临界比例法、反应曲线法和衰减法。三种方法各有其特点,其共同点都是试验,然后工程经验公式对控制器参数进行整定。但采用哪一种方法所到控制器参数,都需要实际运行中进行最后调整与完善。现一般采用是临界比例法。利用该方法进行 PID控制器参数整定步骤如下:(1)首先预选择一个足够短采样周期让系统工作;(2)仅加入比例控制环节,直到系统对输入阶跃响应出现临界振荡,记下这时比例放大系数和临界振荡周期;(3)一定控制度下公式计算到PID控制器参数。实例:温度的PID控制1:基本情况本例中控制对象是一款小型专用工业烘箱要求恒温范围: 室温-300恒温精度: 1(其它指标略)2:控制器硬件 (参考原理图).单片机 采用(C51系列)TI公司的MCS1210Y4(内部有8通道24位AD转换器)串行口在线编程.前向通道 温度信号(来自烘箱的Pt100电阻信号)经INA118放大送入AD通道CH0.后向通道 I/O口驱动光耦MOC-3061,再驱动大功率双向可控硅输出.键盘 up 递增按钮和down 递减按钮,设置目标温度.LED(3位)显示温度值(软件切换显示目标温度或采样温度).电源 +5V单电源3:软件介绍(由C语言编写).流程 采样当前温度-PID运算-PWM(占空比式)输出 .温度采样采样周期是一个很重要的参数其确定取决于烘箱的固有响应特性参数(比如纯滞后时间以及响应时间常数)一般值在4-20秒之间(例中取16秒).PID运算每采样一次之后进行一次PID运算,得到一个输出量,供输出函数调用.为了下面叙述方便先定义几个变量定义: T_target 表示目标温度T_real 表示当前温度T_diff 表示当前温差 并且T_diff=T_target-T_real PID运算表达式如下PWM_OUT=P_OUT+I_OUT+D_OUT+P_H;(求代数和)其中 P_OUT=KP*(T_diff) 称为比例项,KP是比例系数,比例项的作用是纠正偏差.比例项输出等于比例系数乘当前温差 (原理图)I_OUT=KI*(diff) 称为积分项,KI是积分系数,积分项用于消除系统稳态误差(diff)含义是由当前算起前面N次采样温差的和(例中N取20)D-_OUT=KD*diff 称为微分项,KD是微分系数,微分项用于减小系统超调量,增加系统稳定性.(diff=当前温差-上次温差)P_H=KC*(T_target)称为维持功率项,达温后(其它项均趋于0)此项起抵消散热维持温度的作用,可增加系统稳定性.KC是维持功率系数如果约定满功率值为100,停止输出功率值为0 那末PWM_OUT的取值范围就确定为0-100主要是为了后面编制输出函数时方便简明,直接调用PWM_OUT作为输出占空比的百分数)后面整定系数时就要兼顾PWM_OUT的取值范围 4.源程序(部分)#define KP 3.0 /比例系数 #define KI 0.3 /积分系数#define KD 200.0 /微分系数#define KC 0.1 /维持功率系数#define T_c 16 /采样周期(单位:秒)sbit pid_port=P35; /控制输出端口float T_target=0; /目标温度float T_real=0; /当前温度float PWM=0; /输出控制量 1-100bit read_AD_enable=0; /PID运算允许标志位/T0定时器初始化void Timer0_Init()TMOD|=0x01; TF0 =0;TR0 =1;IE |=0x02; /读取AD 转换值并刻度void read_AD(void)int delta_ad; unsigned char ad3;ad0=ADRESH;ad1=ADRESM;ad2=ADRESL;delta_ad=ad0*0x100+ad1-0x23cb;/?if(delta_ad=20)curr_=0;/20次采样else curr_+=1;sum_diff-=diffcurr_;/减去最老的一次温差值diffcurr_=T_target-T_real;/当前温差sum_diff+=diffcurr_;/加上最新的一次温差值,即当前p_out=KP*diffcurr_; /比例项输出 比例x当前温差i_out=KI*sum_diff; /积分项输出积分系数x积分值d_out=KD*(diffcurr_-temp); /微分项输出微分系数x微分值pwm_0=KC*T_target; /维持功率项 维持系数x设定温度if(i_out100)i_out=100; /积分分离防止积分饱和if(i_out-100)i_out=-100;PWM=p_out+i_out+d_out+pwm_0; /总输出量if(PWM=100)PWM=100;/大于100时为100/ 输出函数void PWM_OUT(float PWM)static unsigned char t=1; /t=(1100)周期为4秒 静态变量 40ms调用一次 即4秒分成100份unsigned char limit; /pid_value输出百分比limit=(unsigned char)PWM;/强制转换if(t100)t=1;/*/T0中断服务程序void Timer0_ISR() interrupt 1 using 1static unsigned int x=0;TH0=(28672)8; / 11.0592MHz,interval 40mST
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玉林养殖承包合同范本
- 返还租金租房合同范本
- 自媒体收徒弟合同范本
- 纺织废料购销合同范本
- 软件部署服务合同范本
- 配方技术教学合同范本
- 私人地热水合同协议书
- 电脑年度维保合同范本
- 网上合作协议合同范本
- 软件技术入股合同协议
- 人工气道气囊压力监测
- 外科品管圈提高外科腹部手术后早期下床的执行率课件
- 消毒记录登记表14079
- 东芝电梯CV180故障诊断
- GB/T 31186.1-2014银行客户基本信息描述规范第1部分:描述模型
- 生物质资源及其开发利用课件
- 调查研究方法与调研报告写作讲义课件
- 卡西欧PROTREKPRW-6000使用手册
- 关于开具无犯罪记录证明的函(模板)
- 初中综合实践课程
- 大金D型水冷螺杆机说明书
评论
0/150
提交评论