蒸汽刷厂家
免费服务热线

Free service

hotline

010-00000000
蒸汽刷厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

基于FPGA的Kalman滤波器的设计

发布时间:2020-07-21 18:15:46 阅读: 来源:蒸汽刷厂家

摘要:针对电路设计中经常碰到数据的噪声干扰现象,提出了一种Kalman滤波的FPGA实现方法。该方法采用了TI公司的高精度模数转换器ADSl25l以及Altera公司的EPlCl2,首先用卡尔曼滤波算法设计了一个滤波器,然后将该滤波器分解成简单的加、减、乘、除运算。通过基于FPGA平台的硬件与软件的合理设计,成功地实现了数据噪声的滤除设计,并通过实践仿真计算,验证了所实现滤波的有效性。关键词:卡尔曼;FPGA;最小方差估计

本文引用地址: 卡尔曼滤波是一个“Optimal Recursive Data Processing Algorithm(最优化自回归数据处理算法)”,对于解决很大部分的问题,是最优化的,效率最高甚至是最有用的。传统的卡尔曼滤波是在DSP上实现的。但是DSP成本相对较高,而且指令是串行执行的,不能满足有些要求较高的场合。而FPGA由于其硬件结构决定了它的并行处理方式,无论在速度还是实时性都更胜一筹。文中以基于FPGA器件和A/D转换器的数据采集系统为硬件平台,进行了卡尔曼滤波算法设计,详述了基于FPGA的卡尔曼滤波器的设计实现。

1 卡尔曼滤波算法 工程中,为了了解工程对象(滤波中称为系统)的各个物理量(滤波中称为状态)的确切数值,或为了达到对工程对象进行控制的目的,必须利用测量手段对系统的各个状态进行测量。但是,量测值可能仅是系统的部分状态或是部分状态的线性组合,且量测值中有随机误差(常称为量测噪声)。最优估计就是针对上述问题的一种解决方法。它能将仅与部分状态有关的测量进行处理,得出从统计意义上讲误差最小的更多状态的估值。误差最小的标准常称为估计准则,根据不同的估计准则和估计计算方法,有各种不同的最优估计,卡尔曼滤波是一种递推线性最小方差估计的最优估计。 系统的状态方程可设定为

式(3)为系统噪声。设设备的量测噪声为Vk,系统得量测方程为

式中,是利用当前状态预测的结果,是当前状态最优的结果,Pk+1/k是*对应的covariance,Rk是对应的covanance,表示A的转置矩阵,Q是系统过程的covariance。式(1),式(2)就是卡尔曼滤波器5个公式中的前两个,也就是对系统的预测。可以得到将来状态k+l的最优化估算值。 式(9)中I为单位矩阵,对于单模型单测量,I=1。当系统进入k+2状态时,Pk+1就是式(2)的Pk。这样,算法就可以自回归的运算下去。

乌鲁木齐碧莲盛

大连碧莲盛植发医院

沈阳碧莲盛医院