1. 引言
随着工业化时代的发展,三维力传感器 [1] 作为能测量空间内三个维度作用力的传感器被广泛运用,例如柔性装配 [2] 、机器人恒力打磨 [3] 、航空航天领域的机械臂辅助抓取和对接 [4] 等等。但三维力传感器本身会带有热噪声、受到外部电磁干扰 [5] 和及维间耦合 [6] 的原因,使得三维力传感器在测量的过程中出现误差,当误差过大时,会使得力信息无0法使用,进而使得任务失败。
针对三维力传感器的降噪,孙正宇 [7] 等采用了滑动平均滤波算法对力传感器信号进行平滑处理,虽然能降低高点和低点噪声,但却无法实现力传感器信号高精度拟合,与力传感器的原始信号有着较大误差。何飞 [8] 等使用Kalman滤波来补偿噪声模型误差,但是滤波之后的信号平滑性较差。周启帆 [9] 等采用自适应噪声协方差调整法来跟踪力传感器的噪声变化,但未考虑到新息方差变化的影响。
上述研究中,均未考虑三维力传感器的维间耦合对信号精度的影响,此外也未考虑力传感器的系统噪声和观测噪声协方差对滤波效果的影响,基于上述原因,本文提出了基于混合滤波算法的三维力传感器信号处理方法,即先采用最小二乘法完成三维力传感器的解耦,得出输出信号与作用力间的映射关系,再用Sage-Husa自适应滤波算法对信号进行滤波,提高对力传感器的输出信号真实值的拟合度,最终数据经过加权滑动滤波对数据进行二次处理,抑制高频噪声,提高输出信号的平滑度。
2. 三维力传感器系统模型
力传感器可以根据测量原理不同分为:压电式,电容式,电阻式等等,其中电阻式力传感器因为其价格低廉,精度高被广泛应用。因此本文也采用电阻式力传感器,其由上环、测力梁应变计和下环构成如图1所示,应变计紧紧贴在测力梁表面,当上环和下环受到相对外力时,测力梁与应变计产生相应的应变,测力计将应变转换为相应的电阻变化,然后通过惠斯登电桥电路将电阻变化转化为三维差分电压信号输出,输出的单端信号经过放大器放大,通过模拟量模块输送到上位机。
Figure 1. Internal structure of three-dimensional force sensor
图1. 三维力传感器内部结构
2.1. 三维力传感器耦合模型
三维力传感器能同时测量笛卡尔空间三个方向上的外作用力,其测量原理为:当三维力传感器受到了外作用力,外作用力会使三维力传感器内部的测力梁应变计发生变形,进而改变应变计的电阻阻值,通过惠斯登电桥电路将阻值转化为输出电压信号。为简化测力计应变梁的结构,将测力计应变梁设计为整体结构,但正是由于这种设计,使得输出电压信号不同方向间存在耦合,这极大影响了力传感器的测量精度,三维力传感器的耦合模型如图2所示。
Figure 2. Coupling mapping relationship of three-dimensional force sensor
图2. 三维力传感器耦合映射关系
图2所示的三维力传感器耦合关系可用式(1)描述:
(1)
式(1)中,
表示施加在三维力传感器上的作用力,
分别为三维力传感器在
方向上的分力;
表示当三维力传感器受到负载时,应变片的应变,
分别为
方向上的应变;
为3 × 3的耦合矩阵。
根据惠斯登电桥电路测量原理可知,三维力传感器输出的电压信号与测力梁应变计应变满足线性关系,因此输出的电压信号可用式(2)计算。
(2)
联立式(1)和式(2),可得力传感器输出的电压信号与作用力之间的关系,如式(3)所示
(3)
式(3)中,
表示力传感器输出的电压信号和外作用力之间的耦合矩阵。
2.2. 基于最小二乘法求解耦合矩阵
从式(3)可得输出信号与外作用力之间满足线性关系,在解决回归方程求解问题,通常采用最小二乘法、局部加权线性回归、多项式回归等方法。最小二乘法有着计算复杂度低、对于小样本数据集计算速度快等优点。因此本章采用最小二乘法来求解耦合矩阵,其原理是通过样本点与拟合曲线的误差平方和最小化,从而得到最优的拟合效果。力传感器的标定实验通过施加多组不同的负载,得到电压输出信号数据,因此在使用最小二乘法时需将式(3)改写为如下形式:
(4)
式(4),
。
根据式(4),定义最小化残差损失函数
,最小化误差
如下所示:
(5)
令
,式(5)是典型的极值问题,因此当其满足式(6)即可成立。
(6)
根据式(6),即可得出力传感器的耦合矩阵
。
3. 基于混合滤波算法的三维力传感器噪声信号处理
3.1. 三维力传感器系统模型
一维力传感器工作原理如图3所示,根据三维力传感器测量原理,可将力传感器弹性体和放大电路等效为一阶惯性环节,将力传感器的采样环节等效为零阶保持器。
Figure 3. One-dimensional force sensor system model
图3.一维力传感器系统模型
在三维力传感器正常工作期间满足如下关系:1) 三维力传感器的弹性体所受的应力在屈服极限之内,并且弹性体的应变与应力满足线性变换关系。2) 三维力传感器的耦合矩阵内的元素均为常数。则三维力传感器测量系统的状态方程和观测方程可用式(7)描述:
(7)
式(7),
为三维力传感器的输出信号,
为施加在三维力传感器上的外部作用力,
为三维力传感器最终输出的电压信号,
为3 × 1的系统噪声矩阵,
为3 × 1的测量噪声矩阵,
为的耦合矩阵,其中
、
如下所示:
(8)
(9)
3.2. Sage-Husa自适应滤波算法
Sage-Husa自适应滤波算法 [10] 是一种用于信号处理和滤波的算法,常用于目标跟踪、雷达系统和通信系统等领域。该算法的基本思想是利用递归放大来估计系统状态,同时根据系统的动态特性动态地调整滤波器参数,以实现对信号的最佳的滤波效果。使用Sage-Husa自适应滤波算法首先需要建立状态方程和观观测方程,状态方程的标准形式如式(10)所示:
(10)
式(10)中,
为n时刻的系统状态向量,
为系统状态转移矩阵,
为系统控制变量,
为系统控制矩阵,
为过程噪声向量,
为n时刻的测量值,
为测量系统的参数矩阵,
为测量噪声向量,记过程噪声均值为
,协方差矩阵为
,测量过程噪声均值为
,协方差矩阵分别为
。观测噪声和系统噪声均为独立的高斯白噪声,由式(6)和式(9)可知,
,
,
,
。
有如下性质:
(11)
式(11)中,
为Kronecker函数:
(12)
如图4所示,Sage-Husa自适应滤波算法步骤如下:
步骤1:初始化:初始化系统状态的估计值和协方差矩阵。
步骤2:预测阶段:根据系统的动态模型,利用前一时刻的状态估计之和系统模型预测当前时刻的状态,并更新协方差矩阵。
步骤3:测量更新阶段:接收到新的测量值后,计算测量残差(预测值与测量值之间的差值),然后根据残差和测量噪声的协方差矩阵,计算卡尔曼增益。利用卡尔曼增益将预测的状态估计值与测量残差相结合,得到新的状态估计值,并更新协方差矩阵。
步骤4:重复步骤2和步骤3,连续对信号进行滤波和状态估计。
Figure4. Sage-Husa adaptive filtering algorithm
图4. Sage-Husa自适应滤波算法
系统噪声可用下式来进行估计:
(13)
式(13)中,
为遗忘因子,
为加权系数,
为系程噪声预测均值,
为过程噪声协方差预测矩阵,
为观测噪声预测均值,
为观测噪声协方差预测矩阵。
3.3. 滑动平均值滤波
滑动平均值滤波 [11] 是一种有限脉冲响应的滤波算法,在处理时域信号有较好的滤波效果,经过滑动平均值滤波的数据会变得更加平滑,该算法在连续时间内统计K个数据样本,并对统计数据样本进行平均处理,生成输出结果。滑动平均值滤波表达式如式(13)所示:
(14)
式(14)中,
为经过滑动平均处理后的输出数据,
为输入数据,K为滑动平均滤波算法的倍数。
3.4. 基于混合滤波算法的三维力传感器信号处理
结合Sage-Husa滤波算法和滑动平均值滤波,本文提出了一种基于Sage-Husa滤波算法和滑动平均值滤波的混合滤波算法,并利用混合滤波算法的实现三维力传感器信号处理,其流程如图5所示,其详细步骤如下:
步骤1:通过设计解耦实验,在三维力传感器标定平台上施加不同规格的标准砝码,收集实验数据,利用最小二乘法完成三维力传感器的解耦,得到三维力传感器的耦合矩阵。
步骤2:利用耦合矩阵对三维力传感器的输出信号完成解耦,基于Sage-Husa滤波算法完成三维力传感器的噪声处理。
步骤3:将降噪后的三维力传感器输出信号进行滑动平均处理,完成三维力传感器输出信号的平滑处理。
步骤4:输出三维力传感器的最终信号输出。
Figure 5. Three-dimensional force sensor signal processing based on hybrid filtering algorithm
图5. 基于混合滤波算法的三维力传感器信号处理
4. 实验分析
4.1. 三维力传感器精度评价指标
三维力传感器的精度可以用I类误差(静态非线性率)和II类误差(静态耦合率)来评价,I类误差和II类误差计算如式(30)和(31)所示:
(15)
(16)
式(14)和(15)中,
为在方向i上负载实测值与理论值之差的最大值,
为在没有施加负载时三维力传感器测量最大值,
为三维力传感器在方向i上的量程最大值。
4.2. 三维力传感器解耦实验
实验采用三维力传感器为合肥力智LZ-SW96/80,三维力传感器的X、Y方向的量程为0~5000 N,Z
Figure 6. Three-dimensional force sensor calibration experiment
图6. 三维力传感器标定实验
方向的量程为8000 N,一阶固有频率为2000 Hz;数据采集为卡阿尔泰USB3203N,其采样频率最高为500 kHz,具有单端10路的输入通道,12 bit的ADC采样率;采用YWSMPS的S-50-5电源,其可提供5 V,10 A的供电;100 kg、50 kg、20 kg、10 kg和5 kg砝码若干,力传感器标定台和上位机,标定实验如图6所示。
根据图6所示的标定实验结果,利用本文提出的最小二乘法就算出力传感器的耦合矩阵如下所示:
(17)
力传感器解耦精度如表1所示:
Table 1. Decoupling accuracy of force sensor
表1. 力传感器解耦精度
从表1可得,利用最小二乘法进行解耦,可有效提高三维力传感器的测量精度,经过解耦后的三维力传感器的I类误差最大值从0.947%降到了0.283%,II类误差最大值从4.735降到了1.119。
4.3. 三维力传感器降噪实验
经过三维力传感器解耦试验后,观察基于Sage-Husa自适应滤波算法的三维力传感器降噪效果,在三维力传感器z向上施加1958 N的作用力,分别采集未经处理的力传感器输出信号和经过降噪后的三维力传感器的输出信号进行对比,实验结果如图7所示。
Figure 7. Filtering force sensor noise reduction effect based on Sage-Husa adaptive algorithm
图7. 基于Sage-Husa自适应算法滤波力传感器降噪效果
从图7可以看出,经过Sage-Husa自适应算法滤波后的力传感器输出信号相对于未处理的力传感器输出信号,其噪声更小,测量值更接近真实值,由噪声产生的测量误差从最大的0.63 N降低到了0.21 N。在此基础上,为本文提出了基于混合滤波的三维力传感器信号处理效果,将10~40 s经过Sage-Husa自适应滤波处理过的数据进行滑动平均滤波,其效果如图8所示。
Figure 8. Noise reduction of force sensor based on hybrid filtering
图8. 基于混合滤波的力传感器降噪
从图8可以看出,经过混合滤波的力传感器输出信号已经非常接近真实值,最大误差为0.12 N,并且输出信号较为平滑,这进一步降低了力传感器的测量误差。这验证了本文提出的基于混合算法的三维力传感器的信号处理的有效性。
5. 结论
针对三维力传感器存在的维间耦合问题和噪声干扰问题,本文提出了基于最小二乘法的三维力传感器解耦算法,降低因维间耦合而导致的三维力传感器信号误差较大的问题。除此之外,本文还提出了基于Sage-Husa自适应滤波算法和滑动平均算法的混合滤波算法,首先利用Sage-Husa自适应滤波算法对三维力传感器的输出信号进行初次滤波并对噪声进行实时估计,降低测量噪声和系统噪声对测量的影响,提高测量精度;随后,采用滑动平均值滤波算法对初次滤波后的数据再次处理,使得输出数据变得更加平滑。实验证明,本文提出的方法能有效抑制力传感器的系统噪声和观测噪声,有一定的工程应用价值。