日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

Kalman滤波在船舶GPS导航定位系统中的应用(含MATLAB仿真)

發(fā)布時間:2023/12/29 windows 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Kalman滤波在船舶GPS导航定位系统中的应用(含MATLAB仿真) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Kalman濾波在船舶GPS導(dǎo)航定位系統(tǒng)中的應(yīng)用(含MATLAB仿真)

  • 1、原理介紹
  • 2、MATLAB仿真代碼
    • Kalman濾波
    • 計算歐氏距離
  • 3、仿真結(jié)果
    • figure1
    • figure2

1、原理介紹

全球定位系統(tǒng)(Global Positioning System,GPS)廣泛運(yùn)用于軍事和民用領(lǐng)域。

GPS接收器可以接受衛(wèi)星的信號,算出接受載體的位置和速度。由于民用GPS導(dǎo)航衛(wèi)星人為的加入了干擾,所以需要對GPS的位置和速度信號進(jìn)行濾波。

GPS中人為加入的干擾信號可以看作是GPS的量測噪聲,也就是觀測噪聲 V(k)V(k)V(k) 。


為了簡化模型,假設(shè)船舶直線運(yùn)動,從港口出發(fā),以港口為坐標(biāo)原點(diǎn),設(shè)采樣時間為 T0T_0T0?,用 s(k)s(k)s(k)表示船舶在采樣時刻 kT0kT_0kT0? 處的真實(shí)位置,用 y(k)y(k)y(k) 表示在時刻 kT0kT_0kT0? 處GPS的觀測值,則觀測模型為:
y(k)=s(k)+v(k)y(k)=s(k)+v(k) y(k)=s(k)+v(k)
v(k)v(k)v(k)是GPS定位的量測噪聲,假設(shè)其為高斯白噪聲。

加速度 a(k)a(k)a(k) 由機(jī)動加速度 u(k)u(k)u(k) (動力系統(tǒng)控制)和隨機(jī)加速度 w(k)w(k)w(k) (也就是海浪、風(fēng)的影響)兩部分合成,即;
a(k)=u(k)+w(k)a(k)=u(k)+w(k) a(k)=u(k)+w(k)
假設(shè) w(k)w(k)w(k) 是符合高斯分布的白噪聲。
定義在采樣時刻 kT0kT_0kT0? 處系統(tǒng)的狀態(tài) x(k)x(k)x(k) 是船舶的位置和速度,即
x(k)=[s(k)s(k)˙](1)x(k)=\left[ \begin{matrix} s(k) \\ \dot{s(k)} \end{matrix} \tag{1} \right] x(k)=[s(k)s(k)˙??](1)
狀態(tài)方程是:
[s(k)s˙(k)]=[1T001][s(k?1)s˙(k?1)]+[0.5T02T0]u(k?1)+[0.5T02T0]w(k?1)\left[ \begin{matrix} s(k) \\ \dot{s}(k) \end{matrix} \right] =\left[ \begin{matrix} 1 & {T_0}\\ 0 & 1 \end{matrix} \right] \left[ \begin{matrix} s(k-1) \\ \dot{s}(k-1) \end{matrix} \right] + \left[ \begin{matrix} 0.5T_0^2\\ T_0 \end{matrix} \right] u(k-1) + \left[ \begin{matrix} 0.5T_0^2\\ T_0 \end{matrix} \right] w(k-1) [s(k)s˙(k)?]=[10?T0?1?][s(k?1)s˙(k?1)?]+[0.5T02?T0??]u(k?1)+[0.5T02?T0??]w(k?1)
觀測方程為:
y(k)=[10][s(k)s˙(k)]+v(k)y(k)=\left[ \begin{matrix} 1 & 0 \end{matrix} \right] \left[ \begin{matrix} s(k) \\ \dot{s}(k) \end{matrix} \right] + v(k) y(k)=[1?0?][s(k)s˙(k)?]+v(k)
接著將勻速直線運(yùn)動拓展到四維,即
[x(k)x˙(k)y(k)y˙(k)]=[1T000100001T0001][x(k?1)x˙(k?1)y(k?1)y˙(k?1)]+[0.5T0200T00.5T0200T0]w2×1(k)\left[ \begin{matrix} x(k)\\ \dot{x}(k)\\ y(k)\\ \dot{y}(k)\\ \end{matrix} \right]= \left[ \begin{matrix} 1 & T & 0 & 0\\ 0 & 1 & 0 & 0\\ 0 & 0 & 1 & T\\ 0 & 0 & 0 & 1\\ \end{matrix} \right] \left[ \begin{matrix} x(k-1)\\ \dot{x}(k-1)\\ y(k-1)\\ \dot{y}(k-1)\\ \end{matrix} \right] + \left[ \begin{matrix} 0.5T_0^2 & 0\\ 0 & T_0\\ 0.5T_0^2 & 0\\ 0 & T_0\\ \end{matrix} \right] w_{2\times1}(k) ?????x(k)x˙(k)y(k)y˙?(k)??????=?????1000?T100?0010?00T1???????????x(k?1)x˙(k?1)y(k?1)y˙?(k?1)??????+?????0.5T02?00.5T02?0?0T0?0T0???????w2×1?(k)
Z(k)=[10000010][x(k)x˙(k)y(k)y˙(k)]+v2×1(k)Z(k) =\left[ \begin{matrix} 1 & 0 & 0 & 0\\ 0 & 0 & 1 & 0\\ \end{matrix} \right] \left[ \begin{matrix} x(k)\\ \dot{x}(k)\\ y(k)\\ \dot{y}(k)\\ \end{matrix} \right] +v_{2\times1}(k) Z(k)=[10?00?01?00?]?????x(k)x˙(k)y(k)y˙?(k)??????+v2×1?(k)

2、MATLAB仿真代碼

Kalman濾波

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %功能說明:Kalman在GPS中的應(yīng)用 function Kalman_GPS T = 1; %雷達(dá)掃描周期 N = 80/T; %總的采樣次數(shù) X = zeros(4,N); %目標(biāo)真實(shí)位置、速度 X(:,1) = [-100,2,200,20]; %目標(biāo)初始位置和速度 Z = zeros(2,N); %傳感器對位置的量測 Z(:,1) = [X(1,1),X(1,3)]; %觀測初始化 delta_w = 1e-2; %如果增大這個參數(shù),目標(biāo)真實(shí)軌跡就是曲線了 Q = delta_w*diag([0.5,1,0.5,1]); %過程噪聲方差 R = 100*eye(2); %觀測噪聲方差 F = [1,T,0,0;0,1,0,0;0,0,1,T;0,0,0,1] %一步轉(zhuǎn)移陣 H = [1,0,0,0;0,0,1,0] %量測矩陣 I = eye(4); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for k = 2:NX(:,k) = F*X(:,k-1) + sqrtm(Q)*randn(4,1); %目標(biāo)真實(shí)軌跡Z(:,k)= H*X(:,k) + sqrtm(R)*randn(2,1); %目標(biāo)觀測 end%Kalman濾波 X_kf = zeros(4,N); X_kf(:,1) = X(:,1); %Kalman濾波狀態(tài)初始化 P = eye(4); %協(xié)方差陣初始化 for k = 2:NX_pre = F*X_kf(:,k-1); %狀態(tài)預(yù)測P_pre = F*P*F' + Q; %協(xié)方差預(yù)測Kg = P_pre*H'*inv(H*P_pre*H' + R); %計算Kalman增益e = Z(:,k) - H*X_pre; %新息X_kf(:,k) = X_pre + Kg*e; %狀態(tài)更新P = (I-Kg*H)*P_pre; %協(xié)方差更新 end %誤差分析 for i = 1:NError_Observation(i) = RMS(X(:,i),Z(:,i)); Error_Kalman(i) = RMS(X(:,i),X_kf(:,i)); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% figure %畫圖顯示 hold on; box on; plot(X(1,:),X(3,:),'-k'); %真實(shí)軌跡 plot(Z(1,:),Z(2,:),'-b.'); %觀測軌跡 plot(X_kf(1,:),X_kf(3,:),'-r+'); %kalman濾波軌跡 legend('真實(shí)軌跡','觀測軌跡','Kalman濾波軌跡'); xlabel('X/m'); ylabel('Y/m');figure %誤差分析圖 hold on; box on; plot(Error_Observation,'-ko','MarkerFace','g'); plot(Error_Kalman,'-ks','MarkerFace','r'); legend('濾波前誤差','濾波后誤差'); xlabel('采樣時間/s'); ylabel('誤差值/℃');

計算歐氏距離

%計算歐氏距離 function dist = RMS(X1,X2) if length(X2) <= 2dist=sqrt((X1(1)-X2(1))^2 + (X1(3)-X2(2))^2); elsedist=sqrt((X1(1)-X2(1))^2 + (X1(3)-X2(3))^2); end

3、仿真結(jié)果

figure1

figure2

總結(jié)

以上是生活随笔為你收集整理的Kalman滤波在船舶GPS导航定位系统中的应用(含MATLAB仿真)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91久久精品国产91性色69 | 性感美女视频一二三 | 亚洲国产日韩一区无码精品久久久 | 中字av在线 | 国产一区亚洲二区三区 | 一本色道久久综合精品婷婷 | 日韩视频免费在线观看 | a视频免费 | 亚洲操操操 | 黄色片在线观看免费 | 久久亚洲欧洲 | 99热欧美 | 国产又粗又硬又黄的视频 | 亚洲涩色 | 久久在线免费观看视频 | 国产干b | 亚洲欧美另类一区 | 国产男人搡女人免费视频 | 东北少妇露脸无套对白 | 一区二区三区在线免费观看视频 | 黄色一及毛片 | 精品偷拍一区 | 成人黄色电影网址 | 91丨porny丨成人蝌蚪 | 亚洲国产成人精品激情在线 | 亚洲人成网站999久久久综合 | 日韩欧美成人一区 | 琪琪色av | 少妇激情偷人爽爽91嫩草 | 日本一品道 | 亚洲自拍三区 | 亚洲毛片在线播放 | 日日拍夜夜拍 | 欧美日韩视频在线播放 | 午夜精品网 | 日韩亚洲欧美一区二区三区 | 波多野结衣视频播放 | 天天天天天干 | 国产第一页屁屁影院 | 一级片免费在线播放 | 最好看的2019中文大全在线观看 | 京香julia在线观看 | 国产精品视频久久 | 亚洲综合社区 | 国产对白自拍 | 日韩亚洲精品在线 | 亚洲狠狠丁香婷婷综合久久久 | 亚洲天堂网在线观看视频 | 高清av网站 | 午夜免费一级片 | 丰满少妇乱子伦精品看片 | 日韩中文字幕免费观看 | 国产v片 | 色综合网址 | 王者后宫yin肉h文催眠 | 人人爽爽爽 | 黑人操亚洲人 | 欧美精品一区二区久久婷婷 | 国产一区二区三区四区精 | 用力使劲高潮了888av | 欧美成人精品一区二区三区在线观看 | 中文字幕在线观看一区 | 女人扒开双腿让男人捅 | 成人做爰免费视频免费看 | 天天看片天天干 | 一级视频在线免费观看 | 黄瓜视频在线播放 | 久久av综合网 | 欧美性受xxxxxx黑人xyx性爽 | 最近更新中文字幕 | 美女18毛片 | 91九色网站 | 日本r级电影在线观看 | 亚洲红桃视频 | 91看片国产 | 超碰网站在线观看 | 欧美日韩视频在线播放 | 精品国产二区三区 | 性感美女福利视频 | 亚洲无码精品免费 | 欧美我不卡 | 动漫美女放屁 | 911国产在线 | 六月天综合网 | 美女bb视频 | 精品久久久久亚洲 | 一区二区精彩视频 | 欧美黑人xxxⅹ高潮交 | 欧美鲁鲁 | 亚洲成人高清 | 国产精品99久久久久久久久 | 国产一区二区三区精品愉拍 | 久草福利在线 | 一二三不卡视频 | 97在线视频人妻无码 | 午夜国产| 视频在线观看一区二区 | 熟女视频一区二区三区 | 石原莉奈在线播放 |