LoRaWAN介绍19 Server开源
LoRaWAN 介绍 19 Server 开源“UNIX很简单,但需要有一定天赋的人才能理解这种简单。”--Dennis RitchieLoRa Server 是 LoRa 物联网的核心!为帮助行业朋友快速搭建 LoRa Server,锐米提供软件安装包,让您“一键安装”在Windows / Ubuntu / CentOS...
LoRaWAN 介绍 19 Server 开源
“UNIX很简单,但需要有一定天赋的人才能理解这种简单。”--Dennis Ritchie
LoRa Server 是 LoRa 物联网的核心!
为帮助行业朋友快速搭建 LoRa Server,锐米提供软件安装包,让您“一键安装”在 Windows / Ubuntu / CentOS
经过严格测试,保证 100% 正确,请链接:锐米云 www.rimecloud.com
1 整体架构
很明显,LoRa Server基本遵循LoRaWAN对Server的4层架构,它们的对应关系如下。
loraserver <=> NS (Network Server)
lora-app-server <=> AS (Application Server)
lora-controller <=> NC (Network Controller)
application <=> CS (Customer Server)
LoRaWAN规定GW和NS的接口协议是JSON,而本项目使用的是MQTT格式,因此它设计了一个 lora-gateway-bridge 层,它负责JSON和MQTT的转换。
2 实现LoRaWAN功能
2.1 支持类别
Class | 支持 | 说明 |
A | √ | 支持 |
B | - | 不支持 |
C | √ | 支持 |
2.2 确认报文
支持确认报文(ConfirmedFrame)。如果是下行确认报文,LoRaServer将在队列中缓存该数据包,直到End Node回复ACK为止。
2.3 节点入网
支持ABP(Activation By Personalization)和OTAA(Over The Air Activation)。
ABP:application server提供End Node的Addr和Key给LoRa Server;
OTAA:LoRa Server回复join-accept给End Node,并通知application server.
2.4 ADR
支持ADR(Adaptive Data Rate,速率自适应),这需要End Nodes设置ADR interval和margin。
ADR interval:设置End Nodes发送多少个上行RF数据包后,重新计算速率和发射功率。
margin:调整ADR的无线信号强度余地,默认推荐值为5dB。
2.5 NC接口
提供LoRa Server管理无线网络的能力,它通过MAC命令获取或设置End Nodes的网络参数和射频性能。
2.6 RX窗口
支持调整RX1和RX2窗口的空中速率和延时。
2.7 帧计数器
ABP入网模式的End Nodes有一个问题,一旦设备重启后,FCnt的值将归零;NS接收该报文后,会发现FCnt小于或等于上一个报文,将会拒绝接收该报文。LoRa Server解决了这个问题,它放宽了对FCnt的检测。
2.8 支持频段
目前支持的地区和频段包括:
地区 | AS | AU | CN | CN | EU | EU | KR | RU | US |
起 | 923 | 915 | 470 | 779 | 433 | 863 | 920 | 864 | 902 |
止 | 928 | 510 | 787 | 780 | 923 | 869 | 928 |
3 环境与配置
现代服务器的环境依赖较多,特别提出的是,因为免费和UNIX文化,绝大部分服务器都部署在UNIX / Linux机器上,而非我们常见的Window。
LoRa Server的环境如下:
语言=Go
系统=Linux,已经在 Debian / Ubuntu上测试和运行;
中间件=MQTT broker、Redis datastore,PostgreSQL
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)