電池容量的真實測量對于許多情況都是必不可少的。容量測量設備也可以解決發現假電池的問題。如今,假冒的鋰電池和鎳氫電池隨處可見,無法滿足其宣傳的容量。有時很難區分真假電池。這個問題存在于備用電池市場,例如手機電池。此外,在許多情況下,必須確定二手電池(例如筆記本電腦電池)的容量。在本文中,我們將學習使用著名的 Arduino-Nano 板構建電池容量測量電路。我為浸入式組件設計了 PCB 板。因此,即使是初學者也可以焊接和使用該設備。
特征:
識別假鋰離子/鋰聚合物/鎳鎘/鎳氫電池
可調恒流負載(也可由用戶修改)
能夠測量幾乎任何類型電池的容量(低于 5V)
易于焊接、構建和使用,即使對于初學者也是如此(所有組件均為 Dip)
LCD 用戶界面
規格:
板電源:7V 至 9V(最大值)
電池輸入:0-5V(max) – 無反極性
恒流負載:37mA 至 540mA(max) – 16 步 – 可由用戶修改
圖 1 顯示了該裝置的示意圖。電路的核心是一塊 Arduino-Nano 板。
圖1:電池容量測量裝置示意圖
IC1 是一個 LM358 [1] 芯片,包含兩個運算放大器。R5 和 C7 構成一個低通濾波器,將 PWM 脈沖轉換為直流電壓。PWM 的頻率約為 500Hz。我使用了 Silent SDS1104X-E 示波器來檢查 PWM 和濾波器的行為。我將 CH1 連接到 PWM 輸出 (Arduino-D10),將 CH2 連接到濾波器的輸出(圖 2)。您甚至可以通過波特圖“在實踐中”檢查濾波器的頻率響應及其截止頻率,這是 SDS1104X-E 的一個很好的引入功能。
圖2:PWM信號(CH1:2V/div)和經過R5-C7 RC濾波器后的結果(CH2:50mV/div)
R5 是一個 1MΩ 電阻器,它極大地限制了電流,但是,濾波器的輸出通過電壓跟隨器配置中的運算放大器(IC1 的第二個運算放大器)。IC1、R7和Q2的第一個運放構成恒流負載電路。至此,我們已經搭建了一個PWM可控的恒流負載。
2*16 LCD用作用戶界面,使控制/調整變得容易。R4 電位器設置 LCD 對比度。R6 限制背光電流。P2 是一個 2 針 Molex 連接器,用于連接 5V 蜂鳴器。R1 和 R2 是輕觸開關的上拉電阻。C3 和 C4 用于消除按鈕的抖動。C1 和 C1 用于對電路電源電壓進行濾波。C5 和 C6 用于濾除恒流負載電路噪聲,以免降低 ADC 轉換性能。R7 充當 Q2 MOSFET 的負載。
什么是恒流直流負載?
恒流負載是一種始終吸收恒定電流的電路,即使施加的輸入電壓發生變化也是如此。例如,如果我們將恒流負載連接到電源并將電流設置為 250mA,即使輸入電壓為 5V 或 12V 或其他任何值,電流消耗也不會改變。恒流負載電路的這一特性使我們能夠構建電池容量測量裝置。如果我們使用一個簡單的電阻作為負載來測量電池容量,隨著電池電壓的降低,電流也會降低,這使得計算變得復雜和不準確。
PCB板
圖 3 顯示了電路的設計 PCB 布局。板的兩側用于安裝組件。
當我打算設計原理圖/PCB 時,我總是使用 SamacSys 組件庫,因為這些庫遵循工業 IPC 標準并且都是免費的。我將這些庫用于 IC1 [2]、Q2 [3],甚至我還可以找到 Arduino-Nano (AR1) [4] 庫,它節省了很多設計時間。我使用 Altium Designer CAD 軟件,所以我使用 Altium 插件來安裝組件庫 [5]。圖 4 顯示了選定的組件。
圖3:電池容量測量電路PCB板
當我打算設計原理圖/PCB 時,我總是使用 SamacSys 組件庫,因為這些庫遵循工業 IPC 標準并且都是免費的。我將這些庫用于 IC1 [2]、Q2 [3],甚至我還可以找到 Arduino-Nano (AR1) [4] 庫,它節省了很多設計時間。我使用 Altium Designer CAD 軟件,所以我使用 Altium 插件來安裝組件庫 [5]。圖 4 顯示了選定的組件。
圖 4:從 SamacSys Altium 插件安裝的組件
PCB 板比 2*16 LCD 略大,以適應三個觸覺按鈕。圖 5、6 和 7 顯示了電路板的 3D 視圖。
圖 5:組裝好的 PCB 板的 3D 視圖(頂部)
圖 6:組裝好的 PCB 板的 3D 視圖(側面)
圖7:組裝的PCB板的三維視圖(底部)
組裝和測試
我用一塊半自制的PCB板構建了一個快速原型并測試了電路。圖8顯示了電路板的圖片。你不需要跟著我,只要把PCB訂給專業的PCB制造公司,然后制造設備就行了。您應該為R4使用立式電位計類型,它允許您從板的側面調整LCD對比度。
在焊接組件并準備好測試條件后,我們準備測試電路。別忘了在MOSFET上安裝一個大散熱器(Q2)
我選擇R7作為3歐姆電阻。這允許我們產生高達750mA的恒定電流,但在代碼中,我將最大電流設置為500mA左右,這足以滿足我們的目的。降低電阻值(例如1.5歐姆)可以產生更高的電流,但是,您必須使用更強大的電阻并修改Arduino代碼。圖9顯示了電路板及其外部接線。
圖9:電池容量測量裝置的接線
為電源輸入準備7V到9V左右的電壓。我使用了Arduino板的調節器來制作+5V軌道。因此,切勿向電源輸入施加高于9V的電壓,否則可能會損壞調節器芯片。
電路板將通電,您應該在 LCD 上看到一個文本。如果您使用藍色背光 2*16 LCD,電路將消耗大約 75mA。
大約 3 秒后,文本將被清除,在下一個屏幕中,您可以通過上/下按鈕調整恒流值。
在將電池連接到設備并測量其容量之前,您可以使用電源檢查電路。為此,您應該將 P3 連接器連接到電源。
重要提示:切勿向電池輸入施加任何高于 5V 或反極性的電壓,否則您將永久損壞 Arduino 的數字轉換器引腳。
設置您想要的電流限制(例如 100mA)并使用您的電源電壓(保持在 5V 以下)。正如您在任何輸入電壓下看到的那樣,電流保持不變。這正是我們想要的!(圖 12)。
圖 12:即使在電壓變化之前電流也保持恒定(用 4.3V 和 2.4V 輸入測試)
第三個按鈕是復位。這意味著它只是重新啟動電路板。當您計劃重新啟動程序以測試不同的黃油時,它很有用。
無論如何,現在您確信您的設備可以完美運行。您可以斷開電源并將電池連接到電池輸入并設置所需的電流限制。
為了開始我自己的測試,我選擇了一個全新的 8,800mA 額定鋰離子電池。這看起來是一個驚人的速度,不是嗎?!但我無法以某種方式相信這一點:-),所以讓我們測試一下。
在將鋰電池連接到板子之前,我們必須對其進行充電,所以請準備一個固定的4.20V(500mA CC限制或更低)的電源(例如,使用上一篇文章中的可變開關電源)并充電電池直到電流達到低水平。不要用大電流給未知電池充電,因為我們不確定它的真實容量!高充電電流可能會導致電池爆炸!當心。結果,我遵循了這個程序,我們的 8,800mA 電池已準備好進行容量測量。
我使用電池座將電池連接到電路板。確保使用引入低電阻的粗而短的電線,因為電線中的功耗會導致電壓下降和不準確。
讓我們將電流設置為 500mA 并長按“UP”按鈕。然后您應該會聽到一聲嗶聲,程序開始(圖 14)。我已將截止電壓(低電池閾值)設置為 3.2V。如果您愿意,可以在代碼中修改此閾值。
圖 14:電池容量計算程序
基本上,我們應該計算電池在其電壓達到低電平閾值之前的“壽命”。圖 15 顯示了設備從電池 (3.2V) 斷開直流負載并進行計算的時間。該設備還會發出兩聲長嗶聲以指示程序結束。正如您在 LCD 屏幕上看到的,真正的電池容量為 1,190mAh,與聲稱的容量相去甚遠!您可以按照相同的程序測試任何電池(低于 5V)。
圖 15:8.800mA 額定鋰離子電池的真實計算容量
圖 16 顯示了該電路的材料清單。
圖 16:物料清單
審核編輯:郭婷
-
pcb
+關注
關注
4292文章
22769瀏覽量
393179 -
Arduino
+關注
關注
187文章
6453瀏覽量
185915 -
電池
+關注
關注
84文章
10184瀏覽量
127017
發布評論請先 登錄
相關推薦
評論