Massakilpailujen ja maratonjuoksun kokemuksia

Muutettu 7.3.2017/JTu

Sisällys:

Takaisin ExTime-sivulle


Taustaa

Tunnistimet ovat tulossa numerolappujen rinnalle kilpailijan tunnistamiseen. Itse olen käyttänyt tunnistimia seuraavissa kisoissa talven 2010 ja sen jälkeen:

Osassa tunnistinjärjestelmiä laitetoimittajan ohjelmisto kerää tunnistintapahtumat ja ExTime lukee tapahtumat lukulaitteen lokitiedostosta, näin ExTime käsittelee uRTimen ja Ipicon lukijoita. Osaan lukijalaitteita on suora yhteys, EMIT ja FEIG esimerkiksi. Eqtiming on poikkeava konsepti, se perustuu nettipalvelun käyttöön, siitä alampana lisää.

Vaasan Vasaman ja IK Falkenin käyttämille tunnistimille (uRTime) tein tuen 2014, samoin Porin Kuntoilijoiden käyttämille tunnistimen lukijoille (Impinj Speedway R420) löytyy tuki. Näistä tietävät/kertovat lisää Vaasassa Niklas Enlund ja Porissa Manne Willman. He kuuluvat ExTimen Facebook-ryhmään. Tuki on tehty myös Mikkelissä olevalle Ipicon järjestelmälle, mutta sitä ei ole testattu.

Syksyllä 2015 toteutin tuen Eqtiminingin käyttämille passiivitunnistimille, lukulaitteena Chronotrackin Minitrack-laite. Aateli-race Vuokatissa ja Jyväskylän Finlandia maraton ovat mm. kellotettu tällä laitteistolla ja ExTimellä ensimmäinen 'virallinen' kellotus oli Pyhtään SM-maraton syyskuun 26. päivä 2015. Näissä tapauksissa lukulaitteet lähettävät luentatuloksensa Norjaan EQTiminingin palvelimelle, josta ExTime ne hakee ja muokkaa tuloksiksi.

Työn alle on tulossa autourheilussa (carting) laajassa käytössä olevat Mylapsin tunnistimet ja lukijat, mutta käyttötarkoitus olisi pikaluistelu.


Ohjeen alkuun

Monta lukijaa samassa pisteessä

Kun tein massamaratonin ajanoton tarpeiden vaatimia muutoksia ExTimeen, piti huomioida se, että esim. maalissa voi olla useita lukulaitteita ja kilpailijalla on hyvin usein kaksi saman numeroista tunnistinta, joten samaan tapahtumaan saattaa tulla useita aikoja samalta urheilijalta.

Tätä samaa tarkoittavien aikojen rajaamista varten on ExTimen asetusarvoissa erillinen määritys, joka ilmoittaa, kuinka pitkä on se aika, jonka sisällä aika tulkitaan saman pisteen ajaksi. Väliajoissa ja maalissa käytetään tietenkin ensimmäistä (aikaisinta) aikaa, joka tosin ei tule ExTimen tietoon aina ensimmäisenä. Aika saattaa kiertää nettipalvelun kautta tai lukijoiden anteilla on samaan aikaan asiaa keskusyksikölle ja niiden välistä keskustelua pitää priorisoida.

Oikealla olevassa näytön Säädöt/Asetusarvot välilehdellä Ajanoton automaattisuus näkyvä luku 180 laatikossa Saman kilpailijan väliaikojen ja maaliaikojen vähimmäisero sekunteina ohjaa ExTimeä toimimaan seuraavasti:

Jos kilpailijalle tuleva aika eroaa kilpailijan taulukkolähtöajasta enemmän kuin 3 minuuttia (=180 sek), ajasta tulee maaliaika tai ensimmäinen väliaika (jos väliaikoja kirjataan). Jos jokin samalle kilpailijalle tuleva seuraava aika eroaa tästä juuri kirjatusta ajasta vähemmän kuin tuo 180 sekuntia, se tulkitaan saman väliaikapisteen toiseksi kirjaukseksi tai maalin toiseksi kirjaukseksi eli täsmällisemmäksi ajaksi.

Siinä tapauksessa, että tuo uusi aika on aikaisempi kuin jo oleva aika, se korvaa vanhan ajan. Jos se taas on myöhäisempi (kuten on normaalitapaus), se vain unohdettaan.  Jos taas uusi aika eroaa kilpailijalla tässä pisteessä olevasta ajasta enemmän kuin 180 sekuntia, tämä uusi aika menee seuraavan väliaikakohdan/maalin ensimmäiseksi aikanoteeraukseksi.


Ohjeen alkuun

Uusia tietokenttiä maratonia varten

Lähtöaikojen käsittely poikkeaa tietysti yllä kerrotusta. Jyväskylässä Finlandia-maratonilla eivät kaikki kilpailijat sopineet yhtäaikaa lähtöviivalle, vaan iso osa joutui lähtemään taaempaa. Asian hoitamiseksi lisäsin sarjan tietoihin kaksi tietoa, ne näkyvät sarjan tiedoissa välilehdellä Lähtöaika, malli oikealla.

Sarjan lähtöaikaa käytetään.. tiedon ollessa rastittu, kilpailijoiden keskinäinen paremmuus lasketaan maratonin bruttoajan mukaan. Tämä poikkeaa siis normaalitapauksesta, jossa kilpailijan loppuaika lasketaan hänen todellisen lähtöaikansa mukaan. Normaalissa hiihdon väliaikalähdössä tässä ei siis saa olla rastia, rastittomuus on oletusarvo. Ja kun maratonilla tästä puuttuu rasti, kilpailijat tulevat tuloksiin nettoajan mukaan, eli todellisen lähtöajan perusteella laskettuina.

Ja maratonin bruttoaika on siis kilpailijan maaliintuloaika miinus lähtölaukauksen paukahduksen aika.

Alempi rastittava kohta Tässä sarjassa kilpailijan todelliseksi lähtöajaksi.. on maratoneilla normaalisti rastittuna. Ja näytön selityksen mukaan siis viimeinen (=myöhäisin) lähdön lukijalta saatu lukutapahtuma jää voimaan kilpailijan lähtöaikana.


Ohjeen alkuun

Chronotrackin lukija

Chronotrackin lukijalaite koostuu lukijasta ja siihen liitetystä yhdestä tai kahdesta tunnisteiden luenta-antennista, oikealla on käytössä vain yksi antenni (Lennu koirani taustalla).

Valkea antennilevy asetetaan vaakasuoraan ja urheilijoiden kulkeman reitin sivulle kohtisuoraan reitin poikki. Antennin tulee olla numerolapuissa kiinni olevien tagien yläpuolella, eli niin paljon kuin tuosta kolmijalasta pituutta irtoaa.

Antennilevy siis vaakasuoraan kun tunnistetagit on numerolapussa pystysuorassa ja vastaavasti sitten toisinpäin, jos tagit ovat makuulla.

Itse lukijassa (tarkempi kuva alla) on kaksi akkua (Ryobi), joista yksi on kerrallaan käytössä.

Huomaatte myös GPRS-antennin nostetun ylös, tuo 15 senttinen musta 'varpu' lukijan etureunassa keskellä. Lukijan tarkka käyttöohje löytyy Eqtimingin sivuilta.

Laite on todella helppo asentaa ja purkaa, koska maahan tulevia kaapeleita ei ole. Lukija sieppaa ohikulkevan tunnisteen ainakin kolmen metrin päästä, ihanneososuhteissa paljonkin kauempaa, joten näidenkään lukijoiden lähellä ei numerolappuisten kilpailijoiden ole syytä parveilla.

Ohjeen alkuun

Chronotrackin lukijat ja netti

Chronotrackin lukijoissa on siis GPRS-yhteys taginumeron ja ajan lähettämiseksi eqtiming-palvelimelle. Lukijoiden sijoittelussa tulee tämä ottaa huomioon, Pyhtään SM-maratonilla 40 km väliaikapaikka oli katveessa, kännykässäni näkyi vain yksi palkki eikä aina sitäkään, ja niinpä kaikki väliajat eivät tulleet heti tuloksiin mukaan. No, kopioin ne kisan jälkeen lukijasta USB-tikulle ja siirsin ExTimeen.

Maalissa sijainnut ajanoton laitteiston ExTime teki jatkuvasti kyselyjä tuolta eqtimingin palvelimelta ja käsitteli ne sitten aivan kuin aika olisi tullut kellolaitteelta tai näppäimistöltä. Jokaista kilpailussa ollutta lukijaa kohti oli käytössä oma kyselynsä.

Chronotrackin lukijat liitetään ExTimen käyttämiin lukijoihin kuten muutkin lukijat (Ajanotto/Ulkoiset laitteet). Listasta valitaan sitten laitteeksi ChronoTrack, tag-lukija.

Ennen kuin alat liittämään lukijoita, tarkista kuitenkin Säädöt/Asetusarvot näytöstä lukijoiden yleiset asetukset, lähinnä samaksi ajaksi tulkittavien aikojen raja sekä miten automaattisesti kirjatut tapahtumat tai virheet näkyvät ajanottonäytössä (välilehti Ajanoton automaattisuus). Silloin niitä ei tarvitse lukijakohtaisesti enää asetella.

Lukija lähettää tietonsa norjalaiseen palvelimeen, jonka kyselyosoite timing.quick.no:5050, on jo valmiina yhteyslaatikossa. Ainoa vaihtoehto on liittää lukija siis tuohon palvelimeen ja porttiin TCP/IP-yhteydellä, joten koneeltasi on oltava netti-yhteys ulkomaailmaan ja palomuurissa reikä sillä kohtaa.

Alhaalla oikealla näkyy sitten lukijan ominaisuuksien välilehti. Se on muuten samanlainen kuin muillakin kellolaitteilla, mutta yksi uusi, erittäin tärkeä tieto on lisää, web-servicelle lähetettävän kyselyn malli (maski). Tämä kysely käsittää kolme palvelulle lähetettävää pakollista, erillistä tietoa:

  1. Lukijan sarjanumero (StationAlias)
  2. Kilpailun päivämäärä (TransDate)
  3. Tapahtuman numero, josta eteenpäin tapahtumat halutaan(FromUID)
  4. Neljäntenä tietona on valinnainen kerralla haettavien tapahtumien määrä.(Limit)

1.10.2015 kyselyn malli oli

/GetTransactionData?StationAlias=%s&TransDate=%04d%02d%02d&FromUID=%d

ExTime korvaa ensimmäisen %s-merkkiparin lähtevässä kyselyssä lukijan sarjanumerolla, %04d%02d%02d korvaantuu kisan päiväyksellä VVVVKKPP ja viimeinen %d korvautuu edellisellä kyselyllä saadulla tapahtuman numerolla. %s ja %d ovat ohjelmointia harrastaneille tuttuja muotoilun ohjausmerkkijonoja.

Kellolaitteen sarjanumeroa varten on oma ruutunsa, esimerkissä 11580, samoin Kisan pitopäivää varten oma ruutu, vaikkapa SM-maratonin pitopäivän harjoituspäivä 24. 9.2015 ja hommaa jatketaan kesken kisan, sillä Viimeinen saatu tapahtuma on 1200. Tapahtumat säilyvät web-palvelussa, joten voit esimerkiksi vapaasti kokeilla tapahtumien lukua vaikkapa itse SM-maratonilta 26. 9.2015. Huomaa, että kuukauteen tarvitaan kaksi merkkiä/numeroa, 26.9.2015 ei mene oikein, kun taas 26.09.2015 on kelvollinen.

Yläpuolen esimerkissä näkyy myös se, miten ExTime parsii noista kolmesta/neljästä tiedosta sitten itse kyselyn, se näkyy siinä yläpuolella. Ajanoton harjoituksissa huomasin, että oli hyvä rajata kerralla haettavien tapahtumien lukumäärää, esimerkissä on tuo &Limit=1 juuri sitä varten. Muuten olisin saanut yhden lukijan kaikki tapahtumat kerralla eli koko päivän luennat. Normaalistihan tapahtumia tule sitämukaa kuin urheilijat ohittelevat väliaikapisteitä tai tulevat maaliin.

Tärkeä tieto on myös ruudussa Tapahtuma-ajan tunnus, tällä tiedolla liitetään tietty lukija tiettyyn lähtö/väliaika/maalipisteeseen. SM-maratonilla A-aika tuli 10 km lukijalta, puolimatka B-lukijalta, 30 km tunnistettiin C-ajasta ja 40 km oli sitten D- ja maali M-tunnuksella(=aikakanava) varustettu aika.

Ohjeen alkuun

Chronotrackin testaaminen

Testejä tehdessäni totesin yksittäin tehtävän lukijoiden määrittelyn vähän hitaaksi ja työlääksi, lukijoiden sarjanumeroita oli vaikea muistaa ja lisäksi kysely starttasi heti. Varsinkin kun jälkikäteen kellotin Finlandia maratonia sain runsaasti aikoja jo maalista, ennenkuin väliaikapisteiden lukijoita oli edes ehditty määritellä. Omia testejäni helpottamaan tein ihan oman näytön, jonka sitten totesin niin hyväksi, että jätin sen ExTimeen. Näyttö avautuu Ajanotto-menusta kohdasta WEB-service kyselyt (EqTiming).

Tässä näytössä määritetään kaikki lukijat kerralla ja tapahtumien käsittely voidaan pakottaa kelloaikajärjestyksen. Normaalisti tällaista pakottamista ei tarvitse tehdä, mutta se on tarpeen, kun kellotat takautuvasti jotain kisaa, vaikkapa juuri tuota Jyväskylän Finlandia maratonia, jossa oli käytössä 9 eri lukijaa. Tapahtumia tulee todella paljon.

Ja taas sama kuin yllä: Aseta ensin kellolaitteiden yleiset ohjearvot paikalleen.

Tämän näytön yläosassa on sama kyselyn maski ja alaosassa kisan pitopäivä kuin ylläkin oli. Vasemmalla keskellä on lista koneellasi käytetyistä lukijanumeroista ja niiden aikakanavista. Klikkaamalla tästä listasta jotain lukijaa, sen tiedot tulevat Lisättävän laitteen alueelle näytön keskelle, jossa niitä voidaan muuttaa ja sitten napilla Lisää kisaan ottaa mukaan aktiiviseksi lukijaksi.

Tuplaklikkaamalla vasemman reunan lukijan numeroa se tulee välittömästi  mukaan kisaan entisillä tiedoilla. Napilla Poista valittu se poistetaan, silloin poistettava tietysti valitaan Aktiiviset lukijat listalta.

Napilla Käynnistä tapahtumien haku alkaa kyselyjen tekeminen ja Stoppaa napilla se voidaan lopettaa (tilapäisestikin).

Näyttö voidaan jättää auki tai se voidaan sulkea, tapahtumien haku jatkuu taustalla ihan kuin muidenkin lukijalaitteiden palvelut. Ja näyttöön voidaan palata uudelleen kisan aikana.

 

Tässä oikealla näkyy sitten 'elävää kuvaa' vanhemmasta versiosta testitilanteesta Jyväskylän Finlandia maratonilta (4357 urheilijaa). Vasemman listan kaksi ylintä lukijaa on jätetty testistä pois. 10389 oli 10 kilometrin lenkin puolimatkan lukija (K-aikakanava 5 km) ja 10633 oli 300 metriä ennen väliaikapaikkaa/maalia oleva lähestymisvaroituspiste (P-aikakanava). Näitä pisteitä en määritellyt itse testikisaan lainkaan ja siksi pudotin lukijatkin pois.

Kaikki loput 7 lukijaa olivat sitten käytössä kisan pääpaikassa, jossa oli sekä lähtö, väliaikapiste että maali, siksi käytin testissä jokeriaikamerkkiä niin että aika kelpaa joka paikkaan. Urheilija sai siis lukijoilta todellisen lähtöajan, 3 väliaikaa (10, 20 ja 30 km kohdilta) sekä maaliajan. Ja usea lukija rekisteröi saman kilpailijan samassa pisteessä. Varsinkin lähdössä tuli paljon lukutapahtumia kilpailijoiden odotellessa laukausta lähtöviivan tuntumassa.

Ja koska kyseessä ei ollut todellinen tilanne, olin painanut nappia Aikajärjestykseen, jolloin ExTime käsitteli ajat kelloaikajärjestyksessä. Kuvan esimerkissä näkyy, että kello 11258 tapahtuma 9.51.24,39 oli 20 minuuttia jäljessä kellon 11309 aikaa 9.31.25,74 ja myös tapahtumien määrässä oli suuri ero (45 verrattuna 330 tapahtumaan). Kellon sarjanumeron ja kelloajan keskellä olevassa ruudussa on Eqtiminingin järjestelmän tapahtumalle antama järjestysnumero.

Tällä kelloaikajärjestykseen laitolla sain sen aikaan, että väliajat tulivat urheilijoille loogisessa järjestyksessä ja ExTime osasi pudottaa tarpeettomat lukutapahtumat pois. Väliaikapisteiden loogiset aikarajat oli pakko asettaa aika laveiksi, kärki juoksi hitaimmat maratoonarit kiinni jo ennen puolimatkaa, joten väliaikojen oikeellisuus olisi ilman kelloaikajärjestystä ollut erittäin hankala tarkistaa.

Rastittava ruutu Testikeruu saa aikaan sen, että tapahtumat vain kirjoitetaan lokitiedostoon extime.log. Tämäkin on siis peruja siitä, että tein näytön helpottamaan omaa testaustyötäni. Lokitiedostosta sain ajat exceliin ja sillä voin niitä sitten lajitella joko lukija-, urheilija- tai aikajärjestykseen tarkistuksiani varten.

Allaolevassa kuvassa on vielä vanhassa muodossa nuo muuttuvien tietojen maskit. Ne eivät ole enää käytössä, uudet maksit ovat aina $-merkkien välissä isoilla kirjaimilla olevia avainsanoja:

$DEVID$
Tämä avainsana tuo merkkijonoon laitteen sarjanumeron (molemmat järjestelmät).
$DATE$
Tämä avainsana tuo merkkijonoon kisan päiväyksen muodossa vvvvkkpp, ilman välimerkkejä siis kuten CHRONOTRACK sitä käyttää.
$TODAY$
Tämä avainsana tuo merkkijonoon kisan päiväyksen muodossa vvvv-kk-pp, Emitin käyttämä muoto.
$TIME$
Tämä avainsana tuo merkkijonoon EMITin viimeisen kelloajan muodossa hh:tt:ss.
$SEQ$
Tämä avainsana tuo merkkijonoon viimeisen tapahtuman numeron EMIT:in järjestelmässä.
$LAST$
Tämä avainsana tuo merkkijonoon viimeisen tapahtuman numeron CHRONOTRACK:in järjestelmässä


Ohjeen alkuun

Väliaikapisteiden ohjeajat

Väliaikapistekohtaiset rajat laskin sarjakohtaisesti maratonille ennustetuista parhaasta ja huonoimmasta loppuajasta. Tämän voi tehdä joko Sarjan tietojen välilehdellä Väliajat ja kierrokset tai tuossa oikealla näkyvässä näytössä, johon pääset Muutokset valikon toiminnosta Ennakkoajat väliaikapisteille.

Finlandia maraton oli siinä mielessä haastava testikohde, että kaikki väliaikalukijat olivat fyysisesti samassa pisteessä ja monta lukijaa antoi samalle urheilijalle väliajan. Lisäksi urheilijalla oli numerolapussaan kaksi samannumeroista tagia.

SM-maraton Pyhtäällä oli helpompi, jokainen väliaikalukija voitiin sitoa tiettyyn väliaikapisteeseen aikakanavan avulla. Ja toki juoksijoiden taso oli tasaisempi, melkein kaikki urheilijat olivat samalla etapilla, eli vain pari kilpailijaa oli ohittamatta 30 km, kun kärki tuli maaliin.

Tässä on SM-maratonilla käyttämäni väliaikojen tarkistustaulu ja lukijakoodit vielä kertaalleen.

Ennusteet oli helppo asettaa ja juoksijoiden taso oli tasainen.

Lukijat oli helppo sijoittaa reitin varrelle, olin laittanut joka lukijan kylkeen paperilapun, jossa oli väliaikapisteen km-määrä. Itse lukijat sijoitin nousevaan numerojärjestykseen, pieninumeroisin lukija 10 km kohtaan.

Annoin väliaikapisteiden miehistölle viiden minuutin koulutuksen ennen kisaa eikä heillä ollut vaikeuksia laittaa lukijoita reitin varrella lukuasentoon. Ainoastaan 40 km kohdalla tökki, todennäköisesti itse lukijassa oli vikaa, koska yhteys Norjan palvelimeen katosi kolmen välitetyn väliajan jälkeen.

Puuttuneet väliajat kopioin lukijasta usb-tikulle ja luin sen ExTimeen sisään valikon Ajanotto kohdasta Tapahtumatiedoston luku löytyvästä lukuikkunasta Chronotrackin testiloki avulla. Tiedostoksi valitaan se tiedosto, jonka nimi on lähinnä lukijan viimeistä käynnistysajanhetkeä. Minulla sen nimi oli siis 09261259.csv, eli lukija oli käynnistetty syyskuun (09) 26 päivä kello 12.59. Kisaa oli tuolloin siis käyty minuuttia vaille kaksi tuntia.

Tiedoston voi lukea sisään huoletta useammankin kerran, sillä ExTimen pitäisi osata pudottaa ylimääräiset ajat pois. Ainakin SM-maratonilla se osasi, kokeilin monta eri kertaa.

 

Ohjeen alkuun


Massamaaliinotto, uusi näyttö

Tunnisteiden kanssa ei ExTimen uutta massojen maalinottoon tekemääni näyttöä tarvita, mutta massakisoihin kyllläkin.

Tässä selostan vain lyhyesti näytön toimintaa, toivottavasti joko innostuu ohjeistamaan ja kommentoimaan asiaa lisää netissä.

Kilpailuaika näkyy selkeästi keskellä näyttöä ja kun näytön alapuolella olevaa nappia Juokseva aika listan ylimmäksi(=F10) painaa, kelloaika siirtyy vasemmalla olevan aikalistan uusimmaksi eli ylimmäksi ajaksi. Sama tapahtuu F10-painalluksella tai ulkoisen kellolaitteen liipaisemalla ajalla, jos tämän kellon aikakanava on maalin aikakanavien ruudussa, siinä alla.

NRO-ruutuun syötetään kilpailijan numero, joka Numero-nappia klikkaamalla siirtyy numerolistalle. Myös pelkkä CR eli enterin painallus toimii samoin, kunhan ruudussa on jokin numero.

Valittuja aikoja ja numeroita voidaan poistaa omilla napeillaan. Valittujen aikojen tai numeroiden yläpuolelle voidaan omilla napeillaan syöttää uusia aikoja ja numeroita.

Kun aikoja ja numeroita on sama määrä, ne hyväksytään kerralla napilla Hyväksy nämä.

Jos jokin aika puuttuu, se voidaan vaikkapa laskea valitsemalla yksi tai useampi aika ja ottamalla  niiden keskiarvo uudeksi ajaksi napilla Ajan laskenta valituista ajoista. Uusi aika tulee aikalistan yläpuolelle Aika-ruutuun. Sille valitaan ensi paikka valitsemalla tulevan paikan alapuolinen aika ja sitten uusi aika lisätään valitun yläpuolelle napilla Lisää aika-ruudun aika valitun yläpuolelle.

Tein nappien nimistä pitkiä ja selittäviä, toivottavasti onnistuin.

Kilpailijoista näkyy, onko heillä jo tulos. Ne pitäisi joko poistaa listalta (Poista valittu numero) tai poistaa tai muuttaa vanha aika, se käy tuplaklikkaamalla numeroa. Esimerkissä näkyy tilanne, jossa kisassa on kaksi numeroa 45, alapuolisesta listasta valitaan sitten se, jota tarkoitetaan. Näihin tilanteisiin puree myös toiminto Ajanotto/Rajaa aktiivisia sarjoja.

Näyttö voidaan sulkea vaikkapa tulosten ottamista varten ja avata se uudelleen, listoilla olevat ajat ja numerot säilyvät.

Ohjeen alkuun

Mitä tästä lyhyestä ohjeesta puuttui tai oli huonosti sanottu ? Käykää laittamassa Facebookiin kommentteja.

Takaisin ExTime-sivulle