基于扩展卡尔曼滤波的汽车质心侧向速度观测器_郑智忠

基于扩展卡尔曼滤波的汽车质心侧向速度观测器_郑智忠
基于扩展卡尔曼滤波的汽车质心侧向速度观测器_郑智忠

2008年5月

农业机械学报

第39卷第5期

基于扩展卡尔曼滤波的汽车质心侧向速度观测器

郑智忠 李 亮 杨 财 宋 健

【摘要】 基于HSRI 轮胎模型,建立了一种简化的、适用于实时运算的非线性轮胎力估计方法。推导了四轮两自由度汽车模型动力学方程。运用扩展卡尔曼滤波方法建立了汽车质心侧向速度观测器。汽车动力学综合仿真平台的仿真结果显示,采用非线性轮胎力估计方法能显著提高估计的精度。实车试验结果表明,该观测器估计结果的准确性和运算效率能满足DSC 控制的要求。

关键词:汽车 动力学稳定性控制系统 侧向速度 观测器 扩展卡尔曼滤波中图分类号:U 461.6

文献标识码:A

Vehicle Lateral Velocity Observer Using Extended Kalman Filter

Zheng Zhizhong Li Liang Yang Cai Song Jian (Tsinghua University ,Beijing ,100084,China )

Abstract

Based on the HSRI tire model ,a simplified nonlinear tire fo rce estimation method suitable for real -time computation w as put forward .A dynamic model of 2-DOF -4-wheel vehicle w as deduced based on the estimation method ,and a vehicle lateral velocity observer was established using the

ex tended Kalman filter .The simulated results of the vehicle dynamics simulatio n platform show ed that the accuracy w as improved greatly using the simplified nonlinear tire force estimatio n method com pared w ith the linear one .Finally ,the accuracy and efficiency of this observer w as proved by a vehicle test ,and it could meet the requirements of dynamics stability control .

Key words Vehicle ,Dynamics stability control ,Lateral velocity ,Observer ,Ex tended Kalman

filter

收稿日期:2007-04-18

*国家自然科学基金资助项目(项目编号:50575120)

郑智忠 清华大学汽车安全与节能国家重点实验室 硕士生,100084 北京市李 亮 清华大学汽车安全与节能国家重点实验室 博士生杨 财 清华大学汽车安全与节能国家重点实验室 博士生

宋 健 清华大学汽车安全与节能国家重点实验室 教授 博士生导师

引言

汽车动力学稳定性控制系统(dynamics stability control ,简称DSC )集成了汽车制动防抱死系统(ABS )、牵引力控制系统(TCS )以及主动横摆力偶矩控制系统(AYC )。它通过控制发动机运行状况、轮胎侧向和纵向力的分布和幅度,防止汽车发生车轮制动抱死、驱动打滑、侧滑等危险工况,提高了汽车的操纵稳定性和主动安全性。

为了实现转向过程中的稳定性控制,控制算法一般采用横摆角速度和质心侧偏角作为其控制参

量[1~2]。

DSC 一般安装有横摆角速度传感器,可以直接测量得到车身的横摆角速度,但质心侧偏角却难以直接测量得到,需要通过测量其他容易测量的汽车运动状态参量(横摆角速度、侧向加速度、轮速、方向盘转角等),利用估计算法进行估计。近几年来,采用卡尔曼滤波结合汽车模型对汽车相关状态参数进行估计的方法在汽车领域内得到了一些应用

[1~8]

本文基于非线性的汽车动力学模型,采用扩展卡尔曼滤波的方法讨论质心侧偏角观测中关键变

量———质心侧向速度的估计算法。

1 汽车动力学模型

DSC 通过主动制动调节四轮的纵向力和侧向力,产生主动横摆力偶矩,保证汽车转向稳定性,横摆运动和侧向运动是其中关键的自由度,而且考虑到载荷转移的影响以及控制过程中四轮动态特征的不一致,因此选用四轮两自由度模型描述汽车的运动,如图1所示

图1 四轮两自由度汽车模型

Fig .1 2-DOF -4-wheel vehicle dy namic model

 

整车侧向、横摆运动微分方程为

m (v ·y +v x ψ·)=(F y 11+F y 12)cos δw +

F y 21+F y 22+(F x 11+F x 12)sin δw

(1)

J v ψ··

=(F y 11+F y 12)a cos δw +(F y 11-F y 12)c 1sin δw -(F y 21+F y 22)b +(F x 11+F x 22)a sin δw -(F x 11-F x 12)c 1cos δw -(F x 21-F x 22)c 2(2)

式中 m ———整车质量 δw —

——前轮转角J v ———整车横摆转动惯量 l ———轴距a 、b ———汽车质心至前、后轴的距离c 1、c 2———前、后轴轮距的一半

ψ·

———横摆角速度 F x ———轮胎纵向力F y ———轮胎侧偏力

2 轮胎力估计

2.1 垂直载荷估计

汽车在转弯的过程中,由于离心力的作用车身发生侧倾-轮胎的垂直载荷会发生转移,内侧车轮垂直载荷减小,外侧车轮垂直载荷增大,尤其是在侧

向加速度较大的情况下,内侧车轮的垂直载荷可以变得很小,载荷转移的作用是不能忽略的。

考虑载荷转移的垂直载荷计算公式为[9]

F z iL =F z i 0/2-ΔF z i F z iR =F zi 0/2+ΔF zi

(3)其中

ΔF zi =σi m s a y

(4)σi =12c i k φi

k φ1+k φ2-m s gh ′h ′+l -a i l h i (5)

式中 F ziL 、F zi R ———左侧、右侧车轮的垂直载荷F zi 0———车轴的静态载荷

ΔF zi ———车轴的载荷转移量

m s ———簧上质量 σi ———载荷转移系数k φi ———轴侧倾刚度

h ′———簧上质量质心到侧倾轴线的距离h i ———轴侧倾中心至地面的距离a 1=a ,a 2=b 。

式(3)~(5)是汽车在稳态转向时的垂直载荷计算公式,不考虑车身俯仰、侧倾阻尼、车轮跳动等因素的影响。

2.2 纵向力估计

在DSC 控制起作用时,主动制动的时间比较短,一般小于2s ,所以此时可以忽略制动器的热衰退,近似认为制动盘摩擦因数保持不变,那么,对于盘式制动器,制动力矩的估计式为

T b (t )=2π

4D 2μe R e p (t -τ)(6)

式中 p ———制动压力 D ———活塞直径

μe —

——制动盘摩擦因数R e ———制动盘有效半径τ———制动迟滞时间

图2所示是车轮的动力学模型。容易推导得到轮胎纵向力估计式[1]

F x =(T d -T b -I w d ω/d t )/R

(7)

式中 I w ———车轮的转动惯量T d ———驱动力矩R ———轮胎滚动半径

2.3 侧偏力估计

汽车正常行驶时,侧向加速度一般不超过0.4g ,侧偏角不超过5°,可以认为侧偏角和侧偏力呈线性

关系[10]

,即

F y =C αα

(8)

式中 C α———侧偏刚度 α———侧偏角

图2 车轮动力学模型

Fig .2 Wheel dynamic model

但是在汽车急转弯时,侧向速度和侧偏角往

往会超过上述的范围,侧偏力和侧偏角会呈现出明显非线性关系。因此,汽车质心侧向速度观测器需要采用非线性的轮胎力模

型。可以采用HSRI 轮胎模型

[11]μ=μpeak 1-A s R ωλ2

+

tan 2α(9)

H =

λ1-λC λ

μF z

2

+11-λC α

μF z

tan α2

1

2

(10)

2农 业 机 械 学 报 2008年

F x =

λ1-λC λ

H <

1

2

λ1-λC λ1H -14H 2

H ≥12(11)

 F y =

11-λC α

tan αH <1

2

11-λC α1H -14H 2tan αH ≥12

(12)

式中 μ———附着系数 μpeak —

——峰值附着系数ω———车轮角速度 A s ———形状系数

λ———轮胎滑移率 C λ———轮胎滑移刚度前、后轮的侧偏角为

αF =-[δw -(v y +a ψ·

)/v x ](13)αR =

(v y -b ψ·

)/v x (14)

HSRI 模型能较好地拟合出非线性的轮胎力,但是,因为侧向速度观测器需要满足单片机实时运算的要求,计算量不能太大,所以需要对HSRI 模型

进行简化。

当滑移率小于某个门限λth 时,对式(12)简化得F y =

C αα

(λ<λth ,α<αth )

μF z -μ2F 2

z /(4C αtan α)(λ<λth ,α≥αth )

(15)

当滑移率大于这一门限时,由式(11)、(12)可

得[1]

F y =C αC λtan αλF x C αC λαλF x

 (λ≥λth )(16)综合式(15)、(16),得到简化轮胎模型

F y =k a C αα

(λ<λt h ,α<αth )

-k b μF z 1-μF z 4C αtan α

s ign (α)(λ<λt h ,α≥αth )

-k c

C αC λα

λ

F x (λ≥λt h )

(17)

式中,正负号的定义是使侧偏角与侧偏力的符

号相反。因为对HSRI 模型进行了简化,所以需要进行修正,式中的k a 、k b 、k c 为随路面附着系数、轮胎垂直载荷和滑移率变化的修正参数。

图3是简化轮胎模型与魔术公式[9]的对比,前者在不同的工况下能够比较好地贴近后者的曲线,但在大侧偏角和大滑移率的联合工况下偏差会有所增加。而后者是目前在轮胎力学分析方面使用最为广泛的半经验公式,它具有拟合精度高、适应复杂工况的优点,但它计算太复杂,无法满足单片机实时运算的要求。

图3 简化轮胎模型与魔术公式对比

Fig .3 Co mparison of cornering force betw een M agic F ormula and the simplified tire mo del

(a )μ=0.8,F z /F z 0=1,λ=0 (b )μ=0.8,F z /F z 0=0.6,λ=0 (c )μ=0.8,F z /F z 0=1,λ=0.05 (d )μ=0.8,F z /F z 0=1,λ=0.2

 

3 质心侧向速度观测器设计

扩展卡尔曼滤波(EKF )是一种适用于非线性系统的无偏、最小方差估计[12~13]

。由式(1)、(2)可以得到非线性微分方程

d d t

x (t )=f (x (t ))+ωt

(18)

其中x (t )=[v y (t ) ψ·

(t )]T

式中 ωt ———模型噪声系统的测量方程为

z k +1=H (x k +1)+v k +1

(19)

其中 z k +1=[0 ψ·

k +1]T

 H (x k +1)=Bx k +1

式中 z k +1———k +1时刻的观测向量

v k +1———测量噪声

扩展卡尔曼滤波是在线性卡尔曼滤波的基础上,围绕滤波值x

k 将非线性函数f [·]和H [·]展成泰勒级数并略去二阶以上项来进行线性化,从而得

到非线性系统的线性化模型。卡尔曼滤波算法可以分为预测过程和校正过程两部分。预测过程根据当前时刻的系统状态获得对下一时刻的先验估计,校正过程将观测和先验估计相结合获得改进的系统后

验估计。具体的计算步骤如下:

(1)预测过程计算预报值

x

k +1/k =x

k /k +f (x

k /k )T +A (x

k /k )f (x

k /k )

T 22

(20)

3

第5期 郑智忠等:基于扩展卡尔曼滤波的汽车质心侧向速度观测器

计算预报误差方差矩阵

P k +1/k =Υk P k /k ΥT

k +

Q k (21)

其中 A (x k /k )= f (x ) x

x =x

k /k Υk =I +A (x k /k )T (2)校正过程

计算增益矩阵

K k +1=P k +1/k B T k +1(B k +1P k +1/k B T k +

R k +1)-1

(22)

计算滤波值

x

k +1/k +1=x

k +1/k +K k +1[z k +1-H (x

k +1/k )](23)

计算滤波误差方差矩阵

P k +1/k +1=(I -K k +1B k +1)P k +1/k

(24)

采用扩展卡尔曼滤波构建的汽车质心侧向速度

观测器的计算流程如图4所示

图4 汽车质心侧向速度观测器计算流程图Fig .4 Layout o f the vehicle lateral velocity observer

 

4 仿真

采用自行开发的汽车动力学综合仿真平台[14]

进行仿真。该平台包含了DSC 控制功能。它利用M atlab /Simulink 、Stateflow 建立了包括车身运动状态(6个自由度)、4个车轮转动和垂直跳动(8个自由度)的14自由度模型,并集成车身、悬架、动力系统、制动系统、转向系统、轮胎模型(魔术公式)、控制系统ECU 等模块。

利用该仿真平台模拟了汽车在高附着路面下的双移线操作,施加了DSC 控制效果,即在转向过程中对车轮主动施加了制动力(控制两前轮)。仿真初始条件:初速度为100km /h ,路面峰值附着系数为0.8,脱开离合器断开动力源。仿真结果如图5所示。

可以看到,侧向加速度已经达到了8m /s 2,轮胎力已经进入了非线性区域。如果把式(8)作为轮胎

侧偏力的计算方法代入到质心侧向速度观测器,即

认为侧偏力与侧偏角呈线性关系,那么可以得到如

图6所示的结果,侧向速度估计值和仿真值相差很大。这是因为在较大侧向加速度下,线性模型估算的轮胎侧偏角比仿真的轮胎侧偏角要小得多,轮胎

侧偏角变小则相应的质心侧偏角也变小,所以估计得到的质心侧向速度比仿真值要小。

采用非线性轮胎力计算方法的质心侧向速度观测器的估计结果如图7所示,可以看到,估计值和仿真值基本吻合,误差主要出现在侧偏角较大处,此时

图5 高附双移线施加DSC 控制仿真结果Fig .5 Simulation results of double lane chang e

 

图6 采用线性轮胎力的双移线估计值与仿真值对比Fig .6 Estimate and simula tio n result of vehicle slip

ang le using linear tire model

图7 采用非线性轮胎力的双移线估计值与仿真值对比Fig .7 Estimate and simula tio n result of vehicle slip

angle using nonlinear tire model

4农 业 机 械 学 报 2008年

DSC 产生制动干预,在大侧偏角和较大滑移率的联合工况下,简化轮胎模型估算的轮胎力与仿真值偏差有所增大,导致估计结果偏差变大。

5 试验

在安装有DSC 的某型号车上进行了高附双移线试验,试验中DSC 发生了较强的制动干预(图8)

图8 高附双移线试验曲线

Fig .8 Ex perimental results of double lane change

 

用英国Racelogic 公司的GPS 测速仪测出车速和汽车前进方向角γ。质心侧偏角测量值的计算式为[15]

β=γ-ψ(25)式中,横摆角ψ是对横摆角速度传感器信号积分得到。测量值与估计值对比结果如图9所示,两条曲线具有较好的一致性,变化趋势吻合良好

图9 双移线试验质心侧偏角估计值与测量值对比Fig .9 Estimate and measurement of vehicle slip ang le

 

6 结束语

提出了一种简化的非线性轮胎力估计方法,利用扩展卡尔曼滤波方法建立了适合于实时运算的汽车质心侧向速度观测器。通过仿真对比了采用线性和非线性轮胎模型的观测器的估计结果,可以看到轮胎力的估计对侧向速度估计的精度至关重要,因为卡尔曼滤波需要有比较准确的系统状态方程才能得出比较准确的状态估计。实车试验结果表明,该观测器估计结果的准确性和运算效率较高,能满足

DSC 控制的要求。

1 V an Z anten A T ,Rainer Ertardt ,G eo rg Pfaff ,et al .Control aspects of the Bosch -V DC [C ].A VEC 96int .G ermany :I nterna tio nal Symposium on A dvanced V ehicle Control ,1996:573~608.

2 V an Zanten A T .Bo sch ESP system :5years of experience [C ].SA E P aper 2000-01-1633,2000.

3 高越,高振海,李向瑜.基于自适应Kalman 滤波的汽车横摆角速度软测量算法[J ].江苏大学学报:自然科学版,2005,26(1):24~27.

Gao Yue ,Gao Z henhai ,Li Xiangy u .Soft measurement method fo r vehicle yaw rate based on adaptive Kalman filter [J ].Journal o f Jiang su University :N atural Science Edition ,2005,26(1):24~27.(in Chinese )

4 Best M C ,Go rdon T J ,Dixon P J .A n extended adaptive K alman filter for real -time sta te estimatio n of vehicle handling dy namics [J ].Vehicle System Dy namics ,2000,34(1):57~75.

5 Joost Zuurbier ,Paul Bremmer .State estimation for integ rated vehicle dy namics control [C ].2002IV I nternational M eeting ,Paris ,2002.

6 刘俊,陈无畏.车辆电动转向系统的卡尔曼滤波模糊PID 控制[J ].农业机械学报,2007,38(9):1~5.

Liu Jun ,Chen Wuwei .Study o n EPS using fuzzy and P ID multi -mode control with Kalman filter [J ].T ransactions of the Chinese Society for Ag ricultural M achinery ,2007,38(9):1~5.(in Chinese )

7 王荣本,张荣辉,金立生,等.区域交通智能车辆导航控制技术[J ].农业机械学报,2007,38(7):39~42.Wang Rongben ,Zhang Ronghui ,Jin Lisheng ,et al .Research on steering co ntrol technolog y of cybercar [J ].T ransactions of the Chinese Society for Ag ricultural M achinery ,2007,38(7):39~42.(in Chinese )

(下转第9页)

5

第5期 郑智忠等:基于扩展卡尔曼滤波的汽车质心侧向速度观测器

图3 车辆在紧急避障时的响应

Fig .3 V ehicle respo nse under severe lane change

(a )车辆运动轨迹 (b )方向盘输入 (c )横摆角速度 (d )侧偏角

 

5 结束语

将虚拟现实技术应用于车辆稳定性控制的实验研究中,通过构建虚拟驾驶实验平台实现驾驶员感受试验中车辆状态的变化,开发了计算量小、计算速

度快的神经网络稳定性控制方法。虚拟实验结果表

明,该控制方法通过控制车辆的横摆力矩,能够获得更好的车辆横摆角速度、质心侧偏角响应,实现了车辆横摆角速度对期望值的跟踪。

文献

1 郭孔辉,轧浩,宗昌富.横摆角速度反馈汽车转向控制的理论研究[J ].中国机械工程,2000,11(1~2):61~64.Guo K onghui ,Ya Hao ,Z hong Changfu .Research on yaw -rate feedback steering control [J ].China Mechanical Engineer -ing ,2000,11(1~2):61~64.(in Chinese )

2 李亮,宋健,祁雪乐.汽车动力学稳定性控制系统研究现状及发展趋势[J ].农业机械学报,2006,37(2):141~144.Li Liang ,Song Jian ,Qi Xuele .Inv estigation and development of vehicle dynamics stability contro l system [J ].T ransactions of the Chinese Society for Ag ricultural M achinery ,2006,37(2):141~144.(in Chinese )

3 张勇,殷承良,熊伟威.基于M atlab 的车辆动力学控制交互式硬件在环仿真系统研究[J ].机械科学与技术,2006,25(7):821~825.

Zhang Yo ng ,Yin Chengliang ,Xiong Weiwei .Study of an interactiv e hardware in -loop simulatio n system fo r vehicle dy nam -ic control based o n M atlab [J ].M echanical Science and T echnology ,2006,25(7):821~825.(in Chinese )

4 Peng H ,T omizuka M .Preview control for v ehicle lateral guidance in hig hw ay automation [J ].ASM E Journal of Dynamics Systems ,M easurement and Control ,1993,115(4):678~686.

5 N arendra K S ,M ukhopadhy ay S .Adaptive control using neural networks and approximate models [J ].IEEE T ransactions on Neural Networks ,1997,8(3):475~485.

(上接第5页)

8 王仁广,刘昭度,齐志权,等.基于自适应卡尔曼滤波算法确定汽车参考车速[J ].农业机械学报,2006,37(4):9~11.Wang Reng uang ,Liu Zhaodu ,Qi Zhiquan ,et al .Vehicle reference speed determinatio n using adaptiv e Kalman filter algorithm [J ].Transactions of the Chinese Socie ty fo r A gricultural M achinery ,2006,37(4):9~11.(in Chinese )9 Hans B Pacejka .T y re and vehicle dynamics [M ].Butterwo rth -Heinemann ,2002.10 余志生.汽车理论[M ].3版.北京:机械工业出版社,2002.

11 Howard Dugo ff ,F rancher P S ,Leonard Segel .An analy sis of tire traction properties and their influence on vehicle dy namic

perfo rmance [C ].SAE Paper 700377,1970.

12 宋文尧,张牙.卡尔曼滤波[M ].北京:科学出版社,1991.

13 付梦印,邓志红,张继伟.K alman 滤波理论及其在导航系统中的应用[M ].北京:科学出版社,2003.

14 Wang Huiyi ,Xue Chunyu .Automotive dynamics stability &controls conference mo delling and simulation of electric stabili -ty prog ram for passenger car [C ].SA E Paper 2004-01-02,2004.

15 Jihan Ry u ,J Christian G erdes .Integ rating iner tial senso rs with g lobal positio ning sy stem (GPS )for vehicle dynamics

control [J ].Journal o f Dy namic Sy stems ,M easurement ,and Control ,2004,126(2):243~253.

9

第5期 吴绍斌等:车辆稳定性控制的虚拟实验

ardupilot(EKF)扩展卡尔曼滤波

ardupilot(EKF)扩展卡尔曼滤波 一、初识卡尔曼滤波器 为了描述方便我从网上找了一张卡尔曼滤波器的5大公式的图片。篇幅所限,下图所示的是多维卡尔曼滤波器(因为EKF2是多维扩展卡尔曼滤波器,所以我们从多维说起),为了跟好的理解卡尔曼滤波器可以百度一下,从一维开始。 这5个公式之外还有一个观测模型,根据你实际的观测量来确定,它的主 要作用是根据实际情况来求观测矩阵H。 因为卡尔曼滤波器是线性滤波器,状态转移矩阵A和观测矩阵H是确定的。在维基百科上状态转移矩阵用F表示。在ardupilot EKF2算法中,状态转移矩阵也是用F表示的。下面是维基百科给出的线性卡尔曼滤波器的相关公式。

上述更新(后验)估计协方差的公式对任何增益K k都有效,有时称为约瑟夫形式。为了获得最佳卡尔曼增益,该公式进一步简化为P k|k=(I-K k H k)P k|k-1,它在哪种形式下应用最广泛。但是,必须记住它仅对最小化残差误差的最佳增益有效。 为了使用卡尔曼滤波器来估计仅给出一系列噪声观测过程的内部状态,必须根据卡尔曼滤波器的框架对过程进行建模,这意味着指定一下矩阵:

只要记住一点就行了,卡尔曼滤波器的作用就是输入一些包含噪声的数据,得到一些比较接近真是情况的数据。比如无人机所使用的陀螺仪和加速度计的 读值,他们的读值都是包含噪声的,比如明明真实的角速度是俯仰2°/s,陀螺 仪的读值却是2.5°/s。通过扩展卡尔曼之后的角速度值会变得更加接近2o/s 的真实值,有可能是2.1o/s。 二、扩展卡尔曼滤波器 因为卡尔曼滤波器针对的是线性系统,状态转移模型(说的白话一点就是知道上一时刻被估计量的值,通过状态转移模型的公式可以推算出当前时刻被 估计量的值)和观测模型。注:有的资料显示状态模型中有,有的没有,目前 我也不清楚是为什么,有可能和被估计的对象有关。但看多了你就会发现不管 网上给的公式有怎样的不同,但总体的流程是一样的,都是这5大步骤。我个 人觉得维基百科给的公式较为标准。 因为扩展卡尔曼滤波器(EKF,Extended Kalman filter)的使用场景为非线性系统。所以上面两公式改写为下面所示的样子,我个人的理解是,因为是 非线性系统,所以没有固定的状态转移矩阵和观测矩阵。到这儿为止卡尔曼滤 波器到扩展卡尔曼滤波器的过度就完成了(多说一句,因为传感器的数据采样 是有时间间隔的,算法的运行也是有间隔的,所以本文提到的KF和EKF都是离散型的)。下面是扩展卡尔曼滤波器的相关公式。

卡尔曼滤波器及其简matlab仿真

卡尔曼滤波器及其简matlab仿真

卡尔曼滤波器及其简matlab仿真 一、卡尔曼滤波的起源 谈到信号的分析与处理,就离不开滤波两个字。通常,信号的频谱处于有限的频率范围内,而噪声的频谱则散布在很广的频率范围内,为了消除噪声,可以进行频域滤波。但在许多应用场合,需要直接进行时域滤波,从带噪声的信号中提取有用信号。虽然这样的过程其实也算是对信号的滤波,但其所依据的理论,即针对随机信号的估计理论,是自成体系的。人们对于随机信号干扰下的有用信号不能“确知”,只能“估计”。为了“估计”,要事先确定某种准则以评定估计的好坏程度。 1960年卡尔曼发表了用递归方法解决离散数据线性滤波问题的论文A New Approach to Linear Filtering and Prediction Problems (线性滤波与预测问题的新方法),在这篇文章里一种克服了维纳滤波缺点的新方法被提出来,这就是我们今天称之为卡尔曼滤波的方法。卡尔曼滤波应用广泛且功能强大,它可以估计信号的过去和当前状态甚至能估计将来的状态即使并不知道模型的确切性质。 其基本思想是以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值。算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计。 对于解决很大部分的问题,它是最优,效率最高甚至是最有用的。它的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。 卡尔曼滤波不要求保存过去的测量数据,当新的数据到来时,根据新的数据和前一时刻的储值的估计,借助于系统本身的状态转移方程,按照一套递推公式,即可算出新的估值。卡尔曼递推算法大大减少了滤波装置的存储量和计算量,并且突破了平稳随机过程的限制,使卡尔曼滤波器适用于对时变信号的实时处理。

基于FPGA的卡尔曼滤波器的设计

基于FPGA的卡尔曼滤波器的设计 时间:2010-04-12 12:52:33 来源:电子科技作者:米月琴,黄军荣西安电子科技大学摘要:针对电路设计中经常碰到数据的噪声干扰现象,提出了一种Kalman滤波的FPGA实现方法。该方法采用了TI公司的高精度模数转换器ADSl25l以及Altera公司的EPlCl2,首先用卡尔曼滤波算法 设计了一个滤波器,然后将该滤波器分解成简单的加、减、乘、除运算。通过基于FPGA平台的硬件与 软件的合理设计,成功地实现了数据噪声的滤除设计,并通过实践仿真计算,验证了所实现滤波的有效性。 关键词:卡尔曼;FPGA;最小方差估计 卡尔曼滤波是一个“Optimal Recursive Data Processing Algorithm(最优化自回归数据处 理算法)”,对于解决很大部分的问题,是最优化的,效率最高甚至是最有用的。传统的卡尔曼滤波是 在DSP上实现的。但是DSP成本相对较高,而且指令是串行执行的,不能满足有些要求较高的场合。而FPGA由于其硬件结构决定了它的并行处理方式,无论在速度还是实时性都更胜一筹。文中以基于FPGA 器件和A/D转换器的数据采集系统为硬件平台,进行了卡尔曼滤波算法设计,详述了基于FPGA的卡尔 曼滤波器的设计实现。 1 卡尔曼滤波算法 工程中,为了了解工程对象(滤波中称为系统)的各个物理量(滤波中称为状态)的确切数值,或为了 达到对工程对象进行控制的目的,必须利用测量手段对系统的各个状态进行测量。但是,量测值可能仅 是系统的部分状态或是部分状态的线性组合,且量测值中有随机误差(常称为量测噪声)。最优估计就是 针对上述问题的一种解决方法。它能将仅与部分状态有关的测量进行处理,得出从统计意义上讲误差最 小的更多状态的估值。误差最小的标准常称为估计准则,根据不同的估计准则和估计计算方法,有各种 不同的最优估计,卡尔曼滤波是一种递推线性最小方差估计的最优估计。 系统的状态方程可设定为 式(3)为系统噪声。设设备的量测噪声为Vk,系统得量测方程为

卡尔曼滤波器及其简matlab仿真.

卡尔曼滤波器及其简matlab仿真 一、卡尔曼滤波的起源 谈到信号的分析与处理,就离不开滤波两个字。通常,信号的频谱处于有限的频率范围内,而噪声的频谱则散布在很广的频率范围内,为了消除噪声,可以进行频域滤波。但在许多应用场合,需要直接进行时域滤波,从带噪声的信号中提取有用信号。虽然这样的过程其实也算是对信号的滤波,但其所依据的理论,即针对随机信号的估计理论,是自成体系的。人们对于随机信号干扰下的有用信号不能“确知”,只能“估计”。为了“估计”,要事先确定某种准则以评定估计的好坏程度。 1960年卡尔曼发表了用递归方法解决离散数据线性滤波问题的论文A New Approach to Linear Filtering and Prediction Problems(线性滤波与预测问题的新方法),在这篇文章里一种克服了维纳滤波缺点的新方法被提出来,这就是我们今天称之为卡尔曼滤波的方法。卡尔曼滤波应用广泛且功能强大,它可以估计信号的过去和当前状态甚至能估计将来的状态即使并不知道模型的确切性质。 其基本思想是以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值。算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计。 对于解决很大部分的问题,它是最优,效率最高甚至是最有用的。它的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。 卡尔曼滤波不要求保存过去的测量数据,当新的数据到来时,根据新的数据和前一时刻的储值的估计,借助于系统本身的状态转移方程,按照一套递推公式,即可算出新的估值。卡尔曼递推算法大大减少了滤波装置的存储量和计算量,并且突破了平稳随机过程的限制,使卡尔曼滤波器适用于对时变信号的实时处理。 二、卡尔曼滤波的原理

几种卡尔曼滤波算法理论

自适应卡尔曼滤波 卡尔曼滤波发散的原因 如果卡尔曼滤波是稳定的,随着滤波的推进,卡尔曼滤波估计的精度应该越来越高,滤波误差方差阵也应趋于稳定值或有界值。但在实际应用中,随着量测值数目的增加,由于估计误差的均值和估计误差协方差可能越来越大,使滤波逐渐失去准确估计的作用,这种现象称为卡尔曼滤波发散。 引起滤波器发散的主要原因有两点: (1)描述系统动力学特性的数学模型和噪声估计模型不准确,不能直接真实地反映物理过程,使得模型与获得的量测值不匹配而导致滤波发散。这种由于模型建立过于粗糙或失真所引起的发散称为滤波发散。 (2)由于卡尔曼滤波是递推过程,随着滤波步数的增加,舍入误差将逐渐积累。如果计算机字长不够长,这种积累误差很有可能使估计误差方差阵失去非负定性甚至失去对称性,使滤波增益矩阵逐渐失去合适的加权作用而导致发散。这种由于计算舍入误差所引起的发散称为计算发散。 针对上述卡尔曼滤波发散的原因,目前已经出现了几种有效抑制滤波发散的方法,常用的有衰减记忆滤波、限定记忆滤波、扩充状态滤波、有限下界滤波、平方根滤波、和自适应滤波等。这些方法本质上都是以牺牲滤波器的最优性为代价来抑制滤波发散,也就是说,多数都是次优滤波方法。 自适应滤波 在很多实际系统中,系统过程噪声方差矩阵Q和量测误差方差阵R事先是不知道的,有时甚至连状态转移矩阵 或量测矩阵H也不能确切建立。如果所建立的模型与实际模型不符可能回引起滤波发散。自适应滤波就是这样一种具有抑制滤波发散作用的滤波方法。在滤波过程中,自适应滤波一方面利用量测值修正预测值,同时也对未知的或不确切的系统模型参数和噪声统计参数进行估计修正。自适应滤波的方法很多,包括贝叶斯法、极大似然法、相关法与协方差匹配法,其中最基本也是最重要的是相关法,而相关法可分为输出相关法和新息相关法。 在这里只讨论系统模型参数已知,而噪声统计参数Q和R未知情况下的自适应滤波。由于Q和R等参数最终是通过增益矩阵K影响滤波值的,因此进行自适应滤波时,也可以不去估计Q和R等参数而直接根据量测数据调整K就可以了。

维纳最速下降法滤波器卡尔曼滤波器设计及Matlab仿真

信息融合大作业 ——维纳最速下降法滤波器,卡尔曼滤波器设计及Matlab仿真 1.滤波问题浅谈 估计器或滤波器这一术语通常用来称呼一个系统,设计这样的系统是为了从含有噪声的数据中提取人们感兴趣的,接近规定质量的信息。由于这样一个宽目标,估计理论应用于诸如通信、雷达、声纳、导航、地震学、生物医学工程、 金融工程等众多不同的领域。例如,考虑一个数字通信系统,其基本形式由发

射机、信道和接收机连接组成。发射机的作用是把数字源(例如计算机)产生的0、1符号序列组成的消息信号变换成为适合于信道上传送的波形。而由于符号间干扰和噪声的存在,信道输出端收到的信号是含有噪声的或失真的发送信号。接收机的作用是,操作接收信号并把原消息信号的一个可靠估值传递给系统输出端的某个用户。随着通信系统复杂度的提高,对原消息信号的还原成为通信系统中最为重要的环节,而噪声是接收端需要排除的最主要的干扰,人们也设计出了针对各种不同条件应用的滤波器,其中最速下降算法是一种古老的最优化技术,而卡尔曼滤波器随着应用条件的精简成为了普适性的高效滤波器。2.维纳最速下降算法滤波器 2.1 最速下降算法的基本思想 考虑一个代价函数,它是某个未知向量的连续可微分函数。函数 将的元素映射为实数。这里,我们要寻找一个最优解。使它满足如下条件 (2.1) 这也是无约束最优化的数学表示。 特别适合于自适应滤波的一类无约束最优化算法基于局部迭代下降的算法: 从某一初始猜想出发,产生一系列权向量,使得代价函数在算法的每一次迭代都是下降的,即 其中是权向量的过去值,而是其更新值。 我们希望算法最终收敛到最优值。迭代下降的一种简单形式是最速下降法,该方法是沿最速下降方向连续调整权向量。为方便起见,我们将梯度向量表示为

扩展卡尔曼滤波(EKF)应用于GPS-INS组合导航

clear all; %% 惯性-GPS组合导航模型参数初始化 we = 360/24/60/60*pi/180; %地球自转角速度,弧度/s psi = 10*pi/180; %psi角度/ 弧度 Tge = 0.12; Tgn = 0.10; Tgz = 0.10; %这三个参数的含义详见参考文献 sigma_ge=1; sigma_gn=1; sigma_gz=1; %% 连续空间系统状态方程 % X_dot(t) = A(t)*X(t) + B(t)*W(t) A=[0 we*sin(psi) -we*cos(psi) 1 0 0 1 0 0; -we*sin(psi) 0 0 0 1 0 0 1 0; we*cos(psi) 0 0 0 0 1 0 0 1; 0 0 0 -1/Tge 0 0 0 0 0; 0 0 0 0 -1/Tgn 0 0 0 0; 0 0 0 0 0 -1/Tgz 0 0 0; 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0; 0 0 0 0 0 0 0 0 0;]; %状态转移矩阵 B=[0 0 0 sigma_ge*sqrt(2/Tge) 0 0 0 0 0; 0 0 0 0 sigma_gn*sqrt(2/Tgn) 0 0 0 0; 0 0 0 0 0 sigma_gz*sqrt(2/Tgz) 0 0 0;]';%输入控制矩阵%% 转化为离散时间系统状态方程 % X(k+1) = F*X(k) + G*W(k) T = 0.1; [F,G]=c2d(A,B,T);

H=[1 0 0 0 0 0 0 0 0; 0 -sec(psi) 0 0 0 0 0 0 0;];%观测矩阵 %% 卡尔曼滤波器参数初始化 t=0:T:50-T; length=size(t,2); y=zeros(2,length); Q=0.5^2*eye(3); %系统噪声协方差 R=0.25^2*eye(2); %测量噪声协方差 y(1,:)=2*sin(pi*t*0.5); y(2,:)=2*cos(pi*t*0.5); Z=y+sqrt(R)*randn(2,length); %生成的含有噪声的假定观测值,2维X=zeros(9,length); %状态估计值,9维 X(:,1)=[0,0,0,0,0,0,0,0,0]'; %状态估计初始值设定 P=eye(9); %状态估计协方差 %% 卡尔曼滤波算法迭代过程 for n=2:length X(:,n)=F*X(:,n-1); P=F*P*F'+ G*Q*G'; Kg=P*H'/(H*P*H'+R); X(:,n)=X(:,n)+Kg*(Z(:,n)-H*X(:,n)); P=(eye(9,9)-Kg*H)*P; end %% 绘图代码 figure(1) plot(y(1,:)) hold on; plot(y(2,:)) hold off; title('理想的观测量'); figure(2)

扩展卡尔曼滤波器(EKF)进行信号处理及信号参数估计

% 扩展卡尔曼滤波器估计单相电压幅值、相位、频率参数(含直流)function test2_EKF close all; clc; tic; %计时 %模型:y=A0+A1*cos(omega*t+phy1) %离散化:y(k)=A0(k)+A1(k)*cos(omega(k)*k*Ts+phy1(k)) %状态变量:x1(k)=A0(k),x2(k)=omega(k),x3(k)=A1(k)*cos(omega(k)*k*Ts+phy1(k) ),x4(k)=A1(k)*sin(omega(k)*k*Ts+phy1(k)) %下一时刻状态变量为(假设状态不突变):A0(k+1)=A0(k),A1(k+1)=A1(k),omega(k+1)=omega(k),phy1(k+1)=phy1 (k); %则对应状态为:x1(k+1)=x1(k),x2(k+1)=x2(k),x3(k+1)=x3(k)*cos(x2(k)*Ts)- x4(k)*sin(x(2)*Ts),x4(k+1)=x3(k)*sin(x2(k)*Ts)+x4(k)*cos(x(2)*Ts); %状态空间描述:X(k+1)=f(X(k))+W(k);y(k)=H*X(k)+v(k) %f(X(k))=[x1(k);x2(k);x3(k)*cos(x2(k)*Ts)- x4(k)*sin(x(2)*Ts);x3(k)*sin(x2(k)*Ts)+x4(k)*cos(x(2)*Ts)] %偏导(只求了三个):f`(X(k))=[1,0,0;0,1,0;0,-x3(k)*Ts*sin(x2(k)*Ts)-x4(k)*Ts*cos(x2(k)*Ts),cos(x2(k)*Ts);0,x3(k)*Ts*cos(x2(k)*Ts)- x4(k)*Ts*sin(x2(k)*Ts),sin(x2(k)*Ts)]

直流电机运行状态的卡尔曼滤波估计器设计.doc

二 〇 一 五 年 六 月 题 目:直流电机运行状态的卡尔曼滤波估计器设计 学生姓名:张傲 学 院:电力学院 系 别:电力系 专 业:风能与动力工程 班 级:风能11-1 指导教师:董朝轶 教授

摘要 卡尔曼滤波是一个迭代自回归算法,对于连续运动状态用中的大部分问题它都能够给出最优的预测。它已经广泛应用了近半个世纪,例如数据的融合,机械的导航乃至军用雷达的导航等等。卡尔曼滤波一般用于动态数据的处理,是从混沌的信号中提取有用信号消除误差的参数估计法。卡尔曼滤波是依据上一个估计数值和当下的检测数据运用递推估计算出当前的估计值。通过状态方程运用递推的方法进行估计,可以建立物体运动的模型。本文采用的工程设计对运行状态下的直流电机进行参数的计算和校验。而且直流电机的调节性能非常好只需要加上电阻调压就可以了,而且启动曲线非常好,启动的转矩大适合高精度的控制。而交流电机调速需要变频,控制相对复杂一些,而对于设计无论是哪种电机都不影响结果,所以本实验采用直流电机。简单来说卡尔曼滤波就是对被观测量进行一个物理的建模,目的是用‘道理’来约束观测结果,减少噪声的影响。因此卡尔曼滤波是根据一个事物的当前状态预测它的下一个状态的过程。 此设计主要是通过对直流电机的数学模型利用MATLAB来设计卡尔曼滤波估计,进行仿真编程建模,进而对系统进行评估,并且分析估计误差。 关键词:卡尔曼滤波器;直流电机;MATLAB

Abstract Kalman filter is an iterative autoregression algorithm for continuous motion of most of the problems with it are able to give the best prediction. And it has been widely used for nearly half a century, such as the integration of data, as well as military machinery of navigation radar navigation, and so on. Kalman filter is generally used to process dynamic data, extract useful signal parameter estimation method to eliminate errors from the chaotic signal. Kalman filter is based on an estimate on the value and the current detection data is calculated using recursive estimation current estimates. By using recursive state equation method to estimate the movement of objects can be modeled. The paper describes the engineering design of the DC motor running state parameter calculation and verification. The DC motor performance and adjust very well simply by adding resistance regulator on it, and start curve is very good, start torque for precision control. The required frequency AC motor speed control is relatively complicated, and for the design of either the motor does not affect the outcome.In order to facilitate learning, so wo use the DC motor. Simply the Kalman filter is to be observables conduct a physical modeling; the purpose is to use 'sense' to restrict the observations to reduce the influence of noise. Therefore, the Kalman filter is based on the current state of things predict its next state of the process. This design is mainly through the DC motor mathematical model using MATLAB to design the Kalman filter estimation, simulation modeling program, and then to evaluate the system and analyze the estimation error. Keywords:Kalman filter; DC;MATLAB

卡尔曼滤波器介绍 --- 最容易理解

10.6 卡尔曼滤波器简介 本节讨论如何从带噪声的测量数据把有用信号提取出来的问题。通常,信号的频谱处于有限的频率范围内,而噪声的频谱则散布在很广的频率范围内。如前所述,为了消除噪声,可以把 FIR滤波器或IIR滤波器设计成合适的频带滤波器,进行频域滤波。但在许多应用场合,需要进行时域滤波,从带噪声的信号中提取有用信号。虽然这样的过程其实也算是对信号的滤波,但所依据的理论,即针对随机信号的估计理论,是自成体系的。人们对随机信号干扰下的有用信号不能“确知”,只能“估计”。为了“估计”,要事先确定某种准则以评定估计的好坏程度。最小均方误差是一种常用的比较简单的经典准则。典型的线性估计器是离散时间维纳滤波器与卡尔曼滤波器。 对于平稳时间序列的最小均方误差估计的第一个明确解是维纳在1942年2月首先给出的。当时美国的一个战争研究团体发表了一个秘密文件,其中就包括维纳关于滤波问题的研究工作。这项研究是用于防空火力控制系统的。维纳滤波器是基于最小均方误差准则的估计器。为了寻求维纳滤波器的冲激响应,需要求解著名的维纳-霍夫方程。这种滤波理论所追求的是使均方误差最小的系统最佳冲激响应的明确表达式。这与卡尔曼滤波(Kalman filtering)是很不相同的。卡尔曼滤波所追求的则是使均方误差最小的递推算法。 在维纳进行滤波理论研究并导出维纳-霍夫方程的十年以前,在1931年,维纳和霍夫在数学上就已经得到了这个方程的解。 对于维纳-霍夫方程的研究,20世纪五十年代涌现了大量文章,特别是将维纳滤波推广到非平稳过程的文章甚多,但实用结果却很少。这时正处于卡尔曼滤波问世的前夜。 维纳滤波的困难问题,首先在上世纪五十年代中期确定卫星轨道的问题上遇到了。1958年斯韦尔林(Swerling)首先提出了处理这个问题的递推算法,并且立刻被承认和应用。1960年卡尔曼进行了比斯韦尔林更有意义的工作。他严格地把状态变量的概念引入到最小均方误差估计中来,建立了卡尔曼滤波理论。空间时代的到来推动了这种滤波理论的发展。 维纳滤波与卡尔曼滤波所研究的都是基于最小均方误差准则的估计问题。 维纳滤波理论的不足之处是明显的。在运用的过程中,它必须把用到的全部数据存储起来,而且每一时刻都要通过对这些数据的运算才能得到所需要的各种量的估值。按照这种滤波方法设置的专用计算机的存储量与计算量必然很大,很难进行实时处理。虽经许多科技工作者的努力,在解决非平稳过程的滤波问题时,给出能用的方法为数甚少。到五十年代中期,随着空间技术的发展,这种方法越来越不能满足实际应用的需要,面临了新的挑战。尽管如此,维纳滤波理论在滤波理论中的开拓工作是不容置疑的,维纳在方法论上的创见,仍然影响着后人。 五十年代中期,空间技术飞速发展,要求对卫星轨道进行精确的测量。为此,人们将滤波问题以微分方程表示,提出了一系列适应空间技术应用的精练算法。1960年

扩展卡尔曼滤波器(EKF):一个面向初学者的交互式教程-翻译

扩展卡尔曼滤波器教程 在使用OpenPilot和Pixhawk飞控时,经常遇到扩展卡尔曼滤波(EKF)。从不同的网页和参考论文中搜索这个词,其中大部分都太深奥了。所以我决定创建自己学习教程。本教程从一些简单的例子和标准(线性)卡尔曼滤波器,通过对实际例子来理解卡尔曼滤波器。 Part 1: 一个简单的例子 想象一个飞机准备降落时,尽管我们可能会担心许多事情,像空速、燃料、等等,当然最明显是关注飞机的高度(海拔高度)。通过简单的近似,我们可以认为当前高度是之前的高度失去了一小部分。例如,当每次我们观察飞行高度时,认为飞机失去了2%的高度,那么它的当前高度是上一时刻高度的98%: altitude current_time=0.98*altitude previous_time 工程上对上面的公式,使用“递归”这个术语进行描述。通过递归前一时刻的值,不断计算当前值。最终我们递归到初始的“基本情况”,比如一个已知的高度。 试着移动上面的滑块,看看飞机针对不同百分比的高度变化。 Part 2:处理噪声 当然, 实际从传感器比如GPS或气压计获得测量高度时,传感器的数据或多或少有所偏差。如果传感器的偏移量为常数,我们可以简单地添加或减去这偏移量来确定我们的高度。不过通常情况下,传感器的偏移量是一个时变量,使得我们所观测到的传感器数据相当于实际高度加上噪声: observed_altitude current_time=altitude current_time+noise current_time 试着移动上面的滑块看到噪声对观察到的高度的影响。噪音被表示为可观测的海拔范围的百分比。

卡尔曼滤波的基本原理及应用

卡尔曼滤波的基本原理及应用卡尔曼滤波在信号处理与系统控制领域应用广泛,目前,正越来越广泛地应用于计算机应用的各个领域。为了更好地理解卡尔曼滤波的原理与进行滤波算法的设计工作,主要从两方面对卡尔曼滤波进行阐述:基本卡尔曼滤波系统模型、滤波模型的建立以及非线性卡尔曼滤波的线性化。最后,对卡尔曼滤波的应用做了简单介绍。 卡尔曼滤波属于一种软件滤波方法,其基本思想是:以最小均方误差为最佳估计准则,采用信号与噪声的状态空间模型,利用前一时刻的估计值和当前时刻的观测值来更新对状态变量的估计,求出当前时刻的估计值,算法根据建立的系统方程和观测方程对需要处理的信号做出满足最小均方误差的估计。 最初的卡尔曼滤波算法被称为基本卡尔曼滤波算法,适用于解决随机线性离散系统的状态或参数估计问题。卡尔曼滤波器包括两个主要过程:预估与校正。预估过程主要是利用时间更新方程建立对当前状态的先验估计,及时向前推算当前状态变量和误差协方差估计的值,以便为下一个时间状态构造先验估计值;校正过程负责反馈,利用测量更新方程在预估过程的先验估计值及当前测量变量的基础上建立起对当前状态的改进的后验估计。这样的一个过程,我们称之为预估-校正过程,对应的这种估计算法称为预估-校正算法。以下给出离散卡尔曼滤波的时间更新方程和状态更新方程。 时间更新方程: 状态更新方程: 在上面式中,各量说明如下: A:作用在X k-1上的n×n 状态变换矩阵 B:作用在控制向量U k-1上的n×1 输入控制矩阵 H:m×n 观测模型矩阵,它把真实状态空间映射成观测空间 P k-:为n×n 先验估计误差协方差矩阵 P k:为n×n 后验估计误差协方差矩阵 Q:n×n 过程噪声协方差矩阵 R:m×m 过程噪声协方差矩阵 I:n×n 阶单位矩阵K k:n×m 阶矩阵,称为卡尔曼增益或混合因数 随着卡尔曼滤波理论的发展,一些实用卡尔曼滤波技术被提出来,如自适应滤波,次优滤波以及滤波发散抑制技术等逐渐得到广泛应用。其它的滤波理论也迅速发展,如线性离散系统的分解滤波(信息平方根滤波,序列平方根滤波,UD 分解滤波),鲁棒滤波(H∞波)。 非线性样条自适应滤波:这是一类新的非线性自适应滤波器,它由一个线性组合器后跟挠性无记忆功能的。涉及的自适应处理的非线性函数是基于可在学习

卡尔曼滤波器综述

卡尔曼滤波器综述 瞿伟军 G10074 1、卡尔曼滤波的起源 1960年,匈牙利数学家卡尔曼发表了一篇关于离散数据线性滤波递推算法的论文,这意味着卡尔曼滤波的诞生。斯坦利.施密特(Stanley Schmidt)首次实现了卡尔曼滤波器,卡尔曼在NASA埃姆斯研究中心访问时,发现他的方法对于解决阿波罗计划的轨道预测很有用,后来阿波罗飞船的导航电脑使用了这种滤波器。关于这种滤波器的论文由Swerling (1958)、Kalman (1960)与 Kalman and Bucy (1961)发表。 2、卡尔曼滤波的发展 卡尔曼滤波是一种有着相当广泛应用的滤波方法,但它既需要假定系统是线性的,又需要认为系统中的各个噪声与状态变量均呈高斯分布,而这两条并不总是确切的假设限制了卡尔曼滤波器在现实生活中的应用。扩展卡尔曼滤波器(EKF)极大地拓宽了卡尔曼滤波的适用范围。EKF的基本思路是,假定卡尔曼滤滤对当前系统状态估计值非常接近于其真实值,于是将非线性函数在当前状态估计值处进行台劳展开并实现线性化。另一种非线性卡尔曼滤波叫线性化卡尔曼滤波。它与EKF的主要区别是前者将非线函数在滤波器对当前系统状态的最优估计值处线性化,而后者因为预先知道非线性系统的实际运行状态大致按照所要求、希望的轨迹变化,所以这些非线性化函数在实际状态处的值可以表达为在希望的轨迹处的台劳展开式,从而完成线性化。 不敏卡尔曼滤波器(UKF)是针对非线性系统的一种改进型卡尔曼滤波器。UKF处理非线性系统的基本思路在于不敏变换,而不敏变换从根本上讲是一种描述高斯随机变量在非线性化变换后的概率分布情况的方法。不敏卡尔曼滤波认为,与其将一个非线性化变换线性化、近似化,还不如将高斯随机变量经非线性变换后的概率分布情况用高斯分布来近似那样简单,因而不敏卡尔曼滤波算法没

卡尔曼滤波器

卡尔曼滤波器 来这里几个月,发现有些问题很多人都很感兴趣。所以在这里希望能尽自己能力跟大家讨论一些力所能及的算法。现在先讨论一下卡尔曼滤波器,如果时间和能力允许,我还希望能够写写其他的算法,例如遗传算法,傅立叶变换,数字滤波,神经网络,图像处理等等。 因为这里不能写复杂的数学公式,所以也只能形象的描述。希望如果哪位是这方面的专家,欢迎讨论更正。 卡尔曼滤波器– Kalman Filter 1.什么是卡尔曼滤波器 (What is the Kalman Filter?) 在学习卡尔曼滤波器之前,首先看看为什么叫“卡尔曼”。跟其他著名的理论(例如傅立叶变换,泰勒级数等等)一样,卡尔曼也是一个人的名字,而跟他们不同的是,他是个现代人! 卡尔曼全名Rudolf Emil Kalman,匈牙利数学家,1930年出生于匈牙利首都布达佩斯。1953,1954年于麻省理工学院分别获得电机工程学士及硕士学位。1957年于哥伦比亚大学获得博士学位。我们现在要学习的卡尔曼滤波器,正是源于他的博士论文和1960年发表的论文《A New Approach to Linear Filtering and Prediction Problems》(线性滤波与预测问题的新方法)。如果对这编论文有兴趣,可以到这里的地址下载:https://www.360docs.net/doc/1d13740705.html,/~welch/media/pdf/Kalman1960.pdf。 简单来说,卡尔曼滤波器是一个“optimal recursive data processing algorithm(最优化自回归数据处理算法)”。对于解决很大部分的问题,他是最优,效率最高甚至是最有用的。他的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。 2.卡尔曼滤波器的介绍 (Introduction to the Kalman Filter) 为了可以更加容易的理解卡尔曼滤波器,这里会应用形象的描述方法来讲解,而不是像大多数参考书那样罗列一大堆的数学公式和数学符号。但是,他的5条公式是其核心内容。结合现代的计算机,其实卡尔曼的程序相当的简单,只要你理解了他的那5条公式。 在介绍他的5条公式之前,先让我们来根据下面的例子一步一步的探索。

拓展卡尔曼滤波

南京航空航天大学 随机信号小论文题目扩展卡尔曼滤波 学生姓名梅晟 学号SX1504059 学院电子信息工程学院 专业通信与信息系统

扩展卡尔曼滤波 一、引言 20世纪60年代,在航空航天工程突飞猛进而电子计算机又方兴未艾之时,卡尔曼发表了论文《A New Approach to Linear Filtering and Prediction Problems》(一种关于线性滤波与预测问题的新方法),这让卡尔曼滤波成为了时域内有效的滤波方法,从此各种基于卡尔曼滤波的方法横空出世,在目标跟踪、故障诊断、计量经济学、惯导系统等方面得到了长足的发展。 二、卡尔曼滤波器 卡尔曼滤波是一种高效率的递归滤波器(自回归滤波器), 它能够从一系列的不完全及包含噪声的测量中,估计动态系统的状态。卡尔曼滤波的一个典型实例是从一组有限的,包含噪声的,对物体位置的观察序列(可能有偏差)预测出物体的位置的坐标及速度。 卡尔曼在NASA埃姆斯研究中心访问时,发现他的方法对于解决阿波罗计划的轨道预测很有用,后来阿波罗飞船的导航电脑便使用了这种滤波器。目前,卡尔曼滤波已经有很多不同的实现。卡尔曼最初提出的形式现在一般称为简单卡尔曼滤波器。除此以外,还有施密特扩展滤波器、信息滤波器以及很多Bierman, Thornton 开发的平方根滤波器的变种。也许最常见的卡尔曼滤波器是锁相环,它在收音机、计算机和几乎任何视频或通讯设备中广泛存在。 三、扩展卡尔曼滤波器 3.1 被估计的过程信号 卡尔曼最初提出的滤波理论只适用于线性系统,Bucy,Sunahara等人提出并研究了扩展卡尔曼滤波(Extended Kalman Filter,简称EKF),将卡尔曼滤波理论进一步应用到非线性领域。EKF的基本思想是将非线性系统线性化,然后进行卡尔曼滤波,因此EKF是一种次优滤波。 同泰勒级数类似,面对非线性关系时,我们可以通过求过程和量测方程的偏导来线性化并计算当前估计。假设过程具有状态向量x∈?n,其状态方程为非线性随机差分方程的形式。 x k=f x k?1,u k?1,w k?1(1.1) 观测变量z∈?m为: z k=?(x k,v k)(1.2) 随机变量w k和v k代表过程激励噪声和观测噪声。它们为相互独立,服从正态分布的白色噪声:

卡尔曼滤波简介和实例讲解.

卡尔曼,美国数学家和电气工程师。1930年5月 19日生于匈牙利首都布达佩斯。1953年在美国麻省理工学院毕业获理学士学位,1954年获理学硕士学位,1957年在哥伦比亚大学获科学博士学位。1957~1958年在国际商业机器公司(IBM)研究大系统计算机控制的数学问题。1958~1964年在巴尔的摩高级研究院研究控制和数学问题。1964~1971年到斯坦福大学任教授。1971年任佛罗里达大学数学系统理论研究中心主任,并兼任苏黎世的瑞士联邦高等工业学校教授。1960年卡尔曼因提出著名的卡尔曼滤波器而闻名于世。卡尔曼滤波器在随机序列估计、空间技术、工程系统辨识和经济系统建模等方面有许多重要应用。1960年卡尔曼还提出能控性的概念。能控性是控制系统的研究和实现的基本概念,在最优控制理论、稳定性理论和网络理论中起着重要作用。卡尔曼还利用对偶原理导出能观测性概念,并在数学上证明了卡尔曼滤波理论与最优控制理论对偶。为此获电气与电子工程师学会(IEEE)的最高奖──荣誉奖章。卡尔曼著有《数学系统概论》(1968)等书。 什么是卡尔曼滤波 最佳线性滤波理论起源于40年代美国科学家Wiener和前苏联科学家Kолмогоров等人的研究工作,后人统称为维纳滤波理论。从理论上说,维纳滤波的最大缺点是必须用到无限过去的数据,不适用于实时处理。为了克服这一缺点,60年代Kalman把状态空间模型引入滤波理论,并导出了一套递推估计算法,后人称之为卡尔曼

滤波理论。卡尔曼滤波是以最小均方误差为估计的最佳准则,来寻求一套递推估计的算法,其基本思想是:采用信号与噪声的状态空间模型,利用前一时刻地估计值和现时刻的观测值来更新对状态变量的估计,求出现时刻的估计值。它适合于实时处理和计算机运算。 卡尔曼滤波的实质是由量测值重构系统的状态向量。它以“预测—实测—修正”的顺序递推,根据系统的量测值来消除随机干扰,再现系统的状态,或根据系统的量测值从被污染的系统中恢复系统的本来面目。 释文:卡尔曼滤波器是一种由卡尔曼(Kalman)提出的用于时变线性系统的递归滤波器。这个系统可用包含正交状态变量的微分方程模型来描述,这种滤波器是将过去的测量估计误差合并到新的测量误差中来估计将来的误差。 卡尔曼滤波的应用 斯坦利.施密特(Stanley Schmidt)首次实现了卡尔曼滤波器.卡尔曼在NASA埃姆斯研究中心访问时,发现他的方法对于解决阿波罗计划的轨道预测很有用,后来阿波罗飞船的导航电脑使用了这种滤波器. 关于这种滤波器的论文由Swerling (1958), Kalman (1960)与 Kalman and Bucy (1961)发表.

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

关于卡尔曼滤波器的一个简单介绍 在实际生产过程中,我们经常需要使用某种仪器测量某一物理参数。比如,用一台仪器测量大气中一氧化碳的浓度。由于测量误差永远存在,使得这样两个问题非常突出,首先,是否存在某个计算方法,能够从含有误差的测量结果中获得比较接近真实值的结果;其次,如何证明这样的结果是最优的,也就是说有没有这样一种数学方法,经过其进行处理后得到的测量结果是最接近真实值的。 为了消除测量误差,人们首先想到的方法是取平均值。通过对于同一物理量的多次测量,抵消可能存在的测量误差,从而得到真实值。但是,通过生产实践,人们很快发现这样的测量方法并不是最优的。如果参与平均值计算的数据量太小,就达不到抵消测量误差的目的,如果参与计算的数据量太多,不仅完全消除了可能的物理量变化,而且实现起来非常麻烦。 1960年,匈牙利数学家卡尔曼(Rudolf Emil Kalman,1930年出生于匈牙利首都布达佩斯。1953,1954年于麻省理工学院分别获得电机工程学士及硕士学位,1957年于哥伦比亚大学获得博士学位)在他的博士论文和1960年发表的论文《A New Approach to Linear Filtering and Prediction Problems》(线性滤波与预测问题的新方法)中提出一种计算方法,后来被称为卡尔曼滤波器。这种滤波器比较简单,但是对于绝大多数类似本文开头提出的问题,可以证明,它得出的结果是最优的。卡尔曼滤波器的最大优势是它非常简单,非常容易实现。故而在各领域广泛应用超过三十年。 下面简单介绍卡尔曼滤波器,为了便于阅读,尽量少使用数学公式。下面的用词不是非常严格的。 假如,我们需要用一个温度计测量一个房间的温度。每个1秒钟从温度计上读取一个数值。假设这个房间的真实温度是25度。 由于温度计本身有测量误差,我们得到的测量值是围绕25度上下波动的一组数值。“围绕”这一特性是符合我们的直观感受的。也就是说虽然温度计上的读数在不停的变化,但是我们知道温度计上出现26度或24度的可能性要比出现30度或20度的可能性大。这种特性在数学上被称为高斯分布。当有很多因素影响测量结果,而每种干扰因素都不起主导作用时,测量的结果呈现高斯分布。对于温度计来讲,制造工艺,空气扰动,我们读数时候的误差都可能影响测量结果。所以,温度计的读取结果是符合高斯分布的。高斯分布有两个参数,一个叫做期望,在这里可以等同于平均值,一个叫做方差。方差反映了数据的集中程度。比如一个温度计测量的结果分布在24到26度之间,另一个温度计测量结果在20到30度之间,显然,前一个温度计更好一些。它的数据方差就比较小。这里假设我们温度计的方差是3。于是,温度计的测量结果就是期望是25,方差是3的一组数据。 另外,我们可以根据经验猜测一下房间的温度(就好像把自己当成一个人体温度计),比如,我们猜测房间的温度是23度,当然,我们自己猜测的结果是有方差的,我们假设这个方差是4,于是根据人的感觉,测量结果是期望是23,方差是4的一组数据。 然后,由经验我们知道房间温度变化不大,基本可以认为,这一秒的温度和下一秒的温度是相等的。 现在,在第1秒,我们有了两个值,一个是温度计上显示的数据,25。一个是我们自己 根据感觉得出来的数据,23。那么相信谁呢?这里有一个数学公式 2 2 22 3 34 g k= + ,可以算出 kg=0.6,于是25×0.6+23×(1-0.6)=24.2,这个24.2就是我们在第1秒得到的测量结果。也就是说第1秒的温度是24.2度。 现在,我们进入了第2秒,这时,由于我们已经知道了第1秒的温度是24.2度,所以,

相关文档
最新文档