


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PID原理及程序引言:开始我接触PID的时候很不理解,周围的人也没有多少懂得PID的,尤其是程序设计及具体实际应用。随着对PID的了解,也渐渐的知道是怎么回事了。要想学会应用PID首先要知道,提出PID这个概念或者PID理论存在的价 值,或者直接说他是用来干什么的:工业生产过程中,对于生产装置的温度、压 力、流量、液位等工艺变量常常要求维持在一定的数值上,或按一定的规律变化,以满足生产工艺的要求。PID控制器是根据PID控制原理对整个控制系统进行偏 差调节,从而使被控变量的实际值与工艺要求的预定值一致。应用于恒速,就是说被控物理量(车速)经传感器(测速码盘)检测到的反馈信号对速度进行调整, 从
2、而达到设定的速度。下面将从原理和程序设计来解析 PID。控制原理:在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制:比例(P)控制:比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号 成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-state error )。积分(I)控制:在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对 一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error )。为了消除稳态误差,在控制器中必须 引入 积分
3、项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样, 即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。微分(D)控制:在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化 率)成正比关系。自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是
4、说,在控制器中仅引入比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值, 从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。模拟PID控制原理在模拟控制系统中,控制器最常用的控制规律是PID控制。常规的模拟PID控制系统原理框图如图所示。r(t)y(t)+模拟PID控制系统原理图该系统由模拟PID控制器和被控对象组成。图中,r(t)是给定值,y(t)是系统的实际输出值,给定值与实际输出值构成控
5、制偏差e(t)(te) = r(t) - y(t)(式 11)e (t)作为PID控制的输入,u(t)作为PID控制器的输出和被控对象的输入。所以模拟PID控制器的控制规律为u(t) =Kp e(t) +错误!未找到引用源。dt+Td错误!未找到引用源。(式 1 2)其中:Kp 控制器的比例系数Ti 控制器的积分时间,也称积分系数Td控制器的微分时间,也称微分系数1、比例部分比例部分的数学式表示是:Kp*e(t)在模拟PID控制器中,比例环节的作用是对偏差瞬间作出反应。偏差一旦产生控制器立 即产生控制作用,使控制量向减少偏差的方向变化。控制作用的强弱取决于比例系数Kp,比例系数Kp越大,控制作
6、用越强,则过渡过程越快,控制过程的静态偏差也就越小;但是 Kp越大,也越容易产生振荡,破坏系统的稳定性。故而,比例系数Kp选择必须恰当,才能过渡时间少,静差小而又稳定的效果。2、积分部分积分部分的数学式表示是:错误!未找到引用源。从积分部分的数学表达式可以知道,只要存在偏差,则它的控制作用就不断的增加;只 有在偏差e(t)=0时,它的积分才能是一个常数,控制作用才是一个不会增加的常数。可见,积分部分可以消除系统的偏差。积分环节的调节作用虽然会消除静态误差,但也会降低系统的响应速度,增加系统的超调量。积分常数 Ti越大,积分的积累作用越弱,这时系统在过渡时不会产生振荡;但是增 大积分常数会减慢静
7、态误差的消除过程,消除偏差所需的时间也较长,但可以减少超调量, 提高系统的稳定性。当 Ti较小时,则积分的作用较强,这时系统过渡时间中有可能产生振 荡,不过消除偏差所需的时间较短。所以必须根据实际控制的具体要求来确定Ti。3、微分部分微分部分的数学式表示是:Kp*Td错误!未找到引用源。实际的控制系统除了希望消除静态误差外,还要求加快调节过程。 在偏差出现的瞬间,或在偏差变化的瞬间,不但要对偏差量做出立即响应(比例环节的作用),而且要根据偏差的变化趋势预先给出适当的纠正。为了实现这一作用, 可在pi控制器的基础上加入微分环节,形成PID控制器。微分环节的作用使阻止偏差的变化。它是根据偏差的变化
8、趋势(变化速度)进行控制。偏差变化的越快,微分控制器的输出就越大,并能在偏差值变大之前进行修正。微分作用的引入,将有助于减小超调量,克服振荡,使系统趋于稳定,特别对髙阶系统非常有利,它加 快了系统的跟踪速度。但微分的作用对输入信号的噪声很敏感,对那些噪声较大的系统一般不用微分,或在微分起作用之前先对输入信号进行滤波。微分部分的作用由微分时间常数 Td决定。Td越大时,则它抑制偏差e(t)变化的作用越强; Td越小时,则它反抗偏差e(t)变化的作用越弱。微分部分显然对系统稳定有很大的作用。 适当地选择微分常数 Td,可以使微分作用达到最优。数字式PID控制算法可以分为位置式 PID和增量式PID
9、控制算法。这里只介 绍增量式PID算法:当执行机构需要的不是控制量的绝对值,而是控制量的增量(例如去驱动步进电动机) 时,需要用PID的“增量算法”。kk-1个!|3-2(b)别试朮円叶觀怕丄的简化小虽图增量式PID控制算法可以通过(2-4 )式推导出。由(2-4)可以得到控制器的第采样时刻的输出值为:uk.i=kp s+f 勺+巧呢1(2-5)将(2-4 )与(2-5)相减并整理,就可以得到增量式PID控制算法公式为:a% =uk-uk l二耳喚-弘严 %卜厶坠一? =心】+彳+半旭瓦)七1斗心半也(2-6)其中由(2-6)可以看出,如果计算机控制系统采用恒定的采样周期T, 一旦确定A、B、
10、C,只要使用前后三次测量的偏差值,就可以由(2-6 )求出控制量。增量式PID控制算法与位置式PID算法(2-4 )相比,计算量小得多,因此在实际中得到广泛的应用。位置式PID控制算法也可以通过增量式控制算法推出递推计算公式:(2-7)(2-7 )就是目前在计算机控制中广泛应用的数字递推PID控制算法。程序设计:通过对上述原理的理解,PID的概念渐渐清晰起来。要想构建 PID系统,首 先要有一个反馈系统,所以小车必须有一个测速装置,这里选用的是光电开关和 100孔的码盘。其次是要想构建一个稳定的PID系统,必须确定合理的 P、I、D常数,通过经验及多次试验慢慢修改。第一步:获得速度思路:行驶一
11、定的距离,测量所用总时间T,轮子所产生的总得脉冲N与行 驶距离S,那么距离与脉冲的关系 K=S/N ;平均速度V=S/T;获得这个参数后, 程序就可以根据码盘所返回的脉冲数算出速度,v=n*K/t t为定时器定时中断的时间n是t时间内所产生的脉冲数数据记录与分析:delay(12000)行走了 2738mm 左轮脉冲为 1887 那么 K=2738/1887=1.450delay(10000)行走了 2230mm 左轮脉冲为 1541 那么 K=2230/1541=1.447delay(8000)行走了 1820mm 左轮脉冲为 1262 那么 K=1820/1262=1.442综上述实验,取
12、K=1.45“算速度”的程序采样率为50ms/次(即每50ms取一次脉冲数算速度)连续4次采样取平均,所得速度单位 cm/s由串口上显示的数据 023 023 024 023 023 024 023 022 023 024 023 023 025023 024 023 024 024 023 023 023 023 024 023 024 023 023 024 024 023 023 023023 024 023 023 023 023看,其数据本身就有浮动,获得的不是一个稳定的当前值。结束语:50ms的采样间隔,对于单片机是一个相当长得时间,但是在这50毫秒内只产生8或者9个脉冲。轮子转一
13、圈是100个脉冲,就相当与一个采样的时 间内只转了 0.08圈,这是个相当无语的结果。也由此导致上述的浮动。究其浮动的根源可能来自电源的震荡,可能是码盘装得不对称、不均匀。第二步:构建系统思路:给定的速度预想速度,测量的速度是反馈信号,输入PID系统,来计算控制量u从而控制占空比,所以选择增量式PID ,,由于测得的速度不是一个稳定的量,所以输入PID系统会产生震荡。需要加限制处理 对于这个测速系统,限幅 D_speed的绝对值小于等于2附程序:文件:PID.h用途:PID算法,提高控制精度用法:#ifndef PID H#define PID H#in elude float Kp=2;/P
14、ID调节的比例常数float Ti=0.4;/PID调节的积分常数float T=0.2;/采样周期float Td=0.01;/PID调节的微分时间常数float a0;float a1;float a2;float ek;偏差ekfloat ek1;偏差 ek-1float ek2;偏差 ek-2float uk;ukint PIDCalc(float ek)if(fabs(ek)3)/设定阀值return(0);elseuk=a0*ek+a1*ek1+a2*ek2;ek2=ek1;ek1=ek;return(ceil(uk);#en dif/*用途:主程序*/#in elude #in
15、elude #i nclude delay.h#include T3_counter.h#in clude T1_cou nter.h#i nclude INT.h#in clude car.h#i nclude USART.h#i nclude PID.h#defi ne uchar un sig ned char#defi ne uint un sig ned intuint coun t,speed5,Avr_speed,i;#pragma in terrupt_ha ndler INT0_isr:2void INT0_isr(void)cou nt+;计数脉冲un sig ned ch
16、ar Number6= ,0,0,0,0,0;void Data_co nvert(ui nt temp)/ 整数转换成字符串Number1=0+temp/1000;Number2=0+(temp%1000)/100;Number3=0+(temp%100)/10;Number4=0+temp%10;int set_speed,D_speed,adjust,Uk;#pragma in terrupt_ha ndler timer3_ovf_isr:30/ 定时采样void timer3_ovf_isr(void)TCNT3=15535;i+;speedi = coun t*2.9/i;if(i
17、=4)i=0;coun t=0;Avr_speed =(speed1+speed2+speed3+speed4)/4; / 取平均Data_co nv ert(Avr_speed);USARTTra nsmitStri ng(Number);/ 传到串口D_speed=set_speed-Avr_speed;差值Uk=PIDCalc(D_speed);/ 计算增量if(Uk!=0)adjust+=Uk;if(adjust1023)/调整PWMadjust=1023;OCR1A=adjust;0CR1B=adjust;void ma in (void)carportnit();T1_10KPWM
18、n it();INTOni t();USARTI nit();EN_T3_i nterrupt();SEI();TCNT3=15535;car_go_ahead();T3_ON();a0=Kp*(1+T/Ti+Td/T);a仁-Kp*(1+2*Td/T);a2=Kp*Td/T;set_speed=15;adjust=OCR1A;while(1)取Kp=2;Ti=0.4; T=0.2; Td=0.01;所得1cm/s的速度差对应4个PWM值 也就 是说如果设定的速度为10,测得的速度为0,那么PWM每次加40,如果测得的 速度始终为0,那么每200ms OCR1A就加40,即使初值为0,经过(1030/40)*200ms 也就是5200ms后 PWM加满1023对于这个结果相当满意,虽然 PWM值从0加满需要5秒多,但是一旦
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深入探讨系统架构设计师考试中的知识管理与信息共享能力分析试题及答案
- 网络规划设计师考试发展方向分析试题及答案
- 芜湖护士面试题及答案
- 穿刺护理技术及注意事项试题及答案
- 药物研发中的团队协作试题及答案
- 药学审计考试题及答案
- 了解先进专利技术试题及答案
- 育婴师在儿童情绪管理中的策略考题试题及答案
- 2024年春三年级语文下册第一单元口语交际春天去哪儿玩教案新人教版
- 2024年秋一年级语文下册课文26树和喜鹊教案新人教版
- 毕马威-海南自贸港旅游零售白皮书2025版:韧性前行潜力无限
- 2025年上海市闵行区高三语文二模试卷及答案解析
- 2025年教师资格师德师风建设试题及答案
- 期中测试卷(1-5单元)(试题)(含答案)-2024-2025学年二年级下册数学青岛版
- 2025届北京市顺义区高三下学期一模英语试题(原卷版+解析版)
- 2025年形势与政策-加快建设社会主义文化强国+第二讲中国经济行稳致远
- 激光雷达笔试试题及答案
- 人工智能技术与知识产权保护
- 2025届高三湖北省十一校第二次联考英语试卷(含答案详解)
- 信息技术与小学教育教学融合
- 产品设计研发费用统计表
评论
0/150
提交评论