技术领域
[0001] 本
发明属于电能质量监测数据技术,特别涉及一种电能质量稳态指标计算方法。
背景技术
[0002] 电能质量稳态指标包括
电压偏差、
频率偏差、电压谐波含有率、
电流谐波含量等一百多个通道,是电能质量的重要衡量指标。根据相关电能质量国标要求,在分析稳态指标时一般要统计各通道的最大值、99概率大值、95概率大值,统计时间段通常包括日、周、月、季、年等,每个通道包括A、B、C或AB、BC、CA三相。每个通道每日的
采样点数由监测装置的采样间隔决定,采样间隔通常在3秒到5分钟之间,对应采样点数为288到28800。一个省级电能质量
监控系统目前一般有几百个监测点,且近几年在迅速增加,根据规划,未来省级系统应支持三千五百个以上监测点。
[0003] 由于数据量庞大,稳态指标计算非常耗时。如何提高稳态指标的计算效率成为电能质量监测分析系统的关键工作。稳态指标主要是计算95概率大值和99概率大值,计算时间主要取决于排序时间。常见的较快的排序
算法有快速排序、堆排序和k路归并排序等。当采样间隔为3秒时,k路归并排序算法计算一个监测点的所有月稳态指标约需8分钟31秒,年稳态指标约需1小时25分钟。当系统中有3000个监测点时,计算月指标约需17天零17小时,计算年指标约需175天,这还未包括数据的读取和存储时间,其性能显然不能满足要求。
发明内容
[0004] 针对电能质量稳态指标计算缓慢的问题,本发明提出一种电能质量稳态指标计算方法,其特征在于,该方法的步骤为:
[0005] 步骤1:读取k日的采样数据,将每一日的采样数据从大到小排序,将第i日采样数据排序后的前Mi个采样数据存储为数组Si;其中,Mi=Ni×X%+1,X大于等于5,i=1,2,、、、,k,Ni表示第i日采样数据的个数;
[0006] 步骤2:将k组数组Si中的采样数据从大到小进行合并排序并存储在数组T中,令cp95’=T[I95],cp99’=T[I99],其中,T[I95]和T[I99]分别为数组T中的第I95和I99个值,
[0007] 步骤3:令i等于1;
[0008] 步骤4:取第i个数组Si的最小值Smi;
[0009] 步骤5:当i小于k时,执行步骤6;当i大于等于k时,执行步骤7;
[0010] 步骤6:将Smi与cp95’作比较,若Smi小于等于cp95’,令i加1,返回步骤4;若Smi大于cp95’,将i存入数组R中,令i加1,返回步骤4;
[0011] 步骤7:根据数组R中存入的i值,读取相应的采样数据并从大到小排序,取第Mi个值之后大于cp95’的采样数据存入数组Li中,把所有Li中的采样数据和T合并后按从大到小的顺序排序形成数组T’,令cp95’=T’[I′95],cp99’=T’[I′99],其中,T’[I′95]和T’[I′99]分别为数组T’中的第I′95个值和I′99个值,I′95=TN×5%+1,I′99=TN×1%+1,TN为数组T’中采样数据的个数;
[0012] 步骤8:输出95概率大值CP95为cp95’,输出99概率大值CP99为cp99’。
[0013] 发明的有益效果:本发明既能快速高效的计算电能质量稳态指标,又不需要太多额外存储空间,解决了电能质量监测分析系统中的关键问题,为电能质量系统稳定运行提供系统性能层面
支撑和保证。
附图说明
[0014] 图1为本发明提出的电能质量稳态指标计算方法
流程图;
[0015] 图2为X取7时,用不同方法计算周、月、季和年指标所用时间对比图。
具体实施方式
[0016] 下面结合附图对本发明方法作进一步的说明。
[0017] 如图1所示为本发明提出的电能质量稳态指标计算方法流程图,具体为:
[0018] 步骤1:步骤1:读取k日的采样数据,将每一日的采样数据从大到小排序,将第i日采样数据排序后的前Mi个采样数据存储为数组Si,未保存的采样数据假设存入数组L’i中;其中,i=1,2,、、、,k,k为时间范围(周、月、季和年)内的天数,Mi=Ni×X%+1,X大于等于5(X的取值是根据实际数据测得的,不同环境和目的,X是可调整的),Ni表示第i日采样数据的个数。
[0019] 步骤2:将k组数组Si中的采样数据从大到小进行合并排序(可采用败者树方法)并存储在数组T中,取数组T中的第I95和I99个值,令cp95’=T[I95],cp99’=T[I99],其中,T[I95]和T[I99]分别为数组T中的第I95和I99个值,
[0020]
[0021] 步骤3:令i等于1;
[0022] 步骤4:取第i个数组Si的最小值(最后一个值)Smi;
[0023] 步骤5:当i小于k时,执行步骤6;当i大于等于k时,执行步骤7;
[0024] 步骤6:将Smi与cp95’作比较,若Smi小于等于cp95’,说明数组L’i中的采样数据也比cp95’小,cp95’不会存在于数组L’i中,此时的cp95’不变。令i加1,返回步骤4;
[0025] 若Smi大于cp95’,说明数组L’i中可能存在比cp95’大的采样数据,所以要将i存入数组R中,为重新读取采样数据作准备。令i加1,返回步骤4。
[0026] 步骤7:根据数组R中存入的i值,读取相应的采样数据并从大到小排序,取第Mi个值之后大于cp95’的采样数据存入数组Li中,把所有Li中的采样数据和T合并后按从大到小的顺序排序形成数组T’,令cp95’=T’[I′95],cp99’=T’[I′99],其中,T’[I′95]和T’[I′99]分别为数组T’中的第I′95个值和I′99个值,I′95=TN×5%+1,I′99=TN×1%+1,TN为数组T’中采样数据的个数;
[0027] 步骤8:输出95概率大值CP95为cp95’,输出99概率大值CP99为cp99’。
[0029] 某监测点,采样间隔为3秒,每日采样点数为28800个。每日需要计算的通道共230个。由于采样点数较大,X取7。
[0030] 每日计算日数据时用快速排序方法,总耗时12.168秒,平均每组数据的时间是0.0312秒。排序后每组采样数据存储前2017个点(28800×7%+1向上取整)。
[0031] 计算周指标时用本发明的计算方法,总耗时1.035秒,平均每组数据的计算时间是0.0045秒。用快速排序法计算,总耗时59.202秒,平均每组数据的计算时间是0.2574秒。新方法性能提升57倍。
[0032] 计算月指标时用本发明的计算方法,总耗时5.382秒,平均每组数据的计算时间是0.0234秒。用快速排序法计算,总耗时366.252秒,平均每组数据的计算时间是1.5924秒。新方法性能提升68倍。
[0033] 计算季指标时用本发明的计算方法,总耗时19.32秒,平均每组数据的计算时间是0.084秒。用快速排序法计算,总耗时1084.542秒,平均每组数据的计算时间是4.7154秒。新方法性能提升56倍。
[0034] 计算年指标时用本发明的计算方法,总耗时258.06秒,平均每组数据的计算时间是1.122秒。用快速排序法计算,总耗时5995.41秒,平均每组数据的计算时间是26.067秒。新方法性能提升23倍。
[0035] 下面对比堆排序、快速排序、k路并归排序、存储全部数据排序和采用本发明方法(部分存储)计算出的平均每组数据所用时间,如表1所示。
[0036] 表1采样间隔3秒时不同方法所用时间表
[0037]排序方法 周 月 季 年
堆排序 0.6177 3.4959 13.482 74.55
快速排序 0.3837 1.8927 5.5236 30.654
k路并归排序 0.2574 1.5924 4.7154 26.067
存储全部数据排序 0.0561 0.6456 1.9935 12.963
本发明方法(部分存储) 0.0045 0.0234 0.084 1.122
[0038] 如图2所示为X取7时,用不同方法计算周、月、季和年指标所用时间对比图。由表1和图2可以明显看出,使用本方法计算周、月、季和年指标时所用的时间明显的缩短很多,说明本方法能够快速高效的计算电能质量稳态指标。
[0039] 实施例2
[0040] 某监测点,采样间隔为30秒,每日采样点数为2880个。每日需要计算的通道共230个。由于采样点数较少,X取8。
[0041] 每日计算日数据时用快速排序,总耗时0.0624秒,平均每组数据的时间是0.00016秒。排序后每组采样数据存储前30个点(2880×8%+1向上取整)。
[0042] 计算周指标时用本发明的计算方法,总耗时0.4278秒,平均每组数据的计算时间是0.00186秒。用快速排序法计算,总耗时3.657秒,平均每组数据的时间是0.0159秒。新方法性能提升8.55倍。
[0043] 计算月指标时用本发明的计算方法,总耗时1.2972秒,平均每组数据的计算时间是0.00564秒。用快速排序法计算,总耗时20.2308秒,平均每组数据的时间是0.08796秒。新方法性能提升15.6倍。
[0044] 计算季指标时用本发明的计算方法,总耗时5.589秒,平均每组数据的计算时间是0.0243秒。用快速排序法计算,总耗时83.9592秒,平均每组数据的时间是0.36504秒。新方法性能提升15倍。
[0045] 计算年指标时用本发明的计算方法,总耗时12.627秒,平均每组数据的计算时间是0.0549秒。用快速排序法计算,总耗时375.636秒,平均每组数据的时间是1.6332秒。新方法性能提升29.75倍。
[0046] 下面对比堆排序、快速排序、k路并归排序、存储全部数据排序和采用本发明方法(部分存储)计算出的平均每组数据所用时间,如表2所示。
[0047] 表2采样间隔30秒时不同方法所用时间表
[0048]排序方法 周 月 季 年
堆排序 0.05148 0.30228 1.00992 4.9527
快速排序 0.03366 0.11232 0.48012 1.9983
k路并归排序 0.0159 0.08796 0.36504 1.6332
存储全部数据排序 0.01122 0.05616 0.1338 0.9294
本发明方法(部分存储) 0.00186 0.00564 0.0243 0.0549
[0049] 由表2中数据可以明显看出,使用本方法计算周、月、季和年指标时所用的时间明显的缩短很多,说明本方法能够快速高效的计算电能质量稳态指标。
[0050] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉
本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以
权利要求的保护范围为准。