Industrial 2 of 5.[1] (also known as Standard 2 of 5[2] [3] [4]) is a variable length, discrete, two width symbology. Industrial 2 of 5 is a subset of two-out-of-five codes.[5]
Industrial 2 of 5 is one of the first 1D and oldest barcodes and can encode only digits (0-9). It was invented in 1971[6] by Identicon Corp. and Computer Identics Corp. At this time, it has only historical value because of low encoding density and restricted charset. Previously it was used for cardboard printing, photo developing envelopes, warehouse sorting systems and for management of physical distribution.[7] [8]
Industrial 2 of 5 has low encoding density because an information can be encoded only in black bars and white spaces are just ignored. Industrial 2 of 5 barcode may include an optional check digit. Most of barcode readers support this symbology.[9] [10]
Industrial 2 of 5 can encode digits from 0 to 9.[11] The digit can be encoded in 5 black bars on digit and white spaces are ignored. Any black bar can have two width: wide or narrow. Any white space can have any width by not more than narrow black bar.
Industrial 2 of 5 start/stop patterns and data patterns are split by white space. Industrial 2 of 5 could include optional checksum character which is added to the end of the barcode.
Industrial 2 of 5 features:
Four bars in encoding scheme, except zero, have own weights which encode value of the symbol. Also, last black bar is used as parity bit to avoid single error. Symbol consists of five bars: two wide bars and three narrow bars. Value of the symbol is a sum of nonzero weights of first four bars.
As an example, we can see digit 3 is encoded. Weight 1 and 2 is not zero and parity bits is 0 means the count of bits is divisible on 2. The result: 1*1 + 1*2 + 0*4 + 0*7 = 3.The same with digit 4: weight 4 is not zero and parity bit is 1, which means that count of bits is not divisible on 2. 0*1 + 0*2 + 1*4 + 0*7 = 4.
Digit | Bar weight | Bars | Encoding | Mnemonic (using weights) | |||||
---|---|---|---|---|---|---|---|---|---|
1 | 2 | 4 | 7 | Parity Bit | |||||
0 | 0 | 0 | 1 | 1 | 0 | ||▮▮| | NSNSWSWSN | 4+7=11, replaced by 0 | |
1 | 1 | 0 | 0 | 0 | 1 | ▮|||▮ | WSNSNSNSW | 1+0=1 | |
2 | 0 | 1 | 0 | 0 | 1 | |▮||▮ | NSWSNSNSW | 0+2=2 | |
3 | 1 | 1 | 0 | 0 | 0 | ▮▮||| | WSWSNSNSN | 1+2=3 | |
4 | 0 | 0 | 1 | 0 | 1 | ||▮|▮ | NSNSWSNSW | 4+0=4 | |
5 | 1 | 0 | 1 | 0 | 0 | ▮|▮|| | WSNSWSNSN | 1+4=5 | |
6 | 0 | 1 | 1 | 0 | 0 | |▮▮|| | NSWSWSNSN | 2+4=6 | |
7 | 0 | 0 | 0 | 1 | 1 | |||▮▮ | NSNSNSWSW | 7+0=7 | |
8 | 1 | 0 | 0 | 1 | 0 | ▮||▮| | WSNSNSWSN | 1+7=8 | |
9 | 0 | 1 | 0 | 1 | 0 | |▮|▮| | NSWSNSWSN | 2+7=9 |
Start | ▮▮| | WSWSN | |
Stop | ▮|▮ | WSNSW |
The barcode has the following physical structure:[12]
1. Quiet zone 10X wide
2. Start character
3. Variable length digit characters, properly encoded
4. Optional check digit
5. Stop character
6. Quiet zone 10X wide
Industrial 2 of 5 may include an optional check digit,[13] which is calculated as other UPC checksums. This is not required as part of the specification, but check digit is added as last digit in the code to improve the accuracy of the symbology.
xcheck=10-((3x1+x2+3x3+x4+ … +x2n+3x2n+1)\pmod{10})
x1
Example for the first 6 digits 423456:
Digit | 4 | 2 | 3 | 4 | 5 | 6 | |
---|---|---|---|---|---|---|---|
Position | x6 | x5 | x4 | x3 | x2 | x1 | |
Weight | 1 | 3 | 1 | 3 | 1 | 3 | |
Weighted sum | 4 | 6 | 3 | 12 | 5 | 18 | |
Check digit | 10 - (48 mod 10) = 2 |
IATA 2 of 5[14] [15] (also known as Computer Identics 2 of 5,[16] Airline 2 of 5[17] [18]) is a variable length, discrete, two width symbology, which is fully similar to Industrial 2 of 5 symbology except start/stop symbols. In this way it has all advantages and issues of Industrial 2 of 5 symbology.
Start | || | NSN | |
Stop | ▮| | WSN |
IATA 2 of 5 was invented in 1974 by Computer Identics Corp.[19] The barcode was used by International Air Transport Association (IATA) for managing air cargo.[20]
IATA 2 of 5 version used by International Air Transport Association had fixed 17 digits length with 16 valuable package identification digit and 17-th check digit. Some readers currently still support this symbology[21]