willknow 发表于 2006-12-9 17:24:17

如何求得电机的平均电流(附电流波形图)

最近在用M48做电动车控制器(无刷直流电机),起初的方案没有考虑峰值保护,只是平均电流保护。

主回路描述一下:

在主回路里串了一个康铜丝(约8-10m欧)。下面是电流采样电路,IOUT就是直接从康铜丝引过来的。

http://cache.amobbs.com/bbs_upload782111/files_6/armok01137637.jpg

下面是实际拍下来的照片:上面的波形为电流,限上图的ADC7,下面为PWM。http://cache.amobbs.com/bbs_upload782111/files_6/armok01137638.jpg



如果求得上面的平均电流?

./emotion/em052.gif


-----此内容被willknow于2006-12-09,17:27:12编辑过

laoma 发表于 2006-12-9 17:28:31

积分

willknow 发表于 2006-12-9 17:32:07

因为电流采样是进A/D口的,采集到的数据可能是峰值,也有可能是低谷时的数据。laoma ,能不能说说如何积分?谢谢!

tda1552 发表于 2006-12-9 19:52:30

RC 积分就行了

yule 发表于 2006-12-9 21:20:38

在外面先用RC积分,转换为平均电压后再去AD

willknow 发表于 2006-12-9 22:17:10

谢谢楼上三位!



如果用RC积分再进行AD转换,这样就无法实现对电流的峰值检测!



因为要做到平均值限流,又做到峰值限流.



峰值限流在每个PWM周期中都对电流波形进行检测,防止超过MOSFET的最大允许电流;


-----此内容被willknow于2006-12-09,22:17:46编辑过

binglin 发表于 2006-12-9 22:34:01

最简单的办法是分开转换,原转换电路不变,加多一路用RC积分再进行AD转换。

willknow 发表于 2006-12-9 22:38:23

一楼的电路图是抄电动车控制器老大“晶汇”的。

因为电路上的LM358仅用一路用于检测电流,实现了两种保护!

mig29 发表于 2006-12-9 23:54:01

以ADC7出发,一路过RC得到平均电流,一路进NPN三极管b极(接成开关电路)c极的输出进MCU的一个中断做幅值保护。

yuangaoping 发表于 2006-12-10 00:07:17

使用AD637试试吧

willknow 发表于 2006-12-10 08:51:12

TO:mig29 笨笨兔

因为别人的电路的ADC7是直接进单片机,而且做到了两种保护.我想是用软件实现的.

laoma 发表于 2006-12-10 09:44:18

如果要求精度不高,用软件积分...........



计算N个周期时间内,电流波形对单位时间的面积,然后然后除以总时间就是等效电流,精度取决采样频率快慢......

fhqmc 发表于 2006-12-10 11:30:59

这个单片机的AD转换能有多快,最多1K吧,如果不是通过硬件反馈,对于峰值电流的反应不可能很快,加个简单的软件平均就行了。

FreeDriver 发表于 2006-12-11 09:00:32

楼主的电路是可以实现的



同意11楼的软件积分

同时可根据信号的变化率进行峰值保护

willknow 发表于 2006-12-11 10:38:36

laoma,FreeDriver:我用的MEGA48的晶振频率是16M,PWM频率是15.6K,AD转换8分频.



"软件积分"是什么意思?是不是连续采样N次(如N=10),每次采样周期为T,如果N次采样的值为I1,I2,I3.....如果用软件积分的话,应该等于多少?

FreeDriver 发表于 2006-12-11 13:15:42

抱歉13楼纯属胡说!



根据你的波形,个人认为在一个时间段T内不停的采样,找出其中的最大值及最小值,取中间点作平均值,不知各位如何看待?

willknow 发表于 2006-12-11 20:34:24

(最大值+最小值)/2好像不行。比如现在的占空比为1/5,那么最大值与最小值的平均值不会是平均值。



我试了连续采样60次,30次,20次,感觉与采样到的周期个数有关。

hhm825 发表于 2006-12-11 20:59:20

有公式的

zlc990405 发表于 2006-12-11 21:25:20

PWM的周期自己知道吧,占空比自己知道吧,测出最大值,然后乘于占空比不久可以了。

zlc990405 发表于 2006-12-11 21:27:54

对了,还得加上最少的值,就是(最小值+(最大值-最小值)×占空比)

最小值是我看你的示波器不在0未知,始终大于0考虑的。

willknow 发表于 2006-12-12 08:53:27

在理想情况下,(最小值+(最大值-最小值)×占空比)的方法是可行的.



如果PWM输出异常,如器件损坏,则无法检出.

alisha 发表于 2006-12-12 10:11:13

【8楼】 mig29 笨笨兔



积分:323

派别:

等级:------

来自:

以ADC7出发,一路过RC得到平均电流,一路进NPN三极管b极(接成开关电路)c极的输出进MCU的一个中断做幅值保护。



大部分电动车都是这么用的。



晶汇的产品很一般,被我烧了好几个。

FreeDriver 发表于 2006-12-12 10:17:21

对于脉冲波,通过最大值求平均值一定得知道占空比,上面的方法是可行的, 如果PWM输出异常或器件损坏 则检出出的最大值和最小值必有问题,可根据上下限进行保护.

fsclub 发表于 2006-12-12 11:20:30

你这个频率应该不高,在一个周期内采他个几十次,还采不到峰值?

采样间隔有了,采到了值也有算,算个近似平均值应该简单了吧?

willknow 发表于 2006-12-12 14:50:54

alisha肯定是做电动车控制器的高手啊!

加你QQ没加上.





偶再去试试众高手的方法.

alisha 发表于 2006-12-12 15:10:07

我好久没开QQ了,今天晚上开一下。



软件做的好一点,根本就不用检测峰值,我就把检测峰值部分去掉了,电机加100KG的力启动也没一点问题,而且都是满电流启动。

poppush 发表于 2006-12-14 16:56:40

请问 RC积分,该如何取值呢?

dodgecat 发表于 2006-12-16 21:52:52

不知道你们说的晶汇是什么,我驱动电机用KA9258,VCD的片子,4元一块

ottife 发表于 2010-5-4 20:35:35

mark
页: [1]
查看完整版本: 如何求得电机的平均电流(附电流波形图)