System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于智能电能表领域,更具体地,涉及一种智能电能表曲线数据存储方法。
技术介绍
1、目前智能电能表在运行过程中会有一些周期性的数据产生,比如事件记录,负荷曲线,月结算等等,一般情况下这些数据都是通过eeprom存储器和flash存储器两者结合的方式存储,如图1所示,eeprom存储器中存储的是flash地址偏移量,flash数据中存储的具体的数据内容,在记录数据的时候先获取flash地址偏移量,然后根据偏移量计算出需要写入的flash地址,最后根据计算出的flash地址把数据写入flash中。
2、flash存储器的特点是10万次擦写寿命,容量大,价格低,两次写入之间五延时要求,每个扇区都能支持存储多条曲线数据,并且同种曲线类型分配多块扇区。
3、eeprom存储器的特点是100万此擦写寿命,容量一般比flash存储器小,且比flash存储器贵,每条曲线存储的时候都要擦写同一个eeprom存储器地址的数据。
4、目前,这种做法存在以下缺陷:
5、1、在智能电能表使用寿命年限内,会产生大量的曲线数据,由于每条曲线数据都要擦写相同的eeprom存储器地址,导致eeprom存储器使用寿命比flash存储器短,降低曲线数据存储的可靠性。
6、2、增加eeprom存储器等物料成本。
技术实现思路
1、本专利技术的目的是针对eeprom存储器和flash存储器两者结合的存储方式所存在的缺陷问题,提出一种能够提高曲线数据存储可靠
2、本专利技术的技术方案是:
3、本专利技术提供一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,该方法在智能电能表冻结时刻,先从flash中获取即将写入的flash地址,然后将需要写入的曲线数据和下一条曲线数据的flash地址作为整体,一起存储到对应的即将写入的flash地址上。
4、进一步地,当需要跨扇区存储曲线数据的时候,直接从新扇区的首地址开始写入数据,使得每条曲线数据都处在同一扇区内。
5、进一步地,当在扇区的首地址写入数据时,擦除下一块扇区的数据。
6、进一步地,在记录下一条曲线数据时,查询flash中对应的每一块扇区数据获取最近一条曲线数据;基于最近一条曲线数据的内容,获得即将写入的flash地址。
7、进一步地,获取即将写入的flash地址包括以下步骤:
8、获取最近一条曲线数据所在扇区;
9、在最近一条曲线数据所在扇区内,从中间地址向两边查询,获取该扇区中最近一条曲线数据;
10、将最近一条曲线数据中存储的下一条曲线地址作为即将写入的flash地址。
11、进一步地,获取最近一条曲线数据所在扇区包括:
12、对于存储区域内的n+1个扇区,从第一块扇区开始读取第一条和最后一条曲线数据;
13、如果读出的第一条曲线和最后一条曲线对应的数据均不是0xff,则进入下一块扇区进行曲线数据读取;如果读出的第一条曲线对应的数据不是0xff,最后一条曲线数据是0xff,则最近一条数据在当前扇区内;如果读出的第一条曲线和最后一条曲线数据均是0xff,则最近一条数据在上一个扇区内。
14、进一步地,中间地址=(当前扇区首地址+当前扇区末地址)/2。
15、进一步地,同一类曲线的存储区域分配为n+1个扇区,循环存储曲线数据。
16、本专利技术的有益效果:
17、本专利技术提供了一种提高曲线数据存储可靠性的智能电能表数据存储方法,去掉了eeprom存储器,只使用flash存储器,通过本专利技术的方法降低flash存储器擦写频率,从而提高曲线数据存储的可靠性。
18、本专利技术的方法能够降低智能电能表的物料成本,具有良好的应用前景省去了高成本的eeprom存储器,在降低物料成本的同时也提高了曲线数据存储可靠性。
19、本专利技术的其它特征和优点将在随后具体实施方式部分予以详细说明。
本文档来自技高网...【技术保护点】
1.一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于,该方法在智能电能表冻结时刻,先从flash中获取即将写入的flash地址,然后将需要写入的曲线数据和下一条曲线数据的flash地址作为整体,一起存储到对应的即将写入的flash地址上。
2.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法其特征是:当需要跨扇区存储曲线数据的时候,直接从新扇区的首地址开始写入数据,使得每条曲线数据都处在同一扇区内。
3.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法其特征是:当在扇区的首地址写入数据时,擦除下一块扇区的数据。
4.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于:在记录下一条曲线数据时,查询flash中对应的每一块扇区数据获取最近一条曲线数据;基于最近一条曲线数据的内容,获得即将写入的flash地址。
5.根据权利要求4所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于获取即将写入的flash地址包括以
6.根据权利要求5所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于获取最近一条曲线数据所在扇区包括:
7.根据权利要求5所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于:中间地址=(当前扇区首地址+当前扇区末地址)/2。
8.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于:同一类曲线的存储区域分配为N+1个扇区,循环存储曲线数据。
...【技术特征摘要】
1.一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于,该方法在智能电能表冻结时刻,先从flash中获取即将写入的flash地址,然后将需要写入的曲线数据和下一条曲线数据的flash地址作为整体,一起存储到对应的即将写入的flash地址上。
2.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法其特征是:当需要跨扇区存储曲线数据的时候,直接从新扇区的首地址开始写入数据,使得每条曲线数据都处在同一扇区内。
3.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法其特征是:当在扇区的首地址写入数据时,擦除下一块扇区的数据。
4.根据权利要求1所述的一种能够提高曲线数据存储可靠性的智能电能表数据存储方法,其特征在于:在记录下一条曲...
【专利技术属性】
技术研发人员:杨奇磊,孙龙基,陆健淮,陆锋雷,季海涛,
申请(专利权)人:江苏林洋能源股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。