Extended Kalman Filter Navigation System-Slam 2D Problem
Documentation
The following Matlab code implements the extended Kalman filter to be use in a Slam
application with encoders and laser sensors.
The data set used was taking in the Car Park, with artificial beacons. This will let us
to make a comparison between the real and estimated position of the beacons and
analyse the filters performance.
To run the code:
Run the file slam. This sets up a graphical window that will let you to see the path
estimation and the difference with the real path (Gps).
To start the filter, run the script file slam.
Function Definitions:
slam:
Function to run the code
FindT:
Function to find the index of the time sensor vector, for the
selected time.
[GPSTIME,LONG,LAT]=ReadGpsData(file):
Function to read the gps data, and transform to a local navigation
frame with respect to a reference point.
[Time,STEERING,SPEED1]=ReadUteData(file):
Similar to the ReadGpsData function, is to read the encoder data,
from a mat file. ( Not used in this example since all sensor data is
in a single matlab file.
Pred(dt,u):
Function to implement the prediction stage of the EKF. The inputs are
the estimated state vector, the estimates covariance matrix and the
encoder data (velocity and steering).
[beacon]=getpos:
Function to get the position of the artificial beacons, from a gps
data set.
[index,innov,S]=asoc_update(zlaser,pointer,updatee):
Function to make the association of the observation with one beacon,
and eventually the update. In the case one beacon was already
associated to the observation, or if it is the first time we are
seeing it, then we have to incorporate this to the vector state and
make an update with this new state.
The flag updatee is used to know if it is an update or if it is only
an association. A flag index is return to know the result of the chi
square test.
new_state(zlaser):
This function is used when we have a new observation that was not
associated with any beacon of the state vector. The Cartesian
position of the new beacon is evaluated and insert as a new state.
A large number for the variance uncertainty is set. This may
introduce numerical problems if not properly selected.
[index2]=Zone_Probe(zlaser):
The association task is very expensive. It is important to try
association only with the beacons that are in the area. This area can
be evaluated with the uncertainty of the vehicle. It returns the
indices to all the beacons that are within a certain area.
laserview(RR,a,xp,hhh3,hhh4,hhh2,LASERr,LASERo):
Function to plots the laser scan. Plots the standard reflections in
one colour and the high intensity reflection in a different colour.
[LASERr,LASERo,RR,a]=getdata(laser):
Function to get the range and bearing to the beacons. Gets the high
intensity point and evaluate the centre of the beacon.
[innov, S]=update_gps(zgps):
Implement the update stage of the EKF with a gps observation. The
inputs are the predicted state vector, the predicted covariance
matrix, and the gps data (longitude and latitude). The GPS is only
used for initialisation purposes.
[meanq,q,chib_up,chib_low,timeinn]=inn_analyse(inn,S):
Function to analyse innovation sequences. Is used only to plot the
Normalised Innovations and Innovation Confidence Bounds.
Rxx=auto(x):
Computes autocorrelation of input data set. N is the number of data
points, x is a column matrix holding the input data set.
Uses fft method as advertised in Maybeck p193.
Plots:
Script file to run all the plots when the filter finish.
SaveStates(states,diagcov,times,Flag):
Function to save the states and the covariance matrix in arrays. All
the beacons in the state vector are saved. Another vector is saved
called FlagStates with the number of times the beacon has been seen..
没有合适的资源?快使用搜索试试~ 我知道了~
SLAM-MATLAB-code.zip_EKF_QXDK_fastslam_matlab slam_slam和matlab
共414个文件
m:305个
mat:23个
gif:12个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 5 下载量 59 浏览量
2022-07-14
00:01:56
上传
评论 1
收藏 15.49MB ZIP 举报
温馨提示
slam的仿真,使用matlab语言进行仿真,包括ekf,fastslam
资源详情
资源评论
资源推荐
收起资源包目录
SLAM-MATLAB-code.zip_EKF_QXDK_fastslam_matlab slam_slam和matlab (414个子文件)
ekfslam_sim.asv 7KB
augment.asv 1KB
predict.asv 887B
observe_model.asv 861B
sjursflat.bcn 2.84MB
car.bmp 383KB
bakery1.cnt 211KB
bakery3.cnt 103KB
atrium.cnt 83KB
COPYING 18KB
Thumbs.db 17KB
Thumbs.db 7KB
~$cumentation.doc 162B
documentation.doc 35KB
documentation.doc 35KB
Navigation System Example Documentation.doc 29KB
Navigation System Example Documentation.doc 29KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
matlab.el 216KB
sjursflat.enc 826KB
testdata.enc 479B
12154.fig 2.35MB
结果1.fig 195KB
frontend.fig 53KB
frontend.fig 53KB
frontend.fig 53KB
frontend.fig 53KB
image014.gif 53KB
image012.gif 4KB
image013.gif 4KB
image007.gif 2KB
image011.gif 2KB
image009.gif 1KB
image006.gif 814B
image001.gif 686B
image003.gif 654B
image005.gif 423B
image002.gif 148B
image004.gif 92B
project1.tar.gz 0B
Ute_modeling_info.htm 11KB
data_file.htm 4KB
testdata.imu 678B
image001.jpg 26KB
image010.jpg 9KB
image008.jpg 8KB
hs_err_pid3100.log 17KB
chi2invtable.m 226KB
slam.m 29KB
slam.m 29KB
extractlines.m 22KB
readonestep.m 8KB
run_pfilter.m 7KB
ekfslam_sim.m 7KB
cekf3.m 7KB
ekfslam_sim.m 7KB
find_trees.m 7KB
fastslam2_sim.m 7KB
ekfslam_sim.m 7KB
slam.m 6KB
openfiles.m 6KB
fastslam1_sim.m 6KB
frontend.m 5KB
frontend.m 5KB
frontend.m 5KB
frontend.m 5KB
matchnnsf.m 5KB
drawrobot.m 5KB
predict.m 5KB
readoneline.m 5KB
car_data.m 4KB
car_data.m 4KB
drawrawdata.m 4KB
robotdd.m 4KB
drawlabel.m 4KB
extractbeacons.m 4KB
demographics.m 4KB
detectTreesI16.m 4KB
sjursflatbeaconsetup.m 3KB
plots.m 3KB
plots.m 3KB
plotsold.m 3KB
plotsold.m 3KB
bakery3setup.m 3KB
atriumsetup.m 3KB
bakery1setup.m 3KB
sjursflatlinesetup.m 3KB
relocation.m 3KB
init.m 3KB
rad_sim.m 3KB
rad_sim.m 3KB
drawtransform.m 3KB
findregions.m 3KB
fitlinepolar.m 3KB
estimate_vehicle_location.m 3KB
共 414 条
- 1
- 2
- 3
- 4
- 5
局外狗
- 粉丝: 67
- 资源: 1万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论4