降低蓝牙设备文件传输能耗的方法及装置 【技术领域】
本发明涉及一种降低蓝牙设备文件传输能耗的方法及装置。
背景技术
蓝牙是目前一种技术与市场成熟度较高的短距离无线语音与数据通信的开放性全球通信规范。具有蓝牙功能的装置有通信方便,体积小携带方便,应用场景广泛等特点,现在的移动设备一般均将蓝牙作为无线标准配置。在2007年,Bluetooth SIG发布了更安全的2.1版蓝牙协议规范,可以预计蓝牙设备市场应用将更加广阔。
蓝牙一个重要的功能就是进行文件的共享传输。然而,现今的移动终端均具有电池能量有限的特点,随着应用的丰富与多样化,使得蓝牙文件传输过程中设备电池能耗的问题十分突出。蓝牙设备在文件传输过程中分为蓝牙主设备和蓝牙从设备两个角色,一个蓝牙主设备可以同时和7个蓝牙从设备连接进行文件传输。蓝牙主设备要通过对通讯范围内其他蓝牙从设备的扫描查询来建立连接。然而,在现实移动应用场景中,一个蓝牙主设备同时和七个蓝牙从设备连接的情况极为少见,绝大多数情况下为点对点的传输,从而过多不必要的查询蓝牙从设备的次数消耗了较多电能。另一方面,在连接建立后,主蓝牙从设备均可收发数据,在蓝牙新版通讯规范中增强了对于文件安全传输的功能,因此蓝牙主设备角色在数据传输时的电能消耗也有所增加,在实际应用中,当建立连接后可以采用蓝牙协议规范提供的角色切换过程功能将蓝牙主设备切换为蓝牙从设备以降低能耗。最后,在文件传输结束后,在同一个蓝牙微微网中,设备一般仍会周期性发送查询数据包以保持与对方设备的信道同步。然而这在大多数实际情况下也并非必要,尤其当设备电量较低的时候增加了不必要的设备能量消耗。
【发明内容】
为了解决蓝牙设备文件传输时能耗过高的上述技术问题,本发明提供一种降低蓝牙设备文件传输能耗的方法及装置。
本发明的技术方案包括以下步骤:
a)利用功能查询单元查询蓝牙设备在文件传输过程中所处的状态与传输信息;
b)根据蓝牙设备在通讯过程中所处的状态与能量水平使蓝牙设备处于低功耗状态。
上述的降低蓝牙设备文件发送过程中能量消耗的方法,所述步骤b包含如下步骤:
b1)在蓝牙主设备查询蓝牙接收方设备阶段,当蓝牙主设备电池电量处于高水平,但已查询到蓝牙从设备,并且接入的蓝牙从设备数目达到允许接入上限时,设置扫描窗口尺寸为零,主动结束查询扫描状态;
b2)在建立连接预备数据传输阶段,当蓝牙设备不处于一对多的并发传输状态时,查询蓝牙主设备电量水平,当蓝牙主设备电量处于较低水平时,进行角色切换,把蓝牙主设备切换为蓝牙从设备;
b3)在文件发送结束阶段,若蓝牙设备电量处于低水平状态,则将蓝牙设备主动转入设备休眠待机状态。
上述的降低蓝牙设备文件传输能耗的方法,所述步骤b1进一步包括:
在蓝牙主设备启动查询扫描其它蓝牙设备之前,确定蓝牙主设备是否有响应蓝牙从设备数目最大限制,并获取扫描阶段预设置的查询扫描窗口尺寸参数值大小。
上述的降低蓝牙设备文件传输能耗的方法中,所述步骤b2进一步包括:
在建立连接预备文件传输之前,获取指向该文件的指针值,并通过该指针取得该文件发送的目标地址,进而确定该文件属于多人发送还是点对点发送的情况。
一种降低蓝牙设备文件传输能耗的装置,包括:
一功能查询单元;与设备状态与信息存储单元相连,用于向设备状态与信息存储单元进行查询,获取蓝牙设备所处的状态与设备电量水平;
一设备状态与信息存储单元,用于记载蓝牙设备当前所处的状态信息,以及蓝牙设备允许接入的蓝牙从设备数目上限和查询扫描窗口尺寸的预设值;
一指针值存储单元,用于存储指向待发送文件的指针值,该指针标示所要发送文件中包含的目标地址值;
降低功耗单元,用于根据蓝牙设备所处的状态与设备电量水平使蓝牙设备处于低功耗状态。
上述的降低蓝牙设备文件传输能耗的装置中,所述降低功耗单元进一步包括:
一查询阶段降低功耗单元,利用功能查询单元中获取的信息判断当前蓝牙设备状态,若在目标设备查询阶段且已查询到目标设备,同时蓝牙主设备允许同时连接的蓝牙从设备数目已达允许上限,则降低查询扫描窗口尺寸;
一文件传输阶段降低功耗单元,利用功能查询单元中获取的信息判断当前蓝牙设备状态,若在文件传输阶段且不存在一对多同时传输情况时,则选择电量较低的蓝牙设备为蓝牙从设备;
一传输结束阶段降低功耗单元,利用功能查询单元中获取的信息判断当前蓝牙设备状态,若传输已结束且蓝牙设备电量处于较低水平,则把蓝牙设备转入休眠待机状态。
本发明的技术效果在于:1)本发明在点对点传输时,可以主动设置扫描窗口尺寸来控制大多数情况下不必要的查询扫描次数,降低查询扫描阶段设备的能耗。2)本发明中当蓝牙设备不处于一对多的并发传输状态时,则按蓝牙设备电池电量高低调用蓝牙的角色切换,减少低电量蓝牙设备传输文件时的能耗。3)本发明中当传输结束后,若设备电量较低,则停止与其他设备周期性发查询包保持同步,及时将设备转入休眠待机状态以降低设备的能耗。
下面结合附图对本发明作进一步的说明。
【附图说明】
图1是本发明实例中的蓝牙模块网络配置的状态流程图。
图2是本发明的流程图。
图3是实现发明的装置结构图。
【具体实施方式】
下面结合图1具体说明蓝牙模块网络配置部分。
参见图1,图1所示的是点对点的蓝牙模块网络配置流程图,整个配置过程基本可以分为三个阶段:1)蓝牙主设备查询扫描对方接收设备阶段;2)双方建立连接,进行文件传输阶段;3)传输结束阶段。蓝牙主设备和从设备均从待机状态开始,该流程包括如下步骤:
101步骤:当蓝牙主设备A准备向蓝牙从设备B发送文件时,A会进入查询扫描对方设备阶段,在该阶段A在通讯范围内广播查询数据包并扫描对方设备是否存在。
201步骤:蓝牙从设备B接收到查询包后,进入查询页扫描状态并响应回复A的查询数据包,预备建立连接。
102步骤:当蓝牙主设备A收到蓝牙从设备B的应答数据包后,建立通讯连接并进入活动蓝牙主设备状态,向蓝牙从设备B请求准备发送文件。
202步骤:当蓝牙从设备B收到蓝牙主设备A的准备发送数据请求后,响应文件发送请求并进入活动蓝牙从设备状态,预备接收文件。
103步骤:当蓝牙主设备A收到蓝牙从设备B应答后,传输文件直至传输完毕,在此阶段蓝牙主设备A一直处于AM(Active Master)状态。
203步骤:蓝牙从设备开始接收文件直至文件接收完毕,在此阶段蓝牙从设备B一直处于AS(Active Slave)状态。
104步骤:蓝牙主设备A在文件传输完毕后,若电量处于较低水平,可以转入休眠待机状态,否则进入PM(Park Master)状态。
204步骤:蓝牙从设备B在文件传输完毕后,若电量处于较低水平,可以转入休眠待机状态(SB,Stand by),否则进入PS状态(Park slave)。
105步骤:蓝牙主设备A在进入PM状态后将周期性发数据包以保持与蓝牙从设备B的同步。
205步骤:蓝牙从设备B在进入PM状态后将周期性发数据包以保持与蓝牙主设备A的同步。
参见图2,图2是本发明的流程图。
10步骤:当设备处于查询扫描(IQ)状态时,通过功能查询单元查询蓝牙主设备允许接入的蓝牙从设备数目上限以及预设置的查询扫描窗口尺寸大小,当连接的蓝牙从设备数目已经达到允许接入的数目上限时,则将查询扫描窗口尺寸设置为零,在该参数值为零的情况下,蓝牙设备主动结束查询扫描状态。
20步骤:当蓝牙设备处于活动蓝牙主设备(AM)状态时,通过功能查询单元对指针值存储单元进行查询,以获取待发送文件的目标地址,通过目标地址判断该文件是否存在一对多并发同时传输的情况,若没有一对多并发传输,则调用功能查询单元查询蓝牙主设备电量,若蓝牙主设备电量较低,则在传输过程中调用蓝牙提供的角色切换过程,将蓝牙主设备切换为蓝牙从设备以降低能耗。
30步骤:文件传输结束之后,调用功能查询单元查询设备电量,若处于较高水平,则进入监听待机状态(PM/PS),若电量处于较低水平,则不进行与其他蓝牙设备的信道同步工作,主动进入休眠待机状态以降低设备能耗。
参见图3,图3所示的是降低蓝牙设备文件传输能耗的装置示意图,该装置结构对应于上述降低能耗方法所涉及的几个单元结构,包括:设备状态与信息存储单元;功能查询单元;指针值存储单元,查询阶段降低功耗单元;文件传输阶段降低功耗单元;传输结束阶段降低功耗单元;该装置的运行基本流程包括如下步骤:
A01步骤:功能查询单元向设备状态与信息存储单元进行查询,获取蓝牙发送设备允许接入的蓝牙从设备最大限制数目信息、预设置的查询扫描窗口尺寸以及设备电量水平;并查询蓝牙设备当前所处的状态,根据蓝牙设备所处的状态转入相应步骤进行处理。
B01步骤:若处在查询扫描阶段,则将查询到的允许接入的蓝牙从设备最大限制数目信息以及预设置的查询扫描窗口尺寸信息传给查询阶段降低功耗单元,并触发该单元;
C01步骤:若处在文件传输阶段,则查询指针值存储单元,获取指向待发送文件的指针值,并通过该指针查询取得该文件发送的目标地址,判断是否存在一对多并发传输阶段,并将查询到的信息传给传输阶段降低功耗单元,并触发该单元;
D01步骤:若处于传输结束阶段,则将查询到的设备电量水平信息传给传输结束阶段降低功耗单元,并触发该单元。
上述查询阶段降低功耗单元,若在目标设备查询阶段且已查询到目标设备,同时蓝牙主设备允许同时连接的蓝牙从设备数目已达允许上限,则设置查询扫描窗口尺寸为零,结束设备查询扫描阶段。
上述文件传输阶段降低功耗单元,若在文件传输阶段不存在一对多同时传输的情况时,则调用蓝牙角色切换过程将电量较低的蓝牙主设备切换为蓝牙从设备。
上述传输结束阶段降低功耗单元,若传输已结束且设备电量处于较低水平,则不进行与其他设备的信道同步,主动把设备转入休眠待机状态。
上述设备状态与信息存储单元,存储着设备当前所处的状态信息与设备允许接入的蓝牙从设备数目上限和查询扫描窗口尺寸的预设值。
上述功能查询单元包括:通过向设备状态与信息存储单元进行查询,获取设备当前所处的状态与电量水平;查询获取发送设备允许接入的蓝牙从设备最大限制数目信息以及预设置的查询扫描窗口尺寸大小;查询指针值存储单元,以获取指向该文件的指针值,并通过该指针查询取得该文件发送的目标地址。
本发明与采用标准蓝牙发送方法的能量消耗具体数据对比见下表1:
实验次数 现有方法所消耗能量(mW) 本发明所消耗能量(mW)
1 1348.5 1125.7
2 1432.6 1203.5
3 1476.5 1158.2
4 1396.4 1184.2
实验次数 现有方法所消耗能量(mW) 本发明所消耗能量(mW)
5 1325.8 1232.1