一种低功耗蓝牙多连接方法、装置和系统与流程

文档序号:33366277发布日期:2023-03-07 22:52阅读:74来源:国知局
一种低功耗蓝牙多连接方法、装置和系统与流程

1.本技术实施例涉及无线通信领域,尤其涉及一种低功耗蓝牙多连接方法、装置和系统。


背景技术:

2.低功耗蓝牙(bluetooth low energy,ble)是一种个人局域网技术,可以进行功耗极低的短距离无线通信。蓝牙连接过程中确立主从关系,从设备通过广播数据包的方式被发现,主设备扫描广播信号启动连接。
3.连接双方建立低功耗蓝牙连接时,将建立该连接的时间确定连接的锚点,在以该锚点为起点,以连接周期(tinterval)为时间间隔顺次截取的任意一个时间段上,连接双方在时间段的起始时刻收发数据,并在连接周期对应的时间段结束之前完成数据收发。
4.相关技术中,当一个主设备与多个从设备进行多连接时,需要通过复杂计算以安排各个连接的时序,避免各个连接在时间上相互冲突。当需要支持的连接数量比较多的时候,为多个从设备对应的连接分配时间片的效率很低。


技术实现要素:

5.本技术实施例提供了一种低功耗蓝牙多连接方法、装置和系统,可以节省为多个从设备对应的连接分配时间片的时间,提升低功耗蓝牙多连接的配置效率。
6.为达到上述目的,本技术实施例的技术方案是这样实现的:
7.第一方面,本技术实施例提供一种低功耗蓝牙多连接方法,包括:
8.主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定所述链路中各个第一目标链路获取第一时间片的第一循环顺序;所述连接参数包括第一基准连接周期和第一事件周期;各所述第一目标链路的连接周期为所述第一基准连接周期,且任意两个所述第一目标链路的起始时刻的间隔是所述第一基准连接周期的整数倍;每个所述第一时间片对应一个所述第一目标链路;所述第一时间片为所述主设备建立的第一个所述第一目标链路的起始时刻起,以所述第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一所述第一周期时间段的起点开始截取的长度为所述第一事件周期的时间段;
9.若所述主设备监测到任一所述第一目标链路按所述第一循环顺序应获取所述第一时间片,则向与所述任一所述第一目标链路对应的第一从设备发送数据,以使所述从设备与所述主设备进行数据传输。
10.本技术实施例提供的低功耗蓝牙多连接方法,主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链路中各个第一目标链路获取第一时间片的第一循环顺序;连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;若主设备监测到任一第一目标链路按第一循环顺序应获取第一时间片,则向与任一第一目标链路对应的第一从设备发送数据,以使从
设备与主设备进行数据传输。该方法,部分或全部的链路的连接间隔相同,且链路的起始时刻的间隔是连接间隔的整数倍,从而实现多个连接共享锚点和时间片,可以显著降低低功耗蓝牙多连接的实现难度,节省为多个从设备对应的连接分配时间片的时间,提升低功耗蓝牙多连接的配置效率。
11.第二方面,本技术实施例还提供了一种低功耗蓝牙多连接装置,包括:
12.第一连接单元,所述第一连接单元用于通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定所述链路中各个第一目标链路获取第一时间片的第一循环顺序;所述连接参数包括第一基准连接周期和第一事件周期;各所述第一目标链路的连接周期为所述第一基准连接周期,且任意两个所述第一目标链路的起始时刻的间隔是所述第一基准连接周期的整数倍;每个所述第一时间片对应一个所述第一目标链路;所述第一时间片为建立的第一个所述第一目标链路的起始时刻起,以所述第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一所述第一周期时间段的起点开始截取的长度为所述第一事件周期的时间段;
13.第一数据发送单元,所述数据发送单元用于若监测到任一所述第一目标链路按所述第一循环顺序应获取所述第一时间片,则向与所述任一所述第一目标链路对应的第一从设备发送数据,以使所述从设备与所述低功耗蓝牙多连接装置进行数据传输。
14.第三方面,本技术实施例还提供了一种低功耗蓝牙多连接系统,包括主设备和多个从设备,所述主设备包括处理器和存储器;
15.所述存储器,用于存储所述主设备运行时所使用的数据或程序代码;
16.所述处理器,用于通过连接参数,基于蓝牙与多个所述从设备建立链路连接,并确定所述链路中各个第一目标链路获取第一时间片的第一循环顺序;所述连接参数包括第一基准连接周期和第一事件周期;各所述第一目标链路的连接周期为所述第一基准连接周期,且任意两个所述第一目标链路的起始时刻的间隔是所述第一基准连接周期的整数倍;每个所述第一时间片对应一个所述第一目标链路;所述第一时间片为所述主设备建立的第一个所述第一目标链路的起始时刻起,以所述第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一所述第一周期时间段的起点开始截取的长度为所述第一事件周期的时间段;
17.若监测到任一所述第一目标链路按所述第一循环顺序应获取所述第一时间片,则向与所述任一所述第一目标链路对应的第一从设备发送数据,以使所述从设备与所述主设备进行数据传输。
18.第二方面至第三方面中任意一种实现方式所带来的技术效果可参见第一方面中对应的实现方式所带来的技术效果,此处不再赘述。
附图说明
19.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
20.图1为相关技术的低功耗蓝牙多连接的实现方式的示意图;
21.图2为本技术实施例的一种应用场景的示意图;
22.图3为本技术实施例提供的一种低功耗蓝牙多连接方法的流程图;
23.图4为本技术实施例提供的一种低功耗蓝牙多连接的实现方式的示意图;
24.图5为本技术实施例提供的另一种低功耗蓝牙多连接的实现方式的示意图;
25.图6为本技术实施例提供的另一种低功耗蓝牙多连接方法的流程图;
26.图7为本技术实施例提供的一种满足高实时性的低功耗蓝牙多连接的实现方式的示意图;
27.图8为本技术实施例提供的一种低功耗蓝牙多连接装置的结构示意图;
28.图9为本技术实施例提供的另一种低功耗蓝牙多连接装置的结构示意图;
29.图10为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
30.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地详细描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
31.需要说明的是,本技术的文件中涉及的术语“包括”和“具有”以及它们的变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
32.下面对文中出现的一些词语进行解释:
33.(1)、低功耗蓝牙技术(low energy technology,ble):低功耗蓝牙技术是蓝牙经典标准的演进,专注于为设备间提供可靠、高效且低功耗的链路连接。它具有超低的功耗,满足超长的续航能力。在低功耗蓝牙技术建立连接的过程中,设备都是成对出现的:主设备master和从设备slave。如果master希望与slave建立连接,master就需要发起连接请求(connection request,connect_req),因此master可以称之为连接发起者;同时,slave必须是可连接的并且具有解析连接请求connect_req的能力,slave可以称之为广播者。
34.(2)、连接事件(connection event):一个连接事件是指主设备和从设备之间相互发送数据包的过程。在一个连接链路当中,主设备会在每个连接事件里向从设备发送数据包。
35.(3)、连接间隔(connection interval):连接间隔是指两个连续的连接事件开始处的时间距离。连接间隔通常可以是7.5ms~4s内的任意值,但必须为1.25ms的整数倍。连接间隔决定了主设备与从设备的交互间隔。连接事件被一个个的连接间隔分开。从主设备发送数据包开始,每个连接事件可以持续进行,直至主设备或从设备停止响应。在连接事件之外,主从设备之间不发送任何数据包。在本技术的实施例中,连接间隔也称作连接周期。
36.(4)、锚点:锚点是指master希望与slave建立连接时,在master发起连接请求connect_req之后,第一个由master发送到slave的数据帧对应的发送时刻。该连接事件之后的所有的连接事件都以这一时刻为基准,呈现周期性变化。本技术的实施例中,对于一个
链路,上述的锚点记为该链路的锚点0,自该锚点0开始,以该链路的连接周期为时间间隔,周期性地取时间点,顺次得到该链路的多个特征点,依次为:锚点1、锚点2、锚点3等。
37.(5)超时时间:蓝牙规范不要求连接双方在每个连接间隔都握手。蓝牙规范把连接双方必须要完成一次握手的时间定义成超时时间。超过超时时间,连接双方还没有握手,连接就断开。
38.主从设备连接双方建立低功耗蓝牙连接时,将建立该连接的时间确定连接的锚点,在以该锚点为起点,以连接周期tinterval为时间间隔顺次截取的任意一个时间段上,连接双方在时间段的起始时刻收发数据,并在连接周期对应的时间段结束之前完成数据收发。
39.相关技术中,当一个主设备与多个从设备进行多连接时,需要通过复杂计算以安排各个连接的时序,避免各个连接在时间上相互冲突。
40.以图1为例,两个连接分别有自己的锚点和连接间隔tinterval。为了避免2个连接在时间上冲突,必须小心的安排各个连接的时序,包括:不同连接的锚点要错开;不同连接的连接事件tevent也要错开。
41.当需要支持的连接数量比较多的时候,为多个从设备对应的连接分配时间片的效率很低。
42.为更好地理解本技术实施例提供的技术方案,下面对本技术实施例提供的技术方案适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
43.图2示出了本技术实施例的一种应用场景,参见图2所示,该应用场景中包括主设备100和多个从设备200。主设备100和各个从设备200可通过建立的链路连接进行数据通信。图2中的主设备100和多个从设备200形成本技术实施例提供的低功耗蓝牙多连接系统。
44.为解决现有存在的技术问题,本技术实施例提供了一种低功耗蓝牙多连接方法、装置和系统,主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链路中各个第一目标链路获取第一时间片的第一循环顺序;其中,第一目标链路为链路的部分或全部;连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;第一时间片为主设备建立的第一个第一目标链路的起始时刻起,以第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一第一周期时间段的起点开始截取的长度为第一事件周期的时间段;若主设备监测到任一第一目标链路按第一循环顺序应获取第一时间片,则向与任一第一目标链路对应的第一从设备发送数据,以使从设备与主设备进行数据传输。从而实现多个连接共享锚点和时间片,可以显著降低低功耗蓝牙多连接的实现难度,节省为多个从设备对应的连接分配时间片的时间,提升低功耗蓝牙多连接的配置效率。
45.为了便于理解,下面对本技术实施例提供的技术方案进行详细说明。
46.请参考图3,其是本技术实施例提供了一种低功耗蓝牙多连接方法,如图3所示,包括如下步骤:
47.步骤s301,主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链
路中各个第一目标链路获取第一时间片的第一循环顺序。
48.其中,连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;第一时间片为主设备建立的第一个第一目标链路的起始时刻起,以第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一第一周期时间段的起点开始截取的长度为第一事件周期的时间段。
49.本技术的实施例中,第一目标链路为链路的部分或全部。具体地,第一目标链路可以是主设备通过连接参数,基于蓝牙与多个从设备建立的链路的全部,也可以是主设备通过连接参数,基于蓝牙与多个从设备建立的链路的部分。
50.示例性地,图4示出了本技术实施例提供的一种低功耗蓝牙多连接的实现方式的示意图。参见图4,主设备ble master通过连接参数,基于蓝牙与3个从设备ble slave分别建立链路link,包括link1、link2、link3,并确定链路link中各个第一目标链路获取第一时间片的第一循环顺序。图4中,第一目标链路为链路link的全部。连接参数包括第一基准连接周期tinterval和第一事件周期tevent_max;各第一目标链路的连接周期为第一基准连接周期tinterval,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期tinterval的整数倍;每个第一时间片对应一个第一目标链路;主设备ble master建立的第一个第一目标链路的起始时刻记为锚点0,第一时间片为自锚点0起,以第一基准连接周期tinterval为间隔长度,顺序地划分得到第一周期时间段后,从任一第一周期时间段的起点开始截取的长度为第一事件周期tevent_max的时间段。
51.由图4可见,3个链路link1、link2、link3共享相同的锚点和连接间隔tinterval。作为主设备的ble master设备控制时间片分配:第3n+1个tinterval用于ble master设备和ble slave1设备之间进行数据收发,第3n+2个tinterval用于ble master设备和ble slave2设备之间进行数据收发,第3n+3个tinterval用于ble master设备和ble slave3设备之间进行数据收发。由图4可以看到,3个链路获取第一时间片的第一循环顺序为(link1、link2、link3),表征3个链路link1、link2、link3按(link1、link2、link3)的顺序,周期地获取第一时间片。其中,每个周期是3个时间片,n是自然数,3n+1,3n+2,3n+3表示一个周期内的连续的三个时间片。
52.需要指出的是,图4中第一目标链路是链路link的全部。可以理解地,第一目标链路还可以是链路link的部分,当不考虑实时性,让所有的多连接的链路都是在形式上共享锚点和时间片时,就设定第一目标链路是链路link的全部;当希望一部分从设备具有高实时性时,设定第一目标链路还可以是链路link的部分。对于第一目标链路是链路的部分还是全部,本技术不作具体限定。
53.在一种可选的实施例中,连接参数还包括第一超时时间;主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,可以通过以下步骤实现:
54.步骤a01,主设备根据第一超时时间和第一基准连接周期,确定第一连接数量限值。
55.示例性地,假设第一超时时间为tsupertimeout1,第一基准连接周期为tinterval1,则第一连接数量限值connmax1为:
[0056][0057]
connmax1表征主设备能够支持连接的从设备的最大数量。例如,当tsupertimeout1=4s,tinterval1=20ms时,可以得到connmax1=200,表示主设备能够支持连接的从设备的最大数量是200。
[0058]
步骤a02,主设备通过连接参数和第一连接数量限值,基于蓝牙与多个从设备建立链路连接。
[0059]
其中,第一目标链路的数量不大于第一连接数量限值。
[0060]
示例性地,假设connmax1=200,主设备通过连接参数和第一连接数量限值connmax1=200,基于蓝牙与多个从设备建立链路连接。链路中的第一目标链路的数量不大于200。可以理解地,若此时的第一目标链路为链路的全部,则链路的数量不大于200。
[0061]
在该实施例中,连接参数还包括第一超时时间;主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,包括:主设备根据第一超时时间和第一基准连接周期,确定第一连接数量限值;主设备通过连接参数和第一连接数量限值,基于蓝牙与多个从设备建立链路连接;第一目标链路的数量不大于第一连接数量限值。该方法,主设备根据第一超时时间和第一基准连接周期确定第一连接数量限值;第一目标链路的数量不大于第一连接数量限值,可以避免出现从设备的连接数量超出超时时间的限制的问题,从而防止多连接的数据传输异常,可以提升低功耗蓝牙多连接的配置效率。
[0062]
为了避免多连接的连接响应延迟过大,本技术针对具体的多连接场景,给出了多个参数中进行平衡的方案,以符合用户的具体使用需求。
[0063]
在一种可选的实施例中,连接参数还包括第二超时时间、目标延迟时间;目标延迟时间表征用户允许的延迟时间的最大值;主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,通过以下步骤实现:
[0064]
步骤b01,主设备根据第二超时时间、目标延迟时间、第一基准连接周期,确定第二连接数量限值。
[0065]
在一种可选的实施例中,根据第二超时时间、目标延迟时间、第一基准连接周期,确定第二连接数量限值,包括:
[0066]
若目标延迟时间小于第二超时时间,则根据目标延迟时间和第一基准连接周期确定第二连接数量限值;
[0067]
若目标延迟时间不小于第二超时时间,则根据第二超时时间和第一基准连接周期确定第二连接数量限值。
[0068]
示例性地,假设第二超时时间tsupertimeout2=4s,目标延迟时间tlatency=100ms,第一基准连接周期tinterval1=20ms。此时tlatency小于tsupertimeout2,则第二连接数量限值connmax2由tlatency和tinterval1来决定。connmax2=tlatency/tinterval1=100/20=5。
[0069]
又例如,假设tsupertimeout2=200ms,tlatency=500ms,tinterval1=20ms。此时,tlatency大于supertimeout2,此时connmax2由tsupertimeout2和tinterval1来决定。connmax=tsupertimeout2/tinterval1=200/20=10。
[0070]
步骤b02,主设备通过连接参数和第二连接数量限值,基于蓝牙与多个从设备建立
链路连接。
[0071]
第一目标链路的数量不大于第二连接数量限值。
[0072]
具体实施时,主设备可以先确定需要连接的用于形成第一目标链路的从设备的数量是否超过第二连接数量限值,若不超过该第二连接数量限值,则通过连接参数,基于蓝牙与该多个从设备建立链路连接。
[0073]
该实施例中,连接参数还包括第二超时时间、目标延迟时间;目标延迟时间表征用户允许的延迟时间的最大值;主设备根据第二超时时间、目标延迟时间、第一基准连接周期,确定第二连接数量限值;主设备通过连接参数和第二连接数量限值,基于蓝牙与多个从设备建立链路连接;第一目标链路的数量不大于第二连接数量限值。该方法,根据超时时间、目标延迟时间、第一基准连接周期,确定第二连接数量限值,可以在连接数量与延迟时间之间取得平衡,从而能够防止出现多连接的响应延迟不符合使用要求的问题,可以提升低功耗蓝牙多连接的配置效率。
[0074]
在一种可选的实施例中,确定链路中各个第一目标链路获取第一时间片的第一循环顺序,通过以下步骤实施:
[0075]
步骤c01,将第一从设备的数量作为链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量。
[0076]
示例性地,假设第一从设备的数量是3,在确定链路中各个第一目标链路获取第一时间片的第一循环顺序时,链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量是3,也即第一循环周期是按照固定的循环顺序分配3个第一时间片。
[0077]
步骤c02,确定各个第一目标链路的起始时刻归属的时间片在第一循环周期中对应的第一排序信息。
[0078]
示例性地,假设第一目标链路为link1、link2、link3三个链路,主设备每建立一个第一目标链路,就记录该第一目标链路的起始时刻归属的时间片在第一循环周期中对应的排序信息,例如,假设得到该三个链路link1、link2、link3的起始时刻归属的时间片在第一循环周期中对应的排序信息分别是1、3、2,从而该三个链路link1、link2、link3的起始时刻归属的时间片在第一循环周期中对应的第一排序信息分别是1、3、2。
[0079]
步骤c03,根据各个第一排序信息和第一循环周期中包含的第一时间片的数量,确定链路中各个第一目标链路获取第一时间片的第一循环顺序。
[0080]
示例性地,若第一目标链路为link1、link2、link3三个链路,链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量是3,该三个链路link1、link2、link3的起始时刻归属的第一时间片在第一循环周期中对应的排序信息分别是1、3、2,则链路中各个第一目标链路获取第一时间片的第一循环顺序为(link1、link3、link2),该三个链路建立起来之后,三个链路按照:先link1,再link3,最后link2的顺序,获取第一时间片。
[0081]
该实施例中,通过将与第一目标链路对应的从设备的数量作为链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量;确定各个第一目标链路的起始时刻归属的时间片在第一循环周期中对应的第一排序顺序信息;根据各个第一排序顺序信息和第一循环周期中包含的第一时间片的数量,确定链路中各个第一目标链路获
取第一时间片的第一循环顺序。该方法,可以确定链路中各个第一目标链路获取第一时间片的第一循环周期中,各个第一目标链路只获取一次第一时间片时,链路中各个第一目标链路获取第一时间片的循环顺序,可以节省为多个从设备对应的连接分配时间片的时间,提升低功耗蓝牙多连接的配置效率。
[0082]
在本技术的实施例中,还可以根据带宽分配参数等分配策略来实现将时间片分配给不同的链路。
[0083]
在一种可选的实施例中,连接参数还包括带宽分配参数;带宽分配参数包括各个第一从设备的带宽比;第一从设备是与第一目标链路对应的从设备;确定链路中各个第一目标链路获取第一时间片的第一循环顺序,可以通过以下步骤实现:
[0084]
步骤d01,根据带宽比和第一从设备的数量,确定链路中各个第一目标链路获取第一时间片的第二循环周期中包含第一时间片的数量最小值。
[0085]
示例性地,假设第一目标链路是两个链路:link1、link2,该两个第一目标链路对应的第一从设备分别为ble slave1和ble slave2。连接参数还包括带宽分配参数;带宽分配参数包括各个第一从设备的带宽比,例如该带宽比为ble slave1:ble slave2=3:1,表征link1占用75%,link2占用25%。根据上述带宽比和第一从设备的数量2,确定链路中各个第一目标链路获取第一时间片的第二循环周期中包含第一时间片的数量最小值是一个整数,为4。
[0086]
步骤d02,根据带宽比,确定各个第一目标链路对应的数据重发参数。
[0087]
其中,数据重发参数表征各个第一目标链路在第二循环周期中对应的时间片的数量。
[0088]
示例性地,若第一目标链路是两个链路:link1、link2,该两个第一目标链路对应的第一从设备分别为ble slave1和ble slave2,带宽比为ble slave1:ble slave2=3:1,第二循环周期中包含第一时间片的数量最小值是4,可以确定第一目标链路link1、link2分别对应的数据重发参数为3和1。
[0089]
步骤d03,确定各个第一目标链路的起始时刻归属的第一时间片在第二循环周期中的对应的第二排序信息。
[0090]
示例性地,假设第一目标链路为link1、link2两个链路,主设备每建立一个第一目标链路,就记录该第一目标链路的起始时刻归属的第一时间片在第二循环周期中对应的排序信息,例如,假设得到该两个链路link1、link2的起始时刻归属的第一时间片在第二循环周期中对应的排序信息分别是2、1,则两个链路link1、link2的起始时刻归属的第一时间片在第二循环周期中对应的第二排序信息分别是2、1,也即根据该第二排序信息,主设备先建立链路link2,后建立链路link1。
[0091]
步骤d04,根据各个第二排序信息、第二循环周期中包含第一时间片的数量最小值和各个链路对应的数据重发参数,确定链路中各个第一目标链路获取第一时间片的第一循环顺序。
[0092]
其中,任一第一目标链路在第二循环周期中对应多个第一时间片时,对于多个第一时间片中任意相邻的两个,对应的第一时间片的起点的时间差为第一基准连接周期。
[0093]
示例性地,若第一目标链路为link1、link2两个链路,第二循环周期中包含第一时间片的数量最小值是4,该两个链路link1、link2的起始时刻归属的第一时间片在第二循环
周期中对应的排序信息分别是2、1,第一目标链路link1、link2分别对应的数据重发参数为3和1,则链路中各个第一目标链路获取第一时间片的第一循环顺序为(link2、link1、link1、link1),该两个链路建立起来之后,两个链路获取第一时间片遵循以下循环顺序:先link2获取1次第一时间片,再link1获取3次第一时间片。该低功耗多连接的实现方式如图5所示。
[0094]
在该实施例中,通过带宽分配参数,将时间片分配给不同的链路。该方法,可以支持对链路的部分或全部进行带宽控制,从而能够防止出现多连接的带宽分配不符合使用要求的问题,可以提升低功耗蓝牙多连接的配置效率。
[0095]
步骤s302,若主设备监测到任一第一目标链路按第一循环顺序应获取第一时间片,则向与任一第一目标链路对应的第一从设备发送数据,以使从设备与主设备进行数据传输。
[0096]
本技术实施例提供的低功耗蓝牙多连接方法,主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链路中各个第一目标链路获取第一时间片的第一循环顺序;其中,第一目标链路为链路的部分或全部;连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;若主设备监测到任一第一目标链路按第一循环顺序应获取第一时间片,则向与任一第一目标链路对应的第一从设备发送数据,以使从设备与主设备进行数据传输。该方法,部分或全部的链路的连接间隔相同,且链路的起始时刻的间隔是连接间隔的整数倍,从而实现多个连接共享锚点和时间片,可以显著降低低功耗蓝牙多连接的实现难度,节省为多个从设备对应的连接分配时间片的时间,提升低功耗蓝牙多连接的配置效率。
[0097]
为了解决实时性的问题,在低功耗蓝牙多连接时,可以设置两组从设备,将其中的一组设置为实时性高的配置,另外一组设置为实时性低的配置。对于实时性高的配置,可以将该组从设备对应的链路进一步地进行优化,例如,将连接间隔设置成蓝牙规范中比较小的数值,并限制连接事件中的收发次数,等等。
[0098]
图6示出了本技术实施例提供的另一种低功耗蓝牙多连接方法的流程图,该方法,第一目标链路的数量为第一预设整数;链路还包括第二目标链路;如图6所示,该方法包括如下步骤:
[0099]
步骤s601,主设备通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链路中各个第一目标链路获取第一时间片的第一循环顺序。
[0100]
其中,第一目标链路为链路的部分或全部;连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;第一时间片为主设备建立的第一个第一目标链路的起始时刻起,以第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一第一周期时间段的起点开始截取的长度为第一事件周期的时间段。
[0101]
步骤s602,确定链路中的各个第二目标链路获取第二时间片的第二循环顺序。
[0102]
其中,连接参数还包括第二基准连接周期、第二事件周期和首锚时差;主设备和从设备首先建立一个第一目标链路;首锚时差为主设备建立的第一个第二目标链路的起始时
刻与第一个第一目标链路之差;每个第二时间片对应一个第二目标链路;第二时间片为主设备建立的第一个第二目标链路的起始时刻起,以第二基准连接周期为间隔长度划分得到多个第二周期时间段后,从任一第二周期时间段的起点开始截取的长度为第二事件周期的时间段;各第二目标链路的连接周期为第二基准连接周期,且任意两个第二目标链路的起始时刻的间隔是第二基准连接周期的整数倍;第二基准连接周期是第一基准连接周期的第一预设整数倍;首锚时差的数值大于第一事件时长;第二事件周期小于第一基准连接周期与首锚时差的差值。
[0103]
示例性地,如图7所示,假设需要主设备与多个从设备进行多连接,形成4个链路:link1~link4,其中link1和link2两个链路实时性要求高,则可使第一预设整数取值为2,第一目标链路的数量为2;链路还包括第二目标链路:link3、link4;连接参数还包括第二基准连接周期tinterval2、第二事件周期tevent_max’和首锚时差gap_t0;主设备和从设备首先建立一个第一目标链路,假设为link2;首锚时差gap_t0为主设备建立的第一个第二目标链路的起始时刻与第一个第一目标链路之差;每个第二时间片对应一个第二目标链路;第二时间片为主设备建立的第一个第二目标链路的起始时刻t0起,以第二基准连接周期tinterval2为间隔长度划分得到第二周期时间段后,从任一第二周期时间段的起点开始截取的长度为第二事件周期tevent_max’的时间段;各第二目标链路的连接周期为第二基准连接周期tinterval2,且任意两个第二目标链路的起始时刻的间隔是第二基准连接周期tinterval2的整数倍;第二基准连接周期是第一基准连接周期的第一预设整数倍,如图7所示,第二基准连接周期是第一基准连接周期的2倍;首锚时差gap_t0的数值大于第一事件时长tevent_max;第二事件周期tevent_max’小于第一基准连接周期tinterval1与首锚时差的差值gap_t0。
[0104]
确定链路中的各个第二目标链路获取第二时间片的第二循环顺序的具体过程,可以参照前述实施例中的确定第一循环顺序的方法步骤执行,在此不再赘述。
[0105]
步骤s603,根据第一循环顺序和第二循环顺序,确定链路中的各个第一目标链路和各个第二目标链路获取对应的第一时间片或第二时间片的混合循环顺序。
[0106]
其中,混合循环顺序中,任一第二目标链路获取一次第二时间片,则各第一目标链路对应地分别获取一次第一时间片。
[0107]
示例性地,假设第一循环顺序为(link2,link1),确定的第二循环顺序为(link3、link4),可以确定出混合循环顺序(link2、link3、link1、link2、link4、link1),该混合循环顺序中,任一第二目标链路获取一次第二时间片,则各第一目标链路对应地分别获取一次第一时间片。
[0108]
在一种可选的实施例中,第一基准连接周期为7.5ms。
[0109]
该方法,将一组链路的连接间隔设置成蓝牙规范中最小的7.5ms,进一步提升多连接的实时性。
[0110]
在一种可选的实施例中,在任一第一基准连接周期对应的第一时间片内,对应的第一链路进行数据收发的次数为一次。
[0111]
该方法,在任一第一基准连接周期对应的第一特征时间片内,对应的第一链路进行数据收发的次数为一次,可以更及时对不同的链路进行数据传输,进一步提升多连接的实时性。
[0112]
步骤s604,若主设备监测到任一第一目标链路或第二目标链路按混合循环顺序应获取时间片,则向与任一第一目标链路或第二目标链路对应的第一从设备或第二从设备发送数据,以使主设备与从设备进行数据传输。
[0113]
步骤s601~步骤s604中各个步骤具体过程可以参照前述实施例中的方法步骤执行,在此不再赘述。
[0114]
该实施例的方法,可以设置两组链路,且两组链路的时间片不发生重叠,从而可以实现多连接中的两组链路分别共享锚点和时间片,不但显著降低低功耗蓝牙多连接的实现难度,节省为多个从设备对应的连接分配时间片的时间,可以提升低功耗蓝牙多连接的配置效率,还由于第二基准连接周期是第一基准连接周期的第一预设整数倍,可以引入实时性高的链路,从而改善多连接的实时性。
[0115]
与图3所示的低功耗蓝牙多连接方法基于同一发明构思,本技术实施例中还提供了一种低功耗蓝牙多连接装置。由于该装置是本技术低功耗蓝牙多连接方法对应的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见上述方法的实施,重复之处不再赘述。
[0116]
图8示出了本技术实施例提供的一种低功耗蓝牙多连接装置的结构示意图,如图8所示,该低功耗蓝牙多连接装置包括第一连接单元801、第一数据发送单元802。
[0117]
其中,第一连接单元801,用于通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定所述链路中各个第一目标链路获取第一时间片的第一循环顺序;其中,所述第一目标链路为所述链路的部分或全部;所述连接参数包括第一基准连接周期和第一事件周期;各所述第一目标链路的连接周期为所述第一基准连接周期,且任意两个所述第一目标链路的起始时刻的间隔是所述第一基准连接周期的整数倍;每个所述第一时间片对应一个所述第一目标链路;所述第一时间片为建立的第一个所述第一目标链路的起始时刻起,以所述第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一所述第一周期时间段的起点开始截取的长度为所述第一事件周期的时间段;
[0118]
第一数据发送单元802,用于若监测到任一所述第一目标链路按所述第一循环顺序应获取所述第一时间片,则向与所述任一所述第一目标链路对应的第一从设备发送数据,以使所述从设备与所述低功耗蓝牙多连接装置进行数据传输。
[0119]
可以理解地,第一目标链路可以为链路的部分或全部。
[0120]
在一种可选的实施例中,所述连接参数还包括第一超时时间;所述第一连接单元801,具体用于:
[0121]
根据所述第一超时时间和所述第一基准连接周期,确定第一连接数量限值;
[0122]
通过所述连接参数和所述第一连接数量限值,基于蓝牙与多个从设备建立链路连接;所述第一目标链路的数量不大于所述第一连接数量限值。
[0123]
在一种可选的实施例中,所述连接参数还包括第二超时时间、目标延迟时间;所述目标延迟时间表征用户允许的延迟时间的最大值;所述第一连接单元801,具体用于:
[0124]
根据所述第二超时时间、所述目标延迟时间、所述第一基准连接周期,确定第二连接数量限值;
[0125]
通过所述连接参数和所述第二连接数量限值,基于蓝牙与多个从设备建立链路连接;所述第一目标链路的数量不大于所述第二连接数量限值。
[0126]
在一种可选的实施例中,所述第一连接单元801,具体用于:
[0127]
若所述目标延迟时间小于所述第二超时时间,则根据所述目标延迟时间和所述第一基准连接周期确定所述第二连接数量限值;
[0128]
若所述目标延迟时间不小于所述第二超时时间,则根据所述第二超时时间和所述第一基准连接周期确定所述第二连接数量限值。
[0129]
在一种可选的实施例中,所述第一连接单元801,具体用于:
[0130]
将第一从设备的数量作为链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量;
[0131]
确定各个第一目标链路的起始时刻归属的时间片在第一循环周期中对应的第一排序信息;
[0132]
根据各个第一排序信息和第一循环周期中包含的第一时间片的数量,确定链路中各个第一目标链路获取第一时间片的第一循环顺序。
[0133]
在一种可选的实施例中,所述连接参数还包括带宽分配参数;所述带宽分配参数包括各个第一从设备的带宽比;所述第一从设备是与所述第一目标链路对应的所述从设备;所述第一连接单元801,具体用于:
[0134]
根据所述带宽比和所述第一从设备的数量,确定所述链路中各个第一目标链路获取第一时间片的第二循环周期中包含所述第一时间片的数量最小值;
[0135]
根据所述带宽比,确定各个所述第一目标链路对应的数据重发参数;所述数据重发参数表征各个所述第一目标链路在所述第二循环周期中对应的时间片的数量;
[0136]
确定各个所述第一目标链路的起始时刻归属的所述第一时间片在所述第二循环周期中的对应的第二排序信息;
[0137]
根据各个所述第二排序信息、所述第二循环周期中包含所述第一时间片的所述数量最小值和各个所述链路对应的数据重发参数,确定所述链路中各个第一目标链路获取第一时间片的所述第一循环顺序;其中,任一所述第一目标链路在所述第二循环周期中对应多个所述第一时间片时,对于所述多个所述第一时间片中任意相邻的两个,对应的所述第一时间片的起点的时间差为所述第一基准连接周期。
[0138]
在一种可选的实施例中,所述第一目标链路的数量为第一预设整数;所述链路还包括第二目标链路;如图9所示,所述装置还包括第二连接单元901,所述第二连接单元901用于:
[0139]
确定所述链路中的各个第二目标链路获取第二时间片的第二循环顺序;其中,所述连接参数还包括第二基准连接周期、第二事件周期和首锚时差;所述主设备和所述从设备首先建立一个所述第一目标链路;所述首锚时差为所述主设备建立的第一个所述第二目标链路的起始时刻与第一个所述第一目标链路之差;每个所述第二时间片对应一个所述第二目标链路;所述第二时间片为所述主设备建立的第一个所述第二目标链路的起始时刻起,以所述第二基准连接周期为间隔长度划分得到多个第二周期时间段后,从任一所述第二周期时间段的起点开始截取的长度为所述第二事件周期的时间段;各所述第二目标链路的连接周期为所述第二基准连接周期,且任意两个所述第二目标链路的起始时刻的间隔是所述第二基准连接周期的整数倍;所述第二基准连接周期是所述第一基准连接周期的所述第一预设整数倍;所述首锚时差的数值大于所述第一事件时长;所述第二事件周期小于所
述第一基准连接周期与所述首锚时差的差值;
[0140]
根据所述第一循环顺序和所述第二循环顺序,确定所述链路中的各个所述第一目标链路和各个所述第二目标链路获取对应的所述第一时间片或所述第二时间片的混合循环顺序;所述混合循环顺序中,任一所述第二目标链路获取一次所述第二时间片,则各所述第一目标链路对应地分别获取一次所述第一时间片;
[0141]
第一数据发送单元802,具体用于:若所述主设备监测到任一所述第一目标链路或所述第二目标链路按所述混合循环顺序应获取时间片,则向与所述任一所述第一目标链路或所述第二目标链路对应的所述第一从设备或第二从设备发送数据,以使所述主设备与所述从设备进行数据传输。
[0142]
在一种可选的实施例中,所述第一基准连接周期为7.5ms。
[0143]
在一种可选的实施例中,在任一所述第一基准连接周期对应的所述第一时间片内,对应的所述第一链路进行数据收发的次数为一次。
[0144]
基于同一技术构思,本技术实施例还提供了一种电子设备,参照图10所示,该电子设备用于实施上述各个方法实施例记载的方法,例如实施如图3所示的方法,电子设备可以包括存储器1001、处理器1002。
[0145]
存储器1001,用于存储处理器1002执行的计算机程序。存储器1001可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据电子设备的使用所创建的数据等。处理器1002,可以是一个中央处理单元(central processing unit,cpu),或者为数字处理单元等。
[0146]
本技术实施例中不限定上述存储器1001、处理器1002之间的具体连接介质。本技术实施例在图10中以存储器1001、处理器1002之间通过总线1003连接,总线1003在图10中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线1003可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0147]
存储器1001可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram);存储器1001也可以是非易失性存储器(non-volatile memory),例如只读存储器,快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)、或者存储器1001是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器1001可以是上述存储器的组合。
[0148]
处理器1002,用于调用存储器1001中存储的计算机程序执行上述的任一项的低功耗蓝牙多连接方法。
[0149]
基于同一技术构思,本技术实施例还提供了一种低功耗蓝牙多连接系统。本技术实施例提供的低功耗蓝牙多连接系统的结构可以参见图2。该低功耗蓝牙多连接系统包括主设备和多个从设备,主设备包括处理器和存储器;
[0150]
存储器,用于存储主设备运行时所使用的数据或程序代码;
[0151]
处理器,用于通过连接参数,基于蓝牙与多个从设备建立链路连接,并确定链路中各个第一目标链路获取第一时间片的第一循环顺序;连接参数包括第一基准连接周期和第一事件周期;各第一目标链路的连接周期为第一基准连接周期,且任意两个第一目标链路
的起始时刻的间隔是第一基准连接周期的整数倍;每个第一时间片对应一个第一目标链路;第一时间片为主设备建立的第一个第一目标链路的起始时刻起,以第一基准连接周期为间隔长度划分得到多个第一周期时间段后,从任一第一周期时间段的起点开始截取的长度为第一事件周期的时间段;
[0152]
若监测到任一第一目标链路按第一循环顺序应获取第一时间片,则向与任一第一目标链路对应的第一从设备发送数据,以使从设备与主设备进行数据传输。
[0153]
可以理解地,第一目标链路可以为链路的部分或全部。
[0154]
在一种可选的实施例中,连接参数还包括第一超时时间;处理器,具体用于:
[0155]
根据第一超时时间和第一基准连接周期,确定第一连接数量限值;
[0156]
通过连接参数和第一连接数量限值,基于蓝牙与多个从设备建立链路连接;第一目标链路的数量不大于第一连接数量限值。
[0157]
在一种可选的实施例中,连接参数还包括第二超时时间、目标延迟时间;目标延迟时间表征用户允许的延迟时间的最大值;处理器,具体用于:
[0158]
根据第二超时时间、目标延迟时间、第一基准连接周期,确定第二连接数量限值;
[0159]
通过连接参数和第二连接数量限值,基于蓝牙与多个从设备建立链路连接;第一目标链路的数量不大于第二连接数量限值。
[0160]
在一种可选的实施例中,处理器,具体用于:
[0161]
若目标延迟时间小于第二超时时间,则根据目标延迟时间和第一基准连接周期确定第二连接数量限值;
[0162]
若目标延迟时间不小于第二超时时间,则根据第二超时时间和第一基准连接周期确定第二连接数量限值。
[0163]
在一种可选的实施例中,处理器,具体用于:
[0164]
将第一从设备的数量作为链路中各个第一目标链路获取第一时间片的第一循环周期中包含的第一时间片的数量;
[0165]
确定各个第一目标链路的起始时刻归属的时间片在第一循环周期中对应的第一排序信息;
[0166]
根据各个第一排序信息和第一循环周期中包含的第一时间片的数量,确定链路中各个第一目标链路获取第一时间片的第一循环顺序。
[0167]
在一种可选的实施例中,连接参数还包括带宽分配参数;带宽分配参数包括各个第一从设备的带宽比;第一从设备是与第一目标链路对应的从设备;处理器,具体用于:
[0168]
根据带宽比和第一从设备的数量,确定链路中各个第一目标链路获取第一时间片的第二循环周期中包含第一时间片的数量最小值;
[0169]
根据带宽比,确定各个第一目标链路对应的数据重发参数;数据重发参数表征各个第一目标链路在第二循环周期中对应的时间片的数量;
[0170]
确定各个第一目标链路的起始时刻归属的第一时间片在第二循环周期中的对应的第二排序信息;
[0171]
根据各个第二排序信息、第二循环周期中包含第一时间片的数量最小值和各个链路对应的数据重发参数,确定链路中各个第一目标链路获取第一时间片的第一循环顺序;其中,任一第一目标链路在第二循环周期中对应多个第一时间片时,对于多个第一时间片
中任意相邻的两个,对应的第一时间片的起点的时间差为第一基准连接周期。
[0172]
在一种可选的实施例中,第一目标链路的数量为第一预设整数;链路还包括第二目标链路;处理器,还用于:
[0173]
确定链路中的各个第二目标链路获取第二时间片的第二循环顺序;其中,连接参数还包括第二基准连接周期、第二事件周期和首锚时差;主设备和从设备首先建立一个第一目标链路;首锚时差为主设备建立的第一个第二目标链路的起始时刻与第一个第一目标链路之差;每个第二时间片对应一个第二目标链路;第二时间片为主设备建立的第一个第二目标链路的起始时刻起,以第二基准连接周期为间隔长度划分得到多个第二周期时间段后,从任一第二周期时间段的起点开始截取的长度为第二事件周期的时间段;各第二目标链路的连接周期为第二基准连接周期,且任意两个第二目标链路的起始时刻的间隔是第二基准连接周期的整数倍;第二基准连接周期是第一基准连接周期的第一预设整数倍;首锚时差的数值大于第一事件时长;第二事件周期小于第一基准连接周期与首锚时差的差值;
[0174]
根据第一循环顺序和第二循环顺序,确定链路中的各个第一目标链路和各个第二目标链路获取对应的第一时间片或第二时间片的混合循环顺序;混合循环顺序中,任一第二目标链路获取一次第二时间片,则各第一目标链路对应地分别获取一次第一时间片;
[0175]
处理器,具体用于:若主设备监测到任一第一目标链路或第二目标链路按混合循环顺序应获取时间片,则向与任一第一目标链路或第二目标链路对应的第一从设备或第二从设备发送数据,以使主设备与从设备进行数据传输。
[0176]
在一种可选的实施例中,第一基准连接周期为7.5ms。
[0177]
在一种可选的实施例中,在任一第一基准连接周期对应的第一时间片内,对应的第一链路进行数据收发的次数为一次。
[0178]
根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中的低功耗蓝牙多连接方法。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0179]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0180]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到
通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0181]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0182]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0183]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1