蓝牙Mesh网络基础知识汇总

描述

在本文中,我们将熟悉一些基本的蓝牙网格概念,例如节点和元素。我们还将看到蓝牙网状网络中的节点有不同的要求。为了满足这些要求,蓝牙网状网络协议允许每个节点具有一些额外的可选功能,即中继、朋友、低功耗和代理功能。

了解蓝牙网状网络中的节点

首先,让我们考虑一个假设的智能家居示例来解释这些概念。考虑图 1 所示的平面图。

网络协议

图 1. 智能家居布局中的节点示例

在此示例中,每个房间都有一个或多个灯以及用于控制室温的恒温器。此外,走廊中还有一个占用传感器(图中的节点 15)。这些设备中的每一个都包含一个蓝牙无线电,以便能够与系统的其他部分进行通信。在蓝牙网状网络术语中,这些设备中的每一个都称为一个节点。

换句话说,节点是蓝牙网状网络的基本单元,它执行特定功能,例如照明或感测物理参数,并且包括能够与网络的其余部分通信的蓝牙无线电。

给定节点可以直接与一个或多个附近节点通信,但通常它不能直接与网络中的每个其他节点通信。不在彼此直接无线电范围内的节点应通过中间节点进行通信。例如,在上图中,节点 11 可以通过节点 9 与节点 14 进行通信。

蓝牙 Mesh 节点元素

蓝牙网状网络中的一个节点可能有多个组成部分。在上面的例子中,一组三个灯泡被抽象为网络中的一个节点,节点 6。在这种情况下,这三个灯泡之间的通信通过单个蓝牙无线电进行。在蓝牙网状网络的上下文中,节点的组成部分称为元素。

节点中的每个元素都有一个唯一的地址,称为单播地址。通过这些单播地址,我们能够独立控制节点的元素。根据蓝牙网格规范,元素是节点内的可寻址实体。

一个节点可以有不同类型的元素。例如,考虑一个还包括占用传感器的开关。在这种情况下,切换功能和占用感应功能是节点的两个不同元素。类似地,还具有光水平传感器的占用传感器形成具有两个元素的节点。网络的每个节点至少有一个元素,称为“主要元素”。节点的附加功能(如果有的话)称为“辅助元素”。

蓝牙节点特性:节点是异构的!

在蓝牙网状网络中,节点有不同的要求。例如,灯泡节点由电源供电,而传感器节点可能由电池供电。这两个节点的功率要求明显不同。虽然灯泡可以一直亮着,但传感器应将大部分时间花在睡眠模式以节省电量。

节点的处理能力也不相同。例如,通过网络路由信息的节点比不充当路由器的网络边缘节点需要更多的处理能力。此外,网络中的某些节点可能需要能够与不直接支持蓝牙网状网络的设备(例如智能手机和平板电脑)进行通信。

为了满足所有这些要求,蓝牙网状网络协议允许每个节点具有一些额外的可选功能。有四个预定义的节点特性(图 2),即中继、朋友、低功耗和代理特性。

网络协议

图 2. 典型的蓝牙网状网络由具有不同特性的节点组成。图片由英飞凌提供

让我们来看看这些节点特性。

中继节点特性:与 Zigbee 和 Thread 的区别

中继节点重新传输它接收到的信息。这是网状网络的基本要求,可扩展覆盖范围并增强可靠性。但是,应该注意,这是一个可选功能,并非所有节点都需要充当中继器。例如,位于网络边缘的节点不需要是中继节点。

由于中继节点需要不断地监听网络并重新传输接收到的信息,因此其功耗较高,通常需要市电供电。

蓝牙网状网络与 Zigbee 和 Thread 等协议之间存在根本区别。Zigbee 和 Thread 使用路由表,这意味着为从节点 A 到节点 B 的消息选择特定的路径。但是,使用蓝牙网格,没有特定的路径,数据包只是广播到所有附近的节点。中继节点转发他们收到的消息,直到它到达他们的最终目的地。

由于这种被称为“泛洪传输”模型的路由方法,必须仔细选择中继节点的数量和位置,以提供足够的传输路径,而不会不必要地增加网络流量。大量的中继节点会增加网络的数据包冲突率、延迟和能量消耗。

低功耗节点和友元特性

顾名思义,低功耗节点 (LPN) 试图将功耗降至最低。这对于电源有限的设备非常有用,例如家庭自动化中的电池供电传感器节点和零售店中的价格标签。为了最大限度地降低功耗,LPN 大部分时间都处于休眠模式,此时节点无线电硬件已关闭。

总体而言,LPN 仅短暂唤醒以与网络通信,并且无法在睡眠模式下接收其消息。因此,需要另一个没有功率限制并且可以始终开启的节点来收集应该传递到 LPN 的消息。LPN 通过它与网络通信的这个关联节点称为朋友节点。

朋友节点始终侦听网络并为其关联的 LPN 收集传入消息。当 LPN 唤醒时,它会 ping 其朋友节点以检查是否有任何新消息。朋友节点还将来自 LPN 的消息中继到网络中,这意味着朋友节点也应该是中继节点。

例如,灯泡是一种常见的设备类型,可以作为附近功率受限设备的朋友节点。如下图 3 所示,一个好友节点可以与多个 LPN 建立好友关系。

网络协议

图 3. 显示朋友节点和 LPN 关系的示例

友谊功能允许我们将功率受限的设备添加到蓝牙网状网络。想了解更多关于蓝牙mesh中的友谊,请参考这篇文章。

节点代理功能

代理功能允许节点充当网状网络和不直接支持蓝牙网状但支持蓝牙低功耗 (BLE)的智能手机等设备之间的接口。在蓝牙网状网络中,有两种不同的消息传输方法:ADV(或广告)承载和 GATT(或通用属性)承载,如图 4 所示。

网络协议

图 4. ADV 承载(左)和 GATT 承载(右)概览。图片由瑞萨电子提供。

ADV 承载使用 BLE 设备的广播状态来发送和接收消息。当 BLE 设备发布广告时,它会定期发送数据包,这些数据包可以被附近的设备检测和处理。ADV 承载发送的消息可以被多个节点同时接收。此方法用于网状网络内部的通信,但并非所有可用的智能手机都支持。ADV 承载基于 BLE 的 GAP(或通用访问配置文件)并使用一种特殊类型的广告,称为不可连接和不可扫描的非定向广告。

另一方面,GATT 承载在点对点拓扑中发送和接收消息。在这种情况下,需要建立连接。所有支持 BLE 的智能手机都可以通过 GATT 承载进行通信。蓝牙网状网络的代理节点支持使用 GATT 承载和 ADV 承载进行通信。换句话说,代理节点具有在 GATT 和 ADV 承载之间中继消息的能力,因此可以充当不支持蓝牙网状网络但具有 BLE 功能的智能手机等设备的网状网络接口。

代理功能还可用于将支持 BLE 的旧传感器连接到蓝牙网状网络。例如,基于蓝牙 4.0 的旧传感器可以与具有代理功能的灯泡通信。在这种情况下,灯泡将消息从一个承载传输到另一个承载,以便旧传感器可以与网络通信。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分