LoRaWAN介绍17 Server接口

转载只为收藏好文,感谢原博主的分享。原博文地址:https://blog.csdn.net/jiangjunjie_2005/article/details/54694750

LoRaWAN介绍17 Server接口

“这样,我的约就立在你们肉体上,作永远的约。”--《圣经.创世纪》 


LoRaWAN规定Server和Gateway的协议为 JSON / GWMP / UDP / IP,底下的2层协议属于IP协议栈,而GWMP和JSON融入LoRaWAN的特点。

1  NS和GW协议栈
GWMP(LoRa Gateway Message Protocol)如下表所示,包括3个交互协议:

PUSH_DATA <--> PUSH_ACK:GW向NS提交上行RF数据包;

PULL_RESP <--> TX_ACK:NS向GW提交下行RF数据包;

PULL_DATA <--> PULL_ACK:GW向NS发送“心跳”以打开防火墙;

2  GWMP时序和格式
2.1  PUSH_DATA
PUSH_DATA:GW向NS发送上行RF数据包,EUI用于区分不同的GW(一个NS可以连接多个GW),tocken用于区分不同的数据包(一般为自加一)。

PUSH_ACK:NS回应GW—成功接收该DATA数据包。

PUSH_DATA帧格式如下表,它的总长度≤2408字节。


PUSH_ACK帐格式如下表

2.2  PULL_RESP
PULL_RESP:NS向GW发送下行RF数据包,tocken用于区分不同的数据包(一般为自加一)。

TX_ACK:GW回应NS—成功接收该RESP数据包。


PULL_RESP帧格式如下表,它的总长度≤1000字节。


TX_ACK帐格式如下表。特别注意:仅当V2版本才回应该帧。

2.3  PULL_DATA
PULL_DATA:GW向NS发送“心跳”数据包,EUI用于区分不同的GW(一个NS可以连接多个GW),tocken用于区分不同的数据包(一般为自加一)。

PULL_ACK:NS回应GW—成功接收该“心跳”数据包。
PULL_DATA帧格式如下表。特别注意:“心跳”数据包的内容为空。


PULL_ACK帧格式如下表。

3  JSON协议
LoRaWAN使用JSON作为通用数据交换格式,并且JSON仅包含ASCII字符。目前,JSON协议包括3部分定义:GW状态,上行数据,下行数据。

3.1  GW状态
Server可以取GW的状态,它的组织形式和定义如下例所示。

"stat":

{

 "time":"2016-11-15 09:27:35 GMT",   /* UTC system time of the gateway 网关的UTC系统时间 */

 "lati":28.3100,    /*latitude 纬度 */

 "long":113.15130,    /*longitude 经度 */

 "alti":134,    /*altitude 海拔 */

 "rxnb":20,    /* numberof RF frames have received  RF帧数已经收到*/

 "rxok":20,    /* numberof RF frames with correct CRC 具有正确CRC *的RF帧数 */

 "rxfw":20,    /* numberof RF frames forwarded to the NS RF帧数转发给NS */

 "ackr":100.0    /* 100%of RF frames ACKed by the NS 由NS确认的100.0  */

 "dwnb":20,    /* number of RF frames RX from NS  射频帧来自NS的数量 */

 "txnb":20    /* number of RF frames TX by gateway 射频帧来自GW的数量 */

}


3.2  上行数据
GW提交给NS的上行数据,基于JSON组织如下例所示。

"rxpk"

[

  {

   "time":"2016-11-15T09:35:17.145359Z",    /* UTC time of receipt of the LoRa frame  收到LoRa帧的UTC时间 */

   "tmst":3526705714,    /*gateway internal time counter  网关内部时间计数器 */

   "chan":0,    /* IFchannel=IF0 */

   "rfch":0,    /* RFchain=Radio A */

   "freq":469.87500,    /*centre frequency=469.875MHz  中心频率 */

   "stat":1,    /* 1=CRCcorrect */

   "modu":"LORA",   /* modulation is LoRa  调制是LoRa */

   "datr":"SF9BW125",   /* SF=9, BW=125kHz */

   "codr":"4/5",   /* FEC code rate=4/5  FEC编码率= 4/5 */

   "rssi":-13,    /*RSSI=-13dBm */

   "lsnr":5.6,    /*SNR=5.6 */

   "size":12,    /* numberof octets=12 */

   "data":"rqyo15LfOP4J"    /* data that encoded into Base64    Base64编码的数据*/

  }

]

3.3  下行数据

NS提交给GW的下行数据,基于JSON组织如下例所示。

"txpk"

{

 "imme":true,    /*transmit the frame immediately  立即传输帧 */

 "freq":470.125000,    /*centre frequency=470.125MHz  中心频率 */

 "rfch":0,    /* RFchain=Radio A */

 "powe":17,    /* outputpower=17dBm */

 "modu":"LORA",   /* modulation is LoRa */

 "datr":"SF9BW125",   /* SF=9, BW=125kHz */

 "codr":"4/5",   /* FEC code rate=4/5 */

 "ipol":false,    /* doNOT invert the polarity of the transmitted bits */

 "size":10,    /* numberof octets=10  八位字节数*/

 "data":"1Jr8PdOdN5"    /* data that encoded into Base64 */

}


下载经典的LoRaWAN资料,请链接:http://www.rimelink.com/nd.jsp?id=48&_np=107_316

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
LoRaWAN(低功耗广域网)规范是一种针对物联网(IoT)设备的通信协议。它建立了一个能够长距离和低功耗传输数据的无线网络。LoRaWAN规范定义了设备与网络之间的通信方式,使得大规模的物联网应用成为可能。 LoRaWAN协议采用了一种分层架构,包括终端节点(End Nodes)、网关(Gateways)和网络服务器(Network Servers)。终端节点是传感器或其他物联网设备,负责采集和发送数据。网关负责接收节点的数据并将其传输到网络服务器。网络服务器则负责对数据进行处理和转发。 LoRaWAN协议还定义了一种调制技术,即扩频频移键控(CSS)。该技术允许在长距离范围内传输低功耗数据,使得设备能够在低功耗模式下工作数年之久。 LoRaWAN规范还提供了多种安全机制,确保设备和网络的安全通信。它使用身份验证和加密措施,以保护数据的完整性和机密性。 通过LoRaWAN规范,物联网设备可以连接到全球性的物联网网络,实现远程监测、智能城市、智能农业等各种应用。LoRaWAN的优势在于其低成本、长距离传输和低功耗特性,使得它成为许多物联网应用的理想选择。 总结来说,LoRaWAN规范是一种定义物联网设备与网络之间通信的协议,它提供了低功耗、长距离传输和安全性等特点。这种协议为物联网提供了全球性连接的能力,并促进了各种物联网应用的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值