宁显斌
摘 要:在传感器实验中,常常需要由一些离散的实验数据组拟合出该传感器的输入输出特性曲线。线性或非线性传感器实验曲线的拟合,如采用简单的拟合方法来处理,会使得拟合出来的曲线与实验曲线的误差不理想,该文采用最小二乘法对实验数据进行拟合。以MATLAB对传感器输入输出的实验数据进行处理,应用最小二乘法进行曲线拟合,选择合适的拟合函数使得其误差最小。
关键词:最小二乘法 传感器实验 曲线拟合
中图分类号:TP212 文献标识码:A 文章编号:1674-098X(2016)11(c)-0014-02
在传感器产品试验中,往往需要根据实验数据,得出输入输出之间的关系,即输入与输出之间的标定曲线。对于线性传感器,其输入输出特性曲线接近直线;非线性传感器,其输入输出特性曲线通常呈现不同的非线性。不论线性或非线性传感器,根据约定的非线性度,总能在试验数据中找到某一区域,使得其输入输出特性呈线性。而某些传感器在應用过程中,需要求得其完整的标定曲线。因此,根据试验所得数据进行传感器特性的标定成为了产品试验的必要步骤。最小二乘法正好可以很好地处理实验数据,并根据实验数据拟合出输入输出特性曲线。该方法的主要优点在于误差最小。
1 最小二乘法的原理
图1为实验数据折线图与拟合曲线。已知实验数据(Xi,Yi)(i=1,2,…,n),设需拟合的直线为y=f(x)=kx+b,需确定的直线方程参数为k和b。根据最小二乘法,构建函数Φ(k,b),使得拟合出来的直线与实验数据的误差最小。即
2 MATLAB中进行曲线拟合
对一组数据进行建模的最简单方法是将其作为直线来看待。而在实验过程中,通常实验结果就是这样的一组离散的数值,对这样的数组,用直线对其进行建模,称为实验数据的线性回归。在MATLAB中有内置的拟合函数,可以用来对经验数据进行建模。这种建模仅在所收集的数据范围内是可行的。如果参数y随x的变化规律是未知的,那么,数据拟合方程就不能预测所收集数据范围以外的情况。线性回归在MATLAB中用函数polyfit实现,该函数要求3个输入内容:x值矢量、y值矢量和一个用来表示拟合多项式结束的整数。
3 MATLAB确定实验曲线
当实验数据在有效量程范围内呈现出明显的非线性,即该传感器为非线性传感器时,需要确定该传感器的输入输出特性曲线,此时应用一阶线性回归的办法来拟合曲线是明显不合适的。因此可以寻求多项式回归进行拟合。
衡量拟合程度的效果用以下方法:
其中为样本值与拟合曲线在该样本点的函数值之差。Δ称为误差的平方和,该值越小,则实验样本值与拟合曲线的重合性越好。以下是光纤位移传感器的实验数据处理。
(1)四阶回归(如图2)。
误差的平方和为:3.0811e+004
(2)五阶回归(如图3)。
误差的平方和为:2.4989e+004。
由以上拟合曲线的误差平方和的情况看,曲线的多项式回归呈现这样的趋势:方程中的项数越多,拟合效果越好,至少实际样本数据点和预测数据点之间的距离减小。
4 结论
根据以上实验数据的处理过程,发现利用多项式回归进行曲线的拟合,多项式的阶数越高则其误差越小。最小二乘法是能使拟合出来的曲线与实验数据的误差最小的一种实用的方法。总结以上得到曲线拟合的基本方法。
(1)确定实验曲线的特性,如直线特性或非直线特性。
(2)确定试验曲线对应的函数特性,如幂函数或指数函数。
(3)选用合适的曲线拟合工具,如MATLAB。
(4)对比拟合结果,根据拟合的性能指标最终确定拟合曲线的函数解析式。
参考文献
[1]Holly Moore.MATLAB实用教程[M].高会生,刘童娜,李聪聪,译.北京:电子工业出版社,2013.
[2]唐文彦.传感器[M].北京:机械工业出版社,2006.
[3]张玉莲.传感器与自动检测技术[M].北京:机械工业出版社,2012.