分享

The TP4056: Lithium Ion/polymer Battery Charger IC

 创客王睿my 2023-08-23 发布于马来西亚

TP4056 第 2 部分

本页是此处第 1 页的延续。

本页向您展示了使用 TP4056 的两个方面:

  1. 如何正确使用TP4056(充电时断开负载)。
  2. 内部电池温度限制时自动停止充电。

TP4056电源共享问题

这是带有标签 03962A 的流行分线板的原理图,其中显示了分线板的 TP4056 引脚排列。

TP4056分线板原理图

[来源:www.sunrom.com/p/lithum-battery-charger-with-protection-microusb]

该电路的一个问题是在给电池充电时必须断开负载。原因是充电电路检测到充电速率何时低于 C/10(充电周期即将结束时的恒流充电模式)。C 是电池容量,单位 mAh。

如果您有一个负载连接到电池,那么这将改变检测到的电流,因此 TP4056 可能永远不会终止充电过程!

使用3个组件实现安全充电

解决此问题的一种方法是使用采用 P 沟道 MOSFET 的开关电路 - 这有时称为负载共享或自动电源路径控制。它是一个受控开关,可在施加外部电源时断开电池连接。

The idea is that when a power source is connected to the Battery charger chip, the PMOSFET disconnects the battery from the load. The TP4056 still charges the battery but without a load. Power to the load is supplied from the power source directly.

When the power source is disconnected, the PMOSFET is turned on connecting the load to the battery.

With this configuration the TP4056 can safely charge the battery with the load connected, as the battery is isolated from the load during external power application.

PMOSFET power Sharing

The following diagrams show how the PMOSFET is used for power sharing.

To turn ON the PMOSFET, the Gate must be negative (<VGS(th)) w.r.t the Source.
To turn OFF the PMOSFET, the Gate must higher than VGS(th) w.r.t the Source.

注: V GS(th)是 MOSFET 的阈值电压。

PMOSFET 打开(仅电池)

充电器电路或 MOSFET 没有输入电压。这里,Q1 的栅极处于低电平(被 R PULL下拉)并且 PMOSFET 导通,因此电流从电池流向负载。

充电器电源路径 PMOSFET 开启
[来源:Microchip 应用笔记 AN1149]

要查看这里发生的情况,请从没有外部电源的电池开始:

D1 状态 无输入电源

当电池连接到电路时,(Q1的)寄生二极管正向偏置,并且Vbat-0.6V出现在D1的负极。由于 D1 的另一侧被拉至地,D1 被反向偏置,因此没有电流流过它。所以它可以被忽略(除了泄漏电流=小所以无论如何忽略 - 但一些肖特基二极管可能泄漏很多,需要较低的 R PULL)。

Q1 状态 无输入电源

D1 的阴极也连接到 Q1 的源极。Q1 的栅极也被 R pull拉至地。因此V GS为“0 - (Vbat-0.4V)”= -(Vbat-0.4V)。Vbat 介于 2.9V 至 4.2V 之间。 

只要 V GS比 Q1 的栅极阈值电压 (V GS(TH) ) 更负,Q1 就会导通并在漏极和源极之间传导电流。

因此,Q1 的栅源阈值电压 (V GS(TH) ) 必须优于:

    -(2.9-0.4) = - 2.5V

其中 2.9V 是最低 Vbatt 电压,0.4V 是肖特基二极管压降电压-2.5V 是开启 Q1 的最低电压。您可以通过选择正确的 PMOSFET 来选择更高的电压阈值 (V GS(TH) )。

因此,请选择 V GS(TH)大于 -2.5V 的PMOSFET ,即任何介于 -2.4V 和 0V 之间的 V GS(TH)通常-1.3V 就很好。(参见下表了解合适的 PMOSFET)。


注意: TP4056 会对 Vbat < 2.9V 的深度放电电池进行涓流充电,直至达到 2.9V,因此您需要一个高于 -2.3V 的阈值电压。例如-1.0 ~ -1.5 就可以了。

一旦 Q1 导通,寄生二极管就会被旁路,Vbat 通过 Q1 的内部电阻 (R DS )连接到负载

注: R DS是这里的一个重要参数——它是 PMOSFET 从漏极到源极的内阻,即 MOSFET 的内阻。

随着负载消耗更多电流,R DS上的电压下降更多。因此,负载处的输出电压取决于负载消耗的电流。较低的 R DS可提供较高的输出电压。

PMOSFET OFF(电源已连接)

充电器电源路径 MOSFET 关闭状态
[来源:Microchip 应用笔记 AN1149]

Here the gate of Q1 is high and the PMOSFET is off. so the battery is isolated from the load. The power source drives current through the Schottky diode (D1) to the load. At the same time, the battery is charged but in isolation from the load.

    VG = VIN

    VGS = VPOWER - VD1FV

Conditions for the PMOSFET to be OFF are:

    The Gate is higher voltage than the Source : Vgs > VGS(TH) i.e. more positive.

Since the Gate is equal to Vin (~5V) and the diode drops 0.4V, Vgs is positive by 0.4V, therefore the MOSFET is off.

Examples of P MOSFET Selection


Device
Manufacturer
RDS(ON) mΩ @Vth=-2.5
V GS(th)
V (最大)
最大 内径( 25°C)
(续)A

普迪斯
W
包裹
AO3401阿尔法和欧米茄
半导体
85
-1.3
-4
1.4
SOT23
FDN336P
安森美半导体
270
-1.5
-5
0.5
SOT23
DMP1045U
二极管公司
45
-1.0
-4.3
0.8/1.5[1]
SOT23
IRF7329(双 FET)
国际精炼机
21
-0.9
-9.2
2.0
SO-8
[1](取决于安装)

您可能希望避免使用较高 R DS(ON)的器件,因为在汲取更多电流时会失去电压。

肖特基二极管示例

MBRS130LT3:正向压降为 0.395V(1A 和 25°C 时的最大值)。

Note: The Schottky diode will heat up when the charger is externally powered. The Power used depends on the load attached to the output - current through it and voltage drop across it.

An alternative to the Schottky diode is to use the 2nd PMOSFET in the IRF7329 above to replace the diode. This would need controlling using a microcontroller or using the status outputs of the TP4056 (see the LTC4056 datasheet - which is a different chip but provides a design reference).

How to use the TP4056 TEMP control Input

尽管大多数分线板上不使用 TEMP 输入,但它可用于在电池达到低或高内部温度时禁用电池充电。当环境温度低于 10°C 或高于 45°C 时,这是一项重要的安全功能。

下图(来自数据表)显示了 TEMP 输入与包含 NTC(负温度系数)热敏电阻的电池的使用:

tp4056的典型电路
TEMP 输入用于在内部电池温度过高或过低时禁用充电。它通常在分线板上的芯片引脚处接地。

在您自己的设计中使用此输入可确保更安全的充电,但您需要带有内部热敏电阻的电池。如果电池内部温度过高或过低,TP4056 可以关闭充电。

计算 TP4056 的 R1 和 R2

数据表中未指定 R1 和 R2,因此您必须根据特定电池中的热敏电阻规格来计算这些值。从数据表中可以看出:

如果 TEMP 引脚的电压低于电源电压 VIN 的 45% 或高于电源电压 VIN 的 80% 持续超过 0.15S ,则意味着电池温度过高或过低,充电暂停。
[来源 TP4056 数据表]

推荐工作温度

Battery University建议仅在 5°C 至 45°C 的温度范围内充电。

注意:使用这些计算的风险由您自行承担。此外,您还必须使用热敏电阻上电池制造商的数据进行操作。其他标准还建议在更严格的温度限制下充电。

温度限制设计计算

假设:


电池的内部 NTC 热敏电阻在 25°C 时的读数为 10k,Beta 值为 3950(适用于 MF52 型热敏电阻)。

注意:您可以在这些温度 (5°C ~ 45°C) 之外充电,但使用比 TP4056 更复杂的芯片,该芯片可以在这些温度之外减少电荷/电压,但绝不在低于 0°C 的温度下充电。

    对于 45°C,热敏电阻的电阻约为 4k2。
    5°C 时,热敏电阻的电阻约为 26k。

警告:这只是一个计算示例。请务必使用电池制造商数据表了解电池内部的热敏电阻,以确保正确运行。


如果 Vtemp 低于电源的 45%(较热)或高于电源的 80%(较冷),则表示温度过高。对于 NTC 热敏电阻,其电阻随着温度升高而下降。

tp4056的典型电路
您可以看到 R1 被拉高,R2 被拉低,并且它们连接到 R NTC的一侧。R NTC的另一侧接地。因此 R2 与 R NTC

并联该并联电阻与 R1 构成分压器的下半部分。随着温度升高,R NTC下降,从而拉低 TEMP 输入电压。诀窍是选择电阻器,当 R NTC在特定温度下改变电阻时,该电阻器能够提供正确的输出百分比



选择正确的电阻器可能有点棘手,但请记住,随着电流的消耗,电池会升温,因此最重要的参数是高温截止。您希望在高于 45°C(低 NTC 热敏电阻值)时停止充电。

您可能会绞尽脑汁尝试找出算法一段时间,因为需要更改三个变量并且需要两个设定点才能正确。但更简单的方法是为暴力方法编写程序。

R NTC与 R2 并联。因此:

    R PARALLEL = R P = ( R NTC * R2 ) / ( R NTC + R2)

    V TEMP = Vsup * ( R PARALLEL ) / ( R PARALLEL+ R1)



    V RATIO = V TEMP / Vsup = ( R PARALLEL ) / ( R PARALLEL + R1)

在程序中使用上述等式,并以 100R 步长将电阻值从 100 步进到 250e3,并使用以下输入值可得出相当的结果:一些输出结果。这个看起来相当不错。

发现 4900 86200 比率 1 0.450 比率 2 0.803 

最接近的标准电阻器 (E48) 是:

        (E48) R2 = 86600

        (E48) R1 = 4870

这些标准值产生以下比率:

r1 4780 r2 86600 Rntc1 4.2e3 Rntc2 26e3
Ratio1 0.4559
Ratio2 0.8071

这些将在低于 5°C 和高于 45°C(大约)时停止 TP4056 充电。

Note: Remember to account for resistor tolerance and thermistor accuracy.

Program to calculate Ratios

This is a tcl program. You can download (the completely free) tcl language at Activestate.com.

# Inputs  for MF52 (B=3950)
set vratio1 0.45
set vratio2 0.80
set ratio_tol1 0.01
set ratio_tol2 0.05
set Rntc_min 4.2e3
set Rntc_max 26e3

# Stepping controls
set tpPriv(step) 100 ;# Step size
set tpPriv(startR)  100  ;#Step start
set tpPriv(maxR1R2) 250e3 ;# Step end
set tpPriv(stop) 0

console show

################################################################
proc get_ratio { Rntc r1 r2 } {
   set Rpara   [expr { ( 1.0* $Rntc * $r2 )/( $Rntc  + $r2)} ]
   set Vratio  [expr { ( 1.0* $Rpara      )/( $Rpara + $r1)} ]
   return $Vratio
}

################################################################
proc within_tol {num val tol} {
   if {$num >= ($val-$tol) && $num <= ($val+$tol)} {return 1}
   return 0
}

################################################################
proc  testTP4056Temp {Rntc1 Rntc2 Ratio1 Ratio2 tol1 tol2} {
global tpPriv
   set op {}
   set tpPriv(found) 0
   for {set r1 $tpPriv(startR)} {$r1<$tpPriv(maxR1R2)} {incr r1 $tpPriv(step)} {
   puts "$r1" ; update
       for {set r2 $tpPriv(startR)} {$r2<$tpPriv(maxR1R2)} {incr r2 $tpPriv(step)} {

          set VratioCalc1  [ get_ratio $Rntc1 $r1 $r2]

          if { [within_tol $VratioCalc1 $Ratio1 $tol1] } { ;# if this is ok check the other ratio

             set VratioCalc2 [ get_ratio $Rntc2 $r1 $r2]

             if { [within_tol $VratioCalc2 $Ratio2 $tol2] } {

                set frat1 [format "%2.3f" $VratioCalc1]
                set frat2 [format "%2.3f" $VratioCalc2]
                puts "Found $r1 $r2 Ratio1 $frat1 Ratio2 $frat2" ; update
                lappend op  "Found $r1 $r2 Ratio1 $frat1 Ratio2 $frat2\n"
                incr tpPriv(found)
             }
          }
          if {$tpPriv(stop)} {break}
       }
       if {$tpPriv(stop)} {break}
   }
   set fh [open op.txt w]
   puts $fh [ join $op ]
   close $fh
}

proc stop {} {set ::tpPriv(stop) 1}

pack [ button .b -text Stop -command stop ]

testTP4056Temp $Rntc_min $Rntc_max $vratio1 $vratio2 $ratio_tol1 $ratio_tol2

puts "\nFound: $tpPriv(found)\n\n"

Conclusions

The TP4056 is designed for charging control of a Lithium Ion/Poly battery pack that you charge at home, and take out with you, just in case you run out of charge when you are out.

Note: The DW01A only provides current limit protection. See here.

For this battery pack you attach a cable at home from the charger socket (Flat USB) to the micro USB socket of the battery pack. You then wait until it has charged and remove the charging cable. When you are out and about, you plug in the Flat USB cable to the battery pack and from there to your phone's micro-USB socket (or whatever your phone uses) to charge the phone.

Notice that you never both charge the battery pack and charge the phone from the battery pack. You always charge the phone directly from the charger socket at home and you can't charge the battery pack when you are out.

This is the exact problem the TP4056 was designed to solve and it should not both charge a battery AND power a load (phone or circuit) at the same time. That is why adding the PMOSFET, Zener, and resistor makes it safe to use.

However, I have never heard of any problems in using the breakout board as it is commonly used - as a charger and power source at the same time. But it is far safer to tack on three components as discussed in this page.

P.S. If I was designing this in a commercial setting, I would definitely add these components - Would not want to be blamed for the consequences!

If you are looking for Part 1 of this article it is here.


Comments

Have your say about what you just read! Leave me a comment in the box below.

看不到评论框?登录您的 Facebook 帐户,给予 Facebook 同意,然后返回此页面并刷新。


https://www./tp4056-page2.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多