White paper

|

09 Jan 2022

在物联网应用中使用蓝牙低能耗的用例可能性

本白皮书描述了蓝牙低功耗技术的工作方式以及如何将其应用到设备与互联网服务和应用的连接。蓝牙低功耗与其它物联网无线技术相比的一大突出特征是对智能手机和平板电脑的支持。因此,本白皮书还描述了如何在物联网中使用智能手机或平板电脑。

Bluetooth low energy

1 蓝牙低功耗技术概述



1.1 综述

2011年,蓝牙低功耗概念引入,成为Bluetooth v4.0的标志性特征。蓝牙低功耗是适合应用的少量数据定期或不定期转存的理想解决方案。因此,蓝牙低功耗尤其适用于传感器、执行器等要求极低功耗的小型设备。基于有限的延迟需求,能够较好地处理大量通信节点

  • 功耗极低
  • 稳健性相当于传统蓝牙
  • 唤醒和连接时间短
  • 良好的智能手机和平板电脑支持

1.2 无线电





图1:在 2.4 Ghz 频段内,蓝牙低功耗利用40个频道,而传统蓝牙则利用79个频道

蓝牙低功耗具备传统蓝牙的诸多功能,包括自适应跳频技术(AFH)。这些功能使蓝牙低功耗不仅易于设置,而且足够稳健可靠,适应苛刻的工作环境。为了支持较简单、成本较低的无线芯片组,蓝牙低功耗采用40 2 Mhz 频道,而传统蓝牙采用79 1 Mhz 频道。

1.3 双模蓝牙(Bluetooth Smart Ready)和单模蓝牙低功耗(Bluetooth Smart)蓝牙间的差异

图2示例了u-blox蓝牙模块和采用了单模蓝牙低功耗解决方案或双模解决方案的终端产品。在该示例中,Bluetooth Smart Ready(双模)设备包括双模蓝牙模块 OBS421 和智能手机。Bluetooth Smart(单模)设备包括蓝牙低功耗模块 OLS425 和温度传感器。







图2:单模和双模模块以及产品实例

单模设备是独立式蓝牙低功耗设备(又“Bluetooth Smart”设备),以低成本、低功耗为核心,针对小型电池供电设备优化。典型
单模设备即传感器(心率传感器、温度传感器等)或其他电池供电设备等。



双模设备(又“Bluetooth Smart Ready”设备)兼具蓝牙低功耗和传统蓝牙的优点。典型的双模设备即手机、平板电脑、计算机或本文中的网关设备。

1.4 蓝牙低功耗中的客户端和服务器概念



图3:客户端/服务器概念

蓝牙低功耗采用客户端/服务器模型。(需要数据的)客户端连接并访问一到多个(提供数据的)服务器。客户端通常扮演核心角色,服务器通常扮演外围角色。通常,一个传感器或一个配件就是服务器/外围设备,一台计算机、手机或平板电脑就是客户端/中央设备。涉及网关时,网关通常发挥客户端/核心作用。

1.5 “广告”是使设备处于蓝牙低功耗的方式

由于在广告开始前设备处于休眠模式,广告功能能够使蓝牙低功耗保持最低的功耗。






图4:蓝牙低功耗的广告功能。

当需要连接时,从设备(现在发挥广播作用)即“广告”。客户端扫描新设备(充当监测器)。当监测器发现目标连接设备时,它会发起连接。广告可能包含广播数据。

1.6 蓝牙低功耗连接



图5:连接设备

连接成功后,客户端/中央设备通过定期(称为连接时间间隔)发送数据并“轮询”服务器/外围设备数据对通信进行控制。时间间隔的选择取决于具体应用,可具体设置。

1.7 蓝牙低功耗软件栈



图6:蓝牙低功耗软件栈

  • L2CAP(逻辑链路控制和适配协议)该层负责对不同更高级别层协议间的数据多路处理以及数据包的分割和重组。
  • GAP(通用访问协议):该配置文件定义了连接蓝牙设备时与设备搜寻和链路管理相关的通用程序。
  • GAP(通用属性协议)为蓝牙低功耗提供配置文件和服务搜寻。过程描述了如何利用ATT(属性协议)搜寻服务,以及如何进行属性(数据)读写。服务和配置文件基于GATT开发。
  • 6LoWPAN(基于IPv6的低速无线个域网标准)GATT的一种替代方案是结合使用基于TCP/IP的通信和6LoWPAN。6LoWPAN 技术可用于压缩通过蓝牙低功耗发送的IP信息,以节约内存,减少功耗。

 

2 物联网(IoT)概述

随着每年百亿以上能够本地或通过互联网交换信息的微控制器的运送,出现了大量种类各异的“智能设备”。这些设备包括运动
传感器、水池水泵、气表/电表、路灯等各类设备。由于基础设施覆盖和物联网接入的迅速增加,这些设备均能通过互联网访问。这种
科技进步通常称为物联网(IoT)。还有万物联网(IoE)、物联网、嵌入式网站和工业4.0等名称。目标是建立一切小“物体”之间的互联网连接
包括随身携带或工厂、医院、城市或家用小“物体”。未来10年,爱立信和Cisco等公司有望推出500多亿连接设备。



图7:物联网(IoT)



物联网愿景的一个关键要求是易于部署、经济高效的低功耗无线解决方案。将所有小设备和传感器直接连接至固定网络或蜂窝网络的代价过高。一个易于部署
、经济高效且功耗低的解决方案是物联网的核心要求。蓝牙、蓝牙低功耗、802.15.4/无线个域网等类似无线技术可广泛应用于各种小设备的连接。传感器
连接至网关,然后网关再连接至互联网服务(见上图7)。网关可以是具有高运算能力的基于Linux的系统。当需要小巧、经济却功能强大的无线网关时,网关也可以基于 RTOS 平台。

3 蓝牙低功耗在IoT中的应用

以下是几个IoT应用蓝牙低功耗的实例。所有的用例均假设网关通过 TCP/IP 相关协议连接至互联网。



3.1 基于GATT的设备和服务/配置文件网关



图8:服务/配置文件觉醒网关

在该用例中,设备连接至网关,执行一个或多个基于GATT的服务。网关解释服务/配置文件,然后公开“xxx”Internet API(例如RESTful API)或包含从互联网发送和接收数据的“xxx”应用程序。在该用例中,网关可以是专用的固定设备或便携式设备。



该用例可应用于建筑物内传感器互联(家庭自动化或家庭护理)、穿戴式健康或理疗传感器以及各类计量或工业设备。

便携式设备(如智能手机或平板电脑)可利用其"xxx”觉醒GATT应用程序直接访问蓝牙低功耗设备或当网络连接时,利用互联网觉醒app访问"xxx" RESTful API或从云服务或云数据库中存储的蓝牙低功耗设备获取的数据。



这里所说的“云”可能是广域网路(WAN)或局域网(LAN),如工厂内的局域网。

3.2 使用GAP/GATT RESTful API的基于GATT的设备和网关

GAP/GATT RESTful API 是通过互联网访问基于GATT蓝牙低功耗设备的一般方法。API既允许数据读写,又可实现提示或通知
事件订阅(当蓝牙低功耗设备内的GATT服务支持提示和通知时)。





图9:利用GATT/GAP REST API的网关

在该用例中,蓝牙低功耗设备连接至网关,支持GAP和GATT RESTful API。网关100%通用且透明,无需包含有关“xxx”服务/配置文件的信息。



该用例可应用于建筑物内传感器互联(家庭自动化或家庭护理)、穿戴式健康或理疗传感器以及各类计量或工业设备。



一个网络互联便携式设备(手机或平板电脑)应用程序或云服务利用 GATT RESTful API 通过网关访问蓝牙低功耗设备数据。该应用程序或服务需要了解“xxx”服务/配置文件的能力。



便携式设备(智能手机或平板电脑)还可利用其“xxx”GATT app直接访问蓝牙低功耗设备。





这里所说的“云”可能是广域网路(WAN)或局域网(LAN),如工厂内的局域网。蓝牙技术联盟已制定了白皮书(参见https://www.bluetooth.org/en-us/说明书/参考-发表/白皮书)介绍 GAP和GATT RESTful API。

3.3 使用网络服务

互联网服务是一种网关内基于GATT的服务,允许蓝牙低功耗设备通过标准互联网协议(如HTTP)访问互联网。网关是通用的,任何已经实现了互联网服务客户端的连接设备均
可使用。





图10:使用网络服务的网关。

在该用例中,网关使网络服务实现。网关连接蓝牙低功耗设备通常利用网络服务读取数据并将数据写至云服务、数据库等。例如,如果云数据库或云服务执行RESTful API(现今常用方法),设备可发出一个HTTP GET或PUT指令访问服务/数据库数据。



当蓝牙低功耗设备需要控制数据传送时,该用例最适用。一个较好的例子是仪表将其数值传送至网络服务时所用的计量应用程序。



通过访问云服务/数据中中存储的数据,网络连接便携式设备(如智能手机或平板电脑)应用程序或网络服务还能间接访问蓝牙低功耗设备数据。



在该用例中,网关可以是专用的固定设备或便携式设备(如智能手机),假设智能手机运行一个执行网络服务的应用程序(详见下文)。



这里所说的“云”可能是广域网路(WAN)或局域网(LAN),如工厂内的局域网。

3.4 使用串口服务

低功耗串口服务是u-blox开发的基于GATT的定制化蓝牙低功耗服务。该服务利用u-blox一款嵌入式蓝牙低
功耗模块实现设备和网关间的透明串口通信。网关反过来进一步促进与网络/云端的连接。



图11:使用u-blox低功耗串行端口服务的网关

在该用例中,网关利用u-blox低功耗串行端口服务传送设备和“网络连接软件”数据,并将设备数据传送至“网络连接软件”(见上图)。还有几个应用实景:

包括下列内容:

  1. 在网关中配置一个IP地址和端口,并将接收自该端口的数据发送至设备。从设备接收到的数据即配置的IP地址和端口。
  2. 网络服务打开一个WebSocket,随后在设备和WebSocket间进行透明数据传输。
  3. “网络连接软件”假设从设备接收到的数据是一个TCP/IP指令(如HTTP PUT或GET指令)。该用例类似于上文的网络服务。



当连接设备已有串行连接,需要将数据透明发送至网络服务时,该用例最适合。



这里所说的“云”可能是广域网路(WAN)或局域网(LAN),如工厂内的局域网。

3.6 基于蓝牙低功耗传输的IPv6

对于基于蓝牙低功耗的IPv6支持,必须部署蓝牙规范 v4.1或更新版本,蓝牙技术联盟刚发布了IPv6服务和配置文件。由于IPv6支持需要用到6LoWPAN
协议,IETF草案(参见http://datatracker.ietf.org/doc/draft-ietf-6lowpan-btle/)中6LoWPAN协议直接添加至蓝牙低功耗L2CAP协议层的顶层。执行后,
6LowPAN / Ipv6 与GATT配置文件同时运行。借助该方法,IPv6可在本地蓝牙低功耗设备和网络服务间端对端使用。



图12:利用基于蓝牙低功耗的IPv6的网关

在该用例中,设备连接至网关,将其应用程序作为网络应用程序执行。CoAP常用于将数据发送至网关,以此减少费用。网关完全感知不到应用程序,转换发生在 CoAP 和 HTTP 之间。也可能在一些用例中,在设备层前全程使用HTTP,但这比CoAP的资源消耗更大。



该用例较灵活,使用不受连接设备类型影响。尤其是该方法适用于一些拟达到IP标准的设备,例如当采用智能能源2.0(Smart Energy 2.0)标准的设备欲采用蓝牙低功耗而非当前标准802.15.4时。



通过基于蓝牙低功耗的 Ipv6,网络设备(计算机、手机或平板电脑)或云服务可通过标准网络功能,如利用 HTTP REST API 或其他IP协议透明访问蓝牙低功耗设备应用。



当点对点连接时,便携式设备的应用程序也可访问蓝牙低功耗设备,并仍充分利用网络功能,尽管这不是主要的目的。



这里所说的“云”可能是广域网路(WAN)或局域网(LAN),如工厂内的局域网。

3.6 组合用例

也有一些本地蓝牙低功耗设备同时采用上述两个或多个用例。例如,蓝牙低功耗设备可能同时执行IPv6和GATT服务或
在支持网络服务作为客户端的同时执行GATT服务。



网关可同时支持上述多个甚至所有的访问方式。

3.7 智能手机充当网关



图13:智能手机充当网关。

在上述多个用例中,智能手机可充当网关,通过其GSM、3G、4G或Wi-Fi连接访问云端。网关可以是临时装置,例如当某个应用程序正在运行且
访问某一蓝牙低功耗附件时。当智能手机连接至穿戴式蓝牙低功耗传感器时,网关也可以是永久性的。



一些用例列举:

  • 智能手机作为用户界面连接至蓝牙低功耗设备的同时,手机应用程序同时读取设备服务相关数据,并将数据传送至网络服务。
  • 穿戴式理疗/医疗蓝牙低功耗传感器发送数据至手机应用程序,随后数据传送至医院连接的网络服务。

     

3.8 利用网关扩大覆盖范围

当蓝牙低功耗用于物联网应用时,覆盖范围会成为蓝牙低功耗执行星形拓扑的限制因素。利用 2.4 GHz ISM 频段的多种不相兼容的技术通常支持网状网络和路由器进行范围扩大,但这样的解决方案目前在蓝牙低功耗中还不能实现。



图14:如何通过网关扩大蓝牙低功耗范围示例



图15:网关充当范围扩大器

图14和15显示了利用互联网关实现无线范围扩大的一种解决方案。上游链路可以是线缆(以太网)或无线链路(Wi-Fi或传统蓝牙);下游可以是
蓝牙低功耗链路。在这两个示例中使用了Wi-Fi上游链路。

由于上述各示例中的上游连接基于网络协议,因此IP协议包含所有必需的机制,以支持到云服务的流量路由,在某些情况下还包含
本地蓝牙低功耗设备之间的流量路由(例如当采用基于蓝牙低功耗的IPv6时)。

在本案例中,网关可以是一个小型轻量级网关,由低成本、低功耗微控制器(MCU)和多无线解决方案组成(一个内置支持蓝牙、蓝牙低功耗和Wi-Fi的无线芯片)。因此网关经济高效、外形小且功耗低。

3.9 安全性

安全至上,物联网应用中亦如此。本白皮书未详细说明安全方案;但总结一下,有以下三个适用的总体策略:

  1. 无安全性。这仅适用于一些无需考虑安全的特殊用例。
  2. 蓝牙低功耗设备间的链路层安全性以及网关和网络/云服务间的网络安全。
  3. 网络安全端对端。仅对IPv6用例有效。