打印

单片机与AD信号采集求助

[复制链接]
4714|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
WELSON|  楼主 | 2012-6-26 23:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在坏的机器上拆了一个欧姆龙LED位移传感器,顺便想学习下单片机的AD信号采集处理,不过碰到了些问题,希望高手帮指导下
传感器位移距离+/-4mm 分辨率是0.01mm,输出4-20ma的模拟信号,看了下传感器手册讲4-20MM输出与GND接一250欧姆的精密电阻将电流转为1-5V的电压信号, 刚接触模拟电路与51单片机,不知道该选多少位的AD才能达到让LED数码管显示+/-4(0.01MM的分辨率)?请问如何计算分辨率?单片机如何处理数据?如果选10位AD能行吗?AD基准电压要多少呢?谢谢

相关帖子

沙发
airwill| | 2012-6-27 01:41 | 只看该作者
这样说可能直观一些:
+/-4mm 分辨率是0.01mm  可以有800个位置.
也就是说: 1-5V的电压信号中有 800 级电压.
如果推到 0-5V的电压信号(ADC都是从0V开始的),就有 1000 级电压等级需要分辨.
如果选10位AD, 可以分辨 1024 级电压等级. 如果不考虑量化误差和线性误差, 去5VAD基准电压, 能够识别出 0.01mm  位置偏移.
实际应用, 由于各种误差的存在, 用10 位AD, 分辨出来的最小一格可能不止0.01mm.

使用特权

评论回复
板凳
coody| | 2012-6-27 11:01 | 只看该作者
用12位的ADC吧

使用特权

评论回复
地板
mianxi| | 2012-6-27 11:32 | 只看该作者
感谢楼主分享。。。同时强烈鄙视那些看帖不回帖的人!



















-------------------------------------------------------------------------------------------------------------------
汕头处女膜修复|汕头引导紧缩术|汕头子宫肌瘤|

使用特权

评论回复
5
WELSON|  楼主 | 2012-6-27 12:21 | 只看该作者
谢谢大家的回复,感谢airwill,只能选择12位AD了,还想请教下,4-20MA的信号到底转换为1-5V还是0-5V?如果用1-5V,程序如何处理?

使用特权

评论回复
6
dqyubsh| | 2012-6-27 12:40 | 只看该作者
一般挂250欧电阻,4-20ma就是1-5V。的确有0-5V输出的,那是因为变送器有0-20mA输出,0ma大概指测量端输入悬空的情形。

使用特权

评论回复
7
WELSON|  楼主 | 2012-6-27 13:19 | 只看该作者
如果4-20ma输出转为1-5V 那么每0.01mm的分辨率是不是(5-1)/800=0.005V?还是5/800=0.00625V? 如果转为0-5V 那么每0.01mm的分辨率5/800=0.0625V     这样要求AD的分辨率至少为0.005V   5/1024=0.0048V(10位AD)

使用特权

评论回复
8
lotus007| | 2012-6-27 13:49 | 只看该作者
十位AD已经可以满足需要。

使用特权

评论回复
9
WELSON|  楼主 | 2012-6-27 15:10 | 只看该作者
如果选10位ADC可以满足的话,那选哪种好呢,现在考虑这三种,51-STC12C5A60S2(10bitAD)  AVR-AT90S8535(10bitAD)   TLC1549CP(10bitAD  ADC芯片)  前两种单片机自带,后者是DIP-8的单通道10bitADC  如果有更好的帮推荐下,谢谢

使用特权

评论回复
10
新LOVE| | 2012-6-27 19:31 | 只看该作者
谢谢大家的回复,感谢airwill,只能选择12位AD了,还想请教下,4-20MA的信号到底转换为1-5V还是0-5V?如果用1-5V,程序如何处理?

使用特权

评论回复
11
farrtone| | 2012-6-27 21:54 | 只看该作者
为什么只能是12位AD呢,10位不够用吗,还有就是你既然要采集到5V,那么首先你单片机供电应该是5V吧,
STC12C5A60S2这个单片机AD基准电压就是供电电压,你这个电压要求要稳,不能是4.8V(举例)供电,那你AD也只能采到4.8V。建议不要转换到满量程5V。

使用特权

评论回复
12
wukunshan| | 2012-6-28 11:32 | 只看该作者
楼主使用TLC1549CP(10bitAD  ADC芯片)就可以了。5000mv-1000mv/800=5mv,也就是说,每移动0.01mm的距离,输出电压变化5mv。如果用5V作为参考电压,TLC1549的分辨率(刻度)为5000/1024=4.88mv,量程为0-5000mv,刚好满足你的要求。在程序里这样处理:
val=(unsigned int)(read1549val*5000/1024)-1000,然后把val值显示出来就oK啦。

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
WELSON + 4 赞一个!
13
WELSON|  楼主 | 2012-6-29 11:10 | 只看该作者
12# wukunshan 谢谢你的详细回复  我调试看下

使用特权

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

本版积分规则

36

主题

204

帖子

0

粉丝