Olemme nörttejä ja tiedämme sen. Syömme, nukumme, vitsailemme ja arvostelemme viivakooditarroja koko ajan täällä EIM:ssä. Yksi meistä omistaa jopa parin viivakooditarrojen kalvosinnappeja. Hän jäi kiinni, kun hän käytti niitä eräässä joulujuhlassa. Tiedämme, tiedämme. Säälittävää.
Nörttimäisyydessämme on kuitenkin se hyvä puoli, että – koska tunnemme alamme niin hyvin – sinun ei todellakaan tarvitse hikoilla siitä. Me huolehdimme sinusta. Toki voimme tehdä tavanomaiset asiat, kuten Code 39 ja Code 128. Viivakoodimaailmassa on kuitenkin paljon erikoistuneita ja jopa suorastaan erikoisia viivakoodeja. Tällaisia koodeja ovat esimerkiksi Interleaved 2 of 5, CPC Binary, EAN, ISBN, Atsteekki, Datamatrix, Chromocode (joka antaa kesän kauniit, kirkkaat värit ja vihreät värit – okei, se on Paul Simonin kappale) ja QR-koodi. Jotkin näistä ovat 1-ulotteisia (tiukasti lineaarisia) ja jotkin 2-ulotteisia (epälineaarisia). Mitat viivakoodissa? Mitä viivakoodin aloittelijan pitäisi tehdä?
Viestien ja viivakoodien välistä kartoitusta kutsutaan symbologiaksi. Symbologian määrittely sisältää viestin yksittäisten numeroiden tai merkkien koodauksen sekä alku- ja loppumerkkien koodauksen viivoiksi ja välilyönneiksi, viivakoodin edessä ja jälkeen tarvittavan hiljaisen alueen koon sekä tietyntyyppisten viivakoodien osalta tarkistussumman laskemisen.
Mikä on tarkistussumma?
Tarkistussumma on tietolohkosta laskettu arvo, joka viivakoodien tapauksessa tallennetaan datan mukana, jotta voidaan havaita datan korruptoituminen. Tarkistussummat ovat välttämättömiä elementtejä viivakoodeissa, kuten Code 128:ssa tai UPC:ssä.
Tarkistussumma on ylimääräinen merkki, joka lisätään viivakoodiin redundanssitarkistuksena virheiden havaitsemista varten – ”digitaalinen sormenjälki” – jota käytetään viivakoodeissa. Se koostuu yhdestä numerosta, joka lasketaan viestin muista numeroista. Tarkistusnumeron avulla voidaan havaita yksinkertaiset virheet numerosarjan syötössä, kuten yksittäinen kirjoitusvirhe tai kahden peräkkäisen numeron permutaatio.
Tarkistusnumero on esimerkiksi UPC-viivakoodin (jota käytetään vähittäistuotteissa) viimeinen numero. Oletetaan, että tarkistusnumero on 4, ja tämä tarkistetaan seuraavasti:
1. Lasketaan parittomien numeroiden (ensimmäinen, kolmas, viides jne.) numerot yhteen (0+2+0+0+0+2+0+0=4) ja kerrotaan kolmella (4 x 3 = 12)
2. Lasketaan yhteen parillisissa paikoissa (toinen, neljäs, kuudes jne.) olevat numerot (tarkistusnumeroa lukuun ottamatta) (1+0+0+0+0+3=4)
3. Lasketaan tulokset yhteen ja saadaan summa. (12 + 4 = 16)
4. Tarkistusluku on pienin luku, joka tarvitaan summan pyöristämiseksi lähimpään 10:n kerrannaislukuun. (16 pyöristää 20:een; 20 – 16 = 4 = tarkistusluku)
Pakkohan sinun oli kysyä, vai mitä? Jos teet kaikki nämä laskutoimitukset ja tulos ei vastaa tarkistuslukua, on todennäköistä, että näppäimistön käyttäjä on syöttänyt väärän numeron viivakoodiin jossain vaiheessa.