Kisajäljen tallettaminen

FEWiki

Loikkaa: valikkoon, hakuun


On erinomaisen opettavaista katsoa jälkeenpäin miten kisa meni, tähän auttaa ohjelma nimeltään Gpsactionreplay (java), jolla voidaan ajaa veneet virtuaalisesti kisan jälkeen. Näin näkee helposti missä hävisi tai voitti kisassa. Esimerkkinä tuulen kääntymiset, voimakkuuserot, veneen nousukyky tai kryssinopeus näkyy erittäin hyvin.

Jotta homma toimisi järkevästi pitää saada mahdollisimmaan monen muun kisaan osallistuneen jäljet (track) tallennettua. Yhden yksittäisen veneen seuraaminen ei anna yhtä paljon kuin suora vertaus moneen muun veneen suoritukseen. Tämä sivu on tarkoitettu opastamaan purjehtijoita jäljen tallettamisen saloihin. Erilaisia GPS-laite kombinaatioita on tuhansia, mutta tässä pyritään kertomaan miten saadaan yhden yksittäisen kisan jälki tallennettua GPX-muotoon, sama muoto mitä Gpsactionreplay ymmärtää.

Ensin pidetään siis laite päällä kisan aikana eli kerätään dataa, sitten kisan jälkeen otetaan jälkitiedosto ulos laitteesta ja muunnetaan GPX-muotoon. Tämän jälkeen suoritetaan jonkin verran jälkikäsittelyä. Jälkikäsittelyllä pätkitään jälkitiedostosta pois jäljet ennen kisaa, ja maaliintulon jälkeen. Samalla tiivistettään tiedosto ja kirjoitetaan veneen nimi tai purjenumero tiedostoon. Viimeinen vaihe on tiedoston julkaiseminen.

Sisällysluettelo

Jälki laitteesta

Jäljen saaminen laitteesta ulos on ehkä haastavin kohta. Etenkin mikäli GPS on kiinteästi asennettu, kaapeleita ei ole eikä kannettavaa tietokonettakaan tullut otettua mukaan veneeseen. Tässä osiossa pyritään kertomaan yleisimmistä vaihtoehdoista, ja hyvistä nikseistä.

Nokia Sportstracker

Mikäli sinulla on Nokian kännykkä, jossa on joko sisäinen GPS tai sinulla on käytettävissä bluetooth GPS-vastaanotin ja kännykkäsi juttelee tämän kanssa voit käyttää Nokian Sportstracke ohjelmaa. Tämä vaihtoehto on ehkä satunnaiselle käyttäjälle se helpoin tapa tuottaa kisasta jäljen ja tarjoaa eräällä tavalla virheensietoa mikäli kaksi kännykkää veneessä tallettavat trackin yhtaikaa. Sportstrackerin kanssa on kuitenkin pari omituisuutta mitä pitää huomioida. Ensiksi oletusarvoisesti sportstracker suodattaa gps-datan liian voimakkaasti, ja asetuksista pitää muistaa asettaa joko veneen nimi tai mahdollisesti paremmin vielä purjenumero.

  • Settings -> General ->
    • Measurement unit -> nautical (nm, kn)
    • GPS filtering -> Low
  • Settings -> Users ->
    • Aseta nimeksi oma purjenumerosi (esim FIN-2674), tämä tulee näkymään GPX-tiedostossa, mutta ei jäljen nimenä.

Hyvissä ajoin ennen lähtö käynnistätä Nokia Sportstracker ohjelman jotta GPS ehtii saada paikkatiedot. Muista painaa Start!

Kisan jälkeen menet Training Diary ikkunaan ja valitset oikean jäljen. Workout Summary ikkuna aukeaa. Muutama asia pitää suorittaa;

  • Options -> Properties
    • Laita Workout name esim "FIN-2674" eli purjenumerosi. Paina OK
  • Options -> Export -> Export as GPX
    • Send result file -> Create file and send -> OK
    • Jotkut mallit kysyvät mihin tallettaa, laita vaikka muistikortille jos on valinnanvaraa
    • Hyväksy tiedostonimi
    • Lähetä sähköpostilla tulokset (at) fe83.org osoitteeseen tai omaan osoitteesi jälkikäsittelyä varten
  • Lähetä tiedosto

Nokia sportstracker joko ei luo GPX XML-spesifikaation mukaisia tiedostoja, tai sitten Gpsactionreplay ei osaa niitä lukea oikein. Tiedoston aikaleimat sisältävät nimittäin tuhannesosasekunteja (mutta vain kaksi desimaalia), ja aikavyöhyke puuttuu (ajat ovat paikallista aikaa, eikä Zulu/GMT aikoja). Toisaalta luotu GPX-tiedosto sisältää nopeustiedot josta gpsactionreplay tykkää. gpsactionreplay foorumissa oli maininta että tiedoston tallettaminen Garmin PCX-formaattiin korjaa asian. Seuraavilla komennoilla voidaan gpsbabelin avulla muokata tiedostoa niin, että se kelpaa jälkikäsittelyä varten:

 gpsbabel -t -i gpx -f W20080903171207.gpx -o pcx -F W20080903171207.pcx
 gpsbabel -t -i pcx -f W20080903171207.pcx -x track,move=-3h -o gpx -F tiedosto.gpx


Tätä kirjoitettaessa (4.9.08) on Nokian Sportstracker (NST) vielä beta-ohjelmisto, ja sen huomaa mm. siitä että sen luoman GPX-tiedosto ei ole vielä standardien mukainen, mm. aikavyöhyke puuttuu, ajat ovat paikallista aikaa eikä UTC (Zulu) aikavyöhykettä. Jäljen trackpointien aikaleimat voivat myös olla väärässä järjestyksessä, toisin sanoen jäljessä on paikka paikoin pisteitä jotka ovat siinä kohtaa menneisyydessä. Toivotaan että Nokia saa tämän GPX-export ominaisuuden kuntoon. Tallettaminen PCX-muotoon välillä näköjään korjaa tämänkin virheen niin, että gpsar lukee gpx-tiedostoa.

SeaClear 2

SeaClear 2 on ilmainen karttaohjelmisto joka toimii windows (ja linux/wine) ympäristössä. Siihen saa erittäin paljon suomalaista karttamateriaalia edesmenneistä MeriCD Cd-levyistä (kirjastosta).

SeaTrace

Mikäli sinulla on tietokone veneessäsi päällä kisan aikana, ja sillä on yhteys GPS-laitteeseen voidaan jälki ottaa tästä. Tämä on se menetelmä mitä Charlottassa käytettään. Seaclearin omaa TRC-päätteistä tiedostoa ei tietääkseni pysty suoraan käyttämään tosin, vaan tarvitaan apuohjelma nimeltään SeaTrace millä SeaClear ohjelma käynnistettään. SeaTrace luo CSV-muotoisia tiedostoja jossa on kaikki saatavilla ollut data 2s välein. Tätä tiedostoa pystyy gpsbabel ohjelman avulla muokkaamaan GPX-muotoon.

Luodaan ensin tiedosto nimeltään seatrace.style joka kuvaa TRT-tiedoston formaattia.

gpsbabelin avulla sitten muunnetaan ko. jälki GPX-muotoon:

 gpsbabel -t -i xcsv,style=seatrace.style \
 -f tiedosto.TRT -o gpx -F tiedosto.gpx

Seatrace luo aikaleimat suoraan Z-aikavyöhykkeeseen joten sitä ei tarvitse korjata. Tuo seatrace.style tiedoston nimi voidaan antaa myös täydellisenä (esimerkissä linux-polku, joku muu saa kokeilla windows/mac-ympäristössä).

 gpsbabel -t -i xcsv,style=/home/harald/seatrace.style \
 -f tiedosto.TRT -o gpx -F tiedosto.gpx

Vaihtoehtoisesti voit esikäsitellä TRT-tiedostoa ohjelmalla nimeltään SeaTrackEdit, ja tällä leikkaat taulukkolaskimen näköisellä työkalulla ennen ja jälkeen kisan osiot pois (pidä shift-näppäin pohjassa kun klikkaat ekaa riviä, ja esimerkin 15:08 riviä. Oikea hiiri - delete).

SeaClear 2 / Seaclear TRC

Mikäli unohdit SeaTrace-ohjelman käynnistämisen kisan alussa, mutta itse SeaClear 2 oli päällä "track on" tilassa on mahdollista export toiminnolla saada jäljestä .TXT muotoinen tiedosto josta vuorostaan gpsbabel ohjelmalla voidaan tehdä GPX tiedosto:

 gpsbabel -t -i xcsv...täydennetään myöhemmin

GPS Datalogger

Ehkä helpoin tapa saada jälki tallennettua on erillisen nk. GPS Dataloggerin ostaminen. Laitteet maksavat tätä kirjoitettaessa noin 65€ ja osaavat tallettaa jäljen ihan napin painalluksella. Nämä laitteet voidaan ottaa taskuun iltapäivällä, ja illalla kotiin tullessa puretaan vain jälki. Helppoa ja vaivatonta eikä tarvitse painaa mitään nappeja (ehkä yhtä) ennen varsinaista kisaa. Näitten laitteiden hyvä puoli on myös siinä että mikäli luokkasäännöt kieltävät navigaattorin veneessä kilpailun ajan (Albin Express, H-vene, jne) niin tätä laitetta ei voida mielestäni kutsua navigaatoriksi eikä näinollen tietääkseni ole luokkasääntöjen vastainen.

Amod AGL30800

Amod AGL30800 USB massamuisti, pelkkä loggeri. Toimii linux/windows/mac ympäristöissä

i-Blue 747 tai BT757

i-Blue 747 USB-laite (vaatii ajurin), toiminee windowsin lisäksi myös linuxissa ja macissä. On samalla myös bluetooth GPS, joten voidaan käyttää esim SeaClearin kanssa, kännykän tai minkä vaan bluetooth-laitteen kanssa. Toimii Nokian kännykän akuilla ja paketissa on sekä 230VDC verkkolaturi että autolaturi mukana. Laite latautuu myös tietokoneen USB-portista, joten tavallisesti ei tarvita kuin USB-kaapelia.

Lue enemmän gpsbabelin ja i-Blue 747 yhteistoiminnasta gpsbabelin mtk-sivulla. Laite tukeutuu linuxissa standard-kernelin cp2101-ajuriin (usb-serial). Seuraavanlaisella gpsbabel komennolla voidaan saada GPX-muotoinen jälki ulos, samalla tyhjentäen laite trackeista:

 gpsbabel -t -i mtk,erase -f /dev/ttyUSB0 -o gpx -F tiedosto.gpx

Sopivasti muita gpsbabel suodattimia käyttämällä saadaan yhdellä gpsbabel-komennnolla valmis GPX-tiedosto seurantaa varten.

i-Blue 747:ssä on outo ominaisuus siinä, että se tallettaa myös sijainteja joita se tietää etteivät ole oikeita. Näin jälkeen saadaan alkuun pisteitä joiden lat=90 ja lon=0, eli pohjoisnavalle. Sitten kun laite on löytänyt tarvittavan määrän satellittejä, se tallettaa oikeita paikkoja. Nämä pisteet yleensä suodattuvat pois siinä vaiheessa kun käytetään start ja stop suotimia, mutta gpsbabelin 1.3.6 (beta) versiosta lähtien löytyy myös erittäin pätevä suodin -x discard,fixnone, jota pitää siis käyttää -f <tiedosto|portti> option jälkeen. Kiitos gpsbabelin listan Per B:lle tästä vinkistä.

i-Blue 747A+

i-Blue 747A+ on uudempi malli edellä mainitusta.

Uutena ominaisuutena se mm. tukee avustettua A-GPS paikannusta.

Windows XP:hen tämän kalikan sai asennettua kohtuullisen pienellä vaivalla. Jostain syystä kuitenkin järjestelmä haluaa kiusallisesti asentaa rompulla tulleen ajurin joka kerta uudelleen, kun laitteen tökkää USB-porttiin.

Linux-käyttäjän näkökulmasta laite on hieman edeltäjäänsä hankalampi. Se vaatii Linux Kernel 2.6.29:n cdc_acm moduulin. Tämä tieto löytyi MTKBabelin sivun loppupuolelta.

Kyseinen kernel-versio ei ehtinyt mukaan esim. Ubuntu 9.04:n viralliseen jakeluun, vaan se tulee virallisesti vasta lokakuun 2009 jakeluun. Näillä asennusohjeilla sen saa kuitenkin kohtuullisen pienellä vaivalla asennettua Ubuntuun tai Debianiin. Asennuksen jälkeen loggeri näkyy laitteena /dev/ttyACM0, eli siitä saa trackin ulos komennolla:

 gpsbabel -t -i mtk,erase -f /dev/ttyACM0 -o gpx -F tiedosto.gpx

Garmin GPS-laitteet

Garmin 48 tallensi 1024 pisteen muistiin trackiä valitsemallasi resoluutiolla (esim 10 s välein). 1024 pistettä on aika vähän ja joutuu miettimään kuinka monta tuntia tarvitaan.

Nykyinen GPSMAP 60 tallentaa jotenkin automaagisesti trackiä, mutta kuitekin riittävän tiheästi (taisi olla kolme subjektiivista valintaa tiheydelle). Muistia on "tarpeeksi" eli useamman päivän purjehdukset mahtuvat trackiin.

Molempia pystyy lukemaan Garmin omalla tai lukuisilla ilmaissoftilla PC:lle ihan kaikkine tietoineen (siis paikka ja aika joka pisteelle) ilman muunnosta reitiksi tms. Garmin 60:ssä on kyllä sellainen outous, että jos laitteessa itsessään tallentaa trackin jollain nimellä se harventaa sitä ja hukkaa ajat. Ongelma ei siis koske puhtaan trackin lataamista tietokoneelle.

(Joakim Majander)

GPSBabel osaa puhua garminin USB/sarja-kieltä myös, gpsbabel komento jäljen saamiseen laitteesta lienee seuraavanlainen:

 gpsbabel -t -i garmin -f usb: -o gpx -F tiedosto.gpx

Ikivanhassa Garmin GPS45:ssä kommunikaatio hoituu perinteisen sarjaportin kautta. Siitä saa Linuxissa trackin ulos komennolla:

 gpsbabel -t -i garmin -f /dev/ttyS0 -o gpx -F tiedosto.gpx

Windowsissa /dev/ttyS0 paikalle laitetaan varmaankin esimerkiksi COM1

Magellanin vanhat GPS-laitteet

Magellanin viime vuosituhannelta peräisin olevissa laitteissa (esim. GPS 320, jota tämä ohje käsittelee) trackien tallentamiseen lienee monia tapoja, mutta tässä yksi. GPS:ään saa sarjaväylällä toimivan liittimen, joka sitten isketään kiinni tietokoneeseen, joko suoraan sarjaporttiin tai USB-adapterin kautta, jolloin portti toimii COM3-porttina.

Itse käytän trackien esiinkaivamiseen OziExplorer-ohjelmaa, joka myös tavallaan toimii SeaClearin korvikkeena, molemmille softille ei sinänsä ole tarvetta vaikkei Ozi olekaan merenkulkua varten suunniteltu. Kun GPS on päällä ja kytkettyän tietokoneeseen, tarkistetaan Ozin asetuksista että yhteys menee oikeaan porttiin ja että yhteysnopeus ei ole liian suuri (9600 baud on ok). Tämän jälkeen joko ensin otetaan pohjalle karttatiedosto, tai valitaan vain suoraan ohjelman Magellan-valikosta "Get Track from GPS" ja sitten vain odotellaan, vasemmassa alakulmassa juoksee laskuri siitä montako trackipistettä on ladattu (GPS 320:ssä max. 1250 pistettä).

Tämän jälkeen trackia voi editoida valitsemalla Track control-valikon ja ottamalla Track list esille. Tämän jälkeen haluttu osa trackista valitaan "maalaamalla" halutut datapisteet, jonka jälkeen trackin niitten osalta voi tallentaa Ozin omaan .plt-muotoon.

.plt-muotoinen datatiedosto sitten muunnetaan GPS-babel-ohjelmalla GPX-tiedostoksi ja tarvittaessa lisätään ensimmäisten rivien joukossa olevan <trk>-kohdan alle määrite <name>Veneen nimi</name>, jolloin trackin metadata sisältää veneen nimen. Trackin nimen lisääminen onnistuu myös gpsbabel suodattimella -x track,title=VeneenNimi. Näin plt muotoisen tiedoston muunnos gpsbabel ohjelmalla menee näin;

 gpsbabel -t -i plt -f tiedosto.plt -x track,title=Veneennimi -o gpx -F tiedosto.gpx

Muut GPS-laitteet

Trekbuddy - Java-ohjelma kännyköihin

Trekbuddy on kätevä ilmainen apuohjelma moderneihin kännyköihin (käytännössä alle 2-3v vanhat puhelimet, puhelinten sisäisen muistin&suorituskyvyn rajoittaessa ohjelman käyttöä), jota voi käyttää mm. karttaplotterina, mutta lisäksi myös GPS-loggerina. Riippumatta käytetäänkö kännykän sisäistä GPS:ää vaiko ulkoista, esim. Bluetooth-GPS:ää, itse kisajäljen tallennus tapahtuu samalla lailla. Kisajälki tallennetaan Trekbuddyn avulla yksinkertaisesti käynnistämällä ohjelma ja säätämällä asetuksista "Settings-> Location-alalehdestä" seuraavat kohdat: Tracklog: Joko kysyttäessä (Ask) tai aina, kysyttäessä ohjelma kysyy aina GPS:n käynnistyksen yhteydessä tallennetaanko jälki. Tracklog Format: Valitaan luonnollisesti GPX 1.1 GPX Options: Log only valid- kohtaan ruksi Ja GPSActionreplaytä ajatellen GPX dt(s)-kohtaan 10, eli tallennusväli 10 sekuntia GPX ds(m) voi olla default-asetuksessa -1.

Kun Trekbuddy on käynnistetty, käynnistetään itse GPS valitsemalla "Start" päävalikosta. Tällöin Trekbuddy joko kysyy tallennetaanko jälki, tai sitten jälki tallentuu automaattisesti. Trekbuddy sammuttaa kännykän näytön automaattisesti n. 10 s kuluttua viimeisestä kosketuksesta, joten kännykän voi huoletta laittaa vesitiiviiseen pussiin/taskuun/kajuuttaan tallennuksen ajaksi, GPS:n herkkyys riittää signaalin vastaanottamiseen myös esim. kajuutan sisältä. Kun tallennus halutaan lopettaa, valitaan päävalikosta "Stop".

Jäljen saa pois kännykästä helposti suoraan esim. lähettämällä se itsellensä puhelimen sähköpostiohjelmalla valitsemalla tiedosto (tyypillisesti päivämäärä-kellonaika.gpx) sähköpostin liitteeksi tai sitten kytkemällä kännykkä tietokoneeseen, josta sen voi siirtää suoraan pois muistikortilta Trekbuddy-kansion "Tracks-GPX"-alihakemistosta. Ennen versiota .88 (julkaistaneen elokuun 09 aikana) Trekbuddy käyttää GPX-tiedostossa väärää aikamäärettä, aikamääreen saa korjattua oikeaksi, samalla veneen nimen kirjoittaen tiedostoon GPS-babelin komennolla

gpsbabel -t -i gpx -f 20090812-172449.gpx -x track,move=-1h -x track,title=Veneen_nimi -o gpx -F tiedostonnimi.gpx

missä "20090812-172449.gpx " on Trekbuddyn tallentama jälki 12.8.2009 ja Veneen_nimi on tietysti veneesi nimi. Jos et muistanut pysäyttää jäljen tallennusta maaliintulon jälkeen, voit katso esimerkkejä tältä sivulta miten trackia voidaan leikata gpsbabelilla .

Pieni varoituksen sana pitää kuitenkin lausua koskien puhelimella nauhoitettuja jälkiä kohtaan. On havaittu että aikamääreet eivät ole tarkkoja, vaan aikaleimat voivat olla sekuntejakin (S40 puhelimella) pielessä iBT-747 loggereiden jälkitiedostoihin verrattuna. Tämä tarkoittaa sitä, että esim. peitto joka todellisuudessa oli olemassa on gpsar:illa katsottuna selvä veneenmitan verran perässä. Jos sinulla on tarkka muistikuva, valokuva tjms sellainen referenssi jostain tilanteesta radalla voidaan gpsbabelin shift-vivulla siirtää jälkitiedostoja erotuksen verran, mutta tämä on työlästä. Parasta olisi tietenkin että kaikissa veneissä olisi sama laite käytössä jolloin laitteiden virheet olisivat samansuuruisia kaikissa jälkitiedostoissa.

Waypoint+ CSV export

Jotta waypoint+ ohjelman tuottama CSV-tiedosto saadaan onnistuneesta käännettyä GPX-muotoon pitää ensin teksti-tiedostosta poistaa ensimmäinen rivi. Rivi on otsikko, ja sekoittaa GPX-jälken luomalla pisteitä paikkaan 0°N 0°E. Avaa tekstitiedosto esim notepad tai muussa teksti-editorissa ja poista ensimmäinen rivi "Datum,WGS84,WGS84,0,0,0,0,0".

Tämän jälkeen tarvitset gpsbabelille waypointcsv.style kuvaustiedoston. Tämän jälkeen voidaan GPX-tiedosto luoda gpsbabelin komennolla:

 gpsbabel -t -i xcsv,style=waypoint+csv.style -f tiedosto.txt -o gpx -F tiedosto.gpx

Kts. kohta Jäljen jälkikäsittely miten tiedostoon saadaan veneen nimi asetettua sekä ei-kisanaikaiset pisteet poistettua. Waypoint+ näyttää tuottavan oikeaa aikavyöhykettä valmiiksi.

Jäljen jälkikäsittely

Koska etenkin www-applet'tina pyörivä java-ohjelma on erittäin rajoittunut muistin kannalta, on suositeltavaa että piennenetään jälki-tiedosto mahdollisimman paljon. Yleensä riittää 500 pistettä/iltakisa vallan mainiosti, ja veneet liikkuvat hyvin jouhevasti jälkipelissä kuitenkin. On samalla turha ladata trackpointeja jotka ovat erittäin lähekkäin toisia. Tällä gpsbabel komennolla voidaan poistaa turhan lähekkäin olevat pisteet, ja yksinkertaistaa tracki 500:aan pisteeseen. Samalla on hyvä kirjoittaa tiedostoon veneen nimi tai purjenumero, jotta seurannassa näkee kenen veneen jäljestä on kyse:

 gpsbabel -t -i gpx -f tiedosto.gpx -x position,all \
 -x simplify,count=500 -x track,title=FIN-2674 -o gpx -F tiedosto.gpx

Sitten leikataan jälkitiedostosta pois ajat ennen ja jälkeen kisan (jätä kuitenkin 2 minuuttia ennen starttia, ja 2 minuuttia maaliintulon jälkeen). Huomaa että ajat ovat UTC aikoja (-3h suomen kesäaikaan verrattuna). Esimerkissä päivämäärä on 3. päivä syyskuuta 2008 ja haluamme 18:08 lähtien (lähtö on 18:10) aina maaliintuloon 19:25 asti + 2 minuuttia:

 gpsbabel -t -i gpx -f tiedosto.gpx \
 -x track,start=200809031508,stop=200809031627 -o gpx -F tiedosto.gpx

BT-747 All-in-one

Jos on on testannut em. menetelmillä riittävästi, ja tuntuu siltä että oikeinkirjoitustaito on riittävällä tasolla voidaan kaikki em. vaiheet suorittaa yhdellä komennolla:

 gpsbabel -t -i mtk,erase -f /dev/ttyUSB0 -x position,all 
 -x simplify,count=500 -x track,title=FIN-2674 
 -x track,start=200809031508,stop=200809031627 
 -o gpx -F venenimi-kisa-vuosi.gpx

Tuo kaikki on siis yksi komentorivi, olen sen rivittänyt luettavuuden nimissä. Huomaa että ajat ovat UTC (GMT).

Jäljen julkaiseminen

Käy lataamassa jälkitiedosto h-vene.net'in lomakkeelle (vaatii nykyään rekisteröinnin H-vene.net foorumiin).

Ohjelmistot ja linkit

Henkilökohtaiset työkalut