自动发油控制软件设计(一)

时间:2024-10-25 20:22:57 自动化毕业论文 我要投稿
  • 相关推荐

自动发油控制软件设计(一)

4系统软件设计
4.1自动发油控制软件设计
4.1.1控制系统分析
4.1.1.1影响系统发油精度的主要因素
 控制系统由可编程控制器、电液阀、流量计、温度变送器等组成,影响发油精度的因素很多,其中主要有以下几点:
 (1)流量计精度:流量计的误差直接关系到整个发油系统的发油准确度,而流量计的发信装置是否可靠,在执行系统中又关系到发油精度。当流量维持在流量计标定的范围内时,呈现稳定的误差值,也就是流量计的精度等级;在该区间以外的部分,误差急骤增大,流量计无法正常工作。所以发油过程中,一定将流量控制流量计的标定范围内。
 (2)电液阀启闭特性的影响:电液阀的作用是接受远程控制指令,起到自动控制液体通断的功能,它的通断自控效果间接影响到发油精度;其启闭过程中,使流过流量计理论的流量特性呈现如图4-2中的特性。图4-2中AOB的面积为流量计工作下限“死区”特性造成的;CDE的面积是由执行机构响应时间特性引起的“过冲量”。这两部分的流量均不能被系统有效地计量,“过冲量”的大小主要受电液阀响应速度的影响。
 
 图4-2 理论流量特性曲线
 Fig.4-2 Theoritical flow characteristic curve
 (3)系统稳定性:关闭电液阀时的流量越小越容易控制发油精度。为了保证发油精度,系统在关闭电液阀前,都将流量控制在流量计的最小流量值。可是当系统干扰因素引起流量的波动较大时,将导致电液阀多次开关,从图4-2可知电液阀的多次开关会增加流量计“死区”和“过冲量”引起的误差。
 (4)发油温度的影响:发油的温度必然引起油品密度的变化,对于应用体积流量计进行油品计量的系统,在发油量计算时还要进行温度补偿。
4.1.1.2提高系统发油精度的主要措施
 软件设计上,充分考虑系统发油精度的影响因素,针对不同的影响因素采取相应的措施。
 (1)充分发挥流量计的工作状态:考虑到流量计的最小分辨率,采取变采样周期的采样方式。通过控制电液阀,使流量稳定工作在流量计的工作范围内。充分利用PLC高速口和中断功能,对流量进行及时准确地计算。
 (2)提前量自整定:对电液阀的“过冲量”进行预补偿,采取提前量自整定设计,使系统能够根据系统自身的稳定性对提前量进行相应的修正。
 (3)动态跟随系统流量波动:针对系统的不稳定性,在关闭电液阀的前一级控制过程中,对流量的波动进行统计,根据不同的波动等级确定关阀末级流量,确定不同的发油提前量,充分发挥系统稳定性,提高系统的适应能力。
 (4)温度补偿:发油质量的计算上要进行温度补偿。
4.1.1.3发油末级流量自适应设计
 由上述分析知道,流量小且稳定控制发油精度越容易,所以为了保证发油精度,系统在关闭电液阀前,都将流量控制在流量计的最小流量值。传统发油控制系统多数采用固定的最小控制流量。由于发油系统的设备和现场环境存在差异,各个系统关闭电液阀的最小流量也不尽相同。另外,对于特定的控制系统,受到外界干扰引起流量波动较大时,将导致电液阀多次开关,电液阀的每次开关会增加流量计“死区”和“过冲量”引起的误差。因此,采用固定的末级最小控制流量,将引起电液阀的多次关闭,导致“死区”和“过冲量”误差的累加不利于提高发油精度。
 为了使系统的稳定性发挥到最佳状态,为增强系统的适用能力,我们对控制程序采取了自适应设计。在关闭电液阀的前一级控制流量时,对流量的波动进行统计分析,计算出流量的波动范围,根据流量波动的范围,确定不同的末级流量。
 对于给定的系统,自适应设计能够根据系统的实际运行状态进行调整,能够充分发挥系统的最佳状态,使系统具有发油末级流量自适应的功能。
4.1.1.4控制软件编程思路
 控制软件采取模块化设计。控制软件主要分为主程序、初始化模块、发油模块、流量计算模块、报警检测模块、模拟量采集模块、输入输出接口模块等。程序运行时,系统实时扫描主程序,在主程序中根据条件调用相关的子程序模块,子程序模块完成各自的功能。模块化设计使程序层次分明,易于阅读和移植,同时还可以简化程序结构,便于调试。
4.1.2监控主程序设计
 监控上位机通过与数据库信息进行核对。在验证发油信息正确的情况下,上位机发出允许发油指令,同时记录发送指令的信息于数据库中。下位机接收到上位机的发油指令后执行发油控制程序;如果信息与数据库中的信息不吻合则拒绝执行允许发油指令。PLC接收到发油命令,在检测到无报警的情况下,经现场人员确认后运行自动发油控制程序。如果在发油过程中出现报警,控制系统立刻停止发油同时记录下未发油质量,等待报警消除后继续完成未完成的发油量。到达指定发油量关闭电液阀、油泵,同时记录发油完成信息。监控主程序流程图如图4-3所示。

 图4-3 主程序流程图
 Fig.4-3 Main program flow process diamgram
4.1.3发油模块设计
 发油模块是控制系统的核心,发油过程大体分为三部分:开启部分、高速发油部分、精确控制部分。为了减少“水击”,避免静电的产生,在开启部分采取多级开启的控制模式,使流量逐渐达到最大值;高速发油部分主要为了提高发油效率,该部分的时间尽可能要长;精确控制部分逐渐降低流量值,在确定末级发油段的流量前对系统流量的波动性进行统计,为确定末级发油段的流量提供依据。发油曲线如图4-4所示。M0为预发油量;M1为中等流量发油的开启点;M2为大流量发油的开启点,M3~M5为多级关闭点;Mg为电液阀关断点;Qc为末级发油段流量。
 
 图4-4 发油曲线图
 Fig.4-4 Oil delivery curve
 M0~M2开启部分为了减小“水击”和防止静电的产生,发油速度不宜过快,将电液阀先开启一个小开度并维持小流量。M1~M2段将电液阀开到中等开度,稳定一段时间后进入高速发油部分。
 M2~M3高速发油部分在该部分发油流量大,能在较短时间内使发油量迅速达到给定值的80%~95%,以保证发油效率,M3为高速发油减速点。
 M3~Mg精确控制部分M3~M4为一级减速发油阶段;M4~M5为二级减速发油阶段,在这一阶段对实际流量的波动Qb进行统计。在选择点M5处根据Qb值确定末级发油段流量Qc,并选择相应的控制提前量以确定关闭电液阀点Mg值;M5~Mg为末级发油段,在该阶段发油流量小,发油速度低,确保精度控制。
 系统运行开始,根据总发油量确定好各控制点的剩余发油量值和相应的流量值。在发油过程中,控制程序实时采集流量计脉冲数,根据发油量计算公式计算已发油量和剩余发
图4-5 发油模块流程图
Fig.4-5 Flow process diagram of oil delivery
油量,同时计算流量值。根据流量的大小,调节电液阀的开度使流量保持在稳定值。当剩余发油量到达预关闭阶段,逐级降低流量值,直到发油量达到控制给定值。发油模块的流程图如图4-5所示。
4.1.4发油提前量的控制
4.1.4.1发油提前量
 发油控制过程中,由于电液阀存在一定的滞后性,如果在实际发油等于预发油量时再发出关闭电液阀命令,那么电液阀完全关闭时,实际的发油量必然大于预发油量,会造成发油量不准确,因此需设定一个参数ΔM,对预发油量进行修正,当实际发油量加上ΔM等于预发油量时发出关电液阀命令,则电液阀完全闭合时实际发油量等于预发油量。我们把ΔM称为发油提前量。
4.1.4.2影响提前量的主要因素
 如果提前量ΔM的值过大,会使实际发油量小于目标值;如果提前量ΔM的值过小,会使实际发油量大于目标值。由此可见,提前量ΔM的大小直接影响发油的精度。
 影响发油提前量的因素主要有以下两点:第一是流量的大小,在电液阀滞后时间一定的情况下,流量大时提前量应略大,相反,流量小时提前量应略小;第二是电液阀的特性,主要是电液阀的响应时间。电液阀的响应时间较短,则发油提前量应略小,反之,发油提前量应略大。
4.1.4.3提前量控制算法
 根据发油过程的三个部分:开启部分(t0~t2);高速发油部分(t2~t3);精确控制部分(t3~t7)。图4-6给出了发油量与时间的曲线。
 
 
 
图4-6 发油量-时间曲线
Fig. 4-6 Oil quantity - time curve
 在精确控制部分,t3~t4为第一级减速发油阶段;t4~t5为第二级减速发油阶段,在这一阶段对实际流量的波动Qb进行统计;在t5时刻根据Qb值设定末级发油段流量的大小并选择相应的提前量对发油量进行修正;t5~t6为末级发油段,在该阶段发油流量小,发油速度低;在t6时刻关闭电液阀,由于电液阀响应滞后性,会使发油量继续增加至t7后才稳定。ΔM=M7–M6为发油提前量。
 由于现场的干扰、系统自身等原因会造成关闭电液阀后油品的增加量不等,甚至有较大的误差存在,所以,必须用一定的方法进行动态修正提前量。每次发油结束后,根据实际发油量误差值对上一次发油提前量进行动态修正。
 M为发油量设定值;Mg为第一次发油提前量预置值;M6(i)代表第i次关断点的选择值;M7(i)为第i次发油的实际值;ΔM(i)为第i次发油提前量的修正值也是第i+1次发油提前量的预置值;ΔU(i)为第i次发油实际发油误差;ΔE为发油控制误差;修正系数取0.618。可以用以下方式进行动态修正提前量:
 令
 
 ……
              i=1,2…
 根据上述模式编写控制程序,理论上,只要经过若干个发油过程以后,就可以准确地控制发油关断点,使发油控制误差进入发油允差范围,进而为以后的发油控制过程提供可靠的控制参数。因为S7-200PLC数据寄存器具有掉电保护功能,所以系统不需要经常输入相关参数就可正常运行。
 4.1.5发油量的计算
 目前,国内各石油炼化及销售企业已经或正在安装的自动发油系统从计量原理上讲大致分为三大类:采用质量流量计发油;采用称重法发油;采用体积流量计发油。
 由于我国规定石油产品的销售以质量进行结算,所以发油系统都应该是定质量发油,也就是说油品质量应该是油品在空气中的质量。椭圆齿轮流量计输出的是脉冲数,控制器通过高速计数器对其进行累积,再根据流量计的仪表系数就可计算出油品体积。考虑到温度对体积的影响,还需根据当时的温度对其进行温度补偿,最后转化油品的质量。
 发油量的基本计算公式为:
 
 式中M——油品质量;
 ——温度t下的油品真实密度;
 ——温度t下的油品体积。
 由公式(4-1)看出,温度t下油品的质量等于温度t下油品的真实密度与t
 温度t下油品的体积的乘积。GB/T1884-1885-83(91)规定油品质量计算是t在标准温度下进行的。这是因为在实际温度下,由于计量器具本身的特点,其中然包含好多系统误差在测量结果中。另外,任意温度下的密度ρt包含着温度误差,密度计示值因温度而产生的误差。同样,在油品体积测量时也会产生系统误差。为了消除上述系统误差,根据计量器具设计要求,必须将任意温度下的密度ρt和任意温度下计量体积vt都换算到标准温度20℃状态,再进行计算[8]。
 我国采用国际标准ISQ91-2制定的新国家标准对流量计测得vt的进行修正,即
 
 式中VCF20——可由油品的和计量温度t,查GB/T1885-1998《体积修正系数表》交叉数值得出。
又因为
 
 式中K——为流量变送器的仪表系数(脉冲/升);
 L——为脉冲数。
 这样发油量的计算公式为
 
 式中——可根据 钢笔套885-1998《标准密度表》由某一实验温度t下的密度交叉数值查出;
 ——考虑了空气浮力的修正;
4.1.6流量的计算
 流量是指在单位时间内流过管道某一截面的液体的体积。流量是控制得主要参数。从前面的内容可知,流量计输出的是脉冲数,控制器(PLC)采用定时中断的方式对脉冲计数,再根据流量计仪表系数就可以计算出发油体积。用定时中断周期内的油品体积增量除以定时中断周期就可以得到瞬时流量。从控制角度而言,定时中断周期越小越准确。但是,受流量计的最小分辨的影响,定时中断周期太小,在定时中断周期内,流量计的脉冲数没有变化,流量会出现零值,会导致电液阀误动作,引起流量的波动,影响计量精度。在流量的计算中,我们在不同流量控制段采用不同的流量采样时间。在低速发油段,流量采样时间是几倍的定时中断周期;在高速发油段,流量采样时间是单倍定时中断周期。其倍数由流量计的最大流量与设定流量的比值决定。这样既保证了流量计算的准确性,又避免了流量的过大波动。
4.1.7多功能数字电液阀的控制
4.1.7.1多功能数字电液阀特性分析
 DYF型多功能电液阀的相对开度ε(某一开度时活塞行程与全开时活塞行程之比)与相对流量Q(某一开度时流量与全开时流量之比)的关系曲线称为电液阀的特性曲线,它取决于阀的结构。DYF型多功能电液阀具有直线特性[9],在进出口压差恒定时,其相对流量的变化量与相对开度的变化量之比等于1,即

积分得

式中——阀在某一开度的相对流量;
——阀在某一开度的相对开度。
 DYF多功能电液阀的直线特性,电液阀瞬时流量与进出口压差、主阀开启度有关系,它们的关系可由下面的公式近似:

 采样时间内,流量变化主要因进口压力波动产生,即

 调控时间中,流量变化不仅取决于仍在持续的因外部干扰而触发的进口压力的波动,而且因调控行为的实施,使得流量也受到主阀开启度变化的影响,故:

 收敛调节范围内,近似有,,
 调控算法的关键是要根据采集到的流量脉动信息,确定调控时间内相应电磁
 阀的动作时间。显然,为保证一个调控周期后流量的总脉动量趋于0应满足:

 即

 式中——设定流量;
 ——设定流量下主阀开度。
 公式(4-11)表明,为获得恒定流量,应对主阀开启度进行比例调节。实际上,
 为克服因调节电磁阀和主阀惯性环节造成的调节行为的滞后,在比例调节基础上,叠加微分调节,即令

 式中T——采样周期;
 ——微分时间;
 ——第n次流量的变化量;
 ——第n-1次流量的变化量;
 ——第n-2次流量的变化量。
4.1.7.2多功能电液阀控制算法
 对主阀开启度的控制限于硬件,采用改变发送给电磁阀固态继电器脉冲波占空比的方法实现。脉冲的周期为某一设定流量时开电液阀所用的时间,脉冲宽度为电磁阀调控的时间。下面推导调控时间内电磁阀动作时间与开度变化量的关系。
 设主阀全开时活塞行程为H,开度为ε时对应活塞行程为h,则:

 即

 为减少电磁阀动作的频率,采用单边调节的方法,打开电液阀时,未达到目标值开大电液阀,达到目标值时就保持开度;关闭电液阀时,未达到目标值关闭电液阀,达到目标值时就保持开度。分别对以下两种情况进行调控。
 (1)电液阀开启控制设在时间t内,主阀套排出的介质为V,介质的流量为q,则:

 设主阀进、出口压力分别为P2、P1控制管路的截面面积为A1主阀套中活塞面积为A2,主阀套中弹簧的伸长量为x0,控制管路和主阀套的流速分别为υ1、υ2,对于理想液体,由贝努力方程得

 由连续性方程得

 由上面两式得

 式中——主阀进出口压力差;
  ——电液阀截面系数
 由以上公式整理可得

 为了便于计算,对公式进行了简化。对于同一个电液阀、、、、为常数,视油品密度和压力差为常数,可将公式简化为:

 式中——电液阀开启系数。
 (2)电液阀关闭控制。关闭电液阀时主阀进、出口压力、 相等,控制管路的截面面积为,主阀套中活塞面积为,住阀套中弹簧的伸长量为,控制管路和主阀套的流速分别为、,对于理想液体,公式可简化为:
 


 对于同一个电液阀、、、、、油品密度为常数,忽略主阀弹簧的变化量,上式可简化为:

 式中——电液阀的关闭系数。
4.1.8报警模块设计
 油库的安全至关重要,如果有报警发生,必须给出声、光报警提示,并采取相应的措施。报警提示可以有效地减少事故的发生,将事故破坏程度降到最低。报警信息不仅通知现场的工作人员,而且也要给监控室的操作人员相应的提示。在控制软件设计时,我们对每一种报警都给出指示灯和语音提示,同时采用自锁/互锁关系,禁止相应的操作。同时对每一种报警进行编码,这样,上位机就可以通过报警代码了解到报警的相关信息,以便采取有效的措施。报警事件与代码对照见表4-1所示。
表4-1报警事件代码对照表
Table4-1Contrastofwarningeventandcode
报警事件 报警代码 
无报警 0 
静电接地报警 1 
溢油报警 2 
静电接地未摘除报警 3 
鹤管未到位报警 4 
鹤管未复位报警
可燃气体检测报警 5

超差报警 7 
模拟量模块错误指示 8 
模块电源错误指示 9 
温度过低报警 10 
 4.2监控组态软件设计
 4.2.1组态开发软件选择
 4.2.1.1组态开发软件的发展及现状
 在20世纪80年代末期,PC机开始走上工业控制的历史舞台,与此同时开始出现基于PC总线的各种数据I/O板卡,加上软件工业的迅速发展,开始有人研究和开发通用的PC监控软件-组态软件。世界上第一个把组态软件作为商品进行开发、销售的专用软件公司是美国的Wonderware公司,它在80年代末期率先推出第一个商品化监控组态软件Intouch,此后组态软件得到了迅猛的发展。
4.2.1.2组态开发软件的特点
 组态软件的用户是自动化工程设计人员,组态软件的目的就是让用户迅速开发出适合自己需要的可靠的应用系统。因此组态软件一般具备以下特点:
 (1)使用简单,用户只需编写少量自己所需的控制算法代码,甚至可以不写代码。
 (2)运行可靠,用户在组态软件平台上开发出的应用系统可以长时间的连续可靠运行,在运行期间实现免维护。
 (3)提供数据采集设备的驱动程序,以便将控制现场的数据采集到计算机中,并把运算的结果送回到控制现场的执行机构。
 (4)提供自动化应用系统所需的通用监控软件的组件。
 (5)强大的图形设计工具。
4.2.1.3组态软件的选择及其功能
 目前世界上的组态软件有几十种之多,国际上知名的监控组态软件有:Fix,Intouch,Wincc,Labview,Citech等。国内计算机控制系统软件行业占有主导地位的产品有组态王、力控、MCGS等。而组态王性能在许多方面都已赶上或接近国外同类产品,且价格较低是同类产品价格的1/3-1/8,采用中文界面,在国内工控领域得到了广泛的应用,因此,系统监控组态软件选择组态王为开发平台。
 组态王工控组态软件是由北京亚控自动化软件公司开发,它以Window98/WindowsNT4.0中文操作系统为其操作平台,充分利用了Windows的图形功能完备、界面一致性好、易学易用的特点。它使采用微机开发的系统工程比以往的使用专用机开发的工业控制系统更有通用性,大大减少了工控软件开发者的重复性工作,并可运用微机丰富的软件资源进行开发。
 (1)强有力的安全管理系统组态王提供了一个强有力的基于用户的安全管理系统,组态王采用分级和分区的双重保护策略。应用系统中的每一个可操作的元素都可制定保护级别(最大999级)和安全区(最多64个)。对应地,操作者的优先级(最大999级)和工作安全区(64个)。对于有不同类型的用户共同使用的控制系统,组态王采用用户标识符和口令来区分和保护操作者。每一个操作者将获得唯一的用户标识符和口令,非法使用者不能进入系统。
 (2)强大的通讯能力组态王可以连接PLC、智能仪表、板卡、模块、变频器等几百种外部设备。支持设备之多之广可与国外优秀同类软件相媲美。组态王通过驱动程序和这些工控设备通讯,组态王的大部分驱动程序采用组件(COM)技术,使通讯程序和组态王构成一个完整的系统。这种方式既保证了运行系统的高效率,也使系统能够达到很大的规模。组态王同时保留了DDE通讯方式,一些应用软件可以通过DDE方式和组态王进行通讯。
 (3)先进的报警和事件管理组态王能够检测到非正常状态的发生,并将报警信息按照正确的顺序登陆到数据库,以便事后对其进行分析。组态王通过报警和事件两种情形来通知操作人员过程的活动情况。组态王为模拟变量和长整型变量提供了三类报警条件(越限报警——高高、高、低、低低;偏差报警——大、小偏差报警限;变化率报警),为离散变量设计了一种报警条件(变量值——开、关或改变)。报警输出文本可以自由定义,每个变量的多种报警条件可并存,根据每种条件检测到的报警信息都会被记录下来。报警可以分组管理,每种报警均可以定义其所属的报警组合优先级。
 (4)快速便捷的应用设计组态王工程浏览器为用户提供了便捷的集成开发环境。在工程浏览器中可以查看画面、数据库、配置通讯驱动程序、设计报表等大部分系统配置。组态王系统内部提供了全新的庞大的图形库,包含了大量预先建立好的组合对象,如按钮、指示表、阀门、电机、泵、管路和其他标准工业元件,这就极大地加快了应用系统的构造。组态王提供了灵活简便的变量定义和管理,在数据字典里可以方便快捷地新建变量、编辑变量的属性,组态王实时数据库中存放所有变量的最新数据。
4.2.2监控系统组态设计
 运用组态软件-组态王(Kingview)对发油控制系统进行了组态设计。
 (1)主监控界面设计该画面对整个控制系统进行了组态,通过该画面可以
 比较直观地看到这个控制系统的组成及发油系统的动态运行过程。如图4-7所示。当系统运行时,管路中的油品动态地模拟现场实际油品的流动,油泵、电液阀指示灯显示实际设备的运行状态,流量计显示现场当前的流量值,温度变送器显示温度。当系统有报警产生时,相应的报警指示灯以红色闪烁。同时,报警窗体自动弹出,操作员可以执行相应的操作。右半部分的命令按钮可以使不同等级的用户进入不同的界面执行相应的操作。为了方便习惯于Windows操作的用户使用,左上部份还设计了下拉菜单,可以执行和命令按钮同样的操作。

图4-7主监控界面
Fig.4-7Mainsupervisoryinterface
 (2)状态显示画面设计
 为了方便操作人员更详细地掌握系统的运行状态,本系统还设计了状态显示界面,见图4-8。在状态显示画面上以文字的形式实时显示系统运行的各种参数,如:瞬时流量、已发油量、所须油量等。

【自动发油控制软件设计(一)】相关文章:

自动控制理论试题(一)03-07

自动控制系统的设计和设施环境自动控制(一)03-08

自动化控制论文11-28

单片机控制GSM模块实现短信收发的软件设计03-20

工业自动化仪表与自动化控制技术分析11-19

油库发油系统总体设计(一)03-07

浅析自动控制系统12-11

现代化大厦的楼宇自动控制03-20

闸门自动化控制的设计及应用论文04-26