Bar code first came in use commercially in 1966, but it was soon realised that there would have to be some sort of set industry standard. By 1970, the universal grocery products identification code (UGPIC) was written by a company called Logicon Inc. The first company to produce bar code equipment for retail trade (using UGPIC) was the American company Monarch Marking, and for industrial use, the British company Plessey Telecommunications, in 1970.
UGPIC evolved into universal product code or the UPC symbol set, which is still used in the US. In June 1974, the first UPC scanner was installed at a Marsh’s supermarket in Troy, Ohio. The first product to have a bar code included was a packet of Wrigley’s Gum.
Barcode is an optical machine-readable representation of data, which shows certain data about certain products. Originally, barcodes represented data in the widths (lines) and spacing of parallel lines, and was referred to as linear or one-dimensional (1D) barcodes or symbologies. They also come in patterns of squares, dots, hexagons and other geometric patterns within images termed as two-dimensional (2D) matrix codes or symbologies. Although 2D systems use symbols other than bars, they are generally referred to as barcodes as well. Barcodes can be read by optical scanners called barcode readers, or scanned from an image using special software.
There are many benefits of barcod systems which fullfill the needs of the users at different levels. Barcode data-collection systems result in faster and accurate data-capturing, lower costs, minimal mistakes and easier inventory-management.
Types of barcode systems
A barcode symbology defines the technical details of a particular type of barcode—the width of the bars, character set, method of encoding, checksum specifications, etc. Most users are interested in the general capabilities of a particular symbology than in the sharp technical details.
There are different types of barcode systems/methods employed in various fields based on the usage and operations.
Coda bar. Older code often used in library systems, sometimes in blood banks.
Code 11. Used primarily for labeling telecommunications equipment.
EAN-13. European article numbering international retail product code.
EAN-8. Compressed version of EAN code for small products.
Industrial 2 of 5. Older code which is not in common use.
Interleaved 2 of 5. Compact numeric code, widely used in industry, specially in air cargo.
Plessey. Older code commonly used for retail shelf marking.
MSI. Variation of the Plessey code commonly used in the USA.
PostNet. Used by the US postal service for automated mail sorting.
UPC-A. Universal product code seen on almost all retail products in the USA and Canada.
Standard 2 of 5. Older code not in common use.
UPC-E. Compressed version of UPC code for small products.
Code 128. Excellent density and high-reliability code which is used worldwide.
Code 39. General-purpose code used worldwide.
Code 93. Compact code similar to Code 39.
LOGMARS. Same as Code 39, this is the US government specification.
PDF417. Excellent for encoding large amounts of data.
DataMatrix. Can hold large amounts of data, especially suited for making very small codes.
Maxicode. Fixed-length, used by United Parcel Service for automated package sorting.
QR code. Used for material control and order confirmation
Retail barcodes. There are four barcode types commonly used for retail items.The data encoded is a number which can be used to uniquely identify the item. UPC A and UPC E are mostly used in North America, but are also found throughout the world. EAN 13 and EAN 8 are more popular in the rest of the world, but are also found in North America. In Japan, EAN 13 and EAN 8 are known as JAN 13 and JAN 8. Some retailers use their own proprietary barcode types which are usually based on either EAN or UPC barcodes.
ISSN and the SISAC Barcode. ISSN system is used for identifying serial publications (print and non-print) while SISAC barcode symbol uses code 128 to uniquely identify each issue of a serial publication using the ISSN, date of publication, and volume or issue number.
OPC. Optical industry association barcode for marking retail optical products
UCC/EAN-128. Widely used data formatting model for Code 128
UPC Shipping Container Symbol. ITF-14
DataBar Expanded, DataBar 14. Apart from identifying a product, barcodes are expected to supply production details, such as batch number and use by date. DataBar Expanded is a new symbology which can do this. It encodes the same number as EAN 13 or UPC A by using less space.
EAN 13. It can be used to encode a simple code number, which must begin with ‘99.’
UPC coupon. It uses a combination of UPC A and GS1 128, which allows extra information to be encoded.
GS1 coupon. It is a new structure that uses DataBar Expanded and encodes even more information than the UPC Coupon.
Packaging barcodes. They are usually used on the shipping cartons that contain many items to give information about the contents.
ITF barcode. Known as UPC shipping in North America, it identifies th product in the box.
GS1 128 barcode. Formerly known as EAN 128, it is capable of providing details including dates, batch numbers, weight, quantity and dimensions of the product.
DataBar expanded (formerly known as RSS expanded) and GS1 DataMatrix barcodes. These can encode the same information as GS1 128 using less space.
Publishing barcodes. Books require a variation of EAN 13 barcode which encodes the ISBN number, plus optional pricing information. But newspapers and magazines require a variation of EAN 13 that can encode the ISSN number as well as the issue number and optional pricing information.
Sheet music requires a variation of EAN 13 which encodes the ISMN number.
Barcodes for non-retail labels. There are many different symbologies used for representing alphanumeric codes. Among them the most popular are:
Code 25. Also known as Interleaved 2 of 5 used for digits only.
Code 39. It is used for digits, letters and a subset of other characters.
Codabar. It is used for digits and a few other characters.
Code 128, Code 93 and Telepen. These are used for the full ASCII character set.
Pharma code. It is used for quality control and product identification for most pharmaceutical products. Often one or more of the bars have different colour.
2D Pharma code. It is a specialised form of DataMatrix that additionally encodes colour information.
Barcodes for encoding a website’s address.
Quick response (QR code). Its a 2D barcode. QR code can be used to encode a website’s address, which can then be scanned by a mobile phone. It can be seen on printed advertisements, promotional material or product packaging.
Functional operations of barcode system
A single barcode number has seven units which are either black or white. A black unit is displayed as a ‘bar,’ where as a white unit is displayed as ‘space.’ Another way of writing a barcode unit is ‘1’ for a single unit ‘black bar’ and ‘0’ for a single unit ‘white space.’ For instance, the number ‘1’ is composed of seven units, ‘0011001’ or ‘space-space-bar-bar-space-space-bar.’
In UPC barcode, the same numbers on the left-hand side—the manufacturer code—are coded differently than the numbers on the right-hand side—the product code. The numbers on the left are actually the ‘inverted’ or ‘mirrored’ codes of the numbers on the right.
Fig. 1 and Fig. 2 show the left and right side codes matching the corresponding numbers, separated into seven single units.
For instance, a ‘bar’ on the right side is a ‘space’ on the left. The right-side codes are called ‘even parity’ codes because there is an even number of ‘black bar’ units. For instance, ‘6’ on the right side is ‘101000,’ with two even-numbered ‘black bar’ units. The left-side are called ‘odd-parity’ because there are odd number of ‘black bar’ units. For instance, the left-side ‘6’ is ‘0101111’ with five odd-numbered ‘black bar’ units. Having different coded numbers for each side allows the barcode to be scanned in either direction.
• Super markets
• Universal product code
• Price and description information
3. Health care applications
• Drugs, instruments
• Identification of expiry date
• Blood banking—to find blood group, expiry date, donor traceability etc
4. Inventory control
• Portable readers
5. Work in process (WIP) tracking
6. Company inventory
• Raw materials
• WIP—components, assemblies, and semi-finished products
• Finished products
8. Electronic data interchange
• Direct communication between two or more companies’ network
• Industry-wise EDI standards
• Reduces cost and saves time of business transaction
9. Library management
Basics about the codes
Every barcode number is equal to four different ‘marks.’ A ‘mark’ can be either black (bar) or white (space). The ‘marks’ vary in width, but there are always four different marks—two ‘bar marks’ and two ‘space marks.’
The left-side code always begins with a ‘space’ or ‘0’ and ends with a ‘bar’ or ‘1.’ The right-side code is just the opposite; it begins with a ‘bar’ or ‘1’ and ends with a ‘space’ or ‘0.’
Fig. 3 shows the sample format of a barcode. The various parts in which the barcode structure can be divided are:
Manufacturer code. This is a five digit number specifically assigned to the manufacturer of the product. The manufacturer codes are maintained and assigned by the Uniform Code Council (UCC). Every product which the manufacturer makes carries the same manufacturer code.
Product code. This is a five-digit number that the manufacturer assigns for a particular product. Every different product and every different packaging or size gets a unique product code. A manufacturer can have 99,999 unique product codes. The product code is marked in Fig. 3 with orange colour.
Three guard bars. There are three guard bars highlighted with green colour in Fig. 3, at the beginning, middle and the end of barcode. The beginning and ending guard bars are encoded as ‘bar-space-bar’ or ‘101.’ The middle guard bar is encoded as ‘space-bar-space-bar-space’ or ‘01010.’ The guard bars tell the computer-scanner when the manufacturer and product code begin and end. For example, when the computer scanner reads the first‘101’ or guard bar, the computer knows the next series of numbers is either the manufacturer or product code. Similarly, when the scanner reads the ‘01010’ or middle guard bar, the computer knows another number is coming. The guard bars are also the supposedly ‘666’ hidden in the barcode.
Number system character. This number is a UPC system number that characterises specific types of barcodes. A UPC barcode is normally on the left side of the barcode. The actual barcode (the ‘bars’ and ‘spaces’) is the one after the first ‘guard bar.’ The number system character is symbolised with blue colour in Fig. 3.
Check digit. Also called the ‘self-check’ digit, it is on the outside-right of the bar code. Check digit is an old-programmer’s trick to validate that the other digits (number system character, manufacturer code and product code) are read correctly. It is marked with red colour in Fig. 3.
In general, no special bar is mentioned or used for pricing a product. When the scanner at the checkout line scans a product, the cash register sends the UPC number to the store’s central point of sale (POS) computer to look up the UPC number. The computer sends back the actual price of the item at that moment. This approach allows the store to change the price whenever required. If the price were encoded in the barcode, they could never be changed so easily.
There are also short bar codes, called zero-suppressed numbers. There’s a set of rules around forming zero-suppressed numbers from full numbers, but the basic idea is to leave out a set of four digits—all zeros. The main reason for having zero-suppressed numbers is to create smaller bar codes for small product-packages like 355ml cans.
The author is an assistant professor in computer science at Dr G.R. Damodaran College of Science, Coimbatore, Tamil Nadu