《最新学术讲座卡尔曼滤波器PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新学术讲座卡尔曼滤波器PPT课件.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、学术讲座卡尔曼滤波器学术讲座卡尔曼滤波器贵州 贵阳 花溪 贵州大学 电路与系统研究所背景介绍:背景介绍:Kalman,匈牙利数学家。卡尔曼滤波器源于他的博士论 文和1960年发表的论文A New Approach to Linear Filtering and Prediction Problems(线 性滤波与预测问题的新方法)。贵州 贵阳 花溪 贵州大学 电路与系统研究所贵州 贵阳 花溪 贵州大学 电路与系统研究所贵州 贵阳 花溪 贵州大学 电路与系统研究所贵州 贵阳 花溪 贵州大学 电路与系统研究所贵州 贵阳 花溪 贵州大学 电路与系统研究所贵州 贵阳 花溪 贵州大学 电路与系统研究所贵
2、州 贵阳 花溪 贵州大学 电路与系统研究所 从观测到的信号中估计出状态的估值,从观测到的信号中估计出状态的估值,并且希望估值与状态的真值越小越好,即要并且希望估值与状态的真值越小越好,即要求有:求有:成立;成立;因此存在最优估计问题,这就是卡尔曼因此存在最优估计问题,这就是卡尔曼滤波。滤波。卡尔曼滤波的最优估计需满足以下三个卡尔曼滤波的最优估计需满足以下三个条件:条件:无偏性,即估计值的均值等于状态的无偏性,即估计值的均值等于状态的真值;真值;估计的方差最小;估计的方差最小;实时性。实时性。贵州 贵阳 花溪 贵州大学 电路与系统研究所从以上分析可以看出卡尔曼滤波就是在从以上分析可以看出卡尔曼滤
3、波就是在有随机干扰和噪声的情况下,以线性最小方有随机干扰和噪声的情况下,以线性最小方差估计方法给出状态的最优估计值,卡尔曼差估计方法给出状态的最优估计值,卡尔曼滤波是在统计的意义上给出最接近状态真值滤波是在统计的意义上给出最接近状态真值的估计值。因此卡尔曼滤波在空间技术、测的估计值。因此卡尔曼滤波在空间技术、测轨、导航、拦截与通讯等方面获得了广泛的轨、导航、拦截与通讯等方面获得了广泛的应用。应用。贵州 贵阳 花溪 贵州大学 电路与系统研究所3 3经典控制理论与现代控制理论经典控制理论与现代控制理论 经典控制理论只适应与单输入经典控制理论只适应与单输入单输出单输出的线性定常系统,研究方法是传递函
4、数。传的线性定常系统,研究方法是传递函数。传递函数在本质上是一种频率法,要靠各个频递函数在本质上是一种频率法,要靠各个频率分量描述信号。因此,频率法限制了系统率分量描述信号。因此,频率法限制了系统对整个过程在时间域内进行控制的能力,所对整个过程在时间域内进行控制的能力,所以经典控制理论很难实现实时控制。同时,以经典控制理论很难实现实时控制。同时,经典控制理论也很难实现最优控制。经典控制理论也很难实现最优控制。贵州 贵阳 花溪 贵州大学 电路与系统研究所经典控制系统的组成经典控制系统的组成贵州 贵阳 花溪 贵州大学 电路与系统研究所由于经典控制理论的上述局限性,随着由于经典控制理论的上述局限性,
5、随着科学技术的发展,特别是空间技术和各类高科学技术的发展,特别是空间技术和各类高速飞行器的快速发展,要求控制高速度、高速飞行器的快速发展,要求控制高速度、高精度的受控对象,控制系统更加复杂,要求精度的受控对象,控制系统更加复杂,要求控制理论解决多输入多输出、非线性以及最控制理论解决多输入多输出、非线性以及最优控制等设计问题。这些新的控制要求经典优控制等设计问题。这些新的控制要求经典控制理论是无法解决的。控制理论是无法解决的。贵州 贵阳 花溪 贵州大学 电路与系统研究所现代控制理论是建立在状态空间基础上现代控制理论是建立在状态空间基础上的,它不用传递函数,而是用状态向量方程的,它不用传递函数,而
6、是用状态向量方程作为基本工具,因此可以用来分析多输入作为基本工具,因此可以用来分析多输入多输出、非线性以及时变复杂系统的研究。多输出、非线性以及时变复杂系统的研究。现代控制理论本质上是时域法,信号的描述现代控制理论本质上是时域法,信号的描述和传递都是在时间域进行,所以现代控制理和传递都是在时间域进行,所以现代控制理论具有实现实时控制的能力。由于采用了状论具有实现实时控制的能力。由于采用了状态空间法,现代控制理论有利于设计人员根态空间法,现代控制理论有利于设计人员根据给定的性能指标设计出最优的控制系统。据给定的性能指标设计出最优的控制系统。贵州 贵阳 花溪 贵州大学 电路与系统研究所 卡尔曼滤波
7、控制系统结构图卡尔曼滤波控制系统结构图由于系统的状态由于系统的状态x是不确定的,卡尔曼滤波器的是不确定的,卡尔曼滤波器的任务就是在有随机干扰任务就是在有随机干扰w和噪声和噪声v的情况下给出系统的情况下给出系统状态状态x的最优估算值的最优估算值,它在统计意义下最接近状,它在统计意义下最接近状态的真值态的真值x,从而实现最优控制,从而实现最优控制u()的目的。的目的。贵州 贵阳 花溪 贵州大学 电路与系统研究所 4.4.什么是卡尔曼滤波:什么是卡尔曼滤波:卡尔曼滤波是美国工程师卡尔曼滤波是美国工程师Kalman在线在线性最小方差估计的基础上,提出的在数学结性最小方差估计的基础上,提出的在数学结构上
8、比较简单的而且是最优线性递推滤波方构上比较简单的而且是最优线性递推滤波方法,具有计算量小、存储量低,实时性高的法,具有计算量小、存储量低,实时性高的优点。特别是对经历了初始滤波后的过渡状优点。特别是对经历了初始滤波后的过渡状态,滤波效果非常好。态,滤波效果非常好。贵州 贵阳 花溪 贵州大学 电路与系统研究所卡尔曼滤波是以最小均方误差为估计的卡尔曼滤波是以最小均方误差为估计的最佳准则,来寻求一套递推估计的算法,其最佳准则,来寻求一套递推估计的算法,其基本思想是:采用信号与噪声的状态空间模基本思想是:采用信号与噪声的状态空间模型,利用前一时刻的估计值和现时刻的观测型,利用前一时刻的估计值和现时刻的
9、观测值来更新对状态变量的估计,求出现在时刻值来更新对状态变量的估计,求出现在时刻的估计值。它适合于实时处理和计算机运算。的估计值。它适合于实时处理和计算机运算。贵州 贵阳 花溪 贵州大学 电路与系统研究所卡尔曼滤波的实质是由量测值重构系统卡尔曼滤波的实质是由量测值重构系统的状态向量。它以的状态向量。它以“预测预测实测实测修正修正”的的顺序递推,根据系统的量测值来消除随机干顺序递推,根据系统的量测值来消除随机干扰,再现系统的状态,或根据系统的量测值扰,再现系统的状态,或根据系统的量测值从被污染的系统中恢复系统的本来面目。从被污染的系统中恢复系统的本来面目。贵州 贵阳 花溪 贵州大学 电路与系统研
10、究所卡尔曼滤波特点:卡尔曼滤波特点:卡尔曼滤波是解决状态空间模型估计与卡尔曼滤波是解决状态空间模型估计与预测的有力工具之一,它不需存储历史数据,预测的有力工具之一,它不需存储历史数据,就能够从一系列的不完全以及包含就能够从一系列的不完全以及包含噪声噪声的的测测量量中,估计中,估计动态系统动态系统的状态。卡尔曼滤波是的状态。卡尔曼滤波是一种一种递归递归的估计,即只要获知上一时刻状态的估计,即只要获知上一时刻状态的估计值以及当前状态的观测值就可以计算的估计值以及当前状态的观测值就可以计算出当前状态的估计值,因此不需要记录观测出当前状态的估计值,因此不需要记录观测或者估计的历史信息或者估计的历史信息
11、。贵州 贵阳 花溪 贵州大学 电路与系统研究所卡尔曼滤波器与大多数我们常用的滤波卡尔曼滤波器与大多数我们常用的滤波器不同之处,在于它是一种纯粹的器不同之处,在于它是一种纯粹的时域时域滤波滤波器,不需要像器,不需要像低通滤波器低通滤波器等等频域频域滤波器那样,滤波器那样,需要在频域设计再转换到时域实现。需要在频域设计再转换到时域实现。贵州 贵阳 花溪 贵州大学 电路与系统研究所5.卡尔曼滤波器的软硬件实现卡尔曼滤波器的软硬件实现 目前目前,卡尔曼滤波器已经有很多不同的实卡尔曼滤波器已经有很多不同的实现形式。卡尔曼最初提出的形式现在一般称现形式。卡尔曼最初提出的形式现在一般称为简单卡尔曼滤波器。除
12、此以外为简单卡尔曼滤波器。除此以外,还有施密特还有施密特扩展卡尔曼滤波器扩展卡尔曼滤波器,信息滤波器以及平方根滤信息滤波器以及平方根滤波器。最常见的卡尔曼滤波器是锁相环波器。最常见的卡尔曼滤波器是锁相环,采,采用用FPGA硬件可以实现卡尔曼滤波器。硬件可以实现卡尔曼滤波器。贵州 贵阳 花溪 贵州大学 电路与系统研究所硬件实现:硬件实现:卡尔曼滤波器有良好的滤波效果,卡尔曼滤波器有良好的滤波效果,但由于其计算量大,当采样率高时,一个采样但由于其计算量大,当采样率高时,一个采样周期内难以完成计算,且计算机的字长有限,周期内难以完成计算,且计算机的字长有限,使计算中舍入误差和截断误差积累、传递,造使
13、计算中舍入误差和截断误差积累、传递,造成数值不稳定,因此用成数值不稳定,因此用MCU和和DSP难以实现。难以实现。FPGA可以实现并行计算,它有多个乘法器和可以实现并行计算,它有多个乘法器和累加器并行处理数据,采用累加器并行处理数据,采用FPGA实现的卡尔实现的卡尔曼滤波器,由于输入和输出数据计算同时进行,曼滤波器,由于输入和输出数据计算同时进行,因此可以大大提高滤波速度因此可以大大提高滤波速度。贵州 贵阳 花溪 贵州大学 电路与系统研究所 一一般般,数数字字滤滤波波器器的的FPGA实实现现是是用用VHDL或或VerilogHDL等等硬硬件件描描述述语语言言通通过过编编写写底底层层代代码码实实
14、现现。这这种种编编程程方方式式效效率率低低,难难度度大大。利利用用Altera公公司司FPGA的的DSP开开发发工工具具DSPBuilder设设计计卡卡尔尔曼曼滤滤波波器器,比比基基于于硬硬件件描描述述语语言言的的设设计计,周周期期更更短短,设设计计更更容容易易。贵州 贵阳 花溪 贵州大学 电路与系统研究所 基于现场可编程逻辑门阵列基于现场可编程逻辑门阵列FPGA器件和器件和模数转换器设计的数据采集系统为硬件平台,模数转换器设计的数据采集系统为硬件平台,进行算法设计。基于模块化设计思想,设计进行算法设计。基于模块化设计思想,设计时钟分频模块、时钟分频模块、AD转换芯片的转换芯片的FPGA控制模
15、控制模块和卡尔曼滤波模块。卡尔曼滤波模块采用块和卡尔曼滤波模块。卡尔曼滤波模块采用DSPBuilder设计,转换成硬件描述语言设计,转换成硬件描述语言VHDL后,应用软件后,应用软件Modelsim、QuartusII进进行仿真并完成硬件验证。行仿真并完成硬件验证。贵州 贵阳 花溪 贵州大学 电路与系统研究所软件实现:软件实现:許多物理进程,如路上行驶的車辆、围許多物理进程,如路上行驶的車辆、围绕地球轨道运转的卫星、由绕组电流驱动的绕地球轨道运转的卫星、由绕组电流驱动的电机轴或正弦射頻載波信号,均可用线性系电机轴或正弦射頻載波信号,均可用线性系统來近似。线性系统是指能用如下两个方程统來近似。线
16、性系统是指能用如下两个方程描述的简单进程:描述的简单进程:状态方程:状态方程:输出方程:输出方程:贵州 贵阳 花溪 贵州大学 电路与系统研究所在上述方程中,在上述方程中,A、B和和C均为矩陣,均为矩陣,k是時間系数,是時間系数,x称为系統状态,称为系統状态,u是系統的是系統的已知輸入,已知輸入,y是所測量的輸出。是所測量的輸出。w和和z表示噪表示噪音,其中变量音,其中变量w称为进程噪音,称为进程噪音,z称为測量称为測量噪音,它們都是向量。噪音,它們都是向量。则卡尔曼滤波的算法流程为则卡尔曼滤波的算法流程为:贵州 贵阳 花溪 贵州大学 电路与系统研究所1.预估计预估计X(k)=F(k,k-1)X
17、(k-1)2.计算预估计协方差矩阵计算预估计协方差矩阵3.C(k)=F(k,k-1)C(k)F(k,k-1)+T(k,k-1)Q(k)T(k,k-1)4.Q(k)=U(k)U(k)5.计算卡尔曼增益矩阵计算卡尔曼增益矩阵6.K(k)=C(k)H(k)H(k)C(k)H(k)+R(k)(-1)7.R(k)=N(k)N(k)贵州 贵阳 花溪 贵州大学 电路与系统研究所8.更新估计更新估计9.X(k)=X(k)+K(k)Y(k)-H(k)X(k)10.计算更新后估计协防差矩阵计算更新后估计协防差矩阵11.C(k)=I-K(k)H(k)C(k)I-K(k)H(k)+K(k)R(k)K(k)12.X(k
18、+1)=X(k)13.C(k+1)=C(k)14.重复以上步骤重复以上步骤该算法可用该算法可用C语言编程,在计算机上实现。语言编程,在计算机上实现。贵州 贵阳 花溪 贵州大学 电路与系统研究所6.卡尔曼滤波器的应用卡尔曼滤波器的应用卡尔曼滤波器最初是专为飞行器导航而卡尔曼滤波器最初是专为飞行器导航而研发的,目前已成功应用在許多领域中。卡研发的,目前已成功应用在許多领域中。卡尔曼滤波器主要用来預估那些只能被系统本尔曼滤波器主要用来預估那些只能被系统本身間接或不精確观測的系统状态。許多工程身間接或不精確观測的系统状态。許多工程系统和嵌入式系统都需要卡尔曼滤波。系统和嵌入式系统都需要卡尔曼滤波。贵州
19、 贵阳 花溪 贵州大学 电路与系统研究所比如比如,在雷达中,人们感兴趣的是跟踪目在雷达中,人们感兴趣的是跟踪目标,但目标的位置,速度,加速度的测量值标,但目标的位置,速度,加速度的测量值往往在任何时候都有噪声。卡尔曼滤波利用往往在任何时候都有噪声。卡尔曼滤波利用目标的动态信息,设法去掉噪声的影响,得目标的动态信息,设法去掉噪声的影响,得到一个关于目标位置的好的估计。这个估计到一个关于目标位置的好的估计。这个估计可以是对当前目标位置的估计可以是对当前目标位置的估计(滤波滤波),也可,也可以是对于将来位置的估计以是对于将来位置的估计(预测预测),也可以是,也可以是对过去位置的估计。对过去位置的估计。贵州 贵阳 花溪 贵州大学 电路与系统研究所卡尔曼滤波器应用领域:卡尔曼滤波器应用领域:自动驾驶仪自动驾驶仪动态定位系统动态定位系统经济学经济学,特别是特别是宏观经济学宏观经济学,时间序列模型时间序列模型,以及以及计量经济学计量经济学惯性引导系统惯性引导系统雷达跟踪器雷达跟踪器卫星导航系统卫星导航系统 贵州 贵阳 花溪 贵州大学 电路与系统研究所谢谢 谢!谢!贵州大学贵州大学 20082008年年1111月月2424日日结束语结束语谢谢大家聆听!谢谢大家聆听!33
限制150内