CN112763777A - 一种智能电表的电量存储方法、装置、设备及介质 - Google Patents
一种智能电表的电量存储方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN112763777A CN112763777A CN202011584458.8A CN202011584458A CN112763777A CN 112763777 A CN112763777 A CN 112763777A CN 202011584458 A CN202011584458 A CN 202011584458A CN 112763777 A CN112763777 A CN 112763777A
- Authority
- CN
- China
- Prior art keywords
- reading
- storage
- target
- integer
- bit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000005611 electricity Effects 0.000 claims abstract description 71
- 238000004590 computer program Methods 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 5
- 230000002035 prolonged effect Effects 0.000 abstract description 4
- 238000009825 accumulation Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 12
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
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/56—Special tariff meters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请公开了一种智能电表的电量存储方法,包括:当智能电表检测到1个脉冲时,则对RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;当目标用户的当前用电量达到0.01度时,则对RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对低字节存储位上的读数清零;当用电量达到1度时,则对RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对小数存储位的读数清零;将第二目标读数和第三目标读数分别存储至小数存储区域和整数存储区域;当智能电表下电时,则将第一目标读数存储至尾数存储区域。显然,通过此种设置方式就可以显著减少EEPROM的擦写次数,由此就可以显著提高智能电表的使用寿命。
Description
技术领域
本发明涉及电力系统技术领域,特别涉及一种智能电表的电量存储方法、装置、设备及介质。
背景技术
在现有技术中,智能电表在对电量的计量过程中,一般是通过智能电表内部所设置的RAM(Random Access Memory,随机存取存储器)来对脉冲触发个数进行检测,并通过脉冲触发个数来对目标用户的用电量进行统计,然后,RAM再将计量得到的电量值逐字地更新存储到智能电表的EEPROM(Electrically Erasable Programmable Read Only Memory,带电可擦可编程只读存储器),以对目标用户的用电量进行存储。但是,由于智能电表的此种电量存储方法,需要将RAM计量得到的电量值逐字地更新存储到EEPROM中,这样就会导致EEPROM的擦写次数过多,并由此严重地影响了智能电表的使用寿命。目前,针对这一技术问题,还没有有效的解决办法。
由此可见,如何提高智能电表的使用寿命,是本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种智能电表的电量存储方法、装置、设备及介质,以提高智能电表的使用寿命。其具体方案如下:
一种智能电表的电量存储方法,包括:
当智能电表上电时,则利用所述智能电表的脉冲对目标用户的当前用电量进行计量,并利用所述智能电表的RAM对所述脉冲的触发个数进行累加;其中,所述智能电表的计电量规则根据所述智能电表的脉冲常数所设定;
当所述RAM检测到1个所述脉冲时,则对所述RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
当根据所述第一目标读数确定出所述目标用户的当前用电量达到0.01度时,则对所述RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对所述低字节存储位上的当前读数清零;
当根据所述第二目标读数确定出所述目标用户的当前用电量达到1度时,则对所述RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对所述小数存储位的当前读数清零;其中,所述低字节存储位、所述小数存储位和所述整数存储位上的初始读数均为零;
将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域;
当所述智能电表下电时,则将所述第一目标读数存储至尾数存储区域;其中,所述小数存储区域、所述整数存储区域和所述尾数存储区域为预先在所述智能电表的EEPROM中所设置的区域。
优选的,还包括:
分别将所述第一目标读数和所述第二目标读数在所述RAM中按照BCD的格式进行存储,并将所述第三目标读数在所述RAM中按照HEX的格式进行存储。
优选的,还包括:
在对所述低字节存储位和/或所述小数存储位和/或所述整数存储位上的读数进行更新时,则利用CRC对所述低字节存储位和/或所述小数存储位和/或所述整数存储位上的当前读数进行校验。
优选的,还包括:
预先在所述EEPROM中设置整数备份区域,并将所述第三目标读数存储至所述整数备份区域。
优选的,还包括:
将所述整数备份区域和所述整数存储区域设置在所述EEPROM的不同逻辑页中。
优选的,所述将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域的过程,包括:
按照预设规则将所述整数存储区域划分为不同的逻辑地址,并利用目标指针将所述第三目标读数存储至目标逻辑地址,以将所述第三目标读数存储至所述整数存储区域。
优选的,还包括:
判断所述脉冲在预设时间内的触发个数是否在预设范围之内;
若否,则判定所述智能电表出现异常,并提示预警信息。
相应的,本发明还公开了一种智能电表的电量存储装置,包括:
电量计量模块,用于当智能电表上电时,则利用所述智能电表的脉冲对目标用户的当前用电量进行计量,并利用所述智能电表的RAM对所述脉冲的触发个数进行累加;其中,所述智能电表的计电量规则根据所述智能电表的脉冲常数所设定;
第一更新模块,用于当所述RAM检测到1个所述脉冲时,则对所述RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
第二更新模块,用于当根据所述第一目标读数确定出所述目标用户的当前用电量达到0.01度时,则对所述RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对所述低字节存储位上的当前读数清零;
第三更新模块,用于当根据所述第二目标读数确定出所述目标用户的当前用电量达到1度时,则对所述RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对所述小数存储位的当前读数清零;其中,所述低字节存储位、所述小数存储位和所述整数存储位上的初始读数均为零;
数据存储模块,用于将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域;
下电存储模块,用于当所述智能电表下电时,则将所述第一目标读数存储至尾数存储区域;其中,所述小数存储区域、所述整数存储区域和所述尾数存储区域为预先在所述智能电表的EEPROM中所设置的区域。
相应的,本发明还公开了一种智能电表的电量存储设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前述所公开的一种智能电表的电量存储方法的步骤。
相应的,本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前述所公开的一种智能电表的电量存储方法的步骤。
可见,在本发明所提供的智能电表的电量存储方法中,是预先在智能电表的EEPROM中设置尾数存储区域、小数存储区域和整数存储区域,并利用智能电表内RAM中的低字节存储位、小数存储位和整数存储位对目标用户的用电量进行统计,然后,再将低字节存储位、小数存储位和整数存储位上的目标读数对应存储到EEPROM的尾数存储区域、小数存储区域和整数存储区域上,这样就相当于是对智能电表的整数电量部分、小数电量部分和脉冲尾数电量部分进行了分别存储。显然,相比于现有技术中需要将RAM计量得到的电量值逐字地更新存储到EEPROM中的方法而言,通过此种设置方式就可以显著减少EEPROM的擦写次数,由此就可以显著提高智能电表的使用寿命。相应的,本发明所提供的一种智能电表的电量存储装置、设备及介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例所提供的一种智能电表的电量存储方法的流程图;
图2为本发明实施例所提供的在存储正向有功总电量和反向有功总电量时的数据存储示意图;
图3为本发明实施例所提供的备份存储区域的示意图;
图4为存储正向有功总电量所对应的正向指针和存储反向有功总电量所对应的反向指针时的示意图;
图5为本发明实施例所提供的一种对智能电表所存储的用电量进行恢复时的示意图;
图6为本发明实施例所提供的一种智能电表的电量存储装置的结构图;
图7为本发明实施例所提供的一种智能电表的电量存储设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1为本发明实施例所提供的一种智能电表的电量存储方法的流程图,该电量存储方法包括:
步骤S11:当智能电表上电时,则利用智能电表的脉冲对目标用户的当前用电量进行计量,并利用智能电表的RAM对脉冲的触发个数进行累加;
其中,智能电表的计电量规则根据智能电表的脉冲常数所设定;
步骤S12:当RAM检测到1个脉冲时,则对RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
步骤S13:当根据第一目标读数确定出目标用户的当前用电量达到0.01度时,则对RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对低字节存储位上的当前读数清零;
步骤S14:当根据第二目标读数确定出目标用户的当前用电量达到1度时,则对RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对小数存储位的当前读数清零;
其中,低字节存储位、小数存储位和整数存储位上的初始读数均为零;
步骤S15:将第二目标读数和第三目标读数分别存储至小数存储区域和整数存储区域;
步骤S16:当智能电表下电时,则将第一目标读数存储至尾数存储区域;
其中,小数存储区域、整数存储区域和尾数存储区域为预先在智能电表的EEPROM中所设置的区域。
在本实施例中,是提供了一种智能电表的电量存储方法,通过该电量存储方法可以显著提高智能电表的使用寿命。在该电量存储方法中,首先是预先在智能电表的EEPROM中设置三个存储区域,也即,尾数存储区域、小数存储区域和整数存储区域,并在智能电表的RAM中设置低字节存储位、小数存储位和整数存储位。其中,RAM中的低字节存储位用于对智能电表的脉冲触发个数进行统计与计量,小数存储位用于对智能电表累加得到的小数电量进行统计与计量,整数存储位用于对智能电表累加得到的整数电量进行统计与计量。并且,RAM中的低字节存储位、小数存储位和整数存储位的初始读数均为零。
需要说明的是,在本实施例中,智能电表所输出的脉冲是智能电表对目标用户的用电量进行计量时的最小单位。并且,智能电表的计电量规则会根据智能电表的脉冲常数所设定。也即,假设智能电表的脉冲常数为1000,那么,智能电表计量1度电就会输出1000个脉冲。基于此设置原理,当智能电表输出100个脉冲时,智能电表就会计量得到0.01度电。
当需要利用智能电表对目标用户的用电量进行计量时,首先是对智能电表上电,并利用智能电表的脉冲对目标用户的当前用电量进行计量,同时利用智能电表的RAM对脉冲的触发个数进行累加。
具体的,当智能电表的RAM检测到1个脉冲时,就会在智能电表RAM中的低字节存储位上累加更新,得到第一目标读数;当根据低字节存储位上的第一目标读数确定出目标用户的当前用电量达到0.01度电时,则对RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对低字节存储位上的当前读数清零;当根据小数存储位上的第二目标读数确定出目标用户的当前用电量达到1度电时,则对RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对小数存储位上的当前读数清零。
也即,当智能电表的上电初始,RAM中的低字节存储位、小数存储位和整数存储位的初始读数均为零时,当RAM检测到1个脉冲时,则对会RAM的低字节存储位上的读数进行累加更新,得到读数1,当RAM再检测到1个脉冲时,低字节存储位上的读数就会跳变2,当RAM再检测到1个脉冲时,低字节存储位上的读数就会跳变3,依次类推,当低字节存储位上的读数为99时,当RAM再检测到1个脉冲,就说明目标用户的当前用电量已经达到了0.01度。在此情况下,RAM的小数存储位上的读数就会跳变为1,同时,低字节存储位上的当前读数就会清零。
当RAM低字节存储位上的读数被清零之后,RAM还会继续对智能电表所输出的脉冲进行检测与累加,当RAM小数存储位上的读数为99时,那么,智能电表的电量读数再增加0.01度电,RAM中整数存储位上的读数就会跳变为1,同时小数存储位上的当前读数就会清零,并会继续对低字节存储位上的读数进行累加。也就是说,当RAM中整数存储位上的读数为1时,则说明智能电表已经走了1度电。
在RAM通过低字节存储位、小数存储位和整数存储位对目标用户的用电量进行计量与统计的同时,智能电表会同时将小数存储位上的第二目标读数和整数存储位上的第三目标读数分别存储至EEPROM的小数存储区域和整数存储区域,以对智能电表的用电量进行存储。
需要说明的是,在实际应用中,智能电表可以按照预设周期来将RAM中小数存储位上的第二目标读数和整数存储位上的第三目标读数分别存储至EEPROM的小数存储区域和整数存储区域。具体的,可以将预设周期设置为10min。并且,在本实施例中,考虑到智能电表中EEPROM擦写次数的限制,只是在智能电表下电时,才会将RAM低字节存储位上的第一目标读数存储至EEPROM的尾数存储区域。
另外,在实际应用中,还可以将RAM中低字节存储位、小数存储位和整数存储位上所存储的数据存储到其它的存储模块中,以方便智能电表对于其它功能函数的调用。比如:智能电表的冻结、电费结算等等。
能够想到的是,当RAM将第一目标读数、第二目标读数和第三目标读数分别存储至EEPROM的尾数存储区域、小数存储区域和整数存储区域时,就相当于是对智能电表的整数电量部分、小数电量部分和脉冲尾数电量部分进行了分别存储,在此情况下,工作人员通过读取EEPROM中尾数存储区域、小数存储区域和整数存储区域的读数,就可以获取得到智能电表计量得到目标用户的用电量使用情况。显然,相比于现有技术中需要将RAM计量得到的电量值逐字地更新存储到EEPROM中的方法而言,通过此种设置方式就可以显著减少EEPROM的擦写次数,由此就可以显著提高智能电表的使用寿命。
可见,在本实施例所提供的智能电表的电量存储方法中,是预先在智能电表的EEPROM中设置尾数存储区域、小数存储区域和整数存储区域,并利用智能电表内RAM中的低字节存储位、小数存储位和整数存储位对目标用户的用电量进行统计,然后,再将低字节存储位、小数存储位和整数存储位上的目标读数对应存储到EEPROM的尾数存储区域、小数存储区域和整数存储区域上,这样就相当于是对智能电表的整数电量部分、小数电量部分和脉冲尾数电量部分进行了分别存储。显然,相比于现有技术中需要将RAM计量得到的电量值逐字地更新存储到EEPROM中的方法而言,通过此种设置方式就可以显著减少EEPROM的擦写次数,由此就可以显著提高智能电表的使用寿命。
基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述智能电表的电量存储方法还包括:
分别将第一目标读数和第二目标读数在RAM中按照BCD的格式进行存储,并将第三目标读数在RAM中按照HEX的格式进行存储。
在本实施例中,在对第一目标读数、第二目标读数和第三目标读数进行存储时,可以将第一目标读数和第二目标读数按照BCD(Binary Coded Decimal,二进制)的格式进行存储,并将第三目标读数在RAM中按照HEX(Hexadecimal,十六进制)的格式进行存储。
具体的,低字节存储位和小数存储位上的读数以1个字节的BCD格式进行存储,而整数存储位上的读数以3个字节的HEX格式进行存储。那么,在此情况下,RAM所能存储的最大用电量就为16777215(FFFFFF)。当然,在实际应用中,还可以对低字节存储位、小数存储位和整数存储位上读数的存储格式进行适应性的调整,此处不作具体限定。
基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述智能电表的电量存储方法还包括:
在对低字节存储位和/或小数存储位和/或整数存储位上的读数进行更新时,则利用CRC对低字节存储位和/或小数存储位和/或整数存储位上的当前读数进行校验。
在本实施例中,RAM在对低字节存储位和/或小数存储位和/或整数存储位上的读数进行更新时,还可以利用CRC(Cyclic Redundancy Check,循环冗余校验)来对低字节存储位和/或小数存储位和/或整数存储位上的当前读数进行校验。
也即,当RAM中低字节存储位和/或小数存储位和/或整数存储位上的当前读数通过CRC的校验时,则说明低字节存储位和/或小数存储位和/或整数存储位上的当前读数为准确值,此时,RAM再对低字节存储位和/或小数存储位和/或整数存储位上的当前读数进行更新;如果RAM中低字节存储位和/或小数存储位和/或整数存储位上的当前读数没有通过CRC的校验时,则说明低字节存储位和/或小数存储位和/或整数存储位上的当前读数发生了错误或异常,此时,为了保证智能电表存储电量的准确性,就可以将低字节存储位和/或小数存储位和/或整数存储位上的当前读数丢弃。
显然,通过本实施例所提供的技术方案,就可以进一步保证智能电表在对目标用户用电量进行计量与统计时的准确性与可靠性。
基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述智能电表的电量存储方法还包括:
预先在EEPROM中设置整数备份区域,并将第三目标读数存储至整数备份区域。
在实际应用中,还可以预先在EEPROM中设置整数备份区域,并将RAM中整数存储位上的第三目标读数存储至整数备份区域中。能够想到的是,通过这样的设置方式,即使是在EEPROM整数存储区域的数据发生丢失的情况下,也可以利用EEPROM中备份存储区域所存储的数据来对智能电表的用电量进行恢复,由此就可以保证智能电表的计电量在存储过程中的安全性。
作为一种优选的实施方式,上述智能电表的电量存储方法还包括:
将整数备份区域和整数存储区域设置在EEPROM的不同逻辑页中。
具体的,还可以将整数备份区域和整数存储区域设置在EEPROM的不同逻辑页中。能够想到的是,通过这样的设置方式,就可以在EEPROM中的一个逻辑页发生损坏时,智能电表的整数电量部分还可以有不同的备份,由此就可以进一步提高智能电表的计电量在存储过程中的可靠性。
基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述步骤:将第二目标读数和第三目标读数分别存储至小数存储区域和整数存储区域的过程,包括:
按照预设规则将整数存储区域划分为不同的逻辑地址,并利用目标指针将第三目标读数存储至目标逻辑地址,以将第三目标读数存储至整数存储区域。
在本实施例中,是提供了一种对第三目标读数进行存储的具体实现方法,也即,在将第三目标读数存储至整数存储区域的过程中,首先是预先按照预设规则将EEPROM中的整数存储区域划分为不同的逻辑地址,然后,再通过目标指针来将第三目标读数存储至目标逻辑地址,并以此来将第三目标读数存储至EEPROM的整数存储区域。
具体的,假设表1为需要存储智能电表计量得到整数电量的数据列表。其中,表1中的费率1、费率2、费率3和费率4可以通过不同的逻辑地址来体现,并且,表1中13组数据的关系为:
有功总电量=正向有功总电量+反向有功总电量;
正向有功总电量=正向有功尖电量(费率1)+正向有功峰电量(费率2)+正向有功平电量(费率3)+正向有功谷电量(费率4);
反向有功总电量=反向有功尖电量(费率1)+反向有功峰电量(费率2)+反向有功平电量(费率3)+反向有功谷电量(费率4);
表1
数据字节数 | 数据类型 | 数据格式 | 数据含义 |
5 | HEX | XXXXXX.XXXX | 有功总电量 |
5 | HEX | XXXXXX.XXXX | 正向有功总电量 |
5 | HEX | XXXXXX.XXXX | 正向有功尖电量(费率1) |
5 | HEX | XXXXXX.XXXX | 正向有功峰电量(费率2) |
5 | HEX | XXXXXX.XXXX | 正向有功平电量(费率3) |
5 | HEX | XXXXXX.XXXX | 正向有功谷电量(费率4) |
2 | HEX | XXXX | 正向有功电量校验 |
5 | HEX | XXXXXX.XXXX | 反向有功总电量 |
5 | HEX | XXXXXX.XXXX | 反向有功尖电量(费率1) |
5 | HEX | XXXXXX.XXXX | 反向有功峰电量(费率2) |
5 | HEX | XXXXXX.XXXX | 反向有功平电量(费率3) |
5 | HEX | XXXXXX.XXXX | 反向有功谷电量(费率4) |
2 | HEX | XXXX | 反向有功电量校验 |
在本实施例中,智能电表中的EEPROM会保存计电量的整数部分和小数部分。其中,EEPROM在对智能电表的计电量进行存储的过程中,EEPROM会以3字节的HEX格式来对计电量的整数部分进行存储,并以1字节的BCD格式来对计电量的小数部分进行存储。
假设智能电表能够工作10年,那么,智能电表需要保存的电量度数为:220×100×24×365×10/1000=1927200kWh(度),如果智能电表最多需要存储200万度电,而每1度电需要写1次EEPROM,按照4个费率电量和总电量一起校验,则需要在EEPROM中写400万次。鉴于此种情况,可以预先在EEPROM中划分4个逻辑地址,其中,每个逻辑地址可以写100万次。加上每块逻辑地址有1个存储备份区,那么,就需要在EEPROM中划分8个逻辑地址。
假设正向有功总电量、正向反向有功总电量、正向有功电量中的每一个费率电量和反向有功电量中的每一个费率电量各占用3个字节,以及对有功总电量和反向有功总电量进行整体校验的校验码占用2个字节,那么,在EEPROM中就需要占用17个字节。具体请参见图2和图3,图2为本发明实施例所提供的在存储正向有功总电量和反向有功总电量时的数据存储示意图,图3为本发明实施例所提供的备份存储区域的示意图。
此时,再对EEPROM中存储整数电量的寻址过程作介绍。可以理解的是,因为在EEPROM中的每一个逻辑地址中,每1万度电需要更换一次EEPROM地址,所以,在保存整数电量读数的过程中,可以先用智能电表的整数电量除以1万作为电量整数部分保存地址的指针。并且,在更换指针时需要将指针保存到EEPROM中。具体的,在本实施例中,正向有功电量占用1个指针,反向有功电量占用1个指针,假设1个指针占用2个字节,1个指针的校验码占用2个字节,那么,就需要在EEPROM中占用8个字节。具体请参见图4,图4为存储正向有功总电量所对应的正向指针和存储反向有功总电量所对应的反向指针时的示意图。
此外,EEPROM中存储小数电量的存储机制与存储整数电量的存储机制相类似。也即,如果智能电表能够保存200万度电,那么,EEPROM中的小数存储区域就需要写100*200万次,如果每个地址可以写100万次,则需要更换200次地址。假设智能电表的小数电量部分需要占用10个字节,那么,小数电量的存储就需要占用200*10=2000字节。
基于此小数电量的存储机制,此处再对EEPROM中小数电量的寻址方式进行具体说明。假设EEPROM中的小数存储区域被划分为200个逻辑块,而每100度电需要更换1次EEPROM地址。在此情况下,就可以利用智能电表的当前电量的整数部分除以100后,再对200取余数,来将获取得到的数值作为电量小数部分存储地址的指针。
需要注意的是,在本实施例中,用于存储小数电量部分的指针不用存储,因为电量的整数部分是已知的,通过计算即可以获取得到用户存储小数电量所对应指针的地址。显然,通过此种设置方式,就可以进一步提高EEPROM存储空间的利用率。
基于上述实施例,本实施例对技术方案作进一步的说明与优化,作为一种优选的实施方式,上述电量存储方法还包括:
判断脉冲在预设时间内的触发个数是否在预设范围之内;
若否,则判定智能电表出现异常,并提示预警信息。
可以理解的是,在实际应用中,智能电表如果处于正常运行状态,那么,智能电表在预设时间内所输出的脉冲必定在预设范围之内,如果智能电表处于异常状态或故障状态,那么智能电表在预设时间内所输出的脉冲就会超出或低于预设范围。因此,在本实施例中,基于智能电表的这一运行机制,就可以利用智能电表在预设时间内所输出的脉冲个数来判断智能电表是否处于正常运行状态。
具体的,假设智能电表的单位为1200imp/kWh,并按照200A、220V走字,那么,智能电表应该会在每秒钟输出15个脉冲,但是,在实际应用中,如果智能电表在每秒钟所检测到的脉冲个数达到了40个,则说明智能电表的当前计电量出现了异常或飞走。在此情况下,为了避免目标用户遭受更大的经济损失,则可以不对智能电表所计量得到的用电量进行累计,并同时提示预警信息,以提示维修人员对智能电表进行维修或更换。
显然,通过本实施例所提供的技术方案,就可以进一步提高用户在使用该智能电表时的用户体验。
为了使得本领域技术人员能够更为清楚、明白本发明的实现原理,本实施例还公开了一种与上述公开智能电表的电量存储方法相对应的电量读取方法。请参见图5,图5为本发明实施例所提供的一种对智能电表所存储的用电量进行恢复时的示意图。
在读取智能电表存储用电量的过程中,首先是从智能电表的EEPROM中取出用于存储智能电表整数电量部分的整数指针,并根据整数指针来读取智能电表中所存储的整数电量;然后,再对读取到的整数电量进行校验,如果校验通过,则从EEPROM中取出用于存储智能电表小数电量部分的地址,并根据小数电量部分所对应的地址来计算智能电表EEPROM中所存储小数电量,之后,再读取EEEPROM内尾数存储区域所存储的尾数电量。同时,再从EEPROM中取出智能电表的备份电量数据,并对备份电量数据进行校验,如果备份电量数据校验不成功,则丢弃备份电量数据。其中,备份电量数据的地址中包含有电量数据所对应的金额。
如果备份电量数据校验成功,则读取智能电表的金额上电已读标志,如果金额上电已读标志已读,则将EEPROM中所存储的小数电量丢弃,如果金额上电已读标志未读,则取出掉电备份电量数据,并对其进行校验,如果校验不通过,则丢弃。如果校验通过,则读取智能电表EEPROM中所存储小数电量和尾数电量,并对小数电量和尾数电量进行校验,如果校验不通过,则丢弃小数电量部分和尾数电量,如果通过校验,则比较备份电量数据、掉电备份电量数据、以及整数电量部分的已扣费金额值,并将最大的金额值最为有效值,最后,再对智能电表中的RAM进行更新,结束流程。
显然,通过该方法就可以读取出智能电表中所存储的电量,并且,通过对智能电表中所存储的用电量数据分为整数部分、小数部分和尾数部分三部分进行处理时,还可以显著提高智能电表在读取电量过程中的可靠性与准确性。
请参见图6,图6为本发明实施例所提供的一种智能电表的电量存储装置的结构图,该电量存储装置包括:
电量计量模块21,用于当智能电表上电时,则利用智能电表的脉冲对目标用户的当前用电量进行计量,并利用智能电表的RAM对脉冲的触发个数进行累加;其中,智能电表的计电量规则根据智能电表的脉冲常数所设定;
第一更新模块22,用于当RAM检测到1个脉冲时,则对RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
第二更新模块23,用于当根据第一目标读数确定出目标用户的当前用电量达到0.01度时,则对RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对低字节存储位上的当前读数清零;
第三更新模块24,用于当根据第二目标读数确定出目标用户的当前用电量达到1度时,则对RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对小数存储位的当前读数清零;其中,低字节存储位、小数存储位和整数存储位上的初始读数均为零;
数据存储模块25,用于将第二目标读数和第三目标读数分别存储至小数存储区域和整数存储区域;
下电存储模块26,用于当智能电表下电时,则将第一目标读数存储至尾数存储区域;其中,小数存储区域、整数存储区域和尾数存储区域为预先在智能电表的EEPROM中所设置的区域。
本发明实施例所提供的一种智能电表的电量存储装置,具有前述所公开的一种智能电表的电量存储方法所具有的有益效果。
请参见图7,图7为本发明实施例所提供的一种智能电表的电量存储设备的结构图,该电量存储设备包括:
存储器31,用于存储计算机程序;
处理器32,用于执行计算机程序时实现如前述所公开的一种智能电表的电量存储方法的步骤。
本发明实施例所提供的一种智能电表的电量存储设备,具有前述所公开的一种智能电表的电量存储方法所具有的有益效果。
相应的,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如前述所公开的一种智能电表的电量存储方法的步骤。
本发明实施例所提供的一种计算机可读存储介质,具有前述所公开的一种智能电表的电量存储方法所具有的有益效果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种智能电表的电量存储方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种智能电表的电量存储方法,其特征在于,包括:
当智能电表上电时,则利用所述智能电表的脉冲对目标用户的当前用电量进行计量,并利用所述智能电表的RAM对所述脉冲的触发个数进行累加;其中,所述智能电表的计电量规则根据所述智能电表的脉冲常数所设定;
当所述RAM检测到1个所述脉冲时,则对所述RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
当根据所述第一目标读数确定出所述目标用户的当前用电量达到0.01度时,则对所述RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对所述低字节存储位上的当前读数清零;
当根据所述第二目标读数确定出所述目标用户的当前用电量达到1度时,则对所述RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对所述小数存储位的当前读数清零;其中,所述低字节存储位、所述小数存储位和所述整数存储位上的初始读数均为零;
将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域;
当所述智能电表下电时,则将所述第一目标读数存储至尾数存储区域;其中,所述小数存储区域、所述整数存储区域和所述尾数存储区域为预先在所述智能电表的EEPROM中所设置的区域。
2.根据权利要求1所述的电量存储方法,其特征在于,还包括:
分别将所述第一目标读数和所述第二目标读数在所述RAM中按照BCD的格式进行存储,并将所述第三目标读数在所述RAM中按照HEX的格式进行存储。
3.根据权利要求1所述的电量存储方法,其特征在于,还包括:
在对所述低字节存储位和/或所述小数存储位和/或所述整数存储位上的读数进行更新时,则利用CRC对所述低字节存储位和/或所述小数存储位和/或所述整数存储位上的当前读数进行校验。
4.根据权利要求1所述的电量存储方法,其特征在于,还包括:
预先在所述EEPROM中设置整数备份区域,并将所述第三目标读数存储至所述整数备份区域。
5.根据权利要求4所述的电量存储方法,其特征在于,还包括:
将所述整数备份区域和所述整数存储区域设置在所述EEPROM的不同逻辑页中。
6.根据权利要求1所述的电量存储方法,其特征在于,所述将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域的过程,包括:
按照预设规则将所述整数存储区域划分为不同的逻辑地址,并利用目标指针将所述第三目标读数存储至目标逻辑地址,以将所述第三目标读数存储至所述整数存储区域。
7.根据权利要求1至6任一项所述的电量存储方法,其特征在于,还包括:
判断所述脉冲在预设时间内的触发个数是否在预设范围之内;
若否,则判定所述智能电表出现异常,并提示预警信息。
8.一种智能电表的电量存储装置,其特征在于,包括:
电量计量模块,用于当智能电表上电时,则利用所述智能电表的脉冲对目标用户的当前用电量进行计量,并利用所述智能电表的RAM对所述脉冲的触发个数进行累加;其中,所述智能电表的计电量规则根据所述智能电表的脉冲常数所设定;
第一更新模块,用于当所述RAM检测到1个所述脉冲时,则对所述RAM的低字节存储位上的读数进行累加更新,得到第一目标读数;
第二更新模块,用于当根据所述第一目标读数确定出所述目标用户的当前用电量达到0.01度时,则对所述RAM的小数存储位上的读数进行累加更新,得到第二目标读数,并对所述低字节存储位上的当前读数清零;
第三更新模块,用于当根据所述第二目标读数确定出所述目标用户的当前用电量达到1度时,则对所述RAM的整数存储位上的读数进行累加更新,得到第三目标读数,并对所述小数存储位的当前读数清零;其中,所述低字节存储位、所述小数存储位和所述整数存储位上的初始读数均为零;
数据存储模块,用于将所述第二目标读数和所述第三目标读数分别存储至小数存储区域和整数存储区域;
下电存储模块,用于当所述智能电表下电时,则将所述第一目标读数存储至尾数存储区域;其中,所述小数存储区域、所述整数存储区域和所述尾数存储区域为预先在所述智能电表的EEPROM中所设置的区域。
9.一种智能电表的电量存储设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的一种智能电表的电量存储方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的一种智能电表的电量存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584458.8A CN112763777A (zh) | 2020-12-28 | 2020-12-28 | 一种智能电表的电量存储方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584458.8A CN112763777A (zh) | 2020-12-28 | 2020-12-28 | 一种智能电表的电量存储方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112763777A true CN112763777A (zh) | 2021-05-07 |
Family
ID=75696567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011584458.8A Pending CN112763777A (zh) | 2020-12-28 | 2020-12-28 | 一种智能电表的电量存储方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112763777A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113884976A (zh) * | 2021-11-25 | 2022-01-04 | 安徽南瑞中天电力电子有限公司 | 一种基于云平台的智能电表数据保护方法、系统 |
CN114047380A (zh) * | 2022-01-12 | 2022-02-15 | 华立科技股份有限公司 | 电能计量方法、装置及电能表 |
CN114115736A (zh) * | 2021-11-22 | 2022-03-01 | 北京煜邦电力技术股份有限公司 | 电量数据处理方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102692536A (zh) * | 2011-03-21 | 2012-09-26 | 北京华煜宏博科技有限公司 | 阶段式计费的电表装置 |
CN103487619A (zh) * | 2013-07-16 | 2014-01-01 | 深圳市航天泰瑞捷电子有限公司 | 电能数据存储方法 |
CN107544914A (zh) * | 2017-09-06 | 2018-01-05 | 华立科技股份有限公司 | 电量分块存储方法和系统 |
CN108052456A (zh) * | 2017-12-28 | 2018-05-18 | 杭州万高科技股份有限公司 | 一种电量数据存储方法、系统及一种电量数据存储设备 |
-
2020
- 2020-12-28 CN CN202011584458.8A patent/CN112763777A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102692536A (zh) * | 2011-03-21 | 2012-09-26 | 北京华煜宏博科技有限公司 | 阶段式计费的电表装置 |
CN103487619A (zh) * | 2013-07-16 | 2014-01-01 | 深圳市航天泰瑞捷电子有限公司 | 电能数据存储方法 |
CN107544914A (zh) * | 2017-09-06 | 2018-01-05 | 华立科技股份有限公司 | 电量分块存储方法和系统 |
CN108052456A (zh) * | 2017-12-28 | 2018-05-18 | 杭州万高科技股份有限公司 | 一种电量数据存储方法、系统及一种电量数据存储设备 |
Non-Patent Citations (1)
Title |
---|
方辉云等, 华中科技大学出版社 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115736A (zh) * | 2021-11-22 | 2022-03-01 | 北京煜邦电力技术股份有限公司 | 电量数据处理方法、装置、设备及介质 |
CN114115736B (zh) * | 2021-11-22 | 2024-03-19 | 北京煜邦电力技术股份有限公司 | 电量数据处理方法、装置、设备及介质 |
CN113884976A (zh) * | 2021-11-25 | 2022-01-04 | 安徽南瑞中天电力电子有限公司 | 一种基于云平台的智能电表数据保护方法、系统 |
CN113884976B (zh) * | 2021-11-25 | 2022-10-14 | 安徽南瑞中天电力电子有限公司 | 一种基于云平台的智能电表数据保护方法、系统 |
CN114047380A (zh) * | 2022-01-12 | 2022-02-15 | 华立科技股份有限公司 | 电能计量方法、装置及电能表 |
CN114047380B (zh) * | 2022-01-12 | 2022-04-15 | 华立科技股份有限公司 | 电能计量方法、装置及电能表 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112763777A (zh) | 一种智能电表的电量存储方法、装置、设备及介质 | |
US7269522B2 (en) | Firmware power cycle routine | |
CN105334383B (zh) | 一种电能表的电量数据存储方法 | |
CN102680897B (zh) | 电池电量管理方法和装置 | |
US8244642B2 (en) | System and method for storing metering data while increasing memory endurance | |
US20120206107A1 (en) | Protection module and method for managing status data of the protection module | |
CN101923112A (zh) | 电能计量数据高可靠性管理方法 | |
US6433513B1 (en) | Method, apparatus and computer readable recorded medium for secondary battery life evaluation | |
CN103809147A (zh) | 一种交流电表故障自诊断方法 | |
CN109470918B (zh) | Ir46电能表的电量数据处理方法和ir46电能表 | |
CN106443171B (zh) | 一种用电设备掉电时电力总线数据的计量系统和计量方法 | |
US11656257B2 (en) | Systems and methods for PLP capacitor health check | |
CN203503062U (zh) | 一种电能表 | |
CN205139344U (zh) | 电量显示装置及电子设备 | |
CN108052456B (zh) | 一种电量数据存储方法、系统及一种电量数据存储设备 | |
CN111273181A (zh) | 电池备电单元监测方法、装置、服务器及可读存储介质 | |
CN111239494A (zh) | 一种在线测量电子雷管通讯母线电阻值的方法及系统 | |
CN112416246B (zh) | 一种高分辨率的存储电能数据的方法 | |
CN112748271B (zh) | 一种电能表及该电能表的电量计量方法 | |
CN110824401A (zh) | Bbu电量计的可信度监测方法、系统、设备及存储介质 | |
US20230128424A1 (en) | Method and apparatus for measuring remaining power level of device | |
CN113884976B (zh) | 一种基于云平台的智能电表数据保护方法、系统 | |
CN113267673A (zh) | 一种解决电子式电能表电量丢失的有效方法 | |
CN109582230B (zh) | 一种基于矩阵式索引的数据存取方法及存取系统 | |
CN112198349A (zh) | 电表 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210507 |
|
RJ01 | Rejection of invention patent application after publication |