一种基于ble的数据共享方法

文档序号:9381623阅读:490来源:国知局
一种基于ble的数据共享方法
【技术领域】
[0001] 本发明涉及一种网络数据共享方法,特别涉及一种基于BLE的数据共享方法。
【背景技术】
[0002] 现有的BLE (蓝牙低功耗)技术支持星形拓扑的一对多连接,即一个主设备可以与 多个从设备建立连接,图1是星形拓扑网络示意图,这种结构要求所有设备相对集中地分 布在同一个区域里,如果某个从设备与主设备之间由于距离变化等意外因素与主设备断开 接连,那么这个从设备就脱离了整个结构;主设备C2工作在主单元模式,其余从设备都工 作在从单元模式,有效信号覆盖范围C1,从设备只有位于有效信号覆盖范围Cl才可以与主 设备进行联系,超出主设备的有效信号覆盖范围Cl的从设备将与主设备失去联系,如果若 干从设备与主设备失去联系,那么这个结构就失去了意义,该网络无法保证所有设备数据 有效通讯。所以,在设备分布比较分散、设备位置经常变化的应用情景中,星形拓扑、以及多 数衍生形式的组网在实际应用中都存在很大的局限性,或无法满足某些应用场合,特别是 对于要求保障所有设备之间数据交互及时性和完整性的应用场合。

【发明内容】

[0003] 针对以上缺陷,本发明目的在于如何解决现有星形拓扑网络对于网络内所有从设 备与主设备之间距离不能超出主设备信号覆盖范围的问题,如何提供一种新加入的设备只 要可以与原有已连通的任意一个设备连通,就可同所有设备实现相互数据共享的方法。
[0004] 发明提供了一种基于BLE的数据共享方法,其特征在于所有待组网的蓝牙设备都 各自独立的按照以下步骤工作,蓝牙设备可在主单元模式和从单元模式之间切换:
[0005] 步骤1. 1 :蓝牙设备开机初始;
[0006] 步骤L 2 :初始化数据副本表;
[0007] 步骤1. 3 :检测本机当前数据是否存在更新,如果有更新则将本蓝牙设备的数据 记录条更新到数据副本表,数据记录条至少包括时间戳、数据和设备标识;
[0008] 步骤1. 4 :设置本机为主单元模式;
[0009] 步骤1. 5 :检测周边可与本蓝牙设备建立连接的处于从单元模式的蓝牙设备;
[0010] 步骤1. 6 :将本机上存储的数据副本表传输给各个已建立连接的处于从单元模式 的蓝牙设备;
[0011] 步骤1. 7:设置超时等待时间Twait,设置本机为从单元模式;
[0012] 步骤1. 8 :判定超时等待时间是否到,如超时时间到则跳转执行步骤1. 3 ;否则等 待被周边可与本蓝牙设备建立连接的处于主单元模式的蓝牙设备发现,如被发现,则建立 连接;
[0013] 步骤1. 9 :接收建立连接的处于主单元模式的蓝牙设备的数据副本表,并存储为 接收数据副本表;
[0014] 步骤1. 10 :读取步骤1. 9存储的数据副本表与本蓝牙设备中存在的数据副本表进 行合并,具体采用如下步骤进行数据合并:
[0015] 步骤A. 1:读取接收数据副本表和本蓝牙设备数据副本表;
[0016] 步骤A. 2:读取接收数据副本表的第一条数据记录条;
[0017] 步骤A. 3:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存 在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据 副本表中,跳转执行A. 6 ;如果存在则将接收数据副本表对应的数据记录条覆盖到本蓝牙 设备数据副本表中该相同设备标识的数据记录条,跳转执行A. 6 ;
[0018] 步骤A. 4:提取数据记录条的设备标识,检索本蓝牙设备数据副本表,判定是否存 在相同设备标识的数据记录条,如果不存在,直接将该数据记录条加入到本蓝牙设备数据 副本表中,跳转执行A. 6 ;如果存在则执行A. 5 ;
[0019] 步骤A. 5:比较这两个具有相同设备标识的数据记录条的时间戳,如果接收数据 副本表的数据记录条对应的时间戳不比本蓝牙设备的数据副本表的数据记录条对应的时 间戳新,则直接执行A. 6 ;否则将接收数据副本表对应的数据记录条覆盖到本蓝牙设备数 据副本表中该相同设备标识的数据记录条,执行A. 6 ;
[0020] 步骤A. 6:判断接收数据副本表的是否还存在数据记录条,如果存在则读取接收 数据副本表的下一条数据记录条,跳转执行步骤A. 4 ;否则结束本次数据合并;
[0021] 步骤L 11 :跳转执行步骤L 8。
[0022] 所述的基于BLE的数据通讯方法,其特征在于所述的超时等待时间Twai t每次都 随机在5S-12S之间选取。
[0023] 所述的基于BLE的数据共享方法,其特征在于所述的时间戳为本蓝牙设备产生数 据的具体时间或记录本蓝牙设备产生数据的版本标识;所述的设备标识为蓝牙设备ID,网 络中所有待组网的蓝牙设备的蓝牙设备ID具有惟一性。
[0024] 所述的基于BLE的数据共享方法,其特征在于所述步骤1. 5中将检测到的当前时 刻处于从单元模式的蓝牙设备根据连接的信号强度,从强到弱进行排序,只取不超过10个 以内的处于从单元模式的蓝牙设备为有效连接,并动态根据信号强度的实时变化进行动态 调整。
[0025] 所述的基于BLE的数据共享方法,其特征在于所述数据副本表采用动态链表方式 存储,每个数据记录条为一个数据节点,本蓝牙设备对应的数据记录条位于表头。
[0026] 本发明可通过接力的形式将数据转发到无法直接联系的设备,突破了原有蓝牙星 形拓扑结构的网络物理信号覆盖范围的地域限制,也突破了其组网终端数量的限制,极大 的拓宽了其应用范围。
【附图说明】
[0027] 图1是星形拓扑网络示意图;
[0028] 图2是本发明拓扑网络示意图;
[0029] 图3是BLE的数据共享Tl时刻连接图;
[0030] 图4是BLE的数据共享T2时刻连接图;
[0031 ] 图5是BLE的数据共享T3时刻连接图;
[0032] 图6是数据副本合并流程图。
【具体实施方式】
[0033] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0034] 图2是本发明拓扑网络示意图;只要满足新加入的设备与原有设备只要可以保证 至少一个设备连通,就可实现该设备与所有设备进行数据共享。也就是说其网络有效覆盖 范围不是由哪一个设备来决定的,而是所有可设备的有效覆盖范围的和。
[0035] 图3是BLE的数据共享Tl时刻连接图;图4是BLE的数据共享T2时刻连接图;图 5是BLE的数据共享T3时刻连接图;
[0036] 假设一共有待组网蓝牙设备从设备1到设备9,括号标注"从"的表示当前工作在 从单元模式,括号标注"主"的表示当前工作在主单元模式。
[0037] Tl 时刻:
[0038] Tl时刻设备1、设备9和设备5工作在主单元工作模式,区域11内的范围为设备 1的有效覆盖范围;区域51内的范围为设备5的有效覆盖范围,区域91内的范围为设备9 的有效覆盖范围。
[0039] 设备1工作在主单元工作模式,检测周边可与设备1建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备2、设备3、设备4、设备6和设备9,其中设备9 工作在主单元模式,被排除在外;将设备1上存储的数据副本表传输给各个已建立连接的 处于从单元模式的蓝牙设备,这里为设备2、设备3、设备4和设备6。
[0040] 设备5工作在主单元工作模式,检测周边可与设备5建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到都设备2、设备4、设备6和设备7 ;将设备5上存储的 数据副本表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备4、设备6、 设备7和设备8。
[0041] 设备9工作在主单元工作模式,检测周边可与设备9建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备1、设备2和设备6,其中设备1工作在主单元模 式,被排除在外;将设备9上存储的数据副本表传输给各个已建立连接的处于从单元模式 的蓝牙设备,这里为设备2和设备6。
[0042] 当前时刻工作在从单兀工作模式有设备2、设备3、设备4、设备6、设备7和设备9, 这些设备就分别接收与其建立连接的设备的数据副本表,并与本设备存储的设数据副本表 进行数据合并。
[0043] T2 时刻:
[0044] T2时刻设备2、设备4和设备6工作在主单元工作模式,区域22内的范围为设备 2的有效覆盖范围;区域42内的范围为设备4的有效覆盖范围,区域62内的范围为设备6 的有效覆盖范围。
[0045] 设备2工作在主单元工作模式,检测周边可与设备2建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备1、设备3和设备9 ;将设备2上存储的数据副本 表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备1、设备3和设备9。
[0046] 设备4工作在主单元工作模式,检测周边可与设备4建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到都设备1、设备3和设备5 ;将设备4上存储的数据副 本表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备1、设备3和设备5。
[0047] 设备6工作在主单元工作模式,检测周边可与设备6建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备1、设备5、设备7和设备9 ;将设备6上存储的 数据副本表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备1、设备5、 设备7和设备9。
[0048] 其中单前时刻设备8也处于从单元工作,但其与任意一个当前处于主设备模式的 设备都没有建立联系。
[0049] 当前时刻工作在从单兀工作模式有设备1、设备5、设备7和设备9,这些设备就 分别接收与其建立连接的设备的数据副本表,并与本设备存储的设数据副本表进行数据合 并。
[0050] T3 时刻:
[0051] T3时刻设备3、设备5和设备7工作在主单元工作模式,区域33内的范围为设备 3的有效覆盖范围;区域53内的范围为设备5的有效覆盖范围,区域73内的范围为设备7 的有效覆盖范围。
[0052] 设备3工作在主单元工作模式,检测周边可与设备3建立连接的处于从单元模式 的蓝牙设备;在有效范围内一共检测到设备1、设备2和设备4 ;将设备3上存储的数据副本 表传输给各个已建立连接的处于从单元模式的蓝牙设备,这里为设备1、设备2和设备4。
[0053] 设备5工作在主单元工作模
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1