发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种蓝牙低功耗组网并支持便捷互联的方法及系统,旨在解决现有蓝牙设备使用不方便的问题。
本发明的技术方案如下:
一种蓝牙低功耗组网并支持便捷互联的方法,其中,包括步骤:
外围设备向周围以低功耗方式并以可连接非定向方式,周期性动态广播自身的数据包;
中心设备周期性动态扫描周围的外围设备,根据所述数据包得到相应外围设备的蓝牙地址、业务类型和业务地址信息,组成外围设备业务列表;
中心设备有业务触发请求或者接收到外围设备的业务触发请求后,中心设备和外围设备组建微微网。
所述的蓝牙低功耗组网并支持便捷互联的方法,其中,所述数据包包括消息段的类型、业务类型、是否支持业务以及业务地址。
所述的蓝牙低功耗组网并支持便捷互联的方法,其中,外围设备周期性广播256种业务类型和业务地址,外围设备广播的周期与中心设备扫描的周期一致,中心设备经过一轮256个扫描周期后,中心设备获得一个外围设备蓝牙地址、外围设备支持的业务类型和业务地址的列表。
所述的蓝牙低功耗组网并支持便捷互联的方法,其中,设扫描周期为T,外围设备支持的业务类型为x,则外围设备的广播周期为 ,同时等待时间为 ,其中表示大于等于的最小整数。
所述的蓝牙低功耗组网并支持便捷互联的方法,其中,
中心设备和外围设备建立连接时,组成微微网,中心设备成为主机,外围设备成为从机,每个从机在不同的数据信道上与主机进行通信;然后中心设备以时分复用方式同时作为微微网的主机和广播信道的扫描方。
所述的蓝牙低功耗组网并支持便捷互联的方法,其中,外围设备以时分复用的方式作为微微网的从机,并且在广播信道中以不可连接方式广播。
一种蓝牙低功耗组网并支持便捷互联的系统,其中,包括:
外围设备,用于向周围以低功耗方式并以可连接非定向方式,周期性动态广播自身的数据包;
中心设备,用于周期性动态扫描周围的外围设备,根据所述数据包得到相应外围设备的蓝牙地址、业务类型和业务地址信息,组成外围设备业务列表;
中心设备有业务触发请求或者接收到外围设备的业务触发请求后,中心设备和外围设备组建微微网。
所述的蓝牙低功耗组网并支持便捷互联的系统,其中,所述数据包包括消息段的类型、业务类型、是否支持业务以及业务地址。
所述的蓝牙低功耗组网并支持便捷互联的系统,其中,外围设备周期性广播256种业务类型和业务地址,外围设备广播的周期与中心设备扫描的周期一致,中心设备经过一轮256个扫描周期后,中心设备获得一个外围设备蓝牙地址、外围设备支持的业务类型和业务地址的列表。
所述的蓝牙低功耗组网并支持便捷互联的系统,其中,设扫描周期为T,外围设备支持的业务类型为x,则外围设备的广播周期为,同时等待时间为,其中表示大于等于的最小整数。
有益效果:本发明基于低功耗蓝牙作为无线通信方式,外围设备通过动态广播信令向中心设备发送外围设备蓝牙地址,支持的无线连接业务类型和业务地址,中心设备得到一个包含外围设备蓝牙地址、支持的业务类型和业务地址的列表,自动组网完成。然后通过主动或被动的业务请求,中心设备与外围设备组建微微网,使得中心设备和所有外围设备中的任意两个设备互连并开启无线业务。本发明的组网过程,用户操作简便,并且具有更低的功耗。
具体实施方式
本发明提供一种蓝牙低功耗组网并支持便捷互联的方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
与传统蓝牙和高速蓝牙相比,低功耗蓝牙(Bluetooth Low Energy,BLE)的最大优点是省功耗,同时传输的数据量也比较小,适用于智能终端之间的无线业务连接。低功耗蓝牙协议的开发主要在链路层(Link Layer,LL),通用访问协议层(Generic AccessProfile,GAP)和通用属性协议层(Generic Attribute Profile,GATT)。本发明结合低功耗蓝牙的特点,提供了一种蓝牙低功耗组网并支持便捷互联的方法,其包括步骤:
S101、外围设备向周围以低功耗方式并以可连接非定向方式,周期性动态广播自身的数据包;
S102、中心设备周期性动态扫描周围的外围设备,根据所述数据包得到相应外围设备的蓝牙地址、业务类型和业务地址,组成外围设备业务列表;
S103、中心设备有业务触发请求或者接收到外围设备的业务触发请求后,中心设备和外围设备组建微微网。
其中,在步骤S101中,外围设备向周围广播自身的数据包。其中,数据包包括消息段的类型、业务类型、是否支持业务以及业务地址。剩下的数据包字节补零。
一个数据包可容纳多个消息段;消息段的类型,如蓝牙名称,蓝牙制造商,UUID等;业务类型最多有256种;用“11111111”表示支持该业务,用“00000000”表示不支持该业务,如果外围设备不支持该业务的话,业务地址用“00000000”表示。
一种广播模式如下:外围设备周期性广播256种业务类型和业务地址(不支持的业务类型和业务地址用“00000000”表示),外围设备广播的周期与中心设备扫描的周期一致,中心设备经过一轮256个扫描周期后,中心设备获得一个外围设备蓝牙地址、外围设备支持的业务类型和业务地址的列表。
另一种广播模式如下:
外围设备周期性广播支持的业务类型和业务地址,不广播不支持的业务类型和业务地址,中心设备周期性扫描周围的外围设备,举例来说,当外围设备只支持1种业务类型时,则每隔256个扫描周期广播;当外围设备支持256种业务类型时,则每隔1个扫描周期广播。
具体来说,设扫描周期为T,外围设备支持的业务类型为x,则外围设备的广播周期为,同时等待时间为,其中表示大于等于的最小整数。也就是说外围设备的广播周期和等待时间根据支持的业务种类不同而不同,如表一所示。
表一
支持的业务类型 | 广播周期 | 等待时间 |
1 | 256T | 0 |
2 | 128T | 0 |
3 | 64T | 64T |
… | … | … |
256 | 1T | 0 |
中心设备经过一轮256个扫描周期后,可以获得一个外围设备蓝牙地址,外围设备支持的业务类型和业务地址的列表,组网完成。
第一种模式和第二种模式,各有优点,第一种模式统一设置广播方,容易实现;第二种模式对于广播方根据支持的业务种类多少设置不同的广播周期,节省功耗。
中心设备和外围设备建立连接时,组成微微网,中心设备成为主机,外围设备成为从机,每个从机在不同的数据信道上与主机进行通信;然后中心设备以时分复用方式同时作为微微网的主机和广播信道的扫描方。外围设备以时分复用的方式作为微微网的从机以及广播信道中以不可连接方式广播的广播方。
BLE的微微网(Piconet)只有一个主机,允许存在1到3个从机,如图2所示,图中A、B和C组成一个Piconet,其中,A是主机,B和C是从机,每个从机在不同的数据信道(Piconet物理信道)上与主机通信。Piconet以时分复用的方式实现A和B之间的双工通信,A和C之间的双工通信,发送数据的一方是服务器,接收数据的一方是客户端,甚至A既可以作服务器又可以作客户端,同时收发数据。
A以时分复用的方式扮演Piconet中的主机和广播信道中的扫描方。因此,当D在广播信道中以“可连接”方式广播时,在Piconet中处于主机的A可以作为发起者向D发送连接请求信令并且将D加入到Piconet中。
C以时分复用的方式扮演Piconet中的从机和广播信道中的广播方(只能以“不可连接”方式广播)。因此,在Piconet中处于从机的C可以在广播信道中广播,可以被扫描方E扫描到。
组网完成后,中心设备得到外围设备业务列表,中心设备继续扫描,外围设备继续广播。只有当中心设备有业务触发请求或收到外围设备的业务触发请求时,中心设备和外围设备才建立连接,组成Piconet网络。中心设备向Piconet中的外围设备发送业务数据,使得外围设备收到消息后能与中心设备或其他外围设备实现互连。互连过程可分为4个应用场景,以下将分别作介绍。
场景一:
中心设备主动触发业务请求,分别向两个外围设备发送业务类型和业务地址,两个外围设备收到消息后实现互连,如图3所示。
组网完成后,外围设备继续以低功耗模式向周围以“可连接非定向”方式广播,中心设备主动扫描。当中心设备有业务触发请求时,先向第一个外围设备发送连接请求信令,如图表二所示,在连接请求信令中自定义第37位到39位为“010”,使得外围设备能够识别出该中心设备,从而在建立连接后,外围设备能够解析中心设备发来的消息,同时不对正常的BLE通信产生影响。
表二
中心设备和第一个外围设备建立连接,组成Piconet,中心设备成为主机,外围设备成为从机;然后,中心设备以时分复用方式同时扮演Piconet中的主机和广播信道中的扫描方,在保持与第一个外围设备连接的同时扫描第二个外围设备,并向第二个外围设备发送连接请求信令将它加入到Piconet中。在Piconet模式下,中心设备成为主机,外围设备成为从机,即中心设备分别在不同的数据信道上向Piconet中的两个外围设备发送业务类型、业务地址和主从模式数据,如图4所示。
自定义的链路层数据信令的Payload(有效载荷)格式中,长度(Length)的值表示业务类型(Type)和业务对象地址(Object Address)的字节总数;模式(Mode)用来选择主机和从机,“11111111”表示主机,“00000000”表示从机;Payload的剩余字节补零。当中心设备开始发送数据时,数据信道信令的Header格式如下表三所示,此时,外围设备监听并接收数据。其中,值为“10”的LLID(链路层标志)代表发送完整数据,值为“1”的MD(更多数据)表示还有更多数据等待发送,值为“11111”的Length表示Payload和MIC的字节总数,如果MIC也包括在数据信道的信令里面,其中,Payload的长度为27字节,MIC占有固定的4字节。
表三
LLID | NESN | SN | MD | RFU | Length | RFU |
10 | | | 1 | | 11111 | |
当中心设备发送完毕时,数据信道信令的Header格式如下表四所示,值为“0”的MD表示全部数据已经发送完毕。此时,中心设备和外围设备断开连接,中心设备不再发送业务数据,同时外围设备也停止监听和接收数据。
表四
LLID | NESN | SN | MD | RFU | Length | RFU |
10 | | | 0 | | 11111 | |
两个外围设备收到中心设备发来的信令后,根据业务类型、业务地址和主从模式进行互连。
场景二:
外围设备主动向中心设备发送业务触发请求,发送业务类型,中心设备收到消息后根据业务类型找到业务列表中具有相同业务类型的另外一个外围设备,然后中心设备分别向这两个外围设备发送业务类型和业务地址,使得外围设备收到消息后实现互连,如图5所示。
组网完成后,外围设备继续以低功耗模式向周围以“可连接非定向”方式广播,中心设备主动扫描。当外围设备有业务触发请求时,广播的数据包的内容如下表五所示,使得中心设备能够识别。其中,Length的值表示AD Type(消息段类型)和Service Type(业务类型)的字节总数;AD Type的值为“0C”,该值未被蓝牙联盟定义过,防止对其他BLE设备产生干扰;Service Type表示外围设备的业务触发类型;广播的数据包的剩余字节补0。
表五
当中心设备收到上述广播信令时,根据业务类型找到外围设备业务列表中具有相同类型的另外一个外围设备(如存在多个具有相同业务类型的外围设备,那么选择列表中符合条件的第一个外围设备),先向第一个外围设备发送连接请求信令并建立连接,组成Piconet,中心设备成为主机,外围设备成为从机;然后,中心设备以时分复用方式同时扮演Piconet中的主机和广播信道中的扫描方,在保持与第一个外围设备连接的同时扫描第二个外围设备,并向第二个外围设备发送连接请求信令将它加入到Piconet中。在Piconet模式下,中心设备成为主机,外围设备成为从机,即中心设备分别在不同的数据信道上向Piconet中的两个外围设备发送业务类型、业务地址和主从模式数据。
自定义的链路层数据信令的Payload同场景一。当中心设备开始发送数据时,数据信道信令的Header格式如表三所示,当中心设备发送完毕时,数据信道信令的Header格式如表四所示。
两个外围设备收到中心设备发来的信令后,根据业务类型、业务地址和主从模式进行互连。
场景三
中心设备主动触发业务请求,向外围设备发送业务类型和业务地址,外围设备收到消息后,实现中心设备和外围设备的互连,如图6所示。
组网完成后,外围设备继续以低功耗模式向周围以“可连接非定向”方式广播,中心设备主动扫描。当中心设备有业务触发请求时,向指定的外围设备发送连接请求信令并建立连接,组成Piconet。在Piconet模式下,中心设备成为主机,外围设备成为从机,即中心设备向Piconet中的外围设备发送业务类型、业务地址和主从模式数据,如图7所示。
自定义的链路层数据信令的Payload格式中,将Object Address的内容改为中心设备的业务地址。当中心设备开始发送数据时,数据信道信令的Header格式如表三所示,当中心设备发送完毕时,数据信道信令的Header格式如表四所示。
外围设备收到中心设备发来的信令后,根据业务类型、业务地址和主从模式与中心设备进行互连。
场景四
外围设备主动触发业务请求,向中心设备发送业务类型,中心设备收到消息后,向外围设备发送业务类型、业务地址和主从模式,实现中心设备和外围设备的互连,如图8所示。
组网完成后,外围设备继续以低功耗模式向周围以“可连接非定向”方式广播,中心设备主动扫描。当外围设备有业务触发请求时,广播数据包为表五所示,使得中心设备能够识别。
当中心设备收到上述广播信令时,先根据广播信令中的业务类型在外围设备业务列表中寻找是否具有相同类型的另外一个外围设备(如存在多个具有相同业务类型的外围设备,那么选择列表中符合条件的第一个外围设备),如果找到,则转到场景二;如果找不到,则继续留在场景四。然后根据业务类型与自己支持的业务类型匹配,如果找到则向该外围设备发送连接请求信令并建立连接,组成Piconet;如果找不到则不发送。在Piconet模式下,中心设备成为主机,外围设备成为从机,即中心设备向Piconet中的外围设备发送业务类型、业务地址和主从模式数据,如图7所示。
自定义的链路层数据信令的Payload格式中,将Object Address的内容改为中心设备的业务地址。当中心设备开始发送数据时,数据信道信令的Header格式如表三所示,当中心设备发送完毕时,数据信道信令的Header格式如表四所示。
外围设备收到中心设备发来的信令后,根据业务类型、业务地址和主从模式与中心设备进行互连。
基于上述方法,本发明还提供一种蓝牙低功耗组网并支持便捷互联的系统,其包括:
外围设备,用于向周围以低功耗方式并以可连接非定向方式,周期性动态广播自身的数据包;
中心设备,用于周期性动态扫描周围的外围设备,根据所述数据包得到相应外围设备的蓝牙地址、业务类型和业务地址,组成外围设备业务列表;
中心设备有业务触发请求或者接收到外围设备的业务触发请求后,中心设备和外围设备组建微微网。
进一步,所述数据包包括消息段的类型、业务类型、是否支持业务以及业务地址。
进一步,外围设备周期性广播256种业务类型和业务地址,外围设备广播的周期与中心设备扫描的周期一致,中心设备经过一轮256个扫描周期后,中心设备获得一个外围设备蓝牙地址、外围设备支持的业务类型和业务地址的列表。
进一步,设扫描周期为T,外围设备支持的业务类型为x,则外围设备的广播周期为,同时等待时间为,其中表示大于等于的最小整数。
综上所述,本专利基于低功耗蓝牙作为无线通信方式,中心设备扫描,外围设备广播。在GAP层上,外围设备通过动态广播信令向中心设备发送外围设备蓝牙地址,支持的无线连接业务类型和业务地址。于是中心设备得到一个包含外围设备蓝牙地址、支持的业务类型和业务地址的列表,自动组网完成。然后在GAP层,中心设备主动触发业务请求,或者接收外围设备的业务触发请求后,中心设备和外围设备组建Piconet网络,使得中心设备在GATT层向外围设备发送业务类型、业务地址和主从模式,在4种不同应用场景下实现互连并开启无线连接业务,互连便利。整个过程中,用户操作简便,同时,智能终端平时具有超低的待机功耗,不失为一种好的方案。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。