【技术实现步骤摘要】
一种SCADA系统数据补传方法和SCADA系统
[0001]本专利技术涉及网络
,尤其涉及一种
SCADA
系统数据补传方法和
SCADA
系统
。
技术介绍
[0002]在现代工业中,
SCADA
系统是自动化控制和数据采集的重要手段
。
由于生产线或设备存在分布式部署的情况,
SCADA
系统在实际使用中过程需要支持远程连接和数据传输,这使得
SCADA
系统在通信环境的不稳定性和网络抖动等情况下经常面临数据传输失败的问题,需要在网络连接中断恢复时对相关数据进行补传
。
现有的数据补传方法,难以保证网络断开重连后数据补传的位置节点与断开前已传输完成的位置节点一致,会导致系统资源的重复浪费或数据包缺失
。
技术实现思路
[0003]本专利技术针对现有技术中的不足,公开了一种
SCADA
系统数据补传方法,其中
SCADA
服务器通过网络与部署现场的远程采集
IO
单元进行通信,该方法包括如下步骤:
[0004]远程采集
IO
单元在失去与
SCADA
服务器连接后,将采集到的现场数据存储至本地第一缓存区中;
[0005]远程采集
IO
单元从第一缓存区中抓取历史数据,将所述历史数据分割成多个数据块并保存至第二缓存区,并对各数据块进行标记和赋予唯一标识符;r/>[0006]远程采集
IO
单元在监测到与
SCADA
服务器的连接恢复后,从第二缓存区中按设定更新规则抓取对应的数据块发送至
SCADA
服务器;
[0007]SCADA
服务器在接收到远程采集
IO
单元补传的数据块后,根据所述数据块的唯一标识符生成对应确认号并反馈给所述远程采集
IO
单元,提取所述数据块中的历史数据值和历史时间戳,按历史时间戳插入历史趋势数据库进行归档保存
。
[0008]优选的,所述步骤远程采集
IO
单元从第一缓存区中抓取历史数据,将所述历史数据分割成多个数据块并保存至第二缓存区,具体包括:从第一缓存区中按设定规则定时抓取相应大小的历史数据包,通过数据分割函数将所述历史数据包分割成多个相应大小的数据块,所述数据块包含采集变量的历史时间戳以及历史数据值
。
[0009]优选的,所述步骤对各数据块进行标记和赋予唯一标识符,具体包括:通过自定义结构体来表示各数据块格式,所述数据块格式包括序列号
、
历史数据信息和校验码,所述标识符被配置为将该数据块所包含的首条数据记录的历史时间戳
、
校验码以及该数据块包含的数据条数通过哈希算法进行计算后得到的哈希值序列号,其中各数据块的序列号随对应数据块中包含的首条数据记录的历史时间戳越晚而越大
。
[0010]优选的,所述步骤从第二缓存区中按设定更新规则抓取对应的数据块发送至
SCADA
服务器,具体包括:在第二缓存区中抓取序列号最大的数据块补发至
SCADA
服务器,并在收到
SCADA
服务器确认接收成功后反馈的对应该数据块序列号的确认号后,依次抓取下一序列号的数据块补发至
SCADA
服务器
。
[0011]优选的,所述步骤根据所述数据库的唯一标识符生成对应确认号并反馈给所述远程采集
IO
单元,提取所述数据块中的历史数据值和历史时间戳,按历史时间戳插入历史趋势数据库进行归档保存,具体包括:
[0012]SCADA
服务器在接收到远程采集
IO
单元补发的数据块后,提取该数据块序列号值并添加对应时间戳后生成确认号保存至本地数据库,并将所述确认号反馈至发送该数据块的远程采集
IO
单元;
[0013]获取数据块中包含的各条采集变量历史数据的历史时间戳和历史数据值,按照
SCADA
服务器的历史趋势数据库的格式重新格式化后,按历史时间戳顺序先后插入至所述历史趋势数据库对应时间区间内
。
[0014]本专利技术还公开了一种
SCADA
系统,包括部署在现场的远程采集
IO
单元
、
和能够通过网络与所述远程采集
IO
单元通信的
SCADA
服务器
。
所述远程采集
IO
单元被配置为在中断与
SCADA
服务器连接后,将采集到的现场数据存储至本地第一缓存区中;从第一缓存区中抓取历史数据,将所述历史数据分割成多个数据块并保存至第二缓存区,并对各数据块进行标记和赋予唯一标识符;在监测到与
SCADA
服务器的连接恢复后,从第二缓存区中按设定更新规则抓取对应的数据块发送至
SCADA
服务器;所述
SCADA
服务器被配置为在接收到远程采集
IO
单元补传的数据块后,根据所述数据块的唯一标识符生成对应确认号并反馈给所述远程采集
IO
单元,并提取所述数据块中的采集历史数据值和历史时间戳,按历史时间戳插入历史趋势数据库进行归档保存
。
[0015]优选的,所述远程采集
IO
单元具体被配置为:从第一缓存区中按设定规则定时抓取相应大小的历史数据包,通过数据分割函数将所述历史数据包分割成多个相应大小的数据块,所述数据块包含采集变量的历史时间戳以及历史数据值
。
[0016]优选的,所述数据块格式通过自定义结构体来表示,包括序列号
、
历史数据信息和校验码;所述标识符被配置为将该数据块所包含的首条数据记录的历史时间戳
、
校验码以及该数据块包含的数据条数通过哈希算法进行计算后得到的哈希值序列号,其中各数据块的序列号随对应数据块中包含的首条数据记录的历史时间戳越晚而越大
。
[0017]优选的,所述远程采集
IO
单元还被配置为:在第二缓存区中抓取序列号最大的数据块补发至
SCADA
服务器,并在收到
SCADA
服务器确认接收成功后反馈的对应该数据块序列号的确认号后,依次抓取下一序列号的数据块补发至
SCADA
服务器
。
[0018]优选的,所述
SCADA
服务器被配置为在接收到远程采集
IO
单元补发的数据块后,提取该数据块序列号值并添加对应时间戳后生成确认号保存至本地数据库,并将所述确认号反馈至发送该数据块的远程采集
IO
单元;获取数据块中包含的各条采集变量历史数据的历史时间戳和历史数据值,按本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.
一种
SCADA
系统数据补传方法,其中
SCADA
服务器通过网络与部署现场的远程采集
IO
单元进行通信,其特征在于,包括如下步骤:远程采集
IO
单元在失去与
SCADA
服务器连接后,将采集到的现场数据存储至本地第一缓存区中;远程采集
IO
单元从第一缓存区中抓取历史数据,将所述历史数据分割成多个数据块并保存至第二缓存区,并对各数据块进行标记和赋予唯一标识符;远程采集
IO
单元在监测到与
SCADA
服务器的连接恢复后,从第二缓存区中按设定更新规则抓取对应的数据块发送至
SCADA
服务器;
SCADA
服务器在接收到远程采集
IO
单元补传的数据块后,根据所述数据块的唯一标识符生成对应确认号并反馈给所述远程采集
IO
单元,提取所述数据块中的历史数据值和历史时间戳,按历史时间戳插入历史趋势数据库进行归档保存
。2.
根据权利要求1所述的
SCADA
系统数据补传方法,其特征在于,所述步骤远程采集
IO
单元从第一缓存区中抓取历史数据,将所述历史数据分割成多个数据块并保存至第二缓存区,具体包括:从第一缓存区中按设定规则定时抓取相应大小的历史数据包,通过数据分割函数将所述历史数据包分割成多个相应大小的数据块,所述数据块包含采集变量的历史时间戳以及历史数据值
。3.
根据权利要求2所述的
SCADA
系统数据补传方法,其特征在于,所述步骤对各数据块进行标记和赋予唯一标识符,具体包括:通过自定义结构体来表示各数据块格式,所述数据块格式包括序列号
、
历史数据信息和校验码,所述标识符被配置为将该数据块所包含的首条数据记录的历史时间戳
、
校验码以及该数据块包含的数据条数通过哈希算法进行计算后得到的哈希值序列号,其中各数据块的序列号随对应数据块中包含的首条数据记录的历史时间戳越晚而越大
。4.
根据权利要求3所述的
SCADA
系统数据补传方法,其特征在于,所述步骤从第二缓存区中按设定更新规则抓取对应的数据块发送至
SCADA
服务器,具体包括:在第二缓存区中抓取序列号最大的数据块补发至
SCADA
服务器,并在收到
SCADA
服务器确认接收成功后反馈的对应该数据块序列号的确认号后,依次抓取下一序列号的数据块补发至
SCADA
服务器
。5.
根据权利要求4所述的
SCADA
系统数据补传方法,其特征在于,所述步骤根据所述数据库的唯一标识符生成对应确认号并反馈给所述远程采集
IO
单元,提取所述数据块中的历史数据值和历史时间戳,按历史时间戳插入历史趋势数据库进行归档保存,具体包括:
SCADA
服务器在接收到远程采集
IO
单元补发的数据块后,提取该数据块序列号值并添加对应时间戳后生成确认号保存至本地数据库,并将所述确认号反馈至发送该数据块的远程采集
IO
单...
【专利技术属性】
技术研发人员:刘圣林,包卿,王兴华,薛立俊,
申请(专利权)人:明度智云浙江科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。