summaryrefslogtreecommitdiffstats
path: root/Kod
diff options
context:
space:
mode:
Diffstat (limited to 'Kod')
-rw-r--r--Kod/bilbana/Graph/graphs_test.m17
-rw-r--r--Kod/bilbana/Graph/lap_time_graph.m6
-rw-r--r--Kod/bilbana/Graph/segment_time_graph.m39
-rw-r--r--Kod/bilbana/yc4/main.m8
4 files changed, 47 insertions, 23 deletions
diff --git a/Kod/bilbana/Graph/graphs_test.m b/Kod/bilbana/Graph/graphs_test.m
index 3a2a2e5..ddc3b64 100644
--- a/Kod/bilbana/Graph/graphs_test.m
+++ b/Kod/bilbana/Graph/graphs_test.m
@@ -1,11 +1,14 @@
%% Data needed
-car1.seg_times = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.4,1.4;
- 4.2,1.1,2.2,1.8,1.4,3.4,1.5,3.4,1.4;
- 3.2,1.1,2.2,1.8,1.4,3.2,1.5,3.4,1.4;
- 4.0,1.4,2.2,1.8,1.4,3.4,1.5,3.4,1.4;
- 4.0,1.1,2.2,1.8,1.4,3.6,1.5,3.4,1.4;
- 4.1,1.1,2.2,1.8,1.4,3.8,1.5,3.4,1.4];
+A = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.4,1.4;
+ 4.2,1.1,2.2,1.8,1.4,3.4,1.5,3.4,1.4;
+ 3.2,1.1,2.2,1.8,1.4,3.2,1.5,3.4,1.4;
+ 4.0,1.1,2.2,1.8,1.4,3.6,1.5,3.4,1.4;
+ 4.1,1.1,2.2,1.8,1.4,3.8, 0, 0, 0];
+B = [3.9,1.1,2.2,1.8,1.4,3.9, 0, 0, 0];
+C = [3.9,1.1,2.2,1.8,1.4,3.9,1.5,3.1,1.0;
+ 4.1,1.1,2.2,1.8,1.4,3.4, 0, 0, 0];
+car1.seg_times = C;
car1.lap_times = [14.1,13.8,14.15,13.9,14.1,14];
ref_lap_time = 14;
%% Actual test
-graphs(car1.lap_times,ref_lap_time,car1.seg_times,1) \ No newline at end of file
+graphs(car1.lap_times,ref_lap_time,car1.seg_times,5) \ No newline at end of file
diff --git a/Kod/bilbana/Graph/lap_time_graph.m b/Kod/bilbana/Graph/lap_time_graph.m
index 8d54c6a..c21a0c5 100644
--- a/Kod/bilbana/Graph/lap_time_graph.m
+++ b/Kod/bilbana/Graph/lap_time_graph.m
@@ -40,13 +40,13 @@ hold off
%% Standardavvkielse
sigma = std(lap_times);
sigma = round(sigma, 2);
-sig_str = string(sigma);
+sig_str = num2str(sigma);
%% Text
xlabel('Varv');
ylabel('Tid [s]');
-Tit = join(['Varvtider bana',string(track)]);
+Tit = ['Varvtider bana ' num2str(track)];
title(Tit);
-txt = join(['Standardavvikelse:',sig_str, 's/varv']);
+txt = ['Standardavvikelse: ' sig_str ' s/varv'];
annotation('textbox',[.1 0.5 .5 .05],'String',txt,'EdgeColor','none')
end
diff --git a/Kod/bilbana/Graph/segment_time_graph.m b/Kod/bilbana/Graph/segment_time_graph.m
index 602938b..c32281a 100644
--- a/Kod/bilbana/Graph/segment_time_graph.m
+++ b/Kod/bilbana/Graph/segment_time_graph.m
@@ -1,15 +1,40 @@
-function [] = segment_time_graph(seg_time, track)
-%SEGMENT_TIME_GRAPH Snittid för varje segment.
-seg_time_size = size(seg_time);
-avr_seg_time = mean(seg_time(1:(seg_time_size(1) - 1), 1:(seg_time_size(2))));
-subplot(20, 1, 13:20);
+function [] = segment_time_graph(seg_times, track)
+%SEGMENT_TIME_GRAPH Stapeldiagram med snittid för varje segment.
+ %{
+ Utgår ifrån en r*k matris (seg_times). I den finns segmenttider lagrade
+ enligt rad ~ varv och kollonn ~ segment. Funktionen summerar alla
+ kollonner och delar summan med antalet kolloner som inte har värdet 0.
+ Sedan ritas ett stapeldiagram där varje stapel motsvarar en kollon i
+ den nyligen beräknade 1*k matrisen.
+ %}
+seg_time_size = size(seg_times);
+divide_by_n = ones(1,seg_time_size(2));
+%% Summera seg_time om seg_time ~= 0
+for r = 1:seg_time_size(1)
+ if r == 1
+ avr_seg_time(1,1:seg_time_size(2)) = seg_times(1,1:seg_time_size(2));
+ else
+ for c = 1:seg_time_size(2)
+ x = seg_times(r,c);
+ if x ~= 0
+ avr_seg_time(c) = avr_seg_time(c) + seg_times(r,c);
+ divide_by_n(c) = divide_by_n(c) + 1;
+ end
+ end
+ end
+end
+%% Ta medel av summan
+for c =1:seg_time_size(2)
+ avr_seg_time(c) = avr_seg_time(c)/divide_by_n(c);
+end
+%% Rita
+subplot(20, 1, 13:20);
Plot = bar(avr_seg_time);
-%Plot.Marker = 'o';
Plot.FaceColor = 'k';
xlabel('Segment');
ylabel('Tid [s]');
-tit = join(['Medeltid/segment bana',string(track)]);
+tit = ['Medeltid/segment bana ' num2str(track)];
title(tit);
end
diff --git a/Kod/bilbana/yc4/main.m b/Kod/bilbana/yc4/main.m
index 04308bf..bfeaa60 100644
--- a/Kod/bilbana/yc4/main.m
+++ b/Kod/bilbana/yc4/main.m
@@ -42,7 +42,7 @@ tocs = [];
%% ASK ACTIVE CARS
disp('J = Ja (automatiskt), M = Ja (manuellt), N = Nej');
-car1.response = input('Vill du köra bil 1? [N] ', 's');
+car1.response = input('Vill du k�ra bil 1? [N] ', 's');
if car1.response == 'J'
car1.running = true;
car1.automatic = true;
@@ -53,7 +53,7 @@ else
car1.running = false;
end
-car2.response = input('Vill du köra bil 2? [N] ', 's');
+car2.response = input('Vill du k�ra bil 2? [N] ', 's');
if car2.response == 'J'
car2.running = true;
car2.automatic = true;
@@ -114,8 +114,6 @@ while 1
car1.segment = 1;
car1.lap = car1.lap + 1;
-
- car1.seg_times(car1.lap, 1) = 0;
end
end
@@ -150,8 +148,6 @@ while 1
car2.segment = 1;
car2.lap = car2.lap + 1;
-
- car2.seg_times(car2.lap, 1) = 0;
end
end