一种电能表大容量数据存储方法及装置与流程

文档序号:12270809阅读:473来源:国知局
一种电能表大容量数据存储方法及装置与流程

本发明涉及电力领域,并且更具体地,涉及一种电能表大容量数据存储方法及装置。



背景技术:

电能表是用来测量电能的仪表,又称电度表,在目前的设计方案中,智能电能表中的计量芯基础电能数据存储需满足正、反向有功电能1min存储间隔,以及第一、二、三、四象限无功电能15min存储间隔,存储深度不小于一年,为保证数据的安全性,数据常采用三处保存的方式,数据量很大(可超过20MByte),因此,对于电能表数据的存储不仅要求存储器容量大,而且还需要其具有较长的读写寿命。

现有的可用于电能表数据存储的存储器有电可擦可编程只读存储器EEPROM(Electrically Erasable Programmable Read-Only Memory,EEPROM)和Flash闪存(Flash Memory,Flash闪存),EEPROM读写寿命长,可超过100万次,但其存储容量有限;Flash存储容量大,但其在写入数据前,如果存储不为空,需进行擦除操作,不仅擦除时间长,效率低,而且擦除次数一般不超过10万次,使用寿命较短,上述两种存储器的缺陷往往会导致电能表大容量数据的存储受到限制。

因此,如何提高电能表大容量数据的存储效率,扩展存储器的使用寿命,进而提高电能表数据存储的安全性,成为一个待解决的问题。



技术实现要素:

为了解决上述问题,本发明提供了一种电能表大容量数据存储方法,所述方法包括:

获取第一待存信息,所述第一待存信息包括第一时标和第一数据,其中所述时标包括获取电量的起始时间点和结束时间点;

将所述第一待存信息存储至第一存储器;

判断所述第一时标的值是否小于第一预设时间,其中所述时标的值包括从获取电量的结束时间点与起始时间点的差值;以及

若所述第一时标的值不小于所述第一预设时间,将所述第一存储器中的待存信息存储至第二存储器,并擦除所述第一存储器中的数据。

优选地,其中所述方法还包括:

若所述第一时标的值小于所述第一预设时间,获取第二待存信息,所述第二待存信息包括第二时标和第二数据;

将所述第二待存信息存储至所述第一存储器;

判断所述第二时标的值是否小于所述第一预设时间;以及

若所述第二时标的值不小于所述第一预设时间,将所述第一存储器中的待存信息存储至所述第二存储器,并擦除所述第一存储器中的数据。

优选地,其中在将待存信息存储至所述第二存储器之前,进一步包括:获取所述第二存储器中的最大时标,并确认所述第二时标大于所述第二存储器中的最大时标。

优选地,其中在获取所述第二存储器中的最大时标之后还包括:

判断所述最大时标的值是否小于第二预设时间;以及

若所述最大时标的值不小于所述第二预设时间,擦除所述第二存储器中最小时标对应的存储信息。

优选地,所述方法还包括:若所述最大时标的值小于所述第二预设时间,执行所述判断所述第二时标是否大于所述最大时标。

优选地,若所述第二时标的值小于所述第一预设时间,继续执行获取待存信息进行存储的步骤。

本发明还提供了一种电能表大容量数据存储装置,所述装置包括:

第一获取模块,用于获取第一待存信息,所述第一待存信息包括第一时标和第一数据,其中所述时标包括获取电量的起始时间点和结束时间点;

第一存储模块,用于将所述第一待存信息存储至第一存储器;

第一判断模块,用于判断所述第一时标的值是否小于第一预设时间,其中所述时标的值包括从获取电量的结束时间点与起始时间点的差值;以及

第二存储模块,用于若所述第一时标的值不小于所述第一预设时间时,将所述第一存储器中的待存信息存储至第二存储器,并擦除所述第一存储器中的数据。

优选地,所述电能表大容量数据存储装置还包括:

所述第一获取模块还用于,若所述第一时标的值小于所述第一预设时间,获取第二待存信息,所述第二待存信息包括第二时标和第二数据;

所述第一存储模块还用于将所述第二待存信息存储至所述第一存储器;

所述第一判断模块还用于判断所述第二时标的值是否小于所述第一预设时间;以及

所述第二存储模块还用于若所述第二时标的值不小于所述第一预设时间,将所述第一存储器中的待存信息存储至所述第二存储器,并擦除所述第一存储器中的数据。

优选地,所述电能表大容量数据存储装置还包括:

第二获取模块,用于若所述第二时标的值不小于所述第一预设时间,在待存信息存储至所述第二存储器之前,获取所述第二存储器中的最大时标。

优选地,所述电能表大容量数据存储装置还包括:

第二判断模块,用于在所述获取所述第二存储器中的最大时标之后判断所述最大时标的值是否小于第二预设时间;以及

擦除模块,用于若所述最大时标的值是不小于所述第二预设时间,擦除所述第二存储器中最小时标对应的存储信息。

优选地,所述电能表大容量数据存储装置还包括:

第三判断模块,用于判断若所述最大时标的值小于所述第二预设时间,判断所述第二时标是否大于所述最大时标。

优选地,所述电能表大容量数据存储装置还包括:

控制模块,用于若所述最大时标的值是小于所述第二预设时间,执行所述判断所述第二时标是否大于所述最大时标。

优选地,所述控制模块还用于若所述第二时标的值小于所述第一预设时间,继续执行获取待存信息进行存储的步骤。

优选地,一种用于存储大容量数据的电能表,包括:

第一存储器,用于存储第一待存信息,其中所述第一待存信息包括第一时标和第一数据,其中所述时标包括获取电量的起始时间点和结束时间点;

控制器,判断所述第一时标的值是否小于第一预设时间,若所述第一时标的值不小于第一预设时间,待第一存储器中的待存信息存储至第二存储器之后,控制器擦除所述第一存储器中的待存信息,其中所述时标的值包括从获取电量的结束时间点与起始时间点的差值;以及

第二存储器,用于存储来自所述第一存储器的待存信息。

本发明的有益效果在于:

本发明提供的一种电能表大容量数据存储方法,适用于采用两个存储器(第一存储器和第二存储器)的电能表,通过将第一存储器中存储时间满足第一预设时间的存储信息自动转存至第二存储器,转存至第二存储器中的存储信息在存储时间满足第二预设时间时,会自动擦除最早一天的存储信息,以给即将存入的存储信息预留空间,如此,第一存储器中只保留最近一天的存储信息,第二存储器中保留一年的存储信息,实现了存储信息在第一存储器中暂存,满足条件时再将其转存至第二存储器进行长时间存储的功能,也就是说在降低了对第一存储器的存储容量要求的同时,减少了第二存储器的读写次数,不仅提高了电能表数据的存储效率,而且扩展了存储器的使用寿命,进而提高了电能表大容量数据存储的安全性与可靠性。

该发明有效的避免了电能表设计现有技术中EEPROM存储容量小、Flash闪存擦写次数低以及擦写时间长的缺点,在保存大容量数据的同时,提高了数据安全性。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1为根据本发明实施方式的存储方法100的流程图;

图2为根据本发明实施方式的进一步存储方法200的流程图;

图3为根据本发明实施方式的更进一步存储方法300的流程图;

图4为根据本发明实施方式的存储装置400的结构示意图;以及

图5为根据本发明实施方式的存储方法500的流程图。

具体实施方式

现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。在本发明的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。

除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。

图1为根据本发明实施方式的存储方法100的流程图。如图1所示,存储方法100用于对电能表大容量数据进行存储。其中下面所述时标包括获取电量的起始时间点和结束时间点,所述时标的值包括从获取电量的结束时间点与起始时间点的差值。所述方法100从步骤S101处开始,在步骤S101获取第一待存信息,所述第一待存信息包括第一时标和第一数据。比如,获取的时间间隔为一分钟,获取的第一待存信息为包括第一时标为12:00-12:01,第一数据电量为1度。

优选地,在步骤S102将所述第一待存信息存储至第一存储器。此处第一存储器优先采用EEPROM存储器。

优选地,在步骤S103判断所述第一时标的值是否小于第一预设时间。该第一预设时间是第一存储器的预先设定的最大存储时间,比如第一预设时间设置为1天,则通过判断第一时标的值是否满足1天来确定是否将第一存储器中的待存信息转存至第二存储器,如果满足,即第一时标的值不小于所述第一预设时间则进入步骤S104,否则进入步骤S105。优选地,在步骤S104若所述第一时标的值不小于所述第一预设时间,将所述第一存储器中的待存信息存储至第二存储器,并擦除所述第一存储器中的数据。例如,设置第一预设时间为1天,获取的第一待存信息包括:第一时标是第一天12:00到第二天12:00,第一数据为这一天的总电量,对应的第一时标的值为一天,此时第一时标的值不小于第一预设时间,就自动将暂存在第一存储器中的待存信息转存至第二存储器。

图2为根据本发明实施方式的进一步存储方法200的流程图。如图2所示,在步骤S105若所述第一时标的值小于所述第一预设时间,获取第二待存信息,所述第二待存信息包括第二时标和第二数据,即如果第一时标所对应的时间没有达到第一预设时间,那么继续获取第二待存信息,此处所述第一时标小于所述第二时标,即每次获取待存信息后,其时钟时间是累加的。

优选地,在步骤S106将所述第二待存信息存储至所述第一存储器,即获取到的第二待存信息也要在第一存储器中进行暂存。

优选地,在步骤S107判断所述第二时标的值是否小于所述第一预设时间,进一步对第二时标所对应的时间进行判断,如果判断结果为否则进入步骤S108,否则进入步骤S121。

优选地,在步骤S108若所述第二时标的值不小于所述第一预设时间,获取所述第二存储器中的最大时标,如果第二时标对应的时间达到了第一预设时间(比如1天),即第一存储器中的存储信息量已经满1天了,则获取第二存储器中的最大时标,该最大时标对应于最近一天存入的数据信息。

优选地,在步骤S109判断所述第二时标是否大于所述最大时标,通过判断第二时标对应的时间是否大于获取到的最大时标对应的时间来确定是否将信息转存,如果判断结果为是,则进入步骤S110,否则不转存。

优选地,在步骤S110若所述第二时标大于所述最大时标,说明第二存储器满足数据转存的时间条件,则将所述第一存储器中的待存信息存储至所述第二存储器,并擦除所述第一存储器中的数据。如果第二时标小于所述最大时标,则直接结束。比如,第二时标为8月2日的9:00,第二存储器的最大时标为8月1日的9:00,则满足存储条件,将第一存储器的待存信息转存至第二存储器,并擦除第一存储器中的数据。

优选地,在步骤S121若所述第二时标的值小于所述第一预设时间,即第一存储器中的存储信息量还未满1天的信息量,则继续执行获取待存信息进行存储的步骤。

图3为根据本发明实施方式的更进一步存储方法300的流程图。如图3所示,作为一种优选地选择方案,在步骤S108之后还应包括在步骤S1081判断所述最大时标的值是否小于第二预设时间,如果判断结果为是,则进入步骤S1083(即步骤S109),否则进入步骤S1082。优选地,在步骤S1082若所述最大时标的值是不小于所述第二预设时间时,擦除所述第二存储器中最小时标对应的存储信息,以给即将存入第二存储器的存储信息预留空间。在步骤S1083若所述最大时标的值是小于所述第二预设时间,即第二存储器中的存储信息量还未达到预定最大量,则执行所述判断所述第二时标是否大于所述最大时标的步骤,继续转存。

图4为根据本发明实施方式的存储装置400的结构示意图。如图4所示,本实施例提供的电能表大容量数据存储装置400包括:第一获取模块41、第一存储模块42、第一判断模块43、第二存储模块44、第二获取模块45、第二判断模块46、第三判断模块47、擦除模块48和控制模块49。第一获取模块41用于获取第一待存信息,所述第一待存信息包括第一时标和第一数据;第一存储模块42用于将所述第一待存信息存储至第一存储器;第一判断模块43用于判断所述第一时标的值是否小于第一预设时间;第二存储模块44用于若所述第一时标的值不小于所述第一预设时间,将所述第一存储器中的所有待存信息存储至第二存储器,并擦除所述第一存储器中的数据。

优选地,所述第一获取模块41还用于若所述第一时标的值小于所述第一预设时间,获取第二待存信息,所述第二待存信息包括第二时标和第二数据;所述第一存储模块42还用于将所述第二待存信息存储至所述第一存储器;所述第一判断模块43还用于判断所述第二时标的值是否小于所述第一预设时间;所述第二存储模块44还用于若所述第二时标的值不小于所述第一预设时间,将所述第一存储器中的待存信息存储至所述第二存储器,并擦除所述第一存储器中的数据。

所述电能表大容量数据存储装置400还包括:第二获取模块45用于若所述第二时标的值不小于所述第一预设时间,在待存信息存储至所述第二存储器之前,获取所述第二存储器中的最大时标;第二判断模块46用于在所述获取所述第二存储器中的最大时标之后判断所述最大时标的值是否小于第二预设时间;以及擦除模块48用于若所述最大时标的值是不小于所述第二预设时间,擦除所述第二存储器中最小时标对应的存储信息。

所述电能表大容量数据存储装置400还包括:第三判断模块47用于若所述最大时标的值小于所述第二预设时间,判断所述第二时标是否大于所述最大时标。

优选地,还包括:控制模块49用于若所述最大时标的值是小于所述第二预设时间,执行所述判断所述第二时标的值是否大于所述最大时标的值的步骤。

优选地,所述控制模块49还用于若所述第二时标的值小于所述第一预设时间,继续执行获取待存信息进行存储的步骤。

上述电能表大容量数据存储装置400,适用于采用两个存储器(第一存储器和第二存储器)的电能表,通过将第一存储器中存储时间满足第一预设时间(比如一天)的存储信息自动转存至第二存储器,转存至第二存储器中的存储信息在存储时间满足第二预设时间(比如365天,即一年)时,会自动擦除最早一天的存储信息,以给即将存入的存储信息预留空间,如此,第一存储器中只保留最近一天的存储信息,第二存储器中保留一年的存储信息,实现了存储信息在第一存储器中暂存,满足条件时再将其转存至第二存储器进行长时间存储的功能,也就是说在降低了对第一存储器的存储容量要求的同时,减少了第二存储器的读写次数(第二存储器一天只进行一次读写),不仅提高了电能表数据的存储效率,而且扩展了存储器的使用寿命,进而提高了电能表大容量数据存储的安全性与可靠性。

本实施例提供了一种电能表数据存储在实际应用中的实现方法,第一存储器EEPROM和第二存储器Flash。其中EEPROM中可以实时存储最近两天每1分钟中的电能数据,其他时间的电能数据都定时保存在Flash中。

对于EEPROM存储器的说明如下:作为一种具体的实现方式,EEPROM中开辟两个存储区,即第一存储区和第二存储区,可用于存储两天的存储信息,采用两个存储区交替擦写的方式存储数据。在电能表正常工作时,两个存储空间只有一处存放数据,另一处为空。比如,存储信息(即待存信息)在第一存储区,当EEPROM中第一存储区储存的信息量满1天(即第一预设时间设置为1天)时,将该存储信息写入Flash中,同时擦除第一存储区中的存储信息,电能表在下一分钟获取到的待存信息(即下一天第一个分钟点的待存储信息)会存放至第二存储区,如此,实现两个存储区以轮换的方式进行信息存储。其中,Flash中按存储信息的时标顺序循环存储,当存储数据量满1年(即第二预设时间为1年)时,将覆盖最早一天的数据,以此类推。

图5为根据本发明实施方式的存储方法500的流程图。如图5所示,包括如下步骤:

S401:电表每分钟触发数据存储动作,将当前电表时钟和需存储的数据组织好后放入临时缓存;

S402:读取两处存储区的数据,判断其时标是否都有效,若是进入步骤S403、S404,否则进入步骤S411;

S403:然后比较临时缓存数据时标是否大于两处存储区中(比如第一存储区)较大时标的日期,判断是进入步骤S405,否则进入步骤S408;

S404:将两处存储区中时标较小的有效数据作为待转存数据,然后进入步骤S406;

S405:将该临时缓存数据作为待转存数据;

S406:比较待转存数据的时标是否大于Flash中最近一天数据的时标,若是进入步骤S407,否则结束;

S407:将EEPROM中有效的数据转存至Flash,然后进入步骤S410;

S408:如果临时缓存数据时标不大于两处存储区中较大时标的日期,则判断临时缓存数据时标是否等于两处存储区中较大时标的日期,判断是进入步骤S409,否则结束;

S409:判断临时缓存时标中的时分在对应EEPROM中已存数据的时分偏移地址往后(包括这个点)的数据是否全部无效,若是进入步骤S410,否则结束;

S410:将临时缓存数据写入EEPROM;

S411:判断两处存储区中的数据是否有一处有效,若是进入步骤S403,否则进入步骤S412;

S412:将临时缓存中的数据存入EEPROM的其中一处存储区;

本实施例提供的电能表数据存储在实际应用中的实现方法,通过第一存储器采用EEPROM进行实时存储、第二存储器采用Flash闪存进行定时存储,有效的避免了现有技术中EEPROM存储容量小、Flash闪存擦写次数低以及擦写时间长的缺点,在保存大容量数据的同时,提高了数据安全性。

已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。

通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1