漏水节点中LoRa低功耗的设计

       通常我们提到低功耗的话都会想到什么什么耗电比较少,省电什么的。事实确实是这样的,不过低功耗的设计思想在不同的项目中其用法也不一样。

       最近我有在做一个漏水检测的项目,这是一个大项目中的子项目,顾名思义,就是用来检测是否漏水的。那既然用来检测是否漏水就要把该检测节点放在水管最容易发生漏水的地方。在这种环境下,设备节点首要条件就是防水,当然,这不是重点。重点是这种节点需要做的小巧,在硬件电路缩小的基础上,电池的大小也是一个重要的问题。大家都知道,电池电量的大小一般是与电池的体积成正比的。那么设备节点要做的尽可能小,电池自然而然也要变小。这就要求设备节点要用小电池长时间供电,怎么说也得能工作一年以上吧。所以就有了低功耗的设计。

        我有大致看过LoRa低功耗的设计,因为项目的需要,我只用到了最简单的部分。首先说一下单片机那边的配置。单片机在进入休眠之前保留LoRa模块用到的几个管脚,除此之外会把所有的管脚配置成模拟态,不带上下拉,以减少耗电。另外,没有用到的外设也全部关掉,只保留RTC用来做定时唤醒。最后还要有一个管脚配置成外部中断,用来主动唤醒。LoRa模块跟单片机是一样的,对它进行休眠处理时也是关掉所有不相关的功能,在只有判定确实漏水的情况下再去初始化射频模块来上报漏水信息,信息一旦上报完毕,立马进入射频休眠模式,之后进入整体休眠。

        文字表达不清楚的话,那我就直接上流程吧。懂的人直接看流程图就可以了,不懂的再好好想想,我觉得结合例程看更容易理解,前提是你有例程。

还有,图中射频休眠应该要放在上报集中器之后的,也就是说我判断到漏水的话,初始化射频,就是为了上报信息,那我上报完毕之后应该时立马进入休眠的。这样才更符合设计思想,我只是懒得修改而已。

猜你喜欢

转载自blog.csdn.net/guiwukejiBGG/article/details/84399854