Avatar billede or.han Nybegynder
17. september 2005 - 23:04 Der er 8 kommentarer og
1 løsning

Projekthjælp: GPS program

Hej
Jeg har i et projekt besluttet mig for at lave et GPS program, der kan fortælle placeringen af en bus på dens rute samt beregne ankomsttiden til de forskellige stoppesteder.

Jeg har lavet programmeringen som kan beregne koordinaterne til bussens placering, men jeg kan ikke finde på en metode, der kan beregne ankomsttiden på de enkelte stoppesteder.

Programmet skal tage hensyn til forsinkelser, så derfor kan man ikke bare definere den samlede rutetid eller tiden mellem busstopstederne på forhånd.

Er der nogle, som har ideer til hvordan dette kan gøres eller har I kendskab til hvordan rigtige GPS-systemer gør..?

På forhånd tak
Avatar billede old-faithful Praktikant
18. september 2005 - 00:35 #1
Ang. forsinkelser:
Kan du ikke bare bruge differencen mellem busens ankomst til et punkt, og dens officielle ankomsttid. Så kan du lægge differencen til dette tidspunkt for at udregne hvornår bussen er fremme ved næste stop. Altså bussen kommer 5 minutter for sent til stop A, og må derfor forventes at komme ca. 5 min for sent til stop B. Hvis bussen skulle have ankommet ved stop B kl. 15:00, kommer den så 15:05.

Er det noget i retningen af ovenstående du mener?

En anden måde kunne være at undersøge om der er nogle dage/tidspunkter hvor bussen sædvanligvis er forsinket, og så lave en slags tabel ud fra dette.

Endelig kunne du overveje om du på nogen måde kan bruge bussens hastighed til at beregne ankomsttiderne.

Eller måske kombinere alle ovenstående i én gennemsnitsudregning. Bare nogle ideer...
Avatar billede james_t_dk Juniormester
18. september 2005 - 11:09 #2
Som Old faithfull siger så kan du godt bruge faste tider mellem stoppestederne, for du rykker bare tiden, hvis den kommer forsent til et stop.
Avatar billede kasper_knaldperle Nybegynder
18. september 2005 - 17:30 #3
Eventuelt lave nogle flere punkter undervejs.
Ellers ved folk ved det første stoppested ikke om den kommer for sent. Evt et "checkpoint" hver 200 meter. Udregningen er vel simpel nok.
Altså skal bussen passere et "checkpoint" til en fastsat tid. Kommer den 30 sek for sent lægges det til tiden. Gøres dette hver 200 meter bliver det da ganske nøjagtigt.
Avatar billede or.han Nybegynder
18. september 2005 - 17:34 #4
Det vil blive meget svært at gøre det med checkpoints, da ruten er 13 km lang.. Så skal der sættes 65 punkter manuelt, men det bliver nok sådan en løsning hvis der ikke er andet.
Avatar billede james_t_dk Juniormester
19. september 2005 - 07:31 #5
hvis du kikker på de forskellige GPS løsninger, med Auto routing, så er der mange af dem der udlæser en ETA (Estimated Time of Arrival) Denne udregnes normalt ud fra aktuel hastighed +/- noget gennemsnits hastighed over et vist stykke tid. Disse tider er normalt meget nøjagtige. Det kan være at du kan nøjes med at bruge ETA tiden til det næste punkt på ruten og så kende tiderne mellem stoppe stederne (fra køre planen) og lægge disse til ETA tiden fra det næste stoppested (waypoint)
Avatar billede or.han Nybegynder
20. september 2005 - 08:32 #6
Jeg kunne desværre ikke gøre som nogle af jer, men det blev en mellemting. Så I kan bare lægge et svar...
Avatar billede kasper_knaldperle Nybegynder
20. september 2005 - 11:47 #7
Ellers tak :), men jeg er nysgerrig. Hvad blev løsningen?
Avatar billede old-faithful Praktikant
20. september 2005 - 17:14 #8
Oki :-)
Avatar billede or.han Nybegynder
20. september 2005 - 17:22 #9
Løsningen blev ikke det mest optimale, men noget ala det her:
Først kørte vi ruten i gennem og bestemte tiderne mellem busstopstederne. Det er den normale tid. Den forventede tid bliver så den normale tid + hvor langt tid bussen holder ved de enkelte steder + den evt. forsinkelse. Den bedste metode ville være at kigge på gennemsnitshastigheden ligesom man gør i ETA-metoden. Men da det bare er et projekt, er det vel fint nok det vi har gjort.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester