TP4056 实现可编程锂电充电器+电量计
本文作者:t3486784401
鏈接:https://www.mydigit.cn/forum.php?mod=viewthread&tid=250916&extra=
手頭有些容量非常小的軟包鋰電,直接使用市面上的大功率充電板(500mA/1A)倍率太大,容易損壞電池。
索性拿 TP5046 搭一套充電系統(tǒng),配合 Arduino 實(shí)現(xiàn)電壓、電流采樣,實(shí)現(xiàn)電池容量檢測(cè)。
【原理】
TP4056 是 1A 鋰電池線(xiàn)性充電器,適合 3.7v 三元鋰電池充電。
芯片除了自帶指示燈驅(qū)動(dòng)(充電/滿(mǎn)電),還支持單電阻 Rprog 設(shè)定、檢測(cè)電流:
圖中 Rprog 與恒流電流的關(guān)系:
Icc= 1v/Rprog *1200
實(shí)時(shí)充電電流與 Vprog 的關(guān)系:
Ibat= Vprog/Rprog *1200
恒流階段 Vprog=1.0v,充滿(mǎn)以后 Vprog<0.1v.?
使用 ADC 同步采樣電池電壓 Vbat、參考電壓 Vprog 即可獲得電壓、電流參數(shù),
電流參數(shù)對(duì)時(shí)間進(jìn)行積分,即可獲得電池容量參數(shù)。
【硬件】
硬件的主要功能包括:電壓電流濾波采樣、編程電阻 Rprog 的動(dòng)態(tài)切換。
Rprog 采用 8-4-2-1 比例方式由 Arduino 切換,調(diào)整 IO 通斷即可設(shè)定 60mA-950mA 充電電流,步進(jìn)值 60mA.
硬件做成了 Arduino 擴(kuò)展板的形式,由于 TP4056 需要有些散熱設(shè)計(jì),因而再搭棚一層 TP4056 最小系統(tǒng)。
Vprog 由 ADC 直接采樣,Vbat 經(jīng)過(guò) 47k-10k 分壓網(wǎng)絡(luò)后采樣,最后焊接擴(kuò)展板:
安裝上 Arduino UNO 的組合樣子:
【軟件】
由于沒(méi)有復(fù)雜的控制邏輯,整套代碼使用 ICCAVR 編寫(xiě):
運(yùn)行過(guò)程中使用串口助手接收電壓、電流數(shù)據(jù),供后期計(jì)算使用:
附上運(yùn)行固件及源碼,供參考或直接燒錄:公眾號(hào)后臺(tái)回復(fù)關(guān)鍵詞:008,或者?可編程充電。
【效果】
堆疊板上保留了 TP4056 經(jīng)典的紅/綠充電狀態(tài)指示,效果如下:
串口收到的數(shù)據(jù)統(tǒng)一替換下格式粘貼進(jìn) EXCEL,順手處理電壓電流換算:
最終 EXCEL 繪制電池充電電壓(藍(lán))、電流(紅)曲線(xiàn),含時(shí)間標(biāo)簽:
電流曲線(xiàn)(紅)下方的面積即為電池容量,實(shí)際用 EXCEL 做個(gè)累加直接就有了。
我這個(gè)二手軟包電池測(cè)得大約 160mAh 的容量。
從電流曲線(xiàn)上可以明顯看出 TP4056 工作流程:恒流到4.2v,再恒壓到1/10電流,最終停止充電。
電壓曲線(xiàn)則可以看出 3.9-4.2v 區(qū)間段容量較大,恒流持續(xù)時(shí)間較長(zhǎng);而 <3.7v 區(qū)間幾乎沒(méi)什么容量。
以上,使用 TP4056 搭接了一套可編程鋰電充電系統(tǒng),支持電壓電流采樣,可用于估算電池容量。
恒流充電電流 60mA-950mA 可調(diào),可以適配各路中小容量的三元鋰電池充電。
最后祝大家 DIY 愉快!
推薦閱讀:
專(zhuān)輯|Linux文章匯總
專(zhuān)輯|程序人生
專(zhuān)輯|C語(yǔ)言
我的知識(shí)小密圈
關(guān)注公眾號(hào),后臺(tái)回復(fù)「1024」獲取學(xué)習(xí)資料網(wǎng)盤(pán)鏈接。
歡迎點(diǎn)贊,關(guān)注,轉(zhuǎn)發(fā),在看,您的每一次鼓勵(lì),我都將銘記于心~
總結(jié)
以上是生活随笔為你收集整理的TP4056 实现可编程锂电充电器+电量计的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何在酷狗上下载付费歌曲
- 下一篇: cad管线交叉怎么画_高效设计!多种方式