一种提高加料机过程数据分析精度的方法

文档序号:6308792阅读:276来源:国知局
一种提高加料机过程数据分析精度的方法
【专利摘要】本发明公开了一种提高加料机过程数据分析精度的方法,包括以下步骤:计算堆栈地址指针;实时查询PLC当前时间获取数据采集时间;将数据采集映像区中的数据循环以堆栈的方式存放到数据块中的数据采集区;一次数据采集过程完成后,将数据采集区中的数据一次性传送到数据缓存区中;将数据缓存区中的数据传送到数据输出区,通知工控机接收数据;工控机将PLC数据块中数据输出区中数据采集到数采变量中;将数据库暂存表中经过编制的数据恢复成原来的结构形式,写入数据库存储表。本发明实现了对加料过程变化的精确监控,使加料过程分析更加细致准确,为优化加料过程和提高加料精度的研究提供了数据支持。
【专利说明】一种提高加料机过程数据分析精度的方法

【技术领域】
[0001]本发明涉及一种提高加料机过程数据分析精度的方法。

【背景技术】
[0002]叶片加料机作为卷烟生产的关键设备,负责按照配方要求,将料液均匀地施加到烟叶中,为保证加料精度,一般采用大型PLC作为主控单元,扫描周期约为20ms,也就是每20ms就根据控制结果调整一次控制参数。而生产监控和数据采集一般应用工控机,通过工控网络与PLC相连,由于工控机的数据更新周期一般为100ms左右,所以,工控机采集到的只是过程数据的五十分之一,大量的数据流失,造成无法精确分析加料过程数据。


【发明内容】

[0003]本发明为了解决上述问题,提出了一种提高加料机过程数据分析精度的方法,本方法通过实时记录、批量传送到方法,实现对加料机过程数据精确采集的功能,从而达到精确分析加料机过程数据,提高加料机控制精度的目的。
[0004]为了实现上述目的,本发明采用如下技术方案:
[0005]一种提高加料机过程数据分析精度的方法,包括以下步骤:
[0006](I)根据地址序号和指针偏移量计算堆栈地址指针;
[0007](2)获取PLC的当前时间,将时间字节中的BCD码转换成整数,计算数据采集时间;
[0008](3)将数据采集映像区中的加料泵设定频率、加料泵实际频率和加料流量数据和计算得到的数据采集时间,以堆栈的方式存放到数据块中的数据采集区,地址序号进行循环,完成米集过程;
[0009](4) 一次数据采集过程完成后,判断PLC数据块中的数据缓存区是否空闲,如果空闲,则将数据采集区中的数据一次性传送到数据缓存区中;如果占用,则先将数据缓存区中的数据传送到数据输出区,然后再将数据采集区中的数据传送到数据缓存区,并置数据缓存区占用标志位;
[0010](5)判断PLC数据块中的数据输出区是否空闲,如果空闲且数据缓存区占用,则将数据缓存区中的数据传送到数据输出区,清除缓存区占用标志位;如果数据输出区占用,则通知工控机接收数据;
[0011](6)工控机获得接收数据通知后,将PLC数据块中数据输出区中的所有数据一次性的采集到数据采集变量中,数据采集变量更新完成后,启动数据记录脚本,对数据进行编组,循环写入数据库中的数据暂存表,记录完成后,通知PLC数据接收完毕;
[0012](7)当记录过程完成后,启动数据处理存储过程,将数据库暂存表中经过编制的数据恢复成原来的结构形式。
[0013]所述步骤(I)中,堆栈地址指针为:P= I*32+P# ;其中,P:地址指针;1:地址序号;P#:指针偏移量。
[0014]所述步骤⑵中,具体方法为:实时查询PLC当前时间,获取当前时间的时、分、秒、10毫秒、0.1毫秒5个字节,将字节中的BCD码转换成整数,计算得到一个以0.1毫秒为单位的时间值,作为数据采集时间,和监测数据共同保存,以用于后期分析。
[0015]所述步骤⑵中,数据采集时间t = (((h*60+m)*60+s)*100+msi)*100+ms2 ;t 为数据采集时间;h为PLC当前时间中的时;m:PLC当前时间中的分;s:PLC当前时间中的秒;
[0016]Iiis1 =PLC当前时间中的毫秒1,以10毫秒为单位;
[0017]ms2:PLC当前时间中的毫秒2,以0.1毫秒为单位。
[0018]所述步骤(3)中,以I从O到i循环,将数据采集映像区中的加料泵设定频率、力口料泵实际频率和加料流量数据和计算得到的数据采集时间t,以堆栈的方式存放到数据块中的数据采集区,每次执行完后,I加1,当I = i+Ι时,一次采集过程完成,重新给I赋值O。
[0019]所述步骤¢)中,具体方法为:工控机获得接收数据通知后,将PLC数据块中数据输出区中的i+Ι组数据一次性的采集到数据采集变量中;数据采集变量更新完成后,启动数据记录脚本,每次将η组数据编为I组,写入数据库中的数据暂存表,循环(i+l)/n次完成,记录完成后,通知PLC数据接收完毕,其中,i为整数,且(i+1) % η = O。
[0020]本发明的有益效果为:实现了对叶片加料机加料过程数据的高精度采集,实现了对加料过程变化的精确监控,使加料过程分析更加细致准确,为优化加料过程和提高加料精度的研究提供了数据支持。

【专利附图】

【附图说明】
[0021]图1本发明的结构流程图。

【具体实施方式】
:
[0022]下面结合附图与实施例对本发明作进一步说明。
[0023]如图1所示,一种提高加料机过程数据分析精度的方法,包括以下步骤:
[0024]步骤I计算堆栈地址指针。
[0025]P = I*32+P#
[0026]P:地址指针;
[0027]1:地址序号;
[0028]P#:指针偏移量。
[0029]步骤2实时查询PLC当前时间,获取当前时间的时、分、秒、10毫秒、0.1毫秒5个字节,将字节中的BCD码转换成整数,计算得到一个以0.1毫秒为单位的时间值,作为数据采集时间,和监测数据共同保存,以用于后期分析。
[0030]t = (((h*60+m) *60+s) =Ii1(Hms1) *100+ms2
[0031]t:数据采集时间;
[0032]h:PLC当前时间中的时;
[0033]m: PLC当前时间中的分;
[0034]s:PLC当前时间中的秒;
[0035]Iiis1 =PLC当前时间中的毫秒1,以10毫秒为单位;
[0036]ms2:PLC当前时间中的毫秒2,以0.1毫秒为单位。
[0037]步骤3以I从O到99循环,将数据采集映像区中的数据(加料泵设定频率、加料泵实际频率、加料流量)和计算得到的时间t,以堆栈的方式存放到数据块中的数据采集区,每次执行完后,I加1,当I = 100时,一次采集过程完成,重新给I赋值O。PLC的扫描周期约为20毫秒,100个周期完成一个采集堆栈过程,大约2000毫秒的时间。
[0038]步骤4 一次数据采集过程完成后,判断PLC数据块中的数据缓存区是否空闲,如果空闲,则将数据采集区中的数据一次性传送到数据缓存区中;如果占用,则先将数据缓存区中的数据传送到数据输出区,然后再将数据采集区中的数据传送到数据缓存区,并置数据缓存区占用标志位。
[0039]步骤5判断PLC数据块中的数据输出区是否空闲,如果空闲且数据缓存区占用,则将数据缓存区中的数据传送到数据输出区,清除缓存区占用标志位;如果数据输出区占用,则通知工控机接收数据。
[0040]步骤6工控机获得接收数据通知后,将PLC数据块中数据输出区中的100组数据一次性的采集到数据采集变量中。
[0041]步骤7数据采集变量更新完成后,启动数据记录脚本,每次将10组数据编为I组,写入数据库中的数据暂存表,循环10次完成。循环周期100毫秒,整个记录过程1000毫秒完成。记录完成后,通知PLC数据接收完毕。
[0042]步骤8当记录过程完成后,启动数据处理存储过程,将数据库暂存表中经过编制的数据恢复成原来的结构形式,即PLC采集到的100组数据,写入数据库存储表。
[0043]上述虽然结合附图对本发明的【具体实施方式】进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
【权利要求】
1.一种提高加料机过程数据分析精度的方法,其特征是:包括以下步骤: (1)根据地址序号和指针偏移量计算堆栈地址指针; (2)获取PLC的当前时间,将时间字节中的BCD码转换成整数,计算数据采集时间; (3)将数据采集映像区中的加料泵设定频率、加料泵实际频率和加料流量数据和计算得到的数据采集时间,以堆栈的方式存放到数据块中的数据采集区,地址序号进行循环,完成米集过程; (4)一次数据采集过程完成后,判断PLC数据块中的数据缓存区是否空闲,如果空闲,则将数据采集区中的数据一次性传送到数据缓存区中;如果占用,则先将数据缓存区中的数据传送到数据输出区,然后再将数据采集区中的数据传送到数据缓存区,并置数据缓存区占用标志位; (5)判断PLC数据块中的数据输出区是否空闲,如果空闲且数据缓存区占用,则将数据缓存区中的数据传送到数据输出区,清除缓存区占用标志位;如果数据输出区占用,则通知工控机接收数据; (6)工控机获得接收数据通知后,将PLC数据块中数据输出区中的所有数据一次性的采集到数据采集变量中,数据采集变量更新完成后,启动数据记录脚本,对数据进行编组,循环写入数据库中的数据暂存表,记录完成后,通知PLC数据接收完毕; (7)当记录过程完成后,启动数据处理存储过程,将数据库暂存表中经过编制的数据恢复成原来的结构形式。
2.如权利要求1所述的一种提高加料机过程数据分析精度的方法,其特征是:所述步骤(I)中,堆栈地址指针为:P = I*32+P# ;其中,P:地址指针;1:地址序号;P#:指针偏移量。
3.如权利要求1所述的一种提高加料机过程数据分析精度的方法,其特征是:所述步骤⑵中,具体方法为:实时查询PLC当前时间,获取当前时间的时、分、秒、10毫秒、0.1毫秒5个字节,将字节中的BCD码转换成整数,计算得到一个以0.1毫秒为单位的时间值,作为数据采集时间,和监测数据共同保存,以用于后期分析。
4.如权利要求3所述的一种提高加料机过程数据分析精度的方法,其特征是:所述步骤(2)中,数据采集时间t = (((h*60+m)*60+s)*100+mSl)*100+ms2 ;t为数据采集时间;h为PLC当前时间中的时;m:PLC当前时间中的分;s:PLC当前时间中的秒; His1 =PLC当前时间中的毫秒1,以10毫秒为单位; ms2 =PLC当前时间中的毫秒2,以0.1毫秒为单位。
5.如权利要求1所述的一种提高加料机过程数据分析精度的方法,其特征是:所述步骤(3)中,以I从O到i循环,将数据采集映像区中的加料泵设定频率、加料泵实际频率和加料流量数据和计算得到的数据采集时间t,以堆栈的方式存放到数据块中的数据采集区,每次执行完后,I加1,当I = i+Ι时,一次采集过程完成,重新给I赋值O。
6.如权利要求1所述的一种提高加料机过程数据分析精度的方法,其特征是:所述步骤(6)中,具体方法为:工控机获得接收数据通知后,将PLC数据块中数据输出区中的i+1组数据一次性的采集到数据采集变量中;数据采集变量更新完成后,启动数据记录脚本,每次将η组数据编为I组,写入数据库中的数据暂存表,循环(i+1) /n次完成,记录完成后,通知PLC数据接收完毕,其中,i为整数,且(i+l)% η = O。
【文档编号】G05B19/05GK104460488SQ201410614038
【公开日】2015年3月25日 申请日期:2014年11月4日 优先权日:2014年11月4日
【发明者】段三青, 程林峰, 韩勇, 孙钦兰, 尹旭梅, 孙延钊, 杨鲁滨, 阎为民 申请人:山东中烟工业有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1