APPARATUS FOR CORRECTING POSITIONAL ERROR.

Abstract: A positional error correction system applicable to nu­ merical control wherein a machine tool is controlled along more than one control axis, such as along X and Y control axes. If the machine tool is to be positionally controlled along the X-axis, the position of the machine tool along the X-axis is corrected by a correction factor decided on the basis of the position of the machine tool along that axis and the position of the machine tool along the Y-axis, whereby a positional correction is effected in a highly accurate man­ ner. The control axes of the machine tool may include a Z-axis and thus are not restricted to merely the X and Y axes. In such case the positional correction is performed using a correction factor decided on the basis of the machine tool position along all three axes.

Description: ,METHOD AND APPARATUS FOR CORRECTING POSITIONAL ERROR, FOR EXAMPLE IN NURICAL CONTROL DEVICES anct apparatus This invention relates to a method/for correcting a for example but not exclusively, positional error a numerical control device of the type usedto control a machine tool. When controlling the feed of a workpiece table in a machine tool such as a lathe, positional errors stemming from such mechanical phenomena as pitch error and backlash can occur. A numerical control device ordinarily is furnished with pitch error and backlash correction functions that the numerical control device relies upon to correct positional errors when controlling a machine tool.- One method of correcting pitch error is disclosed in Japanese Patent Application Laid-Open No.50-63381 published May 29, 1975, in which the correction is effected by purely electrical means. Specifically, a mechanically movable body has several socalled control axes along which the body can be moved. The body may, for example, be capable of movement along the X and Y axes. In the aforesaid method, the range of movement along each axis is divided into a plurality of segments. For example, the movable range of the body along the X-axis is divided into Axi segments (where i=l, 2,...), and pitch error correction factorS EXi (i=i, 2,...) are stored in memory so as to correspond to each of said segments. Then, when the movable body is moved along the Xaxis so that the current position of.the body lies on a prescribed segment Ax., the pitch error correction factor EX. corresponding to that segment is read out of the memory, the current position of the body along the X-axis being corrected on the basis of the correction factor EX and the direction of movement, i.e., in the plus or minus direction. This method enables the correction along the X-axis to be effected in a highly accurate manner without requiring such mechanical elements as dogs and limit switches. A characteristic of the aforesaid conventional pitch error correction system is that the pitch error correction factor for a correction along one control axis, such as the correction factor EX. for the X-axis, depends solely upon the current position of the movable body on said axis and is independent of the current position along the other axes, such as the Y-axis in the above example. In other words, in the foregoing correction system, pitch error correction factors Ex, Ey i E for corrections along the respective X,Y and Z axes are expressed as follows: Ex = fx(x), Ey = fy(y), Ez = fz(z). This means that a highly precise positional correction cannot be performed with the conventional system described above in a case where the pitch error correction factor for a certain control axis depends not only upon the current position along said control axis, but upon the current position of the movable body along the other control axes as well. According to a first aspect of the present invention there is provided a method of positionally correcting a movable body whose movement is controlled along at least two control axes, comprising correcting the position of the movable body along one control axis by means of a correction factor determined on the basis of the position of the body along said one control axis and its position along one or more other control axis or axes. According to a second aspect of the present invention there is provided a position error correction apparatus in a control system for controlling a movable body along at least two control axes, the position error correction apparatus being operable to correct the position of the movable body along one control axis by means of a correction. factor determined on the basis of the position of the body along said one control axis and its position along one or more other control axis or axes when the apparatus is in use. According to a third aspect of the present invention there is provided a positional error correction apparatus in a numerical control system, said apparatus comprising a memory for storing a positional error correction factor corresponding to each control position on a plurality of control axes along which :.:a.. machine tool is positionally controllable; means for reading a correction factor out of said memory when the machine tool is positionally controlled along one control axis, said correction factor corresponding to a control position on said one control axis and to a control position on one or more other control axis or axes; and means for positionally controlling the machine tool along said control axis on the basis of the correction factor read out of said memory when the apparatus is in use. An example of the present invention may provide a positional error correction method for accurate correction of pitch error in a numerically controlled machine tool even when the pitch error correction factor for correction along a specific control axis depends not only upon the current position of a movable body along said control axis but upon the current position of the movable body along the other control axes as well. An embodiment of the present invention may provide an error correction apparatus in a numerical control system, provided with a function which enables an accurate pitch error correction even when the pitch error correction factor for a specific control axis of a numerically controlled machine tool depends not only upon the current position of a movable body along said also control axis, but/upon the current position of the movable body along the other control axes of the machine tool. In accordance with an embodiment of the present invention, a numerical control system, which is adapted to control a machine tool having a movable body whose movement is controlled along at least two control axes, may be provided with an error correction circuit for producing a correction factor decided on the basis of the position of the movable body along one control axis, i.e., the axis along which the machine tool is being positionally controlled, as well as the position of the movable body along the other control. axis or axes, the error correction circuit delivering an output signal, indicative of the correction factor, at the time of a positional control operation along said one control axis, thereby to correct the positional error of the machine tool. oI exampies Other features and advantages/of the present invention will be apparent from the following description taken in conjunction with the accompanying drawings, in which: Fig. 1 is a block diagram illustrating an error correction system in accordance with the present invention; Fig. 2 is a block diagram illustrating an embodiment of a pitch error correction circuit in accordance with the present invention; and Fig. 3 is a block diagram illustrating another embodiment of a pitch error correction circuit in accordance with the present invention. Referring first to Fig. 1, there is shown an interpolator 12 which produces distributed pulses Xp, Yp Zp by performing a pulse distribution operation on the basis of movement commands received from a paper tape ii bearing a punched machining program. Pulse mixing circuits 13X, 13Y, 13Z receive the distributed pulses Xp, Yp, Zp from the interpolator-12 and mix them with corrective pulses CPX1 Cup7, CPZ respectively, which will be described below. Well-known servo circuits 14X, 14Y, 14Z, which receive the outputs of the respective pulse mixing circuits 13X, 13Y, 13Z, have their outputs connected to respective servo motors 15X, 15Y, 15Z. Current position counters 16X, 16Y, 16Z, which are reversible counters, are adapted to count up or to count down the respective distributed pulses Xp, Yp p in accord- ance with the sign thereof, the value of the count within each counter indicating the commanded current position of a movable body along the X, Y, and Z axes, the commanded current position meaning the position currently occupied by the movable body as a result of the command received by the interpolator 12. In other words, the counters 16X, 16Y, 16Z store the commanded current positions Xa, Ya, Zat along the aforesaid three axes, of the movable body, these values being delivered to pitch error correction circuits 17X, 17Y, 17Z, respectively, which generate corrective pulses etc. +CPX, -CPX/for corrections albng the three axes X, Y, Z. Here we will assume that the pitch error along the X-axis is dependent upon the current position of the movable body along the X-axis and along the Y and Z axes as well, that the pitch error along the Y-axis is dependent upon the current position of the movable body along the Y-axis and along the X and Z axes as well, and that the pitch error along the Z-axis is dependent upon the current position of the movable body along Z-axis and along the X and Y axes as well. The pitch error correction factors Ex, Eyi Ez for each of these axes may then be expressed as follows: Ex = x (xa, a' Za) E = fy(Xat Ya Za) y Ez = f z (xa, ya, z a) The pitch error correction circuits 17X, 17Y, 17Z have identical circuit configurations, one of the circuits being shown in Fig. 2. The pitch-error correction circuit (17X in Fig. 1) shown in Fig. 2 includes a memory 101 for storing corrective values. The memory 101 is adapted to store, in the form of a three-dimensional matrix, so-called "absolute" corrective values which correspond-to respective sub-regions of space obtained by dividing three-dimensional space into a multiplicity of smaller regions, i.e., "sub-regions". An address converter 102 converts the current position (a point defined by Xa, Ya/ Z ) of the movable body into an address of the location in the memory 101 which stores the corrective value corresponding to the sub-region to which said current position belongs. An address register 103 stores the address obtained from the address converter 102. A decoder 104 is disposed between the memory 101 and the address register 103. The memory 101 is connected to a read control circuit 105 which is in turn connected to a presettable register 106 in which a corrective value CN read out of the memory 101 is preset. Numeral 107 denotes an oscillator for generating pulses PL whose function will be described below. A reversible counter 112 has its content up-counted by +1 each time a positive corrective pulse +CPX is generated, for a correction in the positive direction and down-counted each time a negative corrective pulse -CPX is generated for a correction in the negative direction. This will be described in further detail below. A comparator circuit 113 compares the content CN of the register 106 and the content RC 'of the reversible counter 112 and delivers logical "1" on line Q+ when CN > RCholds, logical "1" on line Z-- when CN < RCholds, and logical "0" on both- lines Q+, Q- when CN=RC holds, i.e., when CN and RC coincide. AND gates are designated at numerals 114, 115. When CN > RC holds, AND gate 114 delivers, as the positive corrective pulses +CPX, pulses PL which are generated by the oscillator 107. When RC < CNholds, AND gate 115 delivers the pulses PL from the oscillator 107 as the negative corrective pulses -CPX. It should be noted that the pitch error correction circuits 17X through 17Z are identically constructed as mentioned above. The sub-regions of space may differ from one another, however, as may the corrective values assigned to them and stored in memory 101. A pitch error correction in accordance with the examples of the present/invention proceeds as follows. The interpolator 12, upon receiving a movement command specified by the paper tape 11, performs a pulse distribution operation and feeds distributed pulses Xp, Yp, Zp to the servo circuits 14X, 14Y, 14Z through the pulse mixing circuits 13X, 13Y, 13Z, the servo circuits responding by driving the servo motors 15X, 15Y, 15Z rotatively. The servo motors rotate table drive lead screws which in turn transport the machine tool table along the X, Y and Z axes. The distributed pulses Xp, Yp, Zp, in concurrence with the foregoing operation, enter the respective current position counters 16X, 16Y, 16Z which store the thus commanded current position of the table in terms of the values Xa, Yat a along each of the control axes. This is accomplished by up-counting or downcounting the distributed pulses in accordance with their sign. The values Xa, Ya' Za Z specifying the commanded cur a rent position of the table enter each one of the pitch error correction circuits 17X through 17Z. The address converter 102 in each pitch error correction circuit converts the current table position into an address Ai which conforms to the sub-region of space to which the current table position belongs, the address A. then being set in the address register 103. When the current table position changes from one sub-region of space to the next sub-region, therefore, the address corresponding to the latter sub-region is set in the address register 103. When this has been accomplished,the address register 103 addresses the memory 101 by specifying the address Ai. The read control circuit 105 reads the corrective value at said address from the memory 101 and sets it in the register 106. The comparator 113 constantly compares the content CN of register 106 with the content RC of the reversible counter 112. The inputs CN, RC to the comparator 113 become unequal when-the corrective value from memory 101 is set in the register 106. If we assume that the corrective value set in register 106 establishes the inequality CN > RC, the coincidence circuit 113 delivers logical "1" on line t+, thereby opening AND gate 114. As a result, pulses PL generated by the oscillator 107 pass through the open AND gate 114 and are delivered as the corrective pulses +CPX for a forward correction. The pulses simultaneously enter the reversible counter 112 and increment its content RC until the equality CN = RC is established, at which time the comparator 113 detects the coincidence between CN and RC to close AND gate 114 and block the passage of the pulses PL, thereby halting delivery of the corrective pulses +CPX. This ends the pitch error correction along the X axis. Note that the corrective pulses +CPX for the correction in the positive direction were delivered in the foregoing because of the assumption CN > RC. When the inequality CN < RCis the case owing to the corrective value set in register 106, the coincidence circuit 113 will open AND gate 115 to deliver the corrective pulses -CPX for negative correction along the X axis. The backward correction is then performed in the same manner as the forward correction until the equality CN=RC is restored. A better understanding of the foregoing can be had by using numerical values to describe a corrective operation. Thus, for first, second and third sub-regions of space SP1, SP2, SP3 which adjoin one another in the order named, let the corresponding corrective values be 10, 7 and 9, respectively. These'values are stored in memory 101. When the table of the machine tool moves from the origin and enters the first sub-region of space SP1 where the current position of the table is given by (Xa, Yat Z a' the numerical value "10" is read out of memory 101 and set in the register 106. CN is greater than RC so that the comparator circuit 113 opens AND gate 114 to permit the passage of ten corrective pulses +CPX (i.e., the oscillator output pulses PL) which correct the pitch error by applying a correction in the positive direction. Only ten corrective pulses are delivered because the pulses are coupled also to the reversible counter 112 whose content is consequently up-counted from zero to the numerical value "10" which is equivalent to the corrective value for the first subregion SP1. This establishes the equality CN = RN, closing the AND gate 114 and threfore interrupting the flow of pulses. Then, as the table is moved so that the commanded current position is located in the second sub-region of space SP2, the numerical value "7" is set in register 106, and the comparator circuit 113 opens AND gate 115 since CN ("7") is now smaller than RC ("10"), i.e., CN < RC. The AND gate 115 therefore delivers three corrective pulses -CPX to correct the pitch error in the negative direction. The content of reversible counter 112, vowing to the sign of the corrective pulses -CPX, is down-counted from "10" to the numerical va-lue "7", which is the corrective value corresponding to the second sub-region SP2. Next, when the current table position shifts to the third sub-region of space SP3, the numerical value "9" is set in register 106, and the comparator 113 opens AND gate 114 since CN ("9") is now greater than RC ("7"). The AND gate 114 therefore delivers two corrective pulses +CPX to correct the pitch error in the positive direction. The content of reversible counter 112 is upcounted from "7" to "9", which is the corrective value corresponding to the third sub-region SP3. Corrective operations for fourth and subsequent sub-regions proceed in similar fashion. Thus, a pitch error correction ends when the value of the count in reversible counter 112 agrees with the corrective value corresponding to the particular sub-region of space. It will also be appreciated that the value of the count in counter 112 is the arithmetic difference between the number of forward corrective pulses and the number of backward corrective pulses, and that this represents the actual correction factor. This enables pitch error to be corrected in an accurate manner. When the AND gate 114 delivers the corrective pulses +CPX in the manner described above, the mixing circuit 13X in Fig. 1 adds pulses, equivalent in number to the pulses +CPX, to the distributed pulses Xp produced by the interpolator 12, thereby increasing the total number of pulses applied to the servo circuit 14X. On the other hand, when the AND gate 15 delivers the corrective pulses -CPX, the mixing circuit 13X subtracts pulses, equivalent in number to the corrective pulses -CPX, from the distributed pulses Xp, thereby decreasing the total number of pulses applied to the servo circuit 14X. A corrective operation of this type is performed by pitch error correction circuit 17Y and pulse mixing circuit 13Y, and by pitch error correction circuit 17Z and pulse mixing circuit 13Z, thereby to correct the position of the table along all three control axes. This positional correction is executed each time the table moves from one sub-region of space to another. Fig. 3 is a block diagram useful in describing pitch error correction circuits 17X, 17Y, 17Z for a case where the pitch error correction factors Ex, Ey, Ez may be expressed as follows: Ex = a (xa, ya, Za) = f (Xa) + gX(Ya) + hx (za) E = fy(xa, ya, Za) = f (xa) + gy(ya) + h (Za) y y y y Ez = fz (xa, Ya' , Za) = fz(xa) + + gz(ya) + hZ (Za) The pitch error correction circuits 17X, 17Y, 17Z are identical in construction. Segments along the control axes may differ from one another, as may the corrective values assigned to respective segments and stored in memory, as will be described below. It will therefore be necessary to describe only one of the correction circuits, specifically the correction circuit 17X. As shown in Fig. 3, pitch error correction circuit 17X includes memories 101X, 101Y, 101Z for storing the signed corrective values fx(x), gx (y), hx (z), respectively. The range of table movement along each of the X, Y and Z control axes is divided into a plurality of segments, and a corrective value is assigned to each segment. Corrective values, as well as their signs, corresponding to the segments along the X-axis are stored in memory 101X. Similarly, corrective values, as well as their signs, corresponding to the segments along the Y-axis are stored in memory 101it and corrective values, as well as their signs, corresponding to the segments along the Z-axis are stored in memory 101Z-. Each corrective value is a so-called incremental corrective value. Accordingly, when the table moves to a position located on a certain segment, pulses are generated, as will be described below, for a correction in the positive or negative direction by an amount corresponding to the corredtive value for said segment. The sign of the corrective value indicates the direction of the correction for a case where the table is moving in the positive direction. When the table is'moving in the negative direction, therefore, the direction of the correction will be the reverse of the sign. Address converters 102X, 102Y, 102Z are provided for the respective memories 101X, 101?, 101Z. -The address converter 101X converts the current table position Xa along the X-axis into an address Ax corresponding to the segment to which Xa belongs. Similarly, the address converters 101Y, 101Z convert the current positions Yar Za along the Y and Z axes into addresses Ayr AZ corresponding to the segments to which ?a and a belong, respectively. The addresses Ax, Ayr Az are set in address registers 103X, 103Y, 103Z, respectively. Numerals 104X, 104Y, 104Z denote decoders, and numerals 105X, 105Y, 105Z denote read control circuits. Corrective values DX, DY, DZ, which have been read out of the respective memories 101X, 101Y, 101Z by the read control circuits, are preset in respective presettable reversible counters 106X, 106Y, 106Z, the content of each reversible counter being down-counted by one count each time an oscillator 107 generates a pulse. The reversible counters 106X, 106Y, 106Z have respective output lines Qx' Qyt Qz. A reversible counter delivers a "0" on its output line when its content is zero, and a "*1" when its content is non-zero. NOT gates are designated at 108X, 108Y, 108Z, and AND gates at 109Xp, 109Xm, 109Yp, 109Ym, 109Zp, 109Zm. Numerals 110X, 110Y, 110Z denote exclusive OR gates whose respective inputs are the signs SNX, SUN?, SNZ of the corrective values DX, DY, DZ, as well as directional signals MDX, MDY, MDZ. The signs SNX, SNY, SNZ are read out of the respective memories 101X, 101Y, 101Z along with the corrective values DX, DY, DZ. The directional signals MDX, MDY, MDZ indicate the direction of table movement. MDX is a "1" for table movement in the +X direction and a "0" for table movement in the -X direction, MDY is a "1" for table movement in the +Y direction and a "0" for table movement in the -Y direction, and MDZ is a "1" -for movement in the +Z direction and a "0" for movement in the -Z direction. The signs SNX, SUN?, SNZ are logical "1" when positive, and logical "0" when negative. Numeral 111 denotes a combining circuit which combines the positive corrective pulses +CPX' from the AND gates 109Xp, 109Yp, 109Zp and the negative corrective pulses -CPX' from the AND gates 109Xm, 109Ym, 109Zm, thereby to produce corrective pulses +CPX for a positive correction and corrective pulses -CPX for a negative correction. In operation, the current position counters 16X, 16Y, 16Z store the current position of the table in terms of the values Xa, ?a1 , a along the respective control axes X, Y, Z. The address cdnverters 102X, 102Y, 102Z receive the values Xa, Yat Za and convert them into addresses Ax, Ay, Az which correspond to the respective segments on which the above values lie. When the interpolator 12 in Fig. 1 generates the distributed pulses Xp for moving the table in the +X direction, the distributed pulses are coupled to the servo circuit 14X through the pulse mixing circuit 13X to drive the servo motor 15X, whereby the table is transported in the +X direction. At the same time, the distributed pulses X enter the counter 16X and increment its p content. When the current position Xa along the X-axis moves from one segment to the next adjacent segment, the address converter 102X generates the address Ax corresponding to the latter segment and sets this address in the address register 103X, which now addresses the memory 101X accordingly. As a result, the read control circuit 105X reads, from the address Ax of the memory 101X, the pitch error corrective value DX as well as its sign SNX, the corrective value DX being that which has been assigned to the segment just occupied by the commanded current position of the table. The read control circuit 105X presets the corrective value DX in the reversible counter 106X and applies the sign SNX (assumed here to be logical "1") to the exclusive-OR gate 110X. Since the content of counter 106X is now non-zero, a "1" appears on its output line Lx. Further, since the sign SNX is a "1" (positive) and the directional signal MDX is-a "1" (indicating movement in the positive direction), theexlusive-OR gate 710X delivers a "0" which causes the AND gate 109Xp to open. The open gate 109Xp permits the pulses PL generated by the oscillator 107 to enter the pulse mixing circuit 111 as the corrective pulses +CPX'. The content of reversible counter 106X is decremented by one count each time a pulse PL is generated. The delivery of the corrective pulses +CPX' ends when the content of counter 106X is counted down to zero. When the sign SNX of the corrective value DX is positive (logical "1") and pulses are being distributed in the -X direction, so that the directional signal MDX is logical "0", the output of the exclusive-OR gate 710X is logical "1". Therefore AND gate 109Xm is opened instead of AND gate 109Xp and delivers the corrective pulses -CPX', produced in the same manner as the corrective pulses +CPX' as described above. The foregoing description deals with a pulse distribution operation solely along the X-axis. When pulses are distributed simultaneously along two control axes, or simultaneously along three control axes, the AND gates 109Yp, 109cm, 109Zp, 109Zm also deliver the corrective pulses +CPX', -CPX' which enter the pulse mixing circuit 111 and are mixed with the distributed pulses, thereby to provide the corrective pulses +CPX, -CPX. The pitch error correction circuits 17Y and 17Z operate in the same manner as the pitch error correction circuit 17X to produce the corrective signals +COPY, -CP?, +CPZ, -CPZ. It should be obvious from the foregoing description examples or that ghe present invention enable pitch error to be corrected in accurate fashion to permit highly precise numerical control of a machine tool even when the pitch error along a certain control axis is dependent not only upon the aiso current position along said control axis but/ upon the current position along the other control axes. t should be understood that the foregoing descrip relates tn tion / preferred embodiments of the disclosed invention and that various changes and modifications may made without departing from the spirit and scope of the invention. For example, it was described above that the corrective pulses are generated on the basis of the current position of the movable body, such as a table, following a command to move the body. However, it is possible to adopt an arrangement wherein the corrective pulses are generated on the basis of the actual position of the movable body as obtained by supplying the current position counters with signals that indicate where the movable body is actually located at any given time, irrespective of commands. It should also be understood that the invention is not restricted to the correction of pitch errors; other types of error may be corrected in an analogous fashion. In general terms, there has been described and illustrated a positional error correction system applicable to numerical control wherein a machine tool is controlled along more than one control axis, such as along X and Y control axes. It the machine tool is to be positionally controlled along the X-axis, the position of the machine tool along the X-axis is corrected by a correction factor decided on the basis of the position of the machine tool along that axis and the position of the machine tool along the Y-axis, whereby a positional correction is effected in a highly accurate manner. The control axes of the machine tool may include a Z-axis and thus are not restricted to merely the X and Y axes. In such case may be the positional correction / performed using a correction factor decided on the basis of the machine tool position along all three axes.

Claims: Claims: 1. A method of positionally correcting a movable body whose movement is controlled along at least two control axes, comprising correcting the position of the movable body along one control axis by means of a correction factor determined on the basis of the position of the body along said one control axis and its position along one or more other control axis or axes. 2. A method according to claim 1 which is a method of correcting a positional error in a numerical control system wherein the movement of a movable member of a machine tool is controlled along at least two axes, comprising the step of correcting the position of the movable member along one control axis by a correction factor determined on the basis of the position of the movable member on said one control axis and the position of the movable member on one or more other control axis or axes. 3. A method according to claim l or 2, further comprising the steps of: storing in memory, position correcting values each corresponding to a respective sub-region of space, a plurality of such sub-regions being defined by subdividing the three-dimensional space in which the movable body or member moves; up-dating the current position or the commanded position of the movable body or member each time said body or member moves; discriminating whether the current position or commanded position of the movable body or member has shifted from a first sub-region of space to a second subregion of space; reading out of the memory the position correcting value corresponding to said second sub-region of space when the current position or commanded position of the movable body or member is located in said second subregion; and correcting the position of the movable body or member along said one control axis on the basis of said position correcting value. 4. A method according to claim 3, further comprising the steps of: storing the position correcting value of a subregion of space which precedes a current sub-region of space into which the movable body or member is moved, and correcting the position of the movable body or member by the arithmetic difference between the position correcting value of the current sub-region of space and the position correcting value of the preceding subregion of space. 5. A method according to claim l or 2, further comprising the steps of: storing, in memory, position correcting values each corresponding to a respective segment along a control axis, a plurality of such segments being defined along each control axis by sub-dividing the range of movement of the movable body or member along each control axis; up-dating the current position or the commanded position of the movable body or member each time said body or member moves; discriminating whether the current position or the commanded position of the movable body or member has shifted from a first segment to a second segment; reading out of the memory the position correcting value corresponding to said second segment when the current position or commanded position of the movable body or member is appoint located on said second segment; and correcting the position of the movable body or member along said one control axis on the basis of said position correcting value. 6. A method according to claim 5 in which, when the movable body or member is being moved in the forward direction, the corrective direction and the correction factor are stored in the memory as said position correcting value, and in that, when the movable body or member is discriminated as being moved in the backward direction, the position of the movable body or member is corrected by reversing the corrective direction. 7. A position error correction apparatus in a control system for controlling a movable body along at least two control axes, the position error correction apparatus being operable to correct the position of the movable body along one control axis by means of a correction factor determined on the basis of the position of the body along said one control axis and its position along one or more other control axis or axes when the apparatus is in use. 8. A position error correction apparatus according to claim 7, in a numerical control system for controlling a machine tool having a movable member whose movement is controllable along at least two axes, said apparatus including an error correction circuit for producing a correction factor determined on the basis of the position of the movable-member along one control axis, EMI23.1 EMI23.2 and the position of the movable member along one or more other control axis or axes, said error correction circuit being operable to deliver an output signal, indicative of the correction factor, at the time of a positional. control operation along said one control axis, thereby to correct the positional error of the machine tool when the apparatus is in use. 9. A positional error correction apparatus according to claim 7 or 8, in which an error correction circuit is provided for each control axis along which the movable body or member is positionally controllable, each said error correction circuit being operable to compute a correction factor determined on the basis of the position of the movable body or member along the associated control axis, and the position of the movable member alopg one or more other control axis or axes when the apparatus is in use. 10. A positional error correction apparatus according to claim 8 or 9, the or each error correction circuit comprising a memory for storing a positional error correction factor corresponding to each control position on a plurality of control axes along which the body or member is positionally controllable; means for reading a correction factor out of said memory when the body or member is positionally controlled along one control axis, said correction factor corresponding to a control position on said one control axis and to a control position on one or-more other control axis or axes; and means for positionally controlling the body or member along said one control axis on the basis of the correction factor read out of said memory when the apparatus is in use. 11. A positional error correction apparatus in a numerical control system, said apparatus comprising a memory for storing a positional error correction factor corresponding to each control position on a plurality of control axes along which a machine tool is positionally controllable; means for reading a correction factor out of said memory when the machine tool is positionally controlled along one control axis, said correction factor corresponding to a control position on said one control axis and to a control position on each of the other control axes; and means for position ally controlling the machine tool along said one control axis on the basis of the correction factor read out of said memory when the apparatus is in use.

Inventors: HIDEAKI, KAWAMURA, RYOICHIRO, NOZAWA
Applicants: FANUC LTD
Application year: 1981
Main classification: G05B19
IPC codes: G01B7, G05B19, G01B21