METHOD OF CALIBRATING A SURFACE SENSING DEVICE, CORRESPONDING CALIBRATING PROGRAM FOR A CONTROL COMPUTER AND CORRESPONDING CALIBRATION KIT
1. A method of calibrating a surface sensing device for use in position determining apparatus, the surface sensing device comprising one or more elongate members mounted to the position determining apparatus, and a surface sensing element mounted to the apparatus via the one or more elongate members, the method comprising probing at least one of the elongate members with a separate probe to determine its orientation.
A surface sensing device is mounted on an articulating probe head of a coordinate measuring machine. The device includes an elongate probe holder which is rotatable about an axis. An elongate sensing module includes a surface finish or surface roughness probe with a stylus tip. This is connected to the probe holder via an adjustable knuckle joint. To determine the geometry of the surface sensing device, including the tip normal and drag vector of the stylus tip, the orientations of the probe holder and the sensing module are determined by probing points which are spaced along their lengths, using a separate probe.
- 1. A method of calibrating a surface sensing device for use in position determining apparatus, the surface sensing device comprising one or more elongate members mounted to the position determining apparatus, and a surface sensing element mounted to the apparatus via the one or more elongate members, the method comprising probing at least one of the elongate members with a separate probe to determine its orientation.
The present invention relates to a surface sensing device for use in position determining apparatus or machine such as, for example, a co-ordinate-measuring machine (CMM), a scanning machine, a machine tool or an inspection/measurement robot. More particularly the invention relates to the calibration of such a surface sensing device.
Such a position determining apparatus or machine may be used for measuring a workpiece, and typically comprises a member which is movable in three coordinate directions X,Y,Z relative to a table on which the workpiece is supported. Movement of the member in each of the directions X,Y,Z is measured by transducers on the machine. A surface sensing device or probe provided on the movable member produces a signal indicating the relationship between it and the workpiece surface to be measured. The position of the surface may thus be determined. In an alternative machine, for example some types of machine tool, the table moves in X and Y and the movable member moves in Z.
Some types of contact probe, e.g. touch trigger probes and contact scanning probes, act in three dimensions. Typically they can approach a workpiece surface in any direction within the X,Y,Z coordinate system of the machine'"'"'s transducers, and they have a deflectable stylus with a workpiece-contacting tip. Prior to making measurements with such probes, it is usual to perform a kind of calibration known as “datuming”. This involves touching the stylus tip against a datum surface (such as a datum sphere), in order to determine a repeatable location of the stylus tip in the X,Y,Z coordinate measurement system of the machine.
In a flexible measurement system, in order to access different workpiece surfaces, the probe may be mounted on a CMM via a motorised articulating head, by which it is rotatable about two mutually orthogonal axes of rotation. The machine and the head may operate under computer control.
Probes (or surface sensing devices) may be exchangeable. When not in use, they are stored in respective storage ports of a storage rack. When required for measurement, the articulating head can automatically pick up a probe from a storage port of the rack, and then dock it back in the storage port afterwards, all under computer control. The present applicants Renishaw plc sell such a system under the trade mark Autochange. To enable alignment of the articulating head with respect to the rack, the Autochange rack is fitted with a fixed touch trigger probe. When setting up the rack, surfaces of the head are touched against the rack'"'"'s probe. This establishes a spatial relationship between the head and the ports of the rack, to ensure their alignment.
U.S. Pat. No. 8,006,399 (Wallace et al) and U.S. Pat. No. 8,468,672 (Wallace) describe a surface sensing device. In order to access different workpiece surfaces, it is mounted on a CMM via an articulating head, by which it is rotatable about two mutually perpendicular axes of rotation. The surface sensing device may comprise a surface finish probe which senses the surface unidirectionally, or another type of unidirectional (single axis) probe, for example an optical probe such as a laser spot or laser line probe. To enable such a unidirectional probe to address differently-oriented surfaces, it has a third axis of rotation, enabling it to be rotated manually. The third axis of rotation may be aligned with a generally longitudinal axis of the surface sensing device, which may sense the surface in a direction transverse to or offset from the third axis. Alternatively, the surface sensing device may be arranged at an angle to the third axis of rotation.
However, this third axis of rotation only enables surfaces to be addressed in certain possible orientations. There is also a problem of datuming or calibrating the geometry of such a surface sensing device.
The present invention provides a method of calibrating a surface sensing device for use in position determining apparatus, the surface sensing device comprising one or more elongate members mounted to the position determining apparatus, and a surface sensing element mounted to the apparatus via the one or more elongate members, the method comprising probing at least one of the elongate members with a separate probe to determine its orientation.
One of the one or more elongate members may be connected to a pivotable joint whereby it can be set at a desired angle.
The separate probe may probe one or more side locations of the elongate member or members. The elongate member may be probed a plurality of times by the same probe.
There may be first and second elongate members, and a pivotable joint connecting the first and second elongate members whereby the second member can be set at a desired angle relative to the first member, the first elongate member being connected to the position determining apparatus, and the surface sensing element being carried by the second elongate member.
Preferably, the probing comprises probing at least the second elongate member with the separate probe to determine its orientation. The method may also comprise probing the first elongate member with a separate probe to determine its orientation, and then determining the angle of the second member relative to the first member.
Suitably, the or each elongate member is probed at at least two positions spaced along its length. Preferably the or each elongate member is probed at at least six positions. This gives a more accurate indication of its orientation and location in space.
In a preferred embodiment, the surface sensing device is one which senses unidirectionally, e.g. a surface finish or surface roughness probe. The surface sensing element may be a stylus with a tip, mounted to deflect in a normal direction when the stylus tip is dragged across a surface, and connected to a transducer to measure the deflection of the stylus thereby to determine surface finish or surface roughness.
The method may include determining the normal direction of the stylus tip and/or the direction in which the tip is dragged along the surface. This may be determined from the orientation(s) of the one or more elongate elements.
The method may also include determining an offset which describes the location of the stylus tip relative to the position determining apparatus. This may be calculated from the orientation(s) and the length(s) of the one or more elongate members. Alternatively, it may be determined by probing the surface sensing device in the vicinity of the stylus tip with a separate probe.
The surface sensing device may include a rotary joint configured to rotate the elongate member connected to the position determining apparatus, generally about the longitudinal axis of the elongate member. The method may include determining the orientation of the axis of rotation (which may not coincide exactly with the orientation of the elongate member). The rotary joint may have a motor for rotating the elongate member.
The surface sensing device may be mounted to the position determining apparatus via an articulating head, configured to rotate the surface sensing device about two mutually orthogonal axes. The articulating head may include motors for rotating the surface sensing device about the mutually orthogonal axes.
The invention also provides a program for a computer control of a position determining apparatus, configured to perform any of the above methods.
A further aspect of the invention provides a kit for use with a position determining apparatus, including a surface sensing device comprising one or more elongate members for mounting to the position determining apparatus, a surface sensing element for mounting to the apparatus via the one or more elongate members, and a program configured to perform any of the above methods.
Programs discussed herein may be provided on any suitable machine readable medium, including memory discs, memory sticks, memory cards or a local or remote server from which the program can be downloaded.
Preferred embodiments of the invention will now be described by way of example, with reference to the accompanying drawings, wherein:
The articulating probe head 7 comprises first and second housing members 1 and 2 respectively. The first housing member 1 is adapted for attachment to a position determining apparatus, for example to a movable arm 26 of a CMIVI as seen in
The surface sensing device 4 includes an elongate probe holder 8 which extends generally along an axis C, transverse to and intersecting the axis B. This is attached to the articulating head 7 via a housing 9. The housing 9 contains a motor M3 which rotates the probe holder 8 about the axis C, again controlled by the program in the computer control 3.
To enable the exchange of surface sensing devices of different types or configurations, the housing 9 has a kinematic coupling joint 6 of a known type, by which the holder 8 of the surface sensing device 4 is attachable to and detachable from the housing 9. When not in use, surface sensing devices may be stored in ports 34 of a storage rack 30, as illustrated at 4A in
The surface sensing device 4 includes an elongate sensing module 10, containing a surface finish or surface roughness sensor. The module 10 is pivotably attached to the holder 8 by a knuckle joint 12. This enables the module to be oriented manually to a desired set angle with respect to the holder 8, prior to a measurement task. The knuckle joint 12 then holds the module set at this angle by friction, or the joint may have a tightening screw. In order to address different surfaces of a workpiece, the orientation of the module 10 may be further altered under program control during a measurement task, by rotation about the axis C by the motor M3.
The surface finish or roughness sensor contained in the module 10 may be of a known type, e.g. as described in the above U.S. Pat. Nos. 8,006,399 and 8,468,672. Typically it comprises a surface sensing element in the form of a needle or stylus 5, having a surface-sensing tip which is small compared to the surface irregularities that are to be measured. This is deflectable transversely to the elongate sensing module 10, relative to a skid 14 (
The holder 8 and sensing module 10 can be provided in numerous different configurations to suit varied measurement tasks. For example, they can be provided in different lengths, or the broken lines 10A in
The sensing module 10 includes a kinematic coupling joint 16, which provides “overtravel” in a known manner. This permits the outer end of the module 10 to deflect against the action of a spring (not shown), to protect it from damage if it accidentally travels too far towards the workpiece and crashes into it. The kinematic joint 16 locates the outer end of the module repeatably so that it returns to the same position after it has been removed out of contact with the workpiece. Since it is not required to be detachable or exchangeable, the joint 16 can be simpler than the kinematic joint 6. It may comprise a spring flexure which normally holds the outer end of the module against a stop.
Prior to use, the geometry of the surface sensing device 4 is calibrated or datumed. The calibration is performed after the elongate sensing module 10 has been manually set to a desired angle at the knuckle joint 12, which can be set approximately using a protractor. The calibration is performed under program control from the control 3. It determines several aspects of the geometry, as seen schematically in
- The direction and origin of the axis of rotation C in relation to the CMM'"'"'s coordinate system X,Y,Z. Swash and runout of the axis C may also be determined.
- The axis 40 of the elongate holder 8. This may for example be determined with respect to the axis C. (It will be appreciated that the axis 40 will not coincide precisely with the axis C because of manufacturing tolerances. In
FIG. 3this has been exaggerated for purposes of illustration.)
- The axis 42 of the elongate sensing module 10, giving the point of intersection K of the axes 40,42 at the knuckle joint 12, and a more accurate measurement of the angle θk between these axes.
- A vector TN (tip normal) describing the direction of deflection of the tip 5 (which during subsequent measurements should be aligned with the normal to the surface being measured).
- A vector DV (drag vector) describing the direction along which the tip 5 is dragged along the surface being measured.
FIG. 3shows this as being in the longitudinal direction of the sensing module 10, but if sideways scanning is intended then a drag vector may be calculated laterally to the sensing module (in addition or alternatively to the longitudinal vector.)
- The offset TO (tip offset) of the tip 5 relative to the origin C0 of the axis C.
The calibration may determine all of the individual geometrical aspects listed above, or any of them individually or in any combination, to suit the measurement task which is to be performed.
This calibration will now be described in more detail.
As shown in
During the calibration of the surface sensing device 4, the holder 8 and module 10 of the surface sensing device (previously set at the desired angle of the knuckle joint 12) are brought into contact with the deflectable stylus 36 of the touch trigger probe 32 in various positions and orientations, under the control of a calibration program in the control computer 3, as shown for example in
Preferably, these contacts against the separate touch trigger probe 30 are performed by first orienting the surface sensing device 4 in a desired direction, by rotating the articulating head 7 about its A and B axes. Then the surface sensing device is moved in the linear directions X,Y,Z by driving the CMM on its X,Y,Z axes. On receipt of each trigger signal, the control 3 freezes the readings of the CMM'"'"'s X,Y,Z position transducers, which indicates the X,Y,Z coordinates of the point on the holder 8 or module 10 which has made contact.
The following measurements all take place with the A and B axes of the articulating head 7 kept in a single orientation.
Referring more particularly to
In order to determine the direction of the axis of rotation C and its origin C0, the motor M3 is now operated to rotate the surface sensing device to two or more further orientations about the C axis. For example, the two further orientations may be at 120° from the Y-Z plane. The above procedure to take readings at points 44A, 44B is repeated at each orientation. This gives the direction of the axis 40 at each of three orientations about the C axis, which enables the calculation of the direction and origin of the C axis of rotation, and of the angle of the axis 40 of the elongate holder 8 with respect to the C axis. The swash and runout of the C axis may also be calculated.
If there is confidence that the axis 40 coincides with the C axis of rotation (within a desired tolerance) then it may not be necessary to repeat this determination of the axis 40 at two or more further orientations.
Conveniently, the B axis rotation offset (a zero position of the B axis) may now be set mathematically such that the C axis of rotation (as determined above) lies in the plane defined by the A and B axes when the B axis is in the zero position. This simplifies future measurements.
Next, with the motor M3 of the C axis in one of the above orientations (e.g. the last one measured) points 46A, 46B are taken on the elongate sensing module 10, in the same way as above (suitably on the sides of the module). Like the points 44A, 44B, these points should preferably be at two spaced positions along the length of the module 10, and preferably at least six points are taken in total in order to determine precisely the cylinder defining the module 10. This gives the direction of the axis 42 of the sensing module 10. Knowing the axes 40 and 42 in the chosen orientation, it is straightforward to calculate their point of intersection K at the knuckle joint 12, and an accurate value of the angle θk between these axes.
However, although we prefer six points 46A, 46B at two spaced positions, it may be possible to use less. For example, if the length L1 to the point K is known sufficiently accurately with respect to the C axis origin C0, then it may be possible to determine the axis 42 from that in conjunction with e.g. three points 46B at one position along the module 10. In this case, the determination is based on the fact that the points 46B and the point K are spaced along the length of the module 10.
Furthermore, from the nominal design lengths L1, L2 of the elongate holder 8 and module 10, together with the point K and the knuckle angle θk, it is now also straightforward to calculate an approximate value for the tip offset TO of the tip 5 relative to the C axis origin C0. From the knuckle angle θk and the nominal lengths L1, L2, values can be calculated for the tip normal TN and drag vector DV. If it is desired to scan the sensing module 10 sidewise across the surface, then an appropriate drag vector at 90° to the vector DV may be calculated (as well as or instead of the longitudinal vector DV). Of course, if the sensing module has an alternative geometric configuration (such as shown by the broken lines 10A) then the nominal values of the angle(s) and length(s) of this alternative geometry should be taken into account.
During subsequent measurements, the above calibration values enable the tip 5 to be brought into contact with a desired location on a surface of a workpiece of complex shape and measurements to be made, all automatically under program control, without parts of the holder 8 or sensing module 10 fouling or crashing against other surface of the workpiece. The program can be written on the basis of CAD data of the workpiece, without the necessity to manually position the surface sensing device using a joystick control. This is useful, for example, in constricted locations such as a tight groove, or where the workpiece has a blind internal space where it is not possible to see the surface sensing device in order to position it manually with a joystick.
It may be desirable to obtain a more accurate value for the tip offset TO, in order to position the tip 5 precisely at a point on the surface which is to be measured, and to determine the surface topography more precisely. In this case, three or more further points 48 may be taken on the nose of the sensing module 10, in the vicinity of the tip 5. Two such points 48 are shown in
It is not essential for the invention to obtain all of the above calibrations. For example, it may be decided that only some are important, for example the tip normal TN, the drag vector DV and/or the tip offset TO, which affect the accuracy of subsequent measurements, not just the ability to position the surface sensing device without fouling or crashing it. In other cases where there is a greater risk of fouling and crashing, it may be more important to determine the geometry of the surface sensing device by accurately determining the axes 40, 42 and/or the position K and angle θk of the knuckle joint 12.
As mentioned, all the above calibration measurements have been carried out with the A and B axes of the articulating head 7 kept in a single orientation. However, it may be desirable to repeat them at other orientations of the A and B axes, for example as suggested in
It will be appreciated that the geometric calibration described above is separate from any calibration of the transducer in the sensing module 10 which may be carried out.
The above preferred embodiments of the invention have related to surface finish or surface roughness probes of the contact type, having a stylus which is dragged across the surface to be measured. However, the invention may be used with other surface sensing devices, both contact and non-contact types. For example, it can be used with non-contact optical surface finish and surface roughness probes. It can also be used with touch trigger and contact scanning probes. Other non-contact probes include, for example, optical, capacitance and inductance probes. Optical probes include laser spot and laser line probes.
The invention is particularly useful for single axis probes such as optical probes and surface finish or surface roughness probes. This is because for these types of probes especially, rotation about the longitudinal axis (axis C in the above embodiments) greatly increases the number of surfaces the probe can access. Rotation about this axis is also particularly useful for laser line probes as it is possible to rotate the line about the axis of the surface sensing device (the third axis as mentioned above).