# EKF-Proj1-ROBGY6213
Extended Kalman Filter implementation for given IMU and Vicon data
## Overview
This is the implementation of an Extended Kalman Filter (EKF) for state estimation. It uses the body frame acceleration and angular velocity from the onboard
IMU as the control inputs. The measurement will be given by the pose or velocity from the Vicon. The body frame of the robot is coincident with the IMU frame.
## Sensor Data
The data for each trial is provided in a mat file. The mat file also contains Vicon data. The Vicon data
is stored in two matrix variables, time and vicon. The time variable contains the timestamp while the
vicon variable contains the Vicon data in the following format:
[x y z roll pitch yaw vx vy vz ωx ωy ωz]
The on board processor of the robot collects synchronized camera and IMU data and sends them to the
desktop computer. At this stage, the camera data should not be used. The sensor data is decoded into
standard MATLAB format. Note that since the sensor data is transmitted via wireless network, there may
or may not be a sensor packet available during a specific iteration of the control loop. A sensor packet is a
struct that contains following fields:
1 sensor.is_ready % True if a sensor packet is available, false otherwise
2 sensor.t % Time stamp for the sensor packet, different from the Vicon time
3 sensor.omg % Body frame angular velocity from the gyroscope
4 sensor.acc % Body frame linear acceleration from the accelerometer
5 sensor.img % Undistorted image.
6 sensor.K % Calibration matrix of the undistorted image
7 sensor.id % IDs of all AprilTags detected, empty if no tag is detected in the image
8 sensor.p0 % Corners of the detect AprilTags in the image,
9 sensor.p1 % the ordering of the corners, and the distribution of the tags
10 sensor.p2
11 sensor.p3
12 sensor.p4
## Kalman Filter
In this project, we use the Extended Kalman Filter (EKF) to estimate the position, velocity, and orientation, and sensor biases of an Micro Aerial Vehicle.
The Vicon velocity is given in the world frame, whereas the angular rate in the body frame of the robot. The body frame acceleration and angular velocity from the on board IMU are used as inputs.
The filter has two implementations. In the first oneone, the measurement update will be given by the position and orientation from vicon, whereas the second one uses only the velocity from the Vicon.
没有合适的资源?快使用搜索试试~ 我知道了~
给定IMU和Vicon数据的扩展卡尔曼滤波实现matlab代码.zip
共24个文件
m:13个
ini:5个
mat:3个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 19 浏览量
2024-03-18
16:12:14
上传
评论
收藏 157.8MB ZIP 举报
温馨提示
1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
资源推荐
资源详情
资源评论
收起资源包目录
给定IMU和Vicon数据的扩展卡尔曼滤波实现matlab代码.zip (24个子文件)
给定IMU和Vicon数据的扩展卡尔曼滤波实现matlab代码
desktop.ini 244B
handoutproj1ROB6213_2024.pdf 171KB
README.md 2KB
code
part2
init.m 893B
gxv_calculation.m 0B
upd_step.m 449B
desktop.ini 244B
pred_step.m 229B
plotData.m 2KB
KalmanFilt_Part2.m 662B
data
studentdata1.mat 55.1MB
studentdata4.mat 24.01MB
studentdata9.mat 78.51MB
desktop.ini 244B
part1
init.m 893B
.gitattributes 455B
gxv_calculation.m 486B
upd_step.m 636B
KalmanFilt_Part1.m 1KB
fxun_calculation.m 1KB
desktop.ini 244B
pred_step.m 7KB
plotData.m 2KB
desktop.ini 244B
共 24 条
- 1
资源评论
matlab科研助手
- 粉丝: 1w+
- 资源: 2085
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MySQL是一种广泛使用的开源关系型数据库管理系统
- MySQL是一种广泛使用的开源关系型数据库管理系统
- MySQL是一种广泛使用的开源关系型数据库管理系统
- 012c3c44c465a099108e0d8570b86a70.zip
- 基于Java和JavaWeb的网上商城项目设计源码 - myshopping
- 基于Vue和JavaScript的书城项目设计源码 - Demo12.18
- wp2787778-map-wallpaper.jpg
- 基于Javascript的杜王町打工人仓库管理系统设计源码 - 杜王町打工人的仓库
- 基于C#的报销材料合并工具设计源码 - 报账材料合并
- 基于Java的驾校一点通后端服务设计源码 - jiaxiaoServer
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功