在蓝牙Mesh网络中对多个待配网设备进行启动配置的方法与流程

文档序号:17695620发布日期:2019-05-17 21:29阅读:459来源:国知局
在蓝牙Mesh网络中对多个待配网设备进行启动配置的方法与流程

本发明涉及蓝牙mesh网络,更具体地,涉及一种用于在蓝牙mesh网络中对多个待配网设备进行启动配置的方法以及一种用于在蓝牙mesh网络中对多个待升级节点进行软件空中升级的方法。



背景技术:

在蓝牙mesh中,有一些需要所有设备参与的流程,比如,对于大批未配置入网的设备,需要统一启动配置入网流程配置入网,再比如,需要对大批已成为节点的设备进行软件空中升级等等。在此类场景中,会有一个中心节点或设备第一个发起对应的流程操作,比如用于通过手机开始对待配网设备进行启动配置,或对已入网设备进行空中软件升级。

在该场景下,流程的最开始阶段会集中在中心节点的周围一小圈范围内进行相关操作,而网络的其它设备或节点将处于空闲状态。这会造成中心节点周围数据包的大量聚集,从而导致信道拥挤,并且干扰严重,丢包现象也较为频繁;另一方面,离中心节点较远的设备或节点处于空闲等待状态,无法及时开始操作流程。

以下结合图1、2具体说明上述问题产生的过程及原因。如图1所示,图中所有的小圆圈代表一个个设备,它们在启动配置流程的场景下,表示等待启动配置入网的待配网设备,在等待软件空中升级的场景下,表示等待软件空中升级的入网设备。以启动配置过程为例,通常,所有设备安装完毕后,会对其进行同时上电操作,启动后设备开始发送“等待启动配置信标包(unprovisioneddevicebeacon)”。结合图2,这个信标包一般不会很频繁地发送,例如5秒发送一次,每次发送持续时间在1毫秒(ms)左右。在启动配置场景中,因为所有设备同时上电,因此它们基本上会同时发送等待启动配置信标包,5秒后又同时发送第二个包。考虑到蓝牙协议中会对每个广播包加上0至10ms的随机延迟(delay),因此所有设备启动后第一个包的发送时间集中在上电时间t0至t0+10ms之间,第二个包集中在t0+5s至t0+5s+10ms之间,以此类推。在图2所示的时间轴中,实心部分代表了空中“启动配置信标包”的集中发送时间。

在图1的网络图中,假设设备1是中心启动配置设备,它将首先扫描空中的等待配置入网设备。因为所有设备均同时上电,所以此时几乎所有设备会同时发送等待启动配置信标包。从通信角度讲,如果一个设备同时收到不同设备发送的数据包,一般会选择接收信号强度比较大的数据包。即,如果每个设备的发射功率相同,则距离越近的设备发出来的数据包的接收信号强度越大,因此越容易被本设备收到。

因为设备2、3、11、13相比其他设备离设备1比较近,设备1收到这几个设备发过来的“等待启动配置信标包”的接收信号强度大于其他设备发过来的“等待启动配置信标包”,所以大概率会优先处理这些设备的“等待启动配置信标包”,也就是会优先启动配置这几个设备。例如,图1中,设备1可选择设备2、3、11同时启动配置流程;设备2配置入网结束后,可以继续去找自己周围等待配置入网的设备。类似地,设备2可以选择例如周围的设备21、22、4同时启动配置流程。同理,设备3启动配置入网结束后,可以选择例如周围的设备31、32、33同时启动配置流程;设备4启动配置入网结束后,可以选择例如周围的设备41、42、43同时启动配置流程。应理解,图1中所示用实线和虚线表示的较大圆圈仅示意性地表示位于圆心处的设备与其他设备之间的相对距离关系,并不代表该设备的信号覆盖范围。

综上,最开始的时候,只有集中在设备1周围的设备先开始启动配置流程,后面才慢慢扩散到网络的周边设备;这会造成最开始阶段设备1的周围数据包特别多,干扰严重,而网络的周边设备一直空闲,信道也处于空闲状态。一方面,在空间上,这会造成局部区域中的信道过于拥挤,另外还有可能导致最先发起启动配置的设备1等位于中心处的几个节点去争抢附近的少数几个待配网设备,从而导致每个设备无法同时对多个待配网设备进行启动配置,然而距中心较远距离处却有大量设备在等待配网而无法对其配网。另一方面,在时间上,如参照图2中的上述时间轴分析,也会造成在某段时间(例如10ms)内有大量设备集中发送等待启动配置信标包,而其他时间(如剩余的5s-10ms)内没有设备发送等待启动配置信标包,从而造成启动配置设备只能在很短的时间窗口内寻找等待启动配置设备,如果找不到,则只能等待下一个周期(例如5s)。这样的拥堵问题在密集布置的网络中尤其严重。密集布置的网络例如可以是所有设备或大量设备都处在一跳范围内的网络。

因此,本领域中需要一种方案,其至少能够在蓝牙mesh网络中进行启动配置或空中软件升级时消除或缓解上述拥堵。应理解,上述所列举的技术问题仅作为示例而非对本发明的限制,本发明并不限于同时解决上述所有技术问题的技术方案。本发明的技术方案可以实施为解决上述或其他技术问题中的一个或多个。



技术实现要素:

本发明的目的,在于解决现有的蓝牙mesh网络中进行启动配置时或进行空中软件升级时,因数据包聚集而导致的局部信道拥挤,以及多个启动配置设备争抢少数待配网设备或多个升级服务设备节点争抢少数待升级节点的状态,从而使得设备无法即时完成启动配置或空中软件升级等问题。

在本发明的一个方面,提供了一种用于在蓝牙mesh网络中对多个待配网设备进行启动配置的方法,包括:(a)对多个待配网设备同时进行上电;(b)对该多个待配网设备中的每一个分配独立的随机时间延迟;(c)当该多个待配网设备中的每个待配网设备等待其对应的随机时间延迟所确定的时间时,该待配网设备发送首个等待启动配置信标包;及(d)多个待配网设备中的每一个继续发送等待启动配置信标包,以使得对应的启动配置设备能够对其进行启动配置操作。

优选地,所述随机时间延迟的长度为0ms到等待启动配置信标包的发送间隔时间之间。

优选地,在步骤(a)之后,该多个待配网设备中的每一个确定独立的随机发射功率;并且在步骤(c)和(d)中,该多个待配网设备中的每一个以其对应的随机发射功率发送等待启动配置信标包。所述随机发射功率优选地在-5dbm到该待配网设备的最大发射功率之间。

在本发明的第二个方面,还提供了一种用于在蓝牙mesh网络中对多个待升级节点进行软件空中升级的方法,包括:(a)升级服务设备节点发送升级指令到多个待升级节点;(b)当多个待升级节点中的每一个接收到升级指令且决定接受升级时,对该多个待升级节点中的每一个分配独立的随机时间延迟;(c)当该多个待升级节点中的每个待升级节点等待其对应的随机时间延迟所确定的时间时,该待升级节点发送首个等待空中升级信标包;及(d)多个待升级节点中的每一个继续发送等待空中升级信标包,以使得对应的升级服务设备节点能够对其进行软件空中升级操作。

优选地,所述随机时间延迟的长度为0ms到等待空中升级信标包的发送间隔时间之间。

优选地,在步骤(a)之后,该多个待升级节点中的每一个确定独立的随机发射功率;并且在步骤(c)和(d)中,该多个待升级节点中的每一个以其对应的随机发射功率发送等待空中升级信标包。所述随机发射功率优选地在-5dbm到该待配网设备的最大发射功率之间。

在本发明的第三个方面,还提供了一种用于在蓝牙mesh网络中对多个待配网设备进行启动配置的方法,包括:(a)对多个待配网设备同时进行上电;(b)该多个待配网设备中的每一个确定独立的随机发射功率;(c)该多个待配网设备中的每一个以其对应的随机发射功率发送首个等待启动配置信标包;及(d)多个待配网设备中的每一个以其对应的随机发射功率继续发送等待启动配置信标包,以使得对应的启动配置设备能够对其进行启动配置操作。

在本发明的第四个方面,还提供了一种用于在蓝牙mesh网络中对多个待升级节点进行软件空中升级的方法,其中所述方法包括:(a)升级服务设备节点发送升级指令到多个待升级节点;(b)当多个待升级节点中的每一个接收到升级指令且决定接受升级时,该多个待升级节点中的每一个确定独立的随机发射功率;(c)该待升级节点以其对应的随机发射功率发送首个等待空中升级信标包;及(d)多个待升级节点中的每一个以其对应的随机发射功率继续发送等待空中升级信标包,以使得对应的升级服务设备节点能够对其进行软件空中升级操作。

通过本发明,可有效减少在设备启动配置过程或软件空中升级初期因执行启动配置或软件空中升级的设备过于集中而导致的数据包拥堵、干扰大、数据包丢失严重等问题。

附图说明

图1示出现有技术中蓝牙mesh网络设备启动配置流程所处网络环境的示意图;

图2示出根据图1的设备发送等待启动配置信标包的时间轴示意图;

图3示出本发明的第一个实施方式的流程示意图;

图4示出本发明的第二个实施方式的流程示意图;

图5示出本发明的第三个实施方式的流程示意图;

图6示出本发明的第四个实施方式的流程示意图;及

图7示出本发明的同步随机发射功率的方法的流程图。

具体实施方式

以下将结合附图和具体的实施方式,对本发明的方法进行详细说明。应理解,附图所示以及下文所述的实施例仅仅是说明性的,而不作为对本发明的限制。

图3示出了本发明的用于在蓝牙mesh网络中对多个待配网设备进行启动配置的方法的第一个实施方式的流程示意图,具体地:

在步骤102中,对多个待配网设备同时进行上电。在步骤104中,对该多个待配网设备中的每一个分配独立的随机时间延迟。在步骤106中,当该多个待配网设备中的每个待配网设备等待其对应的随机时间延迟所确定的时间时,该待配网设备发送首个等待启动配置信标包。优选地,随机时间延迟的长度为0ms到等待启动配置信标包的发送间隔时间之间。在步骤108中,多个待配网设备中的每一个继续发送等待启动配置信标包,以使得对应的启动配置设备能够对其进行启动配置操作。

优选地,为更进一步平衡网络传输流量以缓解信道拥挤,在上述步骤102之后或之前,可为该多个待配网设备中的每一个确定独立的随机发射功率;并且在步骤106和108中,该多个待配网设备中的每一个以其对应的随机发射功率发送等待启动配置信标包。该随机发射功率优选地在-5dbm到该待配网设备的最大发射功率之间。

采用与第一个实施方式类似的解决方案,该发明的第二个实施方式提供了一种用于在蓝牙mesh网络中对多个待升级节点进行软件空中升级的方法。

具体地,如图4所示,在步骤202中,升级服务设备节点发送升级指令到多个待升级节点。在步骤204中,当多个待升级节点中的每一个接收到升级指令且决定接受升级时,对该多个待升级节点中的每一个分配独立的随机时间延迟。在步骤206中,当该多个待升级节点中的每个待升级节点等待其对应的随机时间延迟所确定的时间时,该待升级节点发送首个等待空中升级信标包。在步骤208中,多个待升级节点中的每一个继续发送等待空中升级信标包,以使得对应的升级服务设备节点能够对其进行软件空中升级操作。类似地,随机时间延迟的长度为0ms到等待启动配置信标包的发送间隔时间之间。应理解,等待启动配置信标包的发送间隔时间可以根据蓝牙mesh协议确定或按照应用需要确定。例如,该发送间隔时间可以是5秒,但本发明的实施并不限于此。并且优选地,为更进一步平衡网络传输流量以缓解信道拥挤,在步骤202之后或之前,可为该多个待配网设备中的每一个确定独立的随机发射功率;并且在步骤206和208中,该多个待配网设备中的每一个以其对应的随机发射功率发送等待启动配置信标包。该随机发射功率优选地在-5dbm到该待配网设备的最大发射功率之间。

采用上述第一个和第二个实施方式所描述的方法,设备在上电启动时,不需即时发送等待启动配置信标包,在收到升级指令后不需即时发送等待空中升级信标包,而是根据上述方法,等待一个随机时间延迟所确定的时间后,再发送数据包。以等待启动配置数据包为例,并结合图1,利用本发明,这样可以让不同的设备在不同的时间窗口发送信标包,对于图1所示的网络图来说,通过设置随机时间延迟,可能使得设备43在t0时间点发包,设备2在时间点t0+100ms发包,设备31在时间点t0+500ms发包,设备3在时间点t0+1s发包等等。由此,在时间点t0,因为只有设备43在发包,所以中心节点设备1只收到设备43在时间点t0发送过来的等待启动配置信标包,首先发起针对设备43的启动配置流程;在t0+100ms的时候,设备1收到了设备2发送过来的等待启动配置信标包,于是发起了针对设备2的启动配置流程;虽然设备2比设备43近,但在时间点t0设备2并没有发包,所以事件t0并没有设备可以和设备43争抢资源。

因此,通过添加随机时间延迟的方法,远端设备发出来的信标包可能比近的设备的信标包先被中心节点收到,从而优先开始启动配置的流程。这样可以避免所有设备扎堆发送等待启动配置信标包,从而导致靠近中心节点设备更容易获得优先启动配置的流程的资源竞争问题。

在本发明的第三个实施方式中,在对多个待配网设备进行启动配置时,未采用对待配网设备确定独立的随机时间延迟的手段,而是仅对待配网设备确定独立的随机发射功率。具体地,如图5所示,在步骤302中对多个待配网设备同时进行上电。在步骤304中,该多个待配网设备中的每一个确定独立的随机发射功率。在步骤306中,该多个待配网设备中的每一个以其对应的随机发射功率发送首个等待启动配置信标包。在步骤308中,多个待配网设备中的每一个以其对应的随机发射功率继续发送等待启动配置信标包,以使得对应的启动配置设备能够对其进行启动配置操作。

类似于本发明的第三个实施方式,本发明的第四个实施方式提供了另一种用于在蓝牙mesh网络中对多个待升级节点进行软件空中升级的方法。类似地,第四个实施方式中未采用对待配网设备确定独立的随机时间延迟的手段,而是仅对待升级节点确定独立的随机发射功率。具体地,如图6所示,在步骤402中,升级服务设备节点发送升级指令到多个待升级节点。在步骤404中,当多个待升级节点中的每一个接收到升级指令且决定接受升级时,该多个待升级节点中的每一个确定独立的随机发射功率。在步骤406中该待升级节点以其对应的随机发射功率发送首个等待空中升级信标包。在步骤408中,多个待升级节点中的每一个以其对应的随机发射功率继续发送等待空中升级信标包,以使得对应的升级服务设备节点能够对其进行软件空中升级操作。

单独地采用本发明的第三个或第四个实施方式所述的方案,也可优化启动配置和软件空中升级流程。例如,在启动配置过程中,假设所有设备在1dbm至10dbm之间选择一个随机值作为发射功率,那么不同设备的发射功率通常不同。假设设备2随机选择了1dbm作为发射功率,设备23随机选择了10dbm作为发射功率,即使设备2和设备23的等待启动配置信标包同时发送且设备2更近,但因设备23的发射功率更大,设备1收到设备23发送过来的信标包的接收信号强度可能反而强于设备2发送过来的信标包的强度,所以可能会选择更远的设备23启动配置流程,从而优化配置流程。作为一种优选的方案,可以在-5dbm到待配网设备的最大发射功率之间选择该随机发射功率,以增强发射功率随机化的效果。但本发明的实施并不局限于此。

在根据本发明的采用随机发射功率的方案中,可采取附加的技术手段以防止在启动配置设备与待配置设备之间或在升级服务设备节点与待升级节点之间,一方可以收到对方的数据包,但是另一方却收不到对方的数据包的情况。例如,若设备1使用发射功率10dbm,而设备2使用发射功率1dbm,且两者距离比较远,则10dbm的发射功率发射的信号可以到达对方,但是1dbm的发射功率发射的信号无法到达对方,从而会导致设备1发送的数据包设备2可以收到,而设备2发送的数据包设备1却无法收到。

对此,本发明还提供一种在两个设备之间同步随机发射功率的方法。这种方式中两个设备需要交互各自的发射功率,用来同步双方的发射功率。作为该同步随机发射功率的方法的一个非限制性示例,如图7所示,该方法开始于步骤502,在该步骤,两个设备中的每个设备在设置的发射功率范围内随机选择一个发射功率以开始通信。在步骤504,一个设备收到对方设备的请求包或响应包。在步骤506,该设备主动汇报自己的发射功率。在步骤508,判断在设定时间内是否收到对方汇报的发射功率。如果否,则在步骤510,停止或对方建立的通信。如果是,则在步骤512判断是否需要调整自己的发射功率。具体地,所以通过主动给对方汇报自己的发射功率,可以让较小发射功率的一方提高自己的发射功率到较高的发射功率。优选地,在实际操作中,可以按更优化的方式来决定是否改变自己的发射功率。例如虽然检测到对方的发射功率比自己大,但是实际发现自己发送的数据包对方也可以收到,或者对方发送的数据包的rssi足够大,从而确定不必调整自己的发射功率亦能正常完成通信。如果该设备在步骤512判断需要调整自己的发射功率,则在步骤514执行发射功率的调整,并在步骤516继续完成剩余的通信。

通过上述同步随机发射功率的方法,本发明中采用随机发射功率的方案可避免两个设备之一的随机发射功率过小而影响通信的情况。

综上,本发明的方法可减少设备启动配置过程中或者软件空中升级过程中执行启动配置或软件空中升级的设备过于集中而导致数据包拥堵的问题,并可优化设备配置或软件升级流程,从而提升了操作速度和效率。虽然出于本公开的目的已经描述了本发明各方面的各种实施例,但是不应理解为将本公开的教导限制于这些实施例。在一个具体实施例中公开的特征并不限于该实施例,而是可以和不同实施例中公开的特征进行组合。例如,在一个实施例中描述的根据本发明的方法的一个或多个特征和/或操作,亦可单独地、组合地或整体地应用于另一实施例中。此外,应理解,上文所述方法步骤可以顺序执行、并行执行、合并为更少步骤、拆分为更多步骤,以不同于所述方式组合和/或省略。本领域技术人员应理解,还存在可能的更多可选实施方式和变型,可以对上述方法步骤进行各种改变和修改,而不脱离由本发明权利要求所限定的范围。

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