[讨论] 请教AD采样

thtlj   2010-4-27 18:04 楼主
问题描述:
用MCP3208做三相电压、电流采样,开始是每个周波采一样电压、电流,一切正常。
后来改成一个周波采三相电压、电流,发现线性不对。首先排除算法问题,因为我直接从采样结果看,就不成线性(附AD采样结果)。从数据手册上看,茏最高采样速度为100kSPS,我每个周波采32个点(20ms),这样算来,一秒钏也就是50×32×6=9600,速度就访没问题。但就是搞不懂其误差是哪里来的,从波形上看,也是个挺规则的正弦波。我用的SPI时钟速度是2M的,也是它的工作最大值了,不知会不会影响,但我做一个周波采一相电压和一相电流时,也是用的这个频率。还有,我发现MCP的时钟会影响它的转换结果,我用同样的程序,输入同样的信号,采用不同的SPI时钟频率时,采样结果就不一样。我想,可能还是哪方面没匹配好吧,请各位帮忙分析一下。

[ 本帖最后由 thtlj 于 2010-4-27 19:10 编辑 ]

回复评论 (15)

应该检查采样点的位置
一个周波采一相电压和一相电流时不能作为依据
是否正常不能仅计算A/D时间,还应该包括其他运算等操作的时间
点赞  2010-4-27 18:25
你用现在的三相的板子下只测一相的代码看看什么结果,我怀疑可能是CPU处理来不及导致。
点赞  2010-4-27 18:35
回莫大侠,两个程序都是在一个板子上做的。
点赞  2010-4-27 18:42
周公好,我是这样做的,首先测出频率,或者说一个周波的时间,然后分为32份,时间到时,采样一次(一相电压和一相电流或三相电压和三相电流,采样时间内,并没有做别的太多事情,也就是把采样值累加一下,好为计算“中轴线”值做准备,
点赞  2010-4-27 18:52

从你XLS图形看,5A峰值两倍2.5A

不是对的吗
点赞  2010-4-27 19:25

回复 楼主 thtlj 的帖子

附的波形没有看出问题啊,问题在哪里?
电子工程师技术交流QQ群:12425841,专注于自动控制、数字电源等
点赞  2010-4-27 19:32
回6楼,大致是,但有误差,2.5A的时候,计算出来只有2.45A的样子。
点赞  2010-4-27 19:36
回7楼,就是波形没看出问题,才郁闷呐。现在还不知问题在哪里,就是有误差。
点赞  2010-4-27 19:38
人过留名。
点赞  2010-4-27 20:16
个人觉得,三相电压,AD采样的时候,应该是“电压-电流-电压”或“电流-电压-电流”,两边的求和取平均值,与中间的对应!
点赞  2010-4-27 22:35
每个周波采样32个点应该会引起一定的误差的,单相周波没有误差(其实有的,误差的存在是绝对的,大小而已)是一种巧合。
采用全波精密整流+LC滤波电路得到平均电压,再转换为有效值,可以有效减小误差。
点赞  2010-4-28 01:00
回10楼:看看也谢谢!
点赞  2010-4-28 05:53
回11楼:因为我在这个项目中,要采集三相电压、电流,然后计算其有效值、功率因数等等,所以同相电压、电流要尽可能同时采样。我的顺序是同一周波内:A相电压、A相电流、B相电压、B相电流、C相电压、C相电流,求出各相采样点的平均值作为“中轴线”的值,然后……
点赞  2010-4-28 06:09
回12楼,这里只能采用交流采样。误差肯定是有的,就是看在不在允许范围之内了。一个周波只做一相采样的时候,精度能控制在0.5%之内,做三相时,能到2%了,实在受不了。
点赞  2010-4-28 06:13
如果实时性要求不高,可对三相电的每一项进行如下处理:
每项的第一个周期测周波,利用小于半周期(<10ms)时间计算,得到20mS左右的us或ns数,除以32,得到每个采样点间隔标准时间,则在该相的下下半个周期开始每隔采样点间隔标准时间采样,共32次,(需用过零点触发电路来配合上述工作)。
其他相也做相同操作
点赞  2010-4-28 16:57
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复