用户中心
· 企业空间 首页 | 资讯 | 技术 | 产品 | 企业 | 直播 | 专题 | 智能制造 | 论坛| 在线研讨会
紫金桥软件技术有限公司
企业空间 > 案例应用 > 正文
  • 基于紫金桥软件的炼钢装置上料过程统计分析
  • 发布时间:2008/8/21 15:01:10   修改时间:2008/8/21 15:00:49 浏览次数:1369
  • 随着世界各国工业化程度的不断加大,各国的钢铁需求量也不断加大,需要的钢铁的种类也不断增多。这就要求我们在钢铁的生产过程中不断改进自己的工艺技术,提高生产过程控制精度,从而生产出更多更好的高质量钢材。

    在炼钢过程中配料、上料过程将直接影响钢的产量及质量,如果能对这一过程进行记录分析,将有利于工艺的改进及分析产生次品的原因。下面就讲解一下通过紫金桥实时数据库实现配料、上料过程记录分析的方法和过程。

    工艺过程

    从总的工艺过程可以分为焦上料和矿上料两部分,通常焦或矿又各自由两套上料系统来完成。在上料前,首先要根据生产不同种类的钢材进行配料。一个称量斗可以对应一个料仓或两上料仓,当一个称量斗对应两个料仓时,要通过选料器进行选料。通常焦炭是通过焦炭称量斗称量后直接上料的;而矿通常是由多个量称量斗按比例进行称量混合,然后再由矿总称量斗进行汇总称量上料。

    记录过程分析

    对于所有称量斗,当称量斗打开时为一次称量结束,这时根据称量斗物料来源(料仓选择器选择状态),将这个值记录到对应本次加料量中间量中。对于矿总称量斗打开时或焦炭称量斗打开时,则产生一条上料记录。对于焦炭上料记录,只记录一个当前选择料仓的上料量;对于矿的上料记录,则要记录各分组成分的上料量(由中间量获得)和矿总的上料量。

    上料过程产生的记录要通过WEB浏览发布,为了使用所WEB客户端看到相同的记录结果,这要求记录时要将数据插入到历史中。WEB客户端通过查询指定时间范围内的上料记录,而得一致的完整的记录结果。

    记录过程实现

    对于矿上料记录,由于其是由多种组分混合组成,并要对各组分含量进行记录,因此行成上料记录前,要通过一组中间变量对各组分的称重结果记录。根据分矿称量斗对应一个或两个料仓的不同,在产生中间量记录时,处理方法有所不同,但触发条件都由分矿称量斗的放料门打开产生的。在数据库的“值改变”脚本中为每个分矿称量斗打开开关定义一段处理脚本,如下所示:

    一个分矿称量斗对应一个料仓,开关状态变化时脚本:

    if( 580称量斗5打开信号.PV ) then

    580烧5称重E.PV = 580称量斗5称重.PV;

    endif;

     

    一个分矿称量斗对应两个料仓,开关状态变化时脚本:

    if (580称量斗1打开信号.PV) then

    if( 580矿1烧11选择信号.PV == 0) then

    580矿1称重E.PV = 580称量斗1称重.PV;

    580烧11称重E.PV = -99999;

    else

    580矿1称重E.PV = -99999;

    580烧11称重E.PV = 580称量斗1称重.PV;

    endif;

    endif;

    当矿总称量斗或焦炭称量斗打开时就会产生一条上料记录,为了方便以时间为序的记录检索,增加了一个“记录时间”数据库点,其保存的值没有太多实际意义,但它所对应的时间则是其它量值的检索条件。对于矿总称量斗或焦炭称量斗同样要在数据库的“值改变”脚本中为每个称量打开开关定义一段处理脚本,如下所示:

    焦炭称量斗开关状态变化时脚本:

    int Millisecond = $SYSTEM.Millisec;

    int CurTime = $SYSTEM.LongTime;

    if( 580西焦称量斗打开.PV == 1) then

    InsertHisData2(580记录时间.PV,$SYSTEM.LongTime, $SYSTEM.LongTime,Millisecond);

    InsertHisData2(580装料制度.PV,-99999, CurTime, Millisecond);//装料制度0表示为P

    InsertHisData2(580焦3上料量.PV, -99999, CurTime, Millisecond);

    //没有上料的矿

    InsertHisData2(580矿总上料量.PV, -99999, CurTime, Millisecond);

    //这里假设为0时为选择焦1

    if( 580焦1焦2选择信号.PV == 0) then

    InsertHisData2(580焦1上料量.PV, 580西焦称重.PV, CurTime, Millisecond);

    InsertHisData2(580焦2上料量.PV, -99999, CurTime, Millisecond);

    else

    InsertHisData2(580焦1上料量.PV, -99999, CurTime, Millisecond);

    InsertHisData2(580焦2上料量.PV, 580西焦称重.PV, CurTime, Millisecond);

    endif;

    endif;

    矿总称量斗开关状态变化时脚本:

    int Millisecond = $SYSTEM.Millisec;

    int CurTime= $SYSTEM.LongTime;

    if (580西矿称量斗打开.PV) then

    InsertHisData2(580记录时间.PV,CurTime, CurTime, Millisecond);

    InsertHisData2(580装料制度.PV,1, CurTime, Millisecond);//1表示装料制度为K

    InsertHisData2(580焦1上料量.PV, -99999, CurTime, Millisecond);

    //没有上料的矿或焦

    InsertHisData2(580球10上料量.PV, -99999, CurTime, Millisecond);

     

    InsertHisData2(580矿1上料量.PV, 580矿1称重E.PV, CurTime, Millisecond);

    //上料的矿或焦

    InsertHisData2(580矿总上料量.PV, 580西矿称重.PV, CurTime, Millisecond);

    endif;

    记录查询显示

    对于记录的显示首先是通过一个隐藏的“所有历史数据表”将选定时间范围内的所有记录时间检索出来,然后再通过这个时间检索其它记录值,并将这些值填充到显示表中。这个处理过程是通过“所有历史数据表”的“事件脚本”来完成的:

    “事件脚本”中的“数据刷新”脚本如下所示:

    int RecordCount = #RecordTime.GetDataCount();

    int RecordIndex = 1;

    int i,j;

     

    //第一个记录的时间有可能小于开始时间

    if( #RecordTime.GetVal(1,1) < #StartDate.Time ) then

    RecordCount = RecordCount - 1;

    RecordIndex = RecordIndex+ 1;

    endif;

    if( RecordCount > #List.RowCount() - 2) then

    #List.AddRow(RecordCount - (#List.RowCount() - 2));

    else

    if( RecordCount < 18 ) then//18是本例中缺省记录数,可根据实际情况调整

    #List.DelTailRow(#List.RowCount() - 20);//20为缺省记录数加表头行数。

    #List.ClearRowData(3,18);

    else

    #List.DelTailRow(#List.RowCount()-2 -RecordCount);

    endif;

    endif;

     

    j=1;

    for i="1to" RecordCount+1step1

    if( #RecordTime.GetVal(1,RecordIndex+i) == #RecordTime.GetVal(3,RecordIndex+i)) then

    #list.SetVal(1, j+2, #RecordTime.GetVal(1,RecordIndex+i));

    #list.SetVal(2, j+2, #RecordTime.GetVal(2,RecordIndex+i));

    j=j+1;

    endif;

    next;

    小结

    本文主要是以钢铁的配料、上料记录过程为例,结合工艺过程实现数据记录和查询显示。对于这个示例不仅可以做为钢铁配料、上料记录、数据分析显示的原型,也可以根据它的应用特点(数据产生存储由服务器端——数据库脚本来完成,数据查询显示由客户端脚本来完成),而将其扩展到其它行业。希望对学习使用紫金桥实时数据库所有帮助。
  • 企业介绍
紫金桥软件技术有限公司(RealSoft)是由中石油出资成立的专门从事计算机软件产品开发的高新技术企业,是中国石油天然气集团的软件开发基地。公司专注于自主知识产权软件产品“实时数据库系统”和“监控组态软件”的开发与推广工作,以为企业集团及客户…  更多>>
  • 联系方式

紫金桥软件技术有限公司

联系人:李磊

地址:黑龙江省大庆市高新区服务外包产业园C1-817室

邮编:163316

电话:400-6996-515

传真:0459-8151391-808

公司网址:http://www.realsoft.cc

  • 该空间手机版

扫描此二维码即可访问该空间手机版

  • 在线反馈
1.我有以下需求:



2.详细的需求:
姓名:
单位:
电话:
邮件:
您还没有登录,请登陆,
如果您还没有注册,点击这里注册.
  • 网友反馈
  • 戴永铁 在2024/6/11 14:51:00留言
  • 留言类型:贵公司产品销售人员联系我,贵公司技术支持人员联系我,
  • 详细留言:需要制药工业领域的实时库报表,包含矩阵配?、参数配方、数据(统计和历史)、曲线、事件、报警、审计追踪,这些内容可以组态化
  • 晓同 在2024/5/16 11:06:00留言
  • 留言类型:我让贵公司产品销售人员联系我,
  • 详细留言:紫金桥组态软件V6.5,512点授权
  • 在2023/10/21 16:03:00留言
  • 留言类型:贵公司技术支持人员联系我,
  • 详细留言:OPC
  • 郑鑫汶 在2023/6/1 14:58:00留言
  • 留言类型:我想得到贵公司产品详细资料,我想得到贵公司产品的价格信息,我让贵公司产品销售人员联系我,我让贵公司技术支持人员联系我,
  • 详细留言:需要咨询贵公司软件的价格功能
  • 吴吉校 在2023/3/15 7:45:00留言
  • 留言类型:我想得到贵公司产品详细资料,我想得到贵公司产品的价格信息,我让贵公司产品销售人员联系我,我让贵公司技术支持人员联系我,
  • 详细留言:组态软件咨询
更多请进入空间管理中心查看
关于我们 | 网站地图 | 联系我们
© 2003-2018    经营许可编号:京ICP证120335号
公安机关备案号:110102002318  服务热线:010-82053688
我要反馈