关键词:
低功耗广域网
LoRa
数据包冲突
sub-chirp跳信道
摘要:
在物联网中,LoRa作为其中低功耗广域网的代表,利用其长距离,低功耗和低成本的优势,在智慧工业和智能农业场景中起着越来越重要的作用。但是由于现有LoRa网络存在以下三类现象:(1)LoRa终端设备采用基于ALOHA的发包机制,即不检测信道的情况下直接向网关发送数据包;(2)在单个LoRa网关覆盖范围下存在数目众多的LoRa终端设备;(3)LoRa数据包的滞空时间长,根据参数不同在几十毫秒到几百毫秒不等。导致多个终端设备可能同时向网关发送数据包,在网关处造成数据包冲突问题,使得网关无法正确解调数据包。
国内外现有研究对数据包冲突问题提出了冲突避免和冲突解决机制,冲突避免机制通过增加载波监听和时分复用的方式,控制终端设备的发送时刻,从而避免冲突发生,但是这一做法导致了额外的网络运行和维护成本。而冲突解决机制基于LoRa数据包冲突特有的时频域特征用以分离解调出原始数据包,然而在多个数据包冲突的场景下,多个数据包间的时频域特征将互相干扰导致解调出错。
针对LoRa数据包冲突问题和研究现状,本课题提出了一种基于符号分段跳信道的抗冲突传输机制(称为CHLoRa),以增加信道维度的方式尽可能消除多包冲突情况下冲突数据包间的干扰。该传输机制将LoRa数据负载的每个符号均匀的分段为若干子符号,并将这些子符号分散至随机的信道内,由于不同数据包间的这些子符号所处的信道序列不同,因此不同数据包间往往只能在信道序列相同的部分对对方造成干扰,从而降低数据包冲突干扰对解调的影响。
在本课题抗冲突传输机制设计中存在以下三个挑战:(1)如何设计符号分段跳信道传输机制:如何设计信号分段调制与解调方式和跳信道序列传输机制,以保证数据包抗噪性和抗冲突能力;(2)如何在商用终端中实现CHLoRa传输机制:由于商用终端芯片不支持自定调制LoRa信号以及自定义帧结构,无法直接将本课题传输机制直接部署在商用终端上;(3)如何并行解调CHLoRa数据包:CHLoRa数据包帧结构在前导码和帧间隔分隔符上仍存在冲突问题,如何在冲突情况下进行数据包对齐和补偿操作,以及如何纠正实际错误解调问题。
针对上述挑战,本课题具体研究设计与实现如下:
(1)针对符号分段跳信道传输机制设计,发送端首先对每次数据包发送都生成一组随机跳信道序列,将正常LoRa符号分段后的各段符号(称为subchirp)按照随机序列顺序放入不同信道中来降低数据包冲突干扰,并为了将随机序列信息传输至接收端,以改造数据包帧结构的方式,将跳信道序列信息调制在单个符号内,并将符号进行共轭处理,提高该符号的传输正确率,最后将改造后的CHLoRa数据包进行发送。而在接收端,为了正确识别LoRa信号,先需通过基于前导码特征的信号检测对到达的CHLoRa数据包进行感知,并为了使数据包解调正确,还需使用帧起始分隔符特征进行解调窗口对齐。并在subchirp解调之前获取到跳信道序列,最后根据跳信道序列获取数据包中各个信道内的subchirp,进行相应解调得到所有信息,从而完成整个CHLoRa抗冲突传输机制设计。
(2)针对商用终端芯片不支持自定义调制和帧结构的问题,CHLoRa利用不同参数的LoRa符号间存在相同时频特征且符号周期不同的现象,以符号分段模拟的方式,将其他参数的LoRa符号模拟为当前LoRa符号的分段形式进行分段实现。且在FHSS中断中设置各类参数寄存器来实现对每个符号的控制,从而将跳信道序列在subchirp之前进行传输,即自定义帧结构,并使得subchirp调制信息保持一致,从而实现CHLoRa在商用终端的部署,降低现有LoRa网关改造成本。
(3)针对如何设计并实现并行解调的挑战,CHLoRa利用前导码和帧起始分隔符稳定的频域特征,通过挑选连续窗口固定峰值来进行冲突发现,并以帧起始分隔符的相反峰值特征进行窗口对齐来解决冲突发现和数据包对齐的问题。并为了降低发送端符号分段产生的相位不连续影响,提高subchirp解调正确率,对每个符号的所有subchirp进行基于滑动窗口的解调手段,根据解调结果进行投票选出正确峰值,从而完成CHLoRa并行解码机制设计与实现。
最后CHLoRa设计实验验证了CHLoRa的性能:在大量商用终端设备环境中,制造多数据包冲突,与基于数据包偏移的LoRa数据包分离冲突解决机制Pyramid,以及非均匀分段解调的冲突解决机制CIC进行符号正确率对比实验。并为了分析各参数下CHLoRa的抗冲突性能,本课题设计了在各种噪声环境,扩频因子,信道和分段数目进行解调正确率对比实验,从而全方面验证CHLoRa的可行性和抗冲突性能。