METHOD OF CONTROLLING CHASING LATHE

Abstract: A method of controlling a chasing lathe uses at least two tools (TL1, TL2) provided in parallel on one side of a tool slide (TBS), and a workpiece (WK) is machined by employing a succession of predetermined tools. The method comprises: inputting data on at least part dimensions, tool selection order, positions to be cut by each tool, and mounting dimen­ sions from a reference position of each tool; and machining at the positions (P5-P4-P3-P2-P1; P5-P7-P8-P9-P10) to be machined which are allotted to the respective tools, using the predetermined tools in order on the basis of the data. In addition, during the machining, upon the completion of machining with one tool (TL1), when the subsequent tool (TL2) is being positioned at a position which will be machined thereby by moving the tool slide (TBS), the tool slide (TBS) is moved in the Z-axis direction to a point (Pr) at which none of the tools (TL1, TL2) will come into contact with the workpiece (WK) by the movement of the tool slide (TBS) in the direction (X-axis direction) perpendicular to the longitudinal direction of the workpiece (WK) (Z-axis direction). Thereafter, the tool slide is moved in the X-axis direction to a point (Pt) at which the X-axis position of the selected tool to coincide with the X-axis coordinate of the start position of the machining done by that tool, and then machining is done by employing the selected tool.

Description: This invention relates to a method of controlling a comb-cutter lathe in which one face of a tool rest is provided with two or more juxtaposed tools for subjecting a workpiece to machining by using predetermined tools in succession. When it becomes necessary to change tools in an ordinary turret lathe, the turret is moved to a position where the tools will not interfere with a stationary part of the machine or with the workpiece even when the turret is rotated. This is followed by rotating the turret to select the desired tool, and then positioning the selected tool at a machining starting point, after which machining is performed by the selected tool. Such a process is disclosed in GB-A-2050643. Since a turret lathe thus requires moving the turret to the tool changing position, selecting a tool by rotation of the turret, and positioning the turret at the machining starting point, a comparatively long period of time is needed to select a tool. In machining a small article that requires a machining time of from 10 seconds to several minutes, the amount of time needed for tool selection cannot be ignored. In particular, where a large number of lots are concerned, a reduction in the tool selection time is desired. Accordingly, a comb-cutter lathe has come into use having a plurality of tools provided in juxtaposition on one face of a tool rest, with predetermined ones of the tools being used one after another to machine a workpiece. An advantage of a comb-cutter lathe of this kind is that tool selection time is shortened since it is unnecessary to rotate the tool rest when selecting a tool. With a comb-cutter lathe, however, it is necessary to slide the tool rest when selecting a tool, and it is required to arrange it so that tools do not interfere with the workpiece when sliding takes place. Accordingly, an object of the present invention is to provide a method of controlling a comb-cutter lathe wherein a tool will not interfere with a workpiece when a tool rest is slid in effecting tool selection. Another object of the present invention is to provide a method of controlling a comb-cutter lathe wherein the path of a tool rest at the time of a tool selection is generated automatically. A further object of the present invention is to provide a method of controlling a comb-cutter lathe wherein the path of a tool rest at the time of a tool selection can be shortened to enable a reduction in the time needed for the tool selection. According to the present invention there is provided a method of controlling a comb-cutter lathe in which one face of a tool rest is provided with two or more juxtaposed tools for subjecting a workpiece to machining by using predetermined tools in succession, wherein after machining is completed by one tool, the tool rest is moved to position a subsequent tool at a machining starting point position and machining is performed by said subsequent tool, characterized by: calculating automatically the co-ordinate value of a point Pr for the tool rest at which none of the tools will contact the workpiece by the tool rest being moved across a free end of the workpiece in a direction at right angles to the longitudinal direction of the workpiece, the coordinate value z' of the point Pr being calculated from the following: z' = z + ΔZ + c where z is a Z-axis coordinate value of said machining starting point position, c is a clearance quantity, and ΔZ is a distance, along the Z axis, from a reference position of the tool rest to a distal end of a tool having the longest length among the tools mounted on said tool rest, calculating travelling distance ΔZ' in the Z-axis direction during a period of time ΔT sec, performing pulse distribution calculation based on the travelling distance ΔZ' every ΔT sec to produce distributed pulses, rotating a Z-axis motor by the distributed pulses resulting in movement of the tool rest along the Z-axis from a present position to the point Pr after machining by the said one tool, thereafter calculating automatically the coordinate value of a point pt for the tool rest at which an X-axis position of the selected subsequent tool will coincide with an X-axis coordinate value of said starting point position, the coordinate value X' of the point Pt, being calculated from the following: x' = x + ΔX where x is an X-axis coordinate value of said machining starting point position, and ΔX is a distance, along the X axis, from a reference position of the tool rest to a distal end of the subsequent tool, calculating travelling distance ΔX' in the X-axis direction during a period of time ΔT sec, performing pulse distribution calculation based on the travelling distance ΔX' every ΔT sec to produce distributed pulses, rotating an X-axis motor by the distributed pulses resulting in movement of the tool rest along the X-axis from the point Pr to the point Pt, and thenceforth performing machining with said selected subsequent tool. According to the invention, a tool will not interfere with the workpiece when a tool is selected, and tools can be changed along the shortest path. Brief Description of the Drawings Fig. 1 is a view for describing machining performed by a comb-cutter lathe, Fig. 2 is a block diagram of an automatic programming apparatus to which the present invention appertains, Fig. 3 is a flowchart of processing for creation of a part program according to the present invention, Fig. 4 is a view for explaining a tool path according to the present invention, Fig. 5 is a view showing the final contour of a part displayed on a CRT, Fig. 6 is a view for explaining an example of data input for each machining process, Fig. 7 is a view for explaining a tool mounting position in a comb-cutter tool rest, Fig. 8 is a view for explaining a created part program, Fig. 9 is a block diagram of an NC apparatus, and Fig. 10 is a flowchart of processing for machining performed by a comb-cutter lathe according to the present invention. Fig. 1 is a view for explaining machining performed by a comb-cutter lathe, in which one face of a tool rest TBS is provided with two tools TL1, TL2 in juxtaposition. We will assume that a workpiece WK having a stock contour indicated by the dashed line is to be machined into the part contour indicated by the solid line, that the portion P₁-P₂-P₃-P₄-P₅ of the part contour is to be subjected to coarse machining in the first quadrant by the tool TL1, which is for coarse machining, and that the portion P₆-P₇-P₈-P₉-P₁₀ of the part contour is to be subjected to fine machining in the fourth quadrant by the tool TL2, which is for fine machining. First, the tool TL1 is moved as in turning work performed by an ordinary turret lathe [see the fine lines in the first quadrant of Fig. 1(A)] to provide a coarse machined part contour indicated by P₁-P₂ ...-P₅ [see Fig. 1(B)]. Next, assuming that fine machining must be performed in the fourth quadrant by the tool TL2, a Z-axis position P r [Fig. 1(B)] is found at which the tools TL1, TL2 will not contact the workpiece WK owing to movement of the tool rest TBS along the X axis. The tool rest TBS is then moved to the position P r [Fig. 1(c)]. Thereafter, the tool rest TBS is transported along the X axis [Fig. 1(D)] to a point P t where the X-axis position of the tool TL2 for fine machining coincides with the X-axis coordinate value of a position P₆ where machining performed by the tool is to start. Thenceforth, the tool rest is transported along the path P₆ → P₇ → P₈ → P₉ → P₁₀ to perform fine machining by using the selected tool TL2. To perform the foregoing control, NC data are created from part dimensions, tool selection sequence, the machining location of each tool and reference positions of the respective tools, the data are stored in memory, and control is effected by reading the NC data out of the memory one block at a time. A method of controlling a comb-cutter lathe according to the present invention will now be described by being divided into two parts, namely (I) processing for creating an NC part program, and (II) processing for machining performed by a comb-cutter lathe. (I) Processing for creation of NC part program (1) First, a keyboard 101 and display unit 102 shown in Fig. 2 are used to enter data specifying the external shape of the workpiece WK, e.g., coordinate values x m , z m (see Fig. 4) of a point P m , part contour, e.g., coordinate values x i , y i of a point P i (i=1, 2 ... 10), coordinate values x o , y o of an initial position P o of a tool, a clearance quantity c during coarse machining, a finishing allowance t, depth of cut d for one pass, finishing increment u, coarse cutting speed f c , and fine cutting speed f c '. These data are stored in a RAM 103. Stock contour and part contour are displayed on the display unit 102, as shown in Fig. 5. (2) Next, as shown in Fig. 6, the tool used, the tool mounting position and the location to be machined by the tool are entered and stored in the RAM 103 in the order of the machining process. The tool used is expressed by the letter of the alphabet "T" and a one-digit numerical value following "T". The tool mounting position, as shown in Fig. 7, is expressed by the distance (actually an incremental value along the corresponding axis) from a reference point R on the tool rest TBS to the tool noses of respective tools TL1, TL2, TL3. The tool used and the mounting position of the tool are specified by entering a tool number "T □ " and incremental values " Δ Xi, Δ Yi" for each of the prescribed tools. The location to be machined by each tool is specified by point numbers P₁, P₂ ... P₂₄. Specifically, a machining location is specified by entering these numbers from the keyboard 101. Thus, input information for first, second and third machining processes is stored in the RAM 103 and is given by e following: T₁: Δ X₁, Δ Z₁ : P₅, P₄, P₃, P₂, P₁; eT₂: Δ X₂, Δ Z₂ : P₆, P₇, P₈, P₉, P₁₀; T₃: Δ X₃, Δ Z₃ : P₂₁, P₂₂, P₂₃, P₂₄ assuming that coarse machining is to be performed along P₅ through P₁ by the tool TL1 for coarse machining, fine machining is to be performed along P₆ through P₁₀ by the tool TL2 for fine machining, and grooving is to be performed along P₂₁ through P₂₄ by the grooving tool TL3. It should be noted that T₁, T₂, T₃ are the tool numbers of the tools TL1, TL2, TL3. (3) When all data necessary for NC part program creation are entered through steps (1), (2) above, a control program for part program creation stored in a ROM 104 of Fig. 2 starts to be run, and a processor 105, through processing described below, creates a subprogram for each machining process, creates a main program for calling the subprograms in machining process order, and creates, in a RAM 106, an NC part program obtained by combining the sub- and main programs. The processing for creating the subprograms and main program will now be described. (3a-1) The processor 105 determines whether a j-th machining process (where the initial value of j is 1) exists. If it does, the category of machining process (coarse machining, fine machining, grooving, threading, etc.) is recognized from the tool used in the process. A table 107 in Fig. 2 stores the correlation between machining category and the tool used to performing the machining. The processor 105 identifies the category of the j-th machining process based on the table. (3a-2) In order to create a subprogram for rough machining, which is the first machining process (j=1), the processor 105 generates a subprogram number for the j-th machining process, namely: O 000j The processor stores the number in the RAM 106 and then uses the initial position (x o , z o ) of the tool rest TBS stored in the RAM 103 to create NC data for setting the coordinate system, namely: G50 Xx o Zz o ; The processor stores this data in the RAM 106. (3a-3) The processor 105 then calculates the position x s , z s of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at the machining starting point P s , which is spaced from the point P m (Fig. 4) by the clearance c along the X and Z axes. This position of the tool rest is calculated from the following equations: x m + c + Δ X₁ → x s z m + c + Δ Z₁ → z s When the coordinates of the machining starting point P s have been calculated, the processor creates the following data for effecting positioning from the initial position to the machining starting point P s : G00 Xx s Zz s ; and stores the data in the RAM 106. (3a-4) Next, the processor 105 performs the operation 1 → i and calculates the position x a , z a of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at a point P ai (= P a1 ), which is spaced from the machining starting point P s by (c+d) along the -X axis. This position of the tool rest is calculated from the following equations: x m - d + Δ X₁ → x a z m + c + Δ z₁ → z a (3a-4) After x a , z a are calculated, the processor 105 determines whether the following holds: x a ' ≧ (x₅ + t ) (where x a ', x₅ are the X-axis coordinate values of points P ai (= P a1 ) and P₅, respectively). (3a-5) If x a ' ≧ (x₅ + t) holds, the processor 105 obtains a point P bi (= P b1 ), which is where a straight line L 1i parallel to the Z axis and passing through the point P ai (Pa₁) intersects the part contour, and then obtains the position x b , z b of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at a point P b1 ', which is spaced from the machining starting point P b1 by the finishing margin t along the +Z axis. The processor also calculates the coordinate values x c , z c of a point P c1 spaced from the point P b1 ' by (d+u) along the +X axis. These coordinate values are calculated from the following equations: x b ' + d + u → x c z b ' → z c (where x b ', z b ' are the coordinate values of the point P b1 ,). (3a-6) The processor 105 then determines whether a straight line L 2i (= L₂₁ ) parallel to the Z axis and passing through the point P c1 intersects the part contour. (3a-7) If the straight line L₂₁ does not intersect the part contour, the processor 105 obtains the point of intersection P d1 between the straight line L₂₁ and the extension of a straight line segment P₂P₁ containing the point P b1 , which straight line segment is from among the straight light segments P₅P₄ , P₄P₃ , P₃P₂ , P₂P₁ that specify the part contour. Thereafter, the processor calculates the position x d , z d of the tool rest that will prevail when the nose of the tool TL1 is at a point P d1 ', which is spaced from the point of intersection P d1 by the finishing margin t. (3a-8) Next, the processor 105 calculates the position x s , z s of the tool rest TBS that will prevail when the nose of the tool TL1 is at the next machining starting point P s1 . This position is calculated from the following equations: x c + ΔX₁ → x s x m + c + ΔZ₁ → z s (3a-9) When the coordinate values of each of the points occupied by the tool rest TBS have been found through the foregoing steps, the processor 105 uses these coordinate values to create and store the following in the RAM 106: G00 Xx a Zz a ; G01 Xx b Zz b Ff c ; Xx d Zz d ; G00 Xx s Zz s ; (3a-10) The processor 105 then performs the operation i+1 → i and calculates the position x a , z a of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at a point P ai (= P a2 ), which is spaced from the machining starting point P s1 by (2d+u) along the -X axis. This position of the tool rest is calculated from the following equations: x s - (2d + u) → x a z s → z a Thereafter, the processor repeats the process steps from step (3a-4) onward. (3a-11) If the straight line L 2i (e.g., straight line L₂₂) is found to intersect the part contour at point P di in step (3a-6), then the processor calculates the position x d , z d of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at a point P di ', which is spaced from the point of intersection P di by the finishing margin t. (3a-12) Next, the processor 105 determines whether points P₁ through P₅, which specify the part contour, are located between points P bi and P di . If the points P₁ through P₅ are not located between P bi and P di , then processing from step (3a-8) onward is repeated. (3a-13) If at least one of the points P₁ through P₅ (P₂, P₃) is found to lie between point P bi and point P di in executing step (3a-12), then the processor obtains the positions x₃', z₃'; x₂', z₂' of the tool rest TBS that will prevail when the nose of the tool TL1 is at points P₃', P₂,, which are spaced from the points P₃, P₂ by the finishing margin t along the +X and +Z axes, respectively. These positions are obtained from the following equations: x₃ + t + ΔX₁ → x₃' z₃ + t + ΔZ₁ → z₃' x₂ + t + ΔX₁ → x₂, z₂ + t + ΔZ₁ → z₂' The processor 105, through processing similar to that of step (3a-8), then obtains the position x s , z s of the tool rest TBS that will prevail when the nose of the tool TL1 is at the next machining starting point P si . Thereafter, the processor uses the coordinate values of each of the positions occupied by the tool rest to create and store the following data in the RAM 106: G00 Xx a Zz a ; G01 Xx b Zz b Ff c ; X x3 ' Z z3 ' ; X x2 ' Z z2 ' ; X xd ' Z zd ; G00 Xx s Zz s ; This is followed by repeating processing from step (3a-10) onward. (3a-14) If x a < (x₅ + t) is found to hold in step (3a-4), the processor calculates the position x₅', z₅' of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at the point P₅', which is spaced from the point P₅ by the finishing margin t along the +X axis and by the clearance c along the +Z axis. This position of the tool rest is calculated from the following equations: x₅ + t + Δ X₁ → x₅' z₅ + c + Δ Z₁ → z₅' The processor also calculates the position x₄', z₄' of the tool rest TBS that will prevail when the nose of the tool TL1 is situated at the point P₄', which is spaced from the point P₄ by the finishing margin t along the +X and +Z axes. This position of the tool rest is calculated from the following equations: x₄ + t + Δ X₁ → x₄' z₄ + t + Δ Z₁ → z₄' This is followed by obtaining the coordinate values x c , z c of a point P cn , which is spaced from the point P₄, by (d+u) along the +X axis. These coordinate values are obtained from the following equations: x₄ + t + d + u → x c z₄ + t → z c The processor then obtains the position x d ', z d ' of a point P dn at which the part contour is intersected by a straight line L2n parallel to the Z axis and passing through the point P cn , followed by the coordinate values x d , z d ; x e , z e of the tool rest TBS that will prevail when the nose of the tool TL1 is at points P dn ' (=P cn ), P e , which are spaced from the point P dn by the finishing margin t and by the clearance c, respectively, along the +Z axis. These coordinate values are obtained from the following equations: x d ' + ΔX₁ → x d z d ' + t + ΔZ₁ → z d x d → x e z d ' + c + ΔZ₁ → z e The processor then obtains the position x f , z f of the tool rest TBS that will prevail when the nose of the tool TL1 is at the machining end point P f , the position being found from the equations: x m + c +ΔX₁ → x f z e → z f When the coordinate values of the tool rest TBS at each of the points have been found through the foregoing steps, the processor 105 creates and stores the following in the RAM 106: G00 Xx₅, Zz₅' ; G01 Xx₄, Zz₄, Ff c ; Xx d Zz d ; Xx e Zz e ; G00 Xx f Zz f ; M99 Note that M99 denotes the end of the subprogram. The foregoing ends processing for creating the subprogram of the first machining process (coarse machining). Upon completing processing for creating the subprogram of the first machining operation, the processor 105 executes processing to create a subprogram SP2 for the second machining process for performing fine machining, which subprogram includes fine machining work and control of tool rest movement. When coarse machining is completed, the tool rest TBS is retracted along the +Z axis from the coarse machining end point P f to the point P r in Fig. 1(C), and is then transported along the -X axis from point P r to point P t in Fig. 1(D). This positions the fine machining tool TL2 at the fine machining starting point along the shortest traveling distance without the tools striking the workpiece WK. (3b-1) Accordingly, the processor 105 generates, and stores in the RAM 106, the following subprogram number of the second machining process: O 0002 (3b-2) The processor then obtains the maximum tool length ( Δ Z₂) from among Δ Z₁, Δ Z₂, Δ Z₃ and subsequently calculates the coordinate values x r , z r of the point P r from the following equations: x m + c → x r x₆ + Δ Z₂ + c → z r It should be noted that z₆ is the Z-axis coordinate value of the point P6. (3b-3) The processor 105 also calculates the coordinates values x t , z t of the point P t from the following equations: -(x₆ + Δ X₂) → x t z r → z t It should be noted that x₆ is the X-axis coordinate value of the point P₆. (3b-4) When the points P r , P t have been found, the processor creates and stores the following NC data in the RAM 106: G 00 Xx r Zz r ; Xx t Zz t ; Thus, the processor creates NC data for movement along the +Z axis from point P f to point P r , and NC data for movement along the -X axis from point P r to point P t . (3b-5) Next, the processor 105 calculates the positional coordinate values x i ', z i ' (i = 7, 8 ... 12) of the tool rest TBS that prevail when the nose of the tool TL2 (Fig. 4) is situated at points P₇, P₈ , P₉, P₁₀, P₁₁, P₁₂, respectively. These coordinate values are calculated from the following equations: x i - Δ X₂ → x i ' z i - Δ Z₂ → z i ' (where i = 7, 8, 9, 10) x₁₀ - c - Δ X₂ → x₁₁' z₁₁ + Δ Z₂ → z₁₁' x₁₁' → x₁₂' z₆ + c + Δ Z₂ → z₁₂' where z₁₁ is the Z-axis coordinate value of the point of intersection between straight lines P₉P₁₀ , P₁₁P₁₂ . (3b-6) When the coordinates x i ', z i ' have been obtained, the processor creates, and stores in the RAM 106, the following path data for transporting the tool TL2 along the fine machining path: G01 Xx₇, Zz₇' Ff c ; Xx₈' Zz₈' ; Xx₉, Zz₉' ; Xx₁₁' Zz₁₁' ; G00 Xx₁₂' Zz₁₂' ; Xx t Zz t ; M99 ; Thus, performing steps (3b-1) through (3b-6) ends processing for the creation of a subprogram for the second machining process (fine machining). (3c) Thereafter, a subprogram SP3 for the third machining process, which program includes grooving machining work and control of tool rest movement for cutting a groove, is created through steps similar to those for creation of the subprogram SP2. This will complete the processing for the creation of all subprograms. (3d) When all subprograms have been created, the processor 105 creates the following main program for calling the subprograms in machining process order: 01234 M98 P0001 ; M98 P0002 ; M98 P0003 ; M30 ; and ends creation of the part program by arranging the part program in the RAM 106 in the order shown in Fig. 8, namely in the order of the main program MP, subprogram SP1, subprogram SP2 and subprogram SP3. The part program stored in the RAM 106 is subsequently delivered as an output to a tape puncher or magnetic unit 201. Note that "M98" denotes a subprogram call instruction for calling the subprogram having the program number which follows the letter of the alphabet "P", "M99" denotes end of the subprogram, and "M30" denotes end of the program. (II) Machining Processing Machining processing performed by a comb-cutter lathe will now be described with reference to Fig. 9 showing a block diagram of an NC apparatus, and Fig. 10 showing a flowchart of machining processing. An NC tape 301 records NC data created by the NC tape creating apparatus of Fig. 2. A processor 302 responds to a read request produced by an operator's panel 303 by actuating an NC data reading device 304 to store, in a RAM 305, all of the NC data recorded on the NC tape 301. (1) When a start button on the operator's panel 303 is pressed under these conditions, the processor 302, under the control of a control program stored in a ROM 306, sets the sequence number i of the main program to 1, stores the sequence number in a general-purpose register 302a and reads the i-th block of NC data constituting the main program out of the RAM 305. (2) The processor 302 determines whether the read NC data is an instruction "M30" indicative of the end of the program. If it is, the processor ends NC processing. (3) If the NC data is not "M30", on the other hand, the processor 302 sets the sequence number j of a subprogram to 1 and stores the sequence number in a general-purpose register 302b. The processor 302 then goes to the RAM 305 and, from among the NC data read in step (1), reads out NC data belonging to the j-th block of the subprogram designated by the subprogram number which follows the letter of the alphabet "P" stored in a general-purpose register 302c. (4) The processor 302 determines whether the NC data belonging to the j-th block of the subprogram is "M99". (5) If the NC data is "M99", the following operation is performed: i + 1 → i after which the NC data belonging to the i-th block of the main program is read. Processing from step (2) onward is repeated. (6) If the NC data belonging to the i-th block of the subprogram is NC data for path control rather than "M99", however, ordinary path control processing is carried out. For example, if the NC data is data given by: G00 Xx r Zz r ; for moving the tool rest TBS from point P f (Fig. 4) to point P r , then the processor 303 calculates incremental values X j , Z j along the respective axes from point P f to point P r (actually, X j =0). Thereafter, velocity components F x , F z along the respective axes are calculated in accordance with the following equations from rapid-traverse velocity F r and X j , Y j , which are stored in a parameter memory 307: F x = F r ·X j /√ X j ² + Z j ² F x = F r ·Z j /√ X j ² + Z j ² Next, in accordance with the following equations, there are obtained traveling distances Δ X, Δ Z for movement along the respective axes during a period of time Δ T sec (= 8 msec) stored beforehand in the parameter memory 307: Δ X = F x Δ T Δ Z = F z Δ T These are stored in a working memory 308. When Δ X, Δ Z have been obtained, the processor 303 applies them as inputs to a pulse distributor 309 every Δ T sec. Based on the input data Δ X, Δ Z, the pulse distributor 309 performs simultaneous two-axis pulse distribution computations to generate distributed pulses X p , Z p , which are applied as inputs to X- and Z-axis servomotors 310X, 310Z. As a result, X- and Z-axis motors 311X, 311Z, respectively, for driving the tool rest, are rotated to transport the tool rest toward the point P r . The processor 303, in accordance with the following formulae, updates the present position X a , Z a along the respective axes every Δ T sec, X a , Z a having been stored in the working memory 303: X a ± Δ X → X a Z a ± Δ Z → Z a The sign depends upon the direction of movement. Similarly, in accordance with the following formulae, the processor updates remaining traveling distances X r , Z r (the initial values of which are X i , Z i , respectively) every Δ T sec, X r , Z r having been stored in the working memory 308: X r - Δ X → X r X r - Δ X → X r Z r - Δ Z → Z r When the tool rest TBS arrives as the point P r and the following condition is established, the processor 303 ends path control processing. (7) The processor 303 increments the sequence number j of the subprogram by performing the following operation: j + 1 → j reads the NC data belonging to the j-th block of the subprogram designated by the subprogram number stored in the general-purpose register 302c, and repeats processing from step (4) onward. If the NC data read next is path control NC data for moving the tool rest from point P r to point P t and path control processing similar to the foregoing is to be performed thereafter, the tool rest is positioned at point P t . Thus, according to the present invention, the arrangement is such that when changing tools in a comb-cutter lathe, the tool rest is temporarily retracted along the Z axis so that a tool will not interfere with the workpiece by being moved along the X axis in the next step, and the tool rest is then moved along the X axis to position a selected tool at the X coordinate of a point at which machining is be started by the tool. In changing tools, therefore, a tool will not interfere with the workpiece even when the tool rest is slid. Further, according to a development of the present invention, an NC part program for a comb-cutter lathe can be created merely by entering part dimensions, tool selection sequence, machining location and tool mounting position, etc., and the path followed by a tool rest can be generated automatically without specifying the path of the tool rest when selecting a tool. In addition, the present invention makes it possible to minimize the traveling distance of a tool rest at the time of tool selection so that the time required for exchanging tools can be reduced. While the foregoing description relates to a case where the two tools TL1, TL2 are provided in juxtaposition on the tool rest, the invention is not limited to two tools but can be applied to three or more. Further, though the description given above regards a transition from machining in the first quadrant to machining in the fourth quadrant, the invention is not limited to such but can be applied to various configurations in which machining is exercised from the fourth to the first quadrant or within one and the same quadrant, etc. In numerically controlling a comb-cutter lathe, the present invention prevents a tool from interfering with a workpiece, enables the path of a tool rest at the time of a tool change to be generated automatically, and minimizes the length of the tool path. The invention is therefore well-suited for application to control of a comb-cutter lathe.

Claims: A method of controlling a comb-cutter lathe in which one face of a tool rest (TBS) is provided with two or more juxtaposed tools (TL1,TL2) for subjecting a workpiece (WK) to machining by using predetermined tools in succession, wherein after machining is completed by one tool (TL1), the tool rest (TBS) is moved to position a subsequent tool (TL2) at a machining starting point position and machining is performed by said subsequent tool (TL2), comprising the following steps: calculating automatically the co-ordinate value of a point Pr for the tool rest (TBS) at which none of the tools (TL1,TL2) will contact the workpiece (WK) by the tool rest being moved across a free end of the workpiece (WK) in a direction (X-axis direction) at right angles to the longitudinal direction (Z-axis direction) of the workpiece (WK), the coordinate value z' of the point Pr being calculated from the following: z' = z + ΔZ + c where z is a Z-axis coordinate value of said machining starting point position, c is a clearance quantity, and Δz is a distance, along the Z axis, from a reference position of the tool rest (TBS) to a distal end of a tool (TL2) having the longest length among the tools mounted on said tool rest (TBS), calculating travelling distance ΔZ' in the Z-axis direction during a period of time ΔT sec, performing pulse distribution calculation based on the travelling distance ΔZ' every ΔT sec to produce distributed pulses, rotating a Z-axis motor by the distributed pulses resulting in movement of the tool rest (TBS) along the Z-axis from a present position to the point Pr after machining by the said one tool (TL1), thereafter calculating automatically the coordinate value of a point Pt, on the opposite side of the workpiece relative to the point Pr, for the tool rest (TBS) at which an X-axis position of the selected subsequent tool (TL2) will coincide with an X-axis coordinate value of said starting point position, the coordinate value X' of the point Pt being calculated from the following: x' = x + Δx where x is an X-axis coordinate value of said machining starting point position, and Δx is a distance, along the X axis, from a reference position of the tool rest (TBS) to a distal end of the subsequent tool (TL2), calculating travelling distance ΔX' in the X-axis direction during a period of time ΔT sec, performing pulse distribution calculation based on the travelling distance Δx' every ΔT sec to produce distributed pulses, rotating an X-axis motor by the distributed pulses resulting in movement of the tool rest (TBS) along the X-axis from the point Pr to the point Pt, and thenceforth performing machining with said selected subsequent tool (TL2). A method of controlling a comb-cutter lathe according to claim 1, characterized by entering at least part dimensions, tool selection sequence, a machining location of each tool, and mounting dimension information from a reference position of each tool, and sequentially performing machining based on these items of information by predetermined tools at machining locations assigned to said tools. A method of controlling a comb-cutter lathe according to claim 2, characterised by creating NC data for tool rest path control based on said input information, and controlling the position of the tool rest in accordance with said NC data.

Inventors: KISHI, HAJIMU, SEKI, MASAKI, TAKEGAHARA, TAKASHI
Applicants: FANUC LTD.
Application year: 1983
Main classification: B23B1
IPC codes: B23B1, G05B19