发 帖  
原厂入驻New
[问答] ad7192根据公式计算得到的误差大概有0.1V到0.01V不等的误差
1333 AD7192 寄存器
分享
工程师您好:
      我是用的你们公司的AD7192,AINCOM口输入2.5V,AIN2输入电压,REF输入5V,双极性输入。我输入的电压为0到5V(每0.5v取一个值),但是根据公式计算得到的误差大概有0.1V到0.01V不等的误差,这个不知道是什么原因?(我的模式寄存器配置为0X002040,模式寄存器为OX0C2880),并且这个ad的失调寄存器与满量程寄存器中的数值怎配合数据寄存器使用呢?谢谢
      谢谢。
0
2018-9-11 10:14:52   评论 分享淘帖 邀请回答
26个回答
第一问:
       (1)将AIN2 与 AINCOM短接 , AINCOM接入2.5V ,读取10组AD7192的转换结果。
       (2) AIN2 输入的电压为0到5V(每0.5v取一个值),AINCOM接入2.5V , 每种电压读取10组AD7192的转换结果。
       能否告知一下这些数据和AD7192 部分的电路图?你那个那两个寄存器名称相同,麻烦你重写一下。
第二问:
       失调寄存器和满量程寄存器中的数据一般是用不到的,进行失调和满量程标定后这两个寄存器会自动被重写。数据寄存器中的内容已经是经过这两个寄存器标定后的结果。
2018-9-11 10:29:36 评论

举报

wyywerw2 发表于 2018-9-11 17:04
第一问:
       (1)将AIN2 与 AINCOM短接 , AINCOM接入2.5V ,读取10组AD7192的转换结果。
       (2) AIN2 输入的电压为0到5V(每0.5v取一个值),AINCOM接入2.5V , 每种电压读取10组AD7192的转换结果。

您好:
        我的模式寄存器为0X002040,配置寄存器为0X0C2BFF,然后AIN2与AINCOM短接是10个输出分别为:8005CA,8005CF,8005CE,8005CC,8005DD,8005DD2,8005CE,8005CF,8005C6,8005D1。
       当输入(0-5v)的电压是,AINCOM输入2.56V,AVDD为4.99,对应的值如下:
     实际值    数据寄存器值       公式解算后
       0.064        3EBB4B                2.4456
       0.532        4A7C7C                2.9038
       1.040        57E517                 3.4265
       1.508        643C0B                3.9076
       2.05          729685                 4.4671            
       2.57          80784D                5.0083
       3.06          8D4E75                5.5087
       3.54          9A0940                 6.0050
       3.98          A58D71                6.4540
       4.48         B2CEBD               6.9707
       4.94         BED4CC               7.4392
下面是我的电路图
2018-9-11 10:46:40 评论

举报

hu_wflllll12 发表于 2018-9-11 17:21
您好:
        我的模式寄存器为0X002040,配置寄存器为0X0C2BFF,然后AIN2与AINCOM短接是10个输出分别为:8005CA,8005CF,8005CE,8005CC,8005DD,8005DD2,8005CE,8005CF,8005C6,8005D1。
       当输入(0-5v)的电压是,AINCOM输入2.56V,AVDD为4.99,对应的值如下:

1.请检查一下,你提供的两个寄存器的内容是否弄反了?
2.ADC的模拟输入的有效信号是AIN2 - AINCOM, 所以表(1)中的2、3、4、5列都是针对这个信号来说明的,表(1)中的数据取自你提供的  实际值    数据寄存器值。这里利用(ADC 码值 , AIN2-AINCOM) 为 (8390095 , 0)和(12506316 , 2.38)两点做一条直线y = kx + b ; 然后将其他点的ADC码值代入该公式计算得到一个计算值,然后算得一个误差。
3. AIN2 = 0.064V计算误差较大,建议重新测一下,最好能测10组数据
4. 能否告知一下,你输入信号AIN2 是如何产生的,如何确定该信号的大小的?
表(1)  
AIN2(V)AIN2-AINCOM (V)ADC码值(十)计算值(V)误差(V)
0.064-2.4964111179-2.4740702890.02193
0.532-2.0284881532-2.028651994-0.00065
1.04-1.525760279-1.520560261-0.00056
1.508-1.0526568971-1.052974347-0.00097
2.05-0.517509637-0.5090810330.000919
2.560839009500
2.570.0184194050.0169470490.006947
3.060.592606610.5033614760.003361
3.540.98100949120.9857256110.005726
3.981.42108496491.4221147310.002115
4.481.92117183331.9243880350.004388
4.942.38125063162.380
 
2018-9-11 11:03:23 评论

举报

wyywerw2 发表于 2018-9-11 17:37
1.请检查一下,你提供的两个寄存器的内容是否弄反了?
2.ADC的模拟输入的有效信号是AIN2 - AINCOM, 所以表(1)中的2、3、4、5列都是针对这个信号来说明的,表(1)中的数据取自你提供的  实际值    数据寄存器值。这里利用(ADC 码值 , AIN2-AINCOM) 为 (8390095 , 0)和(12506316 , 2.38)两点做一条直线y = kx + b  ...

您好:
        实在不好意思,那个寄存器确实是我给写反了,还有,我的信号是用信号发生器发出的,然后具体的值是用万用表测得,这个是不是误差太大?这个数据我测十组的话我应该取平均值还是取波动的中心值。这个计算就用你给我的这个计算就可以吧?万分感谢。。。
2018-9-11 11:11:35 评论

举报

hu_wflllll12 发表于 2018-9-11 17:46
您好:
        实在不好意思,那个寄存器确实是我给写反了,还有,我的信号是用信号发生器发出的,然后具体的值是用万用表测得,这个是不是误差太大?这个数据我测十组的话我应该取平均值还是取波动的中心值。这个计算就用你给我的这个计算就可以吧?万分感谢。。。 ...

1. 这种方式的误差是会稍微大一些,不过看你的需求。
2. 一般是取平均值。
3. 我给你的计算方式相当于重新标定。当然你可以在AD7192进行标定,也可以按照我给你的方式在自己的程序中标定。
2018-9-11 11:23:12 评论

举报

wyywerw2 发表于 2018-9-11 17:37
1.请检查一下,你提供的两个寄存器的内容是否弄反了?
2.ADC的模拟输入的有效信号是AIN2 - AINCOM, 所以表(1)中的2、3、4、5列都是针对这个信号来说明的,表(1)中的数据取自你提供的  实际值    数据寄存器值。这里利用(ADC 码值 , AIN2-AINCOM) 为 (8390095 , 0)和(12506316 , 2.38)两点做一条直线y = kx + b  ...

您好:
       如果误差在几毫伏左右,采样率我降到最低了,也就是说有效分辨率最理想,这个误差对于我使用的贵公司的AD7192在合理的范围内吗?现在如果我使用AIN1,AIN2,AIN3的话计算时分别使用y=kx+b就可以吧?多谢
2018-9-11 11:40:33 评论

举报

hu_wflllll12 发表于 2018-9-11 18:15
您好:
       如果误差在几毫伏左右,采样率我降到最低了,也就是说有效分辨率最理想,这个误差对于我使用的贵公司的AD7192在合理的范围内吗?现在如果我使用AIN1,AIN2,AIN3的话计算时分别使用y=kx+b就可以吧?多谢

1.这个误差不在AD7192合理的范围内,datasheet上给出的性能指标都是已经实现的,但是对电路设计、测试条件都要求很高。所以一般使用的时候,做到满足需求就可以了。
2.你每个通道都需要独立标定,因为每个通道的offset , gain error是不一样的。
2018-9-11 11:56:00 评论

举报

wyywerw2 发表于 2018-9-11 18:30
1.这个误差不在AD7192合理的范围内,datasheet上给出的性能指标都是已经实现的,但是对电路设计、测试条件都要求很高。所以一般使用的时候,做到满足需求就可以了。
2.你每个通道都需要独立标定,因为每个通道的offset , gain error是不一样的。 ...

您好,请问我每次使用时只有测量值,就是数据寄存器的值,怎么进行标定呢?怎么才能导出计算公式呢?
2018-9-11 12:11:19 评论

举报

hu_wflllll12 发表于 2018-9-11 18:45
您好,请问我每次使用时只有测量值,就是数据寄存器的值,怎么进行标定呢?怎么才能导出计算公式呢?

1.标定过程中,通过差分输入为零时,得到offset error;通过差分输入接近满量程时,得到gain error。如果只有数据寄存器的值,没有确定差分信号输入的幅值,那无法进行标定。
2.如果能够确定标定过程中差分信号输入的幅值,可以利用我在Jan 8, 2016 4:40 PM  回复中给出的方法把公式导出。
2018-9-11 12:29:40 评论

举报

wyywerw2 发表于 2018-9-11 19:04
1.标定过程中,通过差分输入为零时,得到offset error;通过差分输入接近满量程时,得到gain error。如果只有数据寄存器的值,没有确定差分信号输入的幅值,那无法进行标定。
2.如果能够确定标定过程中差分信号输入的幅值,可以利用我在Jan 8, 2016 4:40 PM  回复中给出的方法把公式导出。 ...

您好,由于基础不是很好,还得请教您。我有几个问题,第一是,实际应用中无法把AIN输入与AINCOM短接实现差分输入为零,这样就得不到一个点去求解。第二是,您说的差分输入为零得到OFF ERROR和满量程得到的GAIN ERROR后这两个值怎么使用呢?并且每次具体一个通道操作的时候这两个值都是不变的,比如差分输入为零时就可一起得到这两个值,您说的分开得到是怎么样的操作和原理呢?第三,这个OFF寄存器能写入吗?这个寄存器具体是什么样的功能,这个芯片手册没有给出来。这个寄存器怎么去人为控制呢?实在不好意思,万分感谢。
2018-9-11 12:43:04 评论

举报

hu_wflllll12 发表于 2018-9-11 19:17
您好,由于基础不是很好,还得请教您。我有几个问题,第一是,实际应用中无法把AIN输入与AINCOM短接实现差分输入为零,这样就得不到一个点去求解。第二是,您说的差分输入为零得到OFF ERROR和满量程得到的GAIN ERROR后这两个值怎么使用呢?并且每次具体一个通道操作的时候这两个值都是不变的,比如差分输入为零时就可一起得 ...

  我建议你看一下AD7175的datasheet中的calibration 那一节。
   AD7175中calibration 讲得比较清楚。calibration的过程基本类似。
2018-9-11 12:56:20 评论

举报

wyywerw2 发表于 2018-9-11 19:30
  我建议你看一下AD7175的datasheet中的calibration 那一节。
   AD7175中calibration 讲得比较清楚。calibration的过程基本类似。

您好,十分抱歉还得麻烦您,我现在有两个问题,一是我采集输出的数老会出现重复的数,比如800000它会有四个点都是800000,有的甚至会出现7个点一个值,使结果呈现阶梯状,我附了一个图,麻烦您看下。二是我比如说短接AINCOM和输入电压口AIN2的时候采集到的输出值跳变有点厉害,有一部分是正确的,接近于800000,但是有一部分直接就400000了,这是为什么呢?
2018-9-11 13:07:51 评论

举报

hu_wflllll12 发表于 2018-9-11 19:42
您好,十分抱歉还得麻烦您,我现在有两个问题,一是我采集输出的数老会出现重复的数,比如800000它会有四个点都是800000,有的甚至会出现7个点一个值,使结果呈现阶梯状,我附了一个图,麻烦您看下。二是我比如说短接AINCOM和输入电压口AIN2的时候采集到的输出值跳变有点厉害,有一部分是正确的,接近于800000,但是有一部 ...

1.AINCOM和输入电压口AIN2短接,测量结果接近于800000,另一部分直接就400000,还有没有其他结果?测量其他幅值的直流信号,测量结果是怎样的?AD7192的参考电压与AVDD短接,你AVDD是怎样产生的,还有没有给其他芯片供电?
2.建议先把上述问题解决了再解决测量交流不同时刻结果相同的问题。能否把你的交流信号的频率和赋值有没有offset告知一下?这个交流信号是经过R5,C15 后输入到AD7192中的?
2018-9-11 13:22:12 评论

举报

wyywerw2 发表于 2018-9-11 19:56
1.AINCOM和输入电压口AIN2短接,测量结果接近于800000,另一部分直接就400000,还有没有其他结果?测量其他幅值的直流信号,测量结果是怎样的?AD7192的参考电压与AVDD短接,你AVDD是怎样产生的,还有没有给其他芯片供电?
2.建议先把上述问题解决了再解决测量交流不同时刻结果相同的问题。能否把你的交流信号的频率和赋值 ...

您好,测量其他直流时值差不多与实际值相符,但是就有一个问题是采集出来的会出现阶梯状的这个情况,就是会出现4个点或者多至7个点的值相同这么个情况,AVDD是另外的芯片产生的,信号是直接接入到AD中的,没有经过R5,C15。
2018-9-11 13:33:49 评论

举报

wyywerw2 发表于 2018-9-11 19:56
1.AINCOM和输入电压口AIN2短接,测量结果接近于800000,另一部分直接就400000,还有没有其他结果?测量其他幅值的直流信号,测量结果是怎样的?AD7192的参考电压与AVDD短接,你AVDD是怎样产生的,还有没有给其他芯片供电?
2.建议先把上述问题解决了再解决测量交流不同时刻结果相同的问题。能否把你的交流信号的频率和赋值 ...

您好,我去了50个数据寄存器的值,您看一下,就是有好几个是重复的
2018-9-11 13:42:31 评论

举报

hu_wflllll12 发表于 2018-9-11 20:16
您好,我去了50个数据寄存器的值,您看一下,就是有好几个是重复的

1.有没有用示波器观察过输入到AIN2上的交流信号。有没有呈现出来阶梯状?
2.AVDD是多少伏?
3.交流信号是正弦信号吗?该交流信号的周期、幅值、offset是多少?
4.能否告知一下AD7192的Mode和Configuration寄存器中的内容。
2018-9-11 13:56:41 评论

举报

wyywerw2 发表于 2018-9-11 20:31
1.有没有用示波器观察过输入到AIN2上的交流信号。有没有呈现出来阶梯状?
2.AVDD是多少伏?
3.交流信号是正弦信号吗?该交流信号的周期、幅值、offset是多少?

你好,配置寄存器为0x006040,模式寄存器为0x0c2802,AVDD位5V,交流是正弦,周期为10HZ,幅值都为正大概为2,4V左右。输入到AIN2的信号我用示波器看过,没有阶梯状。
2018-9-11 14:08:13 评论

举报

wyywerw2 发表于 2018-9-11 20:31
1.有没有用示波器观察过输入到AIN2上的交流信号。有没有呈现出来阶梯状?
2.AVDD是多少伏?
3.交流信号是正弦信号吗?该交流信号的周期、幅值、offset是多少?

您好,我给您一下状态寄存器的值,就是50个数它的值,您看一下
2018-9-11 14:25:29 评论

举报

wyywerw2 发表于 2018-9-11 20:31
1.有没有用示波器观察过输入到AIN2上的交流信号。有没有呈现出来阶梯状?
2.AVDD是多少伏?
3.交流信号是正弦信号吗?该交流信号的周期、幅值、offset是多少?

您好,不知道您能看到不?急需解决啊,出现的值一直是4个一样的,是我配置错误还是硬件问题,我把我的硬件图和模式、配置寄存器的值给您看一下,希望能尽快指导一下,万分感谢。
2018-9-11 14:42:18 评论

举报

只有小组成员才能发言,加入小组>>

12下一页

891个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /10 下一条

快速回复 返回顶部 返回列表