LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释

LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释1、扩频因子(SF)2、编码率(CR)3、信号带宽(BW)4、LoRa信号带宽BW、符号速率Rs和数据速率DR的关系5、LoRa信号带宽、扩频因子和编码率的设定6、空中速率针对特定应用,开发人员可通过调制扩频因子、调制带宽、纠错编码率这三个关键设计参数,对LoRa调制解调技术进行优化。。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

更多技术干货,欢迎扫码关注博主微信公众号:HowieXue,一起学习探讨软硬件技术知识经验,关注就有海量学习资料免费领哦:
在这里插入图片描述



LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释

  • 1、扩频因子(SF)
  • 2、编码率(CR)
  • 3、信号带宽(BW)
  • 4、LoRa信号带宽BW、符号速率Rs和数据速率DR的关系
  • 5、 LoRa信号带宽、扩频因子和编码率的设定
  • 6、空中速率

作者:HowieXue


针对特定应用,开发人员可通过调制扩频因子、调制带宽、纠错编码率这三个关键设计参数,对LoRa调制解调技术进行优化。。

1、扩频因子(SF)

LoRa采用多个信息码片来代表有效负载信息的每个位,扩频信息的发送速度称为符号速率(Rs),而码片速率与标称的Rs比值即为扩频因子(SF,SpreadingFactor),表示了每个信息位发送的符号数量。。
LoRa扩频因子取值范围:
这里写图片描述
这里写图片描述

注意:因为不同的SF之间为正交关系,因此必须提前获知链路发送端和接收端的SF。另外,还必须获知接受机输入端的信噪比。。在负信噪比条件下信号也能正常接收,这改善了LoRa接受机的林敏度,链路预算及覆盖范围。。

理解扩频因子的概念
通俗的说 扩频时你的数据每一位都和扩频因子相乘,例如有一个1 bit需要传送,当扩频因子为1时,传输的时候数据1就用一个1来表示,扩频因子为6时(有6位)111111,这111111就来表示1,这样乘出来每一位都由一个6位的数据来表示,也就是说需要传输总的数据量增大了6倍。
这样扩频后传输可以降低误码率也就是信噪比,但是在同样数据量条件下却减少了可以传输的实际数据,所以,扩频因子越大,传输的数据数率(比特率)就越小。。。

Lora扩频因子的使用:
当扩频因子SF为6时,LoRa的数据传输速率最快,因此这一扩频因子仅在特定情况下使用。使用时需要配置LoRa芯片SX127x:

  • 在RegModemConfig2,将SpreadingFactor设为6
  • 将报头设置为隐式模式
  • 在寄存器地址(0x31)的2至0位写入0b101
  • 在寄存器地址(0x37)写入0x0C

2、编码率(CR)

编码率,是数据流中有用部分的比例。
编码率(或信息率)是数据流中有用部分(非冗余)的比例。也就是说,如果编码率是k/n,则对每k位有用信息,编码器总共产生n位的数据,其中n-k是多余的。
LoRa采用循环纠错编码进行前向错误检测与纠错。。使用该方式会产生传输开销。。
每次传输产生的数据开销如下:
这里写图片描述

在存在干扰的情况下,前向纠错能有效提高链路的可靠性。由此,编码率(抗干扰性能)可以随着信道条件的变化而变化,可以选择在报头加入编码率以便接收端能够解析。。。


3、信号带宽(BW)

信道带宽(BW)是限定允许通过该信道的信号下限频率和上限频率,可以理解为一个频率通带。比如一个信道允许的通带为1.5kHz至15kHz,则其带宽为13.5kHz

在LoRa中,增加BW,可以提高有效数据速率以缩短传输时间,但是 以牺牲部分接受灵敏度为代价。对于LoRa芯片SX127x,LoRa带宽为双边带宽(全信道带宽),而FSK调制方式的BW是指单边带宽。

LoRa带宽选项:

这里写图片描述
这里写图片描述

注意:较低频段(169MHz)不支持250K和500KHz的BW

LoRa带宽测试的波形图可以参考链接:
http://blog.csdn.net/HowieXue/article/details/79199712


4、LoRa信号带宽BW、符号速率Rs和数据速率DR的关系

LoRa符号速率Rs可以通过以下公式计算:

Rs=BW/(2^SF)

每Hz每秒发送一个码片。。

LoRa数据速率DR可以通过以下公式计算:

DR= SF*( BW/2^SF)*CR


5、LoRa信号带宽、扩频因子和编码率的设定

LoRaWAN主要使用了125kHz信号带宽设置,但其他专用协议可以利用其他的信号带宽(BW)设置。改变BW、SF和CR也就改变了链路预算和传输时间,需要在电池寿命和距离上做个权衡。


6、空中速率

所谓空中速率表示LoRa/FSK 无线(在空气中的)通讯速率,也叫空中波特率,单位bps,
空中速率高,则数据传输速度快,传输相同数据的时间延迟小,但传输距离会变短。
空中速率和距离、延迟的关系如下图:

这里写图片描述
感觉有用请动动手指给文章点个赞啦~~


LoRa学习系列链接汇总:

LoRa学习:信道占用检测原理(CAD)
http://blog.csdn.net/howiexue/article/details/78052608

LoRa学习:LoRa关键参数(扩频因子,编码率,带宽)的设定及解释
https://blog.csdn.net/howiexue/article/details/78028881

LoRa学习:LoRa数据接受发送流程(FIFO)
http://blog.csdn.net/howiexue/article/details/78049603

LoRa学习:SX127x寄存器以及FIFO数据缓存使用配置
http://blog.csdn.net/howiexue/article/details/78045635

LoRa学习:LoRa进行跳频扩频通信(FHSS)的原理
http://blog.csdn.net/howiexue/article/details/78043987

LoRa数据包结构分析及数据传输时间的计算
http://blog.csdn.net/howiexue/article/details/78043466

433MHz LoRa/FSK 无线频谱波形分析(频谱分析仪测试LoRa/FSK带宽、功率、频率误差等)
http://blog.csdn.net/howiexue/article/details/79199712

LoRa 30个常见问题解答 FAQs汇总
http://blog.csdn.net/howiexue/article/details/78038883

LoRa学习:LoRa通信调制解调的实现原理与性能
http://blog.csdn.net/howiexue/article/details/78017320

LoRA学习: SX1276/SX1277/SX1278对比
http://blog.csdn.net/howiexue/article/details/77978174

LoRa学习:SX127x芯片数字IO引脚映射
http://blog.csdn.net/howiexue/article/details/78052758

LoRa芯片的八种工作模式解析
http://blog.csdn.net/howiexue/article/details/78045754


博主热门文章推荐:

一篇读懂系列:

LoRa Mesh系列:

网络安全系列:

嵌入式开发系列:

AI / 机器学习系列:


在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183517.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Android项目实战_手机安全卫士splash界面

    Android项目实战_手机安全卫士splash界面

    2022年3月4日
    35
  • tcp udp测试工具_https使用什么协议

    tcp udp测试工具_https使用什么协议目录一、网络七层与四层模型1.1OSI七层网络模型1.2TCP/IP四层概念模型二、TCP、UPD协议详解2.1TCP三次握手2.2TCP四次挥手2.3UDP协议与TCP协议对比三、HTTP、HTTPS协议详解3.1HTTP协议之请求报文3.2HTTP协议之响应报文3.3HTTPS协议详解3.4HTTP协议与HTTPS协议对比四、常见面试题一、网络七层与四层模型1.1OSI七层网络模型OSI七层模型:是ISO组织研究的一种网络互连模型,目的是为了推荐所有公司使用这个规范来控制网络。

    2022年9月20日
    0
  • LoadRunner教程03:界面分析[通俗易懂]

    LoadRunner教程03:界面分析[通俗易懂]一、virtualusergeneratorLoadRunner拥有各种Vuser类型,每一类型都适合于特定的负载测试环境。这样就能够使用Vuser精确模拟真实世界的情形。Vuser在方案中执行的操作是用Vuser脚本描述的。Vuser脚本的结构的内容因Vuser类型的不同而不同。注意:VuGen仅能录制Windows平台上的会话。但录制的Vuser脚本既可以在Window平台上运

    2022年5月23日
    30
  • EBS安装完成后,对数据库相关配置的改动

    EBS安装完成后,对数据库相关配置的改动

    2021年11月14日
    42
  • addEventListener() 方法

    addEventListener() 方法先看个例子:document.getElementById("myBtn").addEventListener("click",function(){document.getElementById("demo").innerHTML="HelloWorld";});123定义和用法addEventListener()方法用于向指定元素添加事件句柄。提示:使用removeE…

    2022年7月12日
    13
  • npm卸载模块(nodejs原生模块npm)

    npmuninstall模块 删除本地模块时你应该思考的问题:是否将在package.json上的相应依赖信息也消除?npmuninstall模块:删除模块,但不删除模块留在package.json中的对应信息npmuninstall模块–save 删除模块,同时删除模块留在package.json中dependencies下的对应信息npm

    2022年4月10日
    93

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号