找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1635|回复: 10
打印 上一主题 下一主题

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

[复制链接]

4

主题

16

帖子

136

积分

二级会员(20)

Rank: 2Rank: 2

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

EDA365欢迎您!

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

x
如题,小弟在做一款移动电源,用PWM控制充电的,发现打开PWM以后,1024阶ADC测量电池电压非常不准,有时跳跃幅度可达上百阶,求算法滤掉这些跳得太离谱的值!' S5 j: U" ^" E: m+ h- {
! O7 V3 Q- `. k) [$ r+ `
急求大神!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

33

主题

4949

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
12225
推荐
发表于 2014-3-6 08:44 | 只看该作者
本帖最后由 超級狗 于 2014-3-6 12:20 编辑 : A+ `3 J0 Z' W# @
" D# y  K+ [- k( d
您這個問題應該是取樣時,有時取樣到 PWM 正在充電的狀況,有時取樣在 PWM 未充電的狀況造成的。: A% P, d  Y5 X

6 A1 d5 a9 w# e# R' a& I- p軟硬件需要和 PWM 做同步(Synchronization)/ X6 c$ C: `. c, g4 r- Q* T
/ I+ M; K* h& m3 P8 e( K, p
  • 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 方式在打開充電前做取樣。
    & Q( V) ?  U% h

) h0 Y' U: r* z
6 u0 [8 G4 k: F其實咱家是做硬件的,回答這問題已經有點拚了。" Z% g$ N- ]& V& G, R1 A
! H3 [7 r, p% w. B" a
在其他專家面前班門弄斧,見笑了!9 |% n( n) `1 ?* b  |' X

+ |0 g) L& M5 l* {/ Z$ F

点评

支持!: 5.0
支持!: 5
狗斑竹太谦虚了,明摆着专家级别的回答……  发表于 2014-3-6 11:21
哈士奇是一種連主人都咬的爛狗!

23

主题

884

帖子

3341

积分

EDA365版主(50)

Rank: 5

积分
3341

杰出贡献奖

3#
发表于 2014-3-6 11:22 | 只看该作者
不知道电路图是什么样子的,LZ方便的话,贴图出来咯。9 K8 T# e, c' j& `, |
不要痴迷于阅读成功人士的传记,从中寻找经验,这些书大部分经过了精致的包装,没有人会随随便便成功。更不要痴迷哥,哥还没成功!

4

主题

16

帖子

136

积分

二级会员(20)

Rank: 2Rank: 2

积分
136
4#
 楼主| 发表于 2014-3-6 13:47 | 只看该作者
超級狗 发表于 2014-3-6 08:44
+ I4 g& S( s+ e2 ^! \% N# w您這個問題應該是取樣時,有時取樣到 PWM 正在充電的狀況,有時取樣在 PWM 未充電的狀況造成的。
& u, G& s% |* b5 [* ]3 M/ V/ H9 q0 U& A* ^6 x, [* Z9 K3 U+ u
軟硬件 ...
+ A( d7 S- M* c9 j- @
PWM频率目前取10KHZ,ADC采样需要51个系统周期,加上分频,滤波采样,完成一次检测需1mS左右。
5 t3 h7 v' ]% m9 T8 V, u2 n2 p) P
: X& S/ L, R+ Q7 [+ k7 B4 w# O这样的话,不大可能在PWM的LOW间隙进行取样,关闭PWM采样的话,加上电池缓慢恢复时间,关闭时间可能要达到秒级甚至几秒。; W2 v: d( J# k: K# @) n

" l* I9 U* R5 u: B# I# p以上就会充一段时间电,关闭几秒,再充一段时间再关闭,如此循环。/ |$ Q. d4 ~. P% f5 Q4 S

1 j+ ]5 r' R, o9 D( R! J) {$ D我不知道移动电源有没有这样做的先例,也不是很清楚这样做是否合适,不知狗版有什么看法?

33

主题

4949

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
12225
5#
发表于 2014-3-6 15:10 | 只看该作者
嗯~還是木木考慮較周詳,就知道這系統設計有鬼。8 w2 _% i2 q6 }) [# v; R4 m

2 C' C) e0 e$ o3 q7 Y7 A* m& N# u顯然樓主用了一顆很便宜、很便宜的 MCU,那就充一段、停一段吧~
% x( b% l% B6 E
, v- y' W7 L7 m1 z" e+ V1 J/ U' y軟件上是還可以做點優化,電平離 4.2V 還遠的時候久久才看一次,快到 4.2V 才密集點去偵測。0 X: `8 T: D3 B) j# B& B/ W/ o
9 s3 L# F% [8 Z- [
是看過有人充電控制這樣做。
+ t6 b- R, }3 O- ^- L
9 i7 N5 W% M1 n: \3 C! T) w$ Y
5 p/ _2 v. u) |9 x
哈士奇是一種連主人都咬的爛狗!

4

主题

16

帖子

136

积分

二级会员(20)

Rank: 2Rank: 2

积分
136
6#
 楼主| 发表于 2014-3-6 15:37 | 只看该作者
超級狗 发表于 2014-3-6 15:104 Y( Z8 J, G* T; L$ S1 ~  L" x5 l+ T
嗯~還是木木考慮較周詳,就知道這系統設計有鬼。
2 [! W. s$ Q1 g  s# h0 D
* H/ |/ o- Y' B! F! [顯然樓主用了一顆很便宜、很便宜的 MCU,那就充一段、 ...

6 |4 i1 q) `3 A2 R比较贵的MCU怎么做的,和便宜的MCU差别在哪里啊?

33

主题

4949

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
12225
7#
发表于 2014-3-6 16:49 | 只看该作者
也沒什麼不對啦~這東西也許便宜就是王道。
: T: b( J( E/ C3 x% y1 i! E
) Q1 Z/ L( _5 T0 k我只是看 MCU 的執行週期和 ADC 轉換時間,和我以前用的 MCU 和 ADC 差很多。覺得它很慢,所以推測一定很便宜。
) c$ o. Y/ X, x0 g4 P  \
+ a2 |) a) p# V3 [找到一份文檔看起來應該對您幫助很大,根據他的說法,每一秒停個 2% 的時間做電壓偵測就可以。
3 D) f+ ]: k  A; W: P3 \9 @" S% v! E$ {5 {, P- @
A Review of Battery Charging Algorithms and Methods
$ t! N% ~3 j! P. _
. V" d& k9 c) j: r! E  M" |5 Z很珍貴且具實用價值的一份文檔!
" |1 q! A7 @1 q; N5 W* r( P) i5 C! P& Q! \8 j0 E5 c

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

Current Interruption.jpg

batchrg.pdf

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

哈士奇是一種連主人都咬的爛狗!

4

主题

16

帖子

136

积分

二级会员(20)

Rank: 2Rank: 2

积分
136
8#
 楼主| 发表于 2014-3-6 17:06 | 只看该作者
超級狗 发表于 2014-3-6 16:49" j1 f" v6 J% d
也沒什麼不對啦~這東西也許便宜就是王道。' Z+ G- e" Q, f% G+ z0 [

9 Y- z8 Y4 S( g! t* |( Z. Z我只是看 MCU 的執行週期和 ADC 轉換時間,和我以前用的 MCU ...

0 V0 [  Y2 _2 Q  _" D' G) z狗版,单个ADC周期最快是12.5us,这速度算不算快的?但是听说太快的话,ADC检测会不稳定,,所以分频了就比较慢,不知道这说法是否正确呢?( Y5 f6 o3 p2 D/ H$ F$ N7 [, G

# V' @# N- D* e8 Z  I  `. `另外非常感谢狗版主的资料!感谢!

33

主题

4949

帖子

1万

积分

EDA365特邀版主

Rank: 6Rank: 6

积分
12225
9#
发表于 2014-3-6 17:38 | 只看该作者
狗版,单个ADC周期最快是12.5us,这速度算不算快的?
) W% Z. F% ~. b) {( W  D* d4 R
那就是小弟誤會了,我是看到您講 ADC 採樣轉換一次需要 1ms。不過 ADC 很多種設計方式,速度和價格上有差異,以前用踢哀(TI)ADS8505,採樣速度是 250KHz,相對來說 12.5us = 80KHz 也不算太快啦!$ p; O0 a& l1 e5 n' z: T8 d

; J, D$ e+ y0 T) D5 d5 w/ k5 F# ^
但是听说太快的话,ADC 检测会不稳定。
. j& N) [6 t; `$ }
這樣說也是沒錯啦!所有的東西都不是越快越好,夠用最恰當!
/ d: e& T( q0 I4 I% L& n
& A  F. i2 n* o# M
哈士奇是一種連主人都咬的爛狗!

31

主题

347

帖子

2216

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2216
10#
发表于 2014-9-28 14:28 | 只看该作者
充一会,停一会儿,我们就是这样做的,这种在别的机子里面出现过,可以的,也费不了多长时间,
200 字节以内
不支持自定义 Discuz! 代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2025-1-6 06:05 , Processed in 0.065086 second(s), 39 queries , Gzip On.

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

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

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