一种多传感器采集任务调度方法与流程

文档序号:27837171发布日期:2021-12-07 23:56阅读:230来源:国知局
一种多传感器采集任务调度方法与流程

1.本发明涉及嵌入式系统任务调度领域,尤其涉及一种多传感器采集任务调度方法。


背景技术:

2.随着物联网及其相关技术的发展,数据采集设备作为物联网重要的一个环节,对其要求也越来越高。目前物联网数据采集设备多采用电池供电,因此,功耗成为衡量物联网数据采集设备的重要指标。影响设备功耗主要包括两个方面:硬件技术和软件技术,其中软件技术涉及到嵌入式系统对多任务的调度方法。
3.目前常用的功耗优化任务调度方法主要有基于状态的任务调度方法和基于性能的任务调度方法,基于状态的任务调度方法主要是通过按照硬件系统不同工作模式来合理的分配任务的调度顺序,从而达到降低功耗的效果。基于性能的任务调度方法主要是通过调节各任务对应的工作频率或者电压,从而达到降低功耗的效果。
4.现有的调度方法,都是将任务作为一个整体,利用一些手段控制每个任务的功耗,没有根据任务的固有特点进行任务调度优化。


技术实现要素:

5.针对现有技术中存在的问题,本发明提供了一种多传感器采集任务调度方法,通过对传感器采集任务的固有特点进行分析,更加合理的调度任务。
6.本发明解决上述技术问题采用的技术方案如下:
7.一种多传感器采集任务调度方法,包括如下步骤:
8.s1、构建传感器采集任务模型s
i
(t
ia
,t
ib
,t
ic
,p
ia
,p
ib
,p
ic
,w
i
),其中,t
ia
、t
ib
、t
ic
分别为s
i
任务的初始化时间、等待时间和数据采集时间,且t
ia
>0,t
ib
>0,t
ib
>0;p
ia
、p
ib
、p
ic
分别为t
ia
、t
ib
、t
ic
时间段的传感器功率;w
i
为s
i
任务的最晚截止时间;
9.构建任务执行策略k(k1,k2),其中k1为常规策略,是指任务s
i
按照一个整体任务进行执行,不考虑其他任务;k2为改进策略,是指在任务s
i
执行过程某一时刻,开始s
j
任务,并使得任务s
i
的t
ic
阶段执行完成后,开始执行任务s
j
的t
jc
阶段;
10.s2、系统运行前,确定所有周期任务s(s1,s2,

,s
n
)的模型参数,然后选s1任务调度位置为1,记为s
11

11.s3、选取一个后续任务s
i
,使用k2策略计算s
i
在不同调度位置下对应的功耗情况;
12.s4、如果没有出现功耗降低情况,则采用k1策略对该任务s
i
进行整体调度;如果出现功耗降低的情况,则选用功耗降低最多的情况,对该任务s
i
采用k2策略进行任务分解调度;然后重复步骤s3;
13.s5、所有周期任务比对完成后,形成一个任务调度表,并开始进行执行任务。
14.进一步的,所述多传感器采集任务调度方法还包括如下步骤:
15.s6、在系统运行中,遇到中断任务,确定中断任务的模型参数,计算并更新当前任
务模型参数,当前任务传感器保持当前功率等待任务调度;
16.s7、针对中断任务,使用k2改进策略计算中断任务在不同调度位置下对应的功耗情况;如果没有出现功耗降低情况,则采用k1常规策略对该中断任务进行整体调度;如果出现功耗降低的情况,则选用功耗降低最多的情况,对该中断任务采用k2改进策略进行任务分解调度;
17.s8、更新任务调度表,并按任务调度表继续执行任务。
18.进一步的,不同任务模型的参数t
ia
取平均数τ,t
ib
时间段的传感器功率取p
ic
,所述步骤s2中使用k2策略计算s
i
在不同调度位置下对应的功耗的方法如下:
19.s
i
调度位置为k=1时,影响任务为s
i1,
s
j2
,增加功耗为t
ja
*p
ic-t
jb
*p0;
20.s
i
调度位置为k=2...n-1时,影响任务为s
ik
,增加功耗为t
ia
*p
ic-t
ib
*p0;
21.s
i
调度位置为k=n时,影响任务为s
jn-1
,s
in
,增加功耗为t
ia
*p
jc-t
ib
*p0;
22.其中,p0为处理器功耗。
23.本发明的有益效果:
24.本发明提供的一种多传感器采集任务调度方法,充分考虑传感器采集任务的固有特点,将传感器采集任务的过程根据功耗不同进行分解,获得采集任务不占用cpu的时间段用于处理其他采集任务,该方法能够更加合理的调度任务,缩短系统运行时间,优化功耗。
附图说明
25.图1示出了根据本发明的具体实施例提供的采集任务模型及任务执行策略示意图;
26.图2示出了根据本发明的具体实施例提供的多传感器采集任务调度方法示意图。
27.其中,上述附图包括以下附图标记:
28.10、任务模型s1和s2;20、k1策略任务执行顺序;30、k2策略任务执行顺序。
具体实施方式
29.本发明提供了一种多传感器采集任务调度方法,首先,针对传感器采集任务的特点,构建传感器采集任务模型、制定任务执行策略:
30.传感器采集任务模型为s
i
(t
ia
,t
ib
,t
ic
,p
ia
,p
ib
,p
ic
,w
i
),其中,t
ia
、t
ib
、t
ic
分别为s
i
任务的初始化时间、等待时间和数据采集时间,且t
ia
>0,t
ib
>0,t
ib
>0,其中t
ib
不占用处理器使用权,可以执行其他任务,t
ia
、t
ic
占用处理器使用权。p
ia
、p
ib
、p
ic
分别为t
ia
、t
ib
、t
ic
时间段的传感器功率。w
i
为s
i
任务的最晚截止时间。
31.如图1所示,任务执行策略为k(k1,k2),其中k1为常规策略,是指任务s
i
按照一个整体任务进行执行(按照截止时间),不考虑其他任务。k2为改进策略,是指在任务s
i
执行过程某一时刻,开始s
j
任务,并使得任务s
i
的t
ic
阶段执行完成后,可以开始执行任务s
j
的t
jc
阶段。
32.本发明中,处理器功耗仅包括处理器本身功耗,处理器工作于相同频率相同电压,对于传感器操作均为io读写,此部分功耗基本相同,记为p0。
33.本发明中,不同任务模型的参数t
ia
,时间较短,且近似相同,因此统一按照平均数τ处理。不同任务模型的参数p
ib
和p
ic
,有p
ic
>p
ib
,因此为了计算方便,在k2改进策略中,统一
使用p
ic
进行计算。因此,使用k2改进策略后,n个任务功耗变化情况如下表:
34.表1改进策略下n个任务功耗变化
35.s
i
调度位置影响任务增加功耗k=1s
i1
,s
j2
t
ja
*p
ic-t
jb
*p0k=2...n-1s
ik
t
ia
*p
ic-t
ib
*p0k=ns
jn-1
,s
in
t
ia
*p
jc-t
ib
*p036.本发明中,所有任务调度,均需满足任务截止时间w
i
。其中对于周期任务的截止时间为任务的周期,一般为小时级别。对于中断任务的截止时间为最晚响应时间,一般为秒级别。
37.本发明提供的一种多传感器采集任务调度方法,具体步骤如下:
38.步骤一:系统运行前,确定所有周期任务s(s1,s2,

,s
n
)的模型参数,然后选s1任务调度位置为1,记为s
11

39.步骤二:选取一个后续任务s
i
,使用k2改进策略计算s
i
在不同调度位置下对应的功耗情况;
40.步骤三:如果没有出现功耗降低情况,则采用k1常规策略对该任务s
i
进行整体调度;如果出现功耗降低的情况,则选用功耗降低最多的情况,对该任务s
i
采用k2改进策略进行任务分解调度。然后重复步骤二。
41.步骤四:所有周期任务比对完成后,形成一个任务调度表,并开始进行执行任务。
42.步骤五:在系统运行中,如果有中断任务,确定中断任务的模型参数,计算并更新当前任务模型参数,当前任务传感器保持当前功率等待任务调度。
43.步骤六:针对中断任务,使用k2策略计算中断任务在不同调度位置下对应的功耗情况,如果没有出现功耗降低情况,则采用k1策略对该中断任务进行整体调度;如果出现功耗降低的情况,则选用功耗降低最多的情况,对该中断任务采用k2改进策略进行任务分解调度。
44.步骤七:更新任务调度表,并按任务调度表继续执行任务。
45.下面结合附图,通过具体实施方式详细地描述本发明任务调度方法。
46.如图2所示,一种多传感器采集任务调度方法如下:
47.周期任务s1(0.1,3,5,25,15,50,3600),s2(0.1,2,10,30,10,150,3600);中断任务s3(0.1,1,5,15,12,35,20);处理器功耗50。
48.使用k2改进策略对周期任务进行调度如下:
49.首先调度s1:
50.s1调度位置影响任务增加功耗k=1s
1051.然后调度s2:
52.s2调度位置影响任务增加功耗k=1s2,s
1-135k=2s1,s
2-95
53.通过计算,采用k2策略时,功耗降低了,因此可采用k2调度策略,调度顺序如图2所
示。先开始s2任务,在s2任务的t
2c
阶段开始s1任务的t
1a
阶段、t
1b
阶段,在s2任务完成时执行s1任务的t
1c
阶段。
54.在系统执行任务已完成s2任务t
2c
阶段30%时,系统接收到中断任务,由于中断任务出现,会导致正在执行任务的模型参数发生改变,需要根据当前任务的完成度对当前任务模型的时间参数进行计算、调整,此时更新s2(0,0,7,30,10,150,3589.9)模型。然后对s3进行调度。
55.s3调度位置影响任务增加功耗k=1s3,s2915k=2s
3-46.5k=3s1,s
3-45
56.此处需要注意的是,中断任务出现时,当前任务传感器正处于工作状态,其保持当前功率等待任务调度处理。因此,中断任务若是在更新的任务s2之前调度,此时传感器会保持当前功率等待中断任务完成后继续工作,则增加功耗还应包括:当前任务功率
×
中断任务总时长。
57.通过上述计算可知,采用k2策略调度,同时,将s3中断任务排在s1任务之前执行,可以降低功耗,也满足截止时间要求。
58.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
59.本发明未详细说明部分为本领域技术人员公知技术。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1