在前面的文章中,为大家介绍了lorawan节点的工作方式classa/c,在这篇文章中,classb工作方式。本文来自微信公众号“小七说lora”,内容已获小七老师授权,小七老师是腾讯云在线课程讲师,在腾讯云在线课堂搜索“lorawan节点”即可找到相关课程。
class b中的b的就是beacon的意思,class b的节点除了在rx1和rx2接收ns的数据外,还可以在和ns同步完时间之后,周期性的打开一个接收窗口来接收ns发送给它的数据。
如何做到时间同步呢?网关通过连接gps,获得gps信息后,周期性的广播一条消息,这条消息,就叫做beacon。节点通过获取beacon来同步时间。
首先我们先来看看beacon
默认的beacon周期是128秒一次,class b的节点,在没有同步到beacon之前,只能工作在class a模式下。节点在入网成功之后,先获取beacon,获取到beacon之后才能切换成class b模式,否则,节点一直工作在class a模式下。
在长时间运行中,节点内部时钟存在一定的偏差,所以节点需要周期性的获取beacon,以消除内部时钟偏差对时间的影响。
节点锁定beacon完成时间同步之后,如何和ns协商收发数据的时间点呢?在介绍ns和节点协商发送数据的时间点之前,我们先要了解,什么是beacon window,什么是slot,什么是pingslot,什么是pingnb,什么是pingperiod。
从一个beacon结束时间点开始算起,到下一个beacon开始时间点,这段时间叫做beacon window,ns想要主动给节点发送数据的话,也只能在这个窗口期呢。
beacon window这段时间总共有122.88秒。lorawan协议将这段时间平分成2的12次方份,也就是4096份。平均下来每份时长30ms,每30ms叫做一个slot。ns和节点会在每一个约定好的slot上通信,这个约定好的slot叫做节点的pingslot。
在一个beacon window时间窗内,ns可以主动给一个节点发送2的n次方条消息,n的取值范围是0<=n<=7的整数,这个2的n次方就是节点的pingnb。
我们再用4096除以pingnb,得到的就是这个节点的ping周期,我们将ping周期称为pingperiod,ping周期就是同一个beacon window内每个pingslot相隔的时间。
节点会将pingnb发送给ns。节点和ns通过pingnb和节点的devaddr就能计算出第一个pingslot的时间了。然后节点就会每隔pingperiod个slot打开一个接收窗口。如果ns有数据发送给节点,就会在pingslot时刻发送给节点。
到这里,ns和节点就能互相准确的知道双方在哪一个时刻接收发送消息了。
在接下来的文章中,将会继续分享更多的lorawan相关知识,希望大家持续关注我们。
为联通点赞!联通老用户套餐不是梦
2018年人工智能高速发展的原因
以较低的设计和生产成本推广到其他光子计数器的设计和实现
北京到2020年底将实现北京全域5G网络的连续覆盖
iPhone用户流失,怎么重新吸引
LoRaWAN节点工作方式ClassB介绍
手机平板点胶加工和导电胶点胶的技术发展
针对ADAS的芯片厂商 理解各家的主要产品线和状态
MIPI转换芯片可达到每通道2.5Gbps
便携应用的电源管理面临的挑战有哪些
100多万个视频短片数据集来啦!
废旧家电处理中的数据采集与监测系统有何功能
差压式液位计工作原理_差压式液位计安装
电流变送器选型
CentOS普通分区扩容和分区表
基于高效单编码微球封装的液滴微流控系统
人工智能之脑机接口问题及规制
细数物联网领域前进道路三大挑战
芯科实验室推出AM/FM收音机芯片Si477x
家电王者,苏宁实至名归