CN106354557A - 基于时间片任务调度系统的家电及其控制方法、控制器 - Google Patents
基于时间片任务调度系统的家电及其控制方法、控制器 Download PDFInfo
- Publication number
- CN106354557A CN106354557A CN201610749430.2A CN201610749430A CN106354557A CN 106354557 A CN106354557 A CN 106354557A CN 201610749430 A CN201610749430 A CN 201610749430A CN 106354557 A CN106354557 A CN 106354557A
- Authority
- CN
- China
- Prior art keywords
- task
- timeslice
- scheduled
- identification information
- function
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000004891 communication Methods 0.000 claims description 28
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 26
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 abstract description 86
- 230000008901 benefit Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 30
- 238000012423 maintenance Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 230000003466 anti-cipated effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000008236 heating water Substances 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- VIKNJXKGJWUCNN-XGXHKTLJSA-N norethisterone Chemical compound O=C1CC[C@@H]2[C@H]3CC[C@](C)([C@](CC4)(O)C#C)[C@@H]4[C@@H]3CCC2=C1 VIKNJXKGJWUCNN-XGXHKTLJSA-N 0.000 description 1
- 210000003733 optic disk Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Abstract
本发明公开了一种基于时间片任务调度系统的家用电器控制方法、控制器以及家用电器。其中方法包括:针对家用电器的各个功能,预先定义各个功能对应的任务;针对各个任务,预先设置各个任务的时间片以及运行标识信息;获取各个任务的当前运行标识信息,并根据当前运行标识信息确定待调度的任务;通过调用函数调用待调度的任务,并执行待调度的任务;每隔预设时间生成中断信号,并基于中断信号,根据时间片对各个任务的运行标识信息进行更新,并根据更新后的运行标识信息对各个任务进行调度。实现了家用电器的控制系统既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
Description
技术领域
本发明涉及生活电器技术领域,尤其涉及一种基于时间片任务调度系统的家用电器控制方法、控制器以及一种具有该家用电器控制器的家用电器。
背景技术
对于目前家用电器的控制器来说,该控制器通常是有以下两种控制系统:1)简单的前后台顺序执行程序,直接通过执行顺序编写应用程序即可实现对家用电器的控制,这种软件系统构架编写简单,控制系统本身不占用资源,对家用电器的控制芯片的要求低,但是移植性差、可扩展性差、且可读性差;2)操作系统,通过该操控系统管理和控制家用电器的硬件与软件资源以实现对家用电器的控制,这种通过操作系统的控制方式具有扩展性好、移植性强、架构清晰等特点,但是,由于运行操作系统需要更多的芯片资源,所以在芯片成本上要求会比较高。
综上,简单的前后台程序要求芯片资源低,但是维护性、移植扩展性差;而操作系统虽然解决了维护性和移植性,但是又会有对芯片要求高、产品成本增加等缺陷。因此,针对家用电器的控制方法,如何既保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点,已经成为亟待解决的问题。
发明内容
本发明的目的旨在至少在一定程度上解决上述的技术问题之一。
为此,本发明的第一个目的在于提出一种基于时间片任务调度系统的家用电器控制方法。该方法使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
本发明的第二个目的在于提出一种基于时间片任务调度系统的家用电器控制器。
本发明的第三个目的在于提出一种家用电器。
为达上述目的,本发明第一方面实施例的基于时间片任务调度系统的家用电器控制方法,包括:针对所述家用电器的各个功能,预先定义所述各个功能对应的任务;针对各个任务,预先设置所述各个任务的时间片以及运行标识信息;获取所述各个任务的当前运行标识信息,并根据所述当前运行标识信息确定待调度的任务;通过调用函数调用所述待调度的任务,并执行所述待调度的任务;每隔预设时间生成中断信号,并基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度。
根据本发明实施例的基于时间片任务调度系统的家用电器控制方法,通过预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,每隔预设时间产生中断,在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
其中,在本发明的一个实施例中,所述预设时间为1毫秒。
根据本发明的一个实施例,所述基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度,包括:基于所述中断信号调用中断函数,并通过所述中断函数对所述各个任务的时间片进行减一操作;如果所述各个任务中存在所述时间片被减为预设阈值的第一任务,则对所述第一任务的时间片进行重置,并对所述第一任务的运行标识信息进行更新;根据更新后的所述运行标识信息确定所述第一任务为所述待调度的任务,以实现对所述第一任务的调度。
根据本发明的一个实施例,当所述待调度的任务为多个时,所述通过调用函数调用所述待调度的任务,包括:根据预设的优先级策略确定多个待调度的任务的调用优先级;根据所述调用优先级通过所述调用函数调用所述多个待调度的任务。
根据本发明的一个实施例,所述预设的优先级策略包括:时间片越小的任务的调用优先级越高;以及所述时间片相同的任务在任务列表中的位置越靠前,所述时间片相同的任务的调用优先级越高。
根据本发明的一个实施例,所述控制方法还包括:预先设定全局变量,所述全局变量用于指示所述各个任务之间的通讯关系;通过所述全局变量向与所述待调度的任务有所述通讯关系的其他任务发送通信信号。
其中,在本发明的一个实施例中,所述家用电器包括净水器、饮水机、电热水器和燃气热水器中的一种或多种。
为达上述目的,本发明第二方面实施例的基于时间片任务调度系统的家用电器控制器,包括:预先处理模块,用于针对所述家用电器的各个功能,预先定义所述各个功能对应的任务,并针对各个任务,预先设置所述各个任务的时间片以及运行标识信息;主循环模块,用于获取所述各个任务的当前运行标识信息,并根据所述当前运行标识信息确定待调度的任务;任务调用模块,用于通过调用函数调用所述待调度的任务,并执行所述待调度的任务;中断信号生成模块,用于每隔预设时间生成中断信号;任务调度模块,用于基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度。
根据本发明实施例的基于时间片任务调度系统的家用电器控制器,通过预先处理模块预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过主循环模块扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则任务调用模块通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,通过中断信号生成模块每隔预设时间产生中断,任务调度模块在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
其中,在本发明的一个实施例中,所述预设时间为1毫秒。
根据本发明的一个实施例,所述任务调度模块包括:时间片计数单元,用于基于所述中断信号调用中断函数,并通过所述中断函数对所述各个任务的时间片进行减一操作;运行标识信息更新单元,用于在所述各个任务中存在所述时间片被减为预设阈值的第一任务时,对所述第一任务的时间片进行重置,并对所述第一任务的运行标识信息进行更新;任务调度单元,用于根据更新后的所述运行标识信息确定所述第一任务为所述待调度的任务,以实现对所述第一任务的调度。
根据本发明的一个实施例,当所述待调度的任务为多个时,所述任务调用模块包括:调用优先级确定单元,用于根据预设的优先级策略确定多个待调度的任务的调用优先级;任务调用单元,用于根据所述调用优先级通过所述调用函数调用所述多个待调度的任务。
根据本发明的一个实施例,所述预设的优先级策略包括:时间片越小的任务的调用优先级越高;以及所述时间片相同的任务在任务列表中的位置越靠前,所述时间片相同的任务的调用优先级越高。
根据本发明的一个实施例,所述预先处理模块还用于预先设定全局变量,所述全局变量用于指示所述各个任务之间的通讯关系;其中,所述家用电器控制器还包括:通信信号发送模块,用于通过所述全局变量向与所述待调度的任务有所述通讯关系的其他任务发送通信信号。
其中,在本发明的一个实施例中,所述家用电器包括净水器、饮水机、电热水器和燃气热水器中的一种或多种。
为达上述目的,奔放第三方面实施例的家用电器,包括:本发明第二方面实施例的基于时间片任务调度系统的家用电器控制器。
根据本发明实施例的家用电器,通过控制器中的预先处理模块预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过主循环模块扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则任务调用模块通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,通过中断信号生成模块每隔预设时间产生中断,任务调度模块在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明一个实施例的基于时间片任务调度系统的家用电器控制方法的流程图;
图2是根据本发明一个实施例的基于时间片任务调度系统的家用电器控制器的结构框图;
图3是根据本发明一个具体实施例的基于时间片任务调度系统的家用电器控制器的结构框图;
图4是根据本发明另一个具体实施例的基于时间片任务调度系统的家用电器控制器的结构框图;
图5是根据本发明又一个具体实施例的基于时间片任务调度系统的家用电器控制器的结构框图。
附图标记:
预先处理模块100、主循环模块200、任务调用模块300、中断信号生成模块400、任务调度模块500、通信信号发送模块600、调用优先级确定单元310、任务调用单元320、时间片计数单元510、运行标识信息更新单元520和任务调度单元530。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的基于时间片任务调度系统的家用电器控制方法、控制器以及家用电器。
图1是根据本发明一个实施例的基于时间片任务调度系统的家用电器控制方法的流程图。需要说明的是,本发明实施例的基于时间片任务调度系统的家用电器控制方法可应用于家用电器的控制器上。其中,该家用电器可包括但不限于净水器、饮水机、电热水器和燃气热水器等中的一种或多种。
如图1所示,该基于时间片任务调度系统的家用电器控制方法可以包括:
S101,针对家用电器的各个功能,预先定义各个功能对应的任务。
具体地,可预先对家用电器的各个功能进行任务化处理。例如,针对家用电器的每个功能,预先对每个功能分别进行任务定义,即一个功能对应一个任务。举例而言,以家用电器为净水器为例,该净水器可包括按键功能、显示功能、声音功能、系统检测功能、系统核心处理功能、出水功能、加热水功能、制水功能、冲洗功能、滤芯功能、物联网(Internet ofThings,简称为IOT)功能以及硬件自检功能等,则可预先对上述净水器的每个功能进行任务定义,即分别对应为:按键任务、显示任务、声音任务、系统检测任务、系统核心处理任务、出水任务、加热水任务、制水任务、冲洗任务、滤芯任务、IOT任务以及硬件自检任务等。由此,通过将家用电器的功能进行任务模块化,使得任务模块之间的耦合程度降到最低。
S102,针对各个任务,预先设置各个任务的时间片以及运行标识信息。
具体地,在将家用电器的各个功能定义成对应的任务之后,可对各个任务进行具体数据定义,例如,可预先建立一个任务列表,该任务列表中包括该家用电器的各个功能对应的任务,并分别设置每个任务的时间片、运行标识信息以及初始化状态。
其中,在本发明的实施例中,该时间片可理解为该任务的任务调度间隔,即该任务每隔时间片的长度被调用一次,例如,以按键任务为例,定义该按键任务的时间片为10,单位为毫秒,则10毫秒调用一次该按键任务。
另外,在本发明的实施例中,该运行标识信息可表示该任务是否需要进行调度以被执行。作为一种示例,该运行标识信息可包括0和1,“0”可表示任务不需要被调度,“1”可表示任务需要被调度。
此外,在本发明的实施例中,上述初始化状态可表示在任务进行调度以被执行之前,是否需要第该任务进行初始化。可以理解,当该任务需要初始化时,可通过任务初始化函数对该任务进行初始化处理,例如,可将该任务的变量值恢复到最开始的设置值。
S103,获取各个任务的当前运行标识信息,并根据当前运行标识信息确定待调度的任务。
举例而言,以家用电器开始运行为例,在家用电器开始运行时,可先对该家用电器的控制芯片以及该家用电器所包含的各个功能所对应的任务模块进行初始化,在初始化之后,可扫描任务列表以获取该任务列表中的各个任务的当前运行标识信息,并根据该当前运行标识信息判断对应的任务是否需要被调度。例如,该当前运行标识信息为“0”,则可判定对应的任务不需要被调度;若该当当前运行标识信息为“1”,则可判定对应的任务需要被调度,即该任务为待调度的任务。
S104,通过调用函数调用待调度的任务,并执行待调度的任务。
具体地,在确定哪个或哪些任务需要被调度之后,可通过调用函数调用这些需要被调度的任务,以使得通过该调用函数调用该待调度的任务对应的任务处理函数进行处理,以实现该待调度的任务的执行。
需要说明的是,在本发明的实施例中,当待调度的任务执行完毕之后,可将该执行完毕的任务的运行标识信息进行更新,如将该任务的运行标识信息更新为“0”,并可通过清看门狗函数以防止家用电器的控制系统自动执行重启操作,之后,可继续判断该任务列表中是否还存在需要进行调度以被执行的任务,若存在则继续通过调用函数调度并执行该任务,直至该任务列表中的任务逐一被判断完成。
S105,每隔预设时间生成中断信号,并基于中断信号,根据时间片对各个任务的运行标识信息进行更新,并根据更新后的运行标识信息对各个任务进行调度。其中,在本发明的一个实施例中,该预设时间可为1毫秒。
作为一种示例,在判断任务列表中是否存在需要被调度的任务的过程中,可每1毫秒生成中断信号,并基于该中断信号,对任务列表中的各个任务进行计数,例如,每1毫秒发生中断,任务列表中的每个任务的时间片减一,当任务的计数变量变为预设阈值时,可对该任务的运行标识信息进行更新,如更新为“1”;又如,每1毫秒发生中断,任务列表中的每个任务的时间片加一,当任务的计数变量等于该时间片的设置值时,可对该任务的运行标识信息进行更新,如更新为“1”。之后,可根据更新后的运行标识信息判断各个任务是否需要进行调度以被执行。
优选地,在本发明的一个实施例中,基于中断信号,根据时间片对各个任务的运行标识信息进行更新,并根据更新后的运行标识信息对各个任务进行调度的具体实现过程可如下:基于中断信号调用中断函数,并通过中断函数对各个任务的时间片进行减一操作;如果各个任务中存在时间片被减为预设阈值的第一任务,则对第一任务的时间片进行重置,并对第一任务的运行标识信息进行更新;根据更新后的运行标识信息确定第一任务为待调度的任务,以实现对第一任务的调度。其中,在本发明的实施例中,上述预设阈值可为0。
更具体地,通过中断函数对任务列表中的各个任务进行计数,即对每个任务的时间片进行减一操作。在对家用电器的整个控制过程中,如果存在时间片被减为预设阈值(如0)的第一任务,则可将该第一任务的时间片进行重置,如,可将该第一任务的计数器重置为该第一任务的时间片所对应的值,并可将该第一任务的运行标识信息更新为“1”,以实现根据该运行标识信息可确定该第一任务为待调度的任务,以便完成对该第一任务的调度。
可以理解,上述步骤S105所要实现的是确定任务列表中哪些或哪个任务需要进行调度处理,即可通过中断函数对任务列表中的各个任务的时间片进行减一操作,当存在时间片被减为预设阈值的任务时,可更新该任务的运行标识信息,以实现对待调度的任务的确定。在中断处理结束时,步骤S103可根据任务列表中各个任务的当前运行标识信息来确定待调度的任务。
还可以理解,如果各个任务中不存在时间片被减为预设阈值的第一任务,则在中断处理的过程中,该任务列表中的各个任务的运行标识信息不进行更新,且各个任务的时间片不进行重置。
进一步地,在本发明的一个实施例中,当待调度的任务为多个时,通过调用函数调用待调度的任务的具体实现过程可包括:根据预设的优先级策略确定多个待调度的任务的调用优先级;根据调用优先级通过调用函数调用多个待调度的任务。其中,在本发明的实施例中,该预设的优先级策略可包括但不限于:时间片越小的任务的调用优先级越高;以及时间片相同的任务在任务列表中的位置越靠前,时间片相同的任务的调用优先级越高。
更具体地,当确定待调度的任务为多个时,即多个待调度的任务需要进行调度被执行时,可先根据预设的优先级策略对该多个待调度的任务进行调用优先级的排序,并根据排序结果通过调用函数依次调用该多个待调度的任务。例如,可按照时间片的大小来确定任务的调用优先级,如时间片越小的任务,调用优先级越高,当时间片相同时,可按照同一时间片的任务在任务列表中的位置来确定该任务的调用优先级,如在任务列表中的位置越靠前,任务的调用优先级越高,由此,通过简单的优先级划分基本可解决各个任务优先级的问题,无需太复杂的优先级处理算法即可达到确定多个待调度的任务之间的调用优先级的目的。
进一步地,在本发明的一个实施例中,该控制方法还可包括:预先设定全局变量,全局变量用于指示各个任务之间的通讯关系;通过全局变量向与待调度的任务有通讯关系的其他任务发送通信信号。
也就是说,在对家用电器的各个功能进行任务模块化处理时,为了在使得任务模块之间的耦合程度降到最低的同时,还需保证任务模块之间的通讯,可预先设定一个全局变量,在家用电器的运行过程中,可通过该全局变量进行任务之间的通讯。例如,假设全局变量中定义了:按键任务与显示任务之间存在通讯关系,如按键任务结束后需要向显示任务发送通信信号,以按键任务执行结束时需要向显示任务发送“开始”按键显示信号为例,则在按键任务执行结束时,可通过全局变量向显示任务发送“开始”按键显示信号。
综上所述,本发明实施例的基于时间片任务调度系统的家用电器控制方法,通过将家用电器中的每一个功能独立为一个单独的任务运行,各个任务之间通过全局变量进行通讯和同步,使得每个任务只处理一件事情、一个功能,每个任务的处理时间足够短,以免影响系统的实时性能。例如制水任务只处理根据净水机水位情况打开制水泵,按键只处理按键的扫描。任务之间的独立运行能够最大程度的保证家用电器的控制系统的稳定性以及维护性,例如,由于各任务间是独立调用处理的,耦合性很低,所以,在修改控制系统中的制水任务时,只会影响制水的处理,而不会影响按键等其他任务的处理。
由此,通过本发明实施例的基于时间片任务调度系统的家用电器控制方法来实现对家用电器的控制,使得整个控制过程所需要的系统资源十分少,只需要少量的代码程序(如一百来行代码)和很少的RAM(如一百多个字节的RAM)即可运行,既能提供软件系统的可扩展性、逻辑清晰、各任务模块独立运行等,又最大限度地降低芯片成本,例如,可在低成本的8位单片机上即可运行,减小产品成本。
根据本发明实施例的基于时间片任务调度系统的家用电器控制方法,通过预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,每隔预设时间产生中断,在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
与上述几种实施例提供的基于时间片任务调度系统的家用电器控制方法相对应,本发明的一种实施例还提供一种基于时间片任务调度系统的家用电器控制器,由于本发明实施例提供的基于时间片任务调度系统的家用电器控制器与上述几种实施例提供的基于时间片任务调度系统的家用电器控制方法相对应,因此在前述基于时间片任务调度系统的家用电器控制方法的实施方式也适用于本实施例提供的基于时间片任务调度系统的家用电器控制器,在本实施例中不再详细描述。图2是根据本发明一个实施例的基于时间片任务调度系统的家用电器控制器的结构框图。需要说明的是,在本发明的实施例中,该家用电器可包括但不限于净水器、饮水机、电热水器和燃气热水器等中的一种或多种。
如图2所示,该基于时间片任务调度系统的家用电器控制器可以包括:预先处理模块100、主循环模块200、任务调用模块300、中断信号生成模块400和任务调度模块500。
具体地,预先处理模块100可用于针对家用电器的各个功能,预先定义各个功能对应的任务,并针对各个任务,预先设置各个任务的时间片以及运行标识信息。
主循环模块200可用于获取各个任务的当前运行标识信息,并根据当前运行标识信息确定待调度的任务。
任务调用模块300可用于通过调用函数调用待调度的任务,并执行待调度的任务。
中断信号生成模块400可用于每隔预设时间生成中断信号。其中,在本发明的一个实施例中,该预设时间可为1毫秒。
任务调度模块500可用于基于中断信号,根据时间片对各个任务的运行标识信息进行更新,并根据更新后的运行标识信息对各个任务进行调度。
优选地,在本发明的一个实施例中,如图3所示,该任务调度模块500可包括:时间片计数单元510、运行标识信息更新单元520和任务调度单元530。
其中,时间片计数单元510可用于基于中断信号调用中断函数,并通过中断函数对各个任务的时间片进行减一操作。运行标识信息更新单元520可用于在各个任务中存在时间片被减为预设阈值的第一任务时,对第一任务的时间片进行重置,并对第一任务的运行标识信息进行更新。任务调度单元530可用于根据更新后的运行标识信息确定第一任务为待调度的任务,以实现对第一任务的调度。其中,在本发明的实施例中,上述预设阈值可为0。
进一步地,在本发明的一个实施例中,如图4所示,当待调度的任务为多个时,任务调用模块300可包括:调用优先级确定单元310和任务调用单元320。其中,调用优先级确定单元310可用于根据预设的优先级策略确定多个待调度的任务的调用优先级。任务调用单元320可用于根据调用优先级通过调用函数调用多个待调度的任务。其中,在本发明的实施例中,该预设的优先级策略可包括但不限于:时间片越小的任务的调用优先级越高;以及时间片相同的任务在任务列表中的位置越靠前,时间片相同的任务的调用优先级越高。由此,通过简单的优先级划分基本可解决各个任务优先级的问题,无需太复杂的优先级处理算法即可达到确定多个待调度的任务之间的调用优先级的目的。
进一步地,在本发明的一个实施例中,该预先处理模块100还可用于预先设定全局变量,全局变量用于指示各个任务之间的通讯关系。其中,在本发明的实施例中,如图5所示,该家用电器控制器还可包括:通信信号发送模块600。其中,通信信号发送模块600可用于通过全局变量向与待调度的任务有通讯关系的其他任务发送通信信号。由此,在使得任务模块之间的耦合程度降到最低的同时,还保证了任务模块之间的通讯。
根据本发明实施例的基于时间片任务调度系统的家用电器控制器,通过预先处理模块预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过主循环模块扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则任务调用模块通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,通过中断信号生成模块每隔预设时间产生中断,任务调度模块在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
为了实现上述实施例,本发明还提出了一种家用电器,该家用电器可包括本发明上述任一个实施例所述的基于时间片任务调度系统的家用电器控制器。其中,该家用电器可包括但不限于净水器、饮水机、电热水器和燃气热水器等中的一种或多种。
根据本发明实施例的家用电器,通过控制器中的预先处理模块预先对家用电器的各个功能进行任务模块化处理,并对各个任务进行时间片以及运行标识信息的设置,使得在家用电器的运行过程中,通过主循环模块扫描任务列表中各个任务的运行标识信息来判断该任务列表中是否存在待调度的任务,若存在,则任务调用模块通过调用函数调用该待调度的任务,并执行该待调度的任务,同时,通过中断信号生成模块每隔预设时间产生中断,任务调度模块在中断函数中对任务列表中的各个任务进行计数,以对任务列表中的各个任务的运行标识信息进行更新,以实现基于时间片来完成任务的调度的目的,使得整个控制过程基于顺序执行和操作系统之间,既能够保证具有高维护性、高移植性和扩展性等特点的同时,又保证具有芯片要求低、产品成本低的特点。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (15)
1.一种基于时间片任务调度系统的家用电器控制方法,其特征在于,包括以下步骤:
针对所述家用电器的各个功能,预先定义所述各个功能对应的任务;
针对各个任务,预先设置所述各个任务的时间片以及运行标识信息;
获取所述各个任务的当前运行标识信息,并根据所述当前运行标识信息确定待调度的任务;
通过调用函数调用所述待调度的任务,并执行所述待调度的任务;
每隔预设时间生成中断信号,并基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度。
2.如权利要求1所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,其中,所述预设时间为1毫秒。
3.如权利要求1或2所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,所述基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度,包括:
基于所述中断信号调用中断函数,并通过所述中断函数对所述各个任务的时间片进行减一操作;
如果所述各个任务中存在所述时间片被减为预设阈值的第一任务,则对所述第一任务的时间片进行重置,并对所述第一任务的运行标识信息进行更新;
根据更新后的所述运行标识信息确定所述第一任务为所述待调度的任务,以实现对所述第一任务的调度。
4.如权利要求1至3中任一项所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,当所述待调度的任务为多个时,所述通过调用函数调用所述待调度的任务,包括:
根据预设的优先级策略确定多个待调度的任务的调用优先级;
根据所述调用优先级通过所述调用函数调用所述多个待调度的任务。
5.如权利要求4所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,所述预设的优先级策略包括:
时间片越小的任务的调用优先级越高;以及
所述时间片相同的任务在任务列表中的位置越靠前,所述时间片相同的任务的调用优先级越高。
6.如权利要求1所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,还包括:
预先设定全局变量,所述全局变量用于指示所述各个任务之间的通讯关系;
通过所述全局变量向与所述待调度的任务有所述通讯关系的其他任务发送通信信号。
7.如权利要求1所述的基于时间片任务调度系统的家用电器控制方法,其特征在于,其中,所述家用电器包括净水器、饮水机、电热水器和燃气热水器中的一种或多种。
8.一种基于时间片任务调度系统的家用电器控制器,其特征在于,包括:
预先处理模块,用于针对所述家用电器的各个功能,预先定义所述各个功能对应的任务,并针对各个任务,预先设置所述各个任务的时间片以及运行标识信息;
主循环模块,用于获取所述各个任务的当前运行标识信息,并根据所述当前运行标识信息确定待调度的任务;
任务调用模块,用于通过调用函数调用所述待调度的任务,并执行所述待调度的任务;
中断信号生成模块,用于每隔预设时间生成中断信号;
任务调度模块,用于基于所述中断信号,根据所述时间片对所述各个任务的运行标识信息进行更新,并根据更新后的所述运行标识信息对所述各个任务进行调度。
9.如权利要求8所述的基于时间片任务调度系统的家用电器控制器,其特征在于,其中,所述预设时间为1毫秒。
10.如权利要求8或9所述的基于时间片任务调度系统的家用电器控制器,其特征在于,所述任务调度模块包括:
时间片计数单元,用于基于所述中断信号调用中断函数,并通过所述中断函数对所述各个任务的时间片进行减一操作;
运行标识信息更新单元,用于在所述各个任务中存在所述时间片被减为预设阈值的第一任务时,对所述第一任务的时间片进行重置,并对所述第一任务的运行标识信息进行更新;
任务调度单元,用于根据更新后的所述运行标识信息确定所述第一任务为所述待调度的任务,以实现对所述第一任务的调度。
11.如权利要求8至10中任一项所述的基于时间片任务调度系统的家用电器控制器,其特征在于,当所述待调度的任务为多个时,所述任务调用模块包括:
调用优先级确定单元,用于根据预设的优先级策略确定多个待调度的任务的调用优先级;
任务调用单元,用于根据所述调用优先级通过所述调用函数调用所述多个待调度的任务。
12.如权利要求11所述的基于时间片任务调度系统的家用电器控制器,其特征在于,所述预设的优先级策略包括:
时间片越小的任务的调用优先级越高;以及
所述时间片相同的任务在任务列表中的位置越靠前,所述时间片相同的任务的调用优先级越高。
13.如权利要求8所述的基于时间片任务调度系统的家用电器控制器,其特征在于,所述预先处理模块还用于预先设定全局变量,所述全局变量用于指示所述各个任务之间的通讯关系;其中,所述家用电器控制器还包括:
通信信号发送模块,用于通过所述全局变量向与所述待调度的任务有所述通讯关系的其他任务发送通信信号。
14.如权利要求8所述的基于时间片任务调度系统的家用电器控制器,其特征在于,其中,所述家用电器包括净水器、饮水机、电热水器和燃气热水器中的一种或多种。
15.一种家用电器,其特征在于,包括:如权利要求8至14中任一项所述的基于时间片任务调度系统的家用电器控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610749430.2A CN106354557A (zh) | 2016-08-29 | 2016-08-29 | 基于时间片任务调度系统的家电及其控制方法、控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610749430.2A CN106354557A (zh) | 2016-08-29 | 2016-08-29 | 基于时间片任务调度系统的家电及其控制方法、控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106354557A true CN106354557A (zh) | 2017-01-25 |
Family
ID=57855793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610749430.2A Pending CN106354557A (zh) | 2016-08-29 | 2016-08-29 | 基于时间片任务调度系统的家电及其控制方法、控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106354557A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107577528A (zh) * | 2017-09-01 | 2018-01-12 | 长沙小卡机器人科技有限公司 | 多任务序列并行运行的方法 |
CN109445939A (zh) * | 2018-10-19 | 2019-03-08 | 积成电子股份有限公司 | 一种基于主动出让机制的软实时调度内核的调度方法 |
CN111008072A (zh) * | 2019-12-25 | 2020-04-14 | 青梧桐有限责任公司 | 任务调度方法、装置、存储介质及电子设备 |
CN111027101A (zh) * | 2019-12-17 | 2020-04-17 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
CN111061248A (zh) * | 2019-12-12 | 2020-04-24 | 东风电驱动系统有限公司 | 一种基于时间片切片的任务调度系统及方法 |
CN112650573A (zh) * | 2020-12-31 | 2021-04-13 | 中国农业银行股份有限公司 | 一种任务调度方法和装置 |
CN113381668A (zh) * | 2021-07-21 | 2021-09-10 | 无锡台翔电子技术发展有限公司 | 用于电机控制器的控制方法、电机控制器及电动车用电机 |
CN114567625A (zh) * | 2022-03-01 | 2022-05-31 | 上海创远仪器技术股份有限公司 | 基于安卓Http服务的无线电监测设备控制处理系统、方法、装置、处理器及其存储介质 |
CN116680051A (zh) * | 2023-06-01 | 2023-09-01 | 深圳千岸科技股份有限公司 | 任务调度方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1409209A (zh) * | 2001-09-24 | 2003-04-09 | 深圳市中兴通讯股份有限公司上海第二研究所 | 一种多任务实时操作系统的实现方法 |
CN1794183A (zh) * | 2006-01-17 | 2006-06-28 | 浙江大学 | Java操作系统中实时任务调度的实现方法 |
CN1828541A (zh) * | 2006-04-07 | 2006-09-06 | 浙江大学 | Java操作系统中定时任务的实现方法 |
CN101901164A (zh) * | 2009-05-27 | 2010-12-01 | 北京金山软件有限公司 | 时间计划调度模块和方法 |
CN102043667A (zh) * | 2010-11-25 | 2011-05-04 | 深圳市科陆电子科技股份有限公司 | 一种嵌入式操作系统的任务调度方法 |
CN105677464A (zh) * | 2015-12-31 | 2016-06-15 | 江苏小牛电动科技有限公司 | 一种基于电动车中控系统的任务调度系统和方法 |
-
2016
- 2016-08-29 CN CN201610749430.2A patent/CN106354557A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1409209A (zh) * | 2001-09-24 | 2003-04-09 | 深圳市中兴通讯股份有限公司上海第二研究所 | 一种多任务实时操作系统的实现方法 |
CN1794183A (zh) * | 2006-01-17 | 2006-06-28 | 浙江大学 | Java操作系统中实时任务调度的实现方法 |
CN1828541A (zh) * | 2006-04-07 | 2006-09-06 | 浙江大学 | Java操作系统中定时任务的实现方法 |
CN101901164A (zh) * | 2009-05-27 | 2010-12-01 | 北京金山软件有限公司 | 时间计划调度模块和方法 |
CN102043667A (zh) * | 2010-11-25 | 2011-05-04 | 深圳市科陆电子科技股份有限公司 | 一种嵌入式操作系统的任务调度方法 |
CN105677464A (zh) * | 2015-12-31 | 2016-06-15 | 江苏小牛电动科技有限公司 | 一种基于电动车中控系统的任务调度系统和方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107577528B (zh) * | 2017-09-01 | 2020-09-08 | 长沙小卡机器人科技有限公司 | 多任务序列并行运行的方法 |
CN107577528A (zh) * | 2017-09-01 | 2018-01-12 | 长沙小卡机器人科技有限公司 | 多任务序列并行运行的方法 |
CN109445939A (zh) * | 2018-10-19 | 2019-03-08 | 积成电子股份有限公司 | 一种基于主动出让机制的软实时调度内核的调度方法 |
CN111061248A (zh) * | 2019-12-12 | 2020-04-24 | 东风电驱动系统有限公司 | 一种基于时间片切片的任务调度系统及方法 |
CN111027101B (zh) * | 2019-12-17 | 2021-11-12 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
CN111027101A (zh) * | 2019-12-17 | 2020-04-17 | 北京交大思诺科技股份有限公司 | 一种运行周期可灵活分配的安全计算机平台 |
CN111008072A (zh) * | 2019-12-25 | 2020-04-14 | 青梧桐有限责任公司 | 任务调度方法、装置、存储介质及电子设备 |
CN112650573A (zh) * | 2020-12-31 | 2021-04-13 | 中国农业银行股份有限公司 | 一种任务调度方法和装置 |
CN112650573B (zh) * | 2020-12-31 | 2024-04-12 | 中国农业银行股份有限公司 | 一种任务调度方法和装置 |
CN113381668A (zh) * | 2021-07-21 | 2021-09-10 | 无锡台翔电子技术发展有限公司 | 用于电机控制器的控制方法、电机控制器及电动车用电机 |
CN114567625A (zh) * | 2022-03-01 | 2022-05-31 | 上海创远仪器技术股份有限公司 | 基于安卓Http服务的无线电监测设备控制处理系统、方法、装置、处理器及其存储介质 |
CN116680051A (zh) * | 2023-06-01 | 2023-09-01 | 深圳千岸科技股份有限公司 | 任务调度方法、装置、设备及存储介质 |
CN116680051B (zh) * | 2023-06-01 | 2024-04-30 | 深圳千岸科技股份有限公司 | 任务调度方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106354557A (zh) | 基于时间片任务调度系统的家电及其控制方法、控制器 | |
CN105404525B (zh) | 管理计算机系统中的基本输入输出系统配置的方法及装置 | |
CN107276866A (zh) | 家电设备的配网方法、装置及家电设备 | |
CN104572141B (zh) | 车用电控单元ecu的引导程序的在线更新方法 | |
EP3502865A1 (en) | Household appliance and method for operating the household appliance | |
CN106931650B (zh) | 热水机控制方法和装置、热水机及控制系统 | |
CN109656782A (zh) | 可视化调度监控方法、装置及服务器 | |
CN104156234B (zh) | 启动多核处理器、bootloader大小端模式自适应的方法及装置 | |
CN109033540B (zh) | 一种芯片随机验证过程中的激励管理方法及系统 | |
CN103052923A (zh) | 安全控制装置及安全控制方法 | |
CN112308541B (zh) | 处理审批业务流程的方法、计算设备和计算机存储介质 | |
CN108978117A (zh) | 衣物处理装置的控制方法、装置和衣物处理装置 | |
CN110414582A (zh) | 一种模型训练方法、装置、计算设备及存储介质 | |
CN115033352A (zh) | 多核处理器任务调度方法、装置及设备、存储介质 | |
CN113863434B (zh) | 供水设备的供水控制方法和装置、存储介质及电子装置 | |
CN110413335A (zh) | 一种基于指纹的开机方法及装置 | |
US20180259924A1 (en) | Bus Control System For Home Appliance | |
US10169281B2 (en) | Switch system and operation method thereof | |
CN112000396A (zh) | 一种燃料电池系统测试控制方法、装置、设备及存储介质 | |
CN109084417A (zh) | 多联式空调的开机方法、系统、设备及介质 | |
CN116192759A (zh) | 数据传输量的调整方法、装置、电子设备及存储介质 | |
CN115934365A (zh) | 一种应用于cpu的任务调度耦合系统 | |
CN110163554A (zh) | 工作流的运行方法、装置、服务器和存储介质 | |
CN109254820A (zh) | 窗口关闭方法、装置、终端及计算机可读存储介质 | |
CN105808297B (zh) | 一种程序运行管理方法及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170125 |