一种基于HPLC的集中器多任务并行高效采集方法和系统与流程

未命名 08-13 阅读:111 评论:0

一种基于hplc的集中器多任务并行高效采集方法和系统
技术领域
1.本发明属于电力通信技术领域,尤其涉及一种基于hplc的集中器多任务并行高效采集方法和系统。


背景技术:

2.现有技术中的用电信息采集系统主要由主站、集中器、本地通信信道、电表组成,集中器通过本地通信信道采集电表数据并处理后上传主站。集中器中存在多个采集任务,每个采集任务负责采集部分电表的部分数据项。本地通信信道一般使用hplc或hplc双模通信技术,该通信技术支持同时采集n只电表,即“并发采集”,n为并发采集数,一般n>5,且每次通信可采集电表的m个数据,即“合并采集”,m为合并采集数,一般m>5。
3.随着低压分布式光伏、电力市场化交易等新业务需求的推进,用电信息采集系统对采集数据量、数据采集频度要求越来越高。集中器作为关键采集设备,需要更加高效的完成各项采集任务。目前集中器的常规采集实现方案是逐个执行采集任务(同一时刻只有一个任务在执行状态),直至采集完成所有任务下所有电能表的所有待采数据。这种采集方式存在如下缺点:
4.1任务切换降低采集效率:任务切换时的准备工作降低采集效率:任务切入后需要从数据库中加载所需电表信息、电表数据,这需要一定时间。存在失败表等情况下,任务切换频繁,每次切入重新加载数据都占用一定时间,降低采集效率。任务切换时容易丢弃前序任务电表数据,降低采集效率:高优先级任务切入后,可能收到低优先级任务已发出的采集报文的回应报文,因低优先级任务不在执行状态,数据被丢弃。
5.2无法充分发挥本地信道并发采集能力,降低采集效率:同一时刻只执行一个任务,容易出现待采集电表数量小于并发采集数的情况,无法充分发挥本地信道并发采集能力。尤其任务执行末期,仅剩几只表需要采集的阶段。
6.3无法充分发挥合并采集能力,降低采集效率:同一时刻只执行一个任务,容易出现待采集数据个数小于合并采集数的情况,无法充分发挥本地信道合并采集能力。


技术实现要素:

7.本发明针对目前现有的用电数据采集中存在的上述不便和缺陷,提供了一种基于hplc的集中器多任务并行高效采集方法和系统,通过多任务并行执行,以及利用设计好的抄读池进行数据的抄读,以解决上述问题,提高采集效率。
8.为了解决上述技术问题,本发明采用的技术方案为:一种基于hplc的集中器多任务并行高效采集方法,包括以下步骤:
9.s1、设置各个抄读任务的运行模式以及优先级;所述运行模式被设置为独占任务或并行任务;确定状态机的任务转换模式,所述状态机用于执行第一抄读任务,所述第一抄读任务为采集主站配置的待抄数据任务;
10.s2、系统启动后,判断任务池中是否有独占任务,若有,则按优先级顺序执行所有
独占任务;
11.s3、独占任务执行完毕后,获取任务池中的所有并行的第一抄读任务,通过状态机的任务调度模式进行并列执行,获取对应的待抄数据项;
12.s4、根据获取得到的待抄数据项,进行数据抄读。
13.所述步骤1中,将路由识别任务和档案同步任务设置为独占模式;将代理抄读任务和抄表任务设置为并行模式;路由识别任务的优先级高于档案同步任务;代理抄读任务的优先级高于抄表任务。
14.所述状态机的任务状态包括:
15.task_state_ready状态:表示任务可以执行,但不在所设定执行时段内;
16.task_state_delay状态:表示进入了任务执行时段的延迟时间内;
17.task_state_running状态:表示任务正在执行的状态;
18.task_state_sleep状态:表示任务休眠状态;
19.task_state_stoping状态:表示本周期任务执行结束的状态;
20.task_state_suspend状态:任务挂起状态;
21.所述状态机的状态转换模式被设置为:
22.开始后进入task_state_ready状态;
23.在task_state_ready状态下,若进入执行时间段,则进入task_state_delay状态;若手动暂停,则进入task_state_suspend状态;
24.在task_state_delay状态下,若任务延迟时间到达,则进入task_state_running状态;
25.在task_state_running状态下,若执行成功或不在执行时间段,则进入task_state_stoping状态并回收任务所使用资源;若执行失败或任务主动休眠,则进入task_state_sleep状态;
26.在task_state_stoping状态下,若本次任务为单次任务,则进入task_state_suspend状态,若本次任务为周期性任务,则进入task_state_ready状态;
27.在task_state_sleep状态下,若任务队列空闲,或主动休眠时间结束则返回task_state_running状态;
28.在task_state_suspend状态下,若手动恢复,则进入task_state_ready状态。
29.所述步骤s4中根据待抄数据项进行数据抄读的具体方法为:
30.对所有待抄数据项进行合并重组,以电表为单位组织添加电表的所有的待抄数据项形成第二抄读任务后发送给电表模块;
31.收到电表模块的回应数据后保存。
32.所述步骤s4中,形成第二抄读任务后发送给电表模块时,按电表优先级顺序进行发送,所述电表的优先级为其待抄数据项的最高优先级;
33.所述第二抄读任务中,电表的各个待抄数据项以优先级排序。
34.所述的基于hplc的集中器多任务并行高效采集方法,还包括以下步骤:
35.接收回应数据后,上报至按电表地址、数据项索引到的第一抄读任务,并释放资源,调整对应电表的待抄项以及电表优先级。
36.此外,本发明还提供了一种基于hplc的集中器多任务并行高效采集系统,包括:
37.任务调度模块:用于获取任务池中的任务并进行执行;还用于执行第一抄读任务获取待抄数据项后发送给抄读池模块;还用于接收抄读池模块发送的上报数据并进行处理后保存;所述第一抄读任务为采集主站配置的待抄数据任务;
38.所述任务调度模块执行任务池中的任务时,优先执行其中的独占任务,独占任务执行完毕后,根据结合本地信道的最大并发数,利用状态机并行执行多个第一抄读任务;
39.抄读池模块:用于对任务调度模块发送的所有待抄数据项进行合并重组,以电表为单位组织添加所述电表的所有的待抄数据项形成第二抄读任务后发送给对应的电表模块;还用于接收电表模块发送的回应数据,并发送给任务调度模块;
40.所述任务调度模块还用于将根据第一抄读任务获取的待抄数据项对应的电表地址、待抄数据项、优先级、任务信息戳发送给抄读池模块;
41.所述任务调度模块还用于设置各个抄读任务的运行模式和优先级,所述运行模式包括独占任务或并行任务。
42.所述状态机的任务状态包括:
43.task_state_ready状态:表示任务可以执行,但不在所设定执行时段内;
44.task_state_delay状态:表示进入了任务执行时段的延迟时间内;
45.task_state_running状态:表示任务正在执行的状态;
46.task_state_sleep状态:表示任务休眠状态;
47.task_state_stoping状态:表示本周期任务执行结束的状态;
48.task_state_suspend状态:任务挂起状态;
49.所述状态机的状态转换模式被设置为:
50.开始后进入task_state_ready状态;
51.在task_state_ready状态下,若进入执行时间段,则进入task_state_delay状态;若手动暂停,则进入task_state_suspend状态;
52.在task_state_delay状态下,若任务延迟时间到达,则进入task_state_running状态;
53.在task_state_running状态下,若执行成功或不在执行时间段,则进入task_state_stoping状态并回收任务所使用资源;若执行失败或任务主动休眠,则进入task_state_sleep状态;
54.在task_state_stoping状态下,若本次任务为单次任务,则进入task_state_suspend状态,若本次任务为周期性任务,则进入task_state_ready状态;
55.在task_state_sleep状态下,若任务队列空闲,或主动休眠时间结束则返回task_state_running状态;
56.在task_state_suspend状态下,若手动恢复,则进入task_state_ready状态。
57.所述抄读池模块将第二抄读任务发送给电表模块时,按照按电表优先级顺序进行发送,所述电表的优先级为其待抄数据项的最高优先级;
58.所述第二抄读任务中,电表的各个待抄数据项以优先级排序。
59.本发明与现有技术相比具有以下有益效果:
60.1、本发明提供了一种基于hplc的集中器多任务并行高效采集方法和系统,通过任务并发机制,任务配置并发属性后可多任务同时执行,一个执行时段内只触发一次任务切
换,通过状态机进行任务的状态的调度,可以降低任务切入时准备动作频次,避免了独占时的任务上下文的频繁切换,提高采集效率。
61.2、本发明支持多任务并行执行,可解决解决任务切换时容易丢弃前序任务电表数据问题,进一步提高采集效率。
62.3、本发明抄读池的设计可充分发挥本地通信的能力,实现同时采集多只电表,即实现“并发采集”;还可以实现每次通信采集电表的多个数据,即实现“合并采集”,因此,本发明的采集方法可以大大提高采集效率。
附图说明
63.图1为本发明实施例一提供的一种基于hplc的集中器多任务并行高效采集方法的流程示意图;
64.图2为本发明实施例一中状态机的状态图;
65.图3为本发明实施例二提供的一种基于hplc的集中器多任务并行高效采集系统的结构示意图;
66.图4为任务调度模块与抄读池模块的接口调用和报文交互流程图。
具体实施方式
67.为使本发明实施例的目的、技术方案和优点更加清楚,下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
68.实施例一
69.如图1所示,本发明实施例一提供了一种基于hplc的集中器多任务并行高效采集方法,其适应于hplc集中器或者hplc双模集中器,包括以下步骤:
70.s1、设置各个抄读任务的运行模式以及优先级;所述运行模式被设置为独占任务或并行任务;确定状态机的任务转换模式,所述状态机用于执行第一抄读任务,所述第一抄读任务为采集主站配置的待抄数据任务。
71.具体地,所述步骤1中,将路由识别任务和档案同步任务设置为独占模式;将代理抄读任务和抄表任务设置为并行模式。
72.具体地,所述步骤1中,路由识别任务的优先级高于档案同步任务;代理抄读任务的优先级高于抄表任务。
73.集中器的本地通信功能模块主要完成本地通信模块识别、本地通信模块档案同步、代理抄读、抄表功能,各功能作为一类任务加入任务调度。其中路由识别、档案同步是其他功能执行前需要完成的准备工作,设计为独占模式,优先级较高。代理抄读、抄表任务是集中器日常频繁执行的任务,设计为并行执行模式,优先级较低。如表1所示,为本发明实施例中,几种常见任务的运行模式和优先级设置。
74.表1几种常见任务的运行模式和优先级设置
[0075][0076]
如表2所示,本实施例中,所述状态机的任务状态包括以下六种状态:
[0077]
task_state_ready状态:表示任务可以执行,但不在所设定执行时段内;
[0078]
task_state_delay状态:表示进入了任务执行时段的延迟时间内;
[0079]
task_state_running状态:表示任务正在执行的状态;
[0080]
task_state_sleep状态:表示任务休眠状态;
[0081]
task_state_stoping状态:表示本周期任务执行结束的状态;
[0082]
task_state_suspend状态:任务挂起状态。
[0083]
表2状态机的任务状态及说明
[0084][0085][0086]
具体地,本实施例中,转换机用于任务调度,任务调度时按状态图进行转换,如图2所示,为状态机的状态图,本实施例中,所述状态机的状态转换模式被设置为:
[0087]
(1)开始后进入task_state_ready状态;
[0088]
(2)在task_state_ready状态下,若进入执行时间段,则进入task_state_delay状态;若手动暂停,则进入task_state_suspend状态;
[0089]
(3)在task_state_delay状态下,若任务延迟时间到达,则进入task_state_running状态;
[0090]
(4)在task_state_running状态下,若执行成功或不在执行时间段,则进入task_
state_stoping状态并回收任务所使用资源;若执行失败或任务主动休眠,则进入task_state_sleep状态;具体地,在task_state_running状态下,若为单次任务,则执行成功后进入task_state_stoping状态,若为周期性任务,则维持在task_state_running状态,直至执行退出则进入task_state_stoping状态;
[0091]
(5)在task_state_stoping状态下,若本次任务为单次任务,则进入task_state_suspend状态,若本次任务为周期性任务,则进入task_state_ready状态;
[0092]
(6)在task_state_sleep状态下,若任务队列空闲,或主动休眠时间结束则返回task_state_running状态;
[0093]
(7)在task_state_suspend状态下,若手动恢复,则进入task_state_ready状态。
[0094]
本发明实施例中,单次任务区别于周期性的任务,指的是在可执行的时间段内,仅运行一次,除非外部干预,比如人为主动再次触发执行;而周期性任务,则在运行时间段内周期运行,一个周期内执行结束后,等待下一个时间周期。
[0095]
在task_state_stoping状态下,将单次任务进行挂起,是由于单次任务在可执行时间段内已经执行完成,完成后处于挂起状态,可以等待人为触发后再次恢复可执行状态。此外,周期性任务在一个周期内执行完成(或成为执行退出)的条件既可以为任务内部因素,如:本周期执行成功、本周期无剩余可执行时间,也可以为外部的因素:任务被人为暂停等。本发明实施例的上述转换设置,可以使得任务在可执行时间段内有序执行、高效执行,提高任务执行效率。
[0096]
s2、系统启动后,判断任务池中是否有独占任务,若有,则按优先级顺序执行所有独占任务。
[0097]
s3、独占任务执行完毕后,结合本地信道的最大并发数,获取任务池中的所有并行任务作为第一抄读任务,通过状态机的任务调度模式进行并列执行,获取对应的待抄数据项。
[0098]
s4、根据获取得到的待抄数据项,进行数据抄读。
[0099]
进一步地,所述步骤s4中,根据待抄数据项进行数据抄读的具体方法为:
[0100]
对所有待抄数据项进行合并重组,以电表为单位组织添加电表的所有的待抄数据项形成第二抄读任务后发送给电表模块;
[0101]
收到电表模块的回应数据后保存。
[0102]
其中,执行第一抄读任务还需要获取待抄数据项对应的其它信息,包括电表地址、待抄数据项、优先级、任务信息戳。优先级等于第一抄读任务对应的优先级。
[0103]
进一步地,所述步骤s4中,形成第二抄读任务后发送给电表模块时,按电表优先级顺序进行发送,所述电表的优先级为其待抄数据项的最高优先级;
[0104]
进一步地,所述第二抄读任务包括多个以电表为单位的抄读任务,每个抄读任务对应一个电表,每只电表对应的抄读任务中,各个待抄数据项以优先级排序。
[0105]
进一步地,本实施例的基于hplc的集中器多任务并行高效采集方法,还包括以下步骤:接收本地信道回应数据后,上报至按电表地址、数据项索引到的抄读任务,并释放资源,调整对应电表的待抄项以及电表优先级。
[0106]
实施例二
[0107]
如图3所示,本发明实施例二提供了一种基于hplc的集中器多任务并行高效采集
系统,用于实现实施例一所述的一种采集方法,其包括任务调度模块和抄读池模块。
[0108]
任务调度模块用于获取任务池中的任务并进行执行;还用于执行第一抄读任务获取待抄数据项后发送给抄读池模块;还用于接收抄读池模块发送的上报数据并进行处理后保存;所述第一抄读任务为采集主站配置的待抄数据任务。
[0109]
所述任务调度模块执行任务池中的任务时,优先执行其中的独占任务,独占任务执行完毕后,根据结合本地信道的最大并发数,利用状态机并行执行多个第一抄读任务,以减小任务的切入切出。例如,任务1和任务2都为独占属性时,任务1执行过程中,任务2(优先级较任务1高)到达可执行时间段后会抢占任务1后执行,即任务1要切出,任务2切入。本实施例中通过任务调度模块将第一抄读任务设置为并性执行,则任务2到达可执行时间段后直接切入,任务1不切出,达到可并行执行的目的。
[0110]
任务调度模块的作用如下:
[0111]
1、并行调度和执行所有可执行的第一次抄读任务;在执行并行抄读任务时,根据实施例一的状态机进行执行。此外,任务调度模块依据优先级策略有序调度其中的第一抄读任务,而且每一个第一抄读任务会由采集主站配置有待抄数据项。
[0112]
2、根据每个执行任务组织待抄电表、待抄数据项,添加到抄读池,内容包括:电表地址、待抄数据项、优先级(同任务优先级)、任务信息戳;
[0113]
3、接收抄读池模块上报数据后,根据任务信息戳查找对应任务,并处理数据。具体的,抄读池模块将待抄数据项重组后发给集中器(终端)的hplc通信模块,在集中器的hplc通信模块与表端hplc通信模块进行报文交互后,终端会收到待抄读数据项的回应数据,抄读池模块将数据发送给任务调度模块进行反序列化后保存。
[0114]
4、任务调度模块还可以用于执行独占任务,在采集终端内占绝大部分的采集应用场景,独占任务占比很小,只有在比如增删所采集的表档案、任务等参数时抢占任务才会恢复执行。而占比最大的所有的采集类任务,包括分钟冻结、小时冻结、日冻结等都为并行任务,所以本技术中,任务调度模块通过将采集类任务设置为并行任务,通过并行状态机进行执行,可以大大提高采集效率。
[0115]
抄读池模块:用于对任务调度模块发送的所有待抄数据项进行合并重组,以电表为单位组织添加所述电表的所有的待抄数据项形成第二抄读任务后发送给对应的电表模块;还用于接收电表模块发送的回应数据,并发送给任务调度模块。具体地,所述第二抄读任务包括多个以电表为单位的抄读任务,每个抄读任务对应一个电表,每只电表对应的抄读任务中,各个待抄数据项以优先级排序。
[0116]
抄读池模块的作用具体如下:
[0117]
1、以电表为单位组织任务调度模块所添加的待抄数据项,每只表待抄数据项以优先级排序。
[0118]
2、按电表优先级顺序,尽量使本地信道达到最大并发数,充分发挥“并发采集”能力(每只电表的优先级为其待抄数据项的最高优先级);所述并发采集是指将带有并行属性的任务并行执行(执行期间不会因优先级原因发生认任务的抢占切换)。
[0119]
3、按照数据项优先级顺序,合并并行抄读任务(待抄数据项),充分发挥“合并采集”能力;所述合并采集是指将不同任务间的相同待抄电表的不同数据项合并抄读。例如任务1:待抄表1抄读标识01,任务2:待抄表1抄读标识02,则抄读池模块在组织抄读帧时,会生
成一个第二抄读任务,将该表的标识01和02放在一个数据帧内一次抄读。此外,本实施例也支持数据项独占标志,有独占标志的数据项不与其他数据合并采集,可用于任务判定、数据是否支持等需求。
[0120]
4、接收本地信道回应数据,上报至按电表地址、数据项索引到的第一抄读任务,释放资源,调整对应电表的待抄数据项以及电表优先级。
[0121]
具体地,本实施例中,所述第一抄读任务的内容包括:电表地址、待抄数据项、优先级、任务信息戳。
[0122]
具体地,本实施例中,所述任务调度模块还用于设置各个抄读任务的运行模式,将其设置为独占任务或并行任务。
[0123]
具体地,本实施例中,所述抄读池模块还用于管理待抄表队列,将其以优先级排序,还用于向任务调度模块提供抄读表、抄读数据项的增、删、改、查接口。
[0124]
如图4所示,为本实施例中任务调度模块与抄读池模块的接口调用和报文交互流程图,其具体流程如下:
[0125]
1、任务调度模块依据调度策略有序调度第一抄读任务;
[0126]
2、第一抄读任务执行后,将该任务待抄数据项发送给抄读池模块;
[0127]
3、抄读池模块针对所有数据项进行合并重组,形成第二抄读任务(这里的第二抄读任务实际上是待抄读数据项的队列),发送给hplc通信模块;
[0128]
4、抄读池模块通过hplc通信模块接收到回应数据后上报给任务调度模块;
[0129]
5、任务调度模块根据回应帧进行反序列化后保存数据。
[0130]
综上所述,本发明提供了一种基于hplc的集中器多任务并行高效采集方法和系统,具有以下优点:
[0131]
1、本发明通过任务并发机制,任务配置并发属性后可多任务同时执行,一个执行时段内只触发一次任务切换,降低任务切入时准备动作频次,避免了独占时的任务上下文的频繁切换,提高采集效率。
[0132]
2、本发明支持多任务并行执行,可解决解决任务切换时容易丢弃前序任务电表数据问题,进一步提高采集效率。
[0133]
3、本发明抄读池的设计可充分发挥本地通信的能力,实现同时采集多只电表,即实现“并发采集”;还可以实现每次通信采集电表的多个数据,即实现“合并采集”,因此,本发明可以大大提高采集效率。
[0134]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

技术特征:
1.一种基于hplc的集中器多任务并行高效采集方法,其特征在于,包括以下步骤:s1、设置各个抄读任务的运行模式以及优先级;所述运行模式被设置为独占任务或并行任务;确定状态机的任务转换模式,所述状态机用于执行第一抄读任务,所述第一抄读任务为采集主站配置的待抄数据任务;s2、系统启动后,判断任务池中是否有独占任务,若有,则按优先级顺序执行所有独占任务;s3、独占任务执行完毕后,获取任务池中的所有并行的第一抄读任务,通过状态机的任务调度模式进行并列执行,获取对应的待抄数据项;s4、根据获取得到的待抄数据项,进行数据抄读。2.根据权利要求1所述的基于hplc的集中器多任务并行高效采集方法,其特征在于,所述步骤1中,将路由识别任务和档案同步任务设置为独占模式;将代理抄读任务和抄表任务设置为并行模式;路由识别任务的优先级高于档案同步任务;代理抄读任务的优先级高于抄表任务。3.根据权利要求1所述的基于hplc的集中器多任务并行高效采集方法,其特征在于,所述状态机的任务状态包括:task_state_ready状态:表示任务可以执行,但不在所设定执行时段内;task_state_delay状态:表示进入了任务执行时段的延迟时间内;task_state_running状态:表示任务正在执行的状态;task_state_sleep状态:表示任务休眠状态;task_state_stoping状态:表示本周期任务执行结束的状态;task_state_suspend状态:任务挂起状态;所述状态机的状态转换模式被设置为:开始后进入task_state_ready状态;在task_state_ready状态下,若进入执行时间段,则进入task_state_delay状态;若手动暂停,则进入task_state_suspend状态;在task_state_delay状态下,若任务延迟时间到达,则进入task_state_running状态;在task_state_running状态下,若执行成功或不在执行时间段,则进入task_state_stoping状态并回收任务所使用资源;若执行失败或任务主动休眠,则进入task_state_sleep状态;在task_state_stoping状态下,若本次任务为单次任务,则进入task_state_suspend状态,若本次任务为周期性任务,则进入task_state_ready状态;在task_state_sleep状态下,若任务队列空闲,或主动休眠时间结束则返回task_state_running状态;在task_state_suspend状态下,若手动恢复,则进入task_state_ready状态。4.根据权利要求1所述的基于hplc的集中器多任务并行高效采集方法,其特征在于,所述步骤s4中根据待抄数据项进行数据抄读的具体方法为:对所有待抄数据项进行合并重组,以电表为单位组织添加电表的所有的待抄数据项形成第二抄读任务后发送给电表模块;收到电表模块的回应数据后保存。
5.根据权利要求4所述的基于hplc的集中器多任务并行高效采集方法,其特征在于,所述步骤s4中,形成第二抄读任务后发送给电表模块时,按电表优先级顺序进行发送,所述电表的优先级为其待抄数据项的最高优先级;所述第二抄读任务中,电表的各个待抄数据项以优先级排序。6.根据权利要求1所述的基于hplc的集中器多任务并行高效采集方法,其特征在于,还包括以下步骤:接收回应数据后,上报至按电表地址、数据项索引到的第一抄读任务,并释放资源,调整对应电表的待抄项以及电表优先级。7.基于hplc的集中器多任务并行高效采集系统,其特征在于,包括:任务调度模块:用于获取任务池中的任务并进行执行;还用于执行第一抄读任务获取待抄数据项后发送给抄读池模块;还用于接收抄读池模块发送的上报数据并进行处理后保存;所述第一抄读任务为采集主站配置的待抄数据任务;所述任务调度模块执行任务池中的任务时,优先执行其中的独占任务,独占任务执行完毕后,根据结合本地信道的最大并发数,利用状态机并行执行多个第一抄读任务;抄读池模块:用于对任务调度模块发送的所有待抄数据项进行合并重组,以电表为单位组织添加所述电表的所有的待抄数据项形成第二抄读任务后发送给对应的电表模块;还用于接收电表模块发送的回应数据,并发送给任务调度模块。8.根据权利要求7所述的基于hplc的集中器多任务并行高效采集系统,其特征在于,所述任务调度模块还用于将根据第一抄读任务获取的待抄数据项对应的电表地址、待抄数据项、优先级、任务信息戳发送给抄读池模块;所述任务调度模块还用于设置各个抄读任务的运行模式和优先级,所述运行模式包括独占任务或并行任务。9.根据权利要求7所述的基于hplc的集中器多任务并行高效采集系统,其特征在于,所述状态机的任务状态包括:task_state_ready状态:表示任务可以执行,但不在所设定执行时段内;task_state_delay状态:表示进入了任务执行时段的延迟时间内;task_state_running状态:表示任务正在执行的状态;task_state_sleep状态:表示任务休眠状态;task_state_stoping状态:表示本周期任务执行结束的状态;task_state_suspend状态:任务挂起状态;所述状态机的状态转换模式被设置为:开始后进入task_state_ready状态;在task_state_ready状态下,若进入执行时间段,则进入task_state_delay状态;若手动暂停,则进入task_state_suspend状态;在task_state_delay状态下,若任务延迟时间到达,则进入task_state_running状态;在task_state_running状态下,若执行成功或不在执行时间段,则进入task_state_stoping状态并回收任务所使用资源;若执行失败或任务主动休眠,则进入task_state_sleep状态;在task_state_stoping状态下,若本次任务为单次任务,则进入task_state_suspend
状态,若本次任务为周期性任务,则进入task_state_ready状态;在task_state_sleep状态下,若任务队列空闲,或主动休眠时间结束则返回task_state_running状态;在task_state_suspend状态下,若手动恢复,则进入task_state_ready状态。10.根据权利要求7所述的基于hplc的集中器多任务并行高效采集系统,其特征在于,所述抄读池模块将第二抄读任务发送给电表模块时,按照按电表优先级顺序进行发送,所述电表的优先级为其待抄数据项的最高优先级;所述第二抄读任务中,电表的各个待抄数据项以优先级排序。

技术总结
本发明属于电力通信技术领域,公开了一种基于HPLC的集中器多任务并行高效采集方法和系统,方法包括以下步骤:S1、设置各个抄读任务的运行模式以及优先级;所述运行模式被设置为独占任务或并行任务;确定状态机的任务转换模式,所述状态机用于执行第一抄读任务,所述第一抄读任务为采集主站配置的待抄数据任务;S2、系统启动后,判断任务池中是否有独占任务,若有,则按优先级顺序执行所有独占任务;S3、独占任务执行完毕后,获取任务池中的所有并行的第一抄读任务,通过状态机的任务调度模式进行并列执行,获取对应的待抄数据项;S4、根据获取得到的待抄数据项,进行数据抄读。本发明可以有效提高采集效率。有效提高采集效率。有效提高采集效率。


技术研发人员:崔健 董海涛 朱曦光 杜文峰
受保护的技术使用者:青岛东软载波科技股份有限公司
技术研发日:2023.04.10
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐