数字控制器设计._第1页
数字控制器设计._第2页
数字控制器设计._第3页
数字控制器设计._第4页
数字控制器设计._第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 课程论文数字PID控制器设计学生成绩:学生学号:20153050学生姓名: 赵付泽学生专业:控制工程课程名称:数字控制技术任课教师:王英提交日期:2015 年1月7日大连交通大学研究生学院 数字PID控制器设计摘要 本文在完成计算机控制学习的基础上结合自动控制原理的学科知识,自拟题目,利用计算机控制系统的知识,借助MATLAB,完成对自拟系统的分析和PID控制器的设计,并将硬件电路画出。关键词:计算机控制,PID控制器,MATLAB一前言设单位反馈系统的开环传递函数为,设计数字PID控制器,使系统的稳态误差不大于0.1,超调量不大于20%,调节时间不大于0.5s。并采用位置算法实现该PID控

2、制器。二设计原理 PID控制是最早发展起来的经典控制策略,是用于过程控制最有效的策略之一。由于其原理简单技术成熟,在实际应用中较易于整定,在工业控制中得到了广泛的应用。它最大的优点是不需了解被控对象精确的数学模型,其需在线根据系统误差段误差的变化率等简单参数,经过经验进行调节器参数在线整定,即可取得满意的结果。具有很大的适应性和灵话性。PID控制中的积分作用可以减少稳态误差,但另一方面也容易导致积分饱和,使系统的超调量增大。微分作用可提高系统的响应速度,但其对高频干扰特别敏感,甚至会导致系统失稳。所以,正确计算PID控制器的参数,有效合理地实现PID控制器的设计,对于PID控制器在过程控制中的

3、广泛应用具有重要的理论和现实意义。在典型PID控制系统中PID控制器分别对误差信号E(t)进行比例、积分与微分运算其结果的加权和集成系统的控制信号u(t),送给对象模型加以控制。PID控制器的数学描述为:(2.1)其传递函数可表示为:(2.2) 从根本上讲,设计PID控制器也就是确定其比例系数Kp、积分系数Ti和微分系数Td。,这三个系数取值的不同,决定了比例、积分和微分作用的强弱。控制系统的整定就是在控制系统的结构已经确定、控制仪表和控制对象等处在正常状态的情况下适当选择控制器的参数使控制仪表的特性和控制对象的特性相配合从而使控制系统的运行达到最佳状态,取得最好的控制效果。位置式PID控制算

4、法。由于计算机控制是一种采样控制,它只能根据采样时刻的偏差值计算控制量,需要进行离散化处理。现以一系列的采样时刻点kT代表连续时间t,以和式代替积分,以增量代替微分,则可以作近似变换; 图1 由于计算机控制是一种采样控制系统,它只能根据采样时刻的偏差值计算控制量。因此,(22)式中的积分和微分项不能直接使用,需要进行离散化处理。现令T为采样周期,以一系列的采样时刻点kT代表连续时间t,以累加求和近似代替积分,以一阶后向差分近似代替微分,做如下的近似变换: t=KT (2.3) (2.4) (2.5)其中,T为采样周期,e(k)为系统第k次采样时刻的偏差值,e(k-l)为系统第(k-l)次采样时

5、刻的偏差值,k为采样序号,k=0,1,2,。 将上面的(2.4)式和(2.4)式代入(2.2)式,则可以得到离散的PID表达式 (2.6)如果采样周期了足够小,该算式可以很好的逼近模拟PID算式,因而使被控过与连续控制过程十分接近。通常把(2.6)式称为PID的位置式控制算法。若在(2.6)式中,令: (称为积分系数) ; (称为微分系数)则 (2.7)(2.7)式即为离散化的位置式PID控制算法的编程表达式。可以看出,每次输出与过去的所有状态都有关,要想计算u(k),不仅涉及e(k)和e(k-l),且须将历次e(j)相加,计算复杂,浪费内存。下面,推导计算较为简单的递推算式。为此,对(2.7

6、)式作如下的变动:考虑到第(k-l)次采样时有 (2.8)使(2.7)式两边对应减去(2.8)式,得 整理后的 (2.9) 其中,(2.9)式就是PID位置式得递推形式。 如果令则 (2.10)式中的同(2.10)式中的一样。 因为在计算机控制中、都可以事先求出,所以,实际控制时只须获得e(k)、e(k-l)、e(k-2)三个有限的偏差值就可以求出控制增量。由于其控制输出对应执行机构的位置的增量,故(2.10)式通常被称为PID控制的增量式算式。三数字PID参数整定 利用扩充临界比例度法选择数字PID参数,扩充临界比例度法是以模拟PID调节器中使用的临界比例带法为基础的一种数字PID参数的整定

7、方法。其整定步骤如下:;1.选择一个足够短的采样周期T。通常选择采样周期为被控对象纯滞后时间的1/10。2.在纯比例的作用下,给定输入阶跃变化时,逐渐加大比例作用Kp(即减小比例带),直至系统出现等幅震荡,记录比例增益Kc,及振荡周期Tc 。Kc成为临界振荡比例增益(对应的临界比例带),Tc成为临界振荡周期。在MATLAB下输入如下程序: sysc=tf(1,1/150,36/150,185/150,1); p=20:1:45; for i=1:length(p); sysc0=feedback(p(i)*sysc,1); step(sysc0),hold on end; axis(0,10,

8、0,2.3)得到如下图所示图形: 图2调整程序参数p=40:1:45进一步精确得Kc约为43.2,Tc约为0.5,观察控制系统的响应特性。在MATLAB下输入如下程序: sysc=tf(1,1/150,36/150,185/150,1); p=40:1:45; for i=1:length(p); sysc0=feedback(p(i)*sysc,1); step(sysc0),hold on end; axis(0,10,0,2.3)得到如下图所示图形: 图3扩充临界比例度法选择数字PID参数的计算公式如下表所示:3. 选择控制度。控制度的定义为数字调节器和模拟调节所对应的过度过程的误差平方

9、积分之比,即控制度=式中,为数字调节器的控制误差;e为模拟调节器的控制误差.当控制度为1.05时,数字调节器鱼模拟调节器的控制效果相当;当控制度为2时,数字调节器比模拟调节器的控制效果差一倍;在此选控制度为1.05。4.按选择的控制度指标及Tc,Kc实验测得值,由查表选择相应的计算公式计算采样周期:T=0.007,Kp=27,Ti=0.245,Td=0.07; =0.77,=270, Ki=0.23 图4四建立simulink模型1.采用后向差分离散化,可得:= 在Matlab-simulink中建立如下模型Scope中得到阶跃响应曲线如下所示: 图5由图可见超调量较大减小Kp的值,增大Kd用

10、试凑法得到一组数据:T=0.014,Kp=15,Ki=0.23 ,Kd=2502.采用后向差分离散化。Matlab-simulink中建立如下模型:Scope中阶跃响应图形如下 图6由上图可看出上组数据满足了任务要求:系统的稳态误差不大于0.1,超调量不大于20%,调节时间不大于0.5s。五MCS-51单片机实现控制器的设计控制系统结构框图如下: 图7 1. 器件选择主控制器选用熟悉的AT89c51单片机。由于没有对精度的要求,选用常见的8位AD/DA芯片ADC0809和DAC0832。由于系统要求采样周期0.015ms,而上述AD、DA芯片转化时间很短(ADC0809约100us,DAC08

11、32约1us),因此上述芯片满足要求。2. 电路设计1、A/D芯片与单片机连接:单片机与AD、DA采用总线方式连接,锁存器74LS373进行地址锁存。采用统一编址方式访问。地址线A0,A1,A2,A3分别于A,B,C,ALE连接,通过地址选择IN0口为输入。2、DAC0832与单片机连接如下:电流输出,经双运放转化,输出为双极性。系统总电路如下:3. 程序设计程序采用汇编语言编写主程序流程图、中断服务程序、PID算法流程图如下: 开始 输入给定值r(k) 初始化 调用AD转换程序测出输出值c(k) 计算偏差e(k)=r(k)-c(k) Up(k)=Kb*e(k)Ui(k)=Kie(k)+Ui(

12、k-1)Ud(k)=Kde(k)-e(k-1) U(k)=Up(k)+Ui(k)+Ud(k)e(k)e(k-1)Ui(k)Ui(k-1) 调用DA转换程序输出控制量u(k)到达采样周期? Y N 程序设计如下:R EQU 31H ;给定值(阶跃响应)KP EQU 32H ;存放kpKI EQU33H ;存放256*kiKDEQU34H ;存放kdE0EQU35H ;存放e(k)E1EQU36H ;存放e(k-1)UPLEQU37H ;Up(k)的低8位UPHEQU38H ;Up(k)的高8位UILEQU39H ;Ui(k-1)的低8位UIHEQU3AH ;Ui(k-1)的高8位DATEQU3B

13、H ;采样AD数据c(k)UKEQU3CH ;PID输出ORG0000HAJMPMAINORG000BHLJMPITT0 ORG 0100HMAIN: MOV SP,#60H MOV R0,#31H MOV R1,0CH CLR ALOOP: MOV R0,A ;31H3CH清0 INC R0 DJNZ R1,LOOP MOV R,#01H ;给定阶跃值1 MOV KP,#16 ;比例系数kp=16 MOV KI,#3AH ;积分系数256*ki=3AH 以整数输入 MOV KD,#250 ;微分系数kd=250 MOV TMOD,#01H ;设置定时器0方式1工作(16位定时器) MOV T

14、L0,#0C9H ;定时14ms MOV TH0,#4FH SETB TR0 SETB EAHERE: AJMP HEREITT0: MOV TL0,#0C9H ;重装初值 MOV TH0,#4FH ACALL ADC ;调用AD转换程序 ACALL PID ;调用PID控制程序 ACALL DAC ;调用DA转换程序 RETIADC: MOV DPTR,#0F8H ;ADC0809模拟输入通道IN0的地址 MOVX DPTR,A ;启动AD转换 ACALL DELAY ;软件延时1s,等待转换结束 MOVX A,DPTR ;读取转换结果 MOV DAT,A ;转换结果保存,以便PID控制程序

15、使用 DAC: MOV R0,#0F0H ;DAC0832地址F0H送R0 MOV A, UK ;PID输出 MOVX R0,A ;启动DA转换 RET DELAY: PUSH PSW PUSH ACC SETB RS0 ;选第1组为当前工作寄存器区 CLR RS1 MOV R1,#05HLOOP1: MOV R0,#64HLOOP2: DJNZ R0,LOOP2 ;延时时间为(100*2+1+2)*5=1000us=1ms DJNZ R1,LOOP1 POP ACC POP PSW RETPID: MOV B,DAT MOV A,R CLR C SUBB A,B ;求当次偏差e(k)=r-c

16、(k) MOV E0,A ;存e(k) MOV B,KP MUL AB ;求up(k)=kp*e(k) MOV UPL,A ;保存up(k)的低8位 MOV UPH,B ;保存up(k)的高8位 MOV A,E0 MOV B,KI MUL AB ;计算256ki*e(k) MOV R1,B ;256ki*e(k)低8位丢掉,高8位-R1,为ki*e(k) MOV R2,UIL ;ui(k-1)低8位-R2 MOV R3,UIH ;ui(k-1)高8位-R3 MOV A,R1 ;ki*e(k)-A ADD A,R2 ;计算ui(k)低8位=ki*e(k)+ui(k-1)低8位 MOV R0,A

17、;暂存ui(k)低8位-R0 CLR A ADDC A,R3 ;ui(k)高8位=ui(k-1)低8位+低位进位 MOV R1,A ;ui(k)高8位-R1 MOV UIL,R0 ;存ui(k)低8位 MOV UIH,R1 ;存ui(k)高8位 MOV A,E0 ;e(k)-A MOV R0,E1 ;暂存e(k-1)-R0 MOV E1,A ;e(k)-e(k-1)为下次循环做准备 CLR C SUBB A,R0 ;计算e(k)-e(k-1) MOV B,KD MUL AB ;计算ud(k)=kd*e(k)-e(k-1) MOV R0,A ;暂存ud(k)低8位-R0 MOV R1,B ;暂存ud(k)高8位-R1 MOV A,R0 ADD A,UIL ;ui(k)低8位+ud(k)低8位-A MOV R0,A ;暂存ui(k)低8位+ud(k)低8位-R0 MOV A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论