Cost-effective vision-based code readers offer numerous advantages.

Manufacturers in many industries are under pressure to track parts and components from cradle to grave. To address full life cycle traceability, some manufacturing engineers are marking 2D codes directly on parts. Direct part mark identification (DPMI) offers numerous advantages.

However, high read rate DPMI has been difficult to achieve because of low-contrast codes, variations in part surfaces, and partial damage to codes from process and environmental conditions. Machine vision systems can overcome these issues and accurately read 2D codes at high speeds. Thanks to advances in the power of digital signal processors, imaging sensors and decoding algorithms, cost-effective vision-based code readers are now available.

There are seven important factors that engineers should consider when implementing DPMI:

  • Code selection.
  • Data encoding.
  • Marking processes.
  • Mark placement.
  • Verification.
  • Reading systems.
  • Connectivity.

Code Selection

Automotive, aerospace and electronics manufacturers have adopted 2D code standards and formats to meet their application needs. Typically, it makes sense to follow industry-specific guidelines. But, when there is no specified standard, Data Matrix ECC200 is recommended.

This ANSI code standard is the most widely supported for DPMI applications involving metal, glass, ceramic and plastic materials. Because this code is in the public domain, marking and reading equipment suppliers have invested significant resources to improve the performance of ECC200 supporting tools. As a result, there are more product choices, which generally results in higher performance and lower cost equipment, as compared to proprietary codes that lock users into a single supplier.

Data Encoding

The Data Matrix code offers a number of advantages for DPMI applications, including small size and high data encoding capacity. In addition, error correction allows a code to be successfully read even if 60 percent of it is damaged. Data encoding refers to the amount of information that is "stored" within the matrix when the Data Matrix code is generated. There are 24 square formats and six rectangular formats available in ECC200 to provide users the flexibility for encoding between six and 3,116 digits in a single code.

Code size can affect readability and is generally determined by the amount of data to be encoded, module (cell) size, and surface roughness of the area on the part where the code will be applied. When trying to comply with an industry specification, an application specification will define the size that is needed for compliance. Decisions about what information to encode are typically driven by company specifications and the requirements of the traceability project.

The available space on the part must also be considered. Limited space may require the Data Matrix code be used as a "license plate" to simply identify the part, reducing the amount of data encoded and size of the code. In this case, a centralized database containing manufacturing and historical data referring to the part is updated as the part is identified during manufacturing and supply chain processes. When space isn't an issue, users may take advantage of the large data capacity of the code and encode much more information about the part, creating a portable database.

Marking Processes

The choice of marking process is typically incorporated into the component design. Deviations from this design may require engineering change approval. The primary methods used to produce machine-readable symbols for DPMI include dot peening, laser marking, electrochemical etching and ink-jet printing. Important factors influencing the marking process decision include part life expectancy, material composition, environmental wear and tear, and production volume. Other considerations include surface texture and the amount of data to be encoded on each part, in addition to the available space and location of the mark on the part.

Mark Placement

The location of the code on the part can directly impact the readability of the code. The location should be clearly visible throughout the manufacturing process and it is best to mark on a flat site on the part. It is also important to choose a location where the mark is in a prominent position on the part so that it can be easily viewed by the reader. Avoid locations where there may be a surrounding surface relief that could potentially affect the illumination of the code by the reader's light source.

Wherever possible, it is best to provide a clear zone around the mark. Features or part edges should not contact the code or come between the code and the reader. The reader should also be located away from sources of electrical noise. If a mark must be placed on a cylindrical part, care must be taken in selecting the size of the code. Surface curvature can distort the code and make illumination difficult. A code size that is no larger than 16 percent of the diameter or 5 percent of the circumference is recommended.


To ensure that the marking equipment is applying a mark that will produce the highest read rates, a code verification system that includes lighting, optics, camera and software should be implemented at the marking station. This is not only a critical factor for downstream reading performance, but it reduces nonconformance and the associated costs of rejected parts due to unreadable codes.

A verification system will immediately detect a problem with the marking process that could be due to poor fixturing of the part, damage to the machine, such as a broken tip on a dot peen machine, or incorrect settings during part changeover. Additionally, a code verification system can provide feedback on the marking process that can be used in preventive maintenance. For example, the verifier can monitor the wear of the tip on a dot peen machine by monitoring dot size and flag the operator on the floor when a pin needs to be changed.

Reading Systems

There are three types of readers for DPMI: Fixed-mount readers, presentation readers, and handheld readers.

Fixed-mount readers are used to identify parts that are moved automatically by conveyor, indexer or robot. Typically, fully automated manufacturing lines, such as those found in electronics and automotive manufacturing, use fixed-mount readers.

In operation, this type of reader is mounted in a fixed position where the mark can repeatedly be placed in front of the reader in either continuous or indexed motion. A trigger signals the reader that the part is ready for reading. This trigger signal can be sent by an external sensor that detects the presence of the part or by an encoder that knows the position of the part at all times and can signal the reader to decode.

Fixed-mount readers can be configured with an integrated light source or an external light source. The advantage of a fixed-mount reader without an integrated light source is that it can be mounted in varying working distances from the part. Supplemental lighting can be selected to meet the application needs.

Fixed-mount readers can be easily set up, viewed and maintained over an Ethernet network for efficiency. Frequently, fixed-mount readers are part of a network of general-purpose machine vision sensors performing other inspection and gauging tasks, and must communicate over an Ethernet network to the general manufacturing control system.

Similar to a fixed-mount reader, a presentation reader is mounted in a fixed position; however, it operates in a continuous reading cycle, automatically performing the decoding task once the operator places the part in front of the reader. Presentation readers provide a fast way of reading part codes in areas where parts are handled manually. A presentation reader can be implemented with either a fixed-mount reader or a handheld reader. Using a handheld reader in presentation mode allows assemblers to get more use out of the device; operators can remove the reader from its stand and bring it to the part.

Handheld readers are often preferred in environments where parts handling is not automated or when parts vary greatly in size. They are used in job shop manufacturing operations, quality control test stations, and in logistics areas. Handheld readers come in either tethered or cordless configurations. The advantage of tethered handheld readers is that they cannot be removed from the application location. Cordless operation is required in cases where part size or position limit cord length.


Connectivity refers to the method of interfacing the reader or verifier to a controller, such as a PLC or PC, so that the result of the decoding is communicated. The connectivity method depends upon the application and the type of reader involved.

In fixed-mount DPMI applications, read results are usually sent to process equipment or to a database over the factory network, so the DPMI reader should offer both serial and network communications. Serial communications are used typically in applications where the read or verification results stay "local" to the workcell or factory automation equipment.

Network connectivity enables the reader to communicate decoded results to PCs and databases at the enterprise level. However, any reader selected should support a broad range of standard network protocols.

And, as more and more code readers are used throughout the manufacturing process, it becomes important to have a centralized way of managing them. The reader should allow engineers to manage and control vision activity over the network from remote locations in the plant and beyond.

With handheld readers, connectivity methods depend on whether the reader is tethered with a cord or cordless. Tethered readers often communicate the read result through what is called a "keyboard wedge" interface, which emulates the keystrokes of a keyboard making integration to a PC very simple. Alternatively, communications can be made over an RS232-C interface. A cordless handheld reader uses wireless technology, such as Bluetooth, to communicate to the base PC station or other controller.