利尔达科技集团股份有限公司
说说LoRa通信常被忽略的Low Data Rate Optimize
来源:利尔达科技 作者:无线传感事业部 日期:2023-09-01 浏览量:1060

  Low Data Rate Optimize在LoRa应用不像其它参数配置,往往很容易被忽视,因为一般默认配置就好,不太会去在意其配置,不太会在开发中出现问题。但是关键时刻也很容易造成出现一些问题及困惑,并且很难让人觉察到。


  那么来看看semtech在各系列芯片手册中提到有关Low Data Rate Optimize的描述吧!


  一、描述1


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

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


  二、描述2

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


  三、描述3

  上图是来自SX1268 datasheet中的内容,主要意思就是说开启Low Data Rate Optimize的话可以降低LoRa调制对频率漂移的限制。


  分析


  综上进行分析:什么时候开启,什么时候不用开启?


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

  不超过时可以不用开启,这可以根据硬件需求或者对速率要求不严格,进行选择。


  经常遇到开发时需要和之前的产品进行互通,发现频率、SF、BW、CR等都配置一致了,但就是无法通信上。虽然可以接收到数据,但数据一直是错误的,不是需要的数据,于是不停的查验,是否有干扰,是否硬件有问题,其实只是由于前一个设备开发者虽然symbol时间没有超过16ms也开启了Low Data Rate Optimize导致不一致,使得通信数据错乱。


  Low Data Rate Optimize在symbol时间小于0ms时怎样去选择开启好还是不开启好?


  如果在对Low Data Rate Optimize没有强制要求时,对于大数据包可以考虑将Low Data Rate Optimize开启。因为从上面datasheet的内容可以猜测(这里只是猜测,如果有其它理解欢迎交流,或者忽略)Low Data Rate Optimize影响的是对频漂的要求。


  这与LoRa的扩频调制方式有关,LoRa调制是chrip扩频,即频率是线性变化的,所以对频漂有一定要求,如果一个数据包发射持续时间过长,可能恶化晶振频漂(与硬件也有关系,比如使用TCXO可能问题就不大),所以在大数据包发射且可以稍微牺牲一些速率情况下,建议将Low Data Rate Optimize开启