基于组态王的单容水箱液位控制系统
内蒙古科技大学信息工程学院
测控专业毕业实习报告
题 目:基于组态王的单容水箱液位控制系统 学生姓名: 学 号:
专 业:测控技术与仪器 班 级:测控2009-1 指导教师:李文涛 教授
前 言
随着科学技术的发展,现代工业生产中的控制问题也日趋复杂。在人们的生活中以及某些化工和能源的生产过程中,常常涉及一些液位或流量控制的问题。比如,在石油、化工、轻工等工业生产过程中,有许多贮罐作为原料、半成品的贮液罐,前一道工序的成品或半成品不断地流入下一道工序的贮液罐进行加工和处理,为保证生产过程能连续进行,必须对贮罐的液位进行控制。此外,居民生活用水的供应,通常需要使用蓄水池,蓄水池中的液位需要维持合适的高度。还有一些水处理的过程也需要对蓄水池中的液位实施控制。这些实际问题都可以抽象为某种水箱的液位控制。因此,液位控制系统是过程控制的重要研究模型,对液位控制系统的研究具有显著的理论和实际意义。
本课题主要以单容水箱作为研究对象,运用研华PCI1710及1720板卡进行单容水箱对象特性的测试,从而求得其数学模型,并利用MATLAB 软件进行了控制系统的仿真及分析,并确定出一组合适的PID 参数对其进行控制。其次,采用组态王进行系统监控,通过对调节器PID 参数的整定,实现了水箱液位的闭环控制,使水箱液位稳定在设定值,满足设计要求。
一、总体方案设计
该设计方案硬件部分由计算机,水泵,电磁阀,液位变送器,PCI-1710与1720板卡组成,软件部分以组态王来实现编程控制。组态王通过从 PCI-1710与1720板卡两个I/ O模块与外界硬件设备通讯, 对采集的数据进行处理来实时监控。系统启动后,水泵由水源抽水,通过管道将水送到上水箱,液位变送器测得水箱液位通过板卡PCI-1710转换为数字信号输入计算机,组态监控中心对测得信号进行处理,通过PID 运算,输出控制信号由板卡PCI-1720进行D/A转换,传送给电磁阀,进而控制水的流量实现对水箱液位控制。系统方框图如图1.1所示。
图1.1系统方框图
二、单容水箱对象特性测试及分析
2.1被控对象动态特性概述
被控对象的动态特性是指被控对象的输入发生变化时,其输出(被调量)随时间变化的规律。研究动态特性的原因是控制系统的设计方案都是依据被控对象的动态特性进行的,特别是调节器参数的整定也是依据对象的动态特性进行的。从控制观点看,被控对象本质上都有相同之处,分析被控对象的动态特性,可知被控对象控制的难易程度与调节过程的快慢。要评价一个系统的工作质量,只看稳态是不够的,还应看动态过程中被调量随时间的变化情况。因此,研究系统的动态特性就显得特别重要。 2.2被控对象数学模型的建立
建立被控对象数学模型的方法主要有三种,分别是机理法、实验法、机理法与实验法相结合的混合法。机理法根据被控过程的内部机理,运用已知的静态或动态平衡关系,用数学解析的方法求取被控过程的数学模型。实验法是先给被控过程人为地施加一个输入作用,然后记录过程的输出变化量,得到一系列实验数据或曲线,最后再根据输入-输出实验数据确定其模型的结构(包括模型形式、阶次与纯滞后时间等)与模型的参数。混合法是机理演绎法与实验辩识法相互交替使用的一种方法。
2.2.1机理法建立单容水箱的数学模型
从机理出发,依据物料平衡和能量平衡的关系,用理论的方法推导被控对象的数学模型。单容水箱的模型如下图2.1所示:
图2.1单容水箱模型图
其中:被控参数--h ;输入量--Qi ;干扰量--Qo
分析水位在调节阀1开度扰动下的动态特性,即确定h ~Qi 之间的数学关系 根据动态物料平衡关系,在任何时刻水位的变化均满足 在起始的稳定平衡工况下有如下关系式:
0=
1
A
(Q i
-Q o 0)
(式2-1)
dh 1
=(Q i -Q o )dt A
d ∆h 1
=(∆Q i -∆Q o )dt A
(式2-2)
两式相减得增量形式的平衡方程: 假设
(式2-3)
∆Q o =
∆h
则单容液位过程的微分方程增量式
RA
R
(式2-4)
d ∆h
+∆h =R ∆Q (式2-5) dt
传递函数为
G (s ) =
H (s ) R R
(式2-6) ==
Q i (s ) RCs +1Ts +1
T--被控过程的时间常数T=RC; K--被控过程的放大系数,K=R; C--被控过程的容量系数,C=A
有些被控过程存在纯滞后,则具有纯滞后的单容过程相应的传递函数为
G (s ) =
H (s ) K -τ0s
=e (式2-7) Q i (s ) Ts +1
其阶跃响应曲线与无滞后的曲线形状相同,只是在时间上推迟了τ0。
由此可见,用机理法建立数学模型的首要条件是被控过程的机理必须为人们充分掌握,并且可以比较确切的加以数学描写。考虑到参数测量的准确性与复杂性,排除机理法的使用。
2.2.2阶跃响应曲线法建立单容水箱的数学模型
阶跃响应曲线法是实验法的一种,即对被控对象施加一阶跃信号, 并且阶跃响
应获取应注意以下的问题:(1)合理选择阶跃扰动的幅度(一般约为额定负荷的10%~20%)(2)实际阀门只能以有限速度移动(3)一般认为阶跃信号是在t1 /2时加入(4)试验前确保被控对象处于稳定工况(5)考虑过程的非线性特性,应进行多次测试。(6)若过程不允许同一方向扰动加入,则采用矩形脉冲扰动,可从脉冲响应曲线求出所需的阶跃响应。
根据以上原则,经过多次测量,得出在阶跃扰动为稳态值的10%时,时间与液位高度的对应关系如下表2.1所示(t=10输出无变化) :
表2.1液位过程的阶跃响应数据
由于是单容水箱,则其数学模型可以用一阶惯性环节加纯延迟的传递函数即
G (s )=
K
e -τs (式2-8) T s +1
来近似,确定参数k 、T 、τ有两种方法:作图法、参数两点法。
用作图法求参数时需注意:(1)t1/2处为扰动起点(2)在s 型响应曲线
找拐点,并作切线。T 、τ值如下且k =
y ∞
∆x
Y
t
图2.2(a )阶跃信号 图2.2(b )一阶惯性环节加纯延迟
显然,用这种方法求直线效果是很差的。首先,与式(2-8)所对应的阶跃响应是一条向后平移了τ时刻的指数曲线,它不可能完美的拟合成S 型的曲线,再次,在做图中,切线的画法也有很大的随意性,这将直接关系到τ和T 的取值,
因此,参数的确定排除用此方法,选用参数两点法,首先,将响应曲线标幺
y *=
y (t )
(式2-9) y (∞)
t
y (t )=⎨⎛t -τ⎫
取y*(t1)=0.39,取y*(t2)=0.63,记t1和t2
则T =2(t 2-t 1) (式2-11) (式2-12) τ=2t 1-t 2 取t 3=0. 8T +τ t 4=2T +τ 验证y *(t 3) =0. 55 y *(t 4) =0. 87
基于以上原理,用Matlab 编程, 程序见附录[A],并且在误差的范围之内,可以接受。则数学模型为:G (S ) =
20
e -58s (式2-13)
137s +1
2.2.3利用simulink 工具箱验证模型的准确性
在matlab 中打开simulink ,编写以下程序并在命令窗口对曲线进行处理,程序见附录[A]:
图2.3 广义对象阶跃响应框图
则用数据拟合出的曲线(原系统)与建立模型后的曲线(近似曲线)如下图2.4所示:
单容水箱阶跃响应曲线对比
h /m m
100
200
300t/s
400
500
600
图2.4 单容水箱阶跃响应曲线对比
2.2.4 PID控制器校正单容水箱系统
利用Simulink 仿真模块集在模型编辑窗口建立PID 控制器,如下图2.5所示:
图2.5 PID 控制子模块
之后,点击Edit —Mask Subsystem,对其进行封装。其封装图如图2.6所示。
图2.6 PID控制器的封装
加入PID 调节器后,系统方框图如下图2.7所示:
图2.7系统方框图
此后,反复调试PID 参数,得到如下较为理想的曲线。因为微分对纯延迟环节不起作用,则纯延迟部分始终无法消除,其参数设计如图2.8所示
.
图2.8 PID参数
对应的阶跃响应曲线如下图2.9所示。
[***********]0
图2.9 理想PID 参数下的阶跃响应曲线
三、单容水箱监控画面的设计
3.1组态王设计步骤
建立新工程项目:在运行组态王程序时,弹出组态王工程管理器画面,此时建立一个新工程,执行以下的操作步骤:
(1)在工程管理器中选择菜单“文件/新建工程”,弹出“新建工程向导一欢迎使用本向导”对话框。
(2)点击“下一步”,弹出“新建工程向导二选择工程所在路径”对话框。从对话框中选择或指定工程所在路径,倘若用户需要更改工程路径,请单击“浏览”按钮;如果路径或文件夹不存在,请选择创建。
(3)点击“下一步”,弹出 “新建工程向导三工程名称和描述”对话框。往对话框中输入工程名称:水箱液位控制界面。
(4)点击“完成”,再点击“是”,将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。
制作动态画面:按照实际工程的要求绘制监控画面,并使静态画面随着过程控制对象产生动态效果。
(1)新建画面命名:单容水箱液位控制,选择画面风格“大小可变”和“覆盖式”。单击确定后进入开发系统新画面进行设计。点击工具栏中的“打开图库”,选择需要的图素。水箱液位监控画面如图3.1所示。
图3.1 水箱液位监控画面
3.2动态画面的连接
画面设置完之后,要定义板卡及变量的信息,接下来就要实现动画的连接。
其中这部分连接包括仪表对象、当前液位值显示文本对象、实时趋势曲线、数据报表、报警窗口、退出界面等。连接之后,接下来就是编写命令语言。 3.3 水箱液位PID 参数控制界面
用上述同样的方法可以对KP 、KI 、Kd 、SV 、UK 、Pv 后的”##”, 进行动画连接。水箱液位PID 参数控制界面运行画面如下图所示。
图3.2 水箱液位PID 参数设置画面
总 结
本设计用组态软件实现了水箱液位的监控,并且能够通过PID 参数的设计达到控制液位的目的。本次毕业设计,增加了我对专业知识的认识和了解,尤其是过程控制和智能仪器知识的运用。经过大量相关资料的查阅,包括控制系统工作原理以及如何利用过程控制及智能调节器实现各种功能,我不仅学会了许多知识,而且培养了我独立解决问题的能力,同时在对硬件设计的过程中,巩固了我的专业课知识,使我受益匪浅。总之,通过本次设计不仅进一步强化了专业知识,还掌握了设计系统的方法、步骤等,为今后的工作和学习打下了坚实的基础。再者,我对Matlab 比较感兴趣,并且经过上学期的学习有了一定的基础,上手比较容易,首先经过对资料的整理、理解和消化,我对自己的设计内容思路清晰了,仿真达到预期效果时,我就开始整理自己的思路,最终明确了参数的影响。达到了课设的目的。这次毕业设计不但巩固我所学的基础知识,而且提高我的动手能力和动脑能力。所以总的来说,这次毕业设计我学到很多!
参考文献
[1]李文涛. 过程控制[M].北京:科学出版社,2012.
[2]雄伟. 工控组态软件及应[M].北京:中国电力出版社,2011. [3]PCI-1710/1710HG快速安装手册.
[4]潘海. 基于组态王的水箱液位控制系统设计[J].科技资讯,2009(26). [5]张玲霞, 李学军, 李杰. 基于组态王的液位控制系统仿真实验[J]. 长春大学学报,2010(04).
[6]袁荣华, 黄世钊, 冯钏山, 潘树林. 基于组态王的水箱液位监控系统设计及测试[J].广西大学学报,2008(01).
[7]陈曦, 丁跃浇, 肖翀. 基于PLC 和组态王的单容水箱液位定值控制实验[J].湖南理工学院学报,2011(01).
[8]崔成梅, 陈金艳, 马永青. 工业过程控制的模块化设计方法[J]. 黑龙江科技信息, 2008(17).
[9]石浩旭. 基于组态王的远程过程控制系统的设计[J].科技致富向导, 2011(15).
[10]王树青. 工业过程控制工程[M].北京:化学工业出版社,2003. [11]吴祚武. 液位控制系统[M].北京:化学工业出版社,2006.
[12]何玉樵. 化工过程控制及仪表[M].成都:成都科技大学出版社 ,1991. [13]邵世煌. 计算机控制技术[M].北京: 纺织工业出版社,1991.
[14]关业伟, 鲁凯生. 组态王和MATLAB 的DDE 应用研究[J]. 船海工程, 2005(06).
[15]房向荣, 施仁. 组态王与智能仪器的动态数据交换[J].工业仪表与自动化装置,2005(03).
附录[A]
// 求取参数k 、T 、
tw=10;%输出无变化的时间
t=[10,20,40,60,80,100,140,180,250,300,400,500,600]-tw; h=[0,2,8,20,36,54,88,118,144,166,184,192,196]; h=h/h(length(h));
h1=0.39;t1=interp1(h,t,h1)+tw;%利用一维线性插值计算h=0.39时的时间t1 h2=0.63;t2=interp1(h,t,h2)+tw;%利用一维线性插值计算h=0.63时的时间t2 T=2*(t2-t1),tao=2*t1-t2
得出:T =136.7077 tao =58.0462
t3=0.8T+tao=167.41236 t4=2T+tao=331.4616时
h3= interp1(t,h,167.41236)时得 0.5921而理论值为0.55 h4= interp1(t,h,331.4616)时得0.8850而理论值为0.87 k=200/10=20
//对曲线进行处理
tw=10;%输出无变化的时间
t1=[10,20,40,60,80,100,140,180,250,300,400,500,600]-tw; h1=[0,2,8,20,36,54,88,118,144,166,184,192,196]; [t2,x2,h2]=sim('sy3_3_2',600);plot(t1,h1,t2,h2) plot(t1,h1,':',t2,h2,'-') legend('原系统',' 近似系统') xlabel('t/s') ylabel('h/mm')
title('单容水箱阶跃响应曲线对比') grid