文档
首页»文档»技术文件»LoRaWAN®A类设备

LoRaWAN®A类设备的深入研究

简介

基于LoRaWAN®的网络由终端设备、网关、网络服务器和应用服务器组成。终端设备将数据发送到网关(上行链路),网关将其传递给网络服务器,网络服务器又根据需要将其传递给应用服务器。

图1:上行传输

此外,网络服务器可以通过网关向终端设备发送消息(用于网络管理或代表应用服务器)(下行).

图2:下行传输

LoRaWAN网络中的终端设备分为三类:a类、B类和c类。虽然终端设备总是可以随意发送上行链路,但设备的级别决定了它何时可以接收下行链路。该等级还决定了设备的能源效率。设备越节能,电池寿命就越长。

所有终端设备必须支持A类(“Aloha”)通信。A类终端设备大部分时间处于睡眠模式。因为LoRaWAN不是一个“槽位”协议,所以在传感器读数发生变化或计时器触发时,终端设备可以与网络服务器进行通信。基本上,它们可以在任何时候唤醒并与服务器通话。设备发送上行链路后,它在上行链路一秒和两秒后“侦听”来自网络的消息(接收窗口)然后继续睡觉。A类是最节能的,并导致最长的电池寿命。

相比之下,B类终端设备不会只等待其中一个传感器注意到环境的变化或触发计时器,而是会根据一个可配置的、网络定义的时间表唤醒并打开一个接收窗口来监听下行链路。由网络传输的周期性信标信号允许这些终端设备将其内部时钟与网络服务器同步。

最后,C类(“连续”)终端设备永远不会休眠。它们不断地监听来自网络的下行消息,除非是为了响应传感器事件而传输数据。这些设备能耗更高,通常需要持续的电源,而不是依靠电池。

为了说明每种不同终端设备类别的不同功耗水平,请参见图3。

图3:按设备类别划分的能量消耗

在这篇论文中,我们深入研究了A类终端设备。

了解A类终端设备

LoRaWAN协议依赖于aloha类型的网络。在这种类型的网络中,允许终端设备进行任意传输。

A类的关键特征是通信只由终端设备发起。

来自网络服务器的下行消息被排队,直到下一次从终端设备接收到上行消息并打开接收窗口(Rx)。这种设计特别适用于需要下行通信以响应上行链路的应用程序,或者可以提前安排下行链路,但延迟要求相当宽松的应用程序。

接收窗口

在上行链路之后,a类终端设备打开一个短接收窗口(Rx1),如果在此期间没有接收到下行链路,则打开第二个接收窗口(Rx2)。Rx1的开始时间在上行链路传输结束后的固定时间之后开始。通常,这个延迟是1秒,但是这个持续时间是可配置的。Rx2通常在上行链路传输结束两秒后开始,尽管这个持续时间也是可配置的。下面的图说明了不同的接收窗口状态的可能性。

图4:没有收到任何东西

图5:Rx1窗口接收到的数据包

图6:Rx2窗口接收到的数据包

Rx1 (RECEIVE_DELAY1的网络参数LoRaWAN区域参数LoRa联盟的文件。默认延迟可能是特定区域的,并且可以由网络操作员通过MAC命令更改RxTimingSetupReq.通常设置为1秒

结束设备在Rx1关闭后等待一秒钟,然后打开Rx2。这意味着RECEIVE_DELAY2 = RECEIVE_DELAY1 + 1秒。

注意:设备将不会尝试发送另一个上行消息,直到:

  1. 它在Rx1期间收到了下行消息,或者
  2. 最后一个传输之后的第二个接收窗口已经完成

传输频率和数据速率

用于Rx1的频率是上行频率的函数。它使用的数据速率是用于上行传输的数据速率的函数。上行链路频率与下行链路Rx1频率和数据速率的缺省关系在LoRaWAN区域参数文档。网络操作员可以使用相关的LoRaWAN MAC命令远程重新配置默认参数。

Rx2使用可以使用MAC命令配置的频率和数据速率。默认值是特定于区域的。

MAC的命令

对于Rx1,上行传输(Tx)数据速率和下行数据速率之间的偏移可以使用Rx1DRoffset场的RxParamSetupReqMAC命令

使用MAC命令配置Rx2数据速率RxParamSetupReq

DiChannelReqMAC命令允许网络将不同的下行频率与Rx1窗口相关联。该命令适用于所有支持NewChannelReqMAC命令。例如,DiChannelReq适用于欧盟和中国,但不适用于美国或澳大利亚,如LoRaWAN区域参数文件所述。

A类能源概况

每个接收窗口的持续时间必须至少与终端设备的无线电收发器有效检测下行前导所需的时间相同。如果设备在此期间检测到下行前导,无线电接收器将保持打开状态,直到下行数据被解调。

如果在Rx1期间检测到下行链路并解调,如果(在地址和消息完整性检查(MIC)之后)确定它是为接收它的终端设备准备的,设备将不会打开Rx2,以试图节省能量。然而,如果终端设备在Rx1期间没有收到下行消息,它将继续按计划打开Rx2。

当终端设备没有接收到任何东西时,它仍然会打开它的接收窗口,但只需要足够长的时间来确定是否有一个前导。在SF7的数据速率下,这至少是5.1毫秒(ms)。在SF12的数据速率下,它的最大值是164毫秒。另一方面,如果当下行链路到达设备时,在SF7处,将用不到100毫秒来解调消息。在SF12,这可能需要超过两秒。

图7:SX126x收音机的上行、下行链路和唤醒时间

当没有检测到下行链路消息时,与上行链路传输所需的能量相比,连接到Rx1和Rx2的能量消耗可以忽略不计

LoRaWAN网络拓扑

图8说明了LoRaWAN网络拓扑结构。LoRaWAN方法与其他方法的关键区别在于,终端设备与网络本身配对,而不是完全绑定到单个网关。相反,终端设备将信号广播到范围内的所有网关。每个接收网关都将数据包传递给网络服务器,然后网络服务器对消息进行重复数据删除,并将其单一版本发送给应用服务器。

图8:LoRaWAN网络拓扑

这种拓扑有以下几个优点:

  • 无需进行复杂的网络规划。网关可以在任何时间、任何地点添加。
  • 准确的消息传递更健壮,因为多个网关在每次上行链路期间接收相同的数据包。这被称为上行空间分集。
  • 不需要为每个网关规划不同的频率,也不需要在网关数量变化时重新分配频率。所有网关都在不断地监听网络的所有频率。
  • 由于任何网关都可以从任何设备接收消息,移动设备可以在低功耗下运行。这意味着(例如,与蜂窝网络相比)LoRaWAN网络不会注意到或关心设备的移动;它只是从离设备当前位置最近的网关接收上行链路。

未确认和已确认的消息

从终端设备发送到网络和应用服务器的消息(反之亦然)可能是未确认的或已确认的。

当设备发送未确认消息时,不需要服务器的确认。例如,大多数情况下,烟雾探测器会通过附近的网关定期向网络服务器发送未经确认的上行链路,只是为了确认它是否在工作。网关接收数据并将其传递给网络服务器,网络服务器又将数据传递给应用服务器。

当发送确认消息时,终端设备要求确认该消息已被网络服务器接收。让我们再看看烟雾探测器。当烟雾探测器探测到什么东西时,它将继续发送需要确认的警报,直到警报被确认。该确认通知烟雾探测器有人正在响应警报。因为来自网络的下行链接是一种稀缺资源,所以应该谨慎使用。确认消息只能用于非常重要的传感器数据。

图9显示了一个烟雾探测器传输加密的、未经确认的消息(请参见从图底部的设备到顶部的Application Server的箭头,通过最左边的三个框),这些消息由两个网关接收。网关将加密的元数据添加到消息中,然后将其转发到网络服务器。网络服务器对元数据进行解密,然后将数据包发送给应用服务器,由应用服务器对数据进行解密。

橙色表示烟雾探测器发出警报。这些都是确认的消息,然而,在前两个实例中,没有收到确认,所以设备继续广播警报。最后,在下面的示例中第三次传输警报之后,应用服务器通过网络服务器和最合适的网关向设备发送确认信息。

图9:未确认和已确认的消息传递

应用程序服务器下行

在下一个示例中,烟雾探测器应用服务器要将数据传输到一个特定的处于睡眠状态的烟雾探测器(终端设备)。但是,由于感烟探测器是a类设备,应用服务器必须等到感烟探测器苏醒后才能发送数据。对于烟雾探测器,这是一个与应用服务器共享状态信息(比如电池状态)的周期性消息(例如,每8小时发送一次),而不是一个真正的烟雾探测事件。终端设备接收到此消息可能是确认的,也可能是不确认的。请看图10。在这里,应用服务器有数据要发送到烟雾探测器,但设备处于休眠状态。服务器必须等待来自设备的上行链路才能发送数据。应用服务器接收到上行链路后,立即发送下行链路。在这种未经确认的消息的情况下,一旦收到下行链路,设备就会回到休眠状态。

图10:Application Server Downlink

总结

总之,所有终端设备必须支持A类操作,这是最节能的通信方式,支持最长的电池寿命。A类终端设备一直处于深度睡眠模式,直到它们感知到环境的变化或触发其他事件。当发生这种情况时,受影响的设备将被唤醒,并通过一个或多个网关将其数据发送到网络服务器(最终是应用程序服务器)。在上行传输之后,终端设备将打开两个连续的接收窗口,在此期间,它们将监听来自服务器的潜在下行传输。

Baidu
map