Method for calibrating a coordinate measuring machine and the like

Abstract: Method (FIGURES 4A through 4C) and system (FIGURE 3) are disclosed for automatically calibrating a coordinate measuring machine (CMM) (10). The system guides an operator through instrument set-up and data collection procedures. The system automatically con­ verts the collected data into error compensation or axis correction data which represents 21 different geometry errors (i.e. pitch, yaw, roll etc.) of the CMM (10). The error compensation data is then trans­ ferred to a CMM measurement processor (36) for subse­ quent use by the CMM (10) during operation thereof to thereby compensate the CMM (10) for its entire measuring volume (102).

Description: This invention relates to a method for calibrating a coordinate measuring machine (CMM) and the like and, in particular, to a method for calibrating a CMM whereby, as a result of the calibration, the CMM is compensated during its operation for its entire measuring volume. With the advent of numerically controlled machine tools, the demand has grown for a means to support this equipment with faster first-piece inspection and, in many cases, 100% dimensional inspection. To fill this need, the CMM was developed in the early 1960's. A CMM can also be used as a layout machine before machining and for checking feature locations after machining. In many cases the CMM plays a vital role in the mechanization of the inspection process. Since its development, the CMM has been increasingly used throughout the automotive and aerospace industries. Although it was once considered an exotic tool for ensuring quality control, the CMM is now becoming a mandatory piece of equipment for both the large manufacturing plant and the small job shop. This is primarily due to the need for an accurate measuring instrument and detailed documentation of the components being produced. Currently, the CMM is being used in one of three ways in manufacturing. The simplest approach is to place the CMM at the end of the production line or in an inspection area. With this approach, the CMM is used to inpsect the first part of a production run to verify the machine setup. Once the setup is verified, it then measures parts on a random basis. For many applications, this permits the best approach to inspection. Another approach is to incorporate the CMM between two work centers and then measure 100% of the parts produced at the first center before any secondary operations are performed at the second work center. This approach is possible because CMMs are capable of measuring three-dimensional geometry and making many different measurements within a short period of time. When this approach is used, the CMM indirectly controls the production process. In this setting, however, the CMM must be "hardened" to perform in the shop environment for part inspection. A third approach integrates the CMM into the production line. This permits the CMM to directly control the production process. In operation, an integrated system would measure the workpiece, compare the measurements with required dimensions and, if necessary, automatically adjust the machine controls so that the part is manufactured within the required specifications. A basic CMM consists of four elements: (1) the machine structure, which basically is an X-Y-Z positioning device; (2) the probing system used to detect part surfaces and provide input to a control system; (3) the control system including a machine control and computer hardware; and (4) the software for three-dimensional geometry analysis. The measuring envelope of volume is defined by the X, Y and Z travel of the machine. Although a variety of machine designs and configurations exist, all designs incorporate the same fundamental concept of three coordinate axes. Each axis is ideally square in its own relationship to the reference plane created by the other two axes. Each axis is fitted with a linear measurement transducer for positional feedback. This allows position displays within the envelope to be independent of any fixed reference point. The most common reference systems in use are steel and glass scales. Both systems utilize noncontact, electro-optical reader heads for determining the exact position of the machine. Steel reference systems are widely used in shop environments because the difference in the coefficient of expansion between the steel scale and workpiece is minimal. Glass scale reference systems are generally used in controlled environments because of the difference in the coefficient of expansion between glass and the metal workpiece. The worktable of the machine generally contains tapped holes to facilitate the clamping and locating of parts. It may be made from granite or steel because of its stability in various environments. Electronic or solid probes are inserted into the probe arm or shaft, which is supported by cantilever, bridge gantry, column members or other CMM types. Probe arm movement is guided by means of frictionless air bearings or mechanical bearings. Coordinate measuring is typically a two or three-dimensional process that determines the position of holes, surfaces, centerlines, and slopes. Up to six sides of a cube-shaped part may be inspected without repositioning the part. In a typical operation, the part is placed on the table of the CMM at a random location. Generally, this location is approximately central to the machine axes to access all of the part surfaces to be inspected with the probe. Depending on the size of the part and the type of probe used, the part may need to be clamped to the machine table. If multiple inspections of similar parts are required, a reference location point may be established with a reference precision cube or sphere. The probe is then moved, manually or under machine control, until contact is made with desired part features. Reader heads, traveling on each axis along built-in axis measuring scales, transfer the instantaneous machine position through the digital display and to the computer interface. The dimensional and geometric elements may then be calculated, compared, and evaluated, or stored, or printed out as required. Some of the advantages of using CMMs over conventional gaging techniques are flexibility, reduced setup time, improved accuracy, reduced operator influence, and improved productivity. CMMs do not need to be dedicated to any single or particular measuring task. The can measure practically any dimensional characteristic of virtually any part configuration, including cams, gears and contoured surfaces. Establishing part alignment and appropriate reference points are very time consuming with conventional surface-plate inspection techniques. These procedures are greatly simplified or virtually eliminated through software available on computer-assisted or computer-controlled CMMs. Such software allows the operator to define the part's orientation on the CMM, and all coordinate data are subsequently automatically corrected for any misalignment between the part reference system and the machine coordinates. A CMM with sophisticated software can inspect parts in a single setup without the need to orient the part for access to all features even when a fourth axis (rotary table) is employed. All measurements on a CMM are taken from a common geometrically fixed measuring system, eliminating the introduction and accumulation of errors that can result with hard-gage inspection methods and transfer techniques. Moreover, measuring all significant features of a part in one setup prevents the introduction of errors due to setup changes. The use of digital readouts eliminates the subjective interpretation of readings common with dial or vernier-type measuring devices. Operator "feel" is virtually eliminated with modern electronic probe systems. All CMMs have canned software routines for typical part features, such as bores or center distances. In the part-program-assisted mode, the operator positions the machine; once the initial position has been set, the machine is under the control of a program that eliminates operator choice. In the computer numerically controlled (CNC) mode, motor-driven machines run totally unattended by operators. Also, automatic data recording, available on most machines, prevents errors in transcribing readings to the inspection report. This all adds up to the fact that less skilled operators can be readily instructed to perform relatively complex inspection procedures. All the factors previously mentioned help to make CMMs more productive than conventional inspection techniques. Further dramatic productivity improvements are realized through the computational and analytical capabilities of associated data handling systems, including calculators and all levels of computers. A variety of machine configurations are available from the manufacturers of CMMs. Each configuration has advantages that make it suitable for particular applications. A total of 11 different machine configurations exist; however, some of these configurations are modifications of one of the five primary configurations: cantilever, bridge, column, gantry, and horizontal arm. The utility of a CMM depends largely on the nature of the probing device. Three types of probes are commonly used: (1) hard; (2) electronic, and (3) noncontact. A probe is selected according to the dimensional and geometrical requirements of the inspection process. Various accessories used in conjunction with the probes enhance the capability of CMMs. For example, indexable probe heads permit orienting the measuring probe in horizontal and vertical planes to keep the probe normal to the plane desired. This feature gives the CMM the capability to reach and inspect geometrical elements that are not aligned to the machine axes. In addition, the use of indexable heads is generally required when inspecting and scanning complex surfaces. Indexable probe heads, however, tend to shrink CMM measuring volume. A microprocessor control system is usually supplied with indexable heads to operate as a power drive and intelligent interface between machine control and indexing heads. Rotary tables are especially useful when inspecting complex, multifaced parts or workpieces with a rotation axis such as cams, gears, and rotors. A variety of sizes are available to accommodate different size workpieces. Rotary tables expand CMM measuring volume. Rotary tables can be controlled manually or automatically. When automatically controlled tables are used, special software programs interact with the machine controls to control table movement and provide misalignment compensation. Besides their physical configurations, CMMs can also be classified according to their mode of operation; manual, manual computer-assisted, motorized computer-assisted, and direct computer controlled. Manual machines have a free-floating, solid or electronic or non-contact probe that the operator moves along the machine's coordinate axes to establish each measurement. Digital readouts, associated with each axis, provide the measurement values that the operator notes and records manually. In some instances, a simple digital printout device may be used to record the readings. Manual computer-assisted CMMs use a data processing system to manipulate the measurements which are still made by manually moving the probe through a series of measurement locations. Solid or electronic or non-contact probes may be used on this type of machine. The data processing may be accomplished by a special microprocessor-based digital readout, a programmable calculator, or a full-fledged computer. Depending on the sophistication of the data processing system and associated software, computer-assisted CMMs perform functions ranging from simple inch to millimeter conversion to automatic three-dimensional compensation for misalignment and a host of geometric and analytical measuring tasks. Storing of predetermined program sequences and operator prompting are also available to create part programs. The part program is generated and stored in the computer, which determines the inspection sequence and compares measured results with nominal values and tolerances for automatic GO, NOT GO decision making. In effect, the computer system can carry out all the calculations and analyses required to arrive at dimensional and tolerance evaluations and can lead the operator through a prescribed series of positioning and measuring moves. Data recording is usually included with computer-assisted CMMs. A motorized computer-assisted CMM has all the features of a computer-assisted CMM, but uses power-operated motions under the control of the operator, who uses a joystick. Most motorized CMMs also provide means for disengaging the power drive to permit manual manipulation of the machine motions. Some machines use direct-current servomotors and pneumatically operated friction clutches to reduce the effect of collisions, and most permit drive disengagement for manual movement. Direct computer controlled (DCC) CMMs are equivalent to CNC machine tools. A computer controls all the motions of a motorized CMM. In addition, the computer also performs all the data processing functions of the most sophisticated computer-assisted CMM. Both control and measuring cycles are under program control. Most DCC machines offer various programming options, including program storage and, in some instances, off-line programming capability. Beyond the microprocessor-based digital readouts, which were initially developed to provide basic measurement data processing capabilities for manual coordinate measuring machines, there is also a need to solve sophisticated measuring problems involving three-dimensional geometry and to provide more flexible general-purpose programming capabilities to solve special measuring problems. Many CMM manufacturers offer a series of data processing equipment for such purposes, including full DCC capability. The key to the productivity of all forms of computer-assisted CMMs lies in the sophistication and ease of use of the associated software. Software is the most important element in any coordinate measuring system because its power determines how many part features can be measured and its ease of use determines the extent to which the machine is used. The functional capabilities of CMM software depend on the number and type of application programs available. Virtually all CMMs offer some means of compensation for misalignment between the part reference system and the machine coordinates by probing selected points. Some machines are limited to alignment in one plane, while most machines provide full three-dimensional alignment. Once the designated points have been taken, the program calculates the misalignment and applies the appropriate correction to all subsequent measurement readings. Conversion between Cartesian, polar, and, in some instances, spherical coordinate systems is also commonly handled. Most systems also calculate the deviation of measurements from nominal dimensions of that part stored in memory and flag out-of-tolerance conditions. Geometric functions handled by the CMM software define geometric elements - such as points, lines, planes, cylinders, spheres and cones - from a series of point measurements and solve measurement problems dealing with the interaction of such geometric elements. Such software can determine, for example, the intersection of two circles established on the basis of a selected number of measurements or it can establish the angle of intersection of two surfaces. Many software packages also provide a means for evaluating geometric tolerance conditions by determining various types of form and positional relationships (such as flatness, straightness, circularity, parallelism, or squareness) for single features and related groups of features. Best-fit programs can identify the location of a part finished to size within a rough part from which it is to be made, to optimize the machining-allowance distribution: maximum material condition (MMC) programs evaluate features dimensioned according to MMC principles. Other application programs include automatic part scanning for digitized profiles and a variety of special programs to handle the inspection of special shapes such as gears and cams. Statistical analysis software available provides for graphic data display. including histograms. In the simplest form of CMM, a single transducer mounted parallel to each axis is able to determine the position of the probe tip relative to the datum point, which may conveniently be the point at which the axes intersect, or any other suitable location. There are several possible sources of error if such a technique is employed. Lack of straightness in movement and of orthogonality of the axes are major sources of such errors. A further cause of error is the angular rotation of the carriages about axes perpendicular to their directions of movement. Such errors, often referred to as Abbe errors, depend not only upon rotation, but also upon the lateral offset between the probe tip and the transducer measuring in that dimension, and are obviously variable with that offset. Other sources of error exist, such as errors in the linear transducers themselves. Many attempts have been made to compensate for error. For example, it is known to introduce a deliberate and known error into the transducers by various means. However, such corrections only apply for a given location in the measuring volume. An alternative technique is to "calibrate" the machine, measuring the errors existing at various point when the machine is actually used. As may be imagined, such a calibration process can be extremely lengthy, especially for a large machine and an enormous amount of storage is necessary. One prior method for determining axis misalignment is as follows: (a) positioning a granite cube on the CMM table with a first side aligned with the CMM X axis and then measuring the variation in the CMM-generated Y coordinate as the CMM probe is moved over the first side, then adjusting the cube position until no Y variation is produced. (b) Move the CMM probe over a second side (perpendicular to the X axis) and measure the variation in the CMM-generated X coordinate. The ratio of the X coordinate variation to the Y coordinate variation is a measure of the misalignment between the CMM X and Y axes. (c) Measure Y and Z axis misalignment by repeating steps (a) and (b), using appropriate sides of the granite block and substituting Y for X and Z for Y in steps (a) and (b). (d) Measure X and Z misalignment by repeating steps (a) and (b), using another pair of sides and substituting Y for X and Z for Y. In addition to being time-consuming, this granite square method is subject to errors caused by imprecise positioning of the granite square on the CMM table. Another time-consuming method is used to measure axis scale errors and involves the use of a laser and the following steps: (a) A reflector for a laser interferometer is attached to the CMM in place of the CMM probe. (b) The Y and Z axes of the CMM are locked so that only movement along the X axis is allowed. (c) A laser interferometer is aligned so that its beam travels parallel to the X axis and strikes the reflector. (d) The reflector is then moved along the X axis of the CMM and CMM-generated X axis readings and the interferometer readings are obtained. From these readings the scale error in the CMM X axis can be determined. (e) Steps a-d are then repeated for the Y and Z axes. Also known are CMM inspection procedures which involve the use of artifacts such as the barbell and the Bryan Gauge. The data generated by the CMM during these procedures is used on a pass-fail basis. In other words, if use of the above artifacts indicates that adjustment is required, then the previously described granite block or laser interferometer procedures are used in making the needed adjustments. Another method used to calibrate a CMM includes the steps of installing a CMM artifact on a CMM table, coupling the CMM probe to the artifact and storing a plurality of CMM-generated cartesian coordinate data points for a plurality of positions defined by the artifact. A data processor is programmed to generate a set of distance equations in terms of the CMM generated cartesian coordinates, a known diameter of the artifact and a plurality of unknown CMM axis alignment error and scale error factors. This set of equations is then solved for the unknown error factors, from which can be determined the necessary CMM adjustments. The CMM can then be properly aligned by making the indicated adjustments. In one version of this procedure, the artifact may be a ball bar. In another version, the artifact may be a Bryan Gauge. An example of this method is found in the U.S. Patent No. 4,437,151 issued March 13, 1984 and entitled Coordinate Measuring Machine Inspection and Adjustment Method. GB-A-2 162 942 describes a procedure and an apparatus for determining position errors wherein simultaneously with a measurement along an axis, errors transverse to this axis can also be measured. In this reference only linear displacement errors as well as errors of roll, pitch and yaw are measured. These errors are then stored as error data and are converted into correction data and combined with the position data during the operation of the machine. For this purpose, the measuring device remains a part of the machine, as shown in Fig. 8, for example. The squareness errors are determined, independent of previously determined position errors, in a specific procedure not described in detail and deposited in a store as error data. This error data is then considered, also during the operation of the machine, whereby the storage and calculation effort is further increased. US-A-3 555 254 describes a calibration method wherein a driven part in a numerically controlled positioning device is moved to various positions spread over its two dimensional field of movement and wherein after reaching each such position its actual position is accurately measured to determine the error between the commanded position and the actual position. The values of the errors thus determined are fed into a memory to form a table of error values versus part position. The error values from the table are used to correct the commands transmitted to the motor drivers to take into account the repeatable error associated with the position of the driven part. With this calibration method total errors for each point in the field of movement are to be measured and stored which, in the case of a three dimensional volume of movement and with a high degree of accuracy, will require a very high amount of measuring work and storage capacity. Besides, no effective way of determining and considering the squareness errors is disclosed in the above mentioned documents. It is the task of the present invention to indicate a procedure and an apparatus, minimizing the calculation effort during the operation of the machine and enabling a real time operation and wherein in addition to the usual errors, depending on the path along the axes, the squareness errors are also taken into consideration. This problem has been solved according to the invention by the features of claim 1. According to this claim, the invention is characterized in that not error data, but correction data, calculated from the former, are stored so that the calculations necessary for obtaining said correction data are already carried out before the first operation of the machine, for instance in the manufacturers' factory. In this procedure, squareness errors are also taken into consideration, the axis eror data already calculated being taken into consideration when determining the squareness errors by means of an artifact. SUMMARY OF THE INVENTION One advantage of the present invention is to provide an improved method for calibrating a CMM and the like in a reliable, accurate and cost-efficient manner in a manufacturing environment. The CMM calibrating method of the present invention includes the steps of correlating feedback data and calibration data to obtain axis correction data for each predetermined position along the entire axis of motion. The axis correction data is then stored in a form which can be utilized by a control means during operation of the CMM to compensate the CMM for the entire measuring volume of the CMM. A CMM calibrating system for carrying out the method of the present invention includes data processing means, including means for correlating feedback data and calibration data to obtain axis correction data for each of the predetermined positions along the axes of motion of the CMM. Storage means store the access correction data in a form which can be utilized by a control means during operation of the CMM to compensate the CMM for the entire measuring volume of the CMM. Preferably the CMM includes a probe shaft having three degrees of freedom representing axes of motion of the CMM. Also, preferably, all geometry errors (i.e. 21) of the CMM are corrected electronically prior to actual use of the CMM, so that the corrections can be performed in real time. As a result, the need to manufacture and assemble a totally accurate machine is eliminated. Other advantages of the method and system include the reduction in time in final assembly of the CMM and allowing increased manufacturing tolerances for many of the components of the CMM. The above advantages and other features of the present invention are readily apparent from the following detailed description when taken in connection with the accompanying drawings. DETAILED DESCRIPTION OF THE INVENTION FIGURE 1 is a perspective view of a typical CMM with which the present invention is utilized; FIGURE 2 is a representation of the three-dimensional coordinate system of the CMM of FIGURE 1; FIGURE 3 is a block diagram of the system for automatically calibrating the CMM; FIGURES 4A through 4C is a flowchart illustrating the various steps taken by the system of FIGURE 4 to calibrate the CMM; FIGURES 5A through 5C illustrate two different positions of an artifact, such as a ball bar, in each of the coordinate planes of the CMM; FIGURE 6 is a flowchart illustrating the various operating steps taken to determine the squareness of the CMM; FIGURES 7A and 7B illustrate the three-dimensional coordinate system and measuring volume of the CMM of FIGURE 1, together with a probe subcoordinate system; FIGURE 8 is a block diagram illustrating the method and system for determining position within the measuring volume of the CMM; and FIGURE 9 is a set of equations to be solved to determine the corrected position within the measuring volume for a machine described in FIGURE 1 whose axis coordinates are defined in FIGURES 7A and 7B; similar equations could be developed for other types of CMM configurations. Referring to FIGURE 1, there is illustrated a coordinate measuring machine (CMM) collectively indicated by reference numeral 10. The CMM generally includes an X-Y-X positioning device, generally indicated at 12; a probe 14; and a control system, generally indicated at 16. The control system 16 includes a machine control, generally indicated at 18; computer hardware, generally indicated at 20; and software for programming the computer hardware 20. The probe 14 is inserted into a Z-axis probe arm or shaft 22 of the device 12. The device 12 includes a base or work table 26 which contains tapped holes to facilitate the clamping and locating of parts. The device 12 also includes a backrail 28 which slidably supports an X-axis carriage 30 by preloaded air bearings, which also guide the carriage 30. An overhead Y-axis carriage 32 moves relative to the X-axis carriage 30 and is also supported and guided by preloaded air bearings on the X-axis. The probe shaft 22, in turn, moves relative to the Y-axis carriage 32 and is supported and guided thereon by preloaded air bearings. While a conventional cantilever CMM has been described, it is to be understood that other types of CMMs may be utilized with the present invention based on a set of equations defined for the particular CMM being corrected. Referring to FIGURE 2, the X-Y-Z coordinate system depicted therein illustrates typical errors caused by angular rotation of the carriages 30 and 32 and the shaft 22 about the axes of the three axis system. Three such errors exist for each of the axes. Consequently, nine such errors exist for the coordinate system of FIGURE 2 even though the mechanical components of the device 12 are manufactured and assembled in a highly accurate fashion. Because of these rotation errors and other errors, position error still exists as the device 12 is moved to different spots within its measuring volume 102 as shown in FIGURE 7. Angular rotation errors about each of the axes are defined as follows: A(x) = X-roll; A(y) = Y-pitch; A(z) = Z-pitch; B(x) = X-pitch; B(y) = Y-roll; B(z) = Z-yaw; C(x) = X-yaw; C(y) = Y-yaw; and C(z) = Z-roll. Lack of straightness in movement along the axes of FIGURE 2 is also a source of error. For each axis there typically exists a lack of straightness with respect to the other two axes, thereby resulting in six errors with respect to straightness of the device 12. Straightness errors are defined as follows: X(y) = Y-straightness in X direction; X(z) = Z-straightness in X direction; Y(x) = X-straightness in Y direction; Y(z) = Z-straightness in Y direction; Z(x) = X-straightness in Z direction; and Z(y) = Y-straightness in Z direction. Although oftentimes a less serious source of error, axis scale errors can become significant. Such errors are defined as follows: X(x) = scale errors in X; Y(y) = scale errors in Y; and Z(z) = scale errors in Z. Another possible source of error is lack of orthogonality of the X,Y, and Z axes. Such error is typically given as the angular deviation from 90 degrees as follows: P yx = y-x squareness; P zx = z-x squareness; and P zy = z-y squareness. Consequently, it can be seen that there are 21 different geometry errors of the device 12, all of which, except for the squareness errors vary depending on the position of the device 12 within its measuring volume 102. Finally, another possible source of errors are probe offset errors, which are determined from the angular errors and probe offsets, S x , S y and S z of FIGURE 7B. The probe 14 is used to measure the center position of a sphere 100. Probe offsets are then determined by vector subtraction of vectors A and B of FIGURE 7A. Referring now to FIGURE 3, there is illustrated in block diagram form a system for calibrating the CMM 10. The system 10 includes calibration equipment 32, such as a laser interferometer with linear, angle and straightness optics. Preferably, the laser comprises an HP 5528A laser. The calibration equipment 32 also includes electronic levels with a level meter and an A to D HPIB interface. The calibration equipment 32 further includes a ball bar as well as a vertical straight edge and probe. Preferably, the electronic levels comprise Wyler electronic levels and the probe comprises a Renishaw TP-2, PH-6 probe, including a 200 millimeter extension. Finally, the calibration equipment 32 includes probe adaptors for the laser optics, the level and the PH-6 probe. The calibration equipment 32, in general, is used by factory personnel to measure the CMM geometry and scale errors and automatically transfer that information to a computer 34 through the HPIB interface. Preferably, the computer 34 comprises an HP-207 computer including a printer and an approximate communications link to permit the computer 34 to communicate with the other components of the system. In general, the computer 34 stores the calibration data and computes/stores axis correction data. Furthermore, the computer 34 transfers data to a measurement processor (MP) 36 of the control system 16 and to a disc 38. Axis position data and data record commands from the MP 36 are transferred to the computer 34 during the calibration process. The system of FIGURE 3 also includes a data record switch 37, which preferably comprises a handheld button switch which interfaces to the MP 36 to signal the MP 36 to record information which the MP 36 is receiving from the rest of the CMM 10. The resulting axis correction data on the disc 38 is transferred to memory within the MP 36 through the computer 34 for use during operation of the CMM 10. The information on the disc 38 can also be printed out into a final report for maintaining in a quality control file 40. Referring now to FIGURES 4A through 4C, these are illustrated in flowchart form, the various steps taken by the system of FIGURE 3 in order to calibrate the CMM 10. However, preferably, before the actual calibration procedure is performed, verification of machine function, ranges, axis friction and repeatability is made. In block 42, the individual calibrating the CMM 10 indicates the type of CMM which is being calibrated. For example, the CMM 10 illustrated in FIGURE 1 is of a cantilever design. Typically, data is input into the control system 16 by the operator, such as by typing that information into a keyboard 44 of the computer 20. In block 46, all of the variables utilized during the calibration process are initialized, such as measurement intervals and the like. During the initialization process of blocks 42 and 46, the computer system 20 assists the operator to enter the particular model number, machine serial number and date into the system 20. The computer system 20 also instructs the operator to place the end of the probe shaft to machine position 0,0,0. The extent of machine axis travel is stored relative to the particular model number. In general, for each of the following error calibration steps illustrated by the remaining blocks in FIGURES 4A through 4C, procedural requirements for the calibrating operator are displayed on the screen before the data is taken. Such requirements typically list the calibrator equipment required, the particular setup (which may include reference to a manual) and the operator steps required to obtain the data. In block 48, the amount of X-roll given by the mathematical symbol, A(x), is determined by using the electronic levels in a conventional fashion along every 50 millimeters of X axes movement with the Y and Z axes of the device 12 locked so that movement only along the X axis is allowed. In the example of FIGURE 1 the device 12 is preferably automatically moved under control of the machine control 18 along 50 millimeter intervals on the X axis. Correspondingly, at each 50 millimeter interval, the MP 36 provides to the computer 34 the exact location in the machine coordinate system at which the measurement was taken. In this way a table of X-roll data as a function of the X position is generated. In block 50, the error, Y-pitch, given by the mathematical symbol, A(y), is determined by first attaching an angular reflector for the laser interferometer to the device 12 in place of the CMM probe 14. The X and Z axes of the device 12 are then locked so that only movement along the Y axis is allowed. The laser interferometer is aligned so that the beam travels parallel to the Y axis and strikes the reflector. The reflector moves along the Y axis of the device 12. CMM-generated Y axis readings and the interferometer readings are obtained at every 50 millimeter intervals under control of the machine control 18. In this way, a similar table of data is generated for Y pitch for the entire range of travel of the Y axis. In block 52, the Z-pitch error data, A(z), is determined in much the same fashion as the X roll error data was obtained in block 48. The electronic levels are used to obtain the error data along every 50 millimeters of Z axis travel for the entire range of Z axis motion. In block 54, X-pitch error data, B(x), is determined for every 50 millimeters along the X axis by use of the laser angular interferometer to thereby generate the table of error data. In block 56, the Y-roll error data B(y), is determined with the electronic levels for every 50 millimeters of Y axis movement. In block 58, the Z-yaw error data, B(z), is determined for every 50 millimeters of Z axis movement with the electronic levels. In block 60, X-yaw error data, C(x), is determined for every 50 millimeters of X axis movement with the laser angular interferometer. Referring now to FIGURE 4B, in block 62, Y-yaw error data, C(y), is determined for every 50 millimeters along the Y axis by utilizing the laser angular interferometer. In block 64, the Z-roll error data, C(z), is determined for every 50 millimeter of Z axis movement utilizing the vertical straight edge, touch probe and probe extensions. The data obtained in blocks 48 through 64 are typically measured in arc seconds and are preferably converted into radians before being stored in tabular form so that the data can be used in calculations as will be apparent hereinbelow. In block 66, X-scale error data, X(x), is determined for each 25 millimeters of movement along the X axis by use of the laser linear interferometer at some convenient Y, Z position (preferably table level). The X laser - X mp data is then corrected to Z = 0, Y = 0 positions as shown by the equation immediately adjacent block 66. In this way, a table of X scale data is generated and stored. In block 68, a table of Y-scale error data is generated in a similar fashion as the X-scale error data was generated in step 66 by utilizing readings from the laser linear interferometer taken at 25 millimeter intervals along the entire Y axis. In block 70, the Z-scale error data is computed by utilizing readings from the laser linear interferometer and the CMM-generated Z axis readings to thereby form the tabular Z-scale error data for every 25 millimeters of Z axis movement. In block 72, X-straightness in Y error data, Y(x), is determined through the use of the laser straightness interferometer which provides readings along every 50 millimeters of X axis movement at some convenient Z position (preferably table level). The Y(x) laser - Y mp data is then corrected to Z = 0 position as shown by the equation immediately adjacent block 72. After the tabular data for X-straightness in Y is generated by solving the equation adjacent block 72, a least squares, best fit line is fitted to the data points and the distance of the data points from the line is determined, thereby normalizing Y(x) about the best fit line. In blocks 74, 76 and 78, X-straightness in Z error data, Y-straightness in X error data and Y-straightness in Z error data respectively, are generated or computed in the same fashion as the X-straightness in Y error data was generated in block 72. Similarly, the error data in blocks 74, 76 and 78 are normalized about a best fit line as was done in block 72. Referring now to FIGURE 4C, in block 80 Z-straightness in X error data, X(z) is determined along 50 millimeter measurement intervals along the Z axis by utilizing the straight edge and probe. Utilizing the laser straightness interferometer results in limited Z travel. Consequently, the Z-straightness in X error data is a function of the X axis reading from the measurement processor 36, X mp measuring a straight edge with touch probe; and, the product of the Z axis probe offset and the Z-yaw error data for the corresponding Z axis reading, S z ·B(z) and S y ·C(z). Similarly, after the equation adjacent the block 80 has been solved, a least squares, best fit line is fit to the resulting data points and the distance of the data points from the best fit line is computed and thereafter stored in tabular form. In like fashion, in block 82 the Z-straightness and Y error data, Y(z) is computed in a similar fashion as that computed in step 80. In block 84, the X-Y squareness error data, P yx , is determined from the solution to the quadratic equation indicated in FIGURE 4C. The values for A,B and C of the quadratic equation are given by the first set of equations for A, B and C and are derived in the following fashion. With reference to FIGURE 5A and FIGURE 6, in step 86 the ball bar is placed in two orientations in the X-Y plane at approximately 90 degrees from each other. During a measurement step 86 the centers of the spheres at the ends of the ball bar are computed in order to determine the length of the ball bar in each of the orientations. In block 88, the four sphere centers are compensated by using the previously computed compensation data. In block 90, the length of the ball bar in each of the orientations is equated to each other. When this is done, the X-Y squareness factor becomes a quadratic equation as previously indicated. The solution to the quadratic equation determines the X-Y squareness factor, P yx , in radians, as indicated in block 90. In block 92, as indicated in FIGURE 6, after the X-Y squareness factor is determined, the X-Z squareness factor P zx of step 94 is then computed. The middle set of A, B, and C equations is utilized to solve the quadratic equation to determine the X-Z squareness. With further reference to FIGURE 5B, the ball bar is placed in two different orientations in the X-Z plane and blocks 86, 88, 90 and 92 are repeated. In block 96, the Y-Z squareness factor, P zy , is computed in the same fashion by placing the ball bar in two different orientations in the Z-Y plane as indicated in FIGURE 5C. The lowermost set of A, B and C equations is utilized in order to solve the quadratic equation to determine the Y-Z squareness factor. In block 98, calibration sphere coordinates are determined by first mounting the touch probe 14 at a known distal end of the probe shaft 22. A calibration sphere 100 is screwed into the worktable 26 at a preselected location within the measuring volume 102 of the device 12. The positioning device 12 is then moved so that the probe 14 touches the sphere 100 at a number of different points. Sphere coordinates are determined by vector addition of vectors B and C wherein vector A equals vector B plus vector C as indicated in FIGURE 7A. Referring again to FIGURE 4C, in block 104 all of the previously computed compensation data is converted to a format for use by the measurement processor 36. In block 106, the data is then stored on the backup disc 38. In block 108, the data is also down-loaded to memory 110 within the measurement processor 36 which is utilized by the measurement processor 36 during operation of the CMM 10 to compensate the CMM 10 for the entire measuring volume 102 thereof. One of ordinary skill in the programming arts could prepare a computer program to perform the above calibration functions from the above description and drawings without undue experimentation. Referring now to FIGURE 8, there is illustrated a method and system for utilizing the previously stored, factory calibrated machine characteristics or error data in order to determine the absolute position of a point in the measuring volume 102 of the device 12. In general, the factory calibrated machine characteristics stored within the measurement processor 36 characterizes the motion of the X, Y and Z axes in terms of its deviation from a theoretically true axis system. As previously mentioned, there are 21 possible geometric errors which have been previously calibrated. The relative effect of any one of these errors on system performance varies with different machine configurations and even among different machines of the same configuration. Through appropriate software the measurement processor 36 is interfaced with the CMM 10. Block 110 represents the memory of the MP 36 in which the factory-calibrated machine characteristics or axis correction data are stored in tabular form. In block 112, the measurement processor 36 determines the machine characteristics for current sensor readings by capturing the actual position information from each machine axis sensor and uses this to locate information in the tables describing the machine characteristics in that particular position. In block 114, the measurement processor 36 mathematically combines machine feedback or position sensor signal and the characteristic axis correction data to produce a corrected set of coordinate values which describes the position of the probe 14 in a true Cartesian coordinate system. Referring now to FIGURE 9 there are illustrated the different mathematical equations which are solved to obtain the corrected X, Y and Z position. For example, the corrected X readout signal is a function of: the uncorrected value of the X readout, X mp ; the X scale error data for the particular value of X, X(x); Z-straightness In X error data, X(z); Y-straightness in X error data, X(y); the product of corresponding value of Z and the sum of the X-pitch error data, the Y-roll error data and the Z-Y squareness factor, Z[B(x) + B(y) + P zx ]; the product of the uncorrected Y value and the sum of the Y-yaw error data and the X-Y squareness factor, Y-[C(x) + P yx ]; the product of the Z component of the probe offset and the sum of the X-pitch error data, the Y-roll error data and the Z-yaw error data, S z [B(x) + B(y) + B(z)]; and the product the Y component of the probe offset and the sum of the X-yaw error data, the Y-Yaw error data and the Z-roll error data, S y [C(x) + C(y) + C(z)]. In like fashion, the corrected Y and Z values are computed as indicated by the remaining two equations in FIGURE 9. The advantages accruing to the use of the present invention are numerous. For example, a more accurate CMM can be obtained at lower cost. Also, the system eliminates many manhours of final machine assembly in fine tuning the machine mechanically for accuracy as well as allowing increased manufacturing tolerances for many individual components of the CMM.

Claims: Method for calibrating a CMM (10) having a measuring volume (102), the CMM including a probe shaft (22) having three axes of motion (X, Y and Z), a probe (14) supported on a distal end of the probe shaft, devices for providing a position signal in determining the position of the probe for each of the axes of motion in the coordinate frame of the CMM and control means (36) for receiving the position signals and for providing a coordinate measurement signal which identifies the position of the probe, the method including the steps of: moving the CMM from a first predetermined position to a plurality of other predetermined positions along the length of each of the axes of motion so as to generate position signals in the coordinate frame of the CMM; measuring the position of the CMM in a standard coordinate frame having a standard axis system at each of the predetermined positions to obtain measured calibration data; processing the position signals and the calibration data and correlating the position signals and the calibration data to obtain axis correction data related to straightness, rotational and axis scale errors for each of said predetermined positions, the method being characterized in that it comprises the steps of storing said axis correction data; further providing squareness data (84, 94 and 96) representing the orthogonality of the axes by determining the squareness errors by (a) installing a first freely movable artifact on the CMM in a first position within a plane defined by a first pair of the axes of motion, the artifact having two free ends separated by a distance; (b) moving the artifact to a second position only within the plane; (c) moving (86) the probe so that the CMM generates four different sets of coordinate data representing the two positions defined by the ends of the artifact in each of said first and second positions and simultaneously compensating the position of the artifact by using the previously computed correction data; repeating steps (a) through (c) for second and third pairs of the axes of motion, the coordinate data being utilized in said step of processing to provide the squareness data for calibrating the CMM to obtain respective additional axis correction data, whereby the axis correction data corrects all geometry errors of the CMM including squareness errors; and storing (108) all axis correction data prior to actual use of the CMM in a form which is readable by the control means during operation of the CMM to compensate the CMM for the entire measuring volume. The method as claimed in claim 1 characterized in that said axis correction data include nine sets of compensated rotation data (48 through 64) representing the amount of angular rotation about each of the axes for each of the axes; squareness data (84, 94, 96) representing the orthogonality of three different pairs of the axes; six sets of normalized straightness data (72 through 82) for said axes; and three sets of scale error data (66, 68, 70) representing errors in the devices. The method as claimed in any one of claims 1 to 2 characterized in that said step of processing includes the step of calculating (90) the squareness for each of the planes from the coordinate data. The method as claimed in any one of claims 1 to 3 characterized in that the method further comprises the steps of determining probe offset data by installing a second artifact (100) on the CMM at a predetermined location within the measuring volume; and moving (86) the probe so that the CMM generates coordinate data representing the position of the second artifact (100). The method as claimed in claim 4 characterized in that said step of processing includes the step of calculating the calibration coordinates from the coordinate data. The method as claimed in any one of claims 1 to 5 wherein the first-artifact is a ball bar having a first and second end separated by a fixed distance and wherein step (c) is accomplished by coupling the probe to both ends of the ball bar so that the coordinate data represents positions defined by the ends of the ball bar. The method as claimed in any one of claims 4 to 6 wherein the second artifact comprises a calibration sphere (100) and wherein the step of moving is accomplished by coupling the probe to a plurality of positions on the sphere.

Inventors: BELL FREDERICK K, BRAZIER GARY E, BROWN STEPHEN N, BELL, FREDERICK K., BRAZIER, GARY E., BROWN, STEPHEN N.
Applicants: WARNER SWASEY CO, THE WARNER & SWASEY COMPANY
Application year: 1987
Main classification: G01B21
IPC codes: G01B21, G01B7