INVOLUTE INTERPOLATION SPEED CONTROL METHOD

Abstract: The direction (G03.1) of rotation of an involute curve, coordinate (Xe, Ye) of a final point, centre position (IJ) (I,J) if a base circle as viewed from a start point, and radius (R) of the base circle are designated. Point sequences are found from two equations that represent an involute curve, and are interpolated, in order to interpolate an in involute curve over a range of an angle (theta) that corresponds to the range from the start point to the end point of the involute curve. In this case, the increment in the angle theta is rendered in teh angle, and the interpolation is so effected that the speed becomes constant in the tangential direction, such that the machining rate along the involute curve becomes constant.

Description: The present invention relates to an involute interpolation speed controlling method for machining operations in a numerical control apparatus or the like, and more particularly to an involute interpolation speed controlling method in which a speed in a tangential direction is made constant irrespective of angles. In a curve interpolation in association with a numerical control apparatus, interpolation of an involute curve has particularly been needed for machining gears, vanes of pumps and the like, and it has been a general practice to interpolate the involute curve with a computer or an NC program producing system which are distinctly provided from the numerical control apparatus to analyze a curve data into straight line data, whereupon numerical control machinings are performed with the use of a tape. The same applicant filed a Japanese patent application No. 62-157303, to which EP-A-321577 corresponds on June 94, 1987 entitled "INVOLUTE INTERPOLATION METHOD" in which it is proposed to readily interpolate an involute curve in a numerical control apparatus. According to the involute interpolation method proposed therein, coordinates of an arbitrary point on the involute curve are defined by the following equations: X = R {cos (ϑ + ϑ1) + ϑ sin (ϑ + ϑ1)} + X₀ Y = R {sin (ϑ + ϑ1) - ϑ cos (ϑ + ϑ1)} + Y₀ The angle is incremented at every predetermined value from ϑ = (ϑ2 - ϑ1) to ϑ = (ϑ3 - ϑ1) to sequentially plot points on the involute curve and then compute moving distances between adjacent two points, whereupon a straight line interpolation at a specified speed is performed. However, since the increment of the angle ϑ is set to be constant, a rotational radius of the involute curve increases attendant to the increment of the angle, thereby causing to increase the speed, and thus a problem is introduced in that a cutting speed is not maintained at a constant value. "Formules et Tables de Mathematiques", M.R. Spiegel, Ediscience/McGraw Hill, Paris 1974, p. 43 discloses formula for involute curve interpolation. DE-A-1513474 discloses a machine for machining involute curves. An object of this invention is to resolve the above problem and to provide an involute interpolation speed controlling method in which a speed in the tangential direction is made at a constant value irrespective of an angle. In order to resolve the above-noted problem, the invention provides, as illustrated in Fig. 1 an NC machining operation employing an involute interpolation speed controlling method, the involute interpolation method interpolating an involute curve in a plane (X,Y) and comprising the steps of: specifying in numerical control apparatus a rotational direction of the involute curve, coordinates of an end point of the involute curve, a centre position of a base circle in relation to a start point of the involute curve located on the base circle, a radius R of the base circle, a machining feed speed F, and said plane; obtaining on the basis of said specifications and coordinates of an interpolation start point, coordinates X₀, Y₀ of the centre of the base circle of the involute curve, an angle ϑ3 of the end point, an angle ϑ2 of the interpolation start point, and an angle ϑ1, of the involute curve start point, where all the angles are measured between the X-axis and a line joining the centre of the base circle with the points on the base circle where a line from the respective points on the involute curve and tangential to the base circle touches the base circle; and, with respect to an involute curve represented by X = R{cos(ϑ + ϑ1) + ϑsin(ϑ + ϑ1)} + X₀ Y = R{sin(ϑ + ϑ1) - ϑcos(ϑ + ϑ1)} + Y₀ increasing ϑ in a range from ϑ = (ϑ2 - ϑ1) to ϑ = (ϑ3 - ϑ1) according to a relation defined by ϑ n+1 = ϑ n + K/(R. ϑ n ) where K = τ.F, and τ is an interpolation period, to thereby obtain corresponding points X n+1 , Y n+1 from the above equation. From the two equations representing the involute curve, a sequence of points are obtained, and interpolation of the involute curve is performed while interpolating those points in a range of angle ϑ corresponding to the start point of the involute curve to the end point thereof. The increment of ϑ is decremented in proportion to the increment of the angle owing to the factor K/ (R · ϑn), so that the interpolation is performed in such a manner that the speed in the tangential direction is made constant. In the drawinqs Fig. 1 is a diagram for description of an interpolation of an involute curve; and Fig. 2 is a diagram showing an outline of a numerical control appratus according to one embodiment of the present invention. One embodiment of the present invention will be described with reference to the accompanying drawings. Fig. 1 illustrates an example of an involute curve rotating in counterclockwise direction leaving from a base circle, in which an instruction of G03.1 is given. There exists another kinds of involute curves such as approaching to the base circle or rotating in clockwise direction. Those curves are the same in principle, thus description will be made with reference to Fig. 1. In the figure, the involute curve is depicted with reference to a base circle C having a center represented on coordinates by 0 (X₀, Y₀) and a radius R. The involute curve starts with a point P₀ and an angle formed by a line connecting the point P₀ and the center 0 and an X axis is ϑ1. A point Ps (Xs, Ys) is a start point for interpolation. A tangential line ℓs is drawn from this point to the base circle C and a point of contact of this tangential line with the base circle C is represented by P1 (X1, Y1). An angle between connecting the point P1 and the center 0 of the base circle, and the X axis is represented by ϑ2. A point Pe (Xe, Ye) is an end point for interpolation. From this point, a tangential line ℓe is drawn to the base circle C and the point of contact of this tangential line with the base circle C is represented by P2 (X2, Y2). An angle between a line connecting the point P2 and the center 0 of the base circle, and the X axis is represented by ϑ3. An instruction for the involute interpolation is given by G17G03.1X--Y--I--J--R--F--:. G17 is an instruction for specifying an X-Y plane, G18 for a Z-X plane and G19 for a Y-Z plane. G03.1 is an instruction of interpolation for an involute curve rotating in a counterclockwise direction. Interpolation for an involute curve rotating in clockwise direction is given by G02.1. Whether the curve approaches the base circle or it leaves from the base circle is determined depending upon the coordinate values of the start and end points of the involute curve. X--Y-- represents coordinates of the end point of the involute curve, which in the figure, corresponds to Pe (Xe, Ye). Instruction for this is made with an absolute value. I--J-- is a value of the center of the base circle C as viewed from the interpolation start point Ps (Xs,Ys), which is instructed with an incremental value. R-- is a radius of the base circle and F-- is a feeding speed. ";" is representative of an end-of-block. Next, values for defining the involute curve are obtained based upon those instructions. (1) Center Coordinates 0 of Base Circle The coordinates of the interpolation start point Ps (Xs,Ys) of the involute curve are not contained in the instructions. However, such have been stored in the interior of the numerical control apparatus as a current position. Based upon a distance (I, J) from the start point Ps (Xs, Ys) to the center of the base circle of the involute curve as viewed from the start point, the center coordinates 0 (X₀, Y₀) of the base circle are obtained from the following equations. X₀ = Xs + I Y₀ = Ys + J (2) Angle ϑ2 at Start Point on Involute Curve A tangential line ℓs is drawn to the base circle C from the interpolation start point Ps and the point of contact of this tangential line with the base circle C is represented by P1 (X1, Y1). Upon connecting the point P1 and the center 0 of the base circle C with a straight line, an angle that this line intersects the X axis is obtained. The angle thus obtained represents the angle ϑ2 of the interpolation start point on the involute curve. (3) Angle ϑ3 at End Point on Involute Curve A tangential line ℓe is drawn to the base circle C from the interpolation end point Pe (Xe,Ye) on the involute curve and the point of contact of this tangential line with the base circle C is represented by P2 (X2, Y2). Upon connecting the point P2 and the center of the base circle C with a straight line, an angle between this line and the X axis is defined as the angle ϑ3 of the end point on the involute curve. (4) Curve Start point Angle ϑ1 of Involute Curve A segment length between the point P1 and the point P₀ is equal to the length of the straight line ℓs according to the definition of the involute curve. Accordingly, representing the length of the straight line ℓs with L, ϑ1 = ϑ2 - L/R (unit: radian) the involute curve start point angle ϑ1 of the involute curve can be obtained from the above equation. (5) From the foregoing values, coordinates of an arbitrary point on the involute curve are given by the following equations. X = R {cos (ϑ + ϑ1) + ϑ sin (ϑ + ϑ1)} + X₀ Y = R (sin (ϑ + ϑ1) - ϑ cos (ϑ + ϑ1)} + Y₀ With an increment of the angle ϑ at every predetermined value from ϑ = (ϑ2 - ϑ1) to ϑ = (ϑ3 - ϑ1), the radius of the involute curve increases attendant to the angle ϑ, so that the speed increases in proportion to the angle. Accordingly, it is necessary that the increment of ϑ be controlled so that the tangential speed on the involute curve is maintained at constant. From the above two equations, the following result. (dX/dϑ) = R·ϑ·cos (ϑ + ϑ1) (dY/dϑ) = -R·ϑ·sin (ϑ + ϑ1) (dℓ/dϑ) = (dX/dϑ)² + (dY/dϑ)² = R·ϑ Therefore, dϑ = (dℓ / R·ϑ) Here, taking a difference, Δϑ n = (Δℓ / R·ϑ n ) since Δℓ is a distance moving per a predetermined period of time, Δℓ = K = τ·(F/60) where τ is a pulse distribution period (involute interpolation period) whose unit is second, F is a feeding speed whose unit is (mm/min). Accordingly, the increment of ϑ is given by the following equation: ϑ n+1 = ϑ n + Δϑ n = ϑ n + K/(R·ϑ n ) The values of X n+1 , Y n+1 corresponding to the ϑ n+1 are obtained and a difference between those and the preceding values X n , Y n are respectively outputted as distribution pulses, whereby the tangential speed of the involute curve can be controlled at constant. Fig. 2 is a diagram showing an outline of a numerical control apparatus according to this embodiment. A tape instruction 1 is a punched tape containing the aforementioned instructions, and a tape reader 2 reads the tape 1. A preprocessing means 3 discriminates an involute interpolation instruction from a G code. An involute interpolation data producing means 4 produces data needed for the involute interpolation from the instructions. Designated by reference numeral 5 is a pulse distribution means, in which from the data produced by the involute interpolation data producing means 4, ϑ is incremented so that the tangential speed of the involute curve is maintained at constant in accordance with the above-noted equation. In this manner, the points on the involute curves are obtained, whereupon the interpolation is performed and the pulses are distributed. A servo control circuit 6 drives a servo motor in accordance with an instruction. The servo motor 7 moves a machine 8 through a ball screw, etc. As described, according to the present invention, data for the interpolation of the involute curve is computed in the numerical control apparatus, and based upon the data thus computed the increment of the angle is controlled so that the tangential speed of the involute curve is made at constant. Therefore, a machining speed for the involute curve is maintained constant.

Claims: An NC machining operation employing an involute interpolation speed controlling method, the involute interpolation method interpolating an involute curve in a plane (X,Y) and comprising the steps of: specifying in numerical control apparatus a rotational direction of the involute curve, coordinates of an end point (Pe) of the involute curve, a centre position (0) of a base circle (c) in relation to a start point (Po) of the involute curve located on the base circle, a radius R of the base circle, a machining feed speed F, and said plane (X,Y); obtaining on the basis of said specifications and coordinates of an interpolation start point (Ps), coordinates X₀, Y₀ of the centre (0) of the base circle of the involute curve, an angle ϑ3 of the end point (Pe), an angle ϑ2 of the interpolation start point (Ps), and an angle ϑ1, of the involute curve start point (Po), where all the angles are measured between the X-axis and a line joining the centre of the base circle with the points on the base circle where a line from the respective points on the involute curve and tangential to the base circle touches the base circle; and, with respect to an involute curve represented by X = R{cos(ϑ + ϑ1) + ϑsin(ϑ + ϑ1)} + X₀ Y = R{sin(ϑ + ϑ1) - ϑcos(ϑ + ϑ1)} + Y₀ increasing ϑ in a range from ϑ = (ϑ2 - ϑ1) to ϑ = (ϑ3 - ϑ1) according to a relation defined by ϑ n+1 = ϑ n + K/(R. ϑ n ) where K = τ.F, and τ is an interpolation period, to thereby obtain corresponding points X n+1 , Y n+1 from the above equation.

Inventors: FUJIBAYASHI KENTARO, KAWAMURA HIDEAKI, OTSUKI TOSHIAKI, FUJIBAYASHI, KENTARO, KAWAMURA, HIDEAKI, OTSUKI, TOSHIAKI
Applicants: FANUC LTD, FANUC LTD.
Application year: 1988
Main classification: G05B19
IPC codes: G05B19