CN103914345B - 一种面向能量收集***的嵌入式操作***任务调度方法 - Google Patents
一种面向能量收集***的嵌入式操作***任务调度方法 Download PDFInfo
- Publication number
- CN103914345B CN103914345B CN201410133089.9A CN201410133089A CN103914345B CN 103914345 B CN103914345 B CN 103914345B CN 201410133089 A CN201410133089 A CN 201410133089A CN 103914345 B CN103914345 B CN 103914345B
- Authority
- CN
- China
- Prior art keywords
- task
- energy
- battery
- group
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
Abstract
本发明涉及一种面向能量收集***的嵌入式操作***任务调度方法,在保证任务实时性的同时,通过设定电池最大能量阈值和最小能量阈值,对任务进行分组调度。本发明具有的有益效果有以下两点:(1)在任务调度过程中考虑了任务能耗和电池的能量约束,可避免由于电池能量不足造成的任务执行中断。(2)结合任务能耗和电池能量约束,采用分组调度策略,减少了在任务负载较高时,电池浅充浅放模式的使用次数,从而提高了电池的能量转移总量和能量使用效率。
Description
技术领域
本发明涉及嵌入式操作***任务调度技术领域,特别是涉及一种面向能量收集***的嵌入式操作***任务调度方法。
背景技术
随着对设备小型化和更长电池使用寿命需求的增长,能量管理逐渐成为嵌入式***研究的重点。对设备能量的随意使用,会缩短设备的运行时间。在实际应用中,有些设备被部署后,相应的嵌入式应用需要运行很长的时间,例如,无线传感器节点,巡航器等。如何延长这些电子设备的使用寿命变得尤为重要。采用能量收集技术从周围环境收集能量是解决这个问题的一个有效方法。使用能量收集技术从环境资源中收集和存储能量的嵌入式***称为能量收集***,其组成不仅包括传统的嵌入式***组件,还包括能量采集单元(例如,太阳板)以及能量存储单元(电池或电容)。近年来,能量收集被频繁应用于小型自治设备,它们的特殊性在于能量的来源是无限的,但是在一定的时刻可使用的能量是受限的,能量的收集和存储都是需要时间的。能量收集所需的时间会导致任务调度过程中产生空白时间,所以能量收集***的调度器不是连续工作的。在这种背景下产生了新的调度问题,传统调度算法(例如,截止时间优先算法、速率单调算法等)不再适用于这类***。能量收集***调度方法的目标不仅仅要满足时间限制,还要保证在能量约束的条件下,任务执行不中断。此外,电池(以磷酸铁锂电池为例)容量衰退至85%之前,深充深放与浅充浅放的使用模式对于电池能量转移能力的影响是几乎相同的,当电池容量衰退至75%时,深充深放的使用模式在电池能量转移总量和能量效率上均优于浅充浅放的使用模式,因此,能量收集***调度方法需要在任务负载较高时,采用深充深放模式,从而减少了电池浅充浅放模式的使用次数,来提高电池的能量转移总量和能量使用效率。
现有的结合任务调度研究能耗的方法,主要集中在截止时间约束下最小化***能耗,或者是在能量约束下最大化***性能。例如,使用动态调频调压,来降低处理器能耗。然而,他们大部分没有考虑电池容量的限制和管理电池充电的必要性。这些技术应用在能量收集***中是有限制的,并且在没有足够能量的情况下任务根本不能执行。因此,能量收集***必须能动态地依据处理器负载能耗和能量存储单元的充放电特性来管理和调度任务。
发明内容
本发明的目的在于克服目前能量收集***在任务调度过程中没有考虑任务能耗和管理电池充电的必要性造成的任务执行中断,以及任务高负载运行时,电池过于频繁的浅充浅放模式降低了电池能量转移总量和能量使用效率问题。为了达到上述目的,本发明提出了一种面向能量收集***的嵌入式操作***任务调度方法。
一种面向能量收集***的嵌入式操作***任务调度方法,其特征在于:
1、能量收集***定义:
能量收集***为P=(Σ,B),其中:Σ={τ1,…,τn}表示n个独立实时任务集合,B表示电池;
实时任务τi是一个五元组τi=(Ci,Di,Ti,Pi,ei),其中:Ci表示任务执行时间,Di表示任务截止时间,Ti表示任务周期,Pi表示任务固定优先级,ei表示任务单位时间能量消耗速率;
电池为一个二元组B(Emax,ebat),其中:Emax是电池最大容量,ebat是充电速率;
2、分组调度策略:分组调度策略基于固定优先级,就绪队列任务按照优先级由高到低排序,依据分组条件,从任务就绪队列中选取一组任务连续运行;在满足任务截止时间约束的前提下,组任务在执行之前利用空闲时间为电池补充电能;当电池能量满足组任务运行需求,组任务开始执行;组内任务连续执行;当该组任务执行完毕,从就绪队列中选取下一组任务,如果就绪队列为空,而且,电池容量小于Emax,则为电池充电;
分组调度策略的分组条件的判定,分组需要同时满足两个条件:(1)组内任务消耗总能量Eneed不能大于电池最大可用容量Emn(Emn=Emax-Emin);(2)组内任务最小截止时间减去组内任务执行时间的总和tidle大于电池充电所需时间tch;
分组条件为公式(1);Eneed计算方法如公式(2),电池充电所需时间tch计算方法如公式(3),组任务最小空闲时间tidle计算方法如公式(4):
具体步骤如下:
任务分组流程为:首先,n个独立实时任务集Σ={τ1,…,τn}按照优先级高低进行了排序,电池在t时刻剩余电量为E(t),依次读入任务τ1,τ2,。。。,直到τi不满足公式(1),此时,任务分组为{τ1,…,τi-1};在执行此组任务之前,电池需要充电时间为tch,如公式(2)所示;当电池充电tch个单位时间,立刻执行组内任务;当这组任务执行完毕后,对剩余任务按照此方法继续分组执行;
基于能耗的固定优先级抢占调度:当有新任务τj进入就绪任务队列,要抢占当前正在执行的组内任务τi,需要满足条件Pj大于Pi,并且τj所需能量小于τi执行所需的能量,即ej×Cj<ei×Ci,才可以抢占当前任务。一旦确定需要进行抢占,任务需要进行重新分组。
本发明与背景技术相比,具有的有益的效果是:
本发明将任务能耗与电池能量补充相结合,提出了一种面向能量收集***的嵌入式操作***任务调度方法,在保证任务实时性的同时,通过设定电池最大能量阈值和最小能量阈值,对任务进行分组调度。本发明具有的有益效果有以下两点:
(1)在任务调度过程中考虑了任务能耗和电池的能量约束,可避免由于电池能量不足造成的任务执行中断。
(2)结合任务能耗和电池能量约束,采用分组调度策略,减少了在任务负载较高时,电池浅充浅放模式的使用次数,从而提高了电池的能量转移总量和能量使用效率。
附图说明
图1是整个***调度方法执行的流程图。
具体实施方式
在实施面向能量收集***的嵌入式操作***任务调度方法时,任务调度在满足实时性的前提下,综合考虑了任务能耗和电池能量约束两个条件。当处理器运行任务时消耗能量,当处理器空闲时电池补充能量。电池能量永远不能超过它的最大阈值Emzx,永远不能低于最小阈值Emin。因此,一个能量收集***P=(Σ,B)是可调度的,当且仅当存在一个可行调度可以保证所有任务都可以在截止时间内完成,并且确保电池的能量水平一直处于[Emin,Emax]。
面向能量收集***的嵌入式操作***任务调度方法具体实现流程如下:
1)***定义
(1)定义能量收集***为P=(Σ,B),
其中
Σ={τ1,…,τn}表示实时任务集合,
B表示电池。
(2)定义一个实时任务τi是一个五元组τi=(Ci,Di,Ti,Pi,ei),
其中
Ci表示任务的执行时间,
Di表示任务的截止时间,
Ti表示任务的周期,
Pi表示任务的固定优先级,
ei表示任务单位时间能量消耗速率。
任务执行能量消耗等于任务单位时间能量消耗速率与任务执行时间的乘积。一个实时任务释放无限多个作业,并使用周期分割,每个作业必须在最坏执行时间和一定的能量消耗约束内完成。
(3)在能量收集***中,电池是能量存储单元,定义电池为一个二元组B(Emax,ebat),
其中
Emax是电池最大容量,
ebat是充电速率。
如果一个任务正在运行,电池处于放电模式,只有电池的能量大于任务的能耗,该任务才可以运行结束;如果处理器处于空闲状态,电池可以切换到充电模式来补充能量,前提是当前电池容量小于电池最大容量。电池的能量补充在处理器空闲期间连续执行,为了防止电池过充和过放,设定电池电量在两个阈值Emin和Emax间浮动,Emax是存储单元容量最大值,Emin是保持***运行的最小能量。电池在t时刻的能量用E(t)表示。
2)***初始化
***实时任务集合Σ={τ1,…,τn}按优先级高低排序,电池当前剩余电量为E(t)。
3)任务分组
为了在任务负载较高时采用深充深放模式,来减少电池浅充浅放模式的使用次数,我们将就绪任务队列中的任务进行分组。允许一组任务在执行之前,利用空闲时间来为电池补充电能。分组依据是任务执行能耗和电池最大可用电量Emn(Emn=Emax-Emin);分组目标是组内任务在总耗能不大于Emn的条件下尽可能包含更多的任务;分组的可行性判断的两个条件分别是:(1)组内任务消耗总能量Eneed不能大于电池最大可用容量Emn;(2)组任务最小空闲时间tidle大于电池能量补充所需时间tch。
依次读取已按照优先级由高到低排序的任务集合Σ={τ1,…,τn}中的任务τi,使用公式(2)计算Eneed,使用公式(3)计算电池能量补充时间tch,使用公式(4)计算组任务最小空闲时间tidle,然后判断读入的任务τi是否满足公式(1),如果满足判断就绪队列是否为空,如果不为空,继续读入下一个任务;如果不满足公式(1)或者就绪队列为空,则分组结束,任务分组为{τ1,…,τi-1}。
4)组任务执行前电池电量补充
依据步骤3)计算的电池能量补充时间tch,对电池充电tch个时间单位,为后续组任务的执行提供足够的能量来源。
5)组任务执行
当组任务执行前电池电量补充完毕,立即执行组任务,组内任务之间没有空闲时间。对于同优先级任务,采用时间片轮转调度方法。时间片轮转调度方法是将处理器的运行时间划分等分的时间片,当任务获得处理器资源开始执行,时间片用完后,换下一个同优先级任务运行。在这个时间片内,这个任务占有处理器,直到时间片用完,释放处理器资源,该任务转移到运行队列末尾。时间片轮转调度使同优先级任务获得了相同的执行机会,保障了任务执行的实时性。
6)新任务抢占
在组内任务τi在执行期间,出现了另一个优先级更高的任务τj要求抢占当前任务τi,如果τj所需能量小于τi剩余执行所需的能量,即ej×Cj<ei×Ci,则当前任务τi立刻停止执行,允许任务τj进行抢占,执行步骤7)。否则,不允许进行抢占。这样就避免了低能耗任务被优先级高且耗能高的任务抢占引起的任务执行中断。
7)下一轮分组
当组内任务执行完毕,或有新任务满足抢占条件,从步骤2)开始,进行重新分组。如果就绪队列中没有任务,此时电池电量小于Emax,则进行充电。
任务调度方法执行的整个流程如图1所示。
Claims (1)
1.一种面向能量收集***的嵌入式操作***任务调度方法,其特征在于:
1、能量收集***定义:
能量收集***为P=(∑,B),其中:∑={τ1,…,τn}表示n个独立实时任务集合,B表示电池;
实时任务τi是一个五元组τi=(Ci,Di,Ti,Pi,ei),其中:Ci表示任务执行时间,Di表示任务截止时间,Ti表示任务周期,Pi表示任务固定优先级,ei表示任务单位时间能量消耗速率;
电池为一个二元组B(Emax,ebat),其中:Emax是电池最大容量,ebat是充电速率;
2、分组调度策略:分组调度策略基于固定优先级,就绪队列任务按照优先级由高到低排序,依据分组条件,从任务就绪队列中选取一组任务连续运行;在满足任务截止时间约束的前提下,组任务在执行之前利用空闲时间为电池补充电能;当电池能量满足组任务运行需求,组任务开始执行;组内任务连续执行;当该组任务执行完毕,从就绪队列中选取下一组任务,如果就绪队列为空,而且,电池容量小于Emax,则为电池充电;
分组调度策略的分组条件的判定,分组需要同时满足两个条件:(1)组内任务消耗总能量Eneed不能大于电池最大可用容量Emn(Emn=Emax-Emin);(2)组内任务最小截止时间减去组内任务执行时间的总和tidle大于电池充电所需时间tch;
分组条件为公式(1);Eneed计算方法如公式(2),电池充电所需时间tch计算方法如公式(3),组任务最小空闲时间tidle计算方法如公式(4):
具体步骤如下:
任务分组流程为:首先,n个独立实时任务集∑={τ1,…,τn}按照优先级高低进行了排序,电池在t时刻剩余电量为E(t),依次读入任务τ1,τ2,…,直到τi不满足公式(1),此时,任务分组为{τ1,…,τi-1};在执行此组任务之前,电池需要充电时间为tch,如公式(2)所示;当电池充电tch个单位时间,立刻执行组内任务;当这组任务执行完毕后,对剩余任务按照此方法继续分组执行;
基于能耗的固定优先级抢占调度:当有新任务τj进入就绪任务队列,要抢占当前正在执行的组内任务τi,需要满足条件Pj大于Pi,并且τj所需能量小于τi执行所需的能量,即ej×Cj<ei×Ci,才可以抢占当前任务,一旦确定需要进行抢占,任务需要进行重新分组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410133089.9A CN103914345B (zh) | 2013-12-16 | 2014-04-03 | 一种面向能量收集***的嵌入式操作***任务调度方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310692914 | 2013-12-16 | ||
CN201310692914.4 | 2013-12-16 | ||
CN2013106929144 | 2013-12-16 | ||
CN201410133089.9A CN103914345B (zh) | 2013-12-16 | 2014-04-03 | 一种面向能量收集***的嵌入式操作***任务调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103914345A CN103914345A (zh) | 2014-07-09 |
CN103914345B true CN103914345B (zh) | 2017-02-22 |
Family
ID=51040050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410133089.9A Expired - Fee Related CN103914345B (zh) | 2013-12-16 | 2014-04-03 | 一种面向能量收集***的嵌入式操作***任务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103914345B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320564B (zh) * | 2014-07-16 | 2019-03-08 | 航天恒星科技有限公司 | 一种基于卫星能量变化的任务规划方法 |
CN104571462B (zh) * | 2014-12-30 | 2017-05-03 | 深圳先进技术研究院 | 电池功耗的控制方法和*** |
CN105242966A (zh) * | 2015-09-28 | 2016-01-13 | 华东师范大学 | 一种面向自主获能异构***的非精确实时任务调度方法 |
CN107302562B (zh) * | 2017-05-23 | 2019-12-03 | 中国科学院计算技术研究所 | 一种物联网终端设备的自适应命令处理***与方法 |
CN110945457B (zh) * | 2017-07-12 | 2021-09-14 | Wiliot有限公司 | 能量感知计算*** |
US11226667B2 (en) | 2018-07-12 | 2022-01-18 | Wiliot Ltd. | Microcontroller operable in a battery-less wireless device |
CN109409691B (zh) * | 2018-09-30 | 2022-10-11 | 重庆大学 | 一种无能量存储单元的能量收集嵌入式***作业调度方法 |
CN112135336B (zh) * | 2019-06-25 | 2023-12-12 | 沈阳中科博微科技股份有限公司 | 一种基于WirelessHART协议的适配器节能方法 |
CN110504727A (zh) * | 2019-08-26 | 2019-11-26 | 深圳来电科技有限公司 | 一种控制移动电源充电的方法及移动电源租赁设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6430593B1 (en) * | 1998-03-10 | 2002-08-06 | Motorola Inc. | Method, device and article of manufacture for efficient task scheduling in a multi-tasking preemptive priority-based real-time operating system |
CN103455131A (zh) * | 2013-08-20 | 2013-12-18 | 北京航空航天大学 | 一种基于概率的嵌入式***中能耗最小化的任务调度方法 |
-
2014
- 2014-04-03 CN CN201410133089.9A patent/CN103914345B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6430593B1 (en) * | 1998-03-10 | 2002-08-06 | Motorola Inc. | Method, device and article of manufacture for efficient task scheduling in a multi-tasking preemptive priority-based real-time operating system |
CN103455131A (zh) * | 2013-08-20 | 2013-12-18 | 北京航空航天大学 | 一种基于概率的嵌入式***中能耗最小化的任务调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103914345A (zh) | 2014-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103914345B (zh) | 一种面向能量收集***的嵌入式操作***任务调度方法 | |
CN103107600B (zh) | 一种物联网智能充电供电***及其调度方法 | |
CN109193718B (zh) | 一种适应于v2g的选择电动汽车入网调控方法 | |
CN105515110B (zh) | 一种电动汽车有序充电实时控制*** | |
CN103399626B (zh) | 面向混合计算环境的功耗感知的并行应用调度***及方法 | |
CN100465857C (zh) | 一种面向嵌入式***低功耗实时任务调度的简化方法 | |
CN103997052A (zh) | 一种多储能电站的有功功率控制的方法 | |
CN107039697B (zh) | 一种基于最优效率的多功率段充电方法 | |
CN110877546A (zh) | 基于天气预测的光伏充电站充电控制方法及装置 | |
CN106445070B (zh) | 一种硬实时***资源受限偶发任务能耗优化调度方法 | |
CN106385048A (zh) | 一种风光蓄一体化调度策略 | |
CN105896580B (zh) | 一种微电网多目标优化控制方法及装置 | |
CN105975049A (zh) | 一种任务同步偶发任务低能耗调度方法 | |
CN111391819A (zh) | 一种增程器控制方法、装置、设备及存储介质 | |
CN115782667A (zh) | 充电堆用电容量分配方法和*** | |
Xiang et al. | Run-time management for multicore embedded systems with energy harvesting | |
CN114336694B (zh) | 一种混合储能电站能量优化控制方法 | |
CN103580051B (zh) | 考虑负荷特性的风储***电池荷电状态优化控制*** | |
CN114583734A (zh) | 多类型储能***能量管理方法、***、设备和存储介质 | |
CN109144691B (zh) | 一种面向多核处理器的任务调度分配方法 | |
CN111489009A (zh) | 一种电动汽车充电站运行方式的优化计算方法及装置 | |
CN108321916B (zh) | 一种具有能量协作功能的基站及能量协作方法 | |
CN110460079A (zh) | 一种梯次利用储能***降功率运行方法 | |
Narasimhan et al. | A supply-demand model based scalable energy management system for improved energy utilization efficiency | |
CN107046312B (zh) | 一种基于有序充放电的储能电池优化调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170222 Termination date: 20180403 |