Method and apparatus for circular interpolation

Information

  • Patent Grant
  • 4458326
  • Patent Number
    4,458,326
  • Date Filed
    Wednesday, August 19, 1981
    43 years ago
  • Date Issued
    Tuesday, July 3, 1984
    40 years ago
Abstract
A method and apparatus for circular interpolation on the basis of a given arc center O, arc starting point P.sub.s and arc end point P.sub.e. In a case where the given arc end point P.sub.e does not lie on an arc of center O passing through the given arc starting point P.sub.s, a new center O.sub.N of an arc passing through the points P.sub.s, P.sub.e is computed, and circular interpolation is performed on the basis of the computed center O.sub.N, the given starting point P.sub.s and the given end point P.sub.e.
Description

BACKGROUND OF THE INVENTION
This invention relates to a method and apparatus for circular interpolation and, more particularly, to a method and apparatus for circular interpolation in a numerical control system wherein circular interpolation is performed by giving the center of an arc as well as the starting and end points of the arc.
A numerical control system generally is equipped with a circular interpolation function. Such a system is disclosed in the FANUC 200C Operator's Manual, pp. 61-64 (published by Fujitsu Fanuc, December, 1979). In order to move a tool or table along an arc, the numerical control system executes a circular interpolation operation on the basis of information such as the center, starting and end points of the arc, and distributed pulses X.sub.p, Y.sub.p indicative of movement along the X-axis and Y-axis are generated as a result of the interpolation operation. The distributed pulses X.sub.p, Y.sub.p are applied to servo circuits which respond by driving X- and Y-axis motors to transport the tool along the instructed arc so that the tool may machine the desired arc into a workpiece.
In the conventional numerical control system that employs the aforementioned circular interpolation method, a disadvantage arises when the distances r.sub.A, r.sub.B from the center to the starting and end points of the arc, respectively, are different, the center, starting and end points of the arc being specified by the program. When such is the case, as shown in FIG. 1, the tool is so controlled as to move from the starting point P.sub.s to the point P.sub.e ' along the arc CA' of radius r.sub.A and center 0, and then from the point P.sub.e ' to the end point P.sub.e. This lowers cutting precision and is undesirable in cases where high precision is required, as in machining with a wire-type electric discharge machine. Further, with such a machine so-called "back-up" control may be applied to move the wire electrode backwardly along the previously cut path when the wire comes into contact with the workpiece, but back-up control is difficult to carry out when the wire moves in the manner described above. It should be noted that a situation in which r.sub.A and r.sub.B are unequal may arise as the result of a calculation error or the like during programming.
Thus there is a need for a numerical control system that is capable of moving a tool along a curve which smoothly connects the starting point P.sub.s and end point P.sub.e of an arc even when r.sub.A and r.sub.B in the given arc interpolation instruction are unequal.
SUMMARY OF THE INVENTION
Accordingly, an object of the present invention is to provide a method of circular interpolation capable of moving a tool along a curve which smoothly interconnects the starting point P.sub.s and end point P.sub.e of an arc even when the distances r.sub.A, r.sub.B from the center 0 to the starting and end points P.sub.s, P.sub.e of the arc, respectively, are unequal, the points 0, P.sub.s and P.sub.e being given by the program.
Another object of the present invention is to provide a method capable of readily furnishing an arcuate curve which smoothly connects the starting and end points P.sub.s, P.sub.e of an arc even when the distances r.sub.A, r.sub.B are unequal.
Still another object of the present invention is to provide a circular interpolation apparatus in a numerical control system, which apparatus is capable of moving a tool along a curve which smoothly connects the starting and end points P.sub.s, P.sub.e of an arc even when the distances r.sub.A, r.sub.B are unequal.
A further object of the present invention is to provide a circular interpolation apparatus in a numerical control system, which apparatus is capable of effecting highly precise machining by moving a tool along an arc which connects the starting and end points P.sub.s, P.sub.e of an arc even when the distances r.sub.A, r.sub.B are unequal.
Other features and advantages of the invention will be apparent from the following description taken in connection with the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an illustrative view useful in describing the path traversed by a tool in the prior art when the distances r.sub.A, r.sub.B are unequal;
FIG. 2 is an illustrative view useful in describing a method of circular interpolation according to the prior art;
FIG. 3 is a block diagram of a numerical control system which employs a circular interpolation apparatus according to the prior art;
FIG. 4 is a block diagram of a circular interpolation apparatus for practicing the present invention; and
FIG. 5 is an illustrative view useful for describing a method of circular interpolation according to the present invention.





DESCRIPTION OF THE PREFERRED EMBODIMENT
In FIG. 2, if we let (i.sub.o, j.sub.o) denote the coordinates of the center 0 of an arc for a case where the current position (arc starting point) P.sub.s of a tool is taken as the standard, and let (x.sub.o, y.sub.o) denote the coordinates of the end point P.sub.e of the arc, then a circular interpolation instruction will be given by:
GO2Xx.sub.o Yy.sub.o Ii.sub.o Jj.sub.o (1)
where GO2 represents a G function (preparatory function) instruction indicative of circular interpolation in the clockwise direction, and * represents the end of the block comprising Xx.sub.o, Xy.sub.o, Jj.sub.o. The circular interpolation apparatus, upon receiving the circular interpolation instruction of expression (1), executes a known circular interpolation operation to generate circular interpolation pulses on the basis of which a tool is moved along the arc CA.
The numerical control system shown in FIG. 3 includes a paper tape 1 bearing punched machining instructions, an input control circuit 2, a circular interpolator 3 which operates on the basis of an algebraic method, as disclosed in "Introduction to Numerical Control Devices" by Seiuemon Inaba, 1970, pp. 21-35, or on the basis of a DDA (digital differential analyzing) method, well-known X-axis and Y-axis servo circuits 4X, 4Y, respectively, and X-axis and Y-axis servo motors 5X, 5Y, respectively.
In operation, the input control circuit 2 applies the arc information x.sub.o, y.sub.o, i.sub.o, j.sub.o to the circular interpolator 3 when the circular interpolation instruction is read from the paper tape 1. The interpolator 3 executes a circular interpolation operation on the basis of the arc information and delivers the interpolation pulses X.sub.p, Y.sub.p to the respective servo circuits 4X, 4Y which in turn drive the servo motors 5X, 5Y. When the servo motors rotate, a movable object such as the tool (not shown) is moved as instructed from the starting point P.sub.s to the end point P.sub.e along the arc CA shown in FIG. 2. In accordance with this method, however, a problem is encountered when the distance r.sub.A from the programmed center 0 to the programmed starting point P.sub.s is not equal to the distance r.sub.B from the programmed center 0 to the programmed end point P.sub.e. Specifically, when r.sub.A not equal to r.sub.B, as shown in FIG. 1, the tool is so controlled as to move from the starting point P.sub.s to the point P.sub.e ' along the arc CA' of radius r.sub.A and center 0, and then from the point P.sub.e ' to the end point P.sub.e. This lowers cutting precision.
FIG. 4 illustrates the block diagram of an apparatus for practicing a circular interpolation method in accordance with the present invention, and FIG. 5 is an illustrative view useful in describing said method.
In FIG. 4 there are provided a paper tape 21 bearing the punched machining instructions, a tape reader 22, and an input control circuit 23 which includes decoders, registers and the like. When the circular interpolation instruction given by expression (1) is read from the paper tape 21, a radius arithmetic circuit 24 computes the distances OPs (namely r.sub.A) and OPe (namely r.sub.B) by executing the operations:
r.sub.A =.sqroot.i.sub.o.sup.2 +j.sub.o.sup.2 (2)
r.sub.B =.sqroot.(x.sub.o -i.sub.o).sup.2 +(y.sub.o -j.sub.o).sup.2 (3)
Registers 25, 26 store the respective radii r.sub.A, r.sub.B computed by the arithmetic circuit 24. A comparator circuit 27 compares r.sub.A and r.sub.B and issues a coincidence signal COI (logical "1") when they are equal, and a non-coincidence signal *COI (logical "1") when they are unequal. Numeral 28 denotes an arithmetic circuit for computing a new radius. Specifically, when the signal *COI is a "1", the arithmetic circuit 28 executes the operation:
r=(r.sub.A +r.sub.B)/2 (4)
to compute a new radius r. Numeral 29 denotes an arithmetic circuit for computing a new center O.sub.N (i.sub.N,j.sub.N) by executing the operations:
i.sub.N.sup.2 +j.sub.N.sup.2 =r.sup.2 (5)
(i.sub.N -x.sub.o).sup.2 +(j.sub.N -y.sub.o).sup.2 =r.sup.2 (6)
A multiplexer 30 outputs x.sub.o, y.sub.o, i.sub.N, j.sub.N when the signal *COI is a "1" The output of the multiplexer 30 is coupled to a circular interpolator 31.
The present invention operates in the following manner.
When the paper tape 21 instructs the circular interpolation indicated by expression (1), the input control circuit 23 stores the data x.sub.o, y.sub.o, i.sub.o, j.sub.o in the internal registers and simultaneously delivers the data to the radius arithmetic circuit 24. The latter executes the operations specified by equations (2) and (3) to compute the radii r.sub.A, r.sub.B which are stored in the registers 25, 26, respectively. When r.sub.A and r.sub.B have been computed, the comparator circuit 27 compares the radii and delivers the coincidence signal COI (logical "1") when they are equal, and delivers the non-coincidence signal *COI (logical "1") when they are unequal. When the signal COI is a "1", the multiplexer 30 delivers the data x.sub.o, y.sub.o, i.sub.o, j.sub.o to the circular interpolator 31 which executes a known circular interpolation operation in the same manner as the conventional arrangement, thereby delivering interpolation pulses X.sub.p, Y.sub.p to servo circuits which are not shown, the latter responding by rotatively driving the servo motors.
When the non-coincidence signal *COI goes to logical "1" in a case where r.sub.A and r.sub.B are unequal, the new radius arithmetic circuit 28 executes the operation indicated by equation (4) to compute the new radius r. It may be appreciated from equation (4) that the new radius r is the arithmetic mean of the radii r.sub.A, r.sub.B.
Next, the new center arithmetic circuit 29 computes the coordinates (i.sub.N,j.sub.N) of the new center O.sub.N using the equations (5) and (6). Since the signal *COI is a "1", coordinates i.sub.N, j.sub.N are sent to the circular interpolator 31 together with x.sub.o and y.sub.o via the multiplexer 30. The circular interpolator 31 executes a circular interpolation operation on the basis of x.sub.o, y.sub.o, i.sub.N and j.sub.N, delivering the interpolation pulses X.sub.p, Y.sub.p to the servo circuits (not shown) to drive the servo motors. As a result, a tool (not shown) is moved from the arc starting point 0.sub.s to the arc end point P.sub.e along the arc of center 0.sub.N as indicated by the dot-and-dash line in FIG. 5, whereby the tool machines a workpiece smoothly between the points P.sub.s and P.sub.e.
In accordance with the present invention as described above, a movable object such as a tool or table can be moved along a curve or arc which smoothly connects a given starting point P.sub.s and a given end point P.sub.e even for a given arc instruction in which r.sub.A and r.sub.B are unequal. This makes it possible to achieve a higher level of machining precision, and facilitates the wire electrode backup control operation in a wire cut-type electric discharge machine.
Although the present invention has been described in relation to the embodiment shown in the accompanying drawings, various changes and modifications may be made in the invention without departing from the spirit and scope thereof as set forth in the appended claims. For example, rather than providing the individual hardware for the radius arithmetic circuit, new radius arithmetic circuit, new center arithmetic circuit and comparator circuit as described above, these functions may be integrated by using a microcomputer or the like. Moreover, the new radius, although found from equation (4) above, need not necessarily be computed using said equation.
Claims
  • 1. A method of automatically correcting the circular path of a numerically controlled machine tool in which a circulator interpolation operation is performed in accordance with a given arc center 0, machine tool arc starting point P.sub.s and machine tool arc end point P.sub.e, comprising the steps of:
  • a. computing a distance r.sub.A from the given arc center 0 to the given machine tool arc starting point P.sub.s, and a distance r.sub.B from the given arc center 0 to the given machine tool arc end point P.sub.e ;
  • b. determining whether the distances r.sub.A and r.sub.B are equal;
  • c. computing a new arc center 0.sub.N of an arc passing through said starting point P.sub.s and said end point P.sub.e when the distance r.sub.A and the distance r.sub.B are unequal; and
  • d. executing a circular interpolation operation on the basis of the computed arc center 0.sub.N, the given machine tool arc starting point P.sub.s and the given machine tool arc end point P.sub.e wherein the circular path of the machine tool is corrected and joins the machine starting point P.sub.s and the machine tool ending point P.sub.e.
  • 2. A method of automatically correcting the circular path of a numerically controlled machine tool according to claim 1, including the step of executing a circular interpolation operation on the basis of the given arc center 0, the given machine tool arc starting point P.sub.s and the given machine tool arc end point P.sub.e when the distance r.sub.A and the distance r.sub.B are equal.
  • 3. A method of automatically correcting the circular path of a numerically controlled machine tool according to claim 1 or claim 2, wherein step c includes:
  • i. computing (r.sub.A +r.sub.B)/2
  • ii. determining the circle passing through the given machine tool arc starting point P.sub.s and the given machine tool arc end point P.sub.e with radius (r.sub.a +r.sub.B)/2, the center of the circle serving as the new center 0.sub.N.
  • 4. An apparatus for automatically correcting the circular path of a numerically controlled machine tool and performing a circular interpolation operation in accordance with a given arc center 0, machine tool arc starting point P.sub.s and machine tool arc end point P.sub.e, comprising:
  • first means for receiving said given arc center 0, said machine tool arc starting point P.sub.s and said machine tool arc end point P.sub.e ;
  • a first arithmetic unit operatively connected to said first means, for computing a distance r.sub.A from the given arc center 0 to the given machine tool arc end point P.sub.s, and a distance r.sub.B from the given arc center 0 to the given machine tool arc end point P.sub.e ;
  • a comparator unit operatively connected to said first arithmetic unit, for determining whether the distances r.sub.A and r.sub.B are equal;
  • a second arithmetic unit operatively connected to said first arithmetic unit, to said first means and to said comparator unit for computing a new arc center 0.sub.N of an arc passing through said machine tool arc starting point P.sub.s and said machine tool arc end point P.sub.e in response to the distance r.sub.A and the distance r.sub.B being unequal; and
  • a circular interpolation unit operatively connected to said comparator unit, to said first means and to said second arithmetic unit, for executing a circular interpolation operation in accordance with the computed arc center 0.sub.N, the given machine tool arc starting point P.sub.S and the given machine tool arc end point P.sub.e and for controlling the numerically controlled machine tool.
  • 5. An apparatus according to claim 4, where the second arithmetic unit includes:
  • a radius arithmetic circuit for computing the coordinates (i.sub.N, j.sub.N) of a new arc center from the equations:
  • i.sub.N.sup.2 +j.sub.N.sup.2 =r.sup.2
  • (i.sub.N -x.sub.o).sup.2 +(j.sub.N -y.sub.o).sup.2 =r.sup.2
  • where the given center coordinates are (i.sub.o, j.sub.o), the given machine tool arc starting point coordinates are (x.sub.o, y.sub.o), and the new arc center coordinates are (i.sub.N, j.sub.N).
  • 6. An apparatus according to claim 4 or 5, wherein said circular interpolation unit executes a circular interpolation operation selectively in accordance with one of the given arc center 0, the given machine tool arc starting point P.sub.s, the given machine tool arc end point P.sub.e ; and a computed arc center 0.sub.N, the given machine tool arc starting point P.sub.s, the given machine tool arc end point P.sub.e in response to the distances r.sub.A and r.sub.B being equal or unequal, respectively.
Priority Claims (1)
Number Date Country Kind
55-124164 Sep 1980 JPX
US Referenced Citations (6)
Number Name Date Kind
3109092 Lott et al. Oct 1963
3703327 Pomella et al. Nov 1972
3864613 Cutler Feb 1975
4031369 Heaman et al. Jun 1977
4150328 Cannon Apr 1979
4243924 Onoda et al. Jan 1981
Non-Patent Literature Citations (2)
Entry
Schmid, "Interpolation in Numerical Path Controls", Steverungstechnik, vol. 2, No. 9, Sep. 1969, pp. 342-349.
Bergren, "A Simple Algorithm for Circular Interpolation", Control Engineering, Sep. 1971, pp. 57-59.