欢迎!
请输入要搜索的内容 产品中心与合作 资料下载
最近在做LoRa, LoRaWAN协议略微复杂,边读边翻译,现在把部分关键的翻译分享给各位做物联网的同行。 当然里面掺杂了一些我的个人笔记,希望对大家有所帮助。 如果哪里有问题,欢迎应各位留言或者邮件指正。 翻译很辛苦,转载请注明出处和源链接
最近在做LoRa, LoRaWAN协议略微复杂,边读边翻译,现在把部分关键的翻译分享给各位做物联网的同行。 当然里面掺杂了一些我的个人笔记,希望对大家有所帮助。 如果哪里有问题,欢迎应各位留言或者邮件指正。
翻译很辛苦,转载请注明出处和源链接
同步字见下表:
symbols参考资料:?比特速率、码片速率和符号速率等区分
感谢群友?@周先生背后有只鬼?提供的资料 大家谁知道?8 symbols?怎么理解?symbols?这个专业术语始终不知道该理解成什么,在这里向大家求教一下。
@周先生背后有只鬼
8 symbols
symbols
欧洲的无线电频谱的ISM频段由ETSI[EN300.220]分配。
网络运营商可以自己定义网络通道,但任何 EU868MHz 终端设备都必须实现下面三个默认信道。这些信道是所有网络网关都必须一直终监听的最小集合。
868.10
868.30
868.50
为了访问物理层,ETSI强制规定了一些限制,发射机可以在线的最大时间或者发射机每小时内可以发送的最大时间。ETSI允许使用占空比限制或者使用所谓的Listen Before Talk Adaptive Frequency Agility (LBT AFA)?传输管理。为了遵守ETSI规定,现在的LoRaWAN规范仅使用占空比对传输做限制。
LoRaWAN强制规定每个子带的占空比限制。给定子带上每一帧数据的发射时间和空中传输时间都会被记录下来。子带在接下来?Toff?秒之内不能再次使用,其中:
在指定子带不可用期间,设备可以通过其它子带发送数据,如果所有的子带都不可用,设备就只能等待下一次传输。设备根据可用子带调整其信道调频顺序。
例如:A设备在默认信道上只传输帧数据消耗了0.5s,该信道子带的占空比 1%,那么A在接下来 49.5s 内不能再次使用整个子带(868-868.6)。
EU868MHz ISM 频段的终端设备的默认参数如下:
-默认无线传输的发送功率:14 dBm
EU868Mhz 频段的终端设备应能够在 863~870 MHz 频段范围内运行,并且应有至少能存储16个信道参数的信道数据的结构体。一个信道数据结构对应一个频率以及一组改频率下可用的数据速率。
前三个信道是 868.1,868.3 和 868.5MHz/ DR0 至 DR5,这些参数必须在所有(EU868MHz下使用的)终端设备实现。这些默认信道不能通过?NewChannelReq?命令进行修改,以保证终端设备和网关之间存在最小的信道集合。
下表给出了终端设备用来发送入网激活请求的频率列表,入网请求传输占空比绝对不能超过?0.1%
0.1%
表13:EU863-870 JoinReq Channel list
864.10
864.30
864.50
<0.1%
下表是数据速率(DR)和 节点输出功率(TXPower)在 EU863-870上的编码:
表14: 数据速率和TX功率
欧洲 863-870 ISM频段的LoRaWAN在JoinAccept消息中实现了一个16字节的可选信道配置列表(CFlist)。
CFList由第4至第8这5个信道组成,每个信道都是3字节的无符号整型数字,不使用的信道填充0。所有列表里面的信道都可以使用LoRa模式的 DR0~DR5。列表最后有一个填充字节用来凑足16字节,该字节暂时无意义(保留字节)。
列表中道值的单位是 100Hz,其中100Mhz以下的频率暂时保留(待未来使用)。这就可以以100Hz为步长,在100MHz~1.67GHz之间设置任意频率的信道。CFList是可选配置,可以通过检查JoinAccpet消息长度来检测它。一旦CFList出现,就会用它里面的信道替换节点上除了3个默认信道(第6章有说明)以外的信道,新的信道立刻可用并被终端用来通信。
EU863-870的LoRaWAN支持最多16个信道,此时?ChMaskCntl?字段值是0,ChMask字段挨个?打开/关闭?这16个信道。
表15:ChMaskCntl 值列表
MACPayload最大长度(单位:字节)见下表。该长度受PHY层限制,考虑到可能会有中继封装层 PHY层依赖于有效调制速率。下表同样给出了在没有FOpt的情况下,应用负载最大长度的参考值(翻译调整,感谢朋友:四渡赤水)在缺少FOpt的情况下,应用负载的最大长度(N)仅给出了供参考的信息?(不参考前面章节根本不知道什么断句,这语法也是醉了)。如果FOpt字段费空,N的值可能会更小:
表 16: EU863-870 payload最大长度
第一个接收窗口RX1使用和上行(使RX1开启的上行消息)相同的信道,数据速率是上行数据速率的一个函数,RX1DROffset 见下表。RX1DROffset的范围是[0:5],[6:7]是保留值。
接收窗口?RX2?使用修改后的频率和数据速率。默认参数是 869.525 MHz/DR0(SF12,125 kHz)
下面是 EU863-870Mhz 频段相应参数的推荐值
如果终端中实现的实际值和这些默认值不一样(比如,RECEIVE_DELAY1和RECEIVE_DELAY2延迟时间更长),这些参数的值一定要通过外带信道(out-of-band channel)通知给网络服务器。网络服务器可能会不接受与默认值不一致的参数。
章节7.2、7.3、7.4结构一样,只是带入不同的参数,由于时间关系目前就不做重复劳动了,以后时间充裕再补充上。
(略)
目前的LoRaWAN协议(也就是lorawan 1.0.x)可以分成两部分。
这是LoRaWAN协议的基础,讲A类和C类。 关于第17章C类,由于相对简单也就不特意放到前面翻译。
主要讲B类。A类和B类在协议格式上区别不大,这两个除了协议包,其它变动都很大,想要在同一个逻辑里面实现比较困难。
不少朋友留言需要源代码,这里建议大家尽量先自己想办法找,理由就是对你自己有好处。
如果实在找不到,节点、网关和服务器(都是demo)的开源代码我也同步了一份到开源中国。
另外,建了一个群,有兴趣的朋友可以加入进来一起讨论问题:428109903
428109903
看到有些伙伴提问问题,由于本人的CSDN一般不在线。
为了方便交流,附个邮箱,有问题或者想法的朋友可以?
?本文由?qingchuwudi?译制,除非另有声明,在不与原著版权冲突的前提下,本作品采用知识共享署名 3.0 中国大陆许可协议进行许可。
在线客服x
欢迎咨询联系!
购物车
我的足迹