您的当前位置:首页正文

锅炉汽包液位的三冲调节

来源:步旅网


《过程控制》课程设计任务书

专 业 学 生 题 目 设计时间 自动化 NUCLER WOODY 班 级 指导教师 0702101 冯乃章 锅炉汽包液位的三冲调节 2010年 12月 4 日 至 2010 年 12 月 10 日 共 1 周 设计任务: 锅炉汽包液位是锅炉运行中一个重要的监控参数,反映了锅炉负荷与给水的平衡关系,要求汽包液位控制在一定范围内。锅炉汽水系统结构如图2 所示。 图2 锅炉汽水系统 1—给水泵;2—给水母管;3—调节阀;4—省煤器 5—锅炉汽包;6—下降管;7—上升管;8—蒸汽母管 汽包液位过高会造成蒸汽带水,影响汽水分离效果;水位过低容易使水全部被汽化烧坏锅炉。影响汽包液位的因素,除了加热汽化外,还有蒸汽负荷和给水流量的波动,当负荷突然增大、汽包压力突然降低时,水就会被急剧汽化,出现大量气泡,形成“虚假液位”。 单冲量控制系统的负荷一旦急剧变化就会出现虚假液位,因液位升高,调设计要求 节器就会关小供水阀门而造成事故。双冲量控制系统,是在单冲量控制系统的基础上加上一个蒸汽冲量,以克服虚假液位。三冲量调节系统,它是在双冲量控制系统上再加上一个给水流量的冲量。由蒸汽流量、给水流量前馈与汽包液位反馈所组成的三冲量控制系统,图3所示。 蒸汽流量D设定值G2(s)水位模糊PID控制器调节阀汽包对象G1(s)WH 图3 三冲量控制系统框图 aD、aW、aH分别为蒸汽流量变送器、给水流量变送器、差压变送器的转换系数。已知某供汽量为120t/h的锅炉,给水流量与水位的传递函数G1(S),蒸汽流量与水位的传递函数G2(S)分别为: G1(S)=H(S)0.0529= W(S)S(8.5S+1) (1) G2(S)H(S)2.6130.0747 D(S)(6.7S1)2S (2) aD、aW、aH分别为:0.0667,0.0667及0.0333。调节阀采用线性阀,增益为15。 试用PID、模糊PID控制等方法实现对锅炉液位的控制。 要求: 1、超调小、调节时间短,对扰动的抑制效果好; 2、给出控制策略和选定参数,并详细说明参数整定过程; 3、给出MATLAB下的仿真曲线。 4、给出硬件实现方案,包括控制器和检测回路芯片的具体型号。 方案设计: 1. 采用Matlab完成控制系统的设计仿真; 2. 选择元器件,完成电路设计,使用Protel绘制原理图; 3. 控制器采用单片器实现,型号可自选。 报告内容: 1. 控制系统仿真和设计步骤,应包含Matlab仿真的性能曲线、控制策略、参数选择和详细的参数整定过程、结果分析; 2. 元器件选型及选型原则,电路设计,以及绘制的Protel原理图; 3. 软件流程图,以及含有详细注释的源程序; 4. 设计工作总结及心得体会; 5. 列出所查阅的参考资料。 指导教师签字: 系(教研室)主任签字:

年 月 日

一、任务分析 ................................................................. 5

二、PID参数整定 ............................................................. 5 三、模拟PID控制器的离散化 ................................................... 8 四、由脉冲传递函数求解差分方程 .............................................. 12 五、硬件电路设计 ............................................................ 12

(1) 控制器的选择与电路设计 ............................................ 12 (2) AD的选择与电路设计 ............................................... 12 (3) DA的选择与电路设计 ............................................... 12 (4)最小系统电路图 ..................................................... 13 六、单片机程序设计 .......................................................... 14

(1)程序流程图 ......................................................... 14 (2)源程序 ............................................................. 14 七、课题延伸 ................................................................ 16 八、心得体会 ................................................................ 16 九、参考文献 ................................................................ 17

一、任务分析

按照设计任务要求可知,要做的工作就是PID控制器的设计。而PID控制器设计的关键就在于PID参数的整定,故应把主要精力用在PID参数的整定上。

二、PID参数整定

1、运行如下程序,将传递函数化为有理分式。 %% Nuclear Woody of Inspire 2010-12-05 %Process System Computer s=tf('s');

G1=0.0529/(s*(8.5*s+1))

G2=2.613/(6.7*s+1)^2-0.0747/s Kv=15; ad=0.0667; aw=0.0667; ah=0.0333;

得G1的传递函数为: 0.0529 ----------- 8.5 s^2 + s

G2的传递函数为:

-3.353 s^2 + 1.612 s - 0.0747 ----------------------------- 44.89 s^3 + 13.4 s^2 + s

2、得到Simulink仿真框图如下:

从框图可以看出,这实际上是一个串级控制系统,副回路已经设计完毕,现在只要完成

主回路的设计即PID控制器的参数整定。

3、PID参数的理论计算

将PID调节器置于纯比例作用的条件之下,改变Kp的值,得到主调节器在0.75下的比例带s值和被调量的振荡周期Ts;利用“衰减曲线法”的计算公式,分别求出调节器的整定参数值。

把积分作用和微分作用置零,不断改变Kp的值。当Kp50时,得到如下曲线:

50403020100-100102030405060708090100

由上图可知,衰减比0.75,此时s

1,Ts25 500.75时,衰减曲线法计算公式如下表

规律

P PI PID

参数

δ

TI

TD

δs1.2δs0.8δs0.5Ts0.3Ts0.1Ts

得到0.8s0.016,TI0.3Ts0.3257.5,TD0.1Ts0.1252.5 故得到:

Kp

162.5KIKP8.3,KDKPTD156 TI将PID控制系参数之位Kp62.5,KI8.3,KD156,得到阶跃响应曲线如下:

50403020100-100102030405060708090100

4、PID参数的调整

由理论计算的出的PID整定参数与理想参数会存在一些偏差,故可以再此基础上做一些微调,以求改善系统性能。

由上图可以看出,响应曲线超调偏大,调节时间也较长,可以适当减弱积分作用或者增大微分作用来减小超调,可以适当加强比例调节作用,以增强系统响应的速度。

Kp70,KI5,KD250,响应曲线如下:

353025201510500102030405060708090100

很明显,超调减小到了10%左右,调节时间也缩短为20s左右,达到了较好的控制效果。 此时PID控制器的传递函数为:Gc(s)70

5250s s三、模拟PID控制器的离散化

模拟控制器的离散化可以采用如下几种方法: (1)后向差分法(Fowler代换法) (2)前向差分法(Euler) (3)双线性变换法 (4)零极点匹配法

这里采用后向差分法,将Gc(s)70递函数。即:

5250s离散化,可得到数字控制器的脉冲传sU(z)T1z1 Gc(z)Gc(s)|1z1KPKIKD1sE(z)1zTT取T0.05s运行如下Matlab程序:

%% Nuclear Woody of Inspire 2010-12-07 %PID Controller c2d z=tf('z'); T=0.05;

s=(1-z^-1)/T Gc=70+5/s+250*s

得结果如下:

Transfer function:

101405 z^2 - 201400 z + 100000 ------------------------------ 20 z^2 - 20 z

即脉冲传递函数为:

201240z2401240z200000 Gc(z)220z20z

在Simulink中,用脉冲传递函数和零阶保持器代替原来的连续PID控制器,仿真框图图如下:

参数不变,采用前向差分法:

得出响应曲线如下如所示:

353025201510500102030405060708090100

加入扰动

35302520151050-50102030405060708090100

由响应曲线可以看出,扰动对控制系统的影响不大。

四、由脉冲传递函数求解差分方程

已知控制器脉冲传递函数为:

201240z2401240z200000U(z) Gc(z)20z220zE(z)即:201240E(z)401240z1E(z)200000z2E(z)20U(z)20z1U(z) 求得到差分方程如下:

u(k)10062e(k)20062e(k1)10000e(k2)z1u(k1)

五、硬件电路设计

(1)控制器的选择与电路设计

控制器选择AT89S52单片机,晶振选择12MHZ。最小系统设计如下图。

(2)AD的选择与电路设计

选择ADC0809,该AD具有8路输入通道,8位A/D转换器,即分辨率为8位。转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时),单个+5V电源供电 ,模拟输入电压范围0~+5V,不需零点和满刻度校准,工作温度范围为-40~+85摄氏度,低功耗,约15mW。由于该AD内部没有时钟,要外接时钟输入,时钟可以从单片机的ALE引脚引出,经过两个D触发器分频,可以得到500KHz的时钟信号,D触发器可以选择SUN7474,这样AD的转换时间为130us,可以满足本设计的要求。

(3)DA的选择与电路设计

分辨率为8位;电流稳定时间1us;可单缓冲、双缓冲或直接数字输入;只需在满量程下调整其线性度;单一电源供电(+5V~+15V);低功耗,200mW。可以满足本设计的需求。

将CS、WR1、WR2和XFER引脚接地,ILE引脚接+5V,Vref选择+5V, 8位数字信号输入端DI0~DI7分别接单片机的P0.0~P0.7引脚。此时DAC0832处于直通工作方式,数字量一旦输入,就直接进入DAC寄存器,进行D/A转换。

DAC输出的电压值为:UoutDVref28.

其中:D为输入的数字量大小。性。

为参考电压,这里是-5V,这样输出与数字量同极

(4)最小系统电路图

六、单片机程序设计

(1)程序流程图 开始 初始化

开定时器1

到达50ms?

Y 启动AD开始转换

转换完成? Y

读AD

计算u(k)

DA输出u(k)

等待下一个50ms的到来

(2)源程序

#include #define uchar unsigned char #define uint unsigned int

sbit ST=P2^2; sbit OE=P2^1; sbit EOC=P2^0;

uchar flag=0;

void Init_Timer1(void); //产生50ms的延时

void main(void) {

float uk_1=0.0; float uk=0.0;

N N float ek_2=0.0; float ek_1=0.0; float ek=0.0; ST=0;

OE=0; //输出数据线呈高阻态 ST=1;

ST=0; //开始转换数据 Init_Timer1(); while(1) {

if((EOC==1)&(flag==1)) {

uk_1=uk; ek_1=ek; ek_2=ek_1;

OE=1;//输出转换得到的数据 ek=P1; //保存数据

OE=0; //输出数据线呈高阻态 flag=0;

uk=10062*ek-20062*ek_1+10000*ek_2+10062*uk_1; //转换公式 P0=(uchar)uk; //将uk输出给DA }

else;//等待转换结束 } }

void Init_Timer1(void) {

TMOD|=0x10;//设置T1为工作方式1,为16位定时器 TH1=0x3C;

TL1=0xB0;//装初值,设置定时时间为50ms EA=1;//开总中断

ET1=1;//允许T1溢出中断 TR1=1;//计数器1开始工作 }

void Timer1_isr(void) interrupt 3 using 1 {

TH1=0x3C;

TL1=0xB0;//重装初值,设置定时时间为50ms ST=1;

ST=0; //开始下一次转换数据

flag=1; }

七、课题延伸

为了能够更加方便的进行操作,可以让单片机系统与上位机通信,用上位机来调整PID调节器的参数,这样的话增强了控制器的实用性。用Vc++可以编写上位机程序,参考操作界面如下:

八、心得体会

本次设计可以说是一次知识的综合应用。本设计的内容涉《过程控制》、《自动控制原理》、《计算机控制理论与应用》、《控制系统CAD》、《传感器》、《单片机》、《模拟电子技术基础》、《数字电子技术基础》、Protel原理图的设计、单片机及AD与DA的编程和应用,通过复习这些知识,完成了本次设计,收获颇多。

本次设计是以前学过的知识的一次理论联系实践的过程,首先利用根据题目要求,结合

Matlab通过计算,设计出控制器,再通过Matlab仿真对系统进行离散化,并利用Simlink完成了系统整个流程的仿真设计。然后我们开始硬件电路的设计,查阅了相关资料了解A/D及D/A的性能指标意义,结合本设计的要求,最后选择了ADC0809和DAC0832。在芯片选型后,按照芯片引脚功能及特性实现了AD、DA与单片机接口的设计。接着是软件的编程,利用Keil实现了程序的编写,调试。

当然,由于时间仓促,设计中还有很多需要完善的地方。首先要制作出实物来,光靠仿真是不能解决问题的,只有在设计的最小系统上运行编写的程序才能发现我们的设计能不能满足设计需求,因为实际中,由于原件参数的变化,电路板制作的工艺等都会影响系统的性能。设计出最小系统的数字控制器后,与被控对象结合以后,也不一定就能满足控制指标,还需要对控制器进行一些参数的调整才能满足要求。所以,除了设计外,系统的调试也是一个很重要的部分,调试就是不断地改变参数的过程,使系统最后工作在最佳的工作状态下。当然,可能由于设计时少考虑了一些因素,使得无论怎么调试参数,都不能满足设计要求,这时,就要重新设计,再调试,直到满足所有的指标。

九、参考文献

1、金以慧编著. 过程控制. 北京:清华大学出版社, 1993 2、李铁桥,张虹编著. 计算机控制理论与应用. 哈尔滨:哈尔滨工业大学出版社, 2005 3、戴仙金主编. 51单片机及其C语言程序开发实例. 北京:清华大学出版社, 2008 4、孙鑫,余安萍编著. VC++深入详解. 北京:电子工业出版社, 2006

因篇幅问题不能全部显示,请点此查看更多更全内容