火电厂配煤软件设计与实现
2020-06-11季梦婷
文/季梦婷
(江南大学物联网工程学院 江苏省无锡市 214122)
近年来,随着经济社会的飞速发展,能源消耗也越来越大,煤炭作为一种不可再生的资源,在市场上存在供应紧张的问题[1]。为了保证锅炉的经济安全运行,各大火电企业不得不考虑混煤掺烧。掺烧技术是煤在锅炉燃烧时,将若干不同种类不同性质的煤,按照一定比例参配后完成发电的过程。其基本原理是利用不同煤种的成分,按照要求,进行掺配混合,使最终配出的煤在性能指标上达到或接近锅炉的设计煤种要求,以使锅炉效率高、出力足,环保性能好[2]。沙洲电力有限公司是拥有两台630MW 超临界燃煤机组和两台1050MW 超超临界燃煤机组的大型火力发电企业。以此为背景结合该火电厂的生产实际设计了一款便于运行人员进行配煤的软件,提高了工作效率。
Delphi 是Borland 公司推出的基于Object Pascal 语言的可视化应用程序开发工具,利用它可以快速、高效地开发出基于windows环境的各类应用程序[3]。考虑其良好的可视化编程环境和强大的可扩展数据库功能,故采用Delphi7.0 开发可应用于火电企业生产实际的配煤软件。
图1:功能模块示意图
1 设计思路
本文设计的用户界面可以使运行人员方便的查看各个煤场现有存放的不同煤种的发热量、硫分、灰分、吨位等基本信息。运行人员可以选定仓位按比例在信息表中选择两种煤混合加仓或者单路煤加仓。各煤仓下设计复制和粘贴按钮有效简化重复的配煤操作过程。设计了计算按钮用于计算所有煤仓的平均发热量、平均硫分和平均灰分值。另外还设计了“读取上次配煤”、“输入码头分流”、“删除码头分流”、“生成配煤令”、“一二期切换”按键,具体功能将在下文详述,功能模块如图1 所示。
表1:类对象属性设置及说明
图2:软件流程图
由于煤种信息经专人统计之后存放于Excel 表中,属于小型数据,故本文在设计过程中采用MicrosoftAccess 建立数据库文件。在Delphi7 环境下应用ADO 组件连接Access 数据库[4],实现对存煤表中关键信息的自动读取。
2 配煤界面设计
由于有专人负责配煤工作故配煤软件未设计登录界面,直接打开就可显示配煤界面。打开软件后,自动检查Execl 有没有运行,有的话关闭Excel(delphi 控件要求关闭Excel)。首先软件自动查找当前目录下有没有存煤表,有的话将煤种信息读取到类煤种对象中,并将煤种信息写入数据库文件的coal 表。在主界面dbgrid表中显示煤种信息。先选定需要配煤的磨,输入正确配比,双击dbgrid 中的煤种,可以将煤种信息加入到磨里。所有磨完成配煤操作后点击计算,引用计算子程序,数据汇总计算后显示。值得说明的是,实际生产中要求入炉煤参数:630MW 机组限值:热值不低于4500Kcal/kg,硫分不高于1.2%,灰分不高于21%,1000MW 机组限值:热值不低于4500 Kcal/kg,硫分不高于1.1%,灰分不高于18%。如果计算后显示数据不符合生产实际需求则要求配煤人员重新选择煤种进行配煤操作。软件流程图如图2 所示。
2.1 具体功能的介绍
界面中设计了六个Button 按钮,“读取上次配煤”指用户可以从数据库的list 表单中调取上一次的配煤信息,因为在实际生产过程中可能临近几天煤场中的煤种情况是相同的,在存煤量足够的情况下,选择配煤加仓方式可以相同或类似,这可以方便用户简化配煤的过程,避免重复的操作,在上一次配煤参数上修改部分磨配煤参数,提高效率。“输入码头分流”指在煤场存煤不足,煤炭供应紧张的情况之下,码头来船的煤不进入煤场存放直接卸船进行掺配,这时点击“输入码头分流”按钮选择新到船的煤种添加进dbgrid 表中。“删除码头分流”当配煤完成或者选择码头来煤煤种错误的情况下可以从dbgrid 表中删除来自码头分流的煤种信息。“一二期切换按钮”指一期对应630MW 机组,二期对应1050MW 机组,由于不同机组的煤场布置情况不同,故需区别开进行操作。“计算”按钮实现所有磨煤种参数输入后一键生成平均发热量、平均硫分、平均灰分,方便配煤人员与实际配煤要求的参数进行比对,不符合要求则重新配煤。“生成配煤令”在正确配煤之后一键生成各台磨的具体配煤信息,可直接复制发送给燃料部门指导加仓工作。为进一步提高工作效率,在各台磨下还增加了“复制”与“粘贴按钮,方便用户进行配煤信息的修改操作。
2.2 用户界面显示
编译完成的用户界面如图3 所示。每台锅炉对应A~F 六个煤仓,由用户选定煤仓后逐个仓进行配煤操作。该界面具有简洁明了,方便操作的优点。
完成一次正确配煤操作后的完整界面如图4 所示。
3 ADO组件与ACCESS实现数据读取
3.1 ADO组件介绍
ADO 是一系列数据对象的集合,该类对象使应用程序具有访问数据库的能力[5]。常用的ADO 对象主要有ADOConnection、ADOTable 和ADOQuery 组件。本文主要用到的有:
(1)ADOConnnection 组件:建立与ADO 数据库之间联系的组件,改变该组件的属性值可以控制与数据库之间联系的属性和情况。该组件的ConnectionString 属性用来指明数据库的连接信息[6]。本文访问的是本地数据库服务器上的ACCESS 数据库,故在该属性下选择对应数据库驱动为MicrosoftJet 4.0 OLEDBProvider。
(2)ADOQuery 组件:主要通过SQL 语句来读取数据,完成相应操作。
3.2 应用ADO连接ACCESS数据库
从ADO 组件板中选取Query 组件放置于窗体中,设置Query组件的ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + tpath + 'main.mdb;Persist Security Info=False';// tpath 为完整文件名的路径,main.mdb 为数据库文件。
3.3 创建ACCESS数据表并显示于主界面
将存煤表中的煤种信息读取到Access 数据库中的Coal 表中,并显示在主界面的dbgrid 表中,具体实现过程如下所示:
(1)读取Excel 文件将数据写入定义的类煤种对象中。具体类对象定义为如表1 所示。
(2)将煤种类对象写入数据库文件的coal 表,实现代码为:SQL.text := 'insert into coal values();
(3)从Data Access 组件板中选取数据源组件ds1 添加至窗体中,并将其DataSet 属性设置为qry_grid.
(4)从Data Controls 组件板中添加1 个DbGrid 组件至窗体中,将其DataSource 属性设置为ds1,用来显示数据表中所有字段的内容。
Delphi 的数据库访问机制如图5 所示。
4 软件测试
软件测试是使用人工操作或者软件自动运行的方式来检验它是否满足规定的需求或者弄清预期结果与实际结果之间的差别[7]。目的是尽早发现软件产品存在的各种问题。
在软件测试过程中发现用户在选定仓位时容易出错,故将仓位选定后显示有高亮的背景色以提醒用户。在用户试运行过程中发现煤种存煤不够也能添加煤种信息的错误,后增加存煤判断程序,在特定煤种存煤不足且被用户选中时,提示用户该煤种已用完,请添加其余煤种。
经过一定时间的试运行解决了软件出现的问题,该软件现已正常服役于沙洲电厂日常配煤工作。
5 结束语
本文说明了可应用于沙洲电厂配煤工作的软件设计过程。使用Dephil7.0 开发了此配煤软件,提高了配煤工作效率,符合企业生产实际,开发成本低,同时还具有良好的可扩展性。用户界面通过可视化模块组件进行界面布局,具有简洁明了的特点。通过ADO 组件设置链路连接数据库与用户界面,设置ADO 表格连接组件与数据源模块使数据显示在用户界面[8]。
该配煤软件基本满足工作需要,能提高配煤人员的工作效率,只需修改配煤表中的煤源数据,打开软件就可直接利用最新煤种信息进行配煤工作。但该款软件功能还有进一步扩展的空间,比如开发功能直接访问Mis 系统中的SQLServer 获取码头来煤信息和化验之后得到的煤种计算发热量、计算硫分、计算灰分值,这样就不需要专人统计煤种信息至存煤表,可以进一步提高工作效率。
图3:界面显示
图4:配煤完成界面显示
图5:数据库访问机制