LoRa、LoRaWAN及网关相关技术介绍
LoRa、LoRaWAN及网关技术介绍
- 1. LoRa与LoRaWAN
- 2. LoRaWAN协议定义的终端节点工作模式
- 3. LoRaWan网络架构
- 4. 组网方式
- 5. 终端节点→网关:多对一时
- 6. 终端节点→网关:一对多时
- 7. 网关↔服务器间连接方式
- 8. 数据上下行传输
- 9. 终端节点加网
1. LoRa与LoRaWAN
二者对应关系如下:
1)LoRa
LoRa是一种低功耗远程无线通信技术,特点是远距离、低功耗、多节点、低成本、抗扰特性,同时LoRa低速率,小数据传输。LoRa工作频段为433/470/868/915MHz频段。
LoRa是物理层传输技术,是一个包含收发两个部分的无线传输模块。收发两个部分自组网传输就可以了。对一些小型项目,终端在一千个以下的,直接使用LoRa点对点通讯,实现简单的私有协议就可以满足需求,还可以减少成本。
2)LoRaWAN
LoRaWAN是基于LoRa远距离通信网络设计的一套通讯协议和系统架构,如果按协议分层来说LoRaWAN就是MAC层,LoRa是物理层。因此LoRaWAN原来也被叫做LoRaMAC。
LoRaWAN是在LoRa物理层传输技术基础之上的以MAC层为主的一套协议标准。对应产品包括LoRaWAN节点,LoRaWAN网关和LoRaWAN的协议和数据云平台。
2. LoRaWAN协议定义的终端节点工作模式
工作于LoRaWAN下的LoRa终端节点有三种支持的工作模式:
① A类终端工作模式(Basic)
终端在每次上行后都会紧跟两个短暂的下行接收窗口,以此实现双向传输。如果终端不上报数据,服务器就无法主动进行下行传输。最省电的操作,要求应用在终端上行传输后的很短时间内需要进行服务器的下行传输的场景。服务器在其他任何时间进行的下行传输都得等终端的下一次上行。
② B类终端工作模式
Class B模式的终端会有更多的接收时隙,会在指定时间打开别的接收窗口。为了让终端可以在指定时间打开接收窗口,终端需要从网关接收时间同步的信标 Beacon。
③ C类终端工作模式
基本一直打开着接收窗口,只在发送时短暂关闭
3. LoRaWan网络架构
4. 组网方式
终端节点↔网关组网方式
① MESH网络结构:多跳网状网络拓扑结构
缺点:复杂度高,牺牲容量、开销、电池寿命等扩大覆盖范围
② 星型网络结构:最常用的网络拓扑结构
1)星型网轮询:即一点对多点通信,N个从节点轮流通信。
缺点:效率低
2)星型网并发:即一点对多点通信,多个从节点可同时与网关通信,从节点可随机上报数据。
5. 终端节点→网关:多对一时
(1)单网关能接入最大节点数的计算:
一个lora网关实际可容纳实际节点数的具体的计算公式为:
①:单包的空中飞行时间
在10字节负载的前提下,LoRaWAN的速率与单包的空中飞行时间ToA的对应表格
②吞吐量
:终端节点发送数据根据ALOAH协议(只要有数据待发,就可以发送)时,吞吐量为1/e
:终端节点发送数据根据时隙ALOAH协议(将时间分为离散的时间段,每段时间对应一帧,这种方法必须有全局的时间同步)时,吞吐量为1/2e
③发送时间间隔T
一个SX1302有8个通道,使用LoRaWan协议每天可以接受近150万包数据。
(2)网关接收数据的模式
单一接收:在给定的时间窗内搜索前导码,如果该时间窗结束时还未收到,则芯片会产生RxTimeout中断信号,同时切换回待机模式。
连续接收:LoRa调制解调器会持续的扫描信道来搜索前导码,如果检测到后,LoRa都会在收到数据之前对该前导码进行检测及跟踪,然后继续等待检测下一前导码。
(3)终端与网关通讯时,终端同时发送数据时的冲突问题的?
节点随机选择一个信道、发送周期中加入随机值、发送前监听(LBT)等方法可以降低冲突的几率。
发送前监听避让(LBT)机制:
①发送数据前首先检测信道是否有使用,如果检测出信道繁忙,则等待一段随机时间后,才发送数据。
②接收端如果正确收到此帧数据,则经过一段时间间隔后,向发送端发送确认帧ACK。
③发送端收到ACK帧,确定数据正确传输。
6. 终端节点→网关:一对多时
同一个终端节点在多个网关的接收数据范围内,一个终端节点发出的数据被多个网关转发到服务器,此时需要去重。
LoRa服务器去重处理:在 LoRaWAN 协议中,一个节点的上行数据包会被信号覆盖范围内的所有 LoRa 网关接收,这些网关会将这个数据包转发给服务器,服务器接收这些数据包时,它会发现节点 ID(EUI) 和数据包 FCnt 是一致的,它意识到这是重复的数据包,因此,它选择一个信号质量(SNR 和 RSSI)最强的数据包。
7. 网关↔服务器间连接方式
网关和其内置服务器间: Packet Forwarder方式:由Semtech/IBM提出。这是LoRa数据包转发器,是在LoRa网关的主机上运行的程序,该程序将集中器接收的RF数据包通过IP / UDP链接转发到服务器,并发出服务器发送过来的的RF数据包。它还可以发出网络范围的GPS同步信标信号,用于协调网络的所有节点。
github:https://github.com/Lora-net/packet_forwarder
网关和网络服务器间:
(1)CoAP方式:CoAP是一种在物联网世界的类web协议,是一种受限应用协议,使用在资源受限的物联网设备上。
(2)MQTT方式:MQTT是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上。(主流方式)
(3)Protobuf方式:Protobuf是一种可扩展且轻便高效的序列化数据结构的协议。
常见问题:LoRaWAN部署多个网关,节点发送数据,网关转发至服务器,服务器怎么回复?
a. 下行链路消息由服务器发送给终端设备,每条消息对应的终端设备是唯一确定的,而且只通过一个网关转发。
b. 回复或不回复是由节点发送的消息类型(confirm或者unconfirm)决定的,若节点发送confirm消息,则由服务器下发确认消息到网关,网关再通过无线发送。多个网关可选时,服务器会选择一个信号较好的网关来下发数据信息。
8. 数据上下行传输
9. 终端节点加网
收发传输数据正式工作之前,节点必须先加网。加网方式:Over-the-Air Activation(空中激活方式 OTAA),需要准备 DevEUI,AppEUI,AppKey 这三个参数。
LoRa、LoRaWAN及网关相关技术介绍相关推荐
- 智能会议系统(34)---Android语音通话实现方案及相关技术介绍
Android语音通话实现方案及相关技术介绍 Android语音通话实现方案及相关技术介绍 语音通话 Step1语音采集和输出 Step2编解码方式 Step3网络传输 Step4去噪声消回音 语音通 ...
- Frida-Dexdump 脱壳工具下载使用以及相关技术介绍
Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 文章目录 Frida-Dexdump 脱壳工具下载使用以及相关技术介绍 前言 一.查壳.反编译.APK工具推荐 二.查壳 1.方式1 2. ...
- Android语音通话实现方案及相关技术介绍
Android语音通话实现方案及相关技术介绍 Android语音通话实现方案及相关技术介绍 语音通话 Step1语音采集和输出 Step2编解码方式 Step3网络传输 Step4去噪声消回音 语音通 ...
- 单机存储系统可靠性及相关技术介绍
一.存储系统可靠性的影响因素 单机存储系统包括存储硬件和存储软件.存储硬件又包含存储介质.存储控制器.设备固件:存储软件栈层次则更为复杂,以Linux为例包括:存储设备驱动层. 块设备层(Block ...
- 撰写毕设论文正文的摘要、绪论、相关技术介绍-“一楼正式开建”-03
本文思维导图 目录 摘要 绪论 相关技术介绍 我们的建筑,地址选好了,地基也打稳了,今天正式开始建造一楼.那这一楼有什么呢?前门.大厅和后门,这三项必有,对吧.它们分别对应毕业设计中的摘要.绪论和相关 ...
- Fabric学习(一) — 区块链及相关技术介绍
目录 一.区块链? 1.1 区块链是什么? 1.2 区块链的分类 1.2.1 公共区块链 1.2.2 联盟区块链 1.2.3 完全私有链 1.3 区块链工作原理 二.区块链相关技术 2.1 基础技术 ...
- ApkScan-PKID 查壳工具下载使用以及相关技术介绍
ApkScan-PKID 查壳工具下载与使用 文章目录 ApkScan-PKID 查壳工具下载与使用 前言 一. 关于壳的介绍 二. 关于壳的技术资料 三. APKSCAN-PKID的下载 四. AP ...
- 自动驾驶技术-环境感知篇:激光雷达、毫米波雷达、超声波雷达相关技术介绍
在上一篇<自动驾驶技术架构和综述>文章中我们介绍了自动驾驶三个核心环节,分别是环境感知和定位.决策规划.执行控制.接下来这章将会针对环境感知和定位展开介绍,环境感知和定位包含环境感知.定位 ...
- 接入商重构相关技术介绍
接入商服务处在娱票儿电影票业务调用链的底层.影院.影厅.影片.排期等基础数据的获取,下单.出票.查票.退票等线上交易都依赖接入商服务.旧版的接入商服务都打在一个jar中,由于和其它系统的高耦合性,稍有 ...
最新文章
- linux diff patch 生成和打补丁
- 台式计算机装电源线,完美:[机箱电源线的连接方法]如何选择台式机电源?组装台式计算机机箱的电源线连接方法图...
- java script console_JS调试之console.log()作用与用法
- python长连接框架_python之websocket【长连接的实现】
- 数据库范式解析(1NF 2NF 3NF BCNF)
- 【链表】BZOJ1588: [HNOI2002]营业额统计
- java.lang.ExceptionInInitializerError
- 四、Linux用户管理
- 释放千行百业数据价值,华为云DAYU有一套
- 由软件工程看中国人急功近利的心态
- python语言程序设计实践教程答案上海交通大学_Python推荐书籍从入门到进阶(珍藏版)...
- 约瑟夫环c语言代码顺序存储,详解约瑟夫环问题及其相关的C语言算法实现
- 禅道下载与安装教程(完整版)
- 【笔记】《Java核心技术卷1(第11版)》-第1章-Java程序设计概述
- aws-sdk for JavaScript 官方api文档
- 扁平化设计(Flat Design)
- 电脑里有老版java删不掉,电脑上的一些文件老是删不掉怎么办 win7中经常出现一些文件夹删不掉...
- GitHub 上史上最全的 iOS 开源项目分类汇总
- HDLBits——Replication operator位扩展 (非常有用的一道题目)
- 陌陌八成营收靠直播 直播行业已进入两极分化
热门文章
- eclise去连接mysql,Eclipse如何连接MySQL
- java接口可以接两个吗,接口可以在Java中扩展多个接口吗?
- window safari 怎么进入响应式_响应式网站怎么做?模板教程来了
- linux 磁盘监控,9个在Linux中监视Linux磁盘分区和用法的工具
- OceanBase杨传辉:一体化架构的分布式数据库已成为企业级系统首选
- openGauss 分区表索引
- 注意:ORACLE 11G ADG RAC 这个情况下并不能高可用
- 云小课 | 不了解EIP带宽计费规则?看这里!
- 微服务架构下,DLI的部署和运维有何奥秘?
- DevOps on DevCloud|代码检查服务如何降低“Billion Dollar Mistake” NPE风险