diff options
| author | Gustav Sörnäs <gusso230@student.liu.se> | 2019-10-15 12:09:50 +0200 |
|---|---|---|
| committer | Gustav Sörnäs <gusso230@student.liu.se> | 2019-10-15 12:09:50 +0200 |
| commit | 10665954773002ebaf0ebc1efa9f8dcb06e15562 (patch) | |
| tree | d1731af2ac168978e3143ae6a70c42885f27ae27 /Dokument/Designspec/events | |
| parent | 294c6bf20787d2c751f323ef7152a14b5432e20d (diff) | |
| download | tfyy51-10665954773002ebaf0ebc1efa9f8dcb06e15562.tar.gz | |
80-tecken maximal radlängd
Diffstat (limited to 'Dokument/Designspec/events')
| -rw-r--r-- | Dokument/Designspec/events/Kallibrering.tex | 24 | ||||
| -rw-r--r-- | Dokument/Designspec/events/manuell.tex | 5 | ||||
| -rw-r--r-- | Dokument/Designspec/events/missade-givare.tex | 7 | ||||
| -rw-r--r-- | Dokument/Designspec/events/off-circuit.tex | 14 | ||||
| -rw-r--r-- | Dokument/Designspec/events/olika-bilar.tex | 5 | ||||
| -rw-r--r-- | Dokument/Designspec/events/start.tex | 14 | ||||
| -rw-r--r-- | Dokument/Designspec/events/warmup.tex | 14 |
7 files changed, 54 insertions, 29 deletions
diff --git a/Dokument/Designspec/events/Kallibrering.tex b/Dokument/Designspec/events/Kallibrering.tex index 32cf606..8cd28c4 100644 --- a/Dokument/Designspec/events/Kallibrering.tex +++ b/Dokument/Designspec/events/Kallibrering.tex @@ -1,17 +1,23 @@ -För att optimera bilarnas körning och varvtid kommer bilarna behöva -kalibreras. Enligt kravsspecifikationens punkt 22 får det inte köras fler än -5 kalibreringsvarv innan kraven 20 och 21 måste vara uppfyllda. +För att optimera bilarnas körning och varvtid kommer bilarna behöva kalibreras. +Enligt kravsspecifikationens punkt 22 får det inte köras fler än 5 +kalibreringsvarv innan kraven 20 och 21 måste vara uppfyllda. Kalibreringsvarven behöver ta hänsyn till tre moment. Det första är att identifiera vilken konstant en bil behöver, det andra är att optimera för gemensam varvtid och det tredje är att optimera den valda varvtiden. -För att identifiera en bilkonstant börjar programmet med att välja den lägsta spänningen som är möjlig vid starten. Efter första givaren är det möjligt att räkna ut hastigheten samt ta fram en begynnelsekonstant för första segmentet som kan användas för uppskattning av position. Det är också möjligt att se om bilen ligger efter eller kör enligt tid genom att jämföra med tidigare mätdata. Om bilen ligger efter kommer spänningen ökas succesivt tills bilen har nått den önskade tiden mellan segmenten för att uppnå önskad varvtid. När bilen ligger i fas kan den konstant som krävs för den nuvarande bilen räknas ut. +För att identifiera en bilkonstant börjar programmet med att välja den lägsta +spänningen som är möjlig vid starten. Efter första givaren är det möjligt att +räkna ut hastigheten samt ta fram en begynnelsekonstant för första segmentet +som kan användas för uppskattning av position. Det är också möjligt att se om +bilen ligger efter eller kör enligt tid genom att jämföra med tidigare mätdata. +Om bilen ligger efter kommer spänningen ökas succesivt tills bilen har nått den +önskade tiden mellan segmenten för att uppnå önskad varvtid. När bilen ligger i +fas kan den konstant som krävs för den nuvarande bilen räknas ut. -Under -kalibreringsvarven är det också viktigt att anpassa båda bilarnas varvtid mot -varandra. Om båda bilarna har en varvtid som är långsammare än den förväntade -hastigheten ska programmet optimera för en gemensam varvtid före den valda -varvtiden. Med funktioner ska programmet också kunna optimera för både +Under kalibreringsvarven är det också viktigt att anpassa båda bilarnas varvtid +mot varandra. Om båda bilarna har en varvtid som är långsammare än den +förväntade hastigheten ska programmet optimera för en gemensam varvtid före den +valda varvtiden. Med funktioner ska programmet också kunna optimera för både gemensam och vald varvtid. diff --git a/Dokument/Designspec/events/manuell.tex b/Dokument/Designspec/events/manuell.tex index 449324f..a06c43a 100644 --- a/Dokument/Designspec/events/manuell.tex +++ b/Dokument/Designspec/events/manuell.tex @@ -1,2 +1,5 @@ -Enligt kravspecifikationens punkt 12 ska det vara möjligt att välja om en bana ska köras manuellt eller autonomt. Det ska alltså gå att köra ena banan manuellt medan den andra styrs av programmet. Detta styrs via displayen vid uppstart. +Enligt kravspecifikationens punkt 12 ska det vara möjligt att välja om en bana +ska köras manuellt eller autonomt. Det ska alltså gå att köra ena banan +manuellt medan den andra styrs av programmet. Detta styrs via displayen vid +uppstart. diff --git a/Dokument/Designspec/events/missade-givare.tex b/Dokument/Designspec/events/missade-givare.tex index 8c53ad1..a3aff3e 100644 --- a/Dokument/Designspec/events/missade-givare.tex +++ b/Dokument/Designspec/events/missade-givare.tex @@ -2,5 +2,10 @@ Enligt krav 3 i kravspecifikationen ska programmet kunna hantera missade givare och fortsätta köra som normalt. Med metoden som används blir detta inte ett problem. Givarna kommer endast att användas för att justera programmets uppfattning om bilarnas position, medan själva positioneringen räknas ut av -systemet. Om programmet detekterar att en givare inte passeras överhuvudtaget när det var förväntat fortsätter systemet köra bilen enligt beräkningar på vart bilen borde befinna sig tills nästa givare. Vid passering av nästa givare kommer systemet jämföra den uträknade tiden och den faktiska tiden som bilen passerade på. Systemet jämför sedan om tiderna är rimliga och avgör därefter om den tidigare tidsfördröjningen var en missad givare eller något annat. +systemet. Om programmet detekterar att en givare inte passeras överhuvudtaget +när det var förväntat fortsätter systemet köra bilen enligt beräkningar på vart +bilen borde befinna sig tills nästa givare. Vid passering av nästa givare +kommer systemet jämföra den uträknade tiden och den faktiska tiden som bilen +passerade på. Systemet jämför sedan om tiderna är rimliga och avgör därefter om +den tidigare tidsfördröjningen var en missad givare eller något annat. diff --git a/Dokument/Designspec/events/off-circuit.tex b/Dokument/Designspec/events/off-circuit.tex index 6be5833..9298182 100644 --- a/Dokument/Designspec/events/off-circuit.tex +++ b/Dokument/Designspec/events/off-circuit.tex @@ -1,5 +1,11 @@ -Enligt kravspecifikationen ska systemet detektera att en bil åkt av banan inom 10 sekunder. Om systemet -inte får en ny givarsignal inom tio sekunder från den senaste givaren antas bilen ha -fastnat eller åkt av banan och programmet pausas tills bilen är på banan igen -och användaren trycker på ``fortsätt'' på displayen. Med givarnas förväntade tidspassering ska programmet kunna se att en bil inte passerat en givare vid den förväntade tidspasseringen. Har bilen inte passerat någon av givarna inom fem sekunder kan programmet öka spänningsnivån gradvis som vid start för att kontrollera om bilen har stannat. Efter ytterligare 5 sekunder ska programmet pausas och displayen skriva ut att bilen har åkt av banan. +Enligt kravspecifikationen ska systemet detektera att en bil åkt av banan inom +10 sekunder. Om systemet inte får en ny givarsignal inom tio sekunder från den +senaste givaren antas bilen ha fastnat eller åkt av banan och programmet pausas +tills bilen är på banan igen och användaren trycker på ``fortsätt'' på +displayen. Med givarnas förväntade tidspassering ska programmet kunna se att en +bil inte passerat en givare vid den förväntade tidspasseringen. Har bilen inte +passerat någon av givarna inom fem sekunder kan programmet öka spänningsnivån +gradvis som vid start för att kontrollera om bilen har stannat. Efter +ytterligare 5 sekunder ska programmet pausas och displayen skriva ut att bilen +har åkt av banan. diff --git a/Dokument/Designspec/events/olika-bilar.tex b/Dokument/Designspec/events/olika-bilar.tex index 50e9712..4c53011 100644 --- a/Dokument/Designspec/events/olika-bilar.tex +++ b/Dokument/Designspec/events/olika-bilar.tex @@ -1 +1,4 @@ -Enligt kravspecifikation punkt 7 ska programmet automatiskt hantera de olika bilarna som finns. Lösningen är att varje bil ska tilldelas en egen konstant som är specifik för varje bil. Konstanten är framtagen genom en funktion som gör beräkningar både för bilens variabel samt eventuellt drifsfall. +Enligt kravspecifikation punkt 7 ska programmet automatiskt hantera de olika +bilarna som finns. Lösningen är att varje bil ska tilldelas en egen konstant +som är specifik för varje bil. Konstanten är framtagen genom en funktion som +gör beräkningar både för bilens variabel samt eventuellt drifsfall. diff --git a/Dokument/Designspec/events/start.tex b/Dokument/Designspec/events/start.tex index 6f2defc..5a5beeb 100644 --- a/Dokument/Designspec/events/start.tex +++ b/Dokument/Designspec/events/start.tex @@ -1,7 +1,7 @@ -Vid start ska systemet hitta en spänningsnivå tillräckligt hög för att bilen ska -börja rulla men inte så hög att den åker av banan i första kurvan. I början ska -därför spänningen öka lite i taget tills bilen passerat målgivaren. När bilen -passerat målgivaren bibehålls spänningsnivån tills nästa givare passeras. -Då kan programmet göra beräkningar för en inledande konstant för bilen och -det vanliga systemet kan ta vid och kontrollera bilens förväntade position mot -dess uträknade position. +Vid start ska systemet hitta en spänningsnivå tillräckligt hög för att bilen +ska börja rulla men inte så hög att den åker av banan i första kurvan. I början +ska därför spänningen öka lite i taget tills bilen passerat målgivaren. När +bilen passerat målgivaren bibehålls spänningsnivån tills nästa givare passeras. +Då kan programmet göra beräkningar för en inledande konstant för bilen och det +vanliga systemet kan ta vid och kontrollera bilens förväntade position mot dess +uträknade position. diff --git a/Dokument/Designspec/events/warmup.tex b/Dokument/Designspec/events/warmup.tex index 8c81b93..ef4d989 100644 --- a/Dokument/Designspec/events/warmup.tex +++ b/Dokument/Designspec/events/warmup.tex @@ -1,10 +1,12 @@ Enligt kravspecifikations punkt 8 ska programmet hantera olika typer av -driftsfall såsom kall samt varm bana. Metoden för att lösa detta problem är -att programmet automatiskt justerar bilens körning för olika typer av -driftsfall. +driftsfall såsom kall samt varm bana. Metoden för att lösa detta problem är att +programmet automatiskt justerar bilens körning för olika typer av driftsfall. -Programmet ska kunna identifiera förändringar i snitthastighet per -segment och varvtid (även om programmet ger ut samma spänning). Detta kan bero på temperaturförändring i banan. Då systemet identifierat dessa förändringar ska programmet -automatiskt justera en konstant (car\_constant, se sektion~\ref{sec:system_a_funcs}) som korrigeras succesivt tills bilen ligger på vald referenstid. +Programmet ska kunna identifiera förändringar i snitthastighet per segment och +varvtid (även om programmet ger ut samma spänning). Detta kan bero på +temperaturförändring i banan. Då systemet identifierat dessa förändringar ska +programmet automatiskt justera en konstant (car\_constant, se +sektion~\ref{sec:system_a_funcs}) som korrigeras succesivt tills bilen ligger +på vald referenstid. |
