1 / 6
文档名称:

关于卡尔曼滤波器的一个简单介绍.docx

格式:docx   大小:225KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

关于卡尔曼滤波器的一个简单介绍.docx

上传人:guoxiachuanyue002 2022/6/18 文件大小:225 KB

下载得到文件列表

关于卡尔曼滤波器的一个简单介绍.docx

相关文档

文档介绍

文档介绍:关于卡尔曼滤波器的一个简单介绍
在实际生产过程中,我们经常需要使用某种仪器测量某一物理参数。比如,用一台仪器测量大气中一氧化碳的浓度。由于测量误差永远存在,使得这样两个问题非常突出,首先,是否存在某个计算方法,能够从含有误差的测量结果中获望,在这里可以等同于平均值,一个叫做方差。方差反映了数据的集中程度。比如一个温度计测量的结果分布在24到26度之间,另一个温度计测量结果在20到30度之间,显然,前一个温度计更好一些。它的数据方差就比较小。这里假设我们温度计的方差是3。于是,温度计的测量结果就是期望是25,方差是3的一组数据。
另外,我们可以根据经验猜测一下房间的温度(就好像把自己当成一个人体温度计),比如,我们猜测房间的温度是23度,当然,我们自己猜测的结果是有方差的,我们假设这个方差是4,于是根据人的感觉,测量结果是期望是23,方差是4的一组数据。
然后,由经验我们知道房间温度变化不大,基本可以认为,这一秒的温度和下一秒的温度是相等的。
现在,在第1秒,我们有了两个值,一个是温度计上显示的数据,25。一个是我们自己
32
根据感觉得出来的数据,23。那么相信谁呢?这里有一个数学公式k2=,可以算出
g32+42
kg=,+23X(1-)=,。。
现在,我们进入了第2秒,这时,,所以,这时温度计的测量方差就需要改变了。计算方法是Jl-,这里的4来自人体温度计的那个方差4。于是,。
在第2秒,我们从温度计上获得的读数是26度,。我们自己的感觉是22度,方差是4。按照第1秒的计算方法,就能得到第2秒的温度值。如此循环计算下去,就是卡尔曼滤波。
可见,卡尔曼滤波是这样一种计算方法,在两个测量值中取平衡,在第一秒,我们有60%相信温度计,40%相信自己。但是随着计算的进行,这个平衡可以改变。Kg被称为卡尔曼增益(KalmanGain)。它可以随不同的时刻而改变他自己的值。
为什么如此计算超出了本文的范围。但是可以证明,随着时间的增加,Kg能够变化到一个合适的值,使得测量的结果最接近真实值。
卡尔曼滤波的程序实现以及仿真例子:
c1=23;假设我们的感觉是23
P1=10;初始参数,带来一个初始的kg
Q=1e-6;人体感觉的方差
R=1e-2;温度计的方差
form=1:200这里我模拟了两百个参数
P2=P1+Q;
c2=c1假设室内温度不变
kg=P2/(P2+R);
c(m)=c2+kg*(b(m)-c2);b(m)代表在第m秒的温度计读数,c(m)是经过卡尔曼滤波后得到的读数
P1=(1-kg)*P2;
c1=c(m);
end
仿真结果如上图所示,这里黑色线是由温度计测量出的结果,绿色线是真实值(25),红色线是卡尔曼滤波的结果,作为对比,蓝色线是五点平均的结果,也就是取过去的五个数值进行平均。可以看出,由于存在测量误差,温度计测出的值(黑色)围绕真实值(绿色)上下波动。直观的看,卡尔曼滤波结果(红线)比五点平均值滤波(蓝线)更接近真实值(绿线),显示出卡尔曼滤波比五