无线电接口
编辑
“蓝牙低功耗”技术采用与“经典蓝牙”技术相同的工作频率(2.400 GHz-2.4835 GHz - ISM频带),但使用另一组信道。不同于经典蓝牙的79 1-MHz信道,蓝牙低功耗使用40 2-MHz信道。在一个信道内,数据使用高斯频移调制传输,类似经典蓝牙的基本速率方案;比特率1Mbit/s,最大发射功率10 mW。进一步细节描述在蓝牙核心规格V4.0 (页面存档备份,存于互联网档案馆)的Volume 6 - Part A(物理层规范)。
蓝牙低功耗使用跳频扩频抵抗窄带干扰问题。经典蓝牙也使用跳频扩展,但细节有所不同;因此,FCC和ETSI将蓝牙技术分类为一个FHSS方案,蓝牙低功耗被分类为一个数字调制技术或直接串行扩频。[35]
技术标准
经典蓝牙技术
蓝牙低功耗技术
距离/范围(理论最大值)
100米(330英尺)
>100米(>330英尺)
空中数据速率
1–3 Mbit/s
125 kbit/s – 1 Mbit/s – 2 Mbit/s
应用程序吞吐量
0.7–2.1 Mbit/s
0.27 Mbit/s
活跃连接
7
未定义;取决于实现
安全性
56/128位,以及应用层用户定义
使用Counter Mode CBC-MAC(英语:Counter Mode CBC-MAC)的128位AES,以及应用层用户定义
健壮性
自适应快速跳频扩展,FEC,快速ACK
自适应跳频扩展,Lazy确认,24位CRC,32位消息完整性检查
潜伏时间(从非连接状态)
典型100 ms
6 ms
发送数据的最小总时间(影响续航时间)
100 ms
3 ms [36]
语音能力
是
否
网络拓扑
Scatternet(英语:Scatternet)
Scatternet
功耗
参考值1 W
0.01至0.5 W(取决于使用情况)
峰值电流消耗
<30 mA
<15 mA
服务发现
是
是
规范概念
是
是
主要用途
移动电话、游戏、耳机、立体声音频流、智能家居、可穿戴设备、汽车、个人电脑、安防、接近传感、医疗保健、运动健身等。
移动电话、游戏、耳机、立体声音频流、智能家居、可穿戴设备、汽车、个人电脑、安防、接近传感、医疗保健、运动健身、工业等。
更多技术细节见蓝牙技术联盟官方发布的规范。请注意,功耗不是蓝牙规范的一部分。
宣告与发现
编辑
蓝牙低功耗设备通过广播宣告(advertising)分组的方式被发现。为减少干扰,这使用3个独立信道(频率)完成。宣告设备在这三个频道中的至少一个上发送分组,发送周期被称为宣告间隔。为减少多次连续冲突的机率,每个宣告时间间隔都会增加一个最长10毫秒的随机延迟。扫描器则在扫描窗口时对信道进行监听,扫描周期性重复。
因此,发现设备的等待时间存在概率性,取决于三个参数(宣告间隔、扫描间隔和扫描窗口)。
已隐藏部分未翻译内容,欢迎参与翻译。蓝牙低功耗的发现方案采用了周期性间隔技术,for which upper bounds on the discovery latency can be inferred for most parametrizations. While the discovery latencies of BLE can be approximated by models[37] for purely periodic interval-based protocols, the random delay added to each advertising interval and the three-channel discovery can cause deviations from these predictions, or potentially lead to unbounded latencies for certain parametrizations[38]。
软件模型
编辑
所有蓝牙低功耗设备使用“通用属性规范”(GATT)。蓝牙低功耗提供该应用程序接口了解到操作系统通常基于GATT概念[需要解释]。[39]GATT具有以下术语:
客户端
一个发出GATT命令和请求的设备,然后接受响应。例如一个计算机或智能手机。
服务器
一个接受GATT命令和请求的设备,然后返回响应。例如一个温度传感器。
特征
在客户端与服务器间传递的数据值,例如当前的电池电压。
服务
有关特征的收集,具有一系列操作来执行特定功能。例如,“体温计”服务包括一个温度测量值,以及测量的时间间隔。
描述符
描述符提供有关特征的其他信息。例如指示一个温度值特征的单位(如摄氏度),以及传感器可以测量的最大值和最小值。描述符是可选的——每个特征可以有任何数量的描述符。
某些服务和特征用于管理目的——例如,“通用访问”服务中的型号名称和串行号可作为标准特征读取。服务还可包含其他服务作为子功能;设备的主要功能被称为主(primary)服务,而附加功能被称为次(secondary)服务。
标识符
编辑
服务、特征和描述符被统称为属性(attributes),并以UUID标识。实现者可能会为所用的专有格式(英语:Proprietary format)挑选一个随机或伪随机UUID,但蓝牙技术联盟已预留一系列UUID(范围xxxxxxxx-0000-1000-8000-00805F9B34FB)[40])供标准属性使用。为提高效率,协议中的标识符以16位或32位值表示,而非完整UUID所需的128位。例如,设备信息(Device Information)服务采用短码0x180A而非0000180A-0000-1000-...。完整列表见蓝牙分配号码在线文档。
GATT操作
编辑
GATT协议提供了大量用于客户端的命令以发现有关服务器的信息。这包括:
发现所有主要服务的UUID
使用指定UUID查找一个服务
查找指定主服务的辅助服务
发现指定服务的所有特征
查找匹配指定UUID的特征
读取特定特征的所有描述符
除此之外,也提供读(从服务器传输到客户端)和写(客户端传给服务器)特征值的命令:
可以指定特征的UUID或句柄(handle)值(由上面的发现命令返回)来读取值。
写操作始终需要以句柄来标识特征,但可选是否需要服务器返回响应。
长读(Long read)和长取(Long write)可以在特征的数据长度超过无线链路的最大传输单元(MTU)时使用。
最后,GATT有提供通知(notifications)和指示(indications)。客户端可以请求服务器通知一项特征。服务器可以在其变为可用时将该值发送给客户端。例如,温度传感器的服务器可以在每次测量时通知其客户端。这得以避免客户端轮询服务器,造成服务器的无线电路保持运行。
指示(indication)与通知类似,不同之处是它需要客户端响应已收到该消息。
电池影响
编辑
读取(服务器到客户端)和写入(客户端到服务器)特征值的命令也已提供:
蓝牙低功耗芯片组功耗配置文件,不同的配置参数,依照Aislelabs的“iBeacon硬件旅行指南”[41]
蓝牙低功耗的设计使更低功耗的设备成为了可能。包括CSR、Dialog Semiconductor(英语:Dialog Semiconductor)、Nordic Semiconductor(英语:Nordic Semiconductor)、意法半导体、Cypress Semiconductor(英语:Cypress Semiconductor)和德州仪器在内的数家芯片制造商都推出了其为蓝牙低功耗优化的芯片组。外围设备与中央设备有着不同的功耗要求。据信标软件公司Aislelabs(英语:Aislelabs)的一项研究显示,诸如接近信标等外围设备通常使用一枚1000毫安时的纽扣电池工作1-2年。[42]
相比之下,连续扫描中央设备的同类信标可能在几小时内就消耗1000毫安时。在Android和iOS设备上,电池续航时间可能存在一些差异,具体取决于扫描类型和附近的蓝牙低功耗设备的数量[43]随着芯片组和软件的不断进步,目前智能手机所使用的蓝牙低功耗带来的功耗已可以忽略不计。[44]
拓展阅读
编辑
GATT在蓝牙4.0核心规格 (页面存档备份,存于互联网档案馆)的Volume 3 - Part G有完整描述。