ADI 技术
直播中

陈飞

7年用户 1185经验值
私信 关注
[问答]

AD7799称重系统模拟电源不稳定

AD7799称重系统
   
   AD7799的方案定型,到PCB样板的打样就只有几天的时间,可以说很顺利。简单的说一下模拟部分的电路:传感器信号经简单的一阶RC低通滤波直接接到AD7799AIN1+AIN1-AD7799DOUTSCLKDINCSADuM1401单片机相连,单片机本身带有SPI口,但本人觉得设置SPI积存器比较麻烦,就采用模拟SPIAD7799进行通讯;系统采用2电源模块分别对模拟电路和数字电路进行供电,粗略的算了一下模拟电路部分的功耗,采用LM2931对模拟部分供电,经精密电阻分压得到理论值2.5VAD7799的参考电压,但是实际的参考电压只有2.46V,不知道是否是电阻精度不够还是LM2931的功率不够造成的。没什么特别的,电路方面太简单了。只是布板,布线的的时候特别的注意了模拟电路数字电路的区分,屏蔽,地线都做了相应的处理,很没有工具,不能拍照给大家分享一下。
   
   把我采集到数据晒出来给大家看一下:
   
电压:0099399电压:5436999电压:4218166电压:3037177电压:3406400电压:4342766电压:1431744
   
电压:1423166电压:1414433电压:1405799电压:1397144电压:1440344电压:1438177电压:1436099
   
电压:1451166电压:1451166电压:1451155电压:1451144电压:1451111电压:1451177电压:1451122
   
电压:1451177电压:1451111电压:1451155电压:1451111电压:1451088电压:1451088电压:1451088
   
电压:1451088电压:1451088电压:1451088电压:1451088电压:1451088电压:1451088电压:1451077
   
电压:1451077电压:1451077电压:1451077电压:1451066电压:1451055电压:1451044
   
数据是通过串口显示出来的,AD7799必须经过一段时间才能稳定下来,所以采集到的前几次数据不是真实的结果,必须过滤掉,当然,得到的这些数据也是经过算法处理的。稳定之后会发现,只有后两位是变化的,原因很多,噪声干扰是必然存在的,不可能没有,只可能把它抑制在一个很小的范围内。经转化为重量后发现,600g的量程可以显示到0.003g,最后的那位有点波动,但不会超过10。这个结果比我想象中的要好的多,但还是有很多问题需要解决。
   
发表此贴,是为了结识有经验的人,大家讨论一下,怎样才能把精度再提高一些,精益求精。



问题1

   
    模拟电源的不稳定。

   
现象:

   
5V的模拟电源我们经测得,实际只有4.90V,一方面给AD7799上电,另一方面做传感器的激励电源,激励电源的不稳定,那么AD的输入就会不稳定;模拟电源经精密电阻分压得到的AD7799参考电压是2.46V,参考电压的不稳定,直接影响到AD的采样输出结果。

   
问题来源:

   
模拟电源的不稳定,对这种数据采集的精度到底会影响多大呢,不得而知,我没有办法验证。

   
问题的解决构想:

   
在最初设计电路的时候,并没有在稳压块的精度、温漂、有效值噪声方面有太大的在意。在看了很多方面的资料之后才意识到其重要性。AD7799决定采用ADI的参考源:ADR03 2.5V 精度+/-0.1%3ppm/℃,1.03美元;

   
            ADR381 2.5V 精度0.24%3ppm/℃, 0.76美元;

   
5V稳压IC:ADP3330ARTZ-5,CNR = 10 nF时,输出噪声为47uV;

   
                          CNR = 0 nF时,输出噪声为95uV.   0.62美元。

   
           LT1763  输出噪声20uV.          就是有点贵。

   
ADI的专家看一下,我选择这几款是否合适。大家也可以推荐几款比较经典的IC,但是噪声一定要低,RMB10元左右都可以。

问题2

   
      AD采样速率太低

   
现象:

   
      AD7799的采样速率可以通过写模式寄存器进行设置,但是其精度是靠牺牲速度来完成的,就是说高精度必须在低转换速率下完成。这样在对数据结果的算法处理上就没有太多的选择了,不能选择那种很浪费时间的的算法。

   
寻找解决问题的方法:

   
      调试中,确实证明了,当AD7799采样速率在4.17HZ时精度是最好的。而在这种速率下就要选择合适的算法,我只用了简单的几种算法,要保证有足够大的数据更新速率。在算法处理方面呢,我的经验很少,希望大家能多给点意见。

问题3

   
     干扰的屏蔽或处理

   
现象:

   
     在称重过程中,轻轻的震动都会对系统造成干扰,很明显的,在无输入的情况下,敲动桌子,显示数据会在0.3g左右跳动;同样手机信号对称重系统的干扰是十分严重的;

   
问题的解决:

   
     震动的影响,可以通过最简单的加权法来弥补,如下:

   
uint32 idata

   
oldresult00,oldresult01,oldresult02,oldresult03,oldresult04,oldresult05,newAdcResult;

   
       oldresult00=oldresult01;

   
       oldresult01=oldresult02;

   
       oldresult02=oldresult03;

   
       oldresult03=oldresult04;

   
       oldresult04=oldresult05;

   
       oldresult05=newAdcResult;

   
       newAdcResult = adccon();//ADC转换电压结果   

   
return(7*oldresult00+6*oldresult01+5*oldresult02+4*oldresult03+3*oldresult04+2*oldresult05+1* newAdcResult)/28;

   
可以自己选择系数,但是最新数据的系数越小,其对于跳动的抑制能力越强,但这样也会影响到系统结果的稳定时间,具体的需要在调试中实践。

   
手机信号的干扰,主要可以通过加屏蔽罩进行屏蔽。但还是无法做到十分有效,还是需要大家集思广益。

   
写这篇文章,也是确实在开发中遇到的问题了,想在这里跟大家讨论一下,怎样来解决。关于AD7799,个人感觉在程序上很简单。

   
AD7799在使用中,我简单的翻译了一下,有十几页,有需要中文资料的,在这里留下邮箱地址,有空的时候发给大家。

   
板子还在更新中,遇到新问题,我会继续在这里更新。希望大家能在这里充分的讨论一下,来提高精度。



零点漂移比较严重。

传感器是采用电阻应变片式的,当放一个接近满量程的重量上去之后,它的重量会慢慢增加,在拿掉被测物体后,不会立刻恢复到零点,要经过很长的时间才能恢复到零点。

那么这个零点漂移是由什么来引起的呢,是应变片发生形变不能正常恢复?还是受温度带来的零漂,或是其他的?

回帖(4)

赖嘉宁

2018-11-19 10:00:51
学习了
举报

张艳

2018-11-19 10:13:27
关于零点漂移问题,传感器可否使用外加小信号模拟,以确定漂移原因在哪一方?
举报

赖嘉宁

2018-11-19 10:19:24
引用: Lucia_nie 发表于 2018-11-19 08:16
关于零点漂移问题,传感器可否使用外加小信号模拟,以确定漂移原因在哪一方?

目前主要是还没有条件进行小信号模拟。手里只有一块福禄克726的校准表。
举报

杨杰

2018-11-19 10:25:38
学习了,谢谢分享~
记得模拟对话,探讨过基于AD7799的称设计过
http://www.analog.com/cn/analog-dialogue/articles/a-reference-design-for-weigh-scales.html
ADI关于电子称Weigh Scales的页面如下,干货不少
http://www.analog.com/cn/applications/markets/instrumentation-and-measurement/weigh-scales.html
举报

更多回帖

发帖
×
20
完善资料,
赚取积分