赞
踩
目录
本文主要介绍LoRa扩频技术细节,详细的描述了LoRa信号从数据流变为LoRa扩频信号,再从射频信号通过解调变为数据的全过程。内容主要来自《LoRa物联网通信技术》一书,该书是由现任Semtech LoRa中国区应用技术团队leader甘泉所著。
可以针对特定的应用优化LoRa调制,依据四个关键的设计参数,每个参数都允许在链路预算、抗干扰能力、频谱占用和名义数据率之间进行权衡。
扩频因子SF
调制带宽BW
编码速率CR
低速率优化LDRO
LoRa扩频调制是通过把有效载荷中每比特数据用多位码片信息表示来实现的。
每个码片都是由2^SF个码片组成
一个码元承载SF个bit的数据
增大SF可使解调所需的信噪比门限值更低,但同时带来的是传输速率的降低。
LoRa调制解调器采用循环误差编码来执行前向误差检查和校正,这样就需要冗余位来填充FEC(前向纠错编码)
CR为有用位数/总位数,可选范围为4/5~4/8。更高的编码率提供了更好的抗干扰性能,但同时会增大数据的开销。
LoRa调制带宽是指双边带宽
增加信号带宽,可以提高有效数据速率以缩短传输时间,但这是以牺牲部分一接收灵敏度为 代价。
对于低数据速率(一般指高SF或者低BW),建议当LoRa的码元(symbol)时间大于或等于16.38ms时,需开启低速率优化LDRO,这样会将每个符号的位数将减少为SF=2的配置,以便接收机更好低跟踪LoRa信号。
对于需要在空中传输数秒的长载荷,建议开启低速率优化LDRO,此时会放宽包传输时间内的频率漂移要求至Freq_drift_max的16倍。
LoRa数据包包含4部分:
前导码
可选报头(隐形数据包无此部分)
数据有效载荷
有效载荷校验
PS:可选报头固定CR = 4/8,代码配置的CR作用域是Payload和Payload CRC
目的是向接收方提供具有特性的可检查序列,以确定频率和同步。
前导码由一定数量未经调制的码元和结束标记组成。其中结束标记长度固定为4.25个码元,初始未经调制的码元长度可调,总前导码长度为10~65535个symbol
接收机会周期地重启前导检测操作,所以需配置和发射机一样的前导码长度。如果不知道前导码长度或者可变的情况下,接收机需将前导码长度设置为最大。
1)同步字
这里是从不同文档中推导出来的,未直接从官方文档中找到确定的说明。
前导码中固定的4.25个码元就是同步字,Semtech节点芯片SX126x/SX127x都可通过寄存器配置不同的同步字,发射和接收双方的同步字需一致才能正常通信。
该报头是可选的,如果使能,数据包就是显性数据包。
报头包含两部分:Header和报头自身的CRC校验,固定以CR=4/8传输。
Header提供了如下信息:有效载荷字节数,编码速率CR,有效载荷CRC类型。
即实际用户需传输的数据,最大255字节。
可灵活选择多项式和初值。
相比默认数据包,差别是不带显性报头部分。
一般用于发射和接收方都提前知道有效载荷长度,编码率CR以及有效载荷CRC,可以通过隐性数据包模式来减少传输时间。需要双方都提前配置好相同的参数
LoRa调制链路组成:纠错编码机,交织器,扩频序列产生器,笛卡尔极坐标转换器,Delta-sigma调制器。
当用户数据即Payload送入数据包接口时,调制过程开始。
将数据载荷分为4bit一组,每一组末位按编码速率CR添加1~4bit冗余的FEC(前向纠错编码)
FEC采用广义的软汉明码,能够有效的进行错误检测和自动纠错
通过纠错编码后,会产生多组(4+CR)比特段,随后就被存储到交织器的存储阵列中
每个交织器有(4+CR)列,SF 行 Bit空间
例如配置为CR=1,SF=7,有效数据比特流为00000001 00100011 01000101 01100111。先将比特率按4bit一组划分:0000 0001 0010 0011 0100 0101 0110 0111;然后通过纠错编码在每组后加1bit的纠错码:00000 00011 00101 00110 01001 01010 01100 01111;再将这些比特流填充到交织器中,该交织器存储空间为5列7行。
每一行数据按照一定的映射关系被塞入码元(symbol)中。
数据发射数据包除了有效载荷以外,每个包前面都有一个前导码,目的是向接收方提供具有特性的可检查序列,以确定频率和同步
前导码由一定数量未经调制的码元和结束标记组成。其中结束标记长度固定为4.25个码元,初始未经调制的码元长度为6~65535
最终输出是一个具有恒定包络的复杂采样流
4.4 坐标转换器和Delta-sigma调制输出
利用笛卡尔极坐标变换器提取相位信息,相位分量被区分,从而产生瞬时频率调制送往Delta-sigma调制器
调制器的数字输出驱动锁相环的反馈分配器,最后连接功率放大器和天线将LoRa信号发送出去
前面介绍了LoRa调制解调原理,这里实际分析发送一个字符串“LoRa”的完整过程。
下面是基于SF=7的情况来分析
下面场景是以CR=4/5,SF=8的场景,实际分析字符串"LoRa"如何转换为射频信号发射
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。