电子说
在无线传感网的设计中,往往大部分终端节点都需空中唤醒并且还要低功耗设计,那么LoRa是如何通过CAD来实现的呢?本文将为你揭晓。
在无线传感网络设计中,往往大部分的无线收发机节点都需要低功耗处理。为了降低功耗,只有通过减少无用的工作时间。在大多数的物联网应用中,无线通信时,射频部分大多数时间都处在接收状态,也是主要的能量消耗所在。而当在整个无线网络中数据量较少,但是节点又要随时准备接收数据。理想状态是,当有数据需要接收时,节点处于接收状态,无信息接收时,节点处于睡眠状态,这就需要空中唤醒技术。
无线传感网
空中唤醒从现象上看,好像是发射机把接收机从睡眠中唤醒,实则不然,其实是接收机周期性自动醒来,查看空中有没有呼叫信号,如果没有,则继续睡眠;如果有,则被唤醒进入接收状态。因此,在空中没有呼叫信号时,接收机平均功耗较低。
但是如何发现呼叫信号,传统的做法是通过设定RSSI阈值来判断,只有信号强度足够时才认为有效,唤醒节点,否则相反。随着扩频调制技术的应用,人们在确定可能低于接收机底噪声的信号是否已经使用信道时,面临重重挑战。这种情况下,使用RSSI无疑是行不通的。为了解决这个问题,可使用信道活动检测器来检测其他LoRa信号。
LoRa数据包由:前导码、可选报头、数据有效负载组成,如下图所示:
LoRa数据包结构
信道活动检测模式旨在以尽可能高的功耗效率检测无线信道上的LoRa前导码。在CAD模式下, SX1276/77/78快速扫描频段,以检测LoRa数据包前导码。
在CAD过程中会执行以下操作:
PLL被锁定。
无线接收机从信道获取数据的LoRa前导码符号。在期间的电流消耗对应指定的Rx模式电流。
无线接收机及PLL被关闭,调制解调器数字处理开始执行。
调制解调器搜索芯片所获取样本与理想前导码波形之间的关联关系。建立这样的关联关系所需的时间仅略小于一个符号周期。在此期间,电流的消耗大幅减少。
完成计算后,调制解调器产生CadDone中断信号。如果关联成功,则会同时产生CadDetected信号。
芯片恢复到待机模式。
如果发现前导码,清除中断,然后将芯片设置为Rx单一或连续模式,从而开始接收数据。
信道活动检测时长取决于使用的LoRa调制设置。下图针对特定配置显示了典型CAD检测时长,该时长为LoRa符号周期的倍数。CAD检测时间内,芯片在(2SF+32)/BW秒钟处于接收模式,其余时间则处于低功耗状态。
CAD时长作为扩频因子的函数
CAD程序按序列被分解为多个事件,以更好的对程序及功耗进行说明,如下图所示:
CAD过程中功耗消耗情况
IDDR_L:全Rx模式
IDDC_L:低功耗处理
信道活动检测过程中,接收端仅在前半段时间内处于全接收模式,随后进入低功耗处理阶段,期间CAD功耗随着LoRa带宽的变化而变化。
由于CAD检测数据包的前导码部分,因此要想实现空中唤醒,结合节点定期检测时间,需要设置合适的前导码发送时间,保证前导码发送时间>节点定期检测时间,则需要设定一定的前导码长度,可通过配置RegPreambleMsb和RegPreambleLsb寄存器来实现。如下图所示,可将前导码寄存器长度设置在6-65536之间来改变发送前导码长度。
前导码长度配置寄存器
前导码发送时间计算如下:
其中:
RS:速率
BW:带宽
SF:扩频因子
TS:发送一个symbol的时间
Tpremble:发送前导码所需总时间
npremble:已设定前导码长度大小
Tsym: 发每个preamble symbol的时间
全部0条评论
快来发表一下你的评论吧 !