微机电系统(MICro—EleCTRo—Mechanical SystEMS,MEMS)陀螺仪和MEMS加速度计在两轮平衡车姿态测量中存在扰动和噪声,引起姿态角度测量误差。通过对陀螺仪和加速度计输入信号进行滑动扣除均值方法来抑制直流分量,利用滑动滤波算法抑制加速度计高频噪声,引入互补滤波算法将预处理后的陀螺仪和加速度计信号进行融合,得到更加准确稳定的角度测量值,分析了融合算法中加权因子与滤波频率特征之间的关系。该方法应用到两轮平衡车的运行姿态角度控制中,提高了对姿态角度测量的精度。
两轮平衡车具有广阔的应用前景,使其成为了当前研究的热点。其中,两轮平衡车的姿态角度测量是研究的关键问题之一。姿态角度测量是两轮平衡车运行和控制实现的前提。姿态角度测量的精度和速度,将直接影响两轮平衡车控制算法的稳定性和可靠性。随着惯性测量元件的微型化与微处理器运算能力的提高,两轮平衡车姿态测量普遍采用低成本的惯性测量组合元件(Inertal Measurement Uint,IMU),结合微处理器数据处理算法实现高精度的姿态测量。IMU主要由低成本的MEMS陀螺仪和三轴加速度计组成。MEMS陀螺仪有自主性好、功耗低、机电性能好易集成等优点。但是,MEMS陀螺仪具有温度漂移特性,其测量误差会随着时间的累加而不断的累积,从而影响测量精度。加速度计会受到平衡车振动的影响,混叠额外的振动量干扰。所以单一的传感器测量难以得到精确的姿态角度。需采用多传感器信号融合的方法,来获得准确的姿态角度量。
多传感器数据的融合方法有神经网络、小波分析、卡尔曼滤波等姿态解算算法,但这些方法建立稳定可靠的更新方程通常具有较高的阶数,且计算量大,不适合于低运算能力系统的实时计算。相比以上方法,互补滤波算法对处理器运算速度要求不高,且简单可靠。本文基于互补滤波算法,设计了两轮平衡车姿态角度测量电路与数据处理算法,设计了信号滤波预处理,利用互补滤波算法融合两种传感器数据,分析了互补滤波算法中关键参数的计算方法。并将此方法应用于两轮平衡车角度测量,进行了验证性试验,给出了实验测试数据。
1 姿态角度测量原理
沿平衡车3个机体轴即直立时正前、正右、正上方向定义为x、y、z三轴参考坐标系。所受的3轴重力加速度分量定义为gx、gy、gz。假设两轮平衡车处于静止或匀速运行的状态。得到重力加速度与平衡车姿态角度的关系如式1所示:
若使用陀螺仪来测量平衡车姿态角度,设陀螺仪测量载体相对惯性坐标系的x、y、z三轴旋转角速度分别为ωx、ωy、ωz。并定义O时刻平衡车直立静止。可得到俯仰角θ2和横滚角φ2估计值与ωx、ωy之间的关系如式3所示:
在实际应用中,由于平衡车机体运行时存在运动加速度、测量噪声,以及陀螺仪本身存在漂移等因素的影响,式(2)、(3)姿态角度测量方法失效,为了准确的获得姿态角度。可将以上的2种姿态角度测量得到的姿态角度信息相融合。
2 惯性组合测量电路
该系统中惯性组合测量电路如图1所示,由加速度计MMA7361、陀螺仪ENC-03及放大电路组成。实现对加速度计和陀螺仪测得信号进行放大。加速度计和陀螺仪信号经放大,分别由angle引脚和gyro引脚输出后,信号通过AD采样转换为数字信号,传递到微控制器中,再利用互补滤波算法,得到姿态角度。
3 陀螺仪漂移和加速度传感器数据的预处理
MEMS陀螺仪的漂移误差由常值漂移、随机漂移组成,漂移信号不符合平稳、正态、零均值的时间序列特征。图2为陀螺仪采集到的一段数据,对其积分后得到的俯仰角θ2,表现为误差不断累加,逐渐增大。通过式(4)所示算法进行均值扣除。
其中,ωgy(n)为第n次的陀螺仪角速度值;ω(n)为第n次去除均值后的角速度值;N为缓冲数据个数。
去掉陀螺仪信号的均值(即常值分量)后,这样陀螺仪的漂移只含有随机漂移,此时的陀螺仪信号将作为互补滤波融合的输入。
加速度计受机体振动的影响,对其采用滑动均值滤波的方法对加速度传感器原始数据进行处理,滤波原理如式(5)所示:
其中,θoCC(n)为加速度计第n次测得的角度值;θ1(n)为第n次滑动滤波后的角度值:N为滑动窗阶数。图3给出了滑动滤波前后的加速度计测得的角度值,从图3中可以看出,滑动滤波算法对高频扰动具有滤除效果。
4 基于互补滤波器的姿态角度测量设计
陀螺仪动态响应特性优良,解算姿态角时,由于陀螺仪低频漂移的影响,积分后低频扰动会产生较大误差;加速度计解算的姿态角会受到平衡车运行中机体高频振动的影响,输出角度中携带较大分量的高频干扰。二者在频域上具有互补特性,采用互补滤波器对这两种传感器数据融合,可提高姿态角度测量的精度和动态响应的性能。
互补滤波器的基本原理图如图4所示。
其中θ为实际的角度值,ω为陀螺仪测量的角速度,θ为互补滤波算法后估计的角度值,加速度计测量中引入的高频噪声n1,陀螺仪测量中引入的低频噪声n2,用低通滤波器G1(s)消除加速度计中的高频噪声n1,用高通滤波器G2(s)消除陀螺仪中的低频噪声n2。两个滤波器的传递函数,被设计为(6)、(7)所示,图4结构可化简为图5结构。
选用的滤波传递函数需满足G1(s)+G2(s)=1,由加速度计得到θ1经低通滤波器和陀螺仪得到θ2经高通滤波器后的数据融合为角度估计值