Abstract:
In the automated performance of multiple measurements on each of a succession of workpieces, the invention contemplates establishing a plurality of safety-reference positions (S 1  to S 7 ) along the programmed displacement path intended for the probe head (10) and its work-contacting probe pin. Any one of a variety of error signals developed in the course of conducting the measurement program on a given workpiece is operative to temporarily stop further conduct of the program and to instigate a repeated attempt to successfully traverse the part of the program in which the error signal occurred. The repeated attempt involves retracting displacement of the probe head back to the most-recently traversed safety-reference position, and if the repeated attempt produces the same error signal the probe head is returned to the most-recently traversed safety-reference position and is then caused to by-pass the error-signal part of the program by displacement to a succeeding safety-reference position, for completion of the remaining fraction of the measurement program on the given workpiece.

Description:
BACKGROUND OF THE INVENTION 
     The present invention relates to a method for the automatic control of coordinate-measuring instruments and to means for carrying out the method. 
     Coordinate-measuring instruments are being increasingly used in repeated cycles of multiple measurement operations upon a massed succession of workpieces, for example under CNC control, during an unmanned night shift and without supervision by operating personnel, the massed succession being a large number of workpieces clamped on the machine table or fed continuously to the machine via a work-handling system. To control such an operation, a computer is loaded with a work program and continuously issues various other technical commands to the measurement machine; illustratively, these commands concern the probe-pin combination or configuration to be substituted, the contact force selected for the measurement, etc. And the computer receives and stores the measured coordinate values and status reports from the control electronics of the measurement machine. 
     If disturbance or interruption occurs during such an automatic CNC-controlled operation, an error signal can develop if the probe head has collided with an obstacle or if a correct measurement value cannot be retaken, due to too short an approach path or to a dirty surface of the workpiece. In accordance with the previously known state of the art, the CNC operation is interrupted upon the occurrence of such an error event, a warning signal is given, and the machine must be restarted manually by the operator after the error has been eliminated. Such interruptions in operation are undesirable since a measurement job can be thereby delayed for several hours. 
     BRIEF STATEMENT OF THE INVENTION 
     The object of the present invention is to provide a method for the automatic control of coordinate-measuring instruments whereby machine-dependence upon the operator is greatly reduced, particularly in the event of disturbances or program interruptions. 
     The invention achieves this object by introducing predetermined safety or reference positions (S 1  to S 7 ) in the measurement program of a coordinate-measuring machine. Specifically, these safety positions are located to provide reference points along the programmed path of displacement of the probe head or work-contacting ball tip, and error messages given off during the course of the measurement program activate a control module which repeats the most-recent measurement procedure. In the event that the error message is repeated, the control module moves the probe head back to one of the safety (reference) positions (S 1  to S 7 ) which have already been passed and, from there, to another such position (S 1  /S 5  -S 7 ), so as to omit measurement at an upcoming measurement point (Z 5 ), or at a plurality of measurement points (Z 5  -Z 8 ) on a structural feature of the workpiece, or at all remaining measurement points on the workpiece. 
     In the case of a work-contacting problem, the measurement point is re-approached, as with modified control parameters such as, for example, greater contacting speed and/or reduced measurement force, so that a correct retaking of the measurement value can in many cases still be obtained, thus avoiding error messages which could lead to shut-down of a machine. Said measures can successfully overcome an error (disturbance) condition, as for example in the event that adequate signal intensity is not developed in the work-contact pulse because the work-approach speed is too low, or because the workpiece surface is yieldable, or because the trigger pulse from the probe pin has come too late due to a probe pin that has been bent because the measurement force was set too high. 
     Errors in measurement position are frequently due to positioning inaccuracies in the control circuits of the machine control, but such errors can be eliminated by renewed approach to a given measuring point, from a defined reference position. 
     In the event of a disturbance which cannot be eliminated, due, for example, to the fact that a given feature of the workpiece has not been machined or is even absent, or if the programmed path of the probe head causes a collision with a feature which has not been taken into account, then this error will recur at the same place during the renewed approach. Since the control module then moves the probe head directly to the next reference position and by-passes the corresponding feature on the workpiece, the measurement task is at least partially performed; there is no interruption of the measuring process, and machine shut-down is avoided. 
     It is preferred that the various reference positions be assigned different priority levels, at least one of which causes direct transfer of measurement operations to the next workpiece to be measured. Assurance is thus had, among other things, that indispensable measurement points cannot be bypassed; an indispensable measurement point is, illustratively, a point required for calculation of the coordinate system for each individual workpiece. If an error prevents the measurement of such an indispensable position, then further measurement on the entire workpiece will be by-passed, so that the machine will not make superfluous measurements on features which are no longer relevant. 
     It is advantageous if the control module is caused to introduce &#34;help&#34; routines which are dependent on the type of error, before causing repeated approach to a measurement position which has encountered an error message. In the case of a probe head which relies on electrical-switch closure to certify probe-pin seating, such a &#34;help&#34; routine can develop a trigger signal, from detected failure of the switch to close, and the trigger signal can initiate a mechanical impact or shock to the probe head. Electromagnetic means for delivering such a mechanical impact or shock to the probe head or in the vicinity of its suspension is described in another patent application filed on even date herewith, under the title &#34;Probe Head With Self-Contained Electrical Switch Operated Means for a Coordinate-Measuring Machine&#34; [Attorney File 7043]. 
     Another &#34;help&#34; routine which can be performed before moving back to a reference position can apply in the case of a &#34;collision&#34; which is detected at offset from the surface of the workpiece; in such case, the measurement point is again and immediately approached without any change in the control parameters. With this technique, one can eliminate at least some of the so-called non-intrinsic disturbances which have no systematic cause but occur at random. Such non-intrinsic disturbances can, for instance, be &#34;air contacts&#34;, in which, due to transient vibration in the building edifice, or to too great acceleration of a machine drive, in combination with relatively great mass of the involved probe pin, a trigger pulse is generated which has the appearance of a contacting or collision event. 
     The control module which introduces the above-described disturbance-instigated measures can be contained in a software program loaded in the computer of the measurement machine. However, it is also possible to develop the control module as &#34;firmware&#34; and, in particular, to include it in the form of a correspondingly programmed microprocessor in the control electronics of the coordinate-measuring instrument. 
    
    
     DETAILED DESCRIPTION 
     The invention will be illustratively described in detail, in conjunction with the accompanying drawings, in which: 
     FIG. 1 is a block diagram of components for controlling a multi-coordinate measuring instrument; 
     FIG. 2 is a diagram which shows in simplified manner the path traversed in the course of measuring a typical workpiece; and 
     FIG. 3 is a flowchart of a &#34;help&#34; program which is executed in the event of a disturbance noted by a control unit of FIG. 1. 
    
    
     In the block diagram of FIG. 1, control electronics of a coordinate measuring instrument are shown within an enclosure 1. The heart of the control electronics 1 is a control unit 4 which consists of microprocessors and is connected via a data bus 20 to a computer 5 which has been programmed by the user; from bus 20, computer 5 receives position data and other technical data for a given measurement program to be executed. Using data received from the computer, the control unit 4 calculates, inter alia, the desired velocity values v x , v y  and v z  for velocity-control circuits of the respective drives of the machine, in three traversable coordinate-measurement axes. Each of these control circuits consists of a drive motor 8 with attached tachometer/generator 7 and output signal-processing (S.P.) electronics 9 which complete the control circuit. A probe head 10 is moved by the motors (8a to 8c) to the measurement positions established in the computer 5; the probe head 10 carries a deflectable probe pin 12 having a work-contacting ball tip 11. 
     The position of the probe head 10 in the coordinate system of the machine is measured via three measurement scales (3a to 3c), associated with the respective measurement axes X, Y and Z. In so doing, signal transmitters (2a to 2c) which read the measurement scales are also each connected to the control unit 4 as part of a separate position-control circuit. 
     The probe head 10 includes electrical switch-contact means associated with its mounting of the probe pin 12, and the contact means 17 is connected via a line 18 to the control unit 4. The contact means 17 opens upon work-contacting deflection and supplies a contact or coincidence-identifying pulse, in verification of another work-contacting pulse generated by sensitive piezoelectric sensing means (not shown, but as described, for example in U.S. Pat. No. 4,177,568) in probe pin 12. Control unit 4 responds to work contact by storing the instantaneous coordinate values of the measurement scales, and these data are delivered as measurement output to the computer 5. 
     Control unit 4 has additional lines of connection to the probe head 10. Via a line 15, an electromagnetic component 16 forming part of a probe-pin-changing device (as described, for example, in U.S. Pat. No. 4,637,119) can be excited by the control unit 4. And another line 13 will be understood to be operative to control a device for adjusting the measurement force of probe pin 12, namely, the compliant preloading of contact means 17, here symbolized by a spring 14. 
     FIG. 2 diagrammatically illustrates a typical path of movement for probe head 10 (i.e., the work-contact ball 11 of its probe pin 12) in the course of a program of measuring two similar typical workpieces W 1  and W 2 . For simplicity, the showing is limited to rectilinear displacements in a vertical plane passing through the workpieces W 1  and W 2 , namely, an X-Z plane. However, it is to be understood that as a rule the path of movement for a measurement job involves varying degrees of complexity of displacement in all three coordinate directions X, Y and Z. 
     At commencement of the measurement program of FIG. 2, probe head 10 is moved to a first intermediate position Z 1  at offset from the front side of the workpiece W 1 . From there, the front side is contacted at different places, and from the points of contact a determination is made of the position in space of the surface defined by said points. Thereupon, via points (Z 2 , S 2  and S 3 ) of change in displacement direction, a position Z 3 , Z 4  is reached, within a bore, the diameter of which is to be determined; at the same time, the bore-axis location is ascertained and interpreted in relation to the previously measured area, as a necessary step in determining the workpiece-coordinate system. After movement out of the bore and to a point S 4 , the probe pin is moved horizontally until its ball tip 11 contacts another vertical surface, being a feature of an upper part of the workpiece W 1 . After this vertical surface has been contacted and the tip 11 of the probe pin retracted to point Z 5 , displacement proceeds vertically up to point S 5 , horizontally to point S 6 , and then vertically down to the position Z 6 , Z 7  in a second bore in the workpiece W 1 . After taking measurement values in this bore, the probe head passes, via an intermediate retracted position Z 8  to successive positions S 7  and Z 9  behind the rear face of the workpiece W 1 , for further verifying contacts with the rear face. After making these contacts, the probe head retracts horizontally to point Z 10 , and then vertically up to point Z 11 , at which point the measurement program for workpiece S 1  is at an end. For reasons of safety, the points S 1  and Z 11  will be understood to lie far above the workpieces to be measured, so that at this elevation, the probe head and its probe pin can be moved readily over the shortest path to the starting point S 1  for a similar program of measurement on the next workpiece W 2 . 
     In prior art practice wherein the above-described program is part of a CNC operation, a disturbing event, as for example a collision with the workpiece (or a so-called &#34;air-contact&#34;, meaning failure to make a programmed work-contact event), would necessarily interrupt and therefore stop the CNC operation. Other possible occasions for such shut down of the CNC operation could also arise from failure to retake a given measurement (through recycling the program), in the event that the expected switch-contact pulse is not developed in line 18 to the control unit 4. 
     In accordance with the method of the invention, the user provides so-called safety or reference positions in the intended course of a given program. In the example shown in FIG. 2, these are the encircled points designated &#34;S&#34;, further identified with different numerical designations of priority levels, &#34;1&#34; and &#34;2&#34;. Priority level &#34;1&#34; means that the probe head is to be retracted back to the nearest safety position in case of a disturbing event, while priority level &#34;2&#34; causes forward displacement to the next safety position. The value &#34;1&#34; is illustratively entered into the program, for situations in which the next measurement point is indispensable for the involved workpiece, as for example because the position of the workpiece must be calculated from the particular measurement. The value &#34;2&#34; can be assigned when it is permissible to omit the next measurement point of the program. 
     These safety or reference positions and their corresponding priority designations will be understood to have been marked by the user, for each of the successive positions to be measured, the marking entries being stored in the computer 5, for example within the course of a single test run. Upon passing of a safety position, the computer 5 reports to the control unit 4 the presence and the priority level of the safety position. If a disturbance such as a collision, etc. should then occur during the measurement program, the control unit 4 will interrupt the course of the measurement and initiate one or more &#34;help&#34; measures, including inter alia: 
     1. Repetition of the most recent measurement procedures, illustratively from the most recent safety position and with different values of certain parameters, such as contact force or contact speed; 
     2. In case the error message is repeated at the same location, returning to the last safety position; and 
     3. In the event of a priority-level &#34;1&#34; involvement, moving back on the programmed path to the starting point S 1  and passing thence over to the next workpiece (W 2 ), or in the event of a priority-level &#34;2&#34; involvement, advancing further to the next safety point, while omitting intermediate measurement points. 
     The above-described illustrative steps proceed, once the corresponding control module in the control unit 4 has been activated by the error message, and in accordance with a fixed routine; a flow-chart of such a routine is provided in FIG. 3. For better understanding, this routine will be described for several examples and with reference to FIG. 3 and FIG. 2. 
     EXAMPLE 1 
     Let us assume that, in the course of probing the front surface of the workpiece W 1 , and that in retracting from work contact (i.e., in the direction toward Z 2 ), the switch contact in the probe head has remained open. This disturbance causes the corresponding module in control unit 4 (a) to stop the measurement program, (b) to inquire as to the status of the switch contact and (c) if the latter is open, to deliver a brief excitation pulse to magnet 16 of the probe-pin-change device; the switch contact closes, from resulting mechanical vibration. The disturbance is thus eliminated, and the measurement program continues. If the probe head of the measuring machine does not have a probe-pin-change device, then the front surface is again approached, as a result of which the probe pin is again deflected; upon probe-pin retraction, the switch contact closes, thus signifying that the error has been eliminated, and the measurement program continues. 
     EXAMPLE 2 
     Let us assume that there is an obstacle between positions S 2  and S 3 . In such case, inquiry as to an open-switch contact is answered in the negative but, on the other hand, the unexpected contact pulse (i.e., the collision-induced contact pulse, not provided for this part of the program) leads to a &#34;yes&#34; output in the &#34;Collision?&#34; decision block next worked by the program. The control module now initiates a second approach to the collision position. If the same error no longer occurs at this location, then a so-called &#34;air contact&#34; was involved, i.e., the &#34;collision&#34; contact pulse was the result, for example, of a spurious mechanical shock in the machine bed; this being the case, no true collision has occurred, and the measurement program will continue further. However, since in this example, it is assumed that an obstacle actually is present in the path between S 2  and S 3 , the contact pulse will recur at the same place, so that the control module will now move the probe head back to the last-traversed safety-reference position, i.e., to S 2 , and inquiry is made as to its priority level. The priority &#34;1&#34; was established for safety position S 2  because the bore measurements (Z 3 , Z 4 ) are absolutely necessary for determining the position of the workpiece; the involved priority &#34;1&#34; thus effects (a) return of the probe head from position S 2  to the starting position S 1  and (b) further probe-head displacement along the path shown in dashed line, and in a plane well above the workpieces W 1  and W 2 , directly to S 1  position for the next workpiece W 2 . The measurement program then proceeds with the described program of measurement, for workpiece W 2 , and indication of the omission of workpiece W 1  is caused to appear in the measurement record produced by the computer 5. 
     EXAMPLE 3 
     Let us assume that the programmed cycle of contact with the front surface of the upwardly projecting part of the workpiece W 1  (e.g., horizontally to the rear, from safety position S 4 ) does not provide any usable measurement results; for example, the work-contact pulse may be absent because this surface is too shifted (i.e., not within positional tolerance) due to poor machining, or because this upwardly projecting part is entirely missing, or because the overlying element consists of a different material which is unsuited to the currently adjusted workcontacting parameters (measurement force, contacting speed). Such errors give rise to a &#34;yes&#34; output at the third or &#34;Contact error?&#34; decision block; this being the case, the program module now moves the probe head back to the safety position S 4 , and the measurement point is re-approached several times, each time with changed parameters. This repetition loop is marked R in the flow-chart of FIG. 3. If the re-approach is successful, then the measurement program continues. However, if the same contact error occurs again and again, then the control module moves the probe head back to safety positon S 4 . Ensuing inquiry as to its priority level results in the value &#34;2&#34; and effects probe-head displacement directly from S 4  to the next safety position S 5  ; and, as soon as position S 5  is reached, the measurement program continues, it being recorded that the measurement sought from Z 5  has been omitted. If, however, a further disturbance occurs during the direct passage from S 4  to S 5  and if the safety position S 5  is therefore not attained, then the probe head is returned along the path defined by safety positions which have thus far been traversed, back to the initial position S 1 , and from that point over to the next workpiece W 2 . In this case also, an entry is made in the measurement record for workpeice W 1  to identify the omitted measurement points.