一种基于BLE的数据共享方法技术

技术编号:12397337 阅读:85 留言:0更新日期:2015-11-26 03:24
本发明专利技术公开了一种基于BLE数据共享方法,将特定区域内的蓝牙设备蓝牙定时设置为主单元模式和从单元模式,作为主单元模式时将其存储的数据副本表共享给到周围正处于从单元模式的设备,而作为从单元模式的设备接收可与其连通的主单元模式的设备的数据副本表,将接收到数据与本机内存储的数据副本表合并,以备在下次切换为主模式时继续共享出去,达到数据共享的效果。本发明专利技术可通过接力的形式将数据转发到无法直接联系的设备,突破了原有蓝牙星形拓扑结构的网络物理信号覆盖范围的地域限制,也突破了其组网终端数量的限制,极大的拓宽了其应用范围。

【技术实现步骤摘要】

本专利技术涉及一种网络数据共享方法,特别涉及一种基于BLE的数据共享方法
技术介绍
现有的BLE (蓝牙低功耗)技术支持星形拓扑的一对多连接,即一个主设备可以与 多个从设备建立连接,图1是星形拓扑网络示意图,这种结构要求所有设备相对集中地分 布在同一个区域里,如果某个从设备与主设备之间由于距离变化等意外因素与主设备断开 接连,那么这个从设备就脱离了整个结构;主设备C2工作在主单元模式,其余从设备都工 作在从单元模式,有效信号覆盖范围C1,从设备只有位于有效信号覆盖范围Cl才可以与主 设备进行联系,超出主设备的有效信号覆盖范围Cl的从设备将与主设备失去联系,如果若 干从设备与主设备失去联系,那么这个结构就失去了意义,该网络无法保证所有设备数据 有效通讯。所以,在设备分布比较分散、设备位置经常变化的应用情景中,星形拓扑、以及多 数衍生形式的组网在实际应用中都存在很大的局限性,或无法满足某些应用场合,特别是 对于要求保障所有设备之间数据交互及时性和完整性的应用场合。
技术实现思路
针对以上缺陷,本专利技术目的在于如何解决现有星形拓扑网络对于网络内所有从设 备与主设备之间距离不能超出主设备信号覆盖范围的问题,如何提供一种新加入的设备只 要可以与原有已连通的任意一个设备连通,就可同所有设备实现相互数据共享的方法。 专利技术提供了一种基于BLE的数据共享方法,其特征在于所有待组网的蓝牙设备都 各自独立的按照以下步骤工作,蓝牙设备可在主单元模式和从单元模式之间切换: 步骤1. 1 :蓝牙设备开机初始; 步骤L 2 :初始化数据副本表; 步骤1. 3 :检测本机当前数据是否存在更新,如果有更新则将本蓝牙设备的数据 记录条更新到数据副本表,数据记录条至少包括时间戳、数据和设备标识; 步骤1. 4 :设置本机为主单元模式; 步骤1. 5 :检测周边可与本蓝牙设备建立连接的处于从单元模式的蓝牙设备; 步骤1. 6 :将本机上存储的数据副本表传输给各个已建立连接的处于从单元模式 的蓝牙设备; 步骤1. 7:设置超时等待时间Twait,设置本机为从单元模式; 步骤1. 8 :判定超时等待时间是否到,如超时时间到则跳转执行步骤1. 3 ;否则等 待被周边可与本蓝牙设备建立连接的处于主单元模式的蓝牙设备发现,如被发现,则建立 连接; 步骤1. 9 :接收建立连接的处于主单元模式的蓝牙设备的数据副本表,并存储为 接收数据副本表; 步骤1. 10 :读取步骤1. 9存储的数据副本表与本蓝牙设备中存在的数据副本表进 行合并,具体采用如下步骤进行数据合并: 步骤A. 1:读取接收数据副本表和本蓝牙设备数据副本表; 步骤A. 2:读取接收数据副本表的第一条数据记录条; 步骤A. 3:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存 在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据 副本表中,跳转执行A. 6 ;如果存在则将接收数据副本表对应的数据记录条覆盖到本蓝牙 设备数据副本表中该相同设备标识的数据记录条,跳转执行A. 6 ; 步骤A. 4:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存 在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据 副本表中,跳转执行A. 6 ;如果存在则执行A. 5 ; 步骤A. 5:比较这两个具有相同设备标识的数据记录条的时间戳,如果接收数据 副本表的数据记录条对应的时间戳不比本蓝牙设备的数据副本表的数据记录条对应的时 间戳新,则直接执行A. 6 ;否则将接收数据副本表对应的数据记录条覆盖到本蓝牙设备数 据副本表中该相同设备标识的数据记录条,执行A. 6 ; 步骤A. 6:判断接收数据副本表的是否还存在数据记录条,如果存在则读取接收 数据副本表的下一条数据记录条,跳转执行步骤A. 4 ;否则结束本次数据合并; 步骤L 11 :跳转执行步骤L 8。 所述的基于BLE的数据通讯方法,其特征在于所述的超时等待时间Twai t每次都 随机在5S-12S之间选取。 所述的基于BLE的数据共享方法,其特征在于所述的时间戳为本蓝牙设备产生数 据的具体时间或记录本蓝牙设备产生数据的版本标识;所述的设备标识为蓝牙设备ID,网 络中所有待组网的蓝牙设备的蓝牙设备ID具有惟一性。 所述的基于BLE的数据共享方法,其特征在于所述步骤1. 5中将检测到的当前时 刻处于从单元模式的蓝牙设备根据连接的信号强度,从强到弱进行排序,只取不超过10个 以内的处于从单元模式的蓝牙设备为有效连接,并动态根据信号强度的实时变化进行动态 调整。 所述的基于BLE的数据共享方法,其特征在于所述数据副本表采用动态链表方式 存储,每个数据记录条为一个数据节点,本蓝牙设备对应的数据记录条位于表头。 本专利技术可通过接力的形式将数据转发到无法直接联系的设备,突破了原有蓝牙星 形拓扑结构的网络物理信号覆盖范围的地域限制,也突破了其组网终端数量的限制,极大 的拓宽了其应用范围。【附图说明】 图1是星形拓扑网络示意图; 图2是本专利技术拓扑网络示意图; 图3是BLE的数据共享Tl时刻连接图; 图4是BLE的数据共享T2时刻连接图; 图5是BLE的数据共享T3时刻连接图; 图6是数据副本合并流程图。【具体实施方式】 下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于 本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本专利技术保护的范围。 图2是本专利技术拓扑网络示意图;只要满足新加入的设备与原有设备只要可以保证 至少一个设备连通,就可实现该设备与所有设备进行数据共享。也就是说其网络有效覆盖 范围不是由哪一个设备来决定的,而是所有可设备的有效覆盖范围的和。 图3是BLE的数据共享Tl时刻连接图;图4是BLE的数据共享T2时刻连接图;图 5是BLE的数据共享T3时刻连接图; 假设一共有待组网蓝牙设备从设备1到设备9,括号标注"从"的表示当前工作在 从单元模式,括号标注"主"的表示当前工作在主单元模式。 Tl 时刻: Tl时刻设备1、设备9和设备5工作在主单元工作模式,区域11内的范围为设备 1的有效覆盖范围;区域51内的范围为设备5的有效覆盖范围,区域91内的范围为设备9 的有效覆盖范围。 设备1工作在主单元工作模式,检测周边可与设备1建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备2、设备3、设备4、设备6和设备9,其中设备9 工作在主单元模式,被排除在外;将设备1上存储的数据副本表传输给各个已建立连接的 处于从单元模式的蓝牙设备,这里为设备2、设备3、设备4和设备6。 设备5工作在主单元工作模式,检测周边可与设备5建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到都设备2、设备4、设备6和设备7 ;将设备5上存储的 数据副本表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备4、设备6、 设备7和设备8。 设备9工作在主单元工作模式,检测周边可与设备9建立连接的处于从单元模式 的蓝牙设备;在有效范围内一本文档来自技高网...

【技术保护点】
一种基于BLE的数据共享方法,其特征在于所有待组网的蓝牙设备都各自独立的按照以下步骤工作,蓝牙设备可在主单元模式和从单元模式之间切换:步骤1.1:蓝牙设备开机初始;步骤1.2:初始化数据副本表;步骤1.3:检测本机当前数据是否存在更新,如果有更新则将本蓝牙设备的数据记录条更新到数据副本表,数据记录条至少包括时间戳、数据和设备标识;步骤1.4:设置本机为主单元模式;步骤1.5:检测周边可与本蓝牙设备建立连接的处于从单元模式的蓝牙设备;步骤1.6:分别与周围处于从单元模式的蓝牙设备建立连接并发送最新的数据副本表;步骤1.7:设置超时等待时间Twait,设置本机为从单元模式;步骤1.8:判定超时等待时间是否到,如超时时间到则跳转执行步骤1.3;否则等待被周边可与本蓝牙设备建立连接的处于主单元模式的蓝牙设备发现,如被发现,则建立连接;步骤1.9:接收建立连接的处于主单元模式的蓝牙设备的数据副本表,并存储为接收数据副本表;步骤1.10:读取步骤1.9存储的数据副本表与本蓝牙设备中存在的数据副本表进行合并,具体采用如下步骤进行数据合并:步骤A.1:读取接收数据副本表和本蓝牙设备数据副本表;步骤A.2:读取接收数据副本表的第一条数据记录条;步骤A.3:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据副本表中,跳转执行A.6;如果存在则将接收数据副本表对应的数据记录条覆盖到本蓝牙设备数据副本表中该相同设备标识的数据记录条,跳转执行A.6;步骤A.4:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据副本表中,跳转执行A.6;如果存在则执行A.5;步骤A.5:比较这两个具有相同设备标识的数据记录条的时间戳,如果接收数据副本表的数据记录条对应的时间戳不比本蓝牙设备的数据副本表的数据记录条对应的时间戳新,则直接执行A.6;否则将接收数据副本表对应的数据记录条覆盖到本蓝牙设备数据副本表中该相同设备标识的数据记录条,执行A.6;步骤A.6:判断接收数据副本表的是否还存在数据记录条,如果存在则读取接收数据副本表的下一条数据记录条,跳转执行步骤A.4;否则结束本次数据合并;步骤1.11:跳转执行步骤1.8。...

【技术特征摘要】

【专利技术属性】
技术研发人员:王小禹
申请(专利权)人:深圳市嘀嗒互动科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1