管理多种低功耗操作模式
优化资源有助于节约电池电量。我们可通过以下五个步骤来适当采用不同的功率操作模式,从而实现功耗的最小化。本文中,我们将以使用寿命长达十年的烟雾探测器为例来逐步进行说明。我们用光学烟箱(optical smoke chamber)来实施烟雾检测。我们在烟箱中特意内置了彼此隔离的IR发射器和IR接收机。如果出现了火情,烟雾颗粒会进入烟箱,并反射IR传输,以便IR接收机接收IR传输器的信号。接收到的IR接收机信号极其微小,在20nA到200nA之间。我们用比较器和运算放大器进行信号检测。比较器用于比较来自IR接收机的信号和参考电压,从而确定烟箱中是否存在烟雾。运算放大器会将IR接收机的信号放大到107倍。烟雾探测器每五秒钟工作一次,检查是否发生火情。一旦检测到火情,LED指示灯就会发亮,有的烟雾探测器会拉响警报,不过此类案例不在本文考虑之列。图1显示了本系统的结构图。
图1 烟雾探测电路
确定最大平均电流消耗
确定应用功耗预算的最简单方法就是明确电池的最大平均电流消耗。这里的计算取决于电池使用寿命以及选择何种类型的电池。本例选择的是廉价的220mAh CR2032锂电池。对于工作年限长达10年的电池而言,CR2032的平均电流消耗为:220mAh x(1000uA/mA)/(10年)/(8760小时/年)=2.5uA
首先关注待机工作模式
许多电池供电的应用在99%以上的时间中均处于睡眠或不工作状态。应用在睡眠状态下,中央处理器(CPU)不工作。在睡眠模式中,应用会采用内部定时器运行实时时钟操作,不过时钟系统也可能会完全关闭,等待外部事件的发生。为了节约功耗,我们选择的微控制器(MCU)应确保在系统睡眠状态下具有极低的功耗,这点尤其重要。睡眠模式的电流消耗会对平均电流消耗造成极大影响。例如,烟雾探测器应每五秒钟工作一次,检测火情,也就是说,应用在睡眠状态下也要进行实时时钟操作。考虑到睡眠模式电流消耗极低的要求,我们选择MSP430F2011作为首选MCU。这款MCU可在8位或16位的MCU空间中实现最低的待机电流消耗。在电压为3V的待机模式下,最高耗电为1.2uA,其中包括用32kHz晶振提供掉电复位保护(BOR)的耗电。我们可用功耗极低的振荡器(VLO)来进一步降低电流消耗。VLO是一种内置振荡器,无需外部组件。VLO运行频率为12kHz,其典型电流消耗不足500nA。在本例中,我们将采用外部晶振。MSP430F2011带有2KB闪存、128BRAM、带有两个捕获及比较寄存器的定时器,以及10个通用I/O(GPIO)和一个多路复用比较器,能满足应用系统的最低要求。
为实现最高集成度制定计划
利用寄存器而非较慢的串行通信端口可以提高集成度,从而加快通信速度,并更好地控制模拟外设。只要不增加外部组件,我们就能尽量减小漏电流。我们为烟雾探测器采用内部比较器;此外还需要采用外部运算放大器。
在待机状态下关断外部模拟组件
如果组件消耗的静态电流较低,那么对节电非常有益,因为组件“总是”通电的,不存在建立时间。对于便携式应用而言,由于待机时间很长,因而建立时间的问题可以忽略。我们可以考虑采用具备电源关断功能的外部组件。如果组件不具备关断引脚,那么我们可尝试直接从GPIO为组件本身加电,不过条件是组件吸收的电流不超过端口引脚规范。对数字信号处理器(DSP)等组件而言,即便关断模式也会消耗较大量的电流。对这种组件来说,我们可考虑采用外部开关。MCU采用GPIO控制该开关,在不使用该组件的时候就将其禁用,以使其断电。在本例中,考虑到IR接收机的电压在10nV至200nV之间变化,我们需要采用运算放大器。鉴于TLV2760具备关断模式,因此我们选择了该器件。这款运算放大器的建立时间为13.5uS,几乎可以忽略不计。
在工作模式下最小化功耗
待机电流会对平均电流消耗造成极大影响,不过尽可能减小工作状态下的功耗也非常重要。为了降低功耗,不妨考虑以下建议:
最小化消耗大部分电流的组件的工作时间。
尽可能多地关闭PU。在许多情况下,CPU要等待外设或外部组件完成任务后才能进行进一步的处理。我们应选用在CPU关闭状态下仍能操作外设的MCU。请确保CPU能迅速唤醒,这样才能避免浪费时间及电池使用寿命。
避免探询PIO和外设。在工作模式下,如果因为用户互动检查GPIO,就会占用CPU,浪费时间。我们可考虑采用中断(空间)驱动的架构,如果出现用户输入或发生需立即响应的关键事件,那么就向CPU发出中断。
图1显示了CPU和外部组件在烟雾探测器工作状态下功耗情况的粗略估计。请注意,在比较器和运算放大器趋于稳定时,我们要有目的地关闭CPU。IR发射器的功耗最高。因此,我们要高效地打开及关闭IR发射器,尽可能减少其工作时间。待机和工作状态下总的平均电流消耗为1.38uA,非常接近最大待机电流消耗,即1.2uA。对寿命长达十年的烟雾探测器而言,最大平均电流消耗为2.5uA,而总的平均电流消耗为1.38uA,因此我们能够实现功耗目标。
电源设计
延长便携式应用电池使用寿命的另一方面就是要做好电源系统的设计工作,其中包括电池与稳压器的选用。我们在以下部分将针对延长电池使用寿命给出一些设计小窍门,以提高设计工作的效率。
使用单个电压源
若采用多个电压源,对系统来说即耗电又昂贵。此外,多个电压源还需要增加稳压器,由于这些稳压器会不断吸收电流,因而会大幅缩短电池的使用寿命。添加额外的电压源会相应提高成本,因为设计中必然会涉及电平转换器与稳压器。便携式应用通常采用3V电源,这是因为目前大多数组件都处于这一电压范围内,而且能以足够的电压范围实现高效的模拟性能。
尽可能采用锂电池
与其它电池技术相比,锂电池的电压源输出最稳定,这有助于延长电池的使用寿命。商用锂电池的不足之处在于其峰值电流容量较低。如果需要较长的峰值电流,碱性电池更适合。
采用工作电压范围宽泛的组件
为了尽可能延长电池使用寿命,我们应采用可支持宽泛工作电压范围的组件。不管采用何种电池技术,一段时间之后电压总会下降;例如,碱性电池会呈线性下降。可支持宽泛电压范围的组件将有助于延长电池使用寿命。比较支持2.2V电压范围和2.7V电压范围的情况,对两节AA电池而言,使用时间相差一倍。
多个电压源的电源管理
在有些情况下,我们确实需要多个电压源。我们不妨以一款DSP系统或32位MCU为例来说明这一问题。这类系统通常具有极高的待机电流消耗,并且还有多个可支持输入-输出(I/O)以及核心CPU的电压轨,如3.0V和1.8V。如果添加低成本的小型MCU,就能在不使用电压轨时将其关闭。
组件选择
目前市面上可供选择的组件有许多种。组件选择对延长电池使用寿命至关重要。
明确下列问题对您选择不同的MCU很有帮助:
对待机操作模式产生影响的问题:
应用中最长见待机模式的最大电流消耗是多少?
掉电复位(BOR)保护功能的最大电流消耗是多少?
最大引脚泄漏电流是多少?
影响工作模式的问题:
MCU唤醒时间以及提供快速稳定的内部振荡器能有多快?
MCU避免探询的中断能力如何?
能否对外设进行预配置,以及外设可否由外部事件驱动以便能在不使用CPU时关闭CPU?
回答下列问题将有助于评判不同的模拟组件:
组件是否具备关断选项?
组件的稳定时间有多快?
能否将相关功能集成至MCU中?
上述有关管理多种低功耗模式、电源设计和组件选择的步骤并不能确保您的设计无往不胜,不过我们希望这些介绍会对您有所裨益,能为您今后延长便携式应用的电池使用寿命提供一些参考信息。
评论