summaryrefslogtreecommitdiffstats
path: root/Dokument/Teknisk Dokumentation/Albins txt filer
diff options
context:
space:
mode:
authorAlbin <albwa833@student.liu.se>2019-11-30 14:18:48 +0100
committerAlbin <albwa833@student.liu.se>2019-11-30 14:18:48 +0100
commitf089f4bf674abef503ac311c2b5d9984e566a15c (patch)
tree44482da771dde8cf5229715cb7f6f02af21d74b2 /Dokument/Teknisk Dokumentation/Albins txt filer
parentba9e3feb90354705f0e7c69e60ecd1388585b7bb (diff)
downloadtfyy51-f089f4bf674abef503ac311c2b5d9984e566a15c.tar.gz
Missade givare
Diffstat (limited to 'Dokument/Teknisk Dokumentation/Albins txt filer')
-rw-r--r--Dokument/Teknisk Dokumentation/Albins txt filer/missade givare.txt26
1 files changed, 26 insertions, 0 deletions
diff --git a/Dokument/Teknisk Dokumentation/Albins txt filer/missade givare.txt b/Dokument/Teknisk Dokumentation/Albins txt filer/missade givare.txt
new file mode 100644
index 0000000..f22436b
--- /dev/null
+++ b/Dokument/Teknisk Dokumentation/Albins txt filer/missade givare.txt
@@ -0,0 +1,26 @@
+Missade givare
+
+Programmet gör redan en uppskattning av bilens position (\emph{get\_position})
+ och justerar denna vid ny givare (lägg till referens här).
+Eftersom \emph{get\_new_v} utgår ifrån denna uppskattning, kommer ingen
+anpassning behöva göras ifall en givare inte ger utslag. Däremot måste det
+kompenseras nästa gång en givare detekteras. Detta görs med funktionen
+\emph{choose\_position}. Den funktionen jämför positionen beräknad av
+\emph{get\_position} och positionen vald av nuvarande givare.
+
+Vid varje givare kollar \emph{choose\_position} vilken givare som
+\emph{get\_position} ligger närmast. Funktionen beräknar skillnaden mellan denna
+och den givare som valdes med givardetektionen. Denna kallas \emph{seg\_plus}.
+I normala fall är \emph{seg\_plus0} = 0 (ingen
+missad givare) eller 1 (en missad givare), men den kan också bli högre. Eftersom
+programmet inte ska behöva hantera för många givarsignaler ska \emph{seg\_plus}
+aldrig kunna bli lägre än 0. I så fall ändras denna till 0. \emph{seg\_plus}
+retuneras av funktionen och används sedan för att höja \emph{car.segment} så att
+programmet har koll på var bilen är.
+
+Dessutom behöver den insamlade datan justeras när en eller flera givare har
+missats. Annars kommer \emph{car.seg\_times} spara tiden för flera segment som
+om det vore ett enda. Lösningen är att skriva över denna tid med 0. Alla
+funktioner som använder denna data behöver kolla ifall den är noll eller inte,
+om den är noll används den ifrån varvet innan i stället. Om den också är noll
+används den från två varv tidigare osv.