|
摘要:数字信号处理器TMS320F2812的片上ADC模块的转化结果往往存在较大误差,最大误差甚至会高达9%,如果这样直接在实际工程中应用ADC,必然造成控制精度降低。对此提出了一种改进的校正方法,即用最小二乘和一元线性回归的思想,精确拟合出ADC的输入/输出特性曲线,并以此作为校正的基准在DSP上进行了验证,实验表明,此方法可以将误差提高到1%以内,适合于对控制要求较高的场合。
0 引言
TI公司的C2000系列DSP以其出色的性能、丰富的片上外设在工业自动化、电机控制、工业生产领域得到广泛应用。TMS320F2812是C2000系列中性能出色的一个,F2812片上集成了12位16通道的数/模转化器,理论上精度可以达到0.1%以上。但实际上由于增益误差(t),以利用抵偿性减小随机误差的影响。
高斯认为,根据观测数据求取未知参数时,未知参数最合适数值应是这样的数值,即选出使得模型输出与观测数据尽可能接近的参数估计,接近程度用模型输出和数据之差的平方和来度量。这就是最小二乘的基本思想。最小二乘法原理指出,最精确的值应在使残余误差平方和最小的条件下求得。
2.2 一元线性回归原理
一元线性回归是处理2个变量之间的关系,即两个变量x和y之间若存在线性关系,则通过试验,分析所得数据,找出两者之间函数曲线。也就是工程上常遇到的直线拟合问题。
3 实验方案与结果分析
3.1 实验方案
实验利用F2812开发板和DSP调试软件CCS2.0完成。用稳定信号源产生6个标准电压,分别为0.2 V,0.5 V,1.0 V,1.5 V,2.0 V,2.5 V,输入通道选为A0,A1,A2,B0,B1,B2。ADCL0引脚接电路板的模拟地,与模拟输入引脚相连的信号线应该避开数字信号线,以减少数字信号对模拟信号的干扰。输入电路如图2所示。
![]()
图2 输入电路
3.2 校正算法
设ADC模块的输入/输出曲线为y=a+bx,输入电压值为xi,对应的转化输出值为yi。由最小二乘估计算法可得方程:
![]()
解此方程组即可得到a,b的估计值:
![]()
式中,
![]()
这样这样便得到了最佳的拟合曲线(回归方程):
![]()
于是可以用此方程进行转化值校正。
3.3 实验数据处理
将实验获得的6组数据利用上述最小二乘法和线性回归方法进行处理,得到a,6的最小二乘估计值分别为,于是回归方程为:y=0.003 612+1.039 091x。以回归方程为标准,由x=(y-0.003 612)/1.039 091可以计算出校正后的转化值,并与未转化的值进行比较,结果如表1所示。
![]()
在Excel中,绘制出未校正输入/输出分布点,和回归曲线,如图3所示。
![]()
图3 回归曲线示意图
3.4 结果分析
由表1和图3可以看出,如果不采取校正措施,则F2812的ADC模块会存在5%左右的相对误差;而采用提出的校正方法,可以将误差下降到1%以下。这就大大提高了A/D转化的精度,对于对控制要求精度很高的场合,牺牲ADC模块的6个通道,得到比较高的转化精度,还是非常必要而且值得的。
4 结语
在此提出一种采用最小二乘法和线性回归校正DSP的ADC模块的方法,实验证明此方法可以大大提高转化精度,有效弥补了DSP中AD转化精度不高的缺陷。此方法硬件电路简单,成本代价较低,具有很高的推广和利用价值。
|
|