负荷曲线的补偿计算方法转让专利

申请号 : CN201711033468.0

文献号 : CN107918052B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曾志军郜波

申请人 : 威胜集团有限公司国家电网公司中国电力科学研究院

摘要 :

本发明公开了一种负荷曲线的补偿计算方法,包括记录掉电的时间点和重新上电的时间点;将掉电的时间点和换算成距离特定时间点的时间作为起始点,将重新上电的时间点换算为距离特定时间点的时间作为结束点;采用非循环计算方法计算从起始点到结束点之间需要补充的记录条数;从记录的掉电时间点开始,一次性补充得到的记录条数的数据,从而完成负荷曲线的补偿。本发明通过采用非循环计算方法来替换原循环计算方法计算需要补充的数据个数,极其化简了功能的实现,语句简洁,使用此算法功能,可以极大的提升产品性能,尤其是需要反复调用的场合;最后,本发明方法响应速度快、运算快速且满足国标要求、方法简单可靠。

权利要求 :

1.一种负荷曲线的补偿计算方法,包括如下步骤:

S1. 电能表记录掉电的时间点和重新上电的时间点;

S2. 电能表将掉电的时间点换算成距离特定时间点的时间作为起始点,同时将重新上电的时间点换算为距离特定时间点的时间作为结束点;

S3. 根据步骤S2得到的起始点和结束点,采用非循环计算方法计算从起始点到结束点之间需要补充的记录条数;具体为采用如下步骤计算记录条数:A. 判断起始点和结束点的大小,从而判断起始点和结束点是否有错误;

B. 记录第一中间变量为起始点+1,同时记录第二中间变量为结束点;

C. 记录第三中间变量为第二中间变量与第一中间变量的差值;

D. 判断负荷曲线的存储间隔周期是否为1:若负荷曲线的存储间隔周期为1,则得到最终需要补偿的记录条数为第三中间变量+1;

E. 若负荷曲线的存储间隔周期不为1,则记录第四中间变量为第三中间变量除以存储间隔周期并取整;同时记录第五中间变量为第一中间变量除以存储间隔周期并取余,记录第六中间变量为第二中间变量除以存储间隔周期并取余;

F. 判断 第五中间变量是否大于第六中间变量 或者 第五中间变量是否为0:若第五中间变量大于第六中间变量或者第五中间变量为0,则得到最终需要补偿的记录条数为第四中间变量+1,否则最终需要补偿的记录条数为第四中间变量;

S4. 从记录的掉电时间点开始,一次性补充步骤S3得到的记录条数的数据,从而完成负荷曲线的补偿。

2.根据权利要求1所述的负荷曲线的补偿计算方法,其特征在于步骤S1所述的记录时间点包括记录掉电和重新上电的年、月、日、时和分。

3.根据权利要求1所述的负荷曲线的补偿计算方法,其特征在于步骤S2所述的特定时间点为2000年1月1日0时0分。

说明书 :

负荷曲线的补偿计算方法

技术领域

[0001] 本发明具体涉及一种负荷曲线的补偿计算方法。

背景技术

[0002] 随着国家经济技术的发展和人们生活水平的提高,电能已经成为了人们日常生产和生活中必不可少的二次能源,给人们的生产和生活带来了无尽的便利。
[0003] 电能表作为电力系统中电能计量的唯一部件,其重要性不言而喻。目前,在电表(带电池供电有时钟功能)行业中,负荷曲线是一种很常用且非常重要的部分。负荷曲线的意思是电表按某一固定间隔周期(如1分钟、5分钟、10分钟等)记录电表运行过程中的电压、电流、电量等信息,将这些信息按时间顺序画成曲线。负荷曲线具有非常多的功能,包括帮助用户分析用电情况,帮助用户核查是否用户存在偷电等情况,分析电表运行状态,以及当主站系统出现异常或者疑问时,可以抄出表内的负荷曲线来进行对比分析等。所以,在现今社会日益发达的时代,负荷曲线的存储记录非常重要。
[0004] 目前,电能表是以某一固定间隔周期(如1分钟、5分钟、10分钟等)存储电压、电流、电量等数据,在停电若干时间后,再上电后,为保证负荷曲线的连贯性,需要上电后计算补偿停电的负荷曲线记录数,补偿方式为将停电区间内的所有需要记录的时间点全部补充为一个特定的值,比如0或者1等;目前的一般的计算过程如下:
[0005] 1.电表记录掉电时间,格式:年月日时分(年记录范围为00-99,如2017年1月1日10点05分,则记录为17.01.01.10:05);
[0006] 2.电表上电,获取电表时间,即掉电后重新上电的时间;
[0007] 3.将掉电时间(年月日时分)Old_Rtc_Time换算成距离2000年1月1日0时0分的分钟数(需要考虑闰年情况);
[0008] 4.将上电时间(年月日时分)New_Rtc_Time换算成距离2000年1月1日0时0分的分钟数(需要考虑闰年情况),与掉电时间的换算方法相同;
[0009] 5.以掉电时间的分钟数为起点采用步长为1来逐步比对,是否为要间隔周期补偿点数,每遇到一个间隔周期,将补偿点数加1,反复循环直到上电时间的分钟数,循环算法最终得到掉电时间至上电时间段总共要补偿的负荷曲线记录数;
[0010] 6. 负荷曲线记录数更新补偿完后,电表按补偿后的负荷曲线数继续运行。
[0011] 但是,上述的循环算法,由于采用步长为1的循环来逐步比对,耗时很长,独占MCU,速度响应慢,严重时将导致程序运行出现卡机的“假死机”现象,尤其是停电时间跨度大,非常明显。比如,假设掉电时间为17年1月1日2点18分,上电时间为17年5月20日8点08分,负荷曲线的存储周期1分钟,按以上方法可以将掉电时间为17年1月1日2点18分换算为(17*365+5+1)*24*60+2*60+18 =8943978(分钟),同理上电时间为17年5月20日8点08分换算为(17*
365+5+31+28+31+30+20)*24*60+8*60+8 =9144488(分钟),需要循环的次数为:结束点分钟数-起始点分钟数= 9144488–8943978 = 200510次。在存储间隔周期为1分钟的时候,补偿的负荷曲线的记录数等于200510条;同理假设把存储间隔周期修改为5分钟,也要循环
200510次,补偿的负荷曲线的记录数等于40102条。从需要循环次数200510次来看需要程序反复在此一直运行,非常耗时,将会出现“假死机”现象,不适应用于电表补偿计算。

发明内容

[0012] 本发明的目的在于提供一种响应速度快、运算快速且满足国标要求、方法简单可靠的负荷曲线的补偿计算方法。
[0013] 本发明提供的这种负荷曲线的补偿计算方法,包括如下步骤:
[0014] S1. 电能表记录掉电的时间点和重新上电的时间点;
[0015] S2. 电能表将掉电的时间点换算成距离特定时间点的时间作为起始点,同时将重新上电的时间点换算为距离特定时间点的时间作为结束点;
[0016] S3. 根据步骤S2得到的起始点和结束点,采用非循环计算方法计算从起始点到结束点之间需要补充的记录条数;
[0017] S4. 从记录的掉电时间点开始,一次性补充步骤S3得到的记录条数的数据,从而完成负荷曲线的补偿。
[0018] 步骤S1所述的记录时间点包括记录掉电和重新上电的年、月、日、时和分。
[0019] 步骤S2所述的特定时间点为2000年1月1日0时0分。
[0020] 步骤S3所述的采用非循环计算方法计算从起始点到结束点之间需要补充的记录条数,具体为采用如下步骤计算记录条数:
[0021] A. 判断起始点和结束点的大小,从而判断起始点和结束点是否有错误;
[0022] B. 记录第一中间变量为起始点+1,同时记录第二中间变量为结束点;
[0023] C. 记录第三中间变量为第二中间变量与第一中间变量的差值;
[0024] D. 判断负荷曲线的存储间隔周期是否为1:若负荷曲线的存储间隔周期为1,则得到最终需要补偿的记录条数为第三中间变量+1;
[0025] E. 若负荷曲线的存储间隔周期不为1,则记录第四中间变量为第三中间变量除以存储间隔周期并取整;同时记录第五中间变量为第一中间变量除以存储间隔周期并取余,记录第六中间变量为第二中间变量除以存储间隔周期并取余;
[0026] F. 判断 第五中间变量是否大于第六中间变量 或者 第五中间变量是否为0:
[0027] 若第五中间变量大于第六中间变量或者第五中间变量为0,则得到最终需要补偿的记录条数为第四中间变量+1,否则最终需要补偿的记录条数为第四中间变量。
[0028] 本发明提供的这种负荷曲线的补偿计算方法,通过采用非循环计算方法来替换原循环计算方法,有很好的通用性,可以在不同的领域中,类似的要求中参照使用,有良好的适应性;而且采用非循环算法计算需要补充的数据个数,极其化简了功能的实现,语句简洁,使用此算法功能,可以极大的提升产品性能,尤其是需要反复调用的场合;最后,本发明方法响应速度快、运算快速且满足国标要求、方法简单可靠。

附图说明

[0029] 图1为本发明方法的方法流程图。
[0030] 图2为本发明方法中的非循环算法的流程图。

具体实施方式

[0031] 如图1所示为本发明方法的方法流程图:本发明提供的这种负荷曲线的补偿计算方法,包括如下步骤:
[0032] S1. 电能表记录掉电的时间点和重新上电的时间点;记录时间点包括记录掉电和重新上电的年、月、日、时和分,比如掉电点为2017年1月1日10点05分,则记录为17.01.01.10:05;
[0033] S2. 电能表将掉电的时间点换算成距离特定时间点的时间作为起始点,同时将重新上电的时间点换算为距离特定时间点的时间作为结束点;特定时间点可以采用现有通用的时间点,即2000年1月1日0时0分;以掉电时间点距离特定时间点的分钟数作为起始点,以重新上电时间点距离特点时间点的分钟数作为结束点;
[0034] S3. 根据步骤S2得到的起始点和结束点,采用非循环计算方法计算从起始点到结束点之间需要补充的记录条数;具体为采用如下步骤计算记录条数:
[0035] A. 判断起始点和结束点的大小,从而判断起始点和结束点是否有错误;
[0036] B. 记录第一中间变量为起始点+1,同时记录第二中间变量为结束点;
[0037] C. 记录第三中间变量为第二中间变量与第一中间变量的差值;
[0038] D. 判断负荷曲线的存储间隔周期是否为1:若负荷曲线的存储间隔周期为1,则得到最终需要补偿的记录条数为第三中间变量+1;
[0039] E. 若负荷曲线的存储间隔周期不为1,则记录第四中间变量为第三中间变量除以存储间隔周期并取整;同时记录第五中间变量为第一中间变量除以存储间隔周期并取余,记录第六中间变量为第二中间变量除以存储间隔周期并取余;
[0040] F. 判断 第五中间变量是否大于第六中间变量 或者 第五中间变量是否为0:
[0041] 若第五中间变量大于第六中间变量或者第五中间变量为0,则得到最终需要补偿的记录条数为第四中间变量+1,否则最终需要补偿的记录条数为第四中间变量;
[0042] S4. 从记录的掉电时间点开始,一次性补充步骤S3得到的记录条数的数据,从而完成负荷曲线的补偿。
[0043] 从上述方法可以看出,假设掉电时间为17年1月1日2点18分,上电时间为17年5月20日8点08分,负荷曲线的存储周期1分钟,通过本发明的非循环计算方法的处理,计算的值在存储间隔周期为1分钟的时候,补偿的负荷曲线的记录数等于200510条;同理假设把存储间隔周期修改为5分钟,补偿的负荷曲线的记录数等于40102条。可以看到,本发明方法和现有技术计算得到的补充数据的条数是一致的,但是本发明方法采用非循环的计算方法,程序只需要顺序执行,无需循环,因此只需要简单的几个步骤的计算即可得出,大幅度缩短了运行时间。
[0044] 以某知名品牌的MCU主芯片,24M主频实际测试中有如下数据:
[0045] 原循环计算方法在设置跨度为8个月,需要循环次数大约为8*30*24*60=345600次,程序计算消耗时间约需要26秒,原循环计算方法在设置跨度为12个月,需要循环次数大约为365*24*60= 525600次,程序计算消耗时间约需要48秒。在采用非循环计算方法,程序计算上述时间跨度的消耗时间在2mS之内,不受时间跨度影响,能够正确计算出补偿数值,不影响程序的正常运行,解决电表在补偿负荷曲线时计算耗时长,提高了响应速度,无论时间跨度多大,不出现卡机停顿的“假死机”现象,使得MCU顺畅运行,大幅度缩短计算运行时间,效果显著。