一种基于链表的电能表事件主动上报处理方法技术

技术编号:19936469 阅读:96 留言:0更新日期:2018-12-29 05:22
本发明专利技术涉及一种基于链表的电能表事件主动上报处理方法,用于包括集中器、主站及至少一个电能表所形成的电力系统。该电能表事件主动上报处理方法通过建立存放电能表事件用的事件待处理队列,由集中器利用链表方式按照预设的事件队列数据结构对所获取各事件状态字做预处理,完成针对各事件状态字所对应电能表事件的处理,由集中器将针对电能表事件的处理结果上报给主站,从而在充分利用集中器现有内存的前提下提高执行效率;集中器利用对应电能表事件的事件状态字来分别处理事件待处理队列中所预设的待抄读电能表事件,有效简化业务处理模式;通过对电能表事件及电能表的普通抄读业务分别赋予不同的处理优先级,达到优先保证针对电能表事件的处理。

【技术实现步骤摘要】
一种基于链表的电能表事件主动上报处理方法
本专利技术涉及电力抄表领域,尤其涉及一种基于链表的电能表事件主动上报处理方法。
技术介绍
在电力抄表系统中,在用电现场,由于不同的用电场境、用电运行异常、窃电行为等,都会触发电能表事件的产生。在用电信息采集系统中,电能表事件实时处理的能力,是用电采集信息终端的一个非常重要的运行指标。按国家电网技术要求,当电能表发生事件时,除了需上报电能表事件外,还需要上报事件发生时的电能表其它一些运行数据。现有的事件处理方式主要是通过点抄方式采集运行数据。但是,这种针对电能表运行数据的点钞采集方式存在占用内存空间大、执行效率低以及影响其它高优先级业务采集数据的缺点。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术提供一种基于链表的电能表事件主动上报处理方法。本专利技术解决上述技术问题所采用的技术方案为:一种基于链表的电能表事件主动上报处理方法,用于包括有集中器、主站以及至少一个电能表所形成的电力系统,其特征在于,所述基于链表的电能表事件主动上报处理方法包括如下步骤:步骤1,建立所述集中器分别与主站、所述各电能表之间的通信连接,并由各电能表发送电表数据给集中器;步骤2,所述电能表在检测到自身出现电能表事件时,该电能表发送电能表事件信息以及对应该电能表事件当前状态的运行数据给集中器;其中,所述电能表事件信息包括电能表事件以及对应该电能表事件的事件状态字;步骤3,所述集中器解析接收的电能表事件信息,并判断当前电能表事件处于有效状态时,集中器即转入步骤4,启动针对当前的该电能表事件的事件预处理,;否则,所述集中器不予处理当前的该电能表事件,并结束针对当前的该电能表事件的上报处理操作;步骤4,所述集中器获取解析的该电能表事件信息中的电能表事件和事件状态字,并且按照预设的事件队列数据结构对所获取的各事件状态字进行预处理;其中,所述事件队列数据结构包括电能表事件上报时间、电能表事件所对应的电表地址、电能表事件所对应的事件状态字以及电能表事件发生次数;步骤5,所述集中器建立事件待处理队列,并将预处理后的各事件状态字加入到所述事件待处理队列,以等待事件上报业务做统一处理;步骤6,所述集中器判断位于所述事件待处理队列内且需要处理的电能表事件为空时,集中器继续接收各电能表发送来的电能表事件;步骤7,所述集中器下发清除事件状态字指令给电能表,由电能表将自身电能表事件所对应的事件状态字做清除处理,且在成功清除事件状态字后,由电能表将事件状态字成功清除的清除成功反馈信息给集中器,以避免集中器重复检测位于所述事件待处理队列中且已经处理过的电能表事件;步骤8,所述集中器在接收到对应电能表发送来的清除成功反馈信息后,集中器再次启动针对所有所述电能表所对应电能表事件状态字的采集事件操作:步骤8-1,所述集中器解析电能表发送来的电能表事件所对应的事件状态字;步骤8-2,所述集中器根据所解析的事件状态字判断是否需要抄读电能表事件数据:所述集中器判断所解析的电能表事件为预设的待抄读电能表事件时,集中器按照预设的事件队列数据结构取出该事件状态字所对应电能表事件的各数据项,转至步骤8-3;所述集中器判断所解析的电能表事件为预设的非待抄读电能表事件时,集中器将当前电能表事件所对应的事件状态字报文上报至主站,并结束针对当前事件状态字所对应电能表的采集事件操作;步骤8-3,所述集中器判断所解析出的各事件状态字所对应的数据项个数大于零时,集中器要求各电能表将位于电能表内的各所述数据项做组包发送,以由电能表将包括有数据项的组包数据发送给所述集中器;否则,转入步骤8-5;步骤8-4,所述集中器接收并解析电能表发送来的组包数据,并将接收的所述电能表事件原始报文缓存到集中器内存中;步骤8-5,所述集中器将缓存的所述电能表事件原始报文上报至主站,结束针对各电能表的采集事件操作。进一步地,在所述基于链表的电能表事件主动上报处理方法中,在步骤7中,所述集中器按照如下步骤a1~步骤a7的方式执行清除事件状态操作:步骤a1,所述集中器取出所述事件待处理队列中的有效电能表事件所对应的事件状态字;其中,所述事件状态字的值为0或1;步骤a2,所述集中器对取出的所述事件状态字按位取反,并做组包处理;步骤a3,所述集中器将组包处理后的事件状态字报文发送给电能表;步骤a4,所述电能表按照所述事件状态字报文成功清除自身的对应事件状态字后,电能表即发送清除成功反馈信息报文发送给集中器,转入步骤a5;否则,电能表发送未清除成功的反馈信息报文发送给集中器,转入步骤a7;步骤a5,所述集中器接收各电能表发送来的清除成功反馈信息报文,并对接收的所述清除成功反馈信息报文做解析处理;步骤a6,所述集中器成功解析所述清除成功反馈信息报文后,结束当前针对电能表事件的清除事件状态操作;步骤a7,所述集中器再次发送清除事件状态字报文命令给该电能表,由电能表在预设次数内重复执行针对当前事件状态字报文命令的清除操作,直到该电能表成功执行完毕一次事件状态字清除操作后,即结束当前针对该事件状态字的清除操作。改进地,在所述基于链表的电能表事件主动上报处理方法中,所述集中器针对电能表事件处理业务的处理优先级高于所述集中器针对电能表的普通采集业务。再改进地,所述基于链表的电能表事件主动上报处理方法还包括:所述集中器在处理完毕电能表事件后,集中器对位于所述事件待处理队列中且已处理完毕的电能表事件赋予已处理的状态标识。改进地,所述基于链表的电能表事件主动上报处理方法还包括:对所述集中器准许处理的电能表事件个数做出限制,以节约集中器内存的步骤。进一步地,在所述基于链表的电能表事件主动上报处理方法中,对所述集中器准许处理的电能表事件个数限制为16个。改进地,在所述基于链表的电能表事件主动上报处理方法中,所述集中器与所述各电能表之间通过PLC通道实现数据交互,以获取各电能表所发送来的电能表事件。再改进地,所述基于链表的电能表事件主动上报处理方法还包括:对所述电力系统中的各电能表赋予不同的电能表事件处理优先级,并由所述集中器按照所述赋予的电能表事件处理优先级的优先顺序来处理对应电能表所发送的电能表事件的步骤。再进一步地,所述基于链表的电能表事件主动上报处理方法还包括:所述主站发送预设事件上报时间点给集中器,由集中器在所述预设事件上报时间点将处理过的电能表事件原始报文上报给主站的步骤。与现有技术相比,本专利技术的优点在于:首先,本专利技术中的电能表事件主动上报处理方法通过建立存放电能表事件用的事件待处理队列,并且由集中器利用链表的方式按照预设的事件队列数据结构对所获取的各事件状态字做预处理,进而完成针对各事件状态字所对应电能表事件的处理,且由集中器将针对电能表事件的处理结果主动上报给主站,从而可以在充分利用集中器现有内存的前提下提高执行效率;其次,集中器通过利用对应电能表事件的事件状态字来分别处理事件待处理队列中所预设的待抄读电能表事件,有效地简化了集中器针对电能表的业务处理模式;再次,通过对电能表事件以及电能表的普通抄读业务分别赋予不同的处理优先级,从而使得集中器针对电能表事件的处理与针对电表的普通抄读不会相互造成影响,达到优先保证针对电能表事件的处理。附图说明图1为本专利技术实施例中基于链表的电能表事件主本文档来自技高网...

【技术保护点】
1.一种基于链表的电能表事件主动上报处理方法,用于包括有集中器、主站以及至少一个电能表所形成的电力系统,其特征在于,所述基于链表的电能表事件主动上报处理方法包括如下步骤:步骤1,建立所述集中器分别与主站、所述各电能表之间的通信连接,并由各电能表发送电表数据给集中器;步骤2,所述电能表在检测到自身出现电能表事件时,该电能表发送电能表事件信息以及对应该电能表事件当前状态的运行数据给集中器;其中,所述电能表事件信息包括电能表事件以及对应该电能表事件的事件状态字;步骤3,所述集中器解析接收的电能表事件信息,并判断当前电能表事件处于有效状态时,集中器即转入步骤4,启动针对当前的该电能表事件的事件预处理,;否则,所述集中器不予处理当前的该电能表事件,并结束针对当前的该电能表事件的上报处理操作;步骤4,所述集中器获取解析的该电能表事件信息中的电能表事件和事件状态字,并且按照预设的事件队列数据结构对所获取的各事件状态字进行预处理;其中,所述事件队列数据结构包括电能表事件上报时间、电能表事件所对应的电表地址、电能表事件所对应的事件状态字以及电能表事件发生次数;步骤5,所述集中器建立事件待处理队列,并将预处理后的各事件状态字加入到所述事件待处理队列,以等待事件上报业务做统一处理;步骤6,所述集中器判断位于所述事件待处理队列内且需要处理的电能表事件为空时,集中器继续接收各电能表发送来的电能表事件;步骤7,所述集中器下发清除事件状态字指令给电能表,由电能表将自身电能表事件所对应的事件状态字做清除处理,且在成功清除事件状态字后,由电能表将事件状态字成功清除的清除成功反馈信息给集中器,以避免集中器重复检测位于所述事件待处理队列中且已经处理过的电能表事件;步骤8,所述集中器在接收到对应电能表发送来的清除成功反馈信息后,集中器再次启动针对所有所述电能表所对应电能表事件状态字的采集事件操作:步骤8‑1,所述集中器解析电能表发送来的电能表事件所对应的事件状态字;步骤8‑2,所述集中器根据所解析的事件状态字判断是否需要抄读电能表事件数据:所述集中器判断所解析的电能表事件为预设的待抄读事件时,集中器按照预设的事件队列数据结构取出该事件状态字所对应电能表事件的各数据项,转至步骤8‑3;所述集中器判断所解析的电能表事件为非预设的待抄读事件时,集中器将当前电能表事件所对应的事件状态字报文上报至主站,并结束针对当前事件状态字所对应电能表的采集事件操作;步骤8‑3,所述集中器判断所解析出的各事件状态字所对应的数据项个数大于零时,集中器要求各电能表将位于电能表内的各所述数据项做组包发送,以由电能表将包括有数据项的组包数据发送给所述集中器;否则,转入步骤8‑5;步骤8‑4,所述集中器接收并解析电能表发送来的组包数据,并将接收的所述电能表事件原始报文缓存到集中器内存中;步骤8‑5,所述集中器将缓存的所述电能表事件原始报文上报至主站,结束针对各电能表的采集事件操作。...

【技术特征摘要】
1.一种基于链表的电能表事件主动上报处理方法,用于包括有集中器、主站以及至少一个电能表所形成的电力系统,其特征在于,所述基于链表的电能表事件主动上报处理方法包括如下步骤:步骤1,建立所述集中器分别与主站、所述各电能表之间的通信连接,并由各电能表发送电表数据给集中器;步骤2,所述电能表在检测到自身出现电能表事件时,该电能表发送电能表事件信息以及对应该电能表事件当前状态的运行数据给集中器;其中,所述电能表事件信息包括电能表事件以及对应该电能表事件的事件状态字;步骤3,所述集中器解析接收的电能表事件信息,并判断当前电能表事件处于有效状态时,集中器即转入步骤4,启动针对当前的该电能表事件的事件预处理,;否则,所述集中器不予处理当前的该电能表事件,并结束针对当前的该电能表事件的上报处理操作;步骤4,所述集中器获取解析的该电能表事件信息中的电能表事件和事件状态字,并且按照预设的事件队列数据结构对所获取的各事件状态字进行预处理;其中,所述事件队列数据结构包括电能表事件上报时间、电能表事件所对应的电表地址、电能表事件所对应的事件状态字以及电能表事件发生次数;步骤5,所述集中器建立事件待处理队列,并将预处理后的各事件状态字加入到所述事件待处理队列,以等待事件上报业务做统一处理;步骤6,所述集中器判断位于所述事件待处理队列内且需要处理的电能表事件为空时,集中器继续接收各电能表发送来的电能表事件;步骤7,所述集中器下发清除事件状态字指令给电能表,由电能表将自身电能表事件所对应的事件状态字做清除处理,且在成功清除事件状态字后,由电能表将事件状态字成功清除的清除成功反馈信息给集中器,以避免集中器重复检测位于所述事件待处理队列中且已经处理过的电能表事件;步骤8,所述集中器在接收到对应电能表发送来的清除成功反馈信息后,集中器再次启动针对所有所述电能表所对应电能表事件状态字的采集事件操作:步骤8-1,所述集中器解析电能表发送来的电能表事件所对应的事件状态字;步骤8-2,所述集中器根据所解析的事件状态字判断是否需要抄读电能表事件数据:所述集中器判断所解析的电能表事件为预设的待抄读事件时,集中器按照预设的事件队列数据结构取出该事件状态字所对应电能表事件的各数据项,转至步骤8-3;所述集中器判断所解析的电能表事件为非预设的待抄读事件时,集中器将当前电能表事件所对应的事件状态字报文上报至主站,并结束针对当前事件状态字所对应电能表的采集事件操作;步骤8-3,所述集中器判断所解析出的各事件状态字所对应的数据项个数大于零时,集中器要求各电能表将位于电能表内的各所述数据项做组包发送,以由电能表将包括有数据项的组包数据发送给所述集中器;否则,转入步骤8-5;步骤8-4,所述集中器接收并解析电能表发送来的组包数据,并将接收的所述电能表事件原始报文缓存到集中器内存...

【专利技术属性】
技术研发人员:苟孟生
申请(专利权)人:宁波三星医疗电气股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1