组态软件中控制算法的研究应用_第1页
组态软件中控制算法的研究应用_第2页
组态软件中控制算法的研究应用_第3页
组态软件中控制算法的研究应用_第4页
组态软件中控制算法的研究应用_第5页
全文预览已结束

下载本文档

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

文档简介

1、组态软件中控制算法的研究应用摘要:组态软件以其系统高适配率、高可靠性、短开发周期及低研发经费等优点,正逐渐广泛 应用于工控系统的各个领域。本文以研究更方便、能更好应用于实际控制中的控制算法模块为出发 点,针对工程实际应川情况,讨论了 ptd控制及模糊控制这两种算法模块的设计及实现。采用activex 技术,以vb为编程语言进行算法模块的界面和功能的设计。关键词:组态软件;组件设计;ptd控制;模糊控制、引言组态软件是计算机技术与控制技术发展的产物,随着以工业pc为核心的自动控制集成系统技术 的日趋完善,组态软件越来越多的应用于工控系统的各个领域。组态软件在过程控制系统中完成数 据采集和处理、存

2、储、显示等方面优势明显,因此有必要对组态软件中过程控制算法模块进行研究 和开发1。工业控制中,fix. intouch等均是组态软件中的优秀代表,它们提供了丰富的图像显示,数据 库处理,对象连接等数据管理功能,为使用者提供了极人的方便,但其本身并不具备控制组态功能, 仍需单冋路调节器和可编程控制器等下位机来实现2。为进一步简化工程人员的工作量,减少重复 性工作,笔者提出开发通用控件来实现工程屮常用控制策略的功能。1=1前市场上普遍使用的国内外 组态软件产品都支持通用控件的嵌入使用,因此工程人员只需在所使用的组态软件中插入这些控件, 按照实际控制要求使用其组建各口的控制策略,避免了重复性的软件编

3、制丄作,更有效地加快了项 目的开发进程。二、组态软件控制算法的实现将控制算法设计成控件的形式,在组态软件中嵌入使用,其数据传输是程序内部的数据通讯, 实时性好。为了实现算法组件的通用性,把控制算法定义在activex控件中,只提供这些算法控件 的接口,在执行控制策略的画面中,用户只须调用这些算法控件,输入必要的参数和数据连接,即 可方便快捷地完成相应的控制策略。针对工程的实际应用情况,本文主要讨论pid控制、模糊控制 这两种算法模块的设计和实现。采用activex技术,以vb为编程语言进行算法模块的界面和功能的 设计。(-)pid控制算法模块釆用计算机实现的数字pid算法,由于软件系统的灵活性

4、,使算法得到了进-步地修正和完善。 pid控制算法的种类很多,应用场合的不同,对算法的要求也有所不同。主要有位置式pid控制算 法、增量式p1d控制算法和积分-分离式pid控制算法3。设计p1d控制算法组件界而如图2-1所 示。山于算法用在工程实际中的控制对象不同,所配置算法的比例系数、积分系数、微分系数三个 参数和控制的初始值不同,所连接的检测装置和控制执行装宜也不同,这些参数需耍用户根据口己的实际情况进行设置。因此,在控件中将这些参数设置成控件的屈性,通过文本框山用八给屈性赋 值并显示检测值和控制量的输岀值。在vb中读取属性值用get过程,给属性赋值用write过程。这两个过程是在为控件添

5、加属性时 vb自动创建的,只需在其中加入赋值语句。如通过文本框给控制对象赋初始值可以通过如下语句实 现:publicpropertygetsp () asvariantsp二textl. textendpropertypublicpropertyletsp (byvaivnew&#118alueasvariant)textl. text=vnew&#118alueproper!ychanged "sp”endproperty该程序中propertychanged “sp”不可缺少,调用propertychanged过程时控件创建了一个 writeproperties事

6、件,用八町以给propertybag对象中写入屈性的新设置并存盘,使该屈性永久 化,以保证用户在设计程序时可使用控件的属性设置。privatesubusecontrolutites (propbagaspropertybag)propbag. writeproperty "sp” textl. textendsub当控件需耍读取其存储属性时,创建一个readpropertios事件,在此事件处理程序中可使用 readproperty方法,将属性值读到文本框中显示。privatesubusecontrolreadproperties (propbagaspropertybag)text

7、l. text=propbag. readreadperty ("sp”)endsub在控件的设计中将具体的pid控制算法设计成控件。过程控制的特点是实时采集检测信号调节 控制输出,因此在控件屮加入时间函数,定时调用控制算法,根据采样检测信号算出输出控制量, 赋给相应的属性。在此应注意设定时间函数的采样时间间隔。时间间隔a短,计算机计算量大,负 荷较重,月.系统存在响应时间,若输出变化量大,易引起超调和振荡;若时间间隔太长,输出变化 慢控制缓慢,系统调节时间长。在ptd算法模块屮设计了三个ptd算法函数分别实现位置式、增量 式和积分分离式三种ptd控制算法,以按钮的形式呈现给用户,由

8、用户根据实际控制对象,通过点 击不同的按钮来实现相应的pid算法。在这个控件中p、i、d三个参数是独立的,若用户要实现pi、 pd算法,只需设定相应的参数值,选择位置式pid算法即可实现(属性的初始值为0)。1位置式pid控制算法为全量输出,每次输出均与过去的状态有关,计算时对e (k)进行累加, 计算机运算量人,计算输出的u (k)对应的是执行机构的实际位置。若计算机出现故障会引起执行 机构的大幅度变化,该算法适用于以晶闸管作为执行器或在控制精度要求高的系统中。2. 增量式控制算法対应的计算机输出为控制量的增量,所以误动作时影响小,必要时对用逻辑 判断的方法去掉。在进行手动/自动切换时冲击小

9、,便于实现无扰动切换。此外,当计算机发生故障 时,由于输出通道或执行装置具有信号的锁存作用,故能仍然保持原值。控制增量(k)的确定 仅与最近3次的采样值有关,所以较容易通过加权处理而获得比较好的控制效果。但增量式控制也 有其不足之处;积分截断效应人,有静态课差;溢出的影响人。3. 改进的pid算法-积分分离p1d算法。在计算机控制系统中,单-纯用数字控制模仿模拟调节器 而采川标准ptd控制算式,难以取得更好的控制效果4。因此需耍对标准ptd控制算式进行改造。 pid控制中的积分环节主要用于消除系统的稳态误差(静差),其对系统的动态性能也有影响:积分 时间ti越小,积分作用越强,反之,积分作用越

10、弱。增人积分时间tt,消除静差的过程将减慢, 但可减少系统的输出超调量,提高控制系统的稳定性。对于位置式pid控制算式,积分项的存在, 比较容易产生积分饱和效应,结果导致系统的输出y出现明显的超调量。为改善控制系统的控制性 能,就有必要对位置式标准p1d控制算式的积分项进行改进。(2-1)式中,系数的取值规则为:当ie (i) | w £ (预定门限)时,二1当|e (i) |> £ (预定门限)时,二0积分分离式pid控制算法的流程图及仿真结果如图2-2所示5。在普通pid数字控制器中引入积分环节主要是为了消除静差、提高精度。但在过程的启动、结 束或人幅度增减设定值

11、时,短时间内系统输出有很大的偏差,会造成pid运算的积分积累,致使算 得的控制量超过执行机构可能最大动作范围对应的极限控制量,最终引起系统较大的超调,甚至引 起系统的振荡。引入了积分分离pid控制算法,既保持了积分作用,又减小了超调量,使得控制性 能有了较大的改善。预先给定一门限值,当偏差比较大时采用pid控制,可避免过大的超调,又使 系统有较快的响应。当偏差比较小时采用ptd控制,町保证系统的控制精度。(二)模糊控制算法模块在模糊控制算法模块屮,实现了以谋差和课差的变化为输入量,以控制量的增量为输出量的二 维模糊控制器。设计模糊控制算法组件界面如图2-3所示。在模糊控制算法模块中,设计的思路

12、与pid模块部分相仿,首先确定哪些变量是需要用八给出 的,将其足义为控件的属性。模糊控制算法存在着基本论域到模糊子集论域的转化,因此需耍用户 给出误差和控制输出量的基本论域,在模块中将误差上、下限,输出上、下限定义为控件的属性, 另外控制对彖的设定值、检测信号值和控制输出是用户使用控件时耍使用的,也定义为控件的属性。 然后将模糊控制算法需要的模糊化方法、隶属函数、控制规则、模糊暈到精确量的转化方法都泄义 为控件的方法。最后定义时间函数,在时间函数中调用模糊控制算法函数,实现控制功能。在算法 模块中,采用三角形隶属函数进行误差rh楮确量到模糊量的转换,输出对应的模糊量向精确量的转 换采用加权平均

13、判决法,二维模糊控制器的偏差e、偏差的变化ec、控制器的输出u所对应的模糊 子集为七档,即(nl、nm、ns、ze、ps、pm、pl)。模糊控制算法模块中量化因子和比例因子的选择 很重要。实验表明,量化因子和比例因子的大小及其不同量化因子z间大小的相对关系,对模糊控 制器的控制性能影响极大。合理的确立量化因子和比例因子不仅要考虑所釆用的计算机的字长,还 要考虑计算机的输入输出接口屮d/a和a/d转换的精度及其变化范围。一般来说,ke较大时,系统 的超调也较人,过渡过程较长;ke较小时,则系统变化较慢,稳态精度降低。kec较人,则系统输 出变化率较小,系统变化较慢;kec若较小,则系统反应加快,

14、但超调增大。ku选择较少时,系统 的动态响应过程较长;ku选择较大时,会导致系统振荡,如果发现系统振荡,可考虑减小比例因子。1. 控制算法模块的使用。(1)使用算法控件前,首先要注册此控件,注册方法是执windows系统“开始运行”命令, 在出现的对话框屮输入如下命令"regsvr32控件所在路径控件的名字.ocx”,按卜”确定”按钮, 系统会有注册成功信息弹出。(2)画而中插入控件:纟r态画而菜单中编辑/插入通用控件,或在工具箱”插入通用控件”按 钮,在弹出的对话框中选择” fuzzycontrol",单击确定。(3)在画面上绘制出控件。(4)设置动画连接:双击控件,在弹

15、出的属性页屮设置控件名称等信息。在使用控件的画面屮 定义一个时钟函数,时间间隔根据实际要求定义,时钟到达设定值时会触发一个事件函数,在相应 的事件函数屮给变量赋属性值,即可得到输出值的实时变化。2. 模糊控制算法模块的结果。按照编制模糊控制算法所采用的论域的划分、隶书函数、控制规则、解模糊的方法、各项比例 因了在matlab模糊控制器中建立模糊控制文件,输出到工作帘间,在simulink中导入引用进行仿 真得到模糊控制效果如图2-4所示。三、结束语本文根据工程实际应用,提出了用组件技术对组态软件进行二次开发,以丰富的组态软件控制 功能,就过程控制技术在实际中的应用进行了论述,研究了工程中常用控制算法的原理及设计方法, 设计了基于组件技术的控制算法模块,并在实际应用中取得了一定的效果。参考文献1 马国华监控组态软件以及应用m.清华大学出版社,20012 葛玻,沈文杰,赵旎工控组态软件的对比及应用jl计算机测量与控 制,2002,10(8):278-2833 陶永华.新型pi

温馨提示

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

评论

0/150

提交评论