节点装置和物联网通信子系统的制作方法

文档序号:11710093阅读:183来源:国知局
节点装置和物联网通信子系统的制作方法

本发明属于物联网领域,具体涉及一种低功耗节点装置和含有该节点装置的物联网通信子系统。



背景技术:

物联网作为新一代信息技术的重要组成部分,信息化时代的重要产物,已经被应用于智能家居、工厂智能监控等领域,为人们对各种智能设备进行远程监测、管理和控制提供了极大的便利。

物联网主要包含节点模块和网关设备两大部分。每个节点模块能够与一个或多个智能设备的信息采集器相连接,从而接收信息采集器发送来的运行数据信息,或者网关发送来的监控指令信息。网关设备一方面与节点模块基于预定通信规则相通信,并对所有的节点模块进行管理,另一方面则与远程监控设备实现通信,从而将节点模块发送来的运行数据信息上传给远程监控设备,或者将远程监控设备发送来的监控指令下发给相应的节点模块。

由于在上述通信过程中,节点模块对运行数据信息和监控指令信息的接收和转发都是周期性或者间歇性的,并不需要长时间持续运行,因此,为了节省电能,目前大多数的节点模块都被设置了休眠模式,在节点模块不需要工作的时候就使节点模块进入休眠模式,在该模式下节点模块中的大部分功能单元都是处于低功耗的带电状态,从而使整个节点模块的功耗大大降低;当节点模块需要工作时,则将其唤醒进入正常工作模式即可。

为了让节点模块能够被唤醒来维持正常的工作,制造商会在节点模块中预先设定好每个任务的唤醒时间,节点模块到了唤醒时间就被唤醒,从而执行相应的任务,然后执行完后,节点模块再进入低功耗的休眠模式。

然而,有的时候几个任务之间相隔时间很短,这样节点模块就要不断地唤醒和休眠,这样频繁地进行唤醒和休眠,不仅无法实现降低功耗的目的,反而还会增加功耗。

另外,节点模块在使用过程中,当需要增加新的任务时,通常是根据新任务的要求,将节点模块内的唤醒和休眠程序进行重新编写,增加新任务的过程比较麻烦和耗时。



技术实现要素:

本发明是为了解决上述问题而进行的,目的在于提供一种既可以实现低功耗又可以方便地添加任务的节点装置和物联网通信子系统。

<节点装置>

本发明提供了一种节点装置,其特征在于,包括:任务添加部、计算部、任务存储部、时间获取部、控制部、并发任务获取部、任务执行部以及更新部,其中,任务添加部基于循环次数和执行周期添加任务,计算部基于每个被添加的任务的循环次数和执行周期计算出相应的间隔时间,任务存储部对任务和相应的循环次数以及间隔时间进行对应存储,时间获取部用于获取当前时间,计算部在节点装置进入休眠模式之前基于任务存储部中存储的最小的间隔时间和当前时间计算出节点装置的下次唤醒时间,控制部基于下次唤醒时间控制节点装置唤醒,任务执行部在节点装置被唤醒后将最小的间隔时间所对应的任务作为第一任务进行执行,并发任务获取部基于预定规则从任务存储部中获取本次唤醒需并发执行的任务作为第二任务,预定规则为将与第一任务的间隔时间的差值在一定阈值以内的任务作为第二任务,任务执行部执行第二任务,更新部在节点装置进入休眠模式之前对任务存储部中存储的任务、循环次数以及间隔时间进行更新,在更新部进行更新后,任务存储部重新按照顺序进行排序。

在本发明提供的节点装置中,还可以具有这样的特征:任务存储部以链表的形式进行存储,每个任务和相对应的循环次数以及间隔时间被对应存储在一个链表中。

在本发明提供的节点装置中,还可以具有这样的特征:任务存储部将所有的任务按照间隔时间从小到大的顺序进行排序。

在本发明提供的节点装置中,还可以具有这样的特征:一定阈值为50至300ms范围内的任意值。

在本发明提供的节点装置中,还可以具有这样的特征:控制部在控制节点装置唤醒后,先控制任务执行部执行第一任务,然后控制并发任务获取部获取所有第二任务,再控制任务执行部执行第二任务,随后控制更新部进行更新,然后控制计算部计算出下次唤醒时间,最后控制节点装置进入休眠状态。

在本发明提供的节点装置中,还可以具有这样的特征:计算部计算出最小的间隔时间与当前时间之和作为下次唤醒时间。

在本发明提供的节点装置中,还可以具有这样的特征:更新部包括:次数更新单元,将任务存储部中存储的循环次数减一得到更新后的循环次数;间隔更新单元,基于任务的执行周期对任务存储部中对应存储的间隔时间进行更新;以及任务更新单元,将循环次数为零的任务从任务存储部中删除。

在本发明提供的节点装置中,还可以具有这样的特征,还包括:响应部,对突然发生并且需要立即执行的立即执行任务进行响应生成响应信号,其中,在节点装置处于休眠模式的情况下,控制部根据响应信号唤醒节点装置,并控制任务执行部将立即执行任务作为第一任务进行执行,然后依次控制并发任务获取部获取第二任务,任务执行部执行第二任务,更新部进行更新,计算部计算出下次唤醒时间,最后控制节点装置进入休眠模式。

<物联网通信子系统>

本发明还提供了一种物联网通信子系统,用于实现设置在监控现场的多个信息采集控制装置与监控终端之间进行通信,其特征在于,包括:至少一个节点装置,与至少一个信息采集控制装置相连接;网关设备,与所有的节点装置相通信连接,并对节点装置进行通信管理;以及云处理终端,分别与网关设备和监控终端相通信连接,其中,节点装置为具有上述任意一项特征的节点装置。

发明的作用与效果

根据本发明所涉及的节点装置和物联网通信子系统,因为任务添加部能够基于循环次数和执行周期添加任务,计算部能够基于每个任务的循环次数和执行周期计算出相应的间隔时间,并且任务存储部能够对任务和相应的循环次数以及间隔时间进行对应存储,并将所有的任务按照间隔时间从小到大的顺序排序,计算部在节点装置进入休眠模式之前基于任务存储部中存储的最小的间隔时间和当前时间计算出节点装置的下次唤醒时间,任务执行部在节点装置被唤醒后将最小的间隔时间所对应的任务作为第一任务进行执行,并发任务获取部基于预定规则从任务存储部中获取本次唤醒需并发执行的任务作为第二任务,任务执行部执行第二任务,更新部在节点装置进入休眠模式之前对任务存储部存储中的任务、循环次数以及间隔时间进行更新,并且在更新部进行更新后,任务存储部能够重新按照顺序进行排序。所以,本发明一方面能够非常方便地增加新的任务;另一方面能够将间隔时间在一定阈值以内的任务都合并在同一次唤醒过程中执行,并且被合并的任务之后的唤醒时间也没有被打乱,从而避免频繁进行唤醒和休眠,有效地减小功耗,切实实现低功耗和节能的目的。

附图说明

图1是本发明的实施例中物联网通信子系统的结构示意图;

图2是本发明的实施例中节点装置的结构框图;

图3是本发明的实施例中节点装置的流程图一;

图4是本发明的实施例中节点装置的流程图二;以及

图5是本发明的实施例中节点装置的流程图三。

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明的节点装置和物联网通信子系统作具体阐述。

<实施例>

图1是本发明的实施例中物联网通信子系统的结构示意图。

如图1所示,物联网通信子系统100一方面与设置在监控现场的多个信息采集控制装置200相连接,另一方面与监控终端300相通信连接,用于实现多个信息采集控制装置200与监控终端300之间进行信息通信,使信息采集控制装置200采集到的运行数据信息能够上传给监控终端300,让监控终端300获悉监控现场的运行情况,并且,使监控终端300能够将控制指令下发至信息采集控制装置200,从而对信息采集控制装置200的运行进行控制。

本实施例中,物联网通信子系统100包括四个节点装置110、一个网关120以及与网关120相通信连接的云处理终端130。

四个节点装置110分别与四个信息采集控制装置200对应连接,能够将这些信息采集控制装置采集到的各种运行数据信息汇聚到网关120中,并将网关120发送来的控制指令下发给各个信息采集控制装置200。每个节点装置110集成了符合wirelesshart协议标准射频收发器和微处理器,开始工作后,四个节点装置110之间可自动组成网络结构(即、节点通信网),并且基于预先设定的通信规则与网关120之间进行通信。

网关120一方面与所有的节点装置110相通信连接,从而对所有的节点装置110进行通信管理,并接收来自所有节点装置110的运行数据信息,进一步对接收到的运行数据信息进行协议转换;另一方面通过第一通信网络i与云处理终端130相通信连接,从而将转换后的运行数据信息发送至云处理终端130中。在本实施例中,第一通信网络i可以为wifi网络、2g通信网络、3g通信网络或以太网等通信网络。

云处理终端130一方面通过第一通信网络i接收网关120发送来的运行数据信息,并对该运行数据信息进行存储、分析等预先设定的处理。另一方面通过第二通信网络ii与监控终端300相通信连接,使得监控人员通过监控终端300就能够访问云处理终端130所接收到的运行数据信息,或者将监控指令下发给云处理终端130。在本实施例中,第二通信网络ii可以为wifi网络、2g通信网络、3g通信网络或以太网等通信网络。

在物联网通信子系统100,由于节点装置110既要能够进行多任务执行,又要能够增加新任务,同时还要避免节点装置110频繁地被唤醒和休眠,以达到低功耗和节电的要求,为此本实施例提供了如下结构的节点装置110:

图2是本发明的实施例中节点装置的结构框图。

如图2所示,节点装置110包括任务添加部1101、计算部1102、任务存储部1103、时间获取部1104、任务执行部1105、并发任务获取部1106、更新部1107、通信部1108、响应部1109、暂存部11010以及控制所有这些部分运行的控制部11011。

任务添加部1101基于循环次数和执行周期添加任务。

计算部1102基于每个被添加的任务的循环次数和执行周期计算出相应的间隔时间,该间隔时间指当前时间距离下次唤醒时间之间的时间间隔。

任务存储部1103对被添加的任务和相应的循环次数以及间隔时间进行对应存储,并将所有的任务按照间隔时间从小到大的顺序排序。本实施例中,任务存储部1103是以链表形式进行存储,每个任务和相对应的循环次数以及间隔时间被对应存储在一个链表中,间隔时间最小的任务存储在第一个链表中,间隔时间最大的任务存储在最后一个链表中。

时间获取部1104用于获取当前时间。

计算部1102还在节点装置110进入休眠模式之前基于任务存储部1103中存储的最小的间隔时间和当前时间计算出节点装置110的下次唤醒时间,即、基于第一个链表中存储的间隔时间和当前时间来计算下次唤醒时间。将第一个链表中存储的间隔时间记为第一间隔时间,下次唤醒时间=第一间隔时间+当前时间。

控制部11011能够基于下次唤醒时间控制节点装置110唤醒,使节点装置110进入工作模式。

任务执行部1105在节点装置110被唤醒进入工作模式后将第一个链表中存储的任务作为第一任务进行执行。

并发任务获取部1106基于预定规则从任务存储部1103中获取本次唤醒需并发执行的其它任务作为第二任务。这里,预定规则为将与第一任务的间隔时间的差值在一定阈值以内的任务作为第二任务,一定阈值为50至300ms范围内的任意值。本实施例中,阈值为100ms,并发任务获取部1106是从第二链表开始,按顺序比较其间隔时间与第一间隔时间的差值,当差值小于等于100ms,则将该间隔时间所对应的任务作为第二任务。

任务执行部1105在并发任务获取部1106获取到第二任务后,对该第二任务进行执行。

更新部1107在节点装置110进入休眠模式之前对任务存储部1103中每个链表存储的任务、循环次数以及间隔时间都进行更新。本实施例中,更新部1107包括次数更新单元1107a、间隔更新单元1107b以及任务更新单元1107c。

次数更新单元1107a用于对每个链表中的循环次数进行更新,更新后的循环次数=更新前的循环次数(即、原循环次数)-1。

间隔更新单元1107b基于任务的执行周期对每个链表中的间隔时间进行更新。本实施例中,第一任务被更新后的间隔时间=第一任务的执行周期,第二任务被更新后的间隔时间=第二任务的执行周期+第二任务被更新前的间隔时间-第一任务的原间隔时间,其它任务(未被执行的任务)被更新后的间隔时间=该任务被更新前的间隔时间-第一任务更新前的间隔时间。

任务更新单元1107c将更新后循环次数为零的任务从任务存储部1103中删除。

每一次,在更新部1107进行更新之后,节点装置110进入休眠模式之前,任务存储部1103重新按照间隔时间从小到大的顺序对链表进行排序。

通信部1108一方面与信息采集控制装置200相通信连接,接收信息采集控制装置200发送来的运行数据信息,并且将控制指令发送给信息采集控制装置200,另一方面与网关120相通信连接,将运行数据信息发送给网关120,并且接收网关120发送来的控制指令。

当节点装置110的某个操作按钮被人按动,或者节点装置110接收到发送来的控制指令等等,诸如此类突然发生并且需要立即执行的立即执行任务时,响应部1109会对立即执行任务进行响应,并生成响应信号。

在节点装置110处于工作模式的情况下,控制部11011根据响应信号控制任务执行部1105先对立即执行任务进行执行,然后继续执行其它未完成的任务。

在节点装置110处于休眠模式的情况下,控制部11011根据响应信号控制节点装置110唤醒,并控制任务执行部1105将立即执行任务作为第一任务进行执行,然后依次控制并发任务获取部1106获取第二任务,任务执行部1105执行第二任务,更新部1107进行更新,计算部1102计算出下次唤醒时间,最后控制节点装置110进入休眠模式。由于本次唤醒是将立即执行任务作为第一任务,任务存储部1103中不存在任何第一任务,只存在第二任务,在这种特殊情况下,更新部1107对各种时间的更新方式与上文描述有所区别:第二任务被更新后的间隔时间=第二任务的执行周期+上次休眠前计算部1102计算出的下次唤醒时间-本次实际唤醒时间,其它任务被更新后的间隔时间=该任务更新前的间隔时间+上次休眠前计算部1102计算出的下次唤醒时间-本次实际唤醒时间。

暂存部11010用于暂时存储节点装置110的各个部分之间以及节点装置110与信息采集控制装置200和网关120之间之间所交换的各种数据信息。

控制部11011存储有控制任务添加部1101、计算部1102、任务存储部1103、时间获取部1104、任务执行部1105、并发任务获取部1106、更新部1107、通信部1108、响应部1109以及暂存部11010运行的控制程序。

下面,就节点装置110的唤醒和休眠过程进行详细说明。

图3是本发明的实施例中节点装置的流程图一。

如图3所示,本实施例中,节点装置110添加任务的流程包括如下步骤:

步骤s1-1:

任务添加部1101基于循环次数和执行周期添加任务,然后进入步骤s1-2;

步骤s1-2:

计算部1102基于每个任务的循环次数和执行周期计算出相应的间隔时间,然后进入步骤s1-3;

步骤s1-3:

任务存储部1103对任务和相应的循环次数以及间隔时间进行对应存储,并将按照间隔时间从小到大的顺序排序,然后进入步骤s1-4;

步骤s1-4:

时间获取部1104获取当前时间,然后进入步骤s1-5;

步骤s1-5:

计算部1102计算下次唤醒时间=第一间隔时间+当前时间,然后进入结束状态。

至此,完成一次任务添加过程。

图4是本发明的实施例中节点装置的流程图二。

如图4所示,本实施例中,节点装置110在没有发生立即执行任务的正常情况下,唤醒和休眠过程的流程包括如下步骤:

步骤s2-1:

控制部11011基于下次唤醒时间控制节点装置110唤醒,使节点装置110进入工作模式,然后进入步骤s2-2;

步骤s2-2:

任务执行部1105将第一个链表中存储的任务作为第一任务进行执行,然后进入步骤s2-3;

步骤s2-3:

并发任务获取部1106基于预定规则从任务存储部1103中获取本次唤醒需并发执行的其它任务作为第二任务,然后进入步骤s2-4;

步骤s2-4:

任务执行部1105执行所有第二任务,然后进入步骤s2-5;

步骤s2-5:

更新部1107对任务存储部1103中每个链表存储的任务、循环次数以及间隔时间都进行更新,然后进入步骤s2-6;

步骤s2-6:

任务存储部1103重新按照间隔时间从小到大的顺序对链表进行排序,然后进入步骤s2-7;

步骤s2-7:

计算部1102计算出节点装置110的下次唤醒时间,然后进入步骤s2-8;

步骤s2-8:

控制部11011控制节点装置110进入休眠模式,然后进入步骤结束状态。

至此,完成一次唤醒和休眠过程。

图5是本发明的实施例中节点装置的流程图三。

如图5所示,本实施例中,在突然发生立即执行任务,并且节点装置110处于休眠模式的特殊情况下,节点装置110的工作流程包括如下步骤:

步骤s3-1:

响应部1109对立即执行任务进行响应生成响应信号,然后进入步骤s3-2;

步骤s3-2:

控制部11011根据响应信号控制节点装置110唤醒进入工作模式,然后进入步骤s3-3;

步骤s3-3:

任务执行部1105将立即执行任务作为第一任务进行执行,然后进入步骤s3-4;

步骤s3-4:

并发任务获取部1106基于预定规则从任务存储部1103中获取本次唤醒需并发执行的其它任务作为第二任务,然后进入步骤s3-5;

步骤s3-5:

任务执行部1105执行所有第二任务,然后进入步骤s3-6;

步骤s3-6:

更新部1107对任务存储部1103中每个链表存储的循环次数和任务进行更新,并对间隔时间按照特殊方式进行更新,然后进入步骤s3-7;

步骤s3-7:

任务存储部1103重新按照间隔时间从小到大的顺序对链表进行排序,然后进入步骤s3-8;

步骤s3-8:

计算部1102计算出节点装置110的下次唤醒时间,然后进入步骤s3-9;

步骤s3-9:

控制部11011控制节点装置110进入休眠模式,然后进入步骤结束状态。

实施例的作用与效果

根据本实施例所涉及的节点装置和物联网通信子系统,因为任务添加部能够基于循环次数和执行周期添加任务,计算部能够基于每个任务的循环次数和执行周期计算出相应的间隔时间,并且任务存储部能够对任务和相应的循环次数以及间隔时间进行对应存储,并将所有的任务按照间隔时间从小到大的顺序排序,计算部在节点装置进入休眠模式之前基于任务存储部中存储的最小的间隔时间和当前时间计算出节点装置的下次唤醒时间,任务执行部在节点装置被唤醒后将最小的间隔时间所对应的任务作为第一任务进行执行,并发任务获取部基于预定规则从任务存储部中获取本次唤醒需并发执行的任务作为第二任务,任务执行部执行第二任务,更新部在节点装置进入休眠模式之前对任务存储部存储中的任务、循环次数以及间隔时间进行更新。所以,本发明的方案,一方面能够非常方便地增加新的任务;另一方面能够将间隔时间在一定阈值以内的任务都合并在同一次唤醒过程中执行,从而避免频繁进行唤醒和休眠,有效地减小功耗,切实实现低功耗和节能的目的。

另外,由于响应部会对立即执行任务进行响应,并生成响应信号,控制部根据响应信号在节点装置处于休眠模式的情况下控制节点装置唤醒,并控制任务执行部将立即执行任务作为第一任务进行执行,然后依次控制并发任务获取部、任务执行部、更新部进行更新和计算部进行工作,最后控制节点装置进入休眠模式,因此,本实施例的节点装置能够在立即执行任务产生时及时唤醒并进行处理,还能够将与该立即执行任务的发生时间相近的任务也在这一次唤醒过程中一并处理,从而进一步减少了节点装置唤醒和休眠的次数,更加有效地降低功耗。

上述实施例为本发明的一种优选实施方式,并不用来限制本发明的保护范围。

在上述实施例中,是先执行第一任务,然后再获取和执行第二任务,本发明中,也可以在节点装置唤醒后,先获取第二任务,然后同时执行第一任务和第二任务。此外,还可以在节点装置休眠前,就获取第二任务,等到节点装置被唤醒后,就同时执行第一任务和第二任务。

另外,上述实施例中,在节点装置不是由于发生立即执行任务而被唤醒的情况下,第二任务被更新后的间隔时间=第二任务的执行周期+第二任务被更新前的间隔时间-第一任务的原间隔时间,这样可以保证第二任务虽然在本次唤醒过程中被提前执行,但在下一次执行时该任务的执行时间不会因此相应提前,而是能够按照正常周期所对应的时间被执行。为了更加精确,本发明中,第二任务被更新后的间隔时间=第二任务的执行周期+第二任务被更新前的间隔时间-第一任务的原间隔时间+本次唤醒时间-该第二任务实际被执行的时间,因为本次唤醒时间与第二任务实际被执行时间的差值非常小,可以忽略,因此,在实施例中没有计算该差值。

另外,在上述实施例中,更新部是在任务执行部执行完所有任务后进行更新的。本发明中,更新部也可以在任务执行部执行任务之前进行更新,在这种情况下,可以在更新前就将第一任务和第二任务先全部获取到,然后更新完后,任务执行部执行已经获取到的第一任务和第二任务即可。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1