APP下载

基于Modelica 语言的制粉系统建模与仿真

2021-09-28晏闽如王亚刚

软件导刊 2021年9期
关键词:给煤机煤量制粉

晏闽如,王 凯,王亚刚

(1.上海理工大学光电信息与计算机工程学院;2.上海理工大学上海出版印刷高等专科学校,上海 200093)

0 引言

火力发电作为我国传统且主流的发电方式,其发电效率及安全性是关注焦点。由于不同时段不同地点用电需求不同,需要火电机组在发电过程中对制粉系统煤量进行精确控制和管理,以提高发电效率。因此,建立一个制粉模型来模拟大型火电机组控制十分必要。目前火电机组建模可分为结构化建模和模块化建模,高珊[1]对制粉系统的建模,魏乐等[2]对中速磨煤机的建模都是结构化建模,这种方式可重用性差,一旦特定系统与过程发生改变,或者模型结构重组,建模与计算流程就必须重新调整。电厂控制系统建模一般是基于MATLAB 中Simulink,如王海青等[3]使用MATLAB/Simulink 对汽轮机控制系统各个部件进行动态仿真建模,沈华[4]基于MATLAB GUI 对火电厂炉膛压力控制系统仿真建模,戴明阳等[5]采用Simulink 对电机进行建模,但这种基于块图的建模语言是把描述各输入输出关系的块图进行连接以描述系统,通常会造成物理系统中耦合信息的简化与丢失[6],不能及时动态模拟复杂系统状态突变情况,且不直观。

多领域统一建模是在模块化建模基础上发展起来的一种跨领域建模方法,Modelica 语言能够很好地解决因不同领域的建模语言缺乏统一规范而导致的模型重用性不强问题,支持模型多态特性,减小了多领域物理系统集成难度,最重要的是Modelica 模型支持组件连接,只要组件能够百分之百地贴近实际物理系统结构,该模型就能对应实际工况。目前该模型已广泛应用于复杂的物理系统建模,如热力系统、动力系统、机械、电力电子等,且得到了很好的验证[7-10]。

火电厂中制粉系统主要包括煤的传输、磨制、干燥与输出。煤的传输与磨制决定输出量能否保持输入设定。直吹式制粉系统工作过程[11-12]如下:工作人员设定给煤机煤量后输送原煤进入磨煤机,给煤机中包括给煤的PID 控制;磨煤机负责把传送的原煤和返回的不合格煤块研磨成合格的煤粉再吹送至炉膛燃烧。本文基于火电机组制粉系统的各个组件,使用基于Modelica 语言的Modelica 标准库、ThermoPower 库以及OpenModelica 开发平台建立制粉系统模型,仿真结果表明模型基本与实际设备运行工况符合,为大型物理系统建模提供了新思路。

1 Modelica 语言与OpenModelica

Modelica 语言相较于其他建模语言最大的特点是可以利用其陈述式的数学描述特性来还原建模系统。大多数涉及热工、机械等不同领域的庞大的物理系统都可以抽象为一组数学物理方程式,所以使用Modelica 可以对其进行建模与仿真,此外可将组件的可扩展性与灵活性特点与微服务技术结合,广泛应用于工业物联网平台。OpenModeli⁃ca 则是针对Modelica 语言形成的众多开发环境之一,它具备文本编程、图形化编程、模型初建等功能。

1.1 Modelica 语言规范

Modelica是一种编程语言,有其编程规则,它将建模系统看作对象,使用编程语言的类(class)进行声明,定义的7个类具有限制用途,另外定义了4个内置数据类型,见表1、表2。

Table 1 Restricted classes表1 限制类

Modelica 提供了大量既允许开源使用又可以商业使用并且可复制和修改组件的模型库[13-14],有用于电子电气和磁性的库、机械零件库、流体组件库、控制系统库和各种基础功能的库,共包含来自多个领域约1 600 个模型组件和1 350 个函数。在创建模型过程中,如果所用组件模型库中已有,可通过连接机制连接组件接口也就是connector 完成;若不存在,用户可以使用动态方程进行搭建。本文制粉系统的给煤机、磨煤机组件建模需要自己搭建。

Table 2 Built-in data types表2 内置数据类型

1.2 OpenModelica

OpenModelica[15-16]一直致力于研究设计完整的语言规范、改善模型抽象属性、提供测试平台,是一个基于Modeli⁃ca 的开源建模和仿真环境。设计和发布的模型库不仅涉及多个领域,而且组件丰富可以互相兼容。此外它具有生动的符号处理功能,能自动对微分代数方程(DAE)进行排序筛选并利用内置的DAE 方程仿真器求解[17]。

平台提供图形化的用户界面OMEdit。OMEdit 界面除欢迎界面包含OSMC 发布的信息外,还包括浏览窗口、建模、绘图和调试窗口。浏览窗口用于显示已有模型库、模型说明、模型变量。编辑建模模式用于文本编程组件和利用已有组件进行建模;仿真模式用于运行模拟并指定模拟参数初始值、仿真时间等;绘图模式用于绘制来自仿真模型的变量界面;调试模式将算法调试器附加到正在运行的进程及浏览仿真线程。

OpenModelica 中的Modelica 标准库分为8 大类,如表3所示。

Table 3 Modelica standard library表3 Modelica 标准库

2 数学模型

制粉系统主要设备是给煤机和磨煤机,及一次风机、粗粉分离器等[18-19]。给煤机主要由煤仓和传送带的控制装置构成。设置给定原煤也就确定了单位传送带上的煤量控制。原煤进入磨煤机,磨煤机依靠磨煤金属元件工作,将原煤挤压撞击再研磨成煤粉;风机对煤粉进行干燥并输送至粗粉分离器,磨煤机的出煤量是影响发电效率的一项重要指标。

2.1 给煤机数学模型

当煤种一定时,进入给煤机的煤量Wg与给煤机电机的转速可近似认为是正比关系[20]。

式(1)中,Mgb为单位皮带上煤的重量kg/m,给煤机的转速为m/s。

2.2 MPS 磨煤机数学模型

(1)通风量。进入磨煤机的空气有热空气Wrk和冷空气Wlk两种,热风用于干燥原煤,冷风用于调节磨煤机出口温度,故进入磨煤机的总风量为:

(2)产粉量。磨煤机产粉量Wf与煤种特性和磨煤机设备特性和外部空气流量有关,近似表达式为:

式(3)中,K为系数,Ks、Kkm、KX为煤的湿度、可磨性系数、煤粉细度修正系数,Nm为磨煤机马达转速(0-1),Mm为内存煤量(kg),且:

(3)磨煤机出入口压差。

式(5)中,ΔPm为磨煤机入口压差,K1、K2为空气及存煤的阻力系数。

(4)能量守恒。磨煤机内的金属和存煤存在蓄热,其能量平衡方程式为:

式(6)中,Mz为金属有效质量,Cz为金属比热,Cg为煤的比热,Ck为空气比热,t1为磨出口温度,tg为入口煤温,tlk为冷空气温度,trk为热空气温度,Q 为磨煤机发生着火故障时产生的热量。

3 Modelica 建模

使用OpenModelica 建模方法:首先新建一个可命名的模块,可能是模型、连接器,也可能是块、包等,比如feeder⁃system 给煤系统就是一个package,再根据需要选择模块的隶属关系,放在哪类模块库下;然后在Medolica 的文本模式下编程建模,或者直接拖拽使用的组件进行扩展、变量和参数设置;在图形模式下对已经形成源码的模型或组建的系统进行外观设计,一般要符合系统的物理外观,以便发布后被其他设计者使用,其他设计者在使用过程中也可通过拖拽图标来直接调用该模型源码,这种模式为Modelica的发展起到了非常大的推动作用。在连接模式下,每个模型都需要定义输入输出接口以便与其他组件连接,使用前需要先启用工具栏的连接功能才能将两个模型的连接器连接。

3.1 给煤机建模

给煤机模型是基本库中所没有的,且没有给出煤粉流质模型和连接器[21],需要在使用前建立。文本建模的基本方法是先建立模型名称feederCoal1,定义参数和变量,根据数学方程描述给煤机系统,参数与方程的个数必须相等。其中给煤机的重要控制方法在于内部的PID 控制器,用来调节传送带的传送速度以使输出符合输入的设定值,图1(彩图扫OSID 码可见,下同)为给煤机模型。

Fig.1 Coal feeder model图1 给煤机模型

给煤机输入分别为:

weight_per_Meter,单位长度的皮带上煤的重量kg/m

LoadDemand_in,给煤机设定的需求煤量kg/s

Temperature_coal,给煤机的煤温设定,摄氏度

给煤机的输出为:

一个接口表示输出煤量,kg/s

给煤机模型的输入分别为部分源代码中对PI 控制器的定义,相关参数代码如下:

其中T_delayMax 为给煤机的最大延迟时间;T_ 0 为增益;T 为转速控制器上温度传感器获得的给煤机的煤粉初始温度;K 为给煤机中PID 控制器的持续时间。

3.2 磨煤机建模

利用图形编辑工具画出磨煤机外部轮廓,图2 为其模块示意图。在Modelica 中,没有必要去明确某个方程是哪个单一变量的确定方程,一个公式可以在等号的两边包含任意表达式,至于求解包含在等式中的变量则是编译器的工作。磨煤机的模型源代码equation 方程如下:

磨煤机的输入分别为:

coalin 为给煤机进来的煤流kg/s

PrimaryAir 为冷热一次风混合的一次风m^3/s

Speed_Motor 为给煤机马达转速0-1

磨煤机输出为:CoalOut 为输出至锅炉的煤流,包括至锅炉的风量。

Fig.2 Coal mill model图2 磨煤机模型

4 制粉系统仿真

OpenModelica 仿真是在以上两个步骤的基础上搭建好需要验证仿真的模型,完成模型语法检查也就是调试成功后进行仿真。OMEdit 中的模拟过程是将Modelica 模型转换为C/ C++代码,再编译链接到可执行的仿真代码中,最后模拟可执行文件完成仿真。在编译后会自动跳转至绘图窗口显示仿真曲线,也能够进行3D 演示或图线演示。仿真结果的可视化演示需要设置仿真时间、间隔、交互式仿真、线性求解器等,在绘图窗口可以根据需要导出仿真数据。

连接给煤机与磨煤机模型对应的连接器,如图3 所示,设置参数对制粉系统进行仿真,给煤机输出结果见图4,磨煤机仿真结果见图5。

Fig.3 Connection of pulverizing system图3 制粉系统连接

Fig.4 Simulation curve of coal feeder图4 给煤机仿真曲线

Fig.5 Simulation curve of coal mill图5 磨煤机仿真曲线

在仿真曲线中,最上面曲线为传送带单位煤的质量weight_per_Meter,最下面为传送带速度V。中间能够明显跟随的曲线分别表示给煤机的输出feederCoal1.OUT 和需求煤量feederCoal1.LoadDemand。可以看出模型的PI 控制器可以结合给煤量设定和皮带上煤量来调节皮带的传送速度,控制给煤机输出,使其在误差范围内能够很好地跟随工作人员设定的煤量。

从仿真曲线可以看出,磨煤机的输出煤粉量mill_test1.CoalOut 在30s 后就能够很好地跟随磨煤机的煤量输入feederCoal.OUT。前期磨煤机输出粉量与输入差距较大是因为在实际运行过程中磨煤机需要一定的煤粉来蓄粉[22],在经过续粉期之后才能跟上输入的设定,这一现象也恰好说明该模型符合制粉系统实际运行情况。

5 结语

本文研究了多领域统一建模语言Modelica 与Open⁃Modelica 编译器的编程原理与使用方法,建立了制粉系统给煤机与磨煤机模型并进行仿真。仿真结果表明,模型基本与实际设备符合,给煤机与磨煤机的仿真输出结果能够很好地跟随需求设定。为保证更好地仿真火电厂发电过程,该模型仍有需要改进的地方,如流体介质模型需进一步考虑以风和烟气为流体介质情况;给煤过程中的控制模型可通过融合其他控制算法加以改进。本文模型具有很好的重用性与扩展性,已经应用于大型火电机组建模与仿真,说明将Modelica 应用于大型火电机组的建模仿真,实现系统分析与系统设计相结合是可行的。通过进一步调整模型参数可提高仿真精度,达到贴近机组真实运行的效果。

猜你喜欢

给煤机煤量制粉
3月份河南省统调电厂进煤量同比下降1.67%
2月份河南省统调电厂进煤量增长33.53% 耗煤量增长31.06%
6月份重庆主力火电厂累计耗煤量同比下降20.64%
给煤机低电压穿越改造后控制电源可靠性分析与优化
330MW中储式制粉系统锅炉燃烧优化
5月份河南省统调电厂总进煤量为824.6万t 同比下降10.76%
火电厂防止给煤机控制回路电源瞬时失电的优化措施
小麦制粉企业实用检测技术概述
EG2490型给煤机故障分析与控制系统改造
燃煤电厂制粉系统防爆措施探析