CN105606856A - 一种提高电能表系统实时响应速度的方法、系统和电能表 - Google Patents
一种提高电能表系统实时响应速度的方法、系统和电能表 Download PDFInfo
- Publication number
- CN105606856A CN105606856A CN201510989035.7A CN201510989035A CN105606856A CN 105606856 A CN105606856 A CN 105606856A CN 201510989035 A CN201510989035 A CN 201510989035A CN 105606856 A CN105606856 A CN 105606856A
- Authority
- CN
- China
- Prior art keywords
- data
- global variable
- temporary
- external memory
- electric energy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R11/00—Electromechanical arrangements for measuring time integral of electric power or current, e.g. of consumption
- G01R11/02—Constructional details
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Abstract
本发明公开了一种提高电能表系统实时响应速度的方法,包括步骤:电能表在主循环中执行服务函数,首先获取需存储数据;将所述需存储数据暂存于全局变量;重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量;将所述暂存于全局变量的所有数据一次写入外部存储器;本发明还提供一种提高电能表系统实时响应速度的系统和电能表。本发明通过将每次获取的需存储数据暂存于全局变量中,而代替了需每次写入外部存储器,减少了主循环中擦写外部存储器的次数,缩短了主循环所耗时间,进而提高了电能表系统实时响应速度,减少了大数据的抄读时间,加快了抄读数据的速度,数据采集效率明显提高,可广泛应用于电能表系统。
Description
技术领域
本发明涉及电能表领域,具体为一种提高电能表系统实时响应速度的方法、系统和电能表。
背景技术
EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory),电可擦可编程只读存储器,一种掉电后数据不丢失的存储芯片。
RAM:随机存取存储器(英文:randomaccessmemory,RAM)又称作“随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。
随着智能用电快速发展的需求,电能表的功能也不仅限于电能计量,而是具有结算、冻结、事件记录、费率时段、测量监测、电压统计、负荷记录等诸多功能,而这些功能要求电能表具备大容量外部存储器用于存储大量数据,电能表上通常使用EEPROM、Flash等存储器来存储这些数据。然而,这些存储芯片的擦写周期都比较长,在电能表程序的主循环中频繁擦写存储器会严重影响电能表系统的实时响应速度。一般电能表程序,出于软件易读性和易维护性的考虑或是受限于RAM空间限制,在程序运行过程中,遇到冻结、记录事件、记录负荷曲线数据等需要大量数据存储操作的功能时,每获取一个数据(如时间、电能量、实时数据等)立即写入外部存储器中。由于冻结、事件记录、负荷曲线等记录的数据较多,完成一次这样的功能需要擦写数次外部存储器,这样,便导致主循环时间大大延长,严重影响系统的实时响应速度,;任何一个服务函数运行时间过长都会导致主循环时间延长,从而影响其他功能实现的实时性,尤其是计量、显示、通讯等功能在受其影响后使得按键显示、通讯等操作出现卡顿的情况,会大大降低用户体验。
发明内容
为了解决上述技术问题,本发明的目的是提供一种通过减少在电能表程序主循环中擦写存储器次数的方法来提高电能表系统的实时响应速度的方法、系统和电能表。
根据本发明的第一方面,本发明所采用的技术方案是:一种提高电能表系统实时响应速度的方法,包括步骤:
在主循环中执行服务函数,首先获取需存储数据;
将所述需存储数据暂存于全局变量;
重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量;
将所述暂存于全局变量的所有数据一次写入外部存储器。
作为该技术方案的改进,所述外部存储器为Flash。
作为该技术方案的改进,所述外部存储器为EEPROM。
作为该技术方案的进一步改进,在主循环中执行冻结函数,获取当前时间,并将其存储为冻结时标;
分别获取对应所述冻结时标的不同冻结数据,将其暂存于全局变量;
将所述暂存于全局变量的冻结数据一次写入外部存储器。
根据本发明的第二方面,本发明所采用的技术方案是一种提高电能表系统实时响应速度的系统,包括用于在主循环中执行服务函数,首先获取需存储数据的装置;
用于将所述需存储数据暂存于全局变量的装置;
用于重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量的装置;
用于将所述暂存于全局变量的所有数据一次写入外部存储器的装置。
根据本发明的第三方面,本发明所采用的技术方案是一种电能表,包括外部存储器和处理器,所述外部存储器,用于存放数据;所述处理器,用于执行在主循环中执行服务函数,首先获取需存储数据,将所述需存储数据暂存于全局变量,重复该步骤,将所述服务函数需存储的数据均暂存于全局变量,将所述暂存于全局变量的所有数据一次写入外部存储器。
本发明的有益效果是:本发明提供一种提高电能表系统实时响应速度的方法、系统和电能表。通过将每次获取的需存储数据暂存于全局变量中,而代替了需每次写入外部存储器,减少了主循环中擦写外部存储器的次数,缩短了主循环所耗时间,进而提高了电能表系统实时响应速度,减少了大数据的抄读时间,加快了抄读数据的速度,数据采集效率明显提高。
附图说明
下面结合附图对本发明的具体实施方式作进一步说明:
图1是现有技术电能表各服务函数数据存储的流程示意图;
图2是本发明电能表各服务函数数据存储的流程示意图;
图3是本发明一实施例的流程示意图;
图4是本发明电能表一实施例的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
参照图1,是现有技术电能表各服务函数数据存储的流程示意图。一般电能表程序,出于软件易读性和易维护性的考虑,或是受限于RAM空间限制,在程序运行过程中,遇到冻结、记录事件、记录负荷曲线数据等需要大量数据存储操作的功能时,每获取一个数据(如时间、电能量、实时数据等)立即写入外部存储器中。
参照图2,是本发明电能表各服务函数数据存储的流程示意图。一种提高电能表系统实时响应速度的方法,包括步骤:
在主循环中执行服务函数,首先获取需存储数据;
将所述需存储数据暂存于全局变量;
重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量;
将所述暂存于全局变量的所有数据一次写入外部存储器。
其中,所述外部存储器为Flash,也可以是EEPROM。
参照图3,是本发明一实施例的流程示意图。在主循环中执行冻结函数,获取当前时间,并将其存储为冻结时标;
分别获取对应所述冻结时标的不同冻结数据,将其暂存于全局变量;
将所述暂存于全局变量的冻结数据一次写入外部存储器。
具体地,电能表在主循环中执行冻结函数,首先获取当前时间;
存储冻结时标;
获取冻结数据1,将其暂存于全局变量;
获取冻结数据2,将其暂存于全局变量;
获取冻结数据3,将其暂存于全局变量;
···
获取冻结数据11,将其暂存于全局变量;
将所述暂存于全局变量的数据一次写入外部存储器。
执行一次冻结函数,需要存储12次数据。通过把每次获取的冻结数据暂存于全局变量中,在获取完所有数据后一次性写入外部存储器中,这样可以大大缩短该服务函数的运行时间。通常,RAM的读写速度可以达到几兆位/秒,换算为时间则为零点几微秒,而EEPROM的读写周期为最快5毫秒,二者相差上万倍,Flash则更慢。一次冻结需要存储的数据通常为12组数据500多字节,12组数据需要分12次获取并保存,每次耗时几十毫秒。一次性写入500多字节数据耗时也只要几十毫秒,此方法可以减少该服务函数在执行冻结时几百毫秒的运行时间,显著提高了系统的运行效率,避免了在抄读电表数据或按键时因主循环时间过长导致卡顿的情况。
而事件记录、负荷曲线等其他服务函数均可采取同样方法,可以提高整个主循环的运行效率,达到提高系统实时响应速度的目的。
根据本发明的第二实施例,本发明还提供一种提高电能表系统实时响应速度的系统,包括:
用于在主循环中执行服务函数,首先获取需存储数据的装置;
用于将所述需存储数据暂存于全局变量的装置;
用于重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量的装置;
用于将所述暂存于全局变量的所有数据一次写入外部存储器的装置。
参照图4,根据本发明的第三实施例,本发明还提供一种电能表,包括外部存储器和处理器,所述外部存储器,用于存放数据;所述处理器,用于执行在主循环中执行服务函数,首先获取需存储数据,将所述需存储数据暂存于全局变量,重复该步骤,将所述服务函数需存储的数据均暂存于全局变量,将所述暂存于全局变量的所有数据一次写入外部存储器;所述外部存储器和处理器连接。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (6)
1.一种提高电能表系统实时响应速度的方法,其特征在于:包括步骤:
在主循环中执行服务函数,首先获取需存储数据;
将所述需存储数据暂存于全局变量;
重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量;
将所述暂存于全局变量的所有数据一次写入外部存储器。
2.根据权利要求1所述的提高电能表系统实时响应速度的方法,其特征在于:所述外部存储器为Flash。
3.根据权利要求1所述的提高电能表系统实时响应速度的方法,其特征在于:所述外部存储器为EEPROM。
4.根据权利要求1~3任一项所述的提高电能表系统实时响应速度的方法,其特征在于:
在主循环中执行冻结函数,获取当前时间,并将其存储为冻结时标;
分别获取对应所述冻结时标的不同冻结数据,将其暂存于全局变量;
将所述暂存于全局变量的冻结数据一次写入外部存储器。
5.一种提高电能表系统实时响应速度的系统,其特征在于:包括
用于在主循环中执行服务函数,首先获取需存储数据的装置;
用于将所述需存储数据暂存于全局变量的装置;
用于重复以上步骤,将所述服务函数需存储的数据均暂存于全局变量的装置;
用于将所述暂存于全局变量的所有数据一次写入外部存储器的装置。
6.一种电能表,包括外部存储器和处理器,其特征在于:所述外部存储器,用于存放数据;所述处理器,用于执行在主循环中执行服务函数,首先获取需存储数据,将所述需存储数据暂存于全局变量,重复该步骤,将所述服务函数需存储的数据均暂存于全局变量,将所述暂存于全局变量的所有数据一次写入外部存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510989035.7A CN105606856A (zh) | 2015-12-21 | 2015-12-21 | 一种提高电能表系统实时响应速度的方法、系统和电能表 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510989035.7A CN105606856A (zh) | 2015-12-21 | 2015-12-21 | 一种提高电能表系统实时响应速度的方法、系统和电能表 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105606856A true CN105606856A (zh) | 2016-05-25 |
Family
ID=55986945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510989035.7A Pending CN105606856A (zh) | 2015-12-21 | 2015-12-21 | 一种提高电能表系统实时响应速度的方法、系统和电能表 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105606856A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203219A (zh) * | 2016-07-08 | 2016-12-07 | 华立科技股份有限公司 | 电能表数据交互分时工作的控制方法 |
CN106383662A (zh) * | 2016-08-30 | 2017-02-08 | 中国电力科学研究院 | 一种电能表大容量数据存储方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04311216A (ja) * | 1991-04-09 | 1992-11-04 | Toshiba Corp | 外部記憶制御装置 |
CN101561750A (zh) * | 2008-12-25 | 2009-10-21 | 上海贝岭股份有限公司 | 一种电表soc系统及其初始化方法 |
CN102063941A (zh) * | 2010-12-07 | 2011-05-18 | 中国电力科学研究院 | 一种用于延长电能表寿命的eeprom损耗均衡方法 |
CN201903569U (zh) * | 2010-08-25 | 2011-07-20 | 浙江恒业电子有限公司 | 单相远程费控智能电能表 |
CN102339254A (zh) * | 2011-06-17 | 2012-02-01 | 杭州炬华科技股份有限公司 | 用于智能电能表的flash数据存储方法 |
CN102520242A (zh) * | 2011-12-12 | 2012-06-27 | 宁夏隆基宁光仪表有限公司 | 一种电能表负荷曲线的记录方法 |
CN102591787A (zh) * | 2011-12-19 | 2012-07-18 | 北京握奇数据系统有限公司 | Java卡的数据处理方法及装置 |
CN103439554A (zh) * | 2013-09-06 | 2013-12-11 | 深圳市拓远能源科技有限公司 | 一种数据回读和存储装置及其系统 |
CN103593486A (zh) * | 2013-12-06 | 2014-02-19 | 国家电网公司 | 一种电能质量海量数据存储及读取方法 |
CN103729143A (zh) * | 2012-10-12 | 2014-04-16 | 苏州工业园区新宏博通讯科技有限公司 | 多路电表电能数据存储的数据安全方法 |
-
2015
- 2015-12-21 CN CN201510989035.7A patent/CN105606856A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04311216A (ja) * | 1991-04-09 | 1992-11-04 | Toshiba Corp | 外部記憶制御装置 |
CN101561750A (zh) * | 2008-12-25 | 2009-10-21 | 上海贝岭股份有限公司 | 一种电表soc系统及其初始化方法 |
CN201903569U (zh) * | 2010-08-25 | 2011-07-20 | 浙江恒业电子有限公司 | 单相远程费控智能电能表 |
CN102063941A (zh) * | 2010-12-07 | 2011-05-18 | 中国电力科学研究院 | 一种用于延长电能表寿命的eeprom损耗均衡方法 |
CN102339254A (zh) * | 2011-06-17 | 2012-02-01 | 杭州炬华科技股份有限公司 | 用于智能电能表的flash数据存储方法 |
CN102520242A (zh) * | 2011-12-12 | 2012-06-27 | 宁夏隆基宁光仪表有限公司 | 一种电能表负荷曲线的记录方法 |
CN102591787A (zh) * | 2011-12-19 | 2012-07-18 | 北京握奇数据系统有限公司 | Java卡的数据处理方法及装置 |
CN103729143A (zh) * | 2012-10-12 | 2014-04-16 | 苏州工业园区新宏博通讯科技有限公司 | 多路电表电能数据存储的数据安全方法 |
CN103439554A (zh) * | 2013-09-06 | 2013-12-11 | 深圳市拓远能源科技有限公司 | 一种数据回读和存储装置及其系统 |
CN103593486A (zh) * | 2013-12-06 | 2014-02-19 | 国家电网公司 | 一种电能质量海量数据存储及读取方法 |
Non-Patent Citations (1)
Title |
---|
孙鹏等: "《电力营销有问必答丛书 智能电能表》", 31 May 2012, 北京:中国电力出版社 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203219A (zh) * | 2016-07-08 | 2016-12-07 | 华立科技股份有限公司 | 电能表数据交互分时工作的控制方法 |
CN106203219B (zh) * | 2016-07-08 | 2018-11-23 | 华立科技股份有限公司 | 电能表数据交互分时工作的控制方法 |
CN106383662A (zh) * | 2016-08-30 | 2017-02-08 | 中国电力科学研究院 | 一种电能表大容量数据存储方法及装置 |
CN106383662B (zh) * | 2016-08-30 | 2020-08-21 | 中国电力科学研究院 | 一种电能表大容量数据存储方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101656106B (zh) | 一种向eeprom写入数据的方法及装置 | |
CN105469834A (zh) | 嵌入式闪存的测试方法 | |
CN103593271A (zh) | 一种片上系统芯片追踪调试的方法及装置 | |
CN105741883A (zh) | 测试方法和装置 | |
CN105097050A (zh) | 一种存储器寿命测试算法 | |
CN105606856A (zh) | 一种提高电能表系统实时响应速度的方法、系统和电能表 | |
CN104166627B (zh) | 一种基于单片机的nand‑flash写操作方法 | |
CN103389413B (zh) | 一种频谱直方图的实时统计方法 | |
CN109375146B (zh) | 一种用电数据的补采方法、系统及终端设备 | |
CN103778970A (zh) | 闪存存储器工作性能仿真方法和装置 | |
CN107506293A (zh) | 一种软件性能数据采集方法和装置 | |
CN103531248A (zh) | 一种对rram存储器脉冲参数进行测试的方法 | |
CN106653091A (zh) | 芯片抗辐射能力的评测方法、装置及芯片 | |
CN105487953A (zh) | 一种总线性能分析方法和装置 | |
CN112069004A (zh) | 一种闪存芯片中块读取与页读取换算关系测试方法及系统 | |
CN109859788B (zh) | 阻式存储器的误码率测试方法 | |
CN111611433A (zh) | 一种视频的处理方法、装置、设备及介质 | |
CN101763306A (zh) | 前端性能自动测试方法、测试装置和测试系统 | |
CN105527957B (zh) | 用于保存故障波数据的方法 | |
CN117033093A (zh) | 芯片验证装置及方法、电子设备、计算机可读存储介质 | |
CN101290621B (zh) | 安全数字卡的存储检索方法 | |
CN112511156B (zh) | 一种脉冲计量及存储方法 | |
CN115686362A (zh) | 一种智能电表的数据冻结方法 | |
CN103440186A (zh) | 测试缓存加速的方法及其系统 | |
CN103811071A (zh) | 一种高可靠性NAND Flash的读取方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160525 |