By programming coordinate measuring machines offline, companies can improve machine utilization and increase part accuracy.

A collision-detection system identifies the point of collision between the probe and the workpiece. With this software, a command had to be disabled to create this collision—in normal usage collision free motion is automatically generated. Photo: Entelegence Software Solutions

The term “virtual“ has connotations of something in the future, but virtual programming of coordinate measuring machines is already here, and for many companies has been in use for many years. These companies have enjoyed the benefits of offline programming that include increased throughput and improved accuracy.

Offline programming software acts as a virtual coordinate measuring machine (CMM) that enables programming to take place exactly as if the operator were sitting in front of a real CMM. As programs are created and edited, users visualize the CMM, probes, parts and fixtures in real-time 3-D graphics. Simulations can be replayed at any speed and viewed from any angle or distance.

Manufacturing systems that integrate the plant, process and people can attain new levels of quality, cut waste and improve efficiency. A look at some of the case studies profiled by Quality magazine reveals this to be the case. Metalagraphics Inc. (MGI, Moorpark, CA) is a metal-fabrication firm that has used programming software for many years to simulate the operation of its CMM, probes, parts and fixtures using real-time, 3-D graphics and animation. “You can start programming a part long before the part comes off the machine. We call it concurrent programming,“ David Grossman of MGI told Quality magazine in 1997.

At the time, the company realized that demand for its CMM-inspection services had grown far beyond the capacity of its CMMs, resulting in a constant backlog of parts needing inspection. When a prototype moved into the quality-assurance area for verification against the customer's CAD specifications, it had to wait in line for several hours behind other parts. Not until it finally reached the head of the line could a programmer start to program the part specifications into the CMM.

“Even if it took only an hour to sit down and program the part online, you still had that six- to eight-hour queue time,“ Grossman said. “We got to a point where things were being held back two, three, or four days waiting for a moment to be on the CMM.“

This company was not alone. Several years ago, CMM operators at Ford (Dearborn, MI) work with a virtual CMM software package that replicates what happens on the shop floor. The operators choose symbols on the software interface to program measurement functions, such as to measure a hole, slot or circle. Michael Clifford, a CMM and data management engineer at Ford, has said that by offline programming he can see the machine running and make sure there are no collisions. The software package allows complete planning of the CMM path. The output of this is Dimensional Measurement Interface Standard (DMIS) code.

DMIS is a programming standard that focuses on the interchange of static inspection commands and results data. According to Dietmar May (Plug-and-Play, the DMIS Part 2 Way, Quality, February 2002, p. 20), DMIS “provides a human-readable, post-processing file format for inspection sequences and results. Its use has grown and today it is also commonly applied as a native programming language for CMMs. The DMIS specification now defines a rich set of commands to enable virtually any real-world inspection task.“

The Virtual DMIS Phantom Probe function helps operators avoid mistakes by showing the path the probing system will follow before the move is approved. Photo: Entelegence Software Solutions

Maximize ROI

The ability to work offline in a virtual environment can improve accuracy and help maximize the return on investment of a CMM, according to Ken Sheehan, vice president of marketing for Entelegence Software Solutions (Orange, CA).

“The real value of coordinate measuring machines, and all inspection systems, whether contact or noncontact, is their ability to measure parts automatically,“ says Sheehan. “Automatic measuring methods tend to be more repeatable than when done by an operator using their hands or a joy stick because they may not probe exactly the same locations. Even if the same locations are probed, they may not be probed with the same velocity or same approach angle, and all of these discrepancies can lead to increased measurement uncertainty.“

Offline programming increases return on investment. Much like an NC shop that best utilizes its machinery by keeping it running as much as possible, a company recovers its investment in a CMM by keeping the device running as much of the time as possible.

“If a company has offline programming capabilities, it can prepare all of the measurement programs for in-process measurement and final inspection before the part physically exists, enabling the metrology group to keep pace with the computer aided manufacturing group,“ Sheehan says.

With offline programming, as soon as the first operation of the first part exists, there is a corresponding measurement program. That saves time because the metrology phase is no longer one step behind, waiting for a part to exist before developing the measuring program.

A complete and accurate virtual environment is vital to efficiently utilizing of offline programming. This environment must include an accurate model of the CMM, including all of the physical components of the machine, its travel limits and the ability to set the speed of the CMM if there is an interest in predicting cycle times, Sheehan says.

Solid modeling of parts and machine recognizes the interference between the bore and probe – only half the bore can be accessed. The software avoids collisions automatically. Photo: Entelegence Software Solutions

Key attributes

Sheehan says that when considering CMM programming software, end users should look at a number of key attributes. Perhaps the most important attribute of any DMIS-based CMM software is its ability to communicate with computer-aided design software. The software should be able to import CAD models, in all of the various formats, such as IGES, STEP and VDA, as well as the native formats of the major CAD companies.

A valuable component of any software is the ability to input multiple CAD models into the virtual environment. In some cases, it is necessary to import both the fixturing or clamping that will hold the part on the CMM table as well as the part itself to program motion and avoid a collision between the probe and the fixturing.

“This can also be essential when the fixture actually simulates one of the datums on the part,“ says Sheehan. “It may be necessary to measure the fixture to acquire the data on a part such as a turbine blade holding fixture that often includes measuring a tooling ball as the reference point or zero point for the measurement.“

Inspecting certain assemblies may also require importing multiple models to show individual parts and how they fit together, Sheehan adds. A gear housing is an example of a part for which it is important to understand the mesh of the gears as created by the assembled housing.

Finally, accurate modeling of the probing systems, including probe and/or stylus changers, is important so that the entire cycle can be modeled. If, for example, a probe or stylus change is needed to measure a point on the front side of a part, the software can ensure that the probe won't be driven through the part as it travels from the back of the machine where the tool changer is to the measurement point.

A key capability of any offline system is collision avoidance and detection, according to Sheehan. This is stated in this order because it is much more efficient if the system can avoid collisions altogether as opposed to merely advising the programmer after the fact that a collision situation has been defined, he says. “With today's solid modeling, if the probing and machine are also solids, it is not difficult for the offline software to understand when collision situations exist,“ he says. “Within the DMIS language, the user has the capability to define clearance surfaces, which are safe planes of travel, in which probes can pull back to make collision-free moves going from measurement point to measurement.“

Optimal performance

It's best if the offline-programming environment is identical to the online machine environment. This is primarily driven by the issue of training and efficiency on the part of the online and offline operators. If offline is done in the module that is part of the CAD system, it is much more difficult for the traditional CMM programmers to jump back and forth between the disparate systems, according to Sheehan. This may also make it difficult to track the various stages of the program. If offline programming generates DMIS code, and that code is translated into some other language, it could lead to configuration management issues. “If a program is edited online, it is no longer clear who has the master; is it the offline version or the online version?“ says Sheehan.

If uncertain, Sheehan says a simple test would be to write a program in the offline system. If it is not native DMIS, export it to DMIS, reimport it into the system and examine the program to see if it has undergone a change.

Emerging technologies

One concern about programming offline is a potential loss of precision when exporting to industry standard file formats. According to Sheehan, not a lot is known about the magnitude of these errors, but it seems that prismatic parts made up of simple geometrys such as planes, cylinders, circles and cones are not affected by these translations to the degree that parts with surfaces might be affected.

A way around this potential problem is by importing the native file format directly to the CMM. For example, rather than take a part modeled in CATIA and export it in IGES and then read the IGES file into the offline programming system, import the CATIA file directly into the offline system. This capability is gaining in popularity.

The emerging technology is probably one to two years from widespread use, but it already exists at various levels of sophistication and is gathering momentum with the larger companies. “Aerospace companies, in particular, are interested because they are dealing with 3-D curved surfaces, which may well be most susceptible to degradation when subjected to multiple translations.

“Two basic strategies can be used to solve the problem,“ says Sheehan. “The first is to read the file and the second is to get a copy of the CAD system to act as an intermediary. The economics of purchasing the extra CAD system is unacceptable to many shops. So the direct read is more attractive and is probably the one that will carry the day. It will become the more accepted approach.“


• Programming can be completed before a physical part exists. This means that as soon as a part is manufactured, a measurement routine is ready to inspect it.

• This ability can increase measurement capacity and throughput rates, which can help maximize a company's return on investment.

• Offline programming requires the entire environment to be programmed, including CMM specifications, probes, fixtures.