为 LoRaWAN 节点和服务器配置 Class C,实现主动下行通信

提示1:锐米所有 LoRa 产品严格遵循国际标准的 LoRaWAN 协议
提示2:如果您有其他 LoRa 需求或建议,欢迎联系锐米 support@rimelink.com

背景需求

在 LoRa 物联网应用中,有一些场景需要实时控制,如:电器,灯光,电机,阀门等,这是由 LoRaWAN Class C 协议来实现。

本文介绍在服务器和节点这两端配置 Class C,让用户简单完成操作。

提示:LoRaWAN 网关是一个透传设备(如快递公司),它不知道通信数据帧的协议(如包裹内容),很明显,配置 Class 类型与网关没有任何关系。


Class C 应用场景
LoRa 继电器开关应用场景

配置节点为 Class C

组件和工具

LoRa 开发板 x 1 采购链接


LoRaWAN 模块评估软件LoRaWAN 模块评估软件 下载链接

硬件连接

软件操作

如下图所示,LoRaWAN 模块评估软件配置节点为 Class C
提示:切换节点的 Class 类型,需要重启才能生效。
配置软件设置节点为Class C

配置服务器为 Class C

锐米云

设置 Class C

使用浏览器打开 锐米云用户登录链接,输入用户名和密码(凡采购锐米 LoRa 网关即分配账号,打印于发货清单)

在 Web 页面操作步骤为:终端设备 -> 选择对应的节点 -> 编辑 -> Class C -> 保存
锐米云配置Class C

测试下行通信

在 Web 页面操作步骤为:终端设备 -> 选择对应的节点 -> 下发 -> 文本框输入456 -> 发送
锐米云下发数据
节点接收到服务器下发的数据帧,并显示本次 LoRa 通信的信号质量。
Node 接收锐米云下发数据

LoRa Server

添加 Class C 框架

使用浏览器输入 http://LoRaAppServerIP:8080(在本例为: http://192.168.1.206:8080),输入用户名和密码

在 Web 页面操作步骤为:Device-profiles -> CREATE

GENERAL 页面
GENERAL 页面

JOIN(OTAA / ABP)页面
JOIN(OTAA / ABP)页面

CLASS-C页面
CLASS-C页面
最后点击:CREATE DEVICE-PROFILE

添加 Class C 节点

在 Web 页面操作步骤为:Applications -> 选择挂载的应用 -> CREATE

CREATE DEVICE页面
CREATE DEVICE页面

ACTIVATION页面
ACTIVATION页面
小窍门 :为了简化入网过程,锐米 LoRaWAN 模块出厂默认 DevAddr(本例为 0E270030) 是 DevEUI(本例为363437470E270030) 的后 4 字节 ,NwkSKey 和 AppSKey 为 00 11 22 … FF。为了增强安全性,用户可以自行设置 NwkSKey 和 AppSKey 只要保证 LoRa Server 和模块一致。

测试下行通信

  • LoRa App 连接到 LoRa Server 下载链接
  • 文本框输入456 -> 下发

LoRaServer 下发数据
节点接收到服务器下发的数据帧,并显示本次 LoRa 通信的信号质量。
Node 接收 LoRaServer 下发数据

Class C 要点

节点入网后,先发送一帧才能持续接收

经过实验证明,Class C 的节点入网后,必须先发送一帧数据并且服务器成功接收后(节点发送 Confirmed 数据帧获取服务器 ACK 来确认),节点才能处于持续接收状态。这样,服务器就可以随时下行给节点。

节点和服务器 Class 类型要一致

节点和服务器需要对 Class 类型匹配一致才能正常工作。

  • Class A:LoRaWAN 数据帧包含时间戳,它非常严格,告知网关具体的发送时刻。
  • Class C:服务器的下发数据交给网关,网关直接发送。

尽管服务器在 Class A 的 RX2 和 Class C 的下行频段和速率都相同(中国地区=505.3MHz / SF12),但因为这 2 者下行时间机制不同,只有类型匹配的节点才能对准时间窗口,从而成功接收下行数据包。