五千年(敝帚自珍)

主题:【原创】化工过程控制的实践 -- 润树

共:💬332 🌺795
全看分页树展 · 主题 跟帖
家园 【原创】自编动态仿真程序

上两节讲到的商业性通用仿真软件,功能很强,可在工业界广泛使用。但在某些特殊场合,对过程的静态特性不能作出准确的数学描述,这些软件就不能派上用场。比如在化学品制造业,很多化学反应的数学模型或者没有,或者仅为业者由内部研究所获,不对外公开,商用软件就使不上力。在后者这样的情况下,要么想办法把自己的模型输入通用软件,要么甘脆针对此特殊问题自己编程。而对于前者,别无它途,必须想办法先建立起模型。十几年前,某化学公司在全球范围内有二十几套将醋酸(acetic acid)裂解来或得Ketene的裂解炉。为了对该过程进行优化控制,公司专门建了一个实验裂解炉,对各种工况进行反复试验,并在其高温出口处安装质谱仪对其裂解后的成分进行检测,以期获得该过程的数学模型。此建模过程延续了一年,设备和人工费加起来近千万美元。老外迷信模型,由此可见一斑。

对于静态仿真,有了数学模型,程序就好编了。如果需要在静态的基础上加入动态特性,则要费事一些,但也仍然有章可循。几十年来,这方面的专著很多。但弱水三千,也只需取一瓢饮足矣。我在十几年前,就凭手头的一本《控制系统数字仿真》(清华大学熊光楞著,1982年),自己由简单到复杂,编了一些针对特殊问题的动态仿真程序。我所应用过的一些动态环节主要有:

1) 一阶微分加纯滞后响应

2) 二阶微分过/欠阻尼响应

3) PID调节器

4) 多变量预估控制

5) 开关控制/逻辑控制

下面是几个应用实例,都是用Microsoft Visual Basic来自编程序实现的。VB的功能也很强,其视窗下的图像接口,为像我这样的非专业软件编程者,提供了足够专业的编程工具。图2.3.1是我在下面要讲到的应用实例时所写的几个子程序。第一个是PID算法,第二个是一阶微分加纯滞后(FOPDT)响应特性,第三个是在仿真中的暂停,第四个是历史数据的图像显示。(做出第四个子程序我颇有成就感,苦思瞑想了好半天,再逐渐完善。它可以同时显现6个变量,每个变量可以自动改变上下限,可以随时间无限推移,还可以改变要显示的时间长度,等等。如图2.3.2所示。当然,这对专业的编程员,不过是小儿科。)

点看全图

图2.3.1 VB程序中的子程序

点看全图

图2.3.2 由VB程序做出的仿真变量历史跟踪

A。乙烯厂的先进控制系统

某工程与建筑公司为一石化企业设计一个年产60万吨乙烯的工厂,该企业同时要求在设计常规控制的同时也设计出多变量模型预估控制系统(MPC)。传统上,MPC的模型是从工厂的实际测试中辨识而得,但这对于一个正在设计中的新厂显然是不现实的。不过由于乙烯裂解炉的进料是乙烷,其裂解过程有比较成熟的数学模型,其后的分离过程也相对容易进行静态和动态仿真,因此可以在仿真的基础上来获得数据和建立模型。图2.3.3是该厂的简化流程。我在为该公司工作期间,设计了裂解炉,乙炔反应器和乙烯分离塔的MPC。

点看全图

图2.3.3 乙烯厂简化流程

对于裂解炉 (图2.3.4),由于乙烷和蒸汽混合后通过炉体的过程很快(毫秒级),只要用静态模型就可以了。但是精确的静态模型很复杂,所需输入变量多,计算较慢,不适于直接用在动态控制系统中。因此,我们用该模型产生的数据作出简化的多项式模型来快速(每分钟一次)计算过程输出,而用低频运行的精确模型的计算结果去校正简化模型的结果。其控制逻辑如图2.3.5所示。用VB写的这个动态仿真程序,主要用来演示为该过程设计的MPC的控制效果。

点看全图

图2.3.4 乙烯裂解炉的控制系统

点看全图

图2.3.5 控制系统方框图

对于乙烯分离塔(C2 Splitter),动态响应的时间很长,必须做出动态模型。十几年前,如果要对该塔(有96块塔板)进行在线精确的动态仿真,并以此为控制模型,对计算机的计算能力来说,是不现实的。因此实际应用时,是根据精确的动态仿真的数据,把它的一些动态特性用一阶滞后来近似。图2.3.6是该塔的控制流程图。

点看全图

图2.3.6 乙烯分离塔控制流程图

B.乙基丙酸酯的物料平衡控制

如图2.3.7所示,该过程的生产流程是,作为反应物之一的乙烯(C2H4)气体从V-490顶端进入反应器,在催化剂(H2SO4)的作用下,与循环喷洒的反应器母体容液中的丙酸(HAcA)产生酯化反应生成乙基丙酸酯(EtAcA)。产品从V-490底部送出至分离塔T-73,在塔顶获得EtAcA产品,塔底的大部分重主份液体循环回反应器,小部分送至下一段工艺回收处理。

点看全图

图2.3.7 乙基丙酸酯过程和控制流程图

按原有的控制系统,T-73的塔底液位是由另一反应物即丙酸的流量来控制的。由于丙酸是从反应器的循环回路进入反应器,它的流量的变化要经过反应器的液位控制来影响T-73的进料流量,从而控制T-73的塔底液位,因此这两个塔的液位控制是相互作用的,不似一般情况下,只有上一个塔对下一个塔有影响。由于控制效果不好,该装置的控制控制师希望中央工程部能够对这个控制系统进行动态仿真,以期寻求改进措施。因为通用软件没有该反应器的机理模型,最后只能用VB自编程序来研究。

自编程序对该装置的物料平衡作了精确的计算,但对T-73的热量平衡计算进行了简化,以避免对该塔的各塔板进行精确计算。在研究仿真结果的基础上,提出了以下改进建议:

1)在不改变现有控制回路的前提下,增大T-73调节器的增益,但大大延长它的积分时间。图2.3.8和2.3.9是该调节器参数整定前后对T-73液位控制设定点改变的响应;图2.3.10和2.3.11是分别对V-490进料流量变化的响应。

点看全图

图2.3.8 该调节器参数整定前对T-73液位控制设定点改变的响应

点看全图

图2.3.9 该调节器参数整定后对T-73液位控制设定点改变的响应

点看全图

图2.3.10 参数整定前T-73液位控制对V-490进料流量阶越干扰的响应

点看全图

图2.3.11 参数整定后T-73液位控制对V-490进料流量阶越干扰的响应

2)改进控制方案,用T-73塔底的循环流量来控制T-73塔底液位,使该回路的过程动态特性大大加快。如此将使丙酸流量成为自由变量,与乙烯进料流量形成比例控制,满足该化学反应的物料平衡。

C. 丙酸反应器的安全生产研究

某丙酸(HAcA)生产装置,如图2.3.12所示,有四台并行操作的化学反应器。反应机理是,丙烯(C3H6)气体在催化剂作用下,与由压缩机提供的空气中的氧气进行氧化反应,生成丙酸。四台反应器的出口物流合并后进入回收塔T-61,丙酸被该塔的循环母液吸收,而其它轻主分气体从塔顶排出,经过焚烧后向大气排放。由于该气体在进入焚烧炉前这一段管道中含有氧气和有机物,它们在满足一定的成分组合时将自燃,引发事故,因此必须保证它的成分组合在任何情况下都不会进入自燃区间。在四台反应器都正常操作的情况下,不会有问题。但在以下情况下则有可能出现安全隐患:

点看全图

图2.3.12 丙酸生产过程仿真流程图

当某一台反应器在停车后重新启动,按操作规程需要先向其提供空气流量(有了额外的氧气),恰在此时另一台反应器因某种原因紧急停车,控制系统将启动紧急停车步骤,按预定程序向反应器输送蒸汽。这样T-61塔顶的气体成分将偏离正常的工作区间,而有可能进入自燃区间。当然也有可能是两台反应器同时/相继启动,或同时/相继停车,为了不漏过任何可能的安全隐患,必须对它们中较危险的几种组合进行研究。人们不应对此抱有侥幸心理,若干年前,该装置确实发生过一次严重的自燃事故。也正是在此次事故之后,该公司专门成立了几个小组对不同的课题进行调查,找出事故原因,并提出改进之道。其中的一个小组,就是专门研究上面提到的特殊情况。显然,此种研究只能通过动态仿真来进行。

同样,由于通用仿真软件缺乏该化学反应器精确的机理模型,加之各种开车停车的程序组合,动态仿真难以用标准软件来实现。但公司自己有静态机理模型,加入相应的动态特性后,即可通过VB编程来进行动态仿真,对各种可能的情况进行研究。其结果是,在几个月的努力工作后,找到了某些安全生产的隐患,并改进了反应器开/停车的自动操作程序,不在此详述。

全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河