网关控制方法及智能网关与流程

文档序号:15845338发布日期:2018-11-07 08:56阅读:479来源:国知局
网关控制方法及智能网关与流程

本发明涉及网关技术领域,具体地涉及一种网关控制方法及智能网关。

背景技术

随着物联网的发展,可接入设备逐渐增加,在物联网中智能网关扮演着及其重要的角色,在智能网关上实现控制策略使得智能网关变得更加智能,目前市场上也有各种控制策略的实现。

如何让网关边缘计算的策略响应更迅速,且能够囊括更复杂的控制策略是目前业界的研究方向。



技术实现要素:

本发明实施例的目的是提供一种网关控制方法及智能网关,用以至少解决现有技术中网关边缘计算迟钝以及所支持的控制策略单一的技术问题。

为了实现上述目的,本发明实施例提供一种网关控制方法,包括:获取策略配置信息,其中所述策略配置信息包括策略决策、策略条件和策略动作信息;获取与所述网关联动的设备的设备信息;判断所述设备信息是否满足所述策略条件;当所述设备信息满足所述策略条件时,基于所述策略决策判断所联动的设备是否需要被触发执行所述策略动作信息所指示的动作。

本发明实施例另一方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请上述的网关控制方法。

本发明实施例还一方面提供一种智能网关,用于执行本申请上述的网关控制方法。

通过上述技术方案,使得网关能够基于所获取的策略配置信息来控制设备动作,在策略条件被满足时能够基于策略决策来联动控制设备,能够让智能网关更加满足场景定制化的需求和更快的响应速度,并还能实现更复杂的网关控制策略。

本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:

图1是本发明一实施例的网关控制方法的系统架构示意图;

图2是本发明一实施例的应用于网关的网关控制方法的流程图。

具体实施方式

以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。

如图1所示,本发明一实施例的网关控制方法的架构,该系统架构中包括终端10、服务器20和网关30,可以理解的是该终端10的类型在此应不加以限定,其可以是电脑、手机等。具体的,可以是终端10接受用户的用户操作,终端10生成相应的操作指令,并将该操作指令发送至服务器20以在服务器20处生成策略配置信息,服务器20发送策略配置信息至网关30,然后网关30能够基于所接收到的策略配置信息实施网关控制操作。由此,使得智能网关的功能更加灵活,能够针对不同场景所设置的策略配置信息而实施丰富的网关控制策略,支持网关满足个性化的用户需求。

如图2所示,本发明一实施例的应用于网关的网关控制方法的流程图,包括:

s21、获取策略配置信息,其中该策略配置信息包括策略决策、策略条件和策略动作信息。

关于策略配置信息的获取方式,其在此应不作限定,例如可以通过直接与用户交互,或与终端交互等方式来实现的。具体的,其可以是通过用户操作终端的特定应用程序(例如app)的用户界面,以在该用户终端生成操作指令,并将该操作指令发送至服务器以被识别从而生成相对应的策略配置信息。

s22、获取与网关联动的设备的设备信息。

作为示例,网关可以与多个联网设备连接,这些设备在与网关联动通信的过程中可以向网关上传设备信息。

s23、判断该设备信息是否满足该策略条件。

s24、当该设备信息满足该策略条件时,基于策略决策判断所联动的设备是否需要被触发执行所述策略动作信息所指示的动作。

在本实施例中,策略应用在无策略条件触发时,策略应用程序处于休眠状态,不占用任何总线的带宽;以及,设备数据直接在网关内部处理,不上报到服务器再进行处理,实现了边缘化计算的智能网关的优秀功能。

由于在策略配置信息中包括策略决策、策略条件和策略动作信息,使得网关可以依据设备信息判断策略条件,并依据策略决策来控制执行策略动作信息所指示的动作,例如使能或关停设备等。另外,该策略动作信息可以是用于指示针对所联动设备的动作属性值,其中该动作属性值可以是包括以下中的一者或多者:动作类型、动作延时、设备端口号和动作强度值;由此,可以选定设备端口号所对应的设备执行动作强度值所对应的动作类型的动作,以及在延时条件下的执行等等。

在一些应用场景下,用户希望就算设备信息满足了策略条件,也不希望调用网关执行相应的操作,此时可以是在策略配置信息中通过相应的设定来实现的。作为示例,可以是在策略配置信息中包括策略头部,该策略头部包括策略标识和策略状态,由网关所控制的动作可以是包括:判断策略状态是指示策略激活状态还是策略非激活状态;以及当策略状态指示策略非激活状态,基于所述策略决策确定所联动的设备不需要被触发执行动作,此时即使策略条件满足时,策略决定也不会触发执行相应的网关动作。

更优选的,还可以在策略头部中设置触发次数阈值,以控制网关被触发的次数。具体的,网关动作的触发判断可以是通过统计所联动的设备已经被触发的次数,并判断所统计的次数是否超过触发次数阈值,并当超过所述触发次数阈值时,基于策略决策确定所联动的设备不需要被触发执行动作。

在网关的一些自动化控制过程中,为了实现周期性判断,可以是在策略条件中设置用于指示针对设备信息执行判断的周期策略周期。

由于网关所连接的设备可以是多个,为了实现多个设备之间的控制的关联性,可以是在网关处的设置有多个策略配置信息,并且该多个策略配置信息可以是相互关联的。具体的,可以是该方法还包括:判断该多条策略配置信息中是否存在第一策略配置信息中的策略动作信息与第二策略配置信息中的策略条件相匹配;若相匹配,则基于策略决策判断所联动的设备是否需要被触发执行第一策略配置信息和第二策略配置信息中的策略动作信息所指示的动作。由此,可以调动第一策略配置信息和第二策略配置信息的组合。

1策略配置信息的结构

策略配置信息可以被分为四个部分:策略头部、策略决策逻辑、策略触发条件和策略执行动作:

1.1策略头部

策略头部主要包含一些策略主要信息。

1.2策略决策

策略决策为策略控制的核心部分,主要承担负责策略的算数运算和逻辑判断。

作为策略的核心部分,复杂的策略控制经常会涉及很复杂的逻辑决策设置,为了提升策略的可设计性,在此并未采用常用的嵌入式设备开发语言——c语言。考虑到lua脚本语言具有轻巧、高效、占用内存小、弱语言的特性,策略决策部分采用lua语言设计,对用户提供了一个main函数的接口,用户可通过在main函数里面用lua脚本语言自定义变量、自定义函数等一系列lua脚本的语法来自由设计策略的决策逻辑;同时考虑到系统的安全性,限定了用户的权限,屏蔽了用户对系统的读写和lua的系统调用。

1.3策略条件

策略条件囊括日常生活使用到的定时、周期、触发;在定时条件中,引入了时间掩码和星期,让定时策略设置更加灵活。

1.4策略动作

为了让策略设置更为简洁,策略动作支持单个设备的同时,还扩展了设备分组以及场景的支持;同时,策略动作还可支持对策略自身进行动作,这使得策略之间可以进行交互和操作,极大的增强了策略的功能性和灵活性;此外,策略还支持延时动作,丰富策略的动作特性(如可以利用延时动作开关灯来使灯关线性变化,这样用一个策略就可以实现日出和日落的模拟)。

在网关运行策略时,由于策略工作于网关内部,在数据的源头对数据进行判断处理,不用上报到平台服务器,减少数据传输的消耗,使策略响应更为快速。策略和网关内部应用之间通信采用物联网领域常用的mqtt协议,在考虑到网关往往会汇聚大量的数据,策略部分设计为监听式,在无策略动作条件触发时,策略处于休眠状态,不占据通讯总线,只在策略被触发时,才会对指定动作目标发出对应的动作。

2策略触发流程

2.1用户自行设计好策略的头部信息、触发条件、决策判断和执行动作,可通过app和平台服务器下发至网关,网关策略会保存在本地数据库中,以供用户后续对策略的增删查改,此外用户可随时更改策略的激活状态,甚至还可以设置策略生效次数。

2.2由于设备信息均会上报到网关,策略基于网关内部的mqtt总线监听设备上报到网关的数据,进行本地处理。

2.3策略条件被触发,采用多线程的方式去处理策略,避免多个策略同时触发时,丢失对其他策略的处理;在设计策略时可能会需要很多条件成立才能决策策略的动作是否执行,甚至策略条件中可能会涉及某个设备的状态,此时策略会自动就行运算并去收集其他未知但必须的条件,以作出正确的策略决策结果

2.4策略结果包含执行动作和不执行动作两类,若为不执行设置动作,则策略会继续恢复监听模式,等待被触发,若为执行动作,则会查询策略体中的动作部分,判断动作目标是单个设备还是某个分组,或者是某个场景甚至可能是另外一个策略,随后判断动作延迟多少时间进行执行,最后做出正确的动作;当动作目标是策略时,就会形成组合策略,会让一个个简单的策略组合起来实现很复杂的策略控制逻辑,实现了策略的模块化。

2.5策略针对离线设备会向给定的用户接口函数main推送特殊字符”null”来告知用户,用户如果在乎设备离线肯能导致的误动作,可以根据是否为null,在策略决策里面对其进行处理。

以一个模拟农业大棚自然灯关来描述策略一方面的简单应用实例,在一策略中头部trig设置为1,表示只执行一次,state为1表示策略被使能(trig==1,策略执行一次之后state会自动设置为0,用户不需处理),code,serial分别为数据包类型、数据包编号,ct为策略创建时间;cond中#表示星期几的掩码,type表示条件类型,ep表示同一个设备不同的端口;act表示动作,type表示动作类型,delay表示延时,bri、val分别表示设置亮度和其值;exp是策略决策的用lua描述的一个函数(此处只做了简单的比较,里面可支持用户定义新的函数变量,以及算数和逻辑运算),整个策略实现的效果就是在cond指定的时间开始执行(生效一次),每隔3600s将灯亮度提高20直到40为止,用户可以将时间设置更小实现更精确的灯关线性(或非线性)变化来模拟阳光变化。

优选的,用户可设计trig=0,表示生效无限次数,cond时间设置为#-#-#-08-11-11-#,实现每天8点11分11秒启动该策略,当然也可以配合周期策略,让周期条件,来实现同样的效果。

在另外的一些应用场景中中,可以实现网关中不同策略之间的联动,以及分组和条件设备离线问题的处理。具体的,可以在此策略配置信息中cond设置了两个设备,”cmd”指明了设备判断属性即airtemp(空气温度);在策略决策exp用lua描述,由于每个设备涉及实际值和比较值(cond里面val设置),所以此处会向main入口函数推送4个参数,a表示实际值,b表示比较值,整个策略实现的效果是两个传感器采集空气温度值,然后计算平均值,且离线传感器(传感器出现故障)不能参与平均值计算,若两个传感器都离线,则不执行策略,若计算平均值结果小于200则执行策略;策略动作是:延时30s把分组组号为5的所有设备开关打开(不同类型的设备也可以分成一个组),并在策略执行时立即(延时设置为0)去让策略号为101的策略使能,此时策略101开始进行侦听并判断,若满足策略执行条件则会去执行策略101的动作。可以理解的是,在此实施例的描述中是使能策略,让不生效(睡眠)的策略生效,同理也可以让生效的策略进入不生效(睡眠)模式;此外,这里只展示了分组控制,同理也可实现场景的控制。

本发明实施例一方面还提供一种智能网关,其分别用于执行本申请上述的网关控制认证方法的步骤,其具体的技术方案的细节和效果可以参照上文方法实施例的描述,在此便不赘述。

本发明实施例另一方面还提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请上述的网关控制认证方法的步骤,其具体的技术方案的细节和效果可以参照上文方法实施例的描述,在此便不赘述。

以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。

另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。

本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。

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