查看: 1179|回复: 0

[技术交流] 说说LoRa通信常被忽略的LowDataRateOptimize

[复制链接]

67

主题

100

帖子

570

积分

利尔达员工

Rank: 9Rank: 9Rank: 9

积分
570
发表于 2020-3-6 15:59:27 | 显示全部楼层 |阅读模式
LowDataRateOptimizeLoRa应用不像其它参数配置,往往很容易被忽视,因为一般默认配置就好,不太会去在意其配置,不太会在开发中出现问题。但是关键时刻也很容易造成出现一些问题及困惑,并且很难让人觉察到。
先来看看semtech在各系列芯片手册中提到有关LowDataRateOptimize的描述吧
描述1


上图是来至SX1276/8 datasheet中的内容,翻译大致内容如下:

考虑到数据包在高传播因子下的潜在长时间, 该选项用于提高传输到数据包传输和接收期间的频率变化的鲁棒性。LowDataRateOptimize位开启后可以增强Lora 连接在低速率条件下的鲁棒性。当单个符号传输时间超过16毫秒时,必须使能LowDataRateOptimize位。请注意,发射机和接收机都必须具有相同的LowDataRateOptimize设置。

描述2:



上图是来至SX1276/8 datasheet中的内容关于Payload长度(即时间)计算公式,从公式中可以看到,LowDataRateOptimize的开启,会加长Payload长度,即增加每一包数据的发射时间。

描述3:



上图是来至SX1268 datasheet中的内容,主要意思就是说开启LowDataRateOptimize的话可以降低LoRa调制对频率漂移的限制。
综上进行分析:

1、什么时候开启,什么时候不用开启?

当一个符号时间超过16ms时,需要开启,符号时间TS=2^SF/BW
比如SF=12BW=125KHz时,就需要开启。

不超过时可以不用开启,这可以根据硬件需求或者对速率要求不严格,进行选择。经常遇到,开发时,需要和之前的产品进行互通,发现频率、SFBWCR等都配置一致了,但是就是无法通信上,并且可以接收到数据的,但是数据一直时错误的,不是需要的数据,于是不停的去各种查,是不是干扰到了,是不是硬件有问题呀等,其实最后只是由于前一个设备开发者,虽然symbol时间没有超过16ms也开启了LowDataRateOptimize,导致不一致,使得通信数据错乱。

2、LowDataRateOptimizesymbol时间小于16.0ms时怎样去选择开启好还是不开启好?

如果在对LowDataRateOptimize没有强制要求时,对于大数据包,即一包数据很大时,可以考虑将LowDataRateOptimize开启。因为从上面datasheet的内容可以猜测(这里只是猜测,如果有其它理解欢迎交流,或者忽略)LowDataRateOptimize影响的是对频漂的要求,这与LoRa的扩频调制方式有关,LoRa调制是chrip扩频,即频率是线性变化的,所以对频漂有一定要求,如果一个数据包发射持续时间过长,可能恶化晶振频漂(与硬件也有关系,比如使用TCXO可能问题就不大),所以在大数据包发射,且可以稍微牺牲一些速率情况下,建议将LowDataRateOptimize开启。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表