目录
1 前言
通过《LoRa调制解调原理》一文,已经了解到LoRa调制参数具体作用,包括扩频因子SF,调制带宽BW,编码速率CR等。同时也分析了LoRa调制解调的具体过程,知道码片,码元(symbol),传输数据之间的关系。本文主要通过具体的数学公式,来推导相关参数的计算,同时也介绍Semtech官方提供的LoRa计算工具的使用。
2 码片/码元/载荷数据速率
- 发送信号将调制带宽BW划分为2^SF个频率段的码片(Chip)
- 每2^SF个码片组合成一个码元(Symbol),一个码元(Symbol)承载SF个bit数据
2.1)码片速率
- LoRa调制逻辑上是恒定包络,等效于每1HZ带宽上每秒发送一个码片
- 那么码片速率即为BW
2.2)码元速率(Rs)
- 码元速率又叫符号速率,一般用Rs表示
- 每2^SF个码片组合成一个码元,推导出码元速率为:
2.3)载荷数据速率(DR)
- 一个码元(Symbol)承载SF个bit数据,同时结合编码速率CR,可以推导出载荷数据速率
PS:不熟悉编码速率CR的同学,可以看前言中的链接文章。
- 提高调制带宽BW,可以提高数据传输速率
- 提高扩频因子SF,会降低数据传输速率
3 空中时间
- 空中时间计算思路,是先计算出LoRa数据包的码元数,再乘上一个码元的时间
3.1)总码元数计算
依据配置分3种情况,分别计算数据包的码元数:
- SF = 5/6
- SF = 7~12
- 开启低速率优化
PS:公式中各符号含义
- 代码设置前导码码元长度
ceil(x) - 取大于x的最小整数
- 有效载荷字节数
- CRC校验比特数
- 显性报头码元数(使能为20,未使能为0)
4 LoRa官方计算工具
前面推导了各参数的计算公式,但实际应用过程中不需要用户自己计算。Semetch在官网依据芯片类型不同,推出了SX126x,SX127x和SX128x三款LoRa计算工具。
- SX126x计算工具
- SX127x计算工具
PS:官网下载的SX127x工具由于版本问题,会导致部分数据框被遮挡,需要注册表文件,可以在文章下留言我发给你们
- SX128x计算工具