Control device for a machine tool
10133258 ยท 2018-11-20
Assignee
Inventors
- Rie Kawai (Aiko-gun, JP)
- Hideki Heishi (Aiko-gun, JP)
- Toshimasa Uetama (Aiko-gun, JP)
- Kenichi Ono (Aiko-gun, JP)
Cpc classification
G05B19/40937
PHYSICS
G05B2219/32325
PHYSICS
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G05B19/416
PHYSICS
G05B2219/35528
PHYSICS
G05B2219/36305
PHYSICS
International classification
G05B19/4093
PHYSICS
G05B19/416
PHYSICS
Abstract
A control apparatus for controlling a machine tool on the basis of a machining program is provided with a program analysis unit which analyzes an input machining program, a process table creation unit which, on the basis of the results of the analysis by the program analysis unit, creates a process table that sequentially lists processes according to the execution flow of the machining program, and a display unit which displays the process table created by the process table creation unit.
Claims
1. A control device for controlling a machine tool based on a machining program, comprising: a program analyzing section for analyzing the machining program which has been input; a process chart creating section for determining whether or not the machining program includes a tool changing command or a command for changing angle of surface to be machined, based on the analyzing by the program analyzing section, and creating a schedule by arranging processes of the machining program in an execution sequence of the machining program, wherein the machining processes are sorted in the schedule according to tools to be changed if a tool machining command is included in the machining program or according to the surface to be machined if a command for changing angle of the machined surfaces is included; and a displaying section for displaying the schedule created by the process chart creating section and the machine program at the same time.
2. The control device according to claim 1, further comprising an input section, the machining program being input through the input section along with tool data and workpiece data.
3. The control device according to claim 1, wherein it is determined whether or not a value of the tool number is stored in the memory region, when a tool changing command is detected, and an error is indicated if no tool number is stored in a memory region.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
DETAILED DESCRIPTION OF THE INVENTION
(13) With reference to the drawings, an embodiment of the invention will be described below.
(14) In
(15) A machining program 30, tool data 32 and workpiece data 34 are input into the input section 12. The machining program 30 can be generated by using for example a CAM system. The tool data 32 includes coded information of tools such as tool lengths, tool diameters the number of cutting edges, and the tool types i.e., end mill, drill and tap, associated with the tool numbers. The tool data 32 may be stored in a server in relation to all of the tools used in a factory. From the server, the tool data may be sent to the input section 12 via a LAN. The tool data may be input by a CAM operator or an operator of the machine tool 20. The workpiece data 34 is data relative to a workpiece coordinate system determining a point on a surface of the workpiece as the origin. The workpiece data 34 may be sent from a CAD system to the input section 12 via a LAN. The workpiece data may be input by a CAM operator or an operator of the machine tool 20.
(16) The machining program 30 input into the input section 12 is output to the reading and interpreting section 14 as shown by an arrow 12a. The reading and interpreting section 14 reads and interprets so that operation commands 14a are output. The operation commands include the feeding amounts and speeds in the X-, Y- and Z-axis directions. The operation commands 14a, which have been output by the reading and interpreting section 14, are sent to the interpolating section 16.
(17) The interpolating section 16 interpolates the operation commands 14, in the X-, Y- and Z-axis directions, via calculation based on an interpolation function, so that position commands (pulse position commands) 16a are output to the servo-control section 18 based on the respective X-, Y- and Z-axial feed speeds. Based on the respective X-, Y- and Z-axial position commands 16a, the servo-control section 18 outputs electric currents 18a to X-, Y- and Z-axial servomotors (not shown) of the machine tool 20, for driving X-, Y- and Z-axes of the machine tool 20 respectively.
(18) The machining program 30 is also sent to the program analyzing section 22 as shown by an arrow 12b. The program analyzing section 22 analyzes the machining program, written by G code or the like, so that the machining program is sent word by word to the process chart creating section 26, as shown by an arrow 22a. Further, an arrow 14b shows the information of the running program which is sent to the process chart creating section 26 from the reading and interpreting section 14. The process chart creating section 26 creates a process chart based on the machining program, which has been read word by word from the program analyzing section 22, and the tool data from the storing section 24. The process char is displayed on the displaying section 26.
(19) With reference to
(20) With reference to
(21) In
(22) The program for creating the schedule 102 of
(23) Although, schedule 200 shown in
(24) Further, as shown in
(25) With reference to a flow chart shown in
(26) After a schedule creating program is activated (step S10), the process chart creating section 26 reads one word of a machining program from the program analyzing section 22 (step S12). Then, through steps S14-S26, it is determined that the one word is the tool number, the spindle rotational speed, the speed of cutting feed, the positioning of a machined surface, the tool length correcting value, the tool diameter correcting value or the designation of an inclined surface. If the one word is one of the tool number, the spindle rotational speed, the speed of cutting feed, the positioning of a machined surface, the tool length correcting value, the tool diameter correcting value and the designation of an inclined surface, i.e., Yes at one of the steps S14-S26, then the command value is stored in a predetermined region of a memory (step S28), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(27) If the judgment is No at any one of the steps S14-S26, then it is determined whether or not the one word is a call command for calling a subprogram at step S30. If the one word is a call command for calling a subprogram (Yes at the step S30), then a command value of the subprogram is wrote to the schedule (step S34), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(28) If the one word is not a call command for calling a subprogram (No at the step S30), then it is determined whether or not the one word is a designation command for designating a workpiece coordinate system, at step S32. If the one word is a designation command for designating a workpiece coordinate system (Yes at the step S32), then the command value of designation of the workpiece coordinate system is wrote to the schedule, and the flow goes back to the step S12 so that the next one word of the machining program is read.
(29) If the one work is not a designation of a workpiece coordinate system (No at the step S32), then it is determined whether or not the one word is a tool changing command, at step S34. If the one word is a tool changing command (Yes at the step S34), it is determined whether or not a value of the tool number is stored in the memory region (step S36). At the step 36, if no tool number is stored in the memory region (Yes at the step S36), then a warning (error) is indicated in the schedule (step S40). If a tool number is stored in the memory region (No at the step 36), then the value (the tool number) which is stored in the memory is wrote to the schedule, the memory region is cleared (the step S38), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(30) If the one word is not a tool changing command (No at the step S34), then it is determined whether or not the one word is a spindle activating command at step S42. If the one word is a spindle activating command (Yes at the step S42), then it is determined whether or not a value of the spindle rotational speed is stored in the memory region (step S44). At the step S44, if no spindle rotational speed is stored in the memory region (Yes at the step S44), then a warning (error) is indicated in the schedule (step S46).
(31) If a spindle rotational speed is stored in the memory region (No at the step 44), then the value (the spindle rotational speed) which is stored in the memory is wrote to the schedule, the memory region is cleared (the step S38), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(32) If the one word is not a spindle activating command (No at the step S42), then it is determined whether or not the one word is a tool length correcting command at step S48. If the one word is a tool length correcting command (Yes at the step S48), then it is determined whether or not a tool length correcting value is stored in the memory region (step S50). At the step S50, if no tool length correcting value is stored in the memory region (Yes at the step S50), then a warning (error) is indicated in the schedule (step S52).
(33) If a tool length correcting value is stored in the memory region (No at the step 50), then the value (the tool length correcting value) which is stored in the memory is wrote to the schedule, the memory region is cleared (the step S38), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(34) If the one word is not a tool length correcting command (No at the step S48), then it is determined whether or not the one word is a tool diameter correcting command at step S54. If the one word is a tool diameter correcting command (Yes at the step S54), then it is determined whether or not a tool diameter correcting value is stored in the memory region (step S56). At the step S56, if no tool diameter correcting value is stored in the memory region (Yes at the step S56), then a warning (error) is indicated in the schedule (step S60). If a tool diameter correcting value is stored in the memory region (No at the step 56), then the value (the tool diameter correcting value) which is stored in the memory is wrote to the schedule, the memory region is cleared (the step S58), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(35) If the one word is not a tool diameter correcting command (No at the step S54), then it is determined whether or not the one word is an inclined surface designating command at step S62. If the one word is an inclined surface designating command (Yes at the step S62), then it is determined whether or not an inclined surface designating value is stored in the memory region (step S64). At the step S64, if no inclined surface designating correcting value is stored in the memory region (Yes at the step S64), then a warning (error) is indicated in the schedule (step S66). If an inclined surface designating value is stored in the memory region (No at the step S64), then the value (the inclined surface designating value) which is stored in the memory is wrote to the schedule, the memory region is cleared (the step S58), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(36) If the one word is not an inclined surface designating command (No at the step S62), then it is determined whether or not the one word is a cutting mode switching command at step S68. If the one word is not a cutting mode switching command (No at the step S68), then it is determined whether or not the one word is a program ending command at step S70. If it is a program ending command (Yes at the step S70), then the schedule creating program is ended (step S72). If it is not a program ending command, then the flow goes back to the step S12 so that the next one word of the machining program is read.
(37) If the one word is a cutting mode switching command (Yes at the step S68), then it is determined whether or not the cutting mode switching command is a switching command from a rapid feed mode to a cutting feed mode. If the one word is not a switching command from a rapid feed mode to a cutting feed mode (No at the step S74), then the flow goes back to the step S12 so that the next one word of the machining program is read.
(38) If the one word is a switching command from a rapid feed mode to a cutting feed mode, i.e., a command for starting a cutting process (Yes at the step S74), an angle information of the machined surface is wrote to the schedule (step S76), if the angle of the machined surface is changed. Then, it is determined whether or not a cutting feed speed is stored in a predetermined memory region (step S78). At the step S78, if no cutting feed speed is stored in the memory region (Yes at the step S78), then a warning (error) is indicated in the schedule (step S82), and the flow goes back to the step S12 so that the next one word of the machining program is read. If a cutting feed speed is stored in the memory region (No at the step S78), then the cutting feed speed is wrote to the schedule (step S80), and the flow goes back to the step S12 so that the next one word of the machining program is read.
(39) The schedule of
(40) As described above, an error is indicated when a necessary program information is not described in a machining program or there is no subprogram which should be called, enabling the machining program to be corrected easily.
REFERENCE SIGNS LIST
(41) 10 Control Device 12 Input Section 14 Reading and Interpreting Section 16 Interpolating Section 18 Servo-Control Section 20 Machine Tool 22 Program Analyzing Section 24 Storing Section 26 Process Chart Creating Section 28 Displaying Section 30 Machining Program 32 Tool Data 34 Workpiece Data