找回密码
 注册
关于网站域名变更的通知
查看: 2352|回复: 10
打印 上一主题 下一主题

求移动电源电池检测ADC算法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2014-3-5 16:09 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
如题,小弟在做一款移动电源,用PWM控制充电的,发现打开PWM以后,1024阶ADC测量电池电压非常不准,有时跳跃幅度可达上百阶,求算法滤掉这些跳得太离谱的值!
' z" Z7 Z) \. @  c$ F) m' p; J
0 j- i" A2 D3 u1 o; L- E2 W% D* u急求大神!

该用户从未签到

推荐
发表于 2014-3-6 08:44 | 只看该作者
本帖最后由 超級狗 于 2014-3-6 12:20 编辑
9 R$ |# T: ?: q" t4 z$ h' G3 W; j7 o7 E0 C2 S
您這個問題應該是取樣時,有時取樣到 PWM 正在充電的狀況,有時取樣在 PWM 未充電的狀況造成的。
3 e' ^7 f/ x6 P/ t# i! V3 N& [
. y( v3 }0 L0 g" k' v軟硬件需要和 PWM 做同步(Synchronization)0 ^8 f1 p! {7 E% r( d6 ?: x
9 I) X$ P! C$ c5 B
  • MCU 內部 PWM 如果能觸發中斷(Interrupt),在 PWM 關掉充電線路時再去偵測電池電壓。
  • PWM 不能從 MCU 內部觸發中斷(Interrupt),但外部有能觸發中斷(Interrupt)的管腳,把 PWM 訊號拉回該管腳觸發中斷(Interrupt)也行。
  • 上述兩者都沒有的話……………假使 MCU 速度比 PWM 快很多的話,將 PWM 訊號拉回一個輸入(Input)管腳,然後用詢問(Polling)的方式應該也可以。
  • 如果 PWM 是 Timer + GPIO 產生的,那就更簡單了。你知道什麼時候 PWM High/Low,那樣軟件會更容易許多。
  • MOS 管開關需要時間,關掉充電之後電池電壓也會緩慢下降,所以盡量想辦法取樣在中間或後段,取樣值會更穩定且精準。意思就是說,中斷(Interrupt)觸發後延遲(Delay)一段時間再取樣,或是 Timer + GPIO 方式在打開充電前做取樣。
    + H1 {' ]" V9 Q$ {7 i* c7 c7 ]

$ Z1 N+ z$ V4 E) S4 f9 C% y
" f' ~; ~$ S4 t1 I0 B4 f; [其實咱家是做硬件的,回答這問題已經有點拚了。
- R8 k. q4 |. p" x/ \7 l: b4 R% x( |. M9 j. A
在其他專家面前班門弄斧,見笑了!+ Q" m1 `" `6 W/ i! c

2 \( s5 O/ Q* b: o4 K6 [. W

点评

支持!: 5.0
支持!: 5
狗斑竹太谦虚了,明摆着专家级别的回答……  发表于 2014-3-6 11:21

该用户从未签到

3#
发表于 2014-3-6 11:22 | 只看该作者
不知道电路图是什么样子的,LZ方便的话,贴图出来咯。2 c( f4 E; h" M: R# t* n' A  X# {

该用户从未签到

4#
 楼主| 发表于 2014-3-6 13:47 | 只看该作者
超級狗 发表于 2014-3-6 08:44
$ k3 P* F0 f1 O您這個問題應該是取樣時,有時取樣到 PWM 正在充電的狀況,有時取樣在 PWM 未充電的狀況造成的。9 |! R) D' N7 a) u  u* h. d( Y

. ?+ t. L8 a" H軟硬件 ...
. T/ W1 ]: E9 `
PWM频率目前取10KHZ,ADC采样需要51个系统周期,加上分频,滤波采样,完成一次检测需1mS左右。4 `! @0 c3 w5 `# F

# H6 z+ g5 C! @0 D: m这样的话,不大可能在PWM的LOW间隙进行取样,关闭PWM采样的话,加上电池缓慢恢复时间,关闭时间可能要达到秒级甚至几秒。
" m7 J, N7 e) G4 z. Y% ?2 V" \5 }' G! V1 G) x
以上就会充一段时间电,关闭几秒,再充一段时间再关闭,如此循环。
, i7 ^! [( m+ X9 _: |
  |& B7 b9 _6 I5 ~! ~7 d我不知道移动电源有没有这样做的先例,也不是很清楚这样做是否合适,不知狗版有什么看法?

该用户从未签到

5#
发表于 2014-3-6 15:10 | 只看该作者
嗯~還是木木考慮較周詳,就知道這系統設計有鬼。
7 Q# U2 }. w2 @3 q. Y% w5 p3 H2 A  V3 R4 A4 u3 N7 _
顯然樓主用了一顆很便宜、很便宜的 MCU,那就充一段、停一段吧~
% W1 F4 H; D, J$ y" i9 q7 C% \6 R) l" B5 }* \8 B# u# W# {
軟件上是還可以做點優化,電平離 4.2V 還遠的時候久久才看一次,快到 4.2V 才密集點去偵測。$ _# k5 L  v& j1 G  W  i- X: b
! B  K  K- q' q
是看過有人充電控制這樣做。1 e7 C' `% q+ ~: o
. l, T. a$ D2 W; B, i
1 ?4 K# g7 _$ @2 t* r; Z

" i! ]/ r" L; @, `+ A, `4 X8 i

该用户从未签到

6#
 楼主| 发表于 2014-3-6 15:37 | 只看该作者
超級狗 发表于 2014-3-6 15:10
- V; A* f, W! z7 B% |嗯~還是木木考慮較周詳,就知道這系統設計有鬼。
2 V9 A1 w1 J9 I" T8 C% Z
+ d0 ^  t& r/ M5 U) k顯然樓主用了一顆很便宜、很便宜的 MCU,那就充一段、 ...

' q0 X* |! L- }* g比较贵的MCU怎么做的,和便宜的MCU差别在哪里啊?

该用户从未签到

7#
发表于 2014-3-6 16:49 | 只看该作者
也沒什麼不對啦~這東西也許便宜就是王道。! v. V9 F! z% ^" e& V
+ O. \" s5 p( r, ?, |
我只是看 MCU 的執行週期和 ADC 轉換時間,和我以前用的 MCU 和 ADC 差很多。覺得它很慢,所以推測一定很便宜。
2 x: T" y  C  {* {; ]' h6 `9 r2 T5 O1 A0 n4 s/ s; {
找到一份文檔看起來應該對您幫助很大,根據他的說法,每一秒停個 2% 的時間做電壓偵測就可以。# F7 v2 ]3 M1 [' _( C! V# e

% J! s! q' b: K. e3 B. [6 p* B& UA Review of Battery Charging Algorithms and Methods
% o7 E. y- Z; I: E" E
- r! P5 k9 U2 s很珍貴且具實用價值的一份文檔!7 q$ i0 ^2 r) e- @+ [" e
6 L, O  a& B: d% X6 K  B

Current Interruption.jpg (166.93 KB, 下载次数: 1)

Current Interruption.jpg

batchrg.pdf

70.16 KB, 下载次数: 61, 下载积分: 威望 -5

该用户从未签到

8#
 楼主| 发表于 2014-3-6 17:06 | 只看该作者
超級狗 发表于 2014-3-6 16:49
5 i  _3 s( z3 S- Q- G9 h9 f也沒什麼不對啦~這東西也許便宜就是王道。' t# ?  n& P* A. u3 \" b+ T
" f+ ^5 z3 }2 k# r
我只是看 MCU 的執行週期和 ADC 轉換時間,和我以前用的 MCU ...

8 K6 g0 q) J0 _8 O; |8 d: k$ h, z狗版,单个ADC周期最快是12.5us,这速度算不算快的?但是听说太快的话,ADC检测会不稳定,,所以分频了就比较慢,不知道这说法是否正确呢?
5 b  a* N, C) J+ @* l1 D3 c; y. V$ y, `2 P; O
另外非常感谢狗版主的资料!感谢!

该用户从未签到

9#
发表于 2014-3-6 17:38 | 只看该作者
狗版,单个ADC周期最快是12.5us,这速度算不算快的?
1 K7 w+ P0 u$ a. `. ~! W
那就是小弟誤會了,我是看到您講 ADC 採樣轉換一次需要 1ms。不過 ADC 很多種設計方式,速度和價格上有差異,以前用踢哀(TI)ADS8505,採樣速度是 250KHz,相對來說 12.5us = 80KHz 也不算太快啦!
1 f! g, }' U, D! g# G
) f# T& J$ N3 y
但是听说太快的话,ADC 检测会不稳定。
, {: W! |' P7 G2 |! j
這樣說也是沒錯啦!所有的東西都不是越快越好,夠用最恰當!
7 C; O5 g0 @) r4 H
; O" @0 n# p- ?/ @# p0 a/ r+ d

该用户从未签到

10#
发表于 2014-9-28 14:28 | 只看该作者
充一会,停一会儿,我们就是这样做的,这种在别的机子里面出现过,可以的,也费不了多长时间,
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-26 20:44 , Processed in 0.093750 second(s), 32 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表