Jak większość jeżdżących na rowerze pilnie notuję przejechane kilometry i inne przydatne dane. Robię to w sposób dość elementarny:
<day date="2007/08/25"> <ride dist="60" exdist="60.00" bike="b"> <by name='Banino' /> <by name='Miszewo' /> <by name='Przodkowo'/> <by name='Czeczewo'/> <by name='Warzno'/> <by name='Kielno' /> </ride> </day>
Jak widać jest to plik w formacie XML; co oznaczają poszczególne elementy i atrybuty można IMHO się zorientować po ich nazwach. Odpowiednie skrypty XSLT formatują dane, liczą średnie miesięczne i roczną. Całość jest dostępna tutaj. Ponieważ system jest w miarę toporny, dziś zrobiłem rozpoznanie co w tym zakresie oferują inni i znalazłem dwa potencjalnie interesujące serwisy: bikestats oraz bikebrother.
Pierwszy z wymienionych jest prostszy: pozwala na oznakowanie wyjazdów za pomocą daty, czasu, przejechanych kilometrów oraz krótkiego opisu. Bikebrother ma dużo bardziej rozbudowany opis. Więcej można przesłać ślad GPSa trasy. Pliki GPS mogą pobrać inni użytkownicy.
Oba serwisy prezentują dane w efektowny sposób i to jest ich jedyny plus. Minusów jest więcej: dodawanie danych za pomocą formularzy to przeżytek:-) Jakiś REST-based API byłoby dużo bardziej wygodniejsze. Wpisywanie wszystkich danych do formularza Bikebrothera musi być męczące. Nie ma (albo jest bardzo starannie ukryte) eksportu danych, więc i tak trzeba robić kopie.
Reasumując na razie minusy zdecydowanie przewyższają nad plusami. No i na koniec: licencje. Oczywiście na ten temat nic nie ma, pliki zawierające ślady GPS są udostępnione ,,na kocią łapę'' (albo nie na kocią: są własnością autorów). Może jestem przewrażliwiony ale nie lubię w ten sposób dzielić się danymi. Tzn. lubię dzielić się ale na określonych zasadach, np Creative Commons. Za granicą też zresztą kombinują zamiast korzystać ze sprawdzonych rozwiązań.
Poniżej przykładowe ekrany wpisywania danych (pierwszy z Bikestat, drugi z BB; jak się kliknie to będą większe):
Okazało się, że w sobotę (28 lipca) mój Garmin Geko 301 nie tylko przestawił magicznie
częstotliwość zapisu śladu, ale także cofnął się w czasie. W rezultacie kilka wpisów ,,zachodzi''
chronologicznie na siebie. Wyszło to dzisiaj, gdy usiłując wyciąć
kawałek śladu przy pomocy programu gpsbabel
uruchomionego
w następujący sposób (por.
Data Filters):
gpsbabel -t -i gpx -f plik-we.gpx -x track,start=2007081907,stop=2007081915 -o gpx -F plik-wy.gpx
otrzymałem:
trackfilter-init: Track points badly ordered (timestamp)!
Nie wiem czemu tak się stało. Mniejsza z tym. Zamiast ręcznie poprawiać błędne
wpisy można spróbować dodać opcję merge
,
która łączy wszystkie ślady w jeden usuwając
,,części wspólne'' (jeżeli ślady nie zachodzą na siebie można zamiast merge
,
użyć pack
)
gpsbabel -t -i gpx -f plik-we.gpx -x track,merge,start=2007081907,stop=2007081915 \ -o gpx -F plik-wy.gpx
Powyższe wytnie ślad utworzony od siódmej do piętnastej, 19 sierpnia 2007 r. BTW: do ściągnięcia zawartości Geko na dysk użyłem następującego skryptu:
#!/bin/bash # http://wiki.openstreetmap.org/index.php/How_to_get_data_from_a_Geko_201 filename="`date +%y%m%d-%H%M`" echo "creating $filename-waypoints.gpx" gpsbabel -i garmin -f /dev/ttyS0 -o gpx -F $filename-waypoints.gpx sleep 2 echo "creating $filename-tracklog.gpx" gpsbabel -t -i garmin -f /dev/ttyS0 -o gpx -F $filename-tracklog.gpx
Do tej pory używałem okienkowego programu gpsman
;
gpsbabel
jest wygodniejszy bo nie trzeba klikać, tyle że
gpsman
potrafi wyświetlić ślad, co czasami się może
przydać, więc nie skreślam go ostatecznie.