電池供電的電子產品不計其數,具有便攜性好的優點,可以隨時隨地使用。但是有一個讓用戶非常焦慮的事情是電池續航問題。我們在使用電池供電的產品時,會關心當前電池還有多少電量、還能用多久。
我最近買了一個藍牙耳機,選擇它的一個重要原因就是它可以直觀的顯示電池電量,
如果本身沒有顯示,只能在電池電量低時收到語音提示,或者在電腦、手機上查看電量信息(藍牙協議里有電池電量的服務,會將電量信息發給主設備),不如直接顯示方便。
本文探討和電池電量相關的2個技術問題:電量采集和電量顯示。
一、電量采集
電池電量采集方法主要有兩種:
1) 電壓采集法:這種方法是基于電池電壓與電量的關系來進行采集的。電池電壓隨著電量消耗而逐漸降低,因此可以通過采集電池電壓來估算電量。電壓采集法具有成本低、實現簡單的優點,但其精度較差,尤其是在電池電量較低時。
電池的種類不同,電壓和電量的關系也不同。
圖片來源:https://www.powertechsystems.eu/home/tech-corner/lithium-ion-state-of-charge-soc-measurement/
上圖可以看出,鉛酸電池具有相對線性的曲線,可以很好地估計充電狀態:然而,鋰離子電池的放電曲線要平坦得多,這意味著在很寬的工作范圍內,電池端子的電壓變化非常小。
2)庫侖計法:這種方法是基于電池電流累積來進行采集的。庫侖計是一種電路,它能夠累積通過其的電流。通過記錄電流累積值,可以計算出電池消耗的電量。庫侖計法具有精度高、可靠性好的優點,但其成本也較高,實現也更為復雜。
對于普通應用來說,使用第一種電壓采集法即可,以4.2V鋰電池為例,電池容量和電壓關系大概如下,可根據電壓估算出電池容量。
圖片來源:https://siliconlightworks.com/li-ion-voltage
二、電量顯示
假設電池電量使用如下圖標進行顯示,滿格電量為4格
假設我們可以按照如下電壓進行設置:
4.20V~3.90V滿格
3.90V~3.80V三格
3.80V~3.72V兩格
3.72V~3.65V一格
3.65以下,低電壓告警。
代碼里你可能會按照如下方式實現:
if(Vol >= 3.9) Disp(4); else if(Vol >= 3.8) Disp(3); else if(Vol >= 3.72) Disp(2); else if(Vol >= 3.65) Disp(1); else Disp(0);
這么寫實際會有問題,會出現在臨界值時出現電量格數來回跳變的問題。比如ADC測得電壓時3.90V時顯示滿格,當測到3.89V時會就顯示3格,下一時刻由于ADC采集誤差或者本身電池電壓波動就會測到3.90V,這時就又顯示了滿格,之后會再次出現3格。這樣會讓用戶覺得紊亂,實際中不能這么用,需要改進。
改進的方法是加入回差控制:
if(Vol >= 3.9) Disp(4); else if(vbat >= 3.8+0.02 && vbat < 3.9-0.02) Disp(3); else if(vbat >= 3.72+0.02 && vbat < 3.8) Disp(2); else if(vbat >= 3.65+0.02 && vbat < 3.72) Disp(1); else if(Vol < 3.65) Disp(0); else ; // 不處理這樣就可以解決這個問題,原理也很簡單,就是在跳變的區間內不做處理即可。
審核編輯:湯梓紅
-
電池電量
+關注
關注
1文章
45瀏覽量
12604 -
電池供電
+關注
關注
0文章
255瀏覽量
22267 -
電量采集
+關注
關注
0文章
23瀏覽量
7572
原文標題:電池供電產品中電量采集及顯示問題
文章出處:【微信號:TopSemic,微信公眾號:TopSemic嵌入式】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
單節和多節電池電量計的區別
電量計是怎么測量電池電量呢?
智能手環的電池電量的監測方案是什么?
如何控制電池電量不足的狀況
電池備份系統的電池電量監測
![<b class='flag-5'>電池</b>備份系統的<b class='flag-5'>電池電量</b>監測](https://file1.elecfans.com//web2/M00/A5/F3/wKgZomUMOvGAa_lqAAANotJKoXk210.jpg)
MCP3421電池電量計演示板的詳細中文資料概述
![MCP3421<b class='flag-5'>電池電量</b>計演示板的詳細中文資料概述](https://file.elecfans.com/web1/M00/53/38/o4YBAFsg0nyAOOFNAALaP7D-SAM631.png)
評論