USB Battery Charging Guide

USB Battery Charging Guide

作者联系方式

USB接口规范表明该接口能够为设备供电,随着并口向串口的转变,各种设备发生了戏剧性的变化,能够方便地与PC机连接。

除了直接对USB设备供电,USB电源最有用的功能之一就是对电池充电。许多便携设备,如MP3播放机、PDA等,都需要与PC机进行数据交换,如果在与PC机进行数据交换的同时,能够利用同一根电缆对电池充电,会极大地方便设备的使用。将USB功能与电池充电功能结合能够使大量设备免受电源线的束缚,如可移动网络照相机,无论是否与PC相连都可以工作。在许多情况下,都不再需要那些曾经使用过的、笨拙的交流适配器。

USB电池充电可能很复杂,也可能很简单,这取决于USB设备的要求。影响设计的因素不仅包括通常的成本、尺寸、重量等。其它重要因素还包括:1) 电池耗尽的设备插入USB端口时,要求多快开始全功能运行;2) 允许电池充电的时间;3) 在USB功率限制范围内的功率分配;4) 是否需要一个交流适配器充电。这些问题和相应解决方案会在讨论USB的功率问题后进行研究。

USB功率

所有USB主机,如PC机和笔记本电脑,每个USB插孔都能支持最少500mA电流输出或驱动5个“单位负载”。在USB术语中,“一个单位负载”是100mA。自带电源的USB集线器也能驱动5个单位负载。总线驱动的USB集线器只能保证驱动一个单位负载(100mA)。按照图1所示的USB规范,由USB主机或带电源的集线器提供的,电缆外设端的最小可用电压为4.5V,而由USB总线驱动的集线器提供的最小电压为4.35V。用这些电压对充电电压典型要求为4.2V的Li+电池充电时,只有很小的裕度,这使得充电器的压降变得极为重要。

图1. 摘自通用串行总线规范2.0版的USB压降示意图

图1. 摘自通用串行总线规范2.0版的USB压降示意图

所有接入USB端口的设备启动时消耗电流都不能超过100mA。与主机进行通信后,设备才能决定是否可以用足500mA电流。

USB外设的插座分两种,都比PC机和普通USB主机的插座小。“B系列”和更小的“Mini-B系列”插座如图2所示,B系列由引脚1 (+5V)和4 (GND)供电,Mini-B系列由引脚1 (+5V)和5 (GND)供电

图2. 这些USB外设插座不同于较大尺寸的主机和集线器4引脚插座,电源和数据引脚如图所示

图2. 这些USB外设插座不同于较大尺寸的主机和集线器4引脚插座,电源和数据引脚如图所示

一旦与主机连接,所有USB设备都必须首先让主机识别自己。这一动作被称为枚举。在本文结尾处专门讨论了实际中此规则的例外情况。在识别过程中,主机决定接受或拒绝USB设备的功率要求,如果接受,可以将设备的电流从最大100mA增加到最大500mA。

简单的USB/交流适配器充电

一些最基本的设备不需要软件开销来管理和优化对USB电源的使用。如果设备负载电流限制在100mA以内,任何USB主机,自带电源的集线器,或总线驱动的集线器都可以驱动。这类设计,可采用图3所示的一个基本充电器加一个稳压器的配置。

图3. 使用简单的100mA USB充电和350mA交流适配器充电,USB充电电流不超过一个单位负载(100mA),不需对充电器枚举。3.3V系统负载始终取自电池。

图3. 使用简单的100mA USB充电和350mA交流适配器充电,USB充电电流不超过一个单位负载(100mA),不需对充电器枚举。3.3V系统负载始终取自电池。

这电路中,设备何时与USB或交流适配器连接,何时开始对电池充电。同时系统负载一直保持与电池相连,在此例中通过一个最大可提供200mA电流的简单的线性稳压器(U2)。如果系统持续消耗如此大的电流,而电池只以100mA的电流通过USB充电,最终电池还是会因负载电流大于充电电流而放电。在许多小型系统中,负载峰值电流仅在整个工作期间的部分时段发生。因此,只要平均负载电流小于充电电流,电池仍然会被充电。连接交流适配器时,充电器(U1)的最大电流上升到350mA。如果USB与交流适配器同时连接,自动给予交流适配器优先权。

USB规范要求U1具备的一个特性(而且,一般来讲对于充电器也是有利的)是电流不允许从电池或另一个电源回流到电源输入端。在传统的充电器中,可通过输入二极管保证,但USB最小电压(4.35V)与Li+电池充电所需电压(4.2V)之间差异太小,以致肖特基二极管也不适用。因此,所有回流路径在U1的IC内部被阻止。

图3所示电路受到一些限制,也许不适用于某些可充电的USB设备。最明显的限制是相对较低的充电电流,如果Li+电池的容量大于几百毫安时,充电时间就会很长。第二个限制是由于负载(线性稳压器的输入)总是与电池相连。在此例中,如果电池已深度放电,设备加电时也许不能立即开始工作。这是因为电池达到设备工作所需的电压前有一定的延迟时间。

负载切换和其它改进

在更先进的系统中,需要对充电器内部和外围电路进行多处改进,这些改进可能包括:可选的充电电流,以便匹配源(USB或交流适配器)或电池的电流能力;电源接入时的负载切换;以及过压保护。图4所示的电路中,利用充电器IC内部的电压监测器驱动外部MOSFET,实现了部分上述功能。

图4. SOT-23封装的功率MOSFET增加了如过压保护、使用外接电源时电池离线等有益的特性。电池离线时由工作电源直接供电。

图4. SOT-23封装的功率MOSFET增加了如过压保护、使用外接电源时电池离线等有益的特性。电池离线时由工作电源直接供电。

MOSFET Q1和Q2,二极管D1和D2绕过电池,直接将可用的电源(USB或交流适配器)连接到负载。当某个电源输入有效时,其监视输出(UOK\或DCOK\)变低,相应的MOSFET管导通。当两个输入都有效时,DC输入优先使用。U1可防止两个输入同时被使用。二极管D1和D2用来阻断系统负载供电通路与输入之间的反向电流。而充电器内部电路可以阻断充电通路(BATT)的反向电流。

MOSFET Q2还可提供交流适配器过压保护,保护电压最高达18V。欠压/过压监视器(在DC端)只允许交流适配器电压在4V至6.25V之间时对电池充电。

最后一个MOSFET,Q3,在没有有效的外部电源接入时导通,用电池向负载供电。当USB或DC电源任何一个接入时,“电源通”(PON)输出立即关闭Q3,将电池与负载断开。这样当有外部电源接入时,即使电池深度放电或已损坏,系统仍能立即开始工作。

USB设备连接时,先与主机通信决定负载电流是否可以增加,如果被允许,负载电流可以从开始时的一个单位负载上升到五个单位负载。5比1的电流范围对不是专为USB设计的传统充电器来说可能会有问题。问题在于传统充电器的电流精度,尽管在高电流时精度足够,但在低电流时会受到电流传感电路失调的影响。结果可能是为了保证充电电流在低端(一个单位负载)不超过100mA限制,电流必须被设置在非常低的水平,从而导致无法使用。例如,对于精度为10%的500mA电流,为了保证不超过500mA,输出只能设置为450mA。仅就这一点而言还是可以接受的,但是,为了保证在低端的充电电流不超过100mA,平均电流只能设置成50mA。最低值可能会低至0mA,显然这是无法接受的。如果要求USB充电在两个范围内都有效,就需要有足够的精度,以便提供尽可能大的充电电流,同时又不超越USB的限制。

在一些设计中,由于系统功率需求的关系,不可能用低于500mA的USB预算功率分别对负载供电和对电池充电。但是,使用交流适配器没有问题。图5所示电路,是图4电路的简化,用一个高性价比的方案满足了这一需求。USB电源并不直接与负载连接;充电和系统运行仍然使用USB电源,但系统保持与电池连接。此设计的局限性与图3所示电路相同——如果USB接入时电池已深度放电,系统要经过一定延迟才能正常工作。但如果连接DC电源,图5电路能够以同图4电路一样的方式工作,无论电池状态如何都不需等待。这是因为Q2被关断,系统负载由电池切换到了通过D1的DC输入上。

图5. 一个简化的设计,USB电源并不与负载直接相连,但DC输入与负载直接相连。当连接USB时,系统仍然采用电池供电,而同时电池被充电

图5. 一个简化的设计,USB电源并不与负载直接相连,但DC输入与负载直接相连。当连接USB时,系统仍然采用电池供电,而同时电池被充电。

镍氢电池充电

尽管Li+电池能为大多数便携式信息终端提供最佳性能,但镍氢(NiMH)电池仍为最低成本的设计提供了一个可行的选择。当负载要求不太高时,使用镍氢电池是一个降低成本的好方法。这需要使用一个DC-DC转换器将1.3V的电池电压升至设备可使用的电压,典型为3.3V。因为任何电池供电设备都需要某种类型的稳压器,而DC-DC仅是一种不同类型的稳压器,并不是额外增加的。

图6所示电路使用了一种不寻常的方法来对NiMH电池充电,并且在不使用外接FET的情况下,在USB输入和电池之间切换对系统负载的供电。“充电器”实际上是一个电流受限的DC-DC降压转换器(U1),它用300mA至400mA的电流对电池充电。尽管不是一个精确的电流源,但其适度的电流控制精度仍能满足充电要求,即使电池短路也能保持对电流的控制。使用DC-DC充电相比更常见的线性电路,一个很大的优越性就在于能够高效地利用有限的USB功率。当以400mA电流对一节NiMH电池充电时,电路仅从USB输入端汲取150mA的电流。在充电的同时留出了350mA电流可供系统使用。

图6. 一个简单的NiMH充电/供电电路,不需使用复杂的MOSFET开关就可自动切换到USB供电。

图6. 一个简单的NiMH充电/供电电路,不需使用复杂的MOSFET开关就可自动切换到USB供电。

负载由电池到USB的切换,是通过USB电源与boost转换器输出之间用二极管(D1) “或”实现的。当USB断开时,boost转换器产生3.3V输出。USB连接时,D1将DC-DC升压器(U2)输出拉升至约4.7V。U2输出被拉升时会自动关断,关断后从电池汲取的电流不超过1µA。如果不允许接入USB时输出从3.3V变成4.7V,可用一个线性稳压器与D1串联。

此电路的一个局限是要依赖系统控制结束充电。U1仅作为一个电流源,如果不加限制,会对电池过度充电。R1和R2设置U1最大输出电压为2V,作为一个安全界限。充电使能输入端被系统用来终止对电池充电。另外,因为150mA的充电器输入电流大于一个单位负载,如果需要,在枚举之前还可作为降低USB负载电流的手段。

鲜为人知的USB特性

有趣的是无论任何标准,都能看到实际应用与印刷出来的规范有一定差异,或规范没有定义的部分得到很大发展。尽管USB在大部分时间毫无疑问都是经过深思熟虑的、可靠的、有用的标准之一,但也不能不受现实世界的影响。这里提供一些观察到的USB特性,也许不明显,但仍会影响电源的设计。

  • USB端口并不限制电流。尽管USB规范详细规定了每个USB端口必须提供多少电流,但对于它能够提供多少电流,规范给出的界限却极为宽泛。尽管定义了电流上限不能超过5A,但一个明智的设计者不应该依赖于这个信息。任何情况下,都不认为每个USB端口会将它的输出电流限制在500mA,或附近的一个值。实际上,USB端口输出的电流经常超过几安培,因为多端口系统(如PC机)经常只有一个保护器件公用于所有的端口。保护器件被设定在所有端口总额定功率之上。因此,一个4端口系统,如果其余3个端口未被使用,一个端口就可提供超过2A的电流。此外,尽管一些PC机使用精度为10%至20%的IC保护方案,其它大多使用非常不精确的自复保险丝,只有负载功率超出额定值100%或更高时才会触发。
  • USB端口很少(从不)关断电源。USB规范对此并没有说明,但人们时常认为如果枚举失败,或遇到其它软件或固件问题,USB电源可能被关断。但实际情况是,除非有电路故障(如短路),没有USB主机会关断USB电源。也许会有例外,但是目前还没有见到。笔记本和主板生产商甚至不愿意为故障保护买单,更不用说智能电源切换了。因此,无论USB外设与主机的对话是否发生,5V一直可以利用(电流为500mA或100mA,也许为2A或更高)。USB供电的阅读灯、咖啡杯加热器以及其他一些诸如此类没有任何通信能力的产品的出现就证明了这一点。它们可能并不“守规”,但它们工作的很好。