软硬件低功耗设计

前言
随着物联网的兴起,各式各样的物联网设备涌向市场,这些设备有一个共同的特点就是电池供电,电池的容量是有限的,如何在电池容量有限的情况下延长设备的使用时间呢?万恶始于源头,最好的办法就是在设计中降低设备的功耗,设计又进一步分为软件设计、硬件设计 。
硬件设计
根据低功耗的产品需求,一般会有两种方式,一种是平时处于断电状态,需要使用的时候上电即可,工作一会继续断电 。另一种是一直处于待机状态,使用的时候,“唤醒”产品,工作一会继续“睡觉” 。
低功耗产品一般是通过锂电池或者干电池供电的,前者主要用于易于携带或者移动的产品,比如,智能手表,共享单车等等,干电池应用的比较多的场合是智能门锁等,一般有3-4节干电池,用完电之后用户可以更换 。
选取低功耗器件
这点自不必说,谁不选谁傻x,不选坑自己~
开关机电路设计
对于平时断电的设备,既然平时主要是断电状态,需要时开启,开关机设计必然少不了,接下来介绍一种实用的开关机电路 。(关于此电路的详细解析,可参看:一种简单可靠的开关机电路设计)
AD采集电路设计
电池供电,电量的提示就很重要,如果说智能锁电池没电了,用户竟然一无所知,那不得骂娘,好好的一扇门,非要砸个窟窿才能进~
如果想要比较精确的采集电池电量,那一定是首选电量计,可是啊~设计者一切不得为了资本服务,为了节约成本,大家都懂得,有的厂家还是会采用简单的AD采集,根据电池放电曲线大概估算电量 。
说到这里,来看一看,电池的放电曲线是怎样的呢?
电池供应商一般会提供给客户某款电池放电曲线,下面是某厂家提供的2016纽扣电池的放电曲线,其他电池其实也类似,可以明显的看到,新电池的“富裕电压”其实降得是非常快的,然后会进入一段非常长的“平缓期”,电池电量放的差不多的时候,又开始进入“快速衰老”期,可以看到,电量跟电压并没有什么严格的比例关系 。
既然没有严格的比例关系,那如何根据电压来“计算(估算)”电量呢,负责的厂家会真枪实弹的做放电测试(谁知道厂家提供的是不是真实的呢),大量测试后,大概得出一个算法来模拟电压与电量的“近似关系”,根据电压大概估算电量,或者根据使用时间及次数,每次使用的功耗等,计算得出剩余电量 。
所有这种都是“不太准确的”,但是只要能在彻底MCU“死掉”之前提醒用户换电池或者充电即可,我提醒了,你没换,那关我什么事~
言归正传,AD采集也需要做一些处理,如下图,这个电路分情况,在断电的设备情况下,这个电路是没问题的,但可能不是最好的,要注意,不能直接接在电池端,要接在受控的电源端,如果直接接在电池端,这两个电阻会一直耗电 。
【软硬件低功耗设计】再来看一个AD采集的电路设计,如下图,相比于上面的设计,这个设计有什么好处呢?这个设计电压是可控制的,那只需要在采集的时候开启就可以了,采集完MCU控制关闭,相比于上面的电路,虽然多了几个器件,但在不需要的时候可以随时关闭,能够有效降低功耗,这种设计在不断电的设备中是要明显优于第一种设计的,因为电池是有一段“平稳期”的,1秒采集一次和1天采集一次可能都没有区别,所以降低采集频率,不需要的时候,把电源断开即可,很实用 。
模块电源加控制
这点类似于上面的AD采集带电源控制,稍微改一下即可,物联网设计中可能会用到各种各样的模组 。信息上报不频繁的情况下,可能1天几次或者几天1次,这时候可以考虑,是不是可以不用的时候把电源断掉,当然要考虑上电重新连接所花费的功耗与休眠状态下所花费的功耗,二者取其优,功耗差别不大的情况下,我觉得休眠是好的选择,毕竟频繁开关机会对模组有影响 。