Vöötkoodiluger

Vöötkoodiluger ehk vöötkoodiskanner on elektroonikaseade, mis loeb trükitud vöötkoode. Sarnaselt tasaskanneriga koosneb see valgusallikast, läätsesüsteemist ja valgussensorist, mis tõlgib valgusimpulsid elektrilisteks impulssideks. Peaaegu kõik vöötkoodilugerid sisaldavad dekoodrit, mis analüüsib sensorist saadud vöötkoodi visuaalset informatsiooni ja saadab vöötkoodi sisu lugeri väljundi porti.
Vöötkoodilugerite tüübid.
Tehnoloogia tüübid.
Lugereid saab liigitada järgmiselt:
Pliiatslugerid.
Pliiatsluger koosneb valgusallikast ja fotodioodist, mis on asetatud üksteise kõrvale pliiatsi või kepikujulise eseme tippu. Valgusallikaks võib olla punaseid või nähtamatuid infrapunaseid valguskiiri väljastav valgusdiood ehk leed (LED – "Light Emitting Diode"). Vöötkoodi lugemiseks peab pliiatsit hoidev inimene liigutama pliiatsi tippu ühtlasel kiirusel üle vöötkoodi. Luger tuleb vedada üle koodi ühtlase kiirusega, sest koodielemendi laius määratakse selle lugemiseks kulunud aja järgi. Luger on peaaegu vahetus kontaktis koodiga, sest üldjuhul on lugemiskaugus alla kahe millimeetri. Fotodiood mõõdab ära tipus olevast valgusallikast tagasi peegelduva valguse intensiivsuse, kui see ületab trükitud vöötkoodil iga triipu ja nendevahelist tühja kohta. Fotodiood genereerib lainekuju, mida kasutatakse triipude ja nende vahel olevate tühjade kohtade laiuste mõõtmiseks. Vöötkoodis mustad triibud neelavad ja valged tühjad kohad peegeldavad valgust nii, et fotodioodi genereeritud pinge lainekuju vastab triibu ja tühja koha mustrile vöötkoodis. See lainekuju dekodeeritakse lugeri pool sarnaselt morsega, kus dekodeeritakse punkte ja tühikuid.
Oluliseks pliiatslugeri omaduseks on lugemisava läbimõõt. Suurema lugemisavaga lugerid ei ole võimelised lugema tihedat koodi. Väiksema lugemisavaga lugerid suudavad seda lugeda. Lugemisava läbimõõt peab alati olema väiksem kui kitsaim elemendi laius, optimaalseks peetakse 0,7...0,9X, kus X on kitsaima triibu laius.
Laserlugerid.
Laserluger töötab pliiatslugeriga sarnaselt, aga valgusallikana kasutatakse laserdioodi ning laserkiire liigutamiseks üle vöötkoodi rakendatakse väntmehhanismiga peeglit või pöörlevat prismat. Lugeri kasutaja näeb ühtlast valgusriba ja saab asetada koodi õigesti lugemisalasse. Nagu pliiatslugeri puhul, kasutatakse ka laserlugeris fotodioodi, et mõõta vöötkoodist tagasi peegelduva valguse intensiivsust. Nii pliiatslugeri kui ka laserlugeri puhul on fotodioodi elektronskeem tehtud avastama vaid ette nähtud mustrit.
Laserlugerid võivad olla nii käsilugerid kui ka statsionaarsed. Käsilugerid üldjuhul ei väljasta kiiri pidevalt, mehhanism hakkab tööle, kui soovitakse koodi lugeda, ja lõpeb kohe, kui see on õnnestunud, kasutaja on andnud vastava käsu või on möödunud teatud aeg. Statsionaarsed lugerid väljastavad kiiri pidevalt või omavad loetava pinna ilmumise andurit, mis liigutavad kiiri mitmes sihis, mille tõttu tekib ruudustik. Tänu sellele võib kood olla lugeri ees eri asendites. Laserlugerite lugemiskaugus võib olla väga suur, kuni pooleteise meetrini ja ka üle selle.
CCD-lugerid.
CCD-lugerid väljastavad valgusdioodi abil valgusriba, mis peab ulatuma üle loetava koodi. Selliste lugerite tähtsaks parameetriks on lugemislaius, millega määratakse suurim loetav koodipikkus. CCD-lugerid kasutavad ühes reas asetsevaid sadu väikseid valgussensoreid lugeri peaosas. Iga sensor mõõdab valguse intensiivsust otse ees. Iga sensor on üliväike. Sajad sensorid, mis on lugeris reastatud ühte ritta, suudavad mõõta pingeid iga sensori juures ning saavad seetõttu genereerida identse vöötkoodiga pinge mustri. Tähtis erinevus CCD-lugeri ja pliiatslugeri või laserlugeri vahel on selles, et CCD-luger mõõdab vöötkoodilt eralduvat valgust, aga pliiatsluger ja laserluger mõõdavad peegeldunud valgust, mis genereeritakse teatud sagedusel lugeri enda poolt.
Luger hakkab lugema, kui ta jõuab koodile piisavalt lähedale või vajutatakse spetsiaalset lülitit. Lihtsama ehitusega lugeritel väljastatakse valgust pidevalt ja lugemine toimub kohe, kui kood satub täielikult lugemisavasse. Sama koodi korduvalt lugemise vältimiseks ei loeta uut koodi enne, kui loetav pilt on muutunud. CCD-sensoriga lugerid võivad olla vastavalt oma kujundusele kas käpp- või püstollugerid. CCD-lugerid suudavad lugeda sõltuvalt koodi tihedusest kuni 10 cm kauguselt. On olemas ka kahemõõtmeliste koodide lugerid, sellise lugeriga tuleb tõmmata risti üle koodi.
Kaamerapõhised lugerid.
Kahemõõtmelised masinnägemist kasutavad on neljandat ja kõige uuemat tüüpi vöötkoodilugerid. Nad kasutavad kaamerat ja saadud pildi töötlemise tehnikat, et dekodeerida vöötkoodi.
Videokaamera lugerid kasutavad väikeseid videokaameraid samasuguselt CCD tehnoloogiaga nagu seda kasutavad CCD-vöötkoodilugerid, välja arvatud see, et ühe rea asemel kasutab videokaamera sadu ridu sensoreid, mis on paigutatud kahemõõtmelisse massiivi, et nad suudaksid genereerida pilti.
Laia vaateväljaga lugerid kasutavad kõrge resolutsiooniga tööstuslikke kaameraid, et salvestada mitu vöötkoodi samaaegselt. Kõik vöötkoodid, mis ilmuvad pildil, on dekodeeritud kohe või kasutades lisandprogramme. (ImageID patendid Folke Ashberg: EAN-13 Image-Scanning ja koodi genereerivad tööriistad.)
Ruumilise efektiga vöötkoodilugerid.
Ruumilise efektiga vöötkoodiluger kasutab mitmeid sirgeid või kõveraid lugevaid jooni erinevates suundades täheplahvatuse kujul, 
Lissajousi mustris või mõne muu mitmenurgalise asetusega. Jooned projitseeritakse samale sümbolile ja üks või rohkem jooni suudab ületada kõiki ribasid ja tühjasid kohti, olenemata suunast."
Peaaegu kõik ruumilise efektiga lugerid kasutavad laserit. Erinevalt lihtsast ühejoonelisest laserlugerist tekitavad nad kiirte mustri mitmes suunas, võimaldades lugeda neile esitatud vöötkoodi eri nurkade alt. Enamik kasutab ühte pöörlevat hulknurkset peeglit ja mõne fikseeritud peegli asetust, et genereerida nende keerulisi lugemise mustreid.
Ruumilise efektiga lugerid sarnanevad kõige enam horisontaalselt paiknevate lugeritega supermarketites, kus pakke libistatakse üle klaasist või safiirist akna. On olemas erinevaid ruumilise efektiga lugereid, mida saab kasutada erinevate lugemisrakendustega, alates jaemüügi rakendustest, kus vöötkoodi loetakse vaid mõne sentimeetri kauguselt lugerist, kuni tööstuslike konveierite lugemiseni, kus toode võib olla lugerist mõne meetri kaugusel või veel kaugemal. Ruumilise efektiga lugerid on paremad lugemaks halva trükiga, kortsus või isegi rebitud vöötkoodi.
Telefoni kaamerad.
Kuigi telefoni kaamerad ilma automaatteravustamiseta ei ole ideaalsed mõne levinuma vöötkoodivormingu lugemiseks, on olemas kahemõõtmelisi vöötkoode, mis on telefonide jaoks optimeeritud. QR-koode ja Data Matrixi koode saab kiiresti ja täpselt lugeda nii automaatteravustamisega kui ka ilma selleta.
Need annavad tarbijatele palju uusi vöötkoodilugemisega kasutusvaldkondi:
Mitmeid ettevõtete programme telefonide kasutamise osas on ilmumas:
Korpuse tüübid.
Lugereid eristatakse korpuse järgi järgmiselt:
Uued algoritmid vöötkoodide dekodeerimiseks.
Sümbolite dekodeerimise algoritm.
Sümbolite dekodeerimise algoritm vöötkoodilugeritele on esimene sümboloogiapõhine algoritm dekodeerimiseks. Uus meetod kasutab infot kogu pildilt, et avastada üleminekuid signaalis, kas traditsiooniline algoritm tugineb maksimumil ja miinimumil. Traditsioonilistel meetoditel on vigade tekkimise tõenäosus suur, sest meetod põhineb tuletisel; samuti on nad tundlikud mürale ja hägustumisele. Sümbolite dekodeerimise algoritm vöötkoodilugeritele näitab tugevat vastupanu hägustumisele ja mürale, kui katsetati ühemõõtmelisi (1D) universaalseid tootekoode. Seda algoritmi saab laiendada ka kahemõõtmeliste (2D) universaalsete tootekoodide kasutamiseks.
Ühendusviisid.
Algusaja jadaliidesed.
Algusaja vöötkoodilugerid, kõikide formaatide omad, kasutasid peaaegu universaalselt tol ajal üldlevinud RS-232 jadaliidest. See oli elektrooniliselt lihtne, kui vaadata ühendusi, ja tarkvara sellele ligipääsemiseks oli samuti võrdlemisi lihtne, kuigi iga arvuti ja selle liidese pordi jaoks oli vaja kirjutada eraldi tarkvara.
Patenditud liidesed.
Kasutatud on ka väiksema levikuga liideseid. Neid on kasutatud suures müügisüsteemis koos spetsiaalse riistvaraga, selle asemel, et kasutada neid juba levinud arvutitega. Mõne liidese puhul luger tagastas "toore" signaali selle asemel, et proportsionaalselt tagastada nähtud intensiivsused vöötkoodi lugemise ajal. See oli dekodeeritud vastuvõtva seadme poolt. Mõnikord teisendas luger vöötkoodi sümboloogia selliseks (nagu Code 39), et signaali vastuvõttev seade sellest aru saaks.
Klaviatuuri kiilud.
Personaalarvuti populaarsuse kasvu ja arvuti standardse klaviatuuriliidesega sai lihtsamaks kui kunagi varem ühendada füüsiline riistvara arvutiga ja tekkis äriline vajadus sarnase tarkvara lihtsustamiseks. "Klaviatuuri kiilu" riistvara oli ühendatud arvuti ja selle normaalse klaviatuuri vahele. Selle abil ilmusid märgid vöötkoodilugerist täpselt nii, nagu oleksid need sisestatud klaviatuuri kaudu. See tegi arvutite jaoks väga lihtsaks vöötkoodide lugemise, ilma nende muutmiseta, kuigi see nõudis kasutajalt ettevaatlikkust ja toimis vaid teatud osaga vöötkoodi sisust.
USB.
Hiljem hakkasid vöötkoodilugerid kasutama pigem USB- kui PS/2-liidest. Säilitamaks kerget integreerumist olemasolevate programmidega, tuli kasutada Seadmedraiverit nimega "tarkavara kiil" selleks, et jäljendada klaviatuuri käitumist "klaviatuuri kiilu" riistvaralise lahenduse korral.
Paljudel juhtudel pakutakse teatud valik liideseid (HID, CDC). Mõnel on PoweredUSB.
Traadita side võrgu ühendus.
Modernsed kaasaskantavad vöötkoodilugerid töötavad traadita võrgus vastavalt WiFi- või Bluetooth-ühendusega. Siiski teevad need ühendusviisid seadme tööaja sõltuvaks akust ja aku laadimiseks kuluvast ajast.
Lahutusvõime.
Lugeri lahutusvõimet mõõdetakse lugeri valgust eraldava täpi suuruse järgi. Juhul kui see valgustäpp on laiem kui iga riba või tühi koht vöötkoodis, siis katab see kaks elementi (kaks tühja kohta või kaks riba) ja võib tekitada vale väljundi. Kui aga kasutada liiga väikest valgustäppi, võib see tõlgendada valesti mingit osa vöötkoodist, tehes samuti väljundi valeks.
Üldlevinud suurused on 13 punkti ja (0,33 mm), kuigi mõned lugerid suudavad lugeda koode mõõtmetega 3 punkti. Et väiksemad koodid oleksid täpselt loetavad, peavad need olema trükitud suurema resolutsiooniga.