1.一种基于卡尔曼滤波的TMR磁编码器系统,包括稳压电源模块、信号发生单元、ADC模块、滤波电路模块、信号处理模块、信号输出模块;
稳压电源模块与信号发生单元、ADC模块、滤波电路模块、信号处理模块及信号输出模块分别相连,为其提供低纹波稳压电源,减少电源部分引入的噪声信号;信号发生单元采用TMR传感芯片与单磁极对磁铁的组合,ADC模块与信号发生单元连接,采集其输出波形信号,并转换为数字信号,便于后续信号处理模块处理;滤波电路模块对ADC模块采集到的数字信号进行校准,采用数字滤波的方式,减少数字信号中存在的噪声信号;信号处理模块将滤波后的数字信号进行处理,采用卡尔曼滤波算法,并将处理后的数据输出为脉冲方波信号;信号输出模块对接现有磁编码器的接口模块;
信号处理模块对滤波后的数字信号进行处理的具体方法为:通过滤波后的数字信号,得到ADC值有两种状态,即等效位置p和等效采集速度v,通过高斯分布建模,在k时刻需要两条信息:最优估计 和其协方差矩阵Pk;
使用矩阵来预测下一时刻ADC的等效位置和等效采样速度,将其等效为线性模型,引入基本运动学公式,即
pk=pk‑1+Δtvk‑1vk=vk‑1
其中pk‑1表示上一时刻ADC值的等效位置,vk‑1表示上一时刻ADC的等效速度;
将其化为矩阵的形式
其中矩阵Fk为预测步骤,且满足以下等式:综合上述方程,得到以下方程
在预测过程中仍然会存在一些不确定性,所以加入新的协方差矩阵Qk,得到预测步骤的完整表达式:
以上两个公式为系统的预测估计;
接下来进行系统更新方程式的推导,对ADC采集的数字信号进行建模,套用上面预测步骤的完整表达式,使用矩阵Hk,找出ADC采集数字信号的分布;
其中 表示ADC采集数字信号预测的均值,∑0表示ADC采集数字信号预测值的协方差;
由于ADC采集电路也存在一部分噪声,故将这种不确定性协方差定义为矩阵Rk,其分布的平均值为
∑1=Rk
其中 表示ADC采集数字信号实际的均值,∑1表示ADC采集数字信号实际值的协方差;
现在有两个高斯分布,一个围绕ADC转换数字信号预测的平均值,一个围绕实际ADC转换数字信号的读数,将这两个高斯分布相乘,得到一个新的高斯分布;接下来将结合高斯运算,推导一个可以从上一时刻状态参数获取现时刻状态参数的公式;
2
在一维中,具有方差σ和均值μ的一维高斯钟形曲线定义为接下来将两个高斯曲线相乘,得到新的高斯曲线;
N(x,μ0,σ0)·N(x,μ1,σ1)=N(x,μ′,σ′)将定义函数带入上述公式,并进行归一化,可知道μ′=μ0+K(μ1‑μ0)2
其中μ′为新的均值,σ′为新的方差,K为卡尔曼增益,并满足下列等式;
化为矩阵的形式,设∑为高斯分布的协方差矩阵,为沿每个轴的均值,则∑′=∑0‑K∑0
‑1
K=∑0(∑0+∑1)
至此,先前得到的两个高斯分布如下:预测值:
观测值:
将这两个分布代入一维高斯曲线定义公式相乘,得到新得高斯分布;
通过化简可得到下列公式
P′k=Pk‑K′HkPk
其中, 为最新的最佳估计,将其连同最新协方差P′k一起反馈到下一次的预测中,通过调节新的卡尔曼增益K′来确定其输出的值;以上三个公式为系统的更新方程式,将此迭代到上面预测步骤的完整方程式中,最终形成完整的卡尔曼滤波更新过程。
2.根据权利要求1所述的一种基于卡尔曼滤波的TMR磁编码器系统,其特征在于:在进行卡尔曼滤波之前采用巴特沃斯滤波器进行滤波,消除信号中高频干扰。
3.根据权利要求1所述的一种基于卡尔曼滤波的TMR磁编码器系统,其特征在于:在进行卡尔曼滤波之前,通过区间判断,将波形分为8个区间,分别为(0,45)∪(45,90)∪(90,
135)∪(135,180)∪(180,225)∪(225,270)∪(270,315)∪(315,0)。