如何实现空中唤醒LoRa和如何通过CAD来实现LoRa的资料概述

电子说

1.2w人已加入

描述

在无线传感网的设计中,往往大部分终端节点都需空中唤醒并且还要低功耗设计,那么LoRa是如何通过CAD来实现的呢?本文将为你揭晓。

在无线传感网络设计中,往往大部分的无线收发机节点都需要低功耗处理。为了降低功耗,只有通过减少无用的工作时间。在大多数的物联网应用中,无线通信时,射频部分大多数时间都处在接收状态,也是主要的能量消耗所在。而当在整个无线网络中数据量较少,但是节点又要随时准备接收数据。理想状态是,当有数据需要接收时,节点处于接收状态,无信息接收时,节点处于睡眠状态,这就需要空中唤醒技术。

无线传感网

空中唤醒从现象上看,好像是发射机把接收机从睡眠中唤醒,实则不然,其实是接收机周期性自动醒来,查看空中有没有呼叫信号,如果没有,则继续睡眠;如果有,则被唤醒进入接收状态。因此,在空中没有呼叫信号时,接收机平均功耗较低。

但是如何发现呼叫信号,传统的做法是通过设定RSSI阈值来判断,只有信号强度足够时才认为有效,唤醒节点,否则相反。随着扩频调制技术的应用,人们在确定可能低于接收机底噪声的信号是否已经使用信道时,面临重重挑战。这种情况下,使用RSSI无疑是行不通的。为了解决这个问题,可使用信道活动检测器来检测其他LoRa信号。

LoRa数据包由:前导码、可选报头、数据有效负载组成,如下图所示:

LoRa

LoRa数据包结构

信道活动检测模式旨在以尽可能高的功耗效率检测无线信道上的LoRa前导码。在CAD模式下, SX1276/77/78快速扫描频段,以检测LoRa数据包前导码。

在CAD过程中会执行以下操作:

PLL被锁定。

无线接收机从信道获取数据的LoRa前导码符号。在期间的电流消耗对应指定的Rx模式电流。

无线接收机及PLL被关闭,调制解调器数字处理开始执行。

调制解调器搜索芯片所获取样本与理想前导码波形之间的关联关系。建立这样的关联关系所需的时间仅略小于一个符号周期。在此期间,电流的消耗大幅减少。

完成计算后,调制解调器产生CadDone中断信号。如果关联成功,则会同时产生CadDetected信号。

芯片恢复到待机模式。

如果发现前导码,清除中断,然后将芯片设置为Rx单一或连续模式,从而开始接收数据。

信道活动检测时长取决于使用的LoRa调制设置。下图针对特定配置显示了典型CAD检测时长,该时长为LoRa符号周期的倍数。CAD检测时间内,芯片在(2SF+32)/BW秒钟处于接收模式,其余时间则处于低功耗状态。

LoRa

CAD时长作为扩频因子的函数

CAD程序按序列被分解为多个事件,以更好的对程序及功耗进行说明,如下图所示:

LoRa

CAD过程中功耗消耗情况

IDDR_L:全Rx模式

IDDC_L:低功耗处理

信道活动检测过程中,接收端仅在前半段时间内处于全接收模式,随后进入低功耗处理阶段,期间CAD功耗随着LoRa带宽的变化而变化。

由于CAD检测数据包的前导码部分,因此要想实现空中唤醒,结合节点定期检测时间,需要设置合适的前导码发送时间,保证前导码发送时间>节点定期检测时间,则需要设定一定的前导码长度,可通过配置RegPreambleMsb和RegPreambleLsb寄存器来实现。如下图所示,可将前导码寄存器长度设置在6-65536之间来改变发送前导码长度。

LoRa

前导码长度配置寄存器

前导码发送时间计算如下:

LoRa

其中:

RS:速率

BW:带宽

SF:扩频因子

TS:发送一个symbol的时间

Tpremble:发送前导码所需总时间

npremble:已设定前导码长度大小

Tsym: 发每个preamble symbol的时间

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

全部0条评论

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

×
20
完善资料,
赚取积分