APPARATϋS FOR TRACKING TEE SURFACE OF A WORKPIECE
This invention relates to apparatus for tracking the surface of a workpiece. Known such apparatus comprises a workpiece support, an operating member, translational positioning means for positioning the operating member and the workpiece support translationally one relative to the other, a probe for sensing the workpiece, the probe having a sensing axis, the probe including a sensor system adapted to interact with a surface of the workpiece in the direction of the sensing axis for producing a position error signal, and a control system responsive to said position error signal for acting on the translational positioning means for moving the probe in the sense of tending to reduce the position error to zero.
In the known apparatus the probe is held, during operation, in a fixed angular position relative to the workpiece. This has the disadvantage that, if the profile to be determined has substantial variations of slope, the known apparatus cannot cope without substantial errors or at all.
It is an object of this invention to reduce or overcome this difficulty. The scope of the invention is specified in the claims hereto.
An example of apparatus according to this invention will now be desribed with reference to the accompanying drawings wherein:-
Fig. 1 is an elevation of a co-ordinate measuring machine, including a probe and a mounting therefor shown in a datum position.
Fig. 2 is an enlarged view of the probe and the mounting of Fig. 1 but shown in an operative position.
-2-
Fig. 3 is a view in the direction of the arrow III in Fig. 2.
Fig. 4 is a plan view of Fig. 2.
Fig. 5 is a further enlarged view of the probe shown in Fig. 1.
Fig. 6 is a section on the line VI-VI in Fig. 5.
Fig. 7 is a section on the line V I-VII in Fig. 5.
Fig. 8 is a diagram of a control system for the machine.
Fig. 9 (a,b,c) is a diagram of control loops pertaining to the control system of Fig. 6.
The Co-ordinate Measuring Machine The machine (Fig. 1) comprises an operating member 40 supported by translational positioning structure 41 for movement in directions X,Y,Z of the orthogonal co-ordinate system. Motors M(X,Y,Z) (Fig.9) are adapted to drive the member 40 in the directions X,Y,Z, respectively, relative to a workpiece support 11. Transducers T(X,Y,Z) (Fig. 9) are adapted to measure the movement of the member 40 in the directions X,Y,Z respectively. A workpiece 12 supported on the support 11 has a surface 12A to be scanned with a view to determining the profile thereof, i.e. establishing the position of points C (Fig. 2) along a scanning line 12B of this surface relative to co-ordinate datum surfaces XY1,XZ1,YZ1 (Figs. 2,3,4). In the present example the line 12B lies in a plane XZ2. The position of the surface 12A is sensed by an optical probe 10 in the direction of the sensing axis, Al, of the probe. The probe is secured to the member 40 by a mounting PH containin motors M2,M3 ada ted for rotatin the robe
about axes A2, A3 respectively. The rotations of the motors M2,M3 are monitored by transducers T2,T3 respectively. In the present example the axes A2,A3 lie in the X and Y directions respectively; the axis Al is perpendicular to the axis A2; and all three axes A1,A2,A3 intersect at a common point Dl. The point Dl also defines the end at wich the probe 10 is connected to the member 40. Fig. 1 shows the probe in a datum position in which the axis Al is aligned with the Z direction. Figs. 2,3,4 show the probe in an operative position in which the axis Al is normal to the surface 12A, the latter being, in this example, a flat surface lying at an angle to each of the directions X,Y,Z.
The Probe
The probe 10 (Fig. 5) comprises a housing 14 containing a source 13 of light which is focussed by a lens 15 to a sensing point F outside the housing 11. The lens 15, whose optical axis lies on the axis Al, is supported in the housing 14 for limited movement in the direction of the axis Al. The point F is retained on any surface lying within a range 15A, taken in the direction Al, by means of a sensor system being a closed control loop LI comprising an out-of-focus detector 16 coupled optically to the lens 15 and having an electrical ouput 16A connected to drive a motor Ml for positioning the lens in the sense of remaining in focus on the surface 12A. The position of the lens is sensed by a transducer Tl. Closed loop systems such as the loop LI are known per se.
The focal point F of the lens 15 is displaced transversely to the axis Al by a glass plate 17 having parallel sides lying at an angle to the axis Al. The plate 17 is supported in the housing 11 for rotation about the axis Al by a motor MO so that, on operation of this motor, the point F describes an orbit FO about the axis Al. The angular position of the plate 17, and thus the angular
position of the point F about the axis Al, is given by a transducer TO having four outputs TOA (1,2,3,4) (Fig. 8) defining the position of the point F at four cardinal points F (1,2,3,4) (Fig. 6) at which the orbit FO intersects a pair of XZ,YZ planes themselves intersecting at a reference point D2 which defines the free end of the probe. The arrangement is such that, inasmuch as the surface 12A lies at an angle to the axis Al, the lens moves axially in accordance with the mean slope S of a sensed region (Fig. 6) of the surface 12A defined by a portion 12C of the surface 12A lying on or within the orbit FO. The magnitude of displacement of the points F(1,2,3,4) in the direction of the axis Al due to the slope S is given by the output TIA of the transducer Tl The probe is calibrated so that, when the lens 15 is situated in a position corresponding to the mid-point of the range 15A, a distance D is (Fig. 5) defined between the points D1,D2. The point D2 lies on the axis Al and the distance D defines the mean height of the slope S relative to the common point Dl of the axes A1,A2,A3. A plane RP through the point D2 and normal with respect to the axis Al defines a reference plane of the probe.
Determination of Slope As will be seen, the slope S (Fig. 5) of the surface portion 12C needs to be determined with a view to maintaining the probe 10 at an angular position in which the axis Al is substantially normal to the current surface portion 12C. The slope S is represented by the signal TIA and, to determine the slope at the respective cardinal points, the signals TOA (1,2,3,4) are combined (Fig. 8) with the signal TIA in respective sampling gates _fr-to produce two signals Sx,Sy which represent the slopes, more specifically the slope errors, in the X and Y directions, between the surface portion 12C and the reference plane RP. The signals Sx,Sy are placed as position demand signals on the motors M2,M3 respectively. The positions
then attainable by the motors M2,M3 are read by the transducers T2,T3 whose output signals T2A,T3A represent the angles 2, 3 of the slopes Sx,Sy. The sampling gates 20 may be regarded as a switched phase-sensitive detector.
The Control system
A scanning operation i.e. an operation for tracking the surface of the workpiece is performed under the control of a servo system (Figs 8,9) designed to operate the machine to drive the probe 10 over the surface 12 while maintaining the point D2 on the line 12B and maintaining the axis Al substantially normal to the current surface portion 12C. Initially, the drive to the motor MO is switched on and the motors M(X,Y,Z) are operated, possibly under manual control, to bring the probe 10 to a starting position in which the point D2 lies on the plane XZ2 and the surface 12A lies within the range 15A (Fig. 6) Thereafter, there are applied to the motors M(X,Y,Z,2,3) a set of control functions whose interaction is given by expressions E(l,2,3) as follows:
D2X = D1X - [(D+d)(sin 2) (cos 3)] (El)
D2Y = D1Y - [(D+d)(sin 3) (COS 2)] (E2)
D2Z = D1Z - [(D+d)(cos 2) (cos W3) ] (E3) wherein D2X,D2Y,D2Z = the actual co-ordinate positions of the point D2 in the directions X,Y,Z respectively. D1X,D1Y,D1Z = the co-ordinate positions of the point Dl in the directions X,Y,Z respectively. 2 = the angle of the slope S with respect to the X direction. 3 = the angle of the slope S with respect to the Y direction.
D = the pre-calibrated distance between the points
D1, D2. d = an error in the distance D, i.e. the extent by which the surface 12a is remote from the point D2 in the direction of the axis Al. The error d is produced by a DC
selector circuit 20 (Fig. 8) as the DC value of the signal TIA.
The expressions E(l,2,3) define the actual positions of the point D2 in the X,Y,Z directions and thus define terms for the operation of the motors M(X,Y,Z) in control loops L(X,Y,Z) (Fig. 9). The loop LX is a closed loop and has as its demand signal the progressively increasing position D2X (i+1) required of the point D2, and as at its feedback signal the actual position D2X*=DlX(i)-[(D+d) (sin W2) (cos 3) ] as shown in Fig 9a and wherein (i+1) pertains to a demanded position and (i) pertains to a current position.
The loop LY is also a closed loop and has as its demand signal the constant position D2Y and as its feedback signal the actual position D2Y=DlY-[(D+d) (sin W3) (cos 2) ] as shown at Fig 9b. It will be clear that whereas the loop LX controls the scanning movement in the X direction, the loop LY operates to retain the point D2 in the scanning plane XZ2.
The loop LZ is a dependent loop because the position D2Z of the point D2 is to be determined by the surface 12A. Therefore the value of D2Z (i+1) is calculated from the expression D2Z(i+l)=DlZ(i)-[(D+d) (cos W2) (cos W3)] as shown at Fig 9c.
Two control functions need to be distinguished. Firstly, if, during operation, the surface 12A rises or falls with respect to the probe 10 without a change in the slope S, the condition is indicated by a change in the value of d and the output to the motors M(X,Y,Z) is changed accordingly to maintain the point D2 on the line 12B by tending to reduce the value d to zero.
Secondly, it is clear that the relationship between co-ordinate positions of the points D1,D2 is given by the
ter (D+d) modified by the angles 2,W3. Hence if, during operation, the probe 10 encounters a change in the slope S, the term (D+d) is modified by a trigonometrical function of the angles W2,W3 as given in the expression E(1,2,3) . The presence of these trigonometrical functions in the feedback of the loops LX,LY, and in the output of the dependent loop LZ, acts on the motors M(X,Y,Z) to maintain the point D2 on the current point C.
Determining the Profile
The profile of the surface 12A along the line 12B is determined by recording the value of D2Z at successive values D2X and the process may be repeated for the remainder of the surface 12A at planes adjacent the plane XZ2.
Modifications
As mentioned, the axes A(l,2,3) have a common point of intersection Dl. This is convenient for the mathematics of determining the position of the point Dl but it is not essential. For example, the axes A2,A3 may be offset one from the other in the Z direction if engineering considerations are found to be more important than mathematical simplicity.
One of the motors M2,M3, say the motor M3, may be dispensed with and instead a motor M4 (Fig. 1) may be used for determining, together with the motor M2, the angular position of the axis Al. In that case the transfer block 21 would operate on the basis of expression E(4,5,6) as follows;
D2X = D1X - [(D+d) (sin 2)(cos 4) ] (E4)
D2Y = D1Y - [(D+d) (sin W2) (sin 4) ] (E5) D2Z = D1Z - [(D+d) (COS 2)] (E6) wherein W4 is an angle about the axis A4 (Fig 4) through which the probe 10 has to be rotated to satisfy any slope S. The angle W4 is determined by the action of the motor
M4 in driving the slope errors to zero. It will be appreciated that in this case, unlike the slope errors Sx,Sy, the two slope errors concerned do not generally lie in XZ and YZ planes but lie in two mutually perpendicular planes through the axes Al and A2 respectively.
Regarding generating the signals Sx,Sy, instead of producing the pulse signals TOA, the transducer TO may be adapted to produce a pair of signals in quadrature. Alternatively, the quadrature signals may be generated by an independent source which is also used to drive the motor MO in synchronism with these signals. In either case, the quadrature or timing signals are fed to respective phase sensitive detectors also connected to the magnitude signal TIA to produce the slope error signals Sx,Sy with respect to the X and Y directions.
Regarding the sensor system LI, any sensor, mechanical, optical or otherwise, may be used for interaction with the surface 12A at at least two sensing points
(e.g. F(l,3;2,4) thereon for producing a slope error signal (e.g. Sx) . The sensing points may be sensed in any sequence or simultaneously. Regarding the control system, it will be clear that in the example described this is a sample data system which may be operated by a digital or an analogue computer or by a hybrid thereof.
The displacement of the sensing point transversely to the axis Al may be on an orbit as shown or it may be oscillatory. The area of the sensed surface portion 12C depends on the application. For precision applications e.g. determining smooth surfaces, the portion 12C may have a diameter of 2mm; for coarse applications, e.g. tracking a welding joint for guiding a welding electrode, the portion 12C may have a diameter of 20 to 30mm.