# NaveGo
[![Releases](https://img.shields.io/badge/release-v0.8.0--alpha-green.svg?style=plastic)](https://github.com/rodralez/NaveGo/releases) [![DOI](https://zenodo.org/badge/12745155.svg)](https://zenodo.org/badge/latestdoi/12745155)
NaveGo: an open-source MATLAB/GNU Octave toolbox for processing integrated navigation systems and performing inertial sensors profiling analysis.
NaveGo is an open-source framework for processing INS/GPS sensors that is freely available online. It is developed under MATLAB/GNU Octave due to this programming language has become a *de facto* standard for simulation and mathematical computing. NaveGo has been verified by processing real-world data from a real trajectory and contrasting results with a commercial, closed-source software package. Difference between both solutions have shown to be negligible.
NaveGo is supported at the moment by three academic research groups: GridTics at the National University of Technology (Argentina), ITIC at the National University of Cuyo (Argentina), and DIATI at the Politecnico di Torino (Italy).
## Features
Main features of NaveGo are:
* Processing of an inertial navigation system (INS).
* Processing of a loosely-coupled integrated navigation system (INS/GPS).
* Implementation of the Allan variance procedure to characterize inertial sensors' typical errors.
* Simulation of inertial sensors and GPS (in a very early stage).
## How to cite this work
Rodrigo Gonzalez, Carlos Catania, and Paolo Dabove (2016). NaveGo: an open-source MATLAB/GNU Octave toolbox for processing integrated navigation systems and performing inertial sensors profiling analysis. http://doi.org/10.5281/zenodo.165125. URL: https://github.com/rodralez/NaveGo/.
## Contributions
We are looking for contributors for NaveGo! Since integrated navigation is a topic used in several fields (Geomatics, Geology, Mobile Mapping, Autonomous Driving, even Veterinary) we hope other communities than the navigation community compromise and contribute with this open-source project.
You can contribute in many ways:
* Writing code.
* Writing a manual.
* Reporting bugs.
* Suggesting new features.
If you are interested, please feel free to contact Dr. Rodrigo Gonzalez at rodralez [at] frm [dot] utn [dot] edu [dot] ar.
## Publications
The underlying mathematical model of NaveGo is based on two articles which are recommended for reading:
* R. Gonzalez, J.I. Giribet, and H.D. Patiño. NaveGo: a simulation framework for low-cost integrated navigation systems, Journal of Control Engineering and Applied Informatics, vol. 17, issue 2, pp. 110-120, 2015. [Link](http://ceai.srait.ro/index.php?journal=ceai&page=article&op=view&path%5B%5D=2478).
* R. Gonzalez, J.I. Giribet, and H.D. Patiño. An approach to benchmarking of loosely coupled low-cost navigation systems. Mathematical and Computer Modelling of Dynamical Systems, vol. 21, issue 3, pp. 272-287, 2015. [Link](http://www.tandfonline.com/doi/abs/10.1080/13873954.2014.952642).
## Acknowledgments
We would like to thank to many people that have contribute to make NaveGo a better tool:
* Dr. Juan Ignacio Giribet (Universidad Nacional de Buenos Aires, Argentina) for this continuous support on theory aspects of INS/GPS systems.
* Dr. Charles K. Toth (The Ohio State University, USA), Dr. Allison Kealy, and M.Sc. Azmir Hasnur-Rabiain (both from The University of Melbourne, Australia) for generously sharing IMU and GPS datasets, and in particular, for Azmir's unselfish help.
* Prof. Zhu, Dr. Yang, and Mr. Bo Sun, all from the Laboratory of Precision Measuring Technology and Instruments, Tianjin University, Tianjin, China, for contributing with IMU static measurements to test Allan variance routines.
* Dr. Paolo Dabove and Dr. Marco Piras (both from DIATI, Politecnico di Torino, Italy) for helping to debug NaveGo and suggesting new features.
# Examples
## Allan variance example
Just execute the file `navego_allan_example.m`. It process 2-hours of static measurements from an Sensonor STIM300 IMU.
## INS/GPS example
The file `navego_example.m` tries to demonstrate the use of NaveGo. It compares the performances of two simulated IMUs, ADIS16405 IMU and ADIS16488 IMU, both integrated with a simulated GPS.
Next, a description of this file.
### Reset section
```matlab
clc
close all
clear
matlabrc
fprintf('\nStarting simulation ... \n')
```
### Code execution parameters
```matlab
% Comment any of the following parameters in order to NOT execute a particular portion of code
GPS_DATA = 'ON'; % Simulate GPS data
IMU1_DATA = 'ON'; % Simulate ADIS16405 IMU data
IMU2_DATA = 'ON'; % Simulate ADIS16488 IMU data
IMU1_INS = 'ON'; % Execute INS/GPS integration for ADIS16405 IMU
IMU2_INS = 'ON'; % Execute INS/GPS integration for ADIS16488 IMU
PLOT = 'ON'; % Plot results.
% If a particular parameter is commented above, it is set by default to 'OFF'.
if (~exist('GPS_DATA','var')), GPS_DATA = 'OFF'; end
if (~exist('IMU1_DATA','var')), IMU1_DATA = 'OFF'; end
if (~exist('IMU2_DATA','var')), IMU2_DATA = 'OFF'; end
if (~exist('IMU1_INS','var')), IMU1_INS = 'OFF'; end
if (~exist('IMU2_INS','var')), IMU2_INS = 'OFF'; end
if (~exist('PLOT','var')), PLOT = 'OFF'; end
```
### Conversion constants
```matlab
G = 9.81; % Gravity constant, m/s^2
G2MSS = G; % g to m/s^2
MSS2G = (1/G); % m/s^2 to g
D2R = (pi/180); % degrees to radians
R2D = (180/pi); % radians to degrees
KT2MS = 0.514444; % knot to m/s
MS2KMH = 3.6; % m/s to km/h
```
### Load reference data
```matlab
fprintf('Loading reference dataset from a trajectory generator... \n')
load ref.mat
% ref.mat contains the reference data structure from which inertial
% sensors and GPS wil be simulated. It must contain the following fields:
% t: Nx1 time vector (seconds).
% lat: Nx1 latitude (radians).
% lon: Nx1 longitude (radians).
% h: Nx1 altitude (m).
% vel: Nx3 NED velocities (m/s).
% roll: Nx1 roll angles (radians).
% pitch: Nx1 pitch angles (radians).
% yaw: Nx1 yaw angle vector (radians).
% kn: 1x1 number of elements of time vector.
% DCMnb: Nx9 Direct Cosine Matrix nav-to-body. Each row contains
% the elements of one matrix ordered by columns as
% [a11 a21 a31 a12 a22 a32 a13 a23 a33].
% freq: sampling frequency (Hz).
```
### ADIS16405 IMU error profile
```matlab
% IMU data structure:
% t: Ix1 time vector (seconds).
% fb: Ix3 accelerations vector in body frame XYZ (m/s^2).
% wb: Ix3 turn rates vector in body frame XYZ (radians/s).
% arw: 1x3 angle random walks (rad/s/root-Hz).
% vrw: 1x3 angle velocity walks (m/s^2/root-Hz).
% gstd: 1x3 gyros standard deviations (radians/s).
% astd: 1x3 accrs standard deviations (m/s^2).
% gb_fix: 1x3 gyros static biases or turn-on biases (radians/s).
% ab_fix: 1x3 accrs static biases or turn-on biases (m/s^2).
% gb_drift: 1x3 gyros dynamic biases or bias instabilities (radians/s).
% ab_drift: 1x3 accrs dynamic biases or bias instabilities (m/s^2).
% gb_corr: 1x3 gyros correlation times (seconds).
% ab_corr: 1x3 accrs correlation times (seconds).
% gpsd : 1x3 gyros dynamic biases PSD (rad/s/root-Hz).
% apsd : 1x3 accrs dynamic biases PSD (m/s^2/root-Hz);
% freq: 1x1 sampling frequency (Hz).
% ini_align: 1x3 initial attitude at t(1).
% ini_align_err: 1x3 initial attitude errors at t(1).
% ref dataset will be used to simulate IMU sensors.
ADIS16405.arw = 2 .* ones(1,3); % Angle random walks [X Y Z] (deg/root-hour)
ADIS16405.vrw = 0.2 .* ones(1,3); % Velocity random walks [X Y Z] (m/s/root-hour)
ADIS16405.gb_fix = 3 .* ones(1,3); % Gyro static biases [X Y Z] (deg/s)
ADIS16405.ab_fix = 50 .* ones(1,3); % Acc static biases [X Y Z] (mg)
ADIS16405.gb_drift = 0.007 .* ones(1,3); % Gyro dynamic biases [X Y Z] (deg/s)
ADIS16405
没有合适的资源?快使用搜索试试~ 我知道了~
NaveGo一个开源的MATLAB GNU Octave工具箱(用于gps,惯导和组合导航学习)
共51个文件
m:43个
md:3个
txt:2个
2星 需积分: 43 77 下载量 97 浏览量
2017-11-29
10:16:32
上传
评论 12
收藏 34.44MB ZIP 举报
温馨提示
NaveGo一个开源的MATLAB GNU Octave工具箱,用于处理集成导航系统和执行惯性传感器分析。 NaveGo是一个开源的框架,用于处理在网上免费提供的INS GPS传感器。由于这种编程语言已经成为模拟和数学计算的实际标准,它是在MATLAB GNU Octave的基础上开发的。NaveGo已经通过处理真实轨迹的真实数据和与一个商业的、封闭的软件包的对比结果进行了验证。两个解之间的差值可以忽略不计。 目前,NaveGo得到了三个学术研究团体的支持国家技术大学的GridTics(阿根廷),ITIC at the National University of Cuyo(阿根廷),DIATI在Politecnico di Torino(意大利)
资源推荐
资源详情
资源评论
收起资源包目录
GPS-INS-solf-master.zip (51个子文件)
GPS-INS-solf-master
rmse.m 1KB
acc_gen.m 3KB
ecef2llh.m 2KB
imu_err_profile.m 3KB
allan_get_rw.m 2KB
radius.m 2KB
qua2euler.m 2KB
transportrate.m 2KB
skewm.m 1KB
gravity_b.m 1KB
ins_gps.m 15KB
interpolate.m 4KB
kalman.m 3KB
license.txt 956B
gps_err_profile.m 2KB
qua_update.m 2KB
pllh2vned.m 2KB
navego_example.m 20KB
earthrate.m 2KB
stim300.mat 33.11MB
lgpl.txt 7KB
gravity.m 2KB
ecef2ned.m 2KB
vel_update.m 2KB
dcm_update.m 2KB
qua2dcm.m 2KB
print_rmse.m 4KB
LICENSE 7KB
GSoC-2017_how-to-apply.md 6KB
allan_get_bdrift.m 2KB
allan_overlap.m 21KB
euler2dcm.m 2KB
coriolis.m 2KB
downsampling.m 2KB
euler2qua.m 2KB
navego_interpolation.m 5KB
coriolis_b.m 2KB
hd_update.m 2KB
navego_allan_example.m 2KB
allan_imu.m 7KB
ref.mat 1.33MB
gyro_gen.m 3KB
dcm2euler.m 2KB
att_update.m 3KB
acc_nav2body.m 2KB
gps_gen.m 2KB
README.md 16KB
pos_update.m 2KB
gyro_gen_delta.m 2KB
GSoC-2017_ideas-list.md 5KB
F_update.m 5KB
共 51 条
- 1
资源评论
- qq3442699562018-11-17不能用,不能用,大家不要下啦
- dollmi2018-01-23下载不了,再试一次
绒翼
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功