A barcode scanner is a device used to read the information encoded in a bar code (linear or 2D). There are several technologies used to do this which can be defined generically as:
Wand: A device that looks like a pen and is held in the hand like a pencil. The wand is drawn across the linear barcode (this device does not work on matrix technologies and is very difficult to use on multi-row symbologies) and the modulation of an LED light is measured to determine the bar and space pattern.
Laser Scanner: This type of scanner is available as a hand held and a fixed type scanner (similar to the type used in a grocery store scanner). In both cases a laser light is moved across the barcode and the reflected light is used to determine the bar and space pattern. By modulating the laser in 2D this type of scanner can be used to read 2D symbologies.
CCD scanner: A charge coupled device (CCD) is used to take a picture of the symbol and then software processing allows the data to be determined. This type of scanner allows software processing of the picture to increase the effective contrast between the dark and light parts of the symbol, thus providing for more accurate decoding methods for symbols that have low contrast or are badly lit.
Many barcode scanners that are available today use auto-discrimination to allow a single scanner to determine what the barcode symbology used is and decode the information on the symbol. This makes redundant the requirement for multiple scanners when several symbologies are used on a label.