1、什么是 LoRa技术?

LoRa全称是Long Range,既远距离的意思,由semtech公司研发并推广的一种低功耗局域网无线标准。目前,LoRa 主要在ISM频段运行,主要包括433、868、915 MHz等。

特点:

1、在相同的功耗下比其它无线方式传播的距离更远,实现了低功耗和远距离的统一;

2、在同样的功耗下比传统的无线通信射频通信距离扩大3-5倍。
优势:
1、通讯距离远,+22dBm功率放大器和超过-148dBm的高灵敏度使得LoRa可以在复杂的环境中通信;
2、抗通信干扰小,150–960MHz的频率范围加上5到12的扩频因子可以相互组合成互不干扰的多信道通信;
3、低功耗,小于120mA的发射电流和小于10mA的接收电流可以保证同样电池下待机更久。
劣势:
1、在高扩频因子下发射速率慢,例如扩频因子11带宽250k发射100字节大约需要1秒;
3、在高扩频因子下由于发射速率慢,所以发射时间长,耗能更多、占用信道时间长,增加冲突的可能性。

2、LoRa帧结构

LoRa帧分为两种,分别为固定长度和可变长度。区别在于固定长度的帧则不存在Header域。

3、LoRa常用公式

符号速率(发送信号为恒包络信号,每赫兹每秒发送一个码片)

Rs = BW / (2^SF) Rs:符号速率; BW:带宽;SF:扩频因子

传输时间

ToA = ( (2^SF) / BW ) * Nsymbol SF:扩频因子;BW:带宽;ToA:空中传输时间,单位为毫秒;Nsymbol:符号数

不同的调制参数,符号数计算的方式也不同。

4、LoRa几个重要技术参数

扩频因子

LoRa扩采用多个信息码片来代表有效负载信息的每个位。扩频信息的发送速度称为符号速率(Rs),而码片速率与标称符号速率之间的比值即为扩频因子,其表示每个信息位发送的符号数量。负信噪比条件下信号也能正常接收,提高了的灵敏度、链路预算及覆盖范围。但是不同扩频因子之间为正交关系,因此发送端和接收端的扩频因子必须一致。

由上表可以看出当扩频因子为12时在-20dB还能收到数据包,说明扩频因子越大灵敏度越高,发送速度越慢。

编码率

LoRa采用循环纠错编码进行前向错误检测与纠错,但会产生传输开销。每次传输产生的数据开销如下:

由信号频谱图可以观察到一个信号所包含的频率成分。把一个信号所包含谐波的最高频率与最低频率之差,即该信号所拥有的频率范围,定义为该信号的带宽。信号的频率变化范围越大,信号的带宽就越宽。

信号带宽

带宽就是单位时间内的最大数据流量,也可以说是单位时间内最大可能提供多少个二进制位传输。而1M带宽指的是1Mbps=1 megabits per second

增加信号带宽,可以提高有效数据速率缩短传输时间,但会牺牲灵敏度。当然,多数国家对允许占用带宽都设有一定的约束。FSK调制解调器描述的带宽是指单边带带宽,而LoRaTM调制解调器中描述的带宽则是指双边带带宽(或全信道带宽)。

LoRa调制解调器工作在中心频率的一个可编程的带宽中。

LoRa 带宽支持以下设置:

上表可以看出增加信号带宽,发送标称比特率越大,说明增加信号带宽可以有效提高数据速率以缩短传输时间,但会有弊端将会降低接收灵敏度,缩短传输距离。

LoRaTM调制解调器在下表中列出了在多数规范约束的带宽范围。

LoRaTM调制解调器采用扩频调制和前向纠错技术。与传统的FSK或OOK调制技术相比,这种技术不仅扩大了无线通讯链路的覆盖范围,而且还提高了链路的健壮性。设计师可以通过调整扩频因子纠错率这两种设计变量,从而在带宽占用数据速率链路预算改善以及抗干扰性之间达到更好的平衡。

前导码:

前导码用于保持接收机与输入的数据流同步。默认情况下,数据包含有12个符号长度的前导码。前导长度是一个可以通过编程来设置的变量,所以前导码的长度可以扩展。可以将前导码寄存器长度设置在6到65536之间来改变发送前导码长度,实际发送前导码的长度范围为6+4至65535+4个符号。接收机会定期执行前导码检测。接收机的前导码长度应与发射机一致。如果前导码长度为未知或可能会发生变化,应将接收机的前导码长度设置为最大值。

可选报头:

根据所选择的操作模式,可以选用两种报头。在RegModemConfig1寄存器上,通过设定ImplicitHeaderModeOn位选择报头类型。

显式报头模式:

显式报头模式是默认的操作模式。在这种模式下,报头包含有效负载的相关信息,包括:

以字节数表示的有效负载长度;

前向纠错码率:

是否打开可选的16位负载CRC。

报头按照最大纠错码(4/8)发送。另外,报头还包含自己的CRC,使接收机可以丢弃无效的报头。

隐式报头模式:

在特定情况下,如果有效负载长度、编码率及CRC为固定或已知,则比较有效的做法是通过调用隐式报头模式来缩短发送时间。这种情况下,需要手动设置无线链路两端的有效负载长度、错误编码率及CRC。

注意:如果将扩频因子SF设定为6,则只能使用隐式报头模式。

5、LoRa几个技术用语

发射功率:

要提高通信距离常用的办法是提高发射功率,同时也带来更多的能耗。所以说发射功率和功耗之间是成正比关系。

发射频率radio frequency(RF):

发射频率描述,不同频率下传输不能相互接收,可以称为不同信道。但是对于扩频技术来说增加了很多的可变参数,这些参数改变传输数据信道的不同

Lora的频率范围为137~525MHz。一般使用 433MHz和470MHz

调制带宽Band Width(BW):

带宽就是单位时间内的最大数据流量,也可以说是单位时间内最大可能提供多少个二进制位传输。而1M带宽指的是1Mbps=1 megabits per second

增加信号带宽,可以提高有效数据速率缩短传输时间,但会牺牲灵敏度。当然,多数国家对允许占用带宽都设有一定的约束。FSK调制解调器描述的带宽是指 单边带带宽,而LoRaTM调制解调器中描述的带宽则是指双边带带宽(或全信道带宽)。

举个例子,就是把很长的数字信号,比如1或者0,用扩频码1101把它扩频,就变成1101或0010,这样带宽就变大了。

扩频因子

LoRaTM扩频调制技术采用多个信息码片来代表有效负载信息的每个位。扩频信息的发送速度称为符号速率(Rs),而码片速率与标称符号速率之间的比值即为扩频因子,其表示每个信息位发送的符号数量。 LoRaTM调制解调器中扩频因子的取值范围见下表。注意:因为不同扩频因子(SpreadingFactor)之间为正交关系,因此必须提前获知链路发送端和接收端的扩频因子。另外,还必须获知接收机输入端的信噪比。在负信噪比条件下信号也能正常接收,这改善了LoRa接收机的灵敏度、链路预算及覆盖范围。

编码率code rate(CR):

前向纠错技术

信道编码之所以能够检出和校正接收比特流中的差错,是因为加入一些冗余比特,把几个比特上携带的信息扩散到更多的比特上。为此付出的代价是必须传送比该信息所需要的更多的比特。

编码率

为进一步提高链路的鲁棒性, LoRaTM调制解调器采用循环纠错编码进行前向错误检测与纠错。使用这样的纠错编码之后,会产生传输开销。每次传输产生的数据开销见下表。

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

6、LoRa的应用

LoRa组网:

LoRaWAN采用星型无线拓扑:End Nodes(节点)、Gateway(网关)、Network Server(网络服务器)、Application Server(应用服务器)

LoRaWAN网络架构是一个典型的星形拓扑结构,在这个网络架构中,LoRa网关是一个透明传输的中继,连接终端设备和后端中央服务器。终端设备采用单跳与一个或多个网关通信。所有的节点与网关间均是双向通信。

LoRa 一般为星型网络连接,为了增加网络容量和改善通信质量,一般会把一个网关下属的节点分配为多个频率或多个扩频因子,sx126x 和 sx127x 同一时间只能监测一个信道,有网关专用芯片 sx1301,可以同时监控 8 个频率下的 6 个扩频因子,相当于同时监控 48 个信道,但是价格昂贵。

LoRa终端设备:

LoRa的终端节点可能是各种设备,比如水表气表、烟雾报警器、宠物跟踪器等。这些节点通过LoRa无线通信首先与LoRa网关连接,再通过3G网络或者以太网络,连接到网络服务器中。网关与网络服务器之间通过TCP/IP协议通信。

LoRa网络将终端设备划分成A/B/C三类:

Class A:双向通信终端设备。这一类的终端设备允许双向通信,每一个终端设备上行传输会伴随着两个下行接收窗口。终端设备的传输时隙是基于其自身通信需求,其微调基于ALOHA协议。

Class A设备的功耗最低,基站下行通信只能在终端上行通信之后。

Class B:具有预设接收时隙的双向通信终端设备。这一类的终端设备会在预设时间中开放多余的接收窗口,为了达到这一目的,终端设备会同步从网关接收一个Beacon,通过Beacon将基站与模块的时间进行同步。

Class B终端可以使基站知道终端正在接收数据。

Class C:具有最大接收窗口的双向通信终端设备。这一类的终端设备持续开放接收窗口,只在传输时关闭。

Class C设备拥有最长的接收窗口,也最耗电

LoRa应用场景:

远距离大数量:

密集建筑环境要覆盖多栋,或空旷环境下千米级的情况属于远距离,一个网关下属节点超过200属于大数量,如能耗集抄,智慧农业,调光路灯。这种条件下应尽量采用轮询的方式,码分多址和频分多址的方式来避免相互干扰,这是对信道利用率最高的方式,但实时性不高。

近距离大数量:

可视见或在普通建筑内同一层属于近距离,Semtech 针对室内应用场景也在 sx126x 中新增了扩频因子5和6,具有较高的通信速率,通信速率较高的话,监听避让和 RTS-CTS 机制也较为有效,数量大的情况结合合理的组网策略也可以满足应用要求。

远距离小数量:

一般有些工业场景如油田,电站会有这种场景,数据量不大,但是很分散,这种场景一般不考虑产品美观小巧,选用高增益天线,调整馈线阻抗匹配,高扩频因子低编码率来适应场景。

LoRa技术及应用---5分钟带你入门!相关推荐

  1. Android 3分钟带你入门开发测试

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/-TW7p3z3vJ3GJw7X9u7dVg 作者:Zhu Yifei 作为一名合格的开发人员, ...

  2. 技术解析+代码实战,带你入门华为云政务区块链平台

    摘要:政务区块链平台是行业区块链平台的初步实践,未来在区块链技术的发展下,还会打造面向其他领域的链管平台,构建多方协同的分布式账本,让区块链应用更便捷高效的为产业服务. 本文分享自华为云社区<技 ...

  3. 8分钟带你入门人工智能,互联网大厂都在用的高能AI算法

    哈喽,大家好,我是 Jack. 不少小伙伴问我,互联网大厂都在用哪些算法?有哪些算法值得学习? 这次,我做了一个视频,又剪了两周多,速度有点慢,但内容绝对充实. 主要是盘点一些互联网巨头,都在使用的人 ...

  4. 15分钟带你入门sklearn与机器学习——分类算法篇

    作者 | 何从庆 本文转载自AI算法之心(ID:AIHeartForYou) [导读]众所周知,Scikit-learn(以前称为scikits.learn)是一个用于Python编程语言的免费软件机 ...

  5. a*算法matlab代码_10分钟带你入门MATLAB

    ​ 10分钟带你快速入门MATLABhttps://www.zhihu.com/video/1234089282815188992 前一段时间我发现有些小伙伴MATLAB基础比较薄弱,今天我来让各位小 ...

  6. 15 分钟带你入门 sklearn 与机器学习(分类算法篇)

    众所周知,Scikit-learn(以前称为scikits.learn)是一个用于Python编程语言的免费软件机器学习库.它具有各种分类,回归和聚类算法,包括支持向量机,随机森林,梯度增强,k-me ...

  7. Sklearn 损失函数如何应用到_15 分钟带你入门 sklearn 与机器学习(分类算法篇)...

    众所周知,Scikit-learn(以前称为scikits.learn)是一个用于Python编程语言的免费软件机器学习库.它具有各种分类,回归和聚类算法,包括支持向量机,随机森林,梯度增强,k-me ...

  8. 软件测试python测试步骤_软件测试员必备基础:3分钟带你入门自动化测试!

    目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够明白自动化测试并很好落地实施的团队还不是非常多,我们接下来用通俗的方式来介绍自动化测试-- 首先我们从招聘岗位需求 ...

  9. 一起玩react 10分钟带你入门ant-design-pro

    前言 这篇文章主要根据自己最近一个月从学习react到最近实际使用ant-design-pro,谈一谈自己的使用心得,个人见解有误的地方望大家指正! 1.为什么要选择ant-design-pro? 其 ...

最新文章

  1. 关于高速光耦6n137的使用总结_光耦使用中的那点事1
  2. CPU的基本结构和功能
  3. ASP实现单条件和多条件组合查询的实例
  4. SQL Server 临时表
  5. nonce和timestamp在Http安全协议中的作用
  6. xunsearch安装使用
  7. AM335x(TQ335x)学习笔记——GPIO关键驱动移植
  8. fileinputstream读取文件_压缩 20M 文件从 30 秒到 1 秒的优化过程
  9. 堪比科幻大片!优酷特效广告、互动视频技术大揭秘
  10. java jtextfield 输入_【java】JTextField与JComboBox结合动态匹配输入信息
  11. make clean、make mrproper、make distclean的区别【转】
  12. 五个 Linux 下用户空间的调试工具
  13. 1993年考研数学一解析pdf
  14. 成长就是不断升级自己的认知
  15. 微信公众号授权,支付,退款总结【shoucang】
  16. 好佳居软装十大品牌 软装市场发展状况如何
  17. 嵌入式开发--智能机械臂
  18. 广州商学院 软件工程 博客列表
  19. html个人中心样式,个人中心.html
  20. 算法高级(15)-LVS的负载均衡策略及LVS+KeepAlived+Nginx实现高可用方案

热门文章

  1. 【集合论】关系性质 ( 对称性 | 对称性示例 | 对称性相关定理 | 反对称性 | 反对称性示例 | 反对称性定理 )
  2. angular中ag-grid实战
  3. File类中的方法实现文件排序
  4. 源码时代UI干活分享| ps新手入门案例,手把手教你在白板上制出写实图标鸡蛋
  5. 快速分析出圆通单号物流中含退的归类为退回件
  6. matlab 绘花,网上收到的用matlab画玫瑰花的代码怎么不行啊,报告错误,求大神...
  7. Linux系统编程_进程 获取getpid(子),getppid(父),创建(fork,vfork)
  8. (专业文章) 什么是内生肌酐清除率 http://www.jiganqingchulv.com/
  9. matlab的nlinfit函数,[MATLAB混合编程] nlinfit函数运行过程中问题
  10. iPhone被盗后怎么?这篇文章只办针对iOS7后的系统