开发者学堂课程【基于LoRaWAN的物联网络管理平台:LoRaWAN协议介绍与调试】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/560/detail/7679
LoRaWAN协议介绍与调试
内容介绍
一、LoRaWAN协议介绍
二、LoRaWAN协议调试
一、 LoRaWAN协议介绍
常用名词解释:
DevEUI:Node的全局唯一标识码,64bit
AppEUI:Node的应用标识码,64bit
JoinEu:Node的入网凭证,Join Server标识,64bit
OTAA:Activation By Personalization Node的激活方式
ABP:Over the Air Actication Node的激活方式
DevAddr:Node的网络地址,32bit
AppKex:用于OTAA中产生AppSkey和NwkSkey
NwkSkey:用于校验Node上行和下行数据包完整性的Key,128bit
AppSkey:用于数据包中Payload加密和解密的Key,128bit
LoRaWAN 激活模式ABP / OTAA(优先推荐OTAA)
1)Node发送Join-Request,其中带有预置的DevEUl、APPEUI、APPKey,以及随机的DevNonce
2)任意网关收到信息便将其转给核心网
3) Network Server收到Request后用AppEUI验证,验证成功后下发Join-accept消息。
4) Join-accept消息包含NetlD,DevAddr和AppNonce。
5)网关将反馈下发给Node。
6)Node保存NetlD、DevAddr等,利用AppNonce生成NwkSkey和Appskey。
1) Node中保存预制的DevAddr、APPSkey、NwkSkey,不需Join进程。
2) Network Server中保存了DevAddr、APPSkey、NwkSkey,可以直接上下行消息。
JoinRequest / JoinAccept数据帧结构
LoRaWAN设备工作模式
ClassA:
只有在上行之后才能接收下行数据
功耗最小
水电表,燃气表
ClassB:
定期开启接收窗口接收下行数据
功耗居中,下行准实时
电子锁,电子标签
ClassC:
下行接收窗口始终开启
功耗最大,下行实时
路灯控制器
ClassA模式:
上报行为可预先周期设定或自行触发。
终端先上报Payload,然后再进入Rx模式。
终端上报后会打开两个窗口(rx1和rx2),rx2结束之后理论上支持立即再上报Payload。
Class B模式:
终端每128s从网关接收一次Beacon包,保持和网关的时间同步。128s周期内终端按照一定周期打开窗口,周期可通过MAC指令变动
参见下图)。
终端在需要的时候就可以上行发送,发送时序按照Class A的模式进行
Class C模式:
终端下行一直在接收,rx2一直打开。
终端只有在上行上报的时候才会关闭rx2,发送完成后rxDelay s后进入rx1,后续继续进入rx2。
LoRaWAN上下行数据帧结构
LoRaWAN的MAC指令
用于调整LoRaWAN节点的各个网络参数
分模式的最终目的:
功耗小——省电—续航长
如何选型:对下行控制即时性要求
CN470频谱规范
二、 LoRaWAN协议调试
典型场景-网关状态异常
1.断网断电;
2.网关三元组烧录错误;
3.硬件问题;
4.工作频段(CN470/AS923 .…….)
典型场景-入网(OTAA)的几种异常
1.设备是否已跟应用绑定—是否已注册;
2.设备三元组(主要是APP_ KEY和JOIN_EUI)烧录是否正常
3.设备凭证和网关是否网间隔离;
4.设备是否遵照频谱规范;
5.节点实现不符合LoRaWAN协议规范
典型场景-数据上行几种异常
1 .设备凭证和网关是否网间隔离
2.数据流转是否配置正确;
3.上行业务数据fport为0;
4 .应用层收到乱码;
5 .上行数据超长(最大:222字节)
典型场景- class A下行不可达
1 .设备不符合频谱规范;
2.设备开窗时间错误;
3.下行端口问题;
4 .下行数据超长(最大:222字节)
典型场景-class B下行不可达
1.设备没有成功进入class B;
2.设备开窗的频点和速率不对;
3.设备开窗时间不对;
4.下行端口问题;
5 .下行数据超长
典型场景-class C下行不可达
1.频谱规范;
2.下行端口问题;
3 .下行数据超长;
典型场景-数据流转异常
1.设备上下行数据是否正常的;
2.数据流转配置是否正确;
3.账户Topic授权问题;
4.订阅关系是否正确
5.子账户权限