长时间多变量监控数据的存储及快速定位读取的方法

文档序号:6305436阅读:232来源:国知局
长时间多变量监控数据的存储及快速定位读取的方法
【专利摘要】本发明公开一种长时间多变量监控数据的存储及快速定位读取的方法,包括以下步骤,监控数据的传输;设计页面结构,页面结构包括页头和页体;页头对该页的页面、时间和数据进行特征描述;页体含有各变量的具体存储数据;以页为单位监控数据的存储;监控数据的读取;监控数据的检索。有益效果是:按页存储按索引读取的监控数据存储格式,无需借助任何第三方数据库或者辅助软件即可实现长时间多变量监控数据的存储及快速定位读取;另外,该监控方法对系统资源要求低,实现简单、适用平台广泛,适用于一切需要对长时间多变量监控数据进行保存并且快速按时间或者数值特征进行定位读取的监控领域。
【专利说明】长时间多变量监控数据的存储及快速定位读取的方法
【技术领域】
[0001]本发明涉及一种数据监控领域;特别是涉及一种长时间多变量监控数据的存储及快速定位的方法。
【背景技术】
[0002]在科研、工业控制、工业生产等诸多领域中,经常需要对某些重要参数进行长时间监控,以便观察系统运行状况,或者进行系统故障诊断。监控数据一般有这样的特点:
(I)被监控变量固定。
[0003](2)对监控变量的采样间隔固定,通常采用定时采样。
[0004](3)采样数据形成的数据流均匀但是密度很小。
[0005](4)变量较多监控时间较长时数据总量较大。
[0006](5)监控数据发生的时间对于监控数据的分析至关重要,即发生时间是分析监控数据的很重要的线索。
[0007]目前的监控系统一般采用第三方数据库作为监控数据的存储介质,将数据的存储、读取、检索交由第三方数据库来完成,这样的系统尽管支持系统突然掉电数据保持,并且数据读取检索效率较高,但是系统结构较为复杂,对硬件平台要求较高,购买的第三方数据库费用较高,上述系统比较适合大型的监控系统。
[0008]还有一些监控系统,仅仅将监控数据进行简单的连续存储,但是数据读取和检索效率低下,只能使适用于短时间且少变量的监控系统。

【发明内容】

[0009]本发明所解决的技术问题是,提供一种长时间多变量监控数据进行保存并且快速按时间或者数值特征进行定位读取的监控方法。
[0010]本发明所采用的技术方案是:一种长时间多变量监控数据的存储及快速定位读取的方法,包括以下步骤,
(1)监控数据的传输;
(2)设计页面结构,页面结构包括页头和页体;页头对该页的页面、时间和数据进行特征描述;页体含有各变量的具体存储数据;
(3)以页为单位监控数据的存储;
(4)监控数据的读取;
(5)监控数据的检索。
[0011]所述步骤(2)中,页面为本页数据的基本信息,包括标识当前页面顺序ID的页码、以Byte为单位指出本页头数据量的大小,指引数据读取程序并推算本页变量数量的页头大小、指出下一个页面的起始地址,用来指引数据读取程序遍历整个文件所有页面的下页起始地址;
时间为该页所存储的数据的起始发生时间和终止发生时间;起始发生时间指存储的任一变量首数据产生的时刻,终止发生时间指存储的任一变量尾数据产生的时刻;起始时间和终止时间主要用于快速按时间定位检索监控数据;
数据是对顺序存储的所有变量的数据描述;每一变量的数据描述都分为记录了该变量对应的数据在页体中存储的首地址的起始地址、以该变量数据类型为单位记载了页体中该变量对应数据的存储数量的数据长度和本页中所有该变量对应数据的总体特征的数值特征。
[0012]所述步骤(3)中,监控数据按页顺序存储;包括,
接收监控数据;
将监控数据存到缓冲区;
判断监控数据是否满一页;
当一页时,提取页头信息;
将页头信息写入存储器;
将页体信息写入存储器;
清空缓冲区;
判断监控是否结束;
结束后将末页写入存储器。
[0013]所述步骤(4)中,将所有页头数据读至内存;包括,
首页根据固定地址,非首页根据上页头的下页起始地址读取本页页码,页头大小;
根据页头大小计算变量数;
读取本页头并存入数组;
判断是否页末。
[0014]所述步骤(5)中,分别将页码、发生时刻、数值特征分别与所有的页头进行循环对t匕,找到匹配的页面的页头,然后根据该页头中的数据描述读取对应页面对应变量的数据。
[0015]本发明的有益效果是:按页存储按索引读取的监控数据存储格式,无需借助任何第三方数据库或者辅助软件即可实现长时间多变量监控数据的存储及快速定位读取;另夕卜,该监控方法对系统资源要求低,实现简单、适用平台广泛,适用于一切需要对长时间多变量监控数据进行保存并且快速按时间或者数值特征进行定位读取的监控领域。
【专利附图】

【附图说明】
[0016]图1是本发明页存储的结构示意图;
图2是发明监控数据按页存储的存储结构示意图;
图3是本发明存储监控数据的流程图;
图4是本发明读取所有页头的流程图;
图5是本发明快速定位检索的流程图。
【具体实施方式】
[0017]下面结合附图和【具体实施方式】对本发明作进一步详细说明:
本发明长时间多变量监控数据的存储及快速定位读取的方法,包括以下步骤,
(I)监控数据的传输;(2)设计页面结构,页面结构包括页头和页体;页头对该页的页面、时间和数据进行特征描述;页体含有各变量的具体存储数据;(3)以页为单位监控数据的存储;(4)监控数据的读取;(5)监控数据的检索。
[0018]下面对页面结构作一详细描述:
如图1和图2所示,步骤(2)中,
A.页面描述:页面为本页数据的基本信息,分别为页码、页头大小和下页起始地址;其中,页码是当前页面的顺序ID,主要用来标识页面;页头大小以Byte为单位指出了本页头数据量的大小,主要用来指引数据读取程序为了读取该页头应该分配多大的暂存区域,并且推算本页变量的数量;下页起始地址指出了下一个页面的起始地址,主要用来指引数据读取程序遍历整个文件的所有页面。
[0019]B.时间特征:该部分内容描述了该页所存储的数据的起始发生时间和终止发生时间。其中起始发生时间是指存储的任一变量首数据产生的时刻,终止发生时间是指存储的任一变量尾数据产生的时刻。起始时间和终止时间主要用于快速按时间定位检索监控数据。
[0020]C.数据描述:该部分内容顺序存储着所有变量的数据描述,每一变量的数据描述都分为起始地址、数据长度、数值特征三部分。其中,起始地址记录了该变量对应的数据在页体中存储的首地址;数据长度以该变量数据类型为单位记载了页体中该变量对应数据的存储数量;数值特征描述了本页中所有该变量对应数据的总体特征,比如最值、均值等,该部分内容用户可以根据自己的检索需要自行定义。起始地址和数据长度主要用来指引数据读取程序定位定长读取对应变量的数据,数值特征主要用来支持快速按数值特征定位检索监控数据。
[0021]D.页头数据的存储方式:页头数据按照图1所示的顺序进行顺序存储。
[0022]E.页体数据的存储方式:页体数据按照图1所示的顺序进行顺序存储。
[0023]以下详细说明如何以页的形式存储读取以及检索监控数据:
如图3所示,步骤(3)中,
A.监控数据按页顺序存储;开启监控系统以后,监控数据陆续产生,先将这些零散数据存到数据缓冲区内,等数据达到一页的存储量时,先根据暂存数据的特征提取页头信息,提取完毕,将页头按图1所示的顺序写入到掉电保持存储器(可以是Flash、CF卡、、SD卡、硬盘等设备)中,然后将暂存数据按照图2所示的顺序紧挨着页头写入到存储器中当作页体。如此往复,不停地缓存数据,够一页后紧挨着上一页写入存储器,直到监控结束。
[0024]在此需要注意的是,页面的大小、变量的多少、页头数据描述中数值特征的内容,用户可以根据实际需要自由定义,但是,一旦定义完成就必须严格遵守,务必保证整个存储结构中所有页面的结构完全一致。页面的大小和变量的多少关系到数据存储时所需缓存的大小,页面越大变量越多需要的缓存越大。页面的大小和变量的多少还关系到文件读取的效率和定位检索的精度,变量多少固定时,页面越大读取效率越高但定位精度越差,页面大小固定时变量越多读取效率越低定位精度越高。
[0025]数据特征主要用来进行数据的特征定位检索,比如用户需要检索所有数据中哪个页面里变量I有大于500的情况,此时数据特征中就应该包含最大值和最小值。数据特征描述的越丰富,支持的快速特征检索类型越丰富。
[0026]采用本方案,当监控系统突然掉电时,最多只损失当前一页的数据,用户如果非常在意掉电数据损失的话,可以将页面大小定义的尽量小一些。
[0027]此外,还需要注意首页的页码为零,起始地址是某一固定值,末页的页头信息中下页起始地址是一个固定的特征值。
[0028]如图4所示,步骤(4)中,
B.监控数据的读取:读取数据时,不需要将所有的存储数据都读到内存,只需要将所有的页头读到内存,然后当需要检索数据的时候根据检索要求读取符合条件的指定页的数据即可。这样的读取机制大大节约了系统资源提高了处理速度。
[0029]如图5所示,步骤(5)中,
C.监控数据的快速定位检索:定位方式既可以按照页码或者数据的发生时刻,也可以按照数据的数值特征。定位精度可以快速精确到页,如果需要的话可以增加适当的算法从页定位到点,本文只介绍定位到页的过程。
[0030]按页码、发生时刻检索、数值特征检索的方法和过程基本是一样的,都是通过将检索条件循环与所有的页头描述进行对比,直到找到匹配页面的页头,然后根据该页头中的数据描述读取对应页面对应变量的数据。
[0031]实施例1:在PC机上实现风电变频器有功功率、无功功率和转速的监控为例,说明本方案在具体工程环境中的应用方法和步骤;
(I)监控数据的传输 监控数据通过串口通讯传输到PC机。
[0032](2)设计页面结构 页头设计:
在本实施例中,页码用16位整形变量存储,页头大小用16位整形变量存储,下页起始地址用32位整形变量存储,本页起始时间和终止时间都用长度为6 Byte的自定义的时间类型变量存储。系统一共监控3个变量,按顺序排列依次为有功功率、无功功率、转速,每个变量的起始地址用32位整形变量存储,数据长度用16位整形变量存储,数值特征包括页最大值和页最小值分别用32位整形变量存。这样可以计算得出页头大小为62Byte页体设计:
在本实施例中,一共有三个变量进行需要监控,分别为有功功率、无功功率、转速,三个变量都采用32位整形,监控采样间隔10ms,按每页存IOOs的数据计算,每页每变量需存储10000个数据,各变量数据按顺序存储。
[0033](3 )监控数据的存储
本实时例中,监控数据以二进制文件的形式进行存储,首页码为0,起始地址为文件的首地址值0,末页页头的下页地址为特征值O。
[0034]监控开始,打开一个空的二进制文件,每当三个变量的数据量缓存累计都达到10000个,按照方案描述的方法将监控数据作为一页进行一次文件存盘,直到监控结束关闭文件。
[0035](4)监控数据的读取
打开监控数据存储文件,然后按照方案描述的方法将所有页面的页头读到指定的存储数组中。
[0036]( 5 )监控数据的检索当检索存在有功功率值大于1500的页码,并读取搜索到的第一个页面的数据。
[0037]首先,循环遍历存储页头的数组,并对比1500和每个页头中有功功率的最大值,如果该最大值大于1500,那么记录该页头在数组中的位置。
[0038]然后,根据遍历结果,输出检索结果。如果遍历完数组内所有元素,发现没有匹配的页头,弹出提示框“未找到匹配页”。如果遍历完所有元素,发现只有一个匹配页头,那么根据记录的数组位置提取该页头中有功功率的数据描述并根据描述的首地址和数据长度读取该页的有功功率数据并显示。如果遍历完所有元素,找到了多个匹配页头,弹出提示框“共存在η个匹配页,分别是Xtl页、X1页…Xn页。当前正在显示Xtl页”,同时按照和单匹配一样的方法读取X。页的有功功率数据并显示。
[0039]本发明按页存储按索引读取的监控数据存储格式,无需借助任何第三方数据库或者辅助软件即可实现长时间多变量监控数据的存储及快速定位读取;另外,对系统资源要求低,实现简单、适用平台广泛、系统突然掉电监控数据损失小、处理器内存资源占用小运算效率高以及大量数据快速定位读取,特别是存储及快速定位读取方法适用平台十分广泛,既适用于传统的单片机系统、PLC系统,也适用于嵌有操作系统的嵌入式系统,还适用于较大型的PC机工控机系统、甚至适用于大型的分布式系统。本发明系统规模的存储及快速定位读取的方 法非常灵活,既可以集成中小型的监控系统,也可以用来集成大型的监控系统;数据内容的存储及快速定位读取的方法既可用于传统的数值监控也可用于数据量较大的声音图像监控。
[0040]本发明适用于一切需要对长时间多变量监控数据进行保存并且快速按时间或者数值特征进行定位读取的监控领域。
【权利要求】
1.一种长时间多变量监控数据的存储及快速定位读取的方法,其特征在于,包括以下步骤, 监控数据的传输; 设计页面结构,页面结构包括页头和页体;页头对该页的页面、时间和数据进行特征描述;页体含有各变量的具体存储数据; 以页为单位监控数据的存储; 监控数据的读取; 监控数据的检索。
2.根据权利要求1所述的长时间多变量监控数据的存储及快速定位读取的方法,其特征在于,所述步骤(2)中, 页面为本页数据的基本信息,包括标识当前页面顺序ID的页码、以Byte为单位指出本页头数据量的大小,指引数据读取程序并推算本页变量数量的页头大小、指出下一个页面的起始地址,用来指引数据读取程序遍历整个文件所有页面的下页起始地址; 时间为该页所存储的数据的起始发生时间和终止发生时间;起始发生时间指存储的任一变量首数据产生的时刻,终止发生时间指存储的任一变量尾数据产生的时刻;起始时间和终止时间主要用于快速按时间定位检索监控数据; 数据是对顺序存储的所有变量的数据描述;每一变量的数据描述都分为记录了该变量对应的数据在页体中存储的首地址的起始地址、以该变量数据类型为单位记载了页体中该变量对应数据的存储数量的数据长度和本页中所有该变量对应数据的总体特征的数值特征。
3.根据权利要求1所述的长时间多变量监控数据的存储及快速定位读取的方法,其特征在于, 所述步骤(3)中,监控数据按页顺序存储;包括, 接收监控数据; 将监控数据存到缓冲区; 判断监控数据是否满一页; 当一页时,提取页头信息; 将页头信息写入存储器; 将页体信息写入存储器; 清空缓冲区; 判断监控是否结束; 结束后将末页写入存储器。
4.根据权利要求1所述的长时间多变量监控数据的存储及快速定位读取的方法,其特征在于,所述步骤(4)中,将所有页头数据读至内存;包括, 首页根据固定地址,非首页根据上页头的下页起始地址读取本页页码,页头大小; 根据页头大小计算变量数; 读取本页头并存入数组; 判断是否页末。
5.根据权利要求1所述的长时间多变量监控数据的存储及快速定位读取的方法,其特征在于,所述步骤(5)中,分别将页码、发生时刻、数值特征分别与所有的页头进行循环对t匕,找到匹配的 页面的页头,然后根据该页头中的数据描述读取对应页面对应变量的数据。
【文档编号】G05B19/048GK103984278SQ201410230450
【公开日】2014年8月13日 申请日期:2014年5月28日 优先权日:2014年5月28日
【发明者】谭飞, 王志杰, 山亦青 申请人:天津瑞能电气有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1