打印
[Atmel]

市电采集精度问题求指导

[复制链接]
2120|25
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qazq123|  楼主 | 2015-10-26 15:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以mega88为核心芯片。10位的ADC。功能:数显电压表实时显示市电的电压。 实现方法:通过电阻分压,直流偏置,然后进行均方根计算。  AD读取的数据为0.305~0.310之间,分压倍数为750倍。这样精度太低了。1.为啥我用万用表测得的直流偏置是2.410V,我程序中减去直流偏置的电压,数码管不会显示0.000?
2.有没有什么方法提高精度?
3. 万用表校准的原理是怎么样?


相关帖子

沙发
wh6ic| | 2015-10-26 17:51 | 只看该作者
10位 AD 分辨率 1024, 测正弦波, 需要除以根号8,大约是0.35,只能小于这个分压倍数。

使用特权

评论回复
板凳
qazq123|  楼主 | 2015-10-27 08:38 | 只看该作者
wh6ic 发表于 2015-10-26 17:51
10位 AD 分辨率 1024, 测正弦波, 需要除以根号8,大约是0.35,只能小于这个分压倍数。 ...

为什么是除以根号8啊? 分压倍数小于0.35?为啥?

使用特权

评论回复
地板
gx_huang| | 2015-10-27 08:49 | 只看该作者
LZ的问题真多,其实很多是数学问题呀,所以很早以前计算机系的要求数学好。
1V的正弦波,峰峰值就是2倍的根号2,也就是根号8呀。

使用特权

评论回复
5
qazq123|  楼主 | 2015-10-27 08:54 | 只看该作者
gx_huang 发表于 2015-10-27 08:49
LZ的问题真多,其实很多是数学问题呀,所以很早以前计算机系的要求数学好。
1V的正弦波,峰峰值就是2倍的根 ...

那这个跟分压倍数有什么关系?  不懂就问咯,总不能有缺陷了还假装知道吧。

使用特权

评论回复
6
gx_huang| | 2015-10-27 09:06 | 只看该作者
万用表是硬件整流后ADC(其实是平均值电压)。
你是ADC后计算有效值,自然,ADC的分辨率就降低了,有效值和峰峰值是根号8的倍数关系。
不懂就问没有错,总要先思考一段时间。
假设你输入交流220V电压,峰峰值是622V,1024的分辨率,算1000好了,ADC变化1,峰峰值变化0.622V,有效值变化0.22V。
以上是假设你的衰减值,刚好满足最大分辨率的比例,发挥ADC作用的最佳比例就是5/622=124.4。
你现在分压比是750,比124.4大多了,自然分辨率又下降了。
以上只是我的初步分析,没有仔细推敲,也许有错误,但是思路是对的。

使用特权

评论回复
7
ayb_ice| | 2015-10-27 09:48 | 只看该作者
整流或经过RMS芯片转换成DC

使用特权

评论回复
8
cuya| | 2015-10-27 10:28 | 只看该作者
有了10位的ADC, 可以降压后采样市电, 通过计算得到 rms. 不需要整流或者是rms芯片. 整流不是很好的做法

使用特权

评论回复
9
ayb_ice| | 2015-10-27 10:33 | 只看该作者
cuya 发表于 2015-10-27 10:28
有了10位的ADC, 可以降压后采样市电, 通过计算得到 rms. 不需要整流或者是rms芯片. 整流不是很好的做法 ...

一看就是没有搞过类似产品的

使用特权

评论回复
10
cuya| | 2015-10-27 10:52 | 只看该作者
ayb_ice 发表于 2015-10-27 10:33
一看就是没有搞过类似产品的

您的回答太武断了。实际上, 我可以说是这方面的专家, 市电的幅值可以说是我们设备中很小的一个部分。

通过采集通过电阻或交流互感器分压后电流电压, 可以计算出幅值,相角, 功率, 功率系数等等, 有更好的精度和响应速度。  

使用特权

评论回复
11
舍恩| | 2015-10-27 11:22 | 只看该作者
如果对实时性要求不高的话,最简单的方法,弄个计量芯片,计算有效值交给计量芯片.单片机就负责取计量芯片求出的有效值;

使用特权

评论回复
12
舍恩| | 2015-10-27 11:28 | 只看该作者
采样次数是多少次一周期? 128大概能在0.5%内,采样次数越多越好;

使用特权

评论回复
13
cuya| | 2015-10-27 11:37 | 只看该作者
10位ADC, 一周期 32 次基本上可以达到 0.5%内, 如果外部电路做的好得话。没必要像 128 这么高。

使用特权

评论回复
14
yklstudent| | 2015-10-27 13:20 | 只看该作者
LS能介绍下具体怎么做的,给点数据和代码参考下啊

使用特权

评论回复
15
ayb_ice| | 2015-10-27 13:46 | 只看该作者
cuya 发表于 2015-10-27 10:52
您的回答太武断了。实际上, 我可以说是这方面的专家, 市电的幅值可以说是我们设备中很小的一个部分。
...

你说的这些一般用在高端分析仪器上,比如电力分析仪

一个普通的仪表可能也用这些,但一般都成模块了,比如各种电表的IC,

如果纯粹靠软件算对CPU要求很高,对编程人员的要求也很高,成本根本下不来的

使用特权

评论回复
16
qazq123|  楼主 | 2015-10-27 13:57 | 只看该作者
yklstudent 发表于 2015-10-27 13:20
LS能介绍下具体怎么做的,给点数据和代码参考下啊

另外的我的帖子有,你可以自己去看看

使用特权

评论回复
17
qazq123|  楼主 | 2015-10-27 13:58 | 只看该作者
ayb_ice 发表于 2015-10-27 13:46
你说的这些一般用在高端分析仪器上,比如电力分析仪

一个普通的仪表可能也用这些,但一般都成模块了,比 ...

没有吧,现在普通的三相电压电流表都是通过分压电阻和电流互感器计算的吧。这样的成本才比较低吧?

使用特权

评论回复
18
qazq123|  楼主 | 2015-10-27 13:59 | 只看该作者
cuya 发表于 2015-10-27 11:37
10位ADC, 一周期 32 次基本上可以达到 0.5%内, 如果外部电路做的好得话。没必要像 128 这么高。 ...

但是得考虑到分压倍数吧?在最大分辨率下才能达到0.5级别吧?

使用特权

评论回复
19
qazq123|  楼主 | 2015-10-27 14:00 | 只看该作者
舍恩 发表于 2015-10-27 11:28
采样次数是多少次一周期? 128大概能在0.5%内,采样次数越多越好;

625微妙一次,32个点算一次均方根,算11个,第一个不要,然后取平均值,因为分压倍数太高,所以我的精度不够。

使用特权

评论回复
20
qazq123|  楼主 | 2015-10-27 14:02 | 只看该作者
舍恩 发表于 2015-10-27 11:22
如果对实时性要求不高的话,最简单的方法,弄个计量芯片,计算有效值交给计量芯片.单片机就负责取计量芯片求出 ...

计量芯片增加成本,基本的硬件电路已经确定了。用LM358提供偏置电压。然后分压电阻后进行ADC

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

163

帖子

0

粉丝