forked from priseborough/InertialNav
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLoadNavFilterTestData.m
More file actions
84 lines (73 loc) · 2.18 KB
/
LoadNavFilterTestData.m
File metadata and controls
84 lines (73 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
clear all;
%load('TestLog1.mat')
%load('TestLog2.mat')
%load('TestLog3.mat')
load('simtest20.mat')
%% IMU Data
IMUframe = IMU(:,1);
IMUtime = IMU(:,2)*1e-3;
angRate = IMU(:,3:5);
accel = IMU(:,6:8);
%% GPS Data
if ~isempty(GPS)
goodDataIndices=find(GPS(:,2) == 3);
GPSframe = GPS(goodDataIndices,1);
GPStime = GPS(goodDataIndices,3);
LatDeg = GPS(goodDataIndices,7);
LngDeg = GPS(goodDataIndices,8);
Hgt = GPS(goodDataIndices,9);
deg2rad = pi/180;
CourseDeg = GPS(goodDataIndices,12);
GndSpd = GPS(goodDataIndices,11);
VelD = GPS(goodDataIndices,13);
end
%% Magnetometer Data
if ~isempty(MAG)
MAGframe = MAG(:,1);
MAGtime = MAG(:,2)*1e-3;
MagX = MAG(:,3) - MAG(:,6);
MagY = MAG(:,4) - MAG(:,7);
MagZ = MAG(:,5) - MAG(:,8);
MagBiasX = - MAG(:,6);
MagBiasY = - MAG(:,7);
MagBiasZ = - MAG(:,8);
end
%% Air Data
if ~isempty(NTUN)
ADSframe = NTUN(:,1);
ADStime = NTUN(:,2)*1e-3;
Veas = NTUN(:,8);
HgtBaro = NTUN(:,9);
end
%% Reference Data
if ~isempty(ATT)
ATTframe = ATT(:,1);
ATTtime = ATT(:,2)*1e-3;
Roll = ATT(:,3)*deg2rad;
Pitch = ATT(:,4)*deg2rad;
Yaw = ATT(:,5)*deg2rad;
end
%% Save to files
save('NavFilterTestData.mat', ...
'IMUframe','IMUtime','angRate','accel', ...
'GPSframe','GPStime','LatDeg','LngDeg','Hgt','CourseDeg','GndSpd','VelD', ...
'MAGframe','MAGtime','MagX','MagY','MagZ','MagBiasX','MagBiasY','MagBiasZ', ...
'ATTframe','ATTtime','Roll','Pitch','Yaw', ...
'ADSframe','ADStime','Veas','HgtBaro');
save('../code/IMU.txt','IMU','-ascii');
save('../code/GPS.txt','GPS','-ascii');
save('../code/MAG.txt','MAG','-ascii')
save('../code/ATT.txt','ATT','-ascii');
save('../code/NTUN.txt','NTUN','-ascii');
clear all;
load('NavFilterTestData.mat');
alignTime = min(IMUtime(IMUframe>GPSframe(find(GndSpd >8, 1 )))) - 10;
startTime = alignTime - 30;
endTime = max(IMUtime)-1;
msecVelDelay = 300;
msecPosDelay = 300;
msecHgtDelay = 420;
msecMagDelay = 30;
msecTasDelay = 200;
EAS2TAS = 1.0;
save('../code/timing.txt','alignTime','startTime','endTime','msecVelDelay','msecPosDelay','msecHgtDelay','msecMagDelay','msecTasDelay','EAS2TAS','-ascii');