tianyaxtutianya 发表于 2013-9-29 11:22:56

DSP28335 ADC采样的线性度不好

DSP28335 ADC采样的线性度不好
有没有什么办法   谁用过DSP28335的内部采样基准
总感觉内部基准值不准线性度不好,一下做实验测量到的数据


KV+输入        KV+ADC        计算基准值        按照3V基准换算的实际电压值
0.521        726        2.938698347        0.531868132
0.521        744        2.867600806        0.545054945
0.521        731        2.918597811        0.535531136
0.521        755        2.825821192        0.553113553
0.521        738        2.890914634        0.540659341
0.521        714        2.988088235        0.523076923
0.521        698        3.056583095        0.511355311
0.521        733        2.910634379        0.536996337
0.521        707        3.017673267        0.517948718
0.521        700        3.04785                0.512820513
0.521        749        2.848457944        0.548717949

zhanyanqiang 发表于 2013-9-30 09:17:06

没用过内部的,DSP一般跑起来有点温度的,不知道影响基准的稳定不?

changer15309 发表于 2013-9-30 09:21:13

dsp跑起来太热,温漂估计会严重。不行就使用片外,ad反面不布芯片,周围宽敞
这个数据不能叫不线性吧,就是不准

阿豪博士 发表于 2013-9-30 09:21:56

个人认为自带ADC不能作为检测ADC,尤其是电力电子或者关键的数据。最好还是扩展ADI公司的芯片之类的比较好吧?

zhanyanqiang 发表于 2013-9-30 16:40:22

阿豪博士 发表于 2013-9-30 09:21 static/image/common/back.gif
个人认为自带ADC不能作为检测ADC,尤其是电力电子或者关键的数据。最好还是扩展ADI公司的芯片之类的比较好 ...

不是那么绝对吧,应该能适用在很多场合的~~

wzq3 发表于 2013-10-17 20:20:50

如果PCB布线不当,也会出现这种稳定现象;精确度与分辨度的关系。

zhandouji 发表于 2013-10-18 09:03:27

阿豪博士 发表于 2013-9-30 09:21 static/image/common/back.gif
个人认为自带ADC不能作为检测ADC,尤其是电力电子或者关键的数据。最好还是扩展ADI公司的芯片之类的比较好 ...

我们就是用2812和28335做电力电子产品,用的就是内部AD,精度最好时可以到0.1%,客户都没有什么疑问!我感觉AD采样的好坏是和软件、硬件都相关的,提高精度是要自己的努力的!

qilong73 发表于 2013-10-30 15:10:09

我在2812上是采用AD补偿,然后再加程序中算法改进,不是说28335的AD基准源稳定度比2812的好很多的

My_Cheeses 发表于 2013-11-3 11:08:58

正在研究28335内部AD的路过

luotyqqcc 发表于 2013-11-26 12:47:54

我用的是外部的基准电压,REF3120输出2.048V,感觉还不错,没有楼主那么大的偏差!

Uplate 发表于 2013-11-28 15:46:53

我们也是用内部ADC,外部加基础

lidar 发表于 2013-11-28 21:36:34

阿豪博士 发表于 2013-9-30 09:21
个人认为自带ADC不能作为检测ADC,尤其是电力电子或者关键的数据。最好还是扩展ADI公司的芯片之类的比较好 ...

以前做变流器里面全都用的是DSP自带的ADC

tianyaxtutianya 发表于 2014-3-17 16:58:34

lidar 发表于 2013-11-28 21:36
以前做变流器里面全都用的是DSP自带的ADC

楼上ADC采样的值波动如何,是否出现数据不停跳变的情况,如果有跳变,跳变都幅度有多大?

tianyaxtutianya 发表于 2014-3-17 16:59:40

luotyqqcc 发表于 2013-11-26 12:47
我用的是外部的基准电压,REF3120输出2.048V,感觉还不错,没有楼主那么大的偏差! ...

一开始我采用的也是外部基准电压的方式,能不能晒一下你配置为外部基准电压的ADC初始化程序,我配置了,发现还是不成功

tianyaxtutianya 发表于 2014-3-17 17:00:59

zhandouji 发表于 2013-10-18 09:03
我们就是用2812和28335做电力电子产品,用的就是内部AD,精度最好时可以到0.1%,客户都没有什么疑问!我 ...

能否给一些意见,比如硬件上有哪些方法可以用来提升精度;软件上有哪些方法可以用来提升精度?

wangfei1956 发表于 2014-3-23 22:59:26

同问,我在用2812的片上ADC,片上基准,发现采样精度也是不怎样,有什么好的解决方法

竹风xu 发表于 2014-7-16 13:30:09

mark            

imawolfking 发表于 2014-10-26 11:12:41

电路没做好,电容大了

tianyaxtutianya 发表于 2014-10-27 11:58:12

imawolfking 发表于 2014-10-26 11:12
电路没做好,电容大了

能否再详细一点,是说我们的采样电路上的电容过大嘛,采样电路采用了一级跟随器,再电阻分压,再过一级放大电路,接到了ADC的采样口,采样口都采用了稳压二极管稳压

cainizi 发表于 2014-10-27 12:02:19

单点接地,地线在ADC附近连接

powerk6 发表于 2014-10-29 00:22:31

看看,学习学习

fengyunyu 发表于 2014-10-29 06:50:58

有二三十mv的偏差,有点大。

mdd 发表于 2014-10-29 09:10:45

ad采样口加稳压二极管有什么作用?

yuguoliang 发表于 2014-10-29 09:34:51

应用过2812,2808,28335,都是用的内部基准,就2812精度差点,其它精度都还可以,就12位的AD,实际精度也就在10.5位左右,一般用在精度要求在0.2-0.5%的场合,楼主应当把加标准量的设备,以及设计的电路图及PCB布线发上来
在应用中没有发现过有这样大的漂移,AD采样值在正负10-15个值漂动的情况遇到过,但是漂动楼主这样大的情况还没有遇见。

yuguoliang 发表于 2014-10-29 09:47:44

刚看了一下贴子,楼主把稳压二极管去掉再试试,之前用稳压二极管做限幅,结果稳压二极管漏电流很大,受温度、电压影响都很大,而且变化是非线性的。我们现在限幅都是采用二个二极管,对地、对电源进行限幅。
另外楼主外围还有那么多电路,前面运放的零漂,失调,温漂都累加进来了,要测AD的精度,就直接在AD输入加一级RC直接加量。
布板的话,我们一般是四层板,DSP下面绝对不把模拟量和数字地分开,DSP下面就一块整地,出了DSP再分开,以前做过两个地完全分开,通过磁珠一点连接,后来发现直接在DSP下面直接连接比加磁珠效果要好。

iwqt1983 发表于 2014-10-29 12:01:02

0.1%只是特殊情况,一般做不到的,不要拿特殊来代替普通.内部做一般的控制还是可以的,不能期望太高.

tianyaxtutianya 发表于 2014-10-30 14:29:04

yuguoliang 发表于 2014-10-29 09:34
应用过2812,2808,28335,都是用的内部基准,就2812精度差点,其它精度都还可以,就12位的AD,实际精度也就 ...

楼上可遇到过整体基准偏高或者偏低的现象,之前测试了很长时间都没有出现过,现在发现AD采用的值比实际电压高出了0.05V左右,严重的影响了我的正常计算调节

tianyaxtutianya 发表于 2014-10-30 15:38:41

yuguoliang 发表于 2014-10-29 09:47
刚看了一下贴子,楼主把稳压二极管去掉再试试,之前用稳压二极管做限幅,结果稳压二极管漏电流很大,受温度 ...

我们也是四层板,接入AD口的也是采用了两个二极管对地对电源进行限幅,也是铺地了,是不是因为我们的整个电路板采用的是开关电源供电,开关电源的纹波过大造成的。

yuguoliang 发表于 2014-10-31 12:36:45

tianyaxtutianya 发表于 2014-10-30 14:29
楼上可遇到过整体基准偏高或者偏低的现象,之前测试了很长时间都没有出现过,现在发现AD采用的值比实际电 ...

基准源的初始精度我们是不用考虑的,只考虑基准的漂移,因为软件后面的校准会把初始精度忽略掉,我们只关心二个点,当前所加的量与对应的AD采样值,线性过零且精度要求不太高的,采用一点校准,线性但零点不重合的采用二点校准,精度要求高的采用分段校准。其它中间量在设计硬件时就计算好了,保证不超量又有最大分辨率就行了。所以我们的硬件只考虑漂移量对精度的影响,如温漂、失调等,初始精度对精度没有任何影响(当然是在正常范围内),如电阻,只要温漂小,阻值偏差5%也没有影响。

yuguoliang 发表于 2014-10-31 12:40:03

tianyaxtutianya 发表于 2014-10-30 15:38
我们也是四层板,接入AD口的也是采用了两个二极管对地对电源进行限幅,也是铺地了,是不是因为我们的整个 ...

我们同样是开关电源供电,芯片级再用LDO稳压的,直流信号采用过采样,这点扰动基本没影响,交流采用用傅立叶,频响之外的基本被滤除

tianyaxtutianya 发表于 2014-11-26 14:57:28

luotyqqcc 发表于 2013-11-26 12:47
我用的是外部的基准电压,REF3120输出2.048V,感觉还不错,没有楼主那么大的偏差! ...

楼上能否将外部基准的设置程序发给我一份参考下,我的设置的程序如下,但是AD转换的数据还是按照内部基准设置的,大侠帮忙分析下!


void AdcModeSet(void)
{
   InitAdc();      // For this example, init the ADC
   
   //设置ADC时钟
   AdcRegs.ADCTRL1.bit.ACQ_PS = ADC_SHCLK;
   AdcRegs.ADCTRL3.bit.ADCCLKPS = ADC_CKPS;
   
   AdcRegs.ADCTRL1.bit.SEQ_CASC = 1;         //采用级联方式
   AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 0x1;   //使能INT FLAG SEQ1的中断请求
   AdcRegs.ADCTRL2.bit.RST_SEQ1 = 0x01;      //复位SEQ1为初始状态

   //AdcRegs.ADCREFSEL.bit.REF_SEL = 0x00;       //设置为内部基准电压
   AdcRegs.ADCREFSEL.bit.REF_SEL = 0x1;       // 选择外部参考电压2.048
   
   AdcRegs.ADCTRL3.all = 0x00E0;      // Power up bandgap/reference/ADC circuits
   delay_us(500);                     // Delay before converting ADC channels
   
   AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0;      //选择采样通道
   AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 0x1;
   AdcRegs.ADCCHSELSEQ1.bit.CONV02 = 0x2;
   AdcRegs.ADCCHSELSEQ1.bit.CONV03 = 0x3;
   
   AdcRegs.ADCMAXCONV.bit.MAX_CONV1 = 3;   // Set up ADC to perform 4 conversions for every SOC

   
}
页: [1]
查看完整版本: DSP28335 ADC采样的线性度不好