基于Matlab的卡爾曼濾波算法仿真_第1頁
基于Matlab的卡爾曼濾波算法仿真_第2頁
基于Matlab的卡爾曼濾波算法仿真_第3頁
基于Matlab的卡爾曼濾波算法仿真_第4頁
基于Matlab的卡爾曼濾波算法仿真_第5頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

PAGE基于Matlab的卡爾曼濾波算法仿真卡爾曼濾波器原理卡爾曼濾波是解決以均方誤差最小為準則的最佳線性濾波問題,它根據(jù)前一個估計值和最近一個觀察數(shù)據(jù)來估計信號的當前值。它是用狀態(tài)方程和遞推方法進行估計的,而它的解是以估計值(常常是狀態(tài)變量的估計值)的形式給出其信號模型是從狀態(tài)方程和量測方程得到的。

卡爾曼濾波中信號和噪聲是用狀態(tài)方程和測量方程來表示的。因此設(shè)計卡爾曼濾波器要求已知狀態(tài)方程和測量方程。它不需要知道全部過去的數(shù)據(jù),采用遞推的方法計算,它既可以用于平穩(wěn)和不平穩(wěn)的隨機過程,同時也可以應用解決非時變和時變系統(tǒng),因而它比維納過濾有更廣泛的應用??柭鼛讉€重要公式:s?(n|n)=as?(n-1|n-1)+Gn[x(n)–acs?(n-1|n-1)](1)P(n)=a2ξ(n-1)+Q(2)Gn=cP(n)R+ξ(n)=RcGn=(1–這組方程的遞推計算過程如圖1所示。圖1.卡爾曼濾波器遞推運算流程圖卡爾曼濾波過程實際上是獲取維納解的遞推運算過程,這一過程從某個初始狀態(tài)啟動,經(jīng)過迭代運算,最終到達穩(wěn)定狀態(tài),即維納濾波狀態(tài)。遞推計算按圖1所示進行。假設(shè)已經(jīng)有了初始值s?(0|0)和ξ(0),這樣便可由式(2)計算P(1),由式(3)計算G1,由式(4)計算ξ(1),由式(1)計算s?(1|1)。ξ(1)和s?(1|1)便成為下一輪迭代運算的已知數(shù)據(jù)。在遞推運算過程中,隨著迭代次數(shù)n的增加,ξ(n)將逐漸下降,知道最終趨近于某個穩(wěn)定值ξ0。這時ξ(n)=ξ(n-1)=ξ0為求得這個穩(wěn)定值,將式(3)和式(2)代入式(4),得到ξ02+1-解此方程即可求出ξ0?;贛atlab的卡爾曼濾波器的仿真Matlab代碼如下:clearN=200;w(1)=0;x(1)=5;a=1;c=1;%過程噪聲Q1=randn(1,N)*1;%測量噪聲Q2=randn(1,N);%狀態(tài)矩陣fork=2:N;x(k)=a*x(k-1)+Q1(k-1);endfork=1:N;Y(k)=c*x(k)+Q2(k);endp(1)=10;s(1)=1;fort=2:N;Rww=cov(Q1(1:t));Rvv=cov(Q2(1:t));p1(t)=a.^

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論