<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

痛苦踩坑“電池電壓偵測電路”,含淚總結設計要點

工程師看海 ? 來源:電路啊 ? 作者:電路啊 ? 2024-04-07 14:31 ? 次閱讀

原文來自:電路啊

硬件,堆經驗。 做過一個電紙書閱讀器的項目,和Kindle是同類產品

產品中用到一個“電池電壓偵測電路”,當時在這個電路上踩坑了,電路本身倒是很簡單:

23bc1286-e8ae-11ee-b759-92fbcf53809c.png

和大家分享這個電路的設計要點,以及當時的設計失誤,幫助大家積累經驗,以后不要踩這種坑。 設計要點一:設定分壓電阻的大小 這種便攜式掌上閱讀器,當然是內置鋰電池的:

通過偵測電池電壓來判斷電池電量,是很常用的做法。 偵測電池電壓的電路非常簡單:

23bc1286-e8ae-11ee-b759-92fbcf53809c.png

電池電壓經過電阻R26和R62分壓之后,給到主控芯片MCUADC引腳,通過ADC來偵測電池電壓。

為什么要分壓?因為ADC引腳可直接偵測的電壓范圍沒有4.2V這么高。 在R62遠遠小于MCU的ADC引腳的輸入阻抗的情況下,可以忽略ADC引腳的輸入阻抗,這也是我們需要的。

下面忽略ADC引腳的輸入阻抗來計算兩個電阻的分壓,也就是:

偵測到的電壓 = 電池電壓 x R62 / (R26 + R62)

偵測到的電壓 = 電池電壓 x 150 / (300 + 150)

偵測到的電壓 = 電池電壓 x 1 / 3

當電池電壓為4.2V時,經過R26和R62分壓,ADC引腳會偵測到1.4V:

23cf5ed6-e8ae-11ee-b759-92fbcf53809c.png

當電池電壓為3.5V時,經過R26和R62分壓,ADC引腳會偵測到1.17V:

23e7798a-e8ae-11ee-b759-92fbcf53809c.png

所以可以根據偵測到的電壓來算出電池電壓,也就是:

電池電壓 = 偵測到的電壓 x 3 查看MCU的數據手冊,可以查到ADC引腳的輸入阻抗。 為了忽略ADC引腳輸入阻抗的影響,R62要盡可能相對地小。 但又不能太小,因為這個電路會一直消耗電池的電量,就算是關機狀態下也一直在耗電。 電阻太小會導致關機功耗變大,這里消耗9.3uA:

23f2e61c-e8ae-11ee-b759-92fbcf53809c.png

對閱讀器產品來說,可以接受了!

設計要點二:降低紋波電壓 為了精確測量電池電壓,ADC引腳處的紋波電壓要小。 這里用了電容C32來濾波:

24182800-e8ae-11ee-b759-92fbcf53809c.png

為了避免受到干擾,ADC引腳的走線要盡量短,遠離干擾源,走線包地處理。ADC引腳處的走線高亮顯示如下(這個MCU是BGA封裝):

242f3f7c-e8ae-11ee-b759-92fbcf53809c.png

這里的走線不算短,不過經測試紋波電壓小于50mV,滿足要求。

設計要點三:設定關機電壓 閱讀器配套的鋰電池,充滿電是4.2V。 在電壓降到3.5V時,經實際測試,閱讀器的系統電壓還能保持穩定,但繼續放電容易導致死機,所以設定3.5V為關機電壓。 參考一款鋰電池的放電曲線圖,以1A電流放電時,一開始放電曲線很平緩。放電到3.5V再往后一些,藍色的放電曲線呈陡涯式下降,這就是為什么電壓變得不穩定了。見下圖藍色曲線的最右側那一段:

24405cb2-e8ae-11ee-b759-92fbcf53809c.jpg

根據這款產品的實際測試情況,軟件設定為當偵測到電池電壓降到3.5V時,系統執行關機。也就是:

電池電壓為4.2V時,屏幕顯示電量為100%;

電池電壓為3.5V時,屏幕顯示電量為0%,并執行關機動作。

有些電子產品本身功耗低,也不會瞬間拉取大電流,就可以在電池電壓更低時才關機。

設計要點四:注意分壓電阻的精度 這個電路很簡單,電性能測試也沒發現什么問題。 試產了100片電路板,裝了幾十臺整機,各種測試都Pass,一切順利。 于是就批量5千臺,準備交第一批貨給客戶。 這是個定制項目,早就拿到訂單,已經臨近約定交貨的日子。 第一次正式批量,還是要謹慎。在貼片廠生產時,我全程跟線。

生產總體比較順利,我在產線上沒事的時候,無聊地檢查著電路圖:

突然心里一咯噔,發現這個電池電壓偵測電路,分壓電阻的精度竟然是5%,不是1%!

248993f0-e8ae-11ee-b759-92fbcf53809c.png

一下子就懵了!

原文來自:電路啊

電池電壓偵測的精度非常重要,要知道如果MCU把3.7V的電池電壓判斷為3.5V,雖然相差才0.2V,但是電量差得可多了,會導致提前很多就關機。 更糟糕的是,如果MCU把3.5V的電池電壓判斷為3.7V,那么系統不會在正確的電壓執行關機。繼續使用的話,在MCU將電池電壓判斷為3.5V之前,可能已經出現死機的情況。 當時馬上問產線還能不能改BOM,要更換物料,產線答復說5千片馬上就要貼完,現在下更改單來不及了。。。 悲劇了,只能考慮是否手工改板了。把板上5%精度的換成1%精度的,每塊板要改2顆電阻,一共就是一萬顆電阻。 首先問產線拿了一盤精度為5%的電阻過來,測試看偏差具體是多少。結果發現雖然標稱5%精度,實測精度并沒有超過1%。測了幾十個,基本是這種情況。 這就有點意思了,好像還可以??!換還是不換呢,陷入了糾結。 最后的決定是,保守一點,換! 于是很苦逼,產線上的熟練焊工并不多,臨時給我找來一個,我倆一起改板5千片。

一邊改板,一邊客戶那里催著交貨,真是慘痛的教訓!

最后:復盤經驗 這個事情,是設計上還不夠細心,對這個電池電壓偵測電路的認識不夠深刻,竟然沒有重點檢查電阻的精度。 5%精度的電阻相對便宜,公司的出貨量非常大,單板的成本降低一點點,多出來的利潤可以很可觀,所以大部分電阻是選用5%精度,個別有需要的地方才會用1%。 所謂成本是設計出來的。 值得一提的是,由于電阻精度對單板的成本影響較小,有些公司的硬件工程師為了方便,統一選用1%精度的,這樣就不會出錯,也減少了BOM中的物料種類。 那么問題來了,你公司的情況是這么一刀切,還是區分精度使用? 最后,有了這次手工改板5千的教訓,以后每次用電阻,我都會仔細檢查精度使用是否合理,也算是吃一塹長一智。 另外,“電池電壓偵測電路”的兩個分壓電阻,后來改為了使用0.1%精度,會更靠譜。 本次經驗分享就到這里,感謝閱讀! 原文來自:電路啊

---The end---

限時免費掃碼進群,交流更多行業技術

249c8f1e-e8ae-11ee-b759-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 電路設計
    +關注

    關注

    6571

    文章

    2318

    瀏覽量

    195825
  • 電池電壓
    +關注

    關注

    0

    文章

    182

    瀏覽量

    11430
  • 監測電路
    +關注

    關注

    0

    文章

    15

    瀏覽量

    11784
收藏 人收藏

    評論

    相關推薦

    使用STM32采集電池電壓過的那些

    本文來解析一個盆友在使用STM32采集電池電壓過的。以STM32F4 的ADC屬于逐次逼近SAR 型ADC為例進行分析,參考STM32F405xxDatasheet,對于如何編寫A
    發表于 03-01 07:39

    開發STM32 USB HID過的

    記錄一下 開發STM32 USB HID過的一、前言二、代碼配置一、前言MCU: STM32F103C8T6CubeMX: STM32CubeMX 5.3.0二、代碼配置引腳配置時鐘樹配置我
    發表于 08-24 07:15

    使用樹莓派搭建stm32開發環境過的以及碰到的問題

    使用樹莓派搭建stm32開發環境了很多,下面主要是記錄一下過的,以及碰到的問題。##開發方式的選擇1.使用Eclipse+GDB+OpenOCD+STlink這種方式我發現ec
    發表于 08-24 07:47

    有沒有關于STM32入門經驗分享

    有沒有關于STM32入門經驗分享
    發表于 10-13 06:52

    NodeMCU開發板經歷分享

    寫在前面今天入手了一個NodeMCU的板子,準備學習一下物聯網相關的知識。不過由于博主學藝不精,在第一步燒寫固件上就了,所以就想著把自己的經歷寫出來分享給大家,希望能有一些幫助
    發表于 11-01 07:55

    Linux學習過程過的與如何解決

    Linux記錄記錄Linux學習過程過的與如何解決1解決方法:F10進入BIOS使能
    發表于 11-04 08:44

    電源設計容易和線性穩壓選型過程

    前文提到了一些線性穩壓的主要特點,本文作者將結合NXP智能車大賽實際案例,說一下電源設計容易和線性穩壓選型過程。文章目錄主要參數輸入電壓輸出電壓主要參數在為實際應用
    發表于 11-12 07:54

    移植debian系統過的

    基本的linux系統,板子的交叉編譯器是arm-linux-gnueabihf-gcc,這給我帶來了不少的麻煩,以至于想重新移植一下debian系統。ok,轉入正題,說說這兩天我吧。首先...
    發表于 12-14 08:42

    STM32編程常有哪些?

    STM32編程常有哪些?
    發表于 12-17 06:15

    使用MDK5時出現過的一些error過的分享

    使用MDK5時出現過的一些error過的分享
    發表于 12-17 07:49

    記錄寫SAM4S的bootloader所

    記錄寫SAM4S的bootloader所
    發表于 01-24 07:16

    總結一下GD32F13x移植過的

    奇奇怪怪的問題,下面總結一下過的。第一次移植GD時,沒有完全移植,只是部分外設移植,導致配置混亂。STM和GD在寄存器命名上有區別,部分寄存器GD專用,導致配置困難,所以,最后進行了完全移植。GD和ST的一些差異執行速度差異
    發表于 02-11 07:54

    關于RK1808板子調試過程過的記錄

    關于RK1808板子調試過程過的記錄
    發表于 02-16 06:38

    總結電池電壓偵測電路設計要點 避坑指南

    做硬件,堆經驗。 做過一個電紙書閱讀器的項目,和Kindle是同類產品: 產品中用到一個“電池電壓偵測電路”,當時在這個電路上踩坑了,
    的頭像 發表于 08-10 10:42 ?3523次閱讀

    大型翻車現場,痛苦踩坑“電池電壓偵測電路”,含淚總結設計要點

    做硬件,堆經驗。做過一個電紙書閱讀器的項目,和Kindle是同類產品:產品中用到一個“電池電壓偵測電路”,當時在這個電路上踩坑了,
    發表于 12-09 10:06 ?1次下載
    大型翻車現場,<b class='flag-5'>痛苦</b>踩坑“<b class='flag-5'>電池</b><b class='flag-5'>電壓</b><b class='flag-5'>偵測</b><b class='flag-5'>電路</b>”,<b class='flag-5'>含淚</b><b class='flag-5'>總結</b>設計<b class='flag-5'>要點</b>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>