-
Notifications
You must be signed in to change notification settings - Fork 1
/
MPU6050_FilteredDataOutput.m
107 lines (91 loc) · 2.41 KB
/
MPU6050_FilteredDataOutput.m
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
clear all;
clc;
is_gyro = 1;
if is_gyro == 1
data1 = load('./MPU6050_RawGyroNoiseData.txt');
data2 = load('./MPU6050_FilteredGyroData_second_order.txt');
% data2 = load('./MPU6050_FilteredGyroData_fifth_order.txt');
x1 = data1(:, 1);
y11 = data1(:, 2);
y12 = data1(:, 3);
y13 = data1(:, 4);
x2 = data2(:, 1);
y21 = data2(:, 2);
y22 = data2(:, 3);
y23 = data2(:, 4);
subplot(3, 2, 1);
plot(x1, y11, x2, y21, 'r');
axis([3 13 -0.2 0.2]);
xlabel('t/s');
ylabel('Amplitude/LSB');
title('GYRO X Axis');
legend('Raw Noise Data','Filtered Data')
subplot(3, 2, 2);
plot(abs(fft(y11))); hold on;
plot(abs(fft(y21)), 'r'); hold on;
axis([0 1400 0 20]);
xlabel('f/Hz');
ylabel('Amplitude/LSB');
legend('Raw Noise Data','Filtered Data')
subplot(3, 2, 3);
plot(x1, y12, x2, y22, 'r');
axis([3 13 -0.15 0.1]);
xlabel('t/s');
ylabel('Amplitude/LSB');
title('GYRO Y Axis');
legend('Raw Noise Data','Filtered Data')
subplot(3, 2, 4);
plot(abs(fft(y12))); hold on;
plot(abs(fft(y22)), 'r'); hold on;
axis([0 1400 0 40]);
xlabel('f/Hz');
ylabel('Amplitude/LSB');
legend('Raw Noise Data','Filtered Data')
subplot(3, 2, 5);
plot(x1, y13, x2, y23, 'r');
axis([3 13 -0.05 0.15]);
xlabel('t/s');
ylabel('Amplitude/LSB');
title('GYRO Z Axis');
legend('Raw Noise Data','Filtered Data')
subplot(3, 2, 6);
plot(abs(fft(y13))); hold on;
plot(abs(fft(y23)), 'r'); hold on;
axis([0 1400 0 25]);
xlabel('f/Hz');
ylabel('Amplitude/LSB');
legend('Raw Noise Data','Filtered Data')
else
data = load('./MPU6050_FilterAccData.txt');
x = data(:, 1);
y1 = data(:, 2);
y2 = data(:, 3);
y3 = data(:, 4);
subplot(3, 2, 1);
plot(x, y1);
xlabel('t/s');
ylabel('g/(m/s^2)');
title('ACC X Axis');
subplot(3, 2, 2);
plot(abs(fft(y1)));
xlabel('f/Hz');
ylabel('Amplitude/LSB');
subplot(3, 2, 3);
plot(x, y2);
xlabel('t/s');
ylabel('g/(m/s^2)');
title('ACC Y Axis');
subplot(3, 2, 4);
plot(abs(fft(y2)));
xlabel('f/Hz');
ylabel('Amplitude/LSB');
subplot(3, 2, 5);
plot(x, y3);
xlabel('t/s');
ylabel('g/(m/s^2)');
title('ACC Z Axis');
subplot(3, 2, 6);
plot(abs(fft(y3)));
xlabel('f/Hz');
ylabel('Amplitude/LSB');
end