侯松欣
摘 要 本文介绍了DCS中使用ST语言计算一段时间内平均值在MVR蒸发NMMO中的应用。
HOLLiAS(Hollysys integrated Industrial Automation System)是由和利时基于先进自动化技术开发的集成工业自动化系统。它用一个开放的系统软件平台,将和利时多年开发的各种自动化系统和设备进行有机结合,可根据不同行业的自动化控制需求,提供专业解决方案。其子系统覆盖了企业经营管理层、企业成产管理层和装置与过程控制层。
关键词 平均值 ST
中图分类号:TP274 文献标识码:A
0 引言
在Lyocell纤维的生产中,溶剂N-甲基吗啉-N-氧化物(简称NMMO)是一种能够使纤维素浆粕直接溶解制得Lyocell纤维。
溶剂NMMO的生产过程中,通过MVR蒸发过程生产出高浓度的NMMO溶剂,罐内的NMMO是在真空状态下蒸发的。
1软件介绍
HOLLiAS(Hollysys integrated Industrial Automation System)是由和利时基于先进自动化技术开发的集成工业自动化系统。它用一个开放的系统软件平台,将和利时多年开发的各种自动化系统和设备进行有机结合,可根据不同行业的自动化控制需求,提供专业解决方案。其子系统覆盖了企业经营管理层、企业成产管理层和装置与过程控制层。
2程序的编写
2.1编程思路
NMMO在罐内是处于真空状态,NMMO的沸腾点也只有70多度,当罐内的真空值、温度、进料量都相对平稳时,液位也比较平衡,此时出料进料量也比较容易控制。但当罐内的的真空值、进料量等因素变化较快时,液位波动明显,此时对于出料调节阀和罐内液位构成的PID回路来讲,因PV值变化幅度大而且快速频繁,所以PID输出值变化快,出现振荡,调节效果差,对后序工段造成很大的影响。
如果我们调节仪表的阻尼時间,能启到一定的作用,但阻尼时间越长,仪表的反应速度越慢,这样并不能实时反应液位的变化状态,并不符合工艺的要求。
如果使用系统自带的平均值库函数,它只能反应固定时间间隔内变量的平均值,不能反映在任意时刻前单位时间内变量平均值,比如我们采取的是2分钟的平均值,那么这个平均值只会在第2、4、6、8分钟时变量的平均值才会变化一次,其余时间变量不会发生变化,如果是2分钟变化一次就不能满足工艺的要求,当变量参与PID控制时,大大影响调节性能。
基于上述原因,根据工艺要求,我们决定自己编程建立一个平均值库函数,在编程语言的选择上,因为根据工艺需要,程序可能需要上百个或上千个变量累计求和,计算过程需要用到循环处理语句, LD、CFC、SFC语言不能满足编程要求,选择符合IEC61131-3标准的ST文本化编程语言。
考虑到库函数的通用性,结合CPU的运算速度和处理能力,为了满足不同工艺的要求,采样周期预先设置为1秒、2秒、5秒、10秒。变量数组最大个数定义为1800个,假如变量1秒钟采集一次,1800个变量能求取前30分钟的平均值,这个时间基本上满足绝大多数的工艺过程的控制要求了。
2.2程序代码如下
//程序定时定时执行
IF PLUS THEN
//数据清零
IF SetTime <> SET2 THEN
OUT1:=0;
OUT2:=0;
K:=0;
L:=1;
FOR J:=0 TO SetTime*factor DO
AVE1_1[J]:=0;
END_FOR;
END_IF;
//变量采样周期选择
CASE f OF
1: factor:=60;
2: factor:=30;
5: factor:=12;
10: factor:=6;
END_CASE;
OUT2:=0;
//变量采样
AVE1_1[K]:=IN1;
K:=K+1;
//变量求和
FOR J:=0 TO SetTime*factor - 1 DO
OUT2:=OUT2+AVE1_1[J];
END_FOR;
//求取单位时间内的平均值
OUT1:=OUT2/WORD_TO_REAL(SetTime*factor);
IF K>=SetTime*factor THEN
L:=0;
K:=0;
END_IF;
SET2:=SetTime;
END_IF;
2.3 运行分析90
运行后,我们截取二个变量的趋势图,可以明显的观察到现场变送器采集的变量数据抖动大,变化频繁,而经过求取2分钟平均值的变量值相对平滑,并且实时反应液位的变化情况,没有滞后性。
现场变送器传到DCS的实时值,10分钟趋势图
每2秒钟采集一次变量的实时平均值,10分钟趋势图
3结束语
这个自定义库函数不仅仅用在液位的控制上,还可以用在流量波动较大的控制回路中,在实际生产中也进行了应用,并取得了明显的效果。在现场调试时完全满足工艺控制要求,性能稳定可靠,满足各项工艺要求,生产效率和产品质量均有大幅提高
当上述代码加入适当的语句,可以求出单位时间内过程变量的最大值和最小值,也可以去掉的最大值和最小值,单位时间的平均值更能准确的反应一段时间内液位的变化,曲线相对更为平滑,且不影响数据的真实性和准确性,更适合PID的调节。
参考文献
[1] HOLLiAS MACS V6.5.2功能块说明.
[2] HOLLiAS MACS V6.5.2用户组态手册,2014.