掌桥专利:专业的专利平台
掌桥专利
首页

一种基于蓝牙广播的组网方法、装置及系统

文献发布时间:2024-04-18 20:02:40


一种基于蓝牙广播的组网方法、装置及系统

技术领域

本发明涉及一种基于蓝牙广播的组网方法,同时也涉及相应的组网装置,还涉及包括该组网装置的系统,属于蓝牙通信技术领域。

背景技术

目前,蓝牙技术被广泛应用在智能可穿戴、无线语音传输、短距离文件传输等领域。然而,蓝牙技术采用点对点的数据传输方式,其通信范围在10~100米,1个蓝牙主设备只能与7个蓝牙从设备连接,并采用轮询的方式与7个从设备进行通信,构成一个蓝牙微网。这种组网方式严重地限制了组网的设备个数和通信距离,同时轮询的方式也导致数据通信效率较低。因此,严重制约了蓝牙技术在物联网、智能家居等领域的应用。

蓝牙Mesh是一项基于蓝牙4.0协议的无线网格网络,是一种可以实现大规模组网,同时又不必依赖网关,可以直接使用手机控制的技术方案,在智能照明、工业互联网、智慧城市等领域具有应用优势。但是,蓝牙Mesh存在单个设备配网时间长、网络冗余多、响应速度慢,以及蓝牙Mesh本身开发难度较大,接入成本较高的问题。

在专利号为ZL 201410798265.0的中国发明专利中,公开了一种多个蓝牙设备组网的方法,其通过广播/扫描白名单配置可以突破蓝牙主设备连接从设备的数量限制,拓展了蓝牙组网的设备规模,并且通过数据转发方式,扩展了蓝牙组网通信的规模、距离限制。但在蓝牙主设备中添加白名单需要终端设备与每一个蓝牙模组进行连接,操作过于繁琐,效率较低。

发明内容

本发明所要解决的首要技术问题在于提供一种基于蓝牙广播的组网方法。

本发明所要解决的另一技术问题在于提供一种基于蓝牙广播的组网装置。

本发明所要解决的又一技术问题在于提供一种基于上述方法实现蓝牙组网的系统。

为实现上述技术目的,本发明采用以下的技术方案:

根据本发明实施例的第一方面,提供一种基于蓝牙广播的组网方法,包括如下步骤:

S1:在蓝牙模组中存储配置信息;

S2:蓝牙模组打开接收窗口,并持续处于扫描侦听状态,以侦听来自空中的广播包;

S3:终端设备发送广播包;

S4:蓝牙模组接收广播包,并根据约定的密钥对广播包进行解密;

S5:解密后,解析广播类型、厂商ID,判断是否为约定的广播类型、厂商ID,若是则继续读取数据,若否则丢弃该广播包;

S12:根据广播包中TTL的数值对广播包进行转发;

S13:组网工作结束,蓝牙模组保持侦听状态。

其中较优地,配置信息包括加密方式、广播类型、厂商ID、操作码内容。

其中较优地,在蓝牙模组出厂时,直接配置加密方式、广播类型、厂商ID和操作码内容。

其中较优地,广播包中包括:广播类型、厂商ID、终端设备的地址、蓝牙模组组号、包序号、TTL、操作码、数据。

其中较优地,当TTL大于0时,则蓝牙模组将广播包中的TTL数值减1,并更新TTL值,然后转发该广播包;若TTL等于0,则不转发该广播包。

其中较优地,当TTL大于0时,TTL的数值为1~5,且TTL为整数。

其中较优地,在S5之后、S12之前,包括如下步骤:

S6:检查广播包的包序号,判断其是否与本地记录的包序号一致;若是,则忽略该广播包,进入步骤S13;若否,则将本地记录的包序号更新为广播包的包序号,进入步骤S7;

S7:判断广播包内的操作码是否为配网操作码;若是,则进入步骤S8;若否,则进入步骤S10;

S8:判断广播包中的终端设备的地址、蓝牙模组组号是否已存在于本地地址列表;若是,则忽略该广播包,进入步骤S13;若否,则进入步骤S9;

S9:蓝牙模组将终端设备的地址、蓝牙模组组号写入存储器,并通过物理反馈的方式向用户反馈配网完成;

S10:蓝牙模组判断是否已经完成配网;若是,则表示已经完成配网,进入步骤S11;若否,则表示没有完成配网,忽略该广播包,进入步骤S13;

S11:蓝牙模组执行步骤S7中的操作码,响应操作码对应的操作,并将响应完成后的设备状态写入存储器。

根据本发明实施例的第二方面,提供一种基于蓝牙广播的组网装置,包括蓝牙模组,所述蓝牙模组包括天线、滤波单元、基带单元、主控芯片,用于实现前述的组网方法。

根据本发明实施例的第三方面,提供一种实现蓝牙组网的系统,所述系统包括前述的组网装置,用于通过上述组网方法实现组网。

与现有技术相比较,本发明可以基于蓝牙广播实现一个简易安全的可控局域网络,能够实现批量控制、单独控制、一键加入网络和删除网络节点,实现了对蓝牙模组的远距离批量控制,不仅方便用户,而且有效节约组网成本。

附图说明

图1为本发明实施例中,基于蓝牙广播的组网方法流程图;

图2为本发明实施例中,广播包的构造示意图;

图3为本发明实施例中,基于蓝牙广播的组网装置的示意图。

具体实施方式

下面结合附图和具体实施例对本发明的技术内容进行详细具体的说明。

如图1所示,本发明的第一实施例公开了一种基于蓝牙广播的组网方法,包括以下步骤:

S1:在蓝牙模组中存储配置信息。

其中,配置信息包括加密方式、广播类型、厂商ID、操作码内容。

可选的,广播类型设定为0xFF。

可选的,加密方式为异或加密,具体方法如下:

终端设备和蓝牙模组约定一个密钥(key),终端设备将需要发送的数据和密钥顺序进行异或,直至把所有需要发送的数据加密完成。蓝牙模组接收到数据后以相同的密钥对数据进行解密。

其中较优地,密钥的字节数大于1,并且为整数。

其中,在蓝牙模组出厂时,直接配置加密方式、广播类型、厂商ID和操作码内容,其约定的目的在于在蓝牙模组接收广播消息时,只对符合其广播类型、厂商ID约定的广播包进行处理,其余广播包均忽略不处理,并且在处理过程中按照约定的加密方式、操作码内容执行工作。

S2:蓝牙模组打开接收窗口,并持续处于扫描侦听状态,以侦听来自空中的广播包。

其中,如图2所示,广播包中包括:广播类型、厂商ID、终端设备的地址、蓝牙模组组号、包序号、TTL、操作码、数据。

其中,TTL为转发次数。

S3:终端设备发送广播包。

其中,终端设备的按钮与约定的操作码一一对应,例如:配网按钮对应配网操作码、开灯按钮对应开灯操作码。

此步骤使得终端设备仅需按下对应按钮,便使得蓝牙模组自动根据已经约定的操作码执行对应的工作,即实现一键控制。其中,一键控制的内容根据具体设备而定,本发明不受其限制。

S4:蓝牙模组接收广播包,并根据约定的密钥对广播包进行解密。

本发明实施例中通过数据加密使得明文数据不会直接暴露在空中,相比于现有技术大幅提高了广播包的安全性。

S5:解密后,解析广播类型、厂商ID,判断是否为约定的广播类型、厂商ID。

若是,则进入步骤S6;若否,则忽略该广播包,进入步骤S13。

在现有技术中,蓝牙模组是通过添加白名单的方式加入网络。而在终端设备中添加白名单需要终端设备与每一个蓝牙模组进行连接,例如有100个蓝牙模组,则终端设备需要逐一与蓝牙模组进行连接,即重复操作100次,才能将100个蓝牙模组全部加入网络。本发明实施例是通过验证存储在广播包内的配置信息的方式组建蓝牙网络,只要存储在广播包内的配置信息与蓝牙模组出厂时配置的信息一致便可建立连接,即只需要终端设备一次发送多个广播包,就可以把所有符合配置信息的蓝牙模组加入网络,其效率是现有技术的N倍(N为需要连接的蓝牙模组数量)。

并且,现有技术中的白名单数量会因为终端设备的RAM(随机访问存储器)资源而存在个数的限制,所以现有的蓝牙网络中不可能同时存在无限多个蓝牙模组。本发明实施例通过验证配置信息的方式组建蓝牙网络,不需要考虑终端设备的RAM资源,所以同时连接的蓝牙模组个数不存在上限。

S6:检查广播包的包序号,判断其是否与本地记录的包序号一致。

若是,则忽略该广播包,进入步骤S13;若否,则将本地记录的包序号更新为广播包的包序号,进入步骤S7。

其中,如图3所示,本地记录的内容储存在蓝牙模组的Flash存储器中,该Flash存储器包含两个存储区域,即区域1、区域2,其中区域1存储终端设备的地址、蓝牙模组组号、广播包的包序号;区域2存储蓝牙模组所在的具体的设备状态

其中,本地记录的包序号为该蓝牙模组已经接收且执行过的广播包的包序号。

S7:判断广播包内的操作码是否为配网操作码。

若是,则进入步骤S8;若否,则进入步骤S10。

S8:判断广播包中的终端设备的地址、蓝牙模组组号是否已存在于本地地址列表。

若是,则忽略该广播包,进入步骤S13;若否,则进入步骤S9。

S9:蓝牙模组将终端设备的地址、蓝牙模组组号写入Flash存储器的区域1中,并通过物理反馈的方式向用户反馈配网完成,进入步骤S13。

其中,物理反馈的方式包括:灯光闪烁、鸣笛、振动等多种形式,本发明不受此限制。

S10:蓝牙模组判断是否已经完成配网。

其中,已经完成配网的判断方法为蓝牙模组验证Flash存储器区域1中已经写入的终端设备的地址、蓝牙模组组号与该广播包中的终端设备的地址、蓝牙模组组号是否一致。

若是,则表示已经完成配网,进入步骤S11;若否,则表示没有完成配网,忽略该广播包,进入步骤S13。

S11:蓝牙模组执行步骤S7中的操作码,响应操作码对应的操作,并将响应完成后的设备状态写入Flash存储器区域2中,进入步骤S12。

S12:判断广播包中TTL的数值。

若TTL>0,则将TTL数值减1,并更新TTL值,然后转发该广播包,进入步骤S12;若TTL=0,则不转发该广播包,进入步骤S12。

其中较优地,为避免空中广播包过多导致网络拥挤、冗沉、延时高等问题,当TTL设定为大于0时,本发明实施例中建议0<TTL≤5,且TTL为整数。

现有技术中蓝牙广播的传输距离为10~100米,即在蓝牙模组不转发广播包的情景下,终端设备对蓝牙模组的可控范围为10~100米。而本发明实施例在广播包中增加了TTL,蓝牙模组通过对TTL数值的判断进而确定是否执行转发操作。当TTL>0,即蓝牙模组将广播包进行转发时,转发的广播包可被其他蓝牙模组接收响应的范围就变成了以该蓝牙模组为中心的方圆100米距离,依此类推,即实现了利用对蓝牙模组的远距离批量控制扩大了控制范围,由此节约人工成本。当TTL=0,即蓝牙模组不转发广播包,则为终端设备对蓝牙模组的单独控制。

例如,TTL设定为5,终端设备发送广播包被与其相距100米的第一个蓝牙模组接收,第一个蓝牙模组将广播包内容执行完毕后,将TTL数值减1并转发广播包,转发的广播包被与其相距100米的第二个蓝牙模组接收...依此类推,直到TTL减为0,即第六个蓝牙模组接收到广播包并执行其内容,此时终端设备与第六个蓝牙模组间的距离为600米,即终端设备对蓝牙模组的可控范围为600米,远大于上文中的100米。

S13:组网工作结束,蓝牙模组保持侦听状态。

如图3所示,本发明的第二实施例公开了一种基于蓝牙广播的组网装置(即蓝牙模组)。该组网装置包括天线、滤波单元、基带单元、主控芯片,用于实施上述实施例所提供的基于蓝牙广播的组网方法。

另外,本发明的第三实施例公开了一种实现蓝牙组网的系统,所述系统包括图3所示的组网装置,用于通过上述基于蓝牙广播的组网方法实现组网。

需要说明的是,上述多个实施例只是举例,各个实施例的技术方案之间可以进行组合,均在本发明的保护范围内。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

上面对本发明提供的基于蓝牙广播的组网方法、装置及系统进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质内容的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。

技术分类

06120116586484