|
gateway 如何在 node 上报完成后 1s 和 2s 准确“下发”数据包 -- 这个看起来困难,其实很简单,如果熟悉它的机制的话。
当 gateway 接收一个 LoRa 数据包时,它会打上一个时间戳,如:2,473,177,372(取自 sx1301 的计数器,1MHz 频率)
服务器接收到该数据包,取上述时间戳,加上 1,000,000,即为 :2,474,177,372.发送给该网关。
网关会在 上述时间戳 的 时刻点 发射 LoRa 下行包。
这样取得“精确的” 1秒延迟。
如果是“多个” gateway 接收到同一个 LoRa 数据包,服务器根据 SNR+RSSI 挑选最优的 gateway 下发。
原理是一样的,因为“累加” 1,000,000 是“叠加”在该 gateway 上行的时间戳上,是“相对”时间。
这样保证正确,尽管多个 gateway 的时钟“不同步”。
|
|