Program generation device and machine tool
By storing the association between the rotating coordinate system and tool identification information in the program generation device, simplified coordinate transformation execution instructions are generated, which solves the readability and error problems caused by the complexity of coordinate transformation in the prior art, and achieves higher readability and reliability of machining programs.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-09-29
- Publication Date
- 2026-03-24
AI Technical Summary
Existing numerical control devices require complex coordinate system rotation information to generate machining programs with coordinate transformation instructions, which reduces the readability of the machining program and may cause machining errors.
The program generation device stores the association between coordinate values in the rotating coordinate system and tool identification information through the information storage unit, the execution instruction generation unit generates coordinate transformation execution instructions, and the program generation unit generates a coordinate transformation program containing these instructions, thus simplifying the coordinate transformation process.
It improves the readability of the machining process and reduces the occurrence of machining errors.
Smart Images

Figure CN116261695B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to a program generation device and a machine tool. BACKGROUND
[0002] Conventionally, a machining program is generated in a numerical control device having a coordinate conversion function. In the numerical control device having the coordinate conversion function, a machining program that instructs a movement path of a tool is generated using coordinate values in a coordinate system in which a coordinate system that becomes a reference is rotated around a predetermined axis by a predetermined angle, for example. In this case, the coordinate values that instruct the movement path are coordinate-converted into coordinate values in the coordinate system that becomes the reference, and the movement of the tool is controlled based on the coordinate values after the coordinate conversion.
[0003] PRIOR ART DOCUMENTS
[0004] PATENT DOCUMENTS
[0005] Patent Document 1: Japanese Patent Application Laid-Open No. 3-269604 SUMMARY
[0006] PROBLEMS TO BE SOLVED BY THE INVENTION
[0007] However, in the case where the machining program that instructs the coordinate conversion is generated in the conventional numerical control device, information such as a rotation center of the coordinate system, a rotation direction, and a rotation amount needs to be written in the machining program. Therefore, the machining program becomes complicated, and the readability of the machining program can be reduced. In addition, if the readability of the machining program is reduced, a machining error of a workpiece can be caused.
[0008] An object of the present disclosure is to provide a program generation device and a machine tool that can improve the readability of a machining program and reduce a machining error.
[0009] MEANS FOR SOLVING THE PROBLEMS
[0010] The program generation device includes an information storage section that stores coordinate conversion information for coordinate-converting coordinate values in a rotated coordinate system into coordinate values in a reference coordinate system in association with identification information assigned to a tool, an execution instruction generation section that generates an execution instruction of the coordinate conversion based on the coordinate conversion information stored in the information storage section, and a program generation section that generates a coordinate conversion program including the execution instruction generated by the execution instruction generation section.
[0011] EFFECT OF THE INVENTION
[0012] According to the present disclosure, the readability of a machining program can be improved, and a machining error can be reduced. BRIEF DESCRIPTION OF DRAWINGS
[0013] Figure 1 is a drawing that shows an example of a hardware structure of a program generation device.
[0014] Figure 2 is a block diagram showing an example of the function of the program generation apparatus.
[0015] Figure 3 is a diagram showing the relationship between the reference coordinate system and the rotary coordinate system.
[0016] Figure 4 is a diagram showing an example of the information stored in the information storage section in the first embodiment.
[0017] Figure 5 is a diagram showing an example of the coordinate conversion program.
[0018] Figure 6 is a diagram showing an example of the machining program.
[0019] Figure 7 is a flowchart showing an example of the processing performed when machining the workpiece.
[0020] Figure 8 is a diagram showing the machining direction and the plunge direction that become the reference.
[0021] Figure 9 is a diagram showing an example of the information stored in the information storage section in the second embodiment.
[0022] Figure 10 is a diagram showing the positioning of the tool.
[0023] Figure 11 is a diagram showing the positioning of the tool.
[0024] Figure 12 is a diagram showing an example of the information stored in the information storage section in the third embodiment.
[0025] Figure 13 is a diagram showing another example of the coordinate conversion program.
[0026] Figure 14 is a diagram showing another example of the machining program. DETAILED DESCRIPTION
[0027] [First Embodiment]
[0028] Hereinafter, the first embodiment will be described using the drawings.
[0029] Figure 1is a drawing showing an example of a hardware structure of a program generation device. The program generation device 1 is, for example, a device that generates a coordinate conversion program that performs coordinate conversion of coordinate values instructed in a machining program. The program generation device 1 is, for example, installed in a PC (Personal Computer) or a numerical control device that controls a machine tool. Here, an example in which the program generation device 1 is installed in a PC is described.
[0030] The program generation device 1 includes a CPU (Central Processing Unit) 2, a bus 3, a ROM (Read Only Memory) 4, a RAM (Random Access Memory) 5, and a nonvolatile memory 6.
[0031] The CPU 2 is a processor that controls the entire program generation device 1 according to a system program. The CPU 2 reads out the system program and the like stored in the ROM 4 via the bus 3.
[0032] The bus 3 is a communication path that connects each hardware in the program generation device 1 to each other. Each hardware in the program generation device 1 exchanges data via the bus 3.
[0033] The ROM 4 is a storage device that stores a system program and the like for controlling the entire program generation device 1.
[0034] The RAM 5 is a storage device that temporarily stores various data. The RAM 5 temporarily stores data for display, data input from the outside, and the like. The RAM 5 functions as a work area for the CPU 2 to process various data.
[0035] The nonvolatile memory 6 is a storage device that retains data even in a state in which the power supply to the program generation device 1 is turned off or in which the program generation device 1 is not supplied with power. The nonvolatile memory 6 is, for example, constituted by an SSD (Solid State Drive). The nonvolatile memory 6 stores, for example, a coordinate conversion program generated by the program generation device 1 and various information input from the input device 10.
[0036] The program generation device 1 further includes a first interface 7 and a second interface 8.
[0037] The first interface 7 is an interface that connects the bus 3 and a display device 9. The first interface 7 sends, for example, various data processed by the CPU 2 to the display device 9.
[0038] The display device 9 is a device that accepts various data via the first interface 7 and displays the various data. The display device 9 displays, for example, the coordinate conversion program and the like stored in the non-volatile memory 6. The display device 9 is a display such as an LCD (Liquid Crystal Display).
[0039] The second interface 8 is an interface that connects the bus 3 with the input device 10. The second interface 8 sends, for example, data input from the input device 10 to the CPU 2 via the bus 3.
[0040] The input device 10 is a device for inputting various data. The input device 10 accepts, for example, input of coordinate conversion information of each tool, and sends it to the non-volatile memory 6 via the second interface 8. The coordinate conversion information will be described later in detail. The input device 10 is, for example, a keyboard and a mouse. In addition, the input device 10 and the display device 9 can also be configured as one device like a touch panel, for example.
[0041] Next, the functions of each part of the program generation device 1 will be described.
[0042] Figure 2 is a block diagram showing an example of the functions of the program generation device 1. The program generation device 1 has, for example, an information storage part 11, an execution instruction generation part 12, a program generation part 13, and an output part 14.
[0043] The information storage part 11 is realized by storing data input from the input device 10 or the like, or the operation result of the operation processing of the CPU 2 in the RAM 5 or the non-volatile memory 6. In addition, the execution instruction generation part 12, the program generation part 13, and the output part 14 are realized by the CPU 2 performing operation processing using the system program and various data stored in the ROM 4, for example. The CPU 2 uses the RAM 5 as a work area to perform operation processing.
[0044] The information storage part 11 stores coordinate conversion information for converting a coordinate value in a rotary coordinate system into a coordinate value in a reference coordinate system.
[0045] A coordinate system refers to a general term for an origin that becomes a reference, a coordinate axis, and the like for indicating a position on a machine tool. The coordinate system is, for example, a 3-axis orthogonal coordinate system composed of an X-axis, a Y-axis, and a Z-axis that are orthogonal to each other.
[0046] Here, a machine tool is explained. The machine tool performs machining of a workpiece based on coordinate values in a reference coordinate system that becomes a reference for control of each axis. In the case where the machine tool is a machining center, the reference coordinate system is set, for example, so that the Z axis is parallel to the spindle, and the X and Y axes are each parallel to the moving direction of the table. Also, in the case where the machine tool is a lathe, the reference coordinate system is set, for example, so that the Z axis is parallel to the spindle, and the X and Y axes are each parallel to the moving direction of the tool post.
[0047] The rotary coordinate system is a coordinate system set in correspondence with the orientation of the tool or the direction of cutting of the tool, and is a coordinate system in which the reference coordinate system is rotated by a predetermined angle about a predetermined axis. The rotary coordinate system can also be a coordinate system that is moved parallel in a predetermined axial direction as needed.
[0048] Figure 3 is a diagram that explains the relationship between the reference coordinate system and the rotary coordinate system. The Z axis of the reference coordinate system Cc is parallel to the length direction of the spindle S, and the X and Y axes are each parallel to the moving direction of the table TB. The Z axis of the rotary coordinate system Cr is parallel to the length direction of the tool T. The rotary coordinate system Cr is a coordinate system in which the reference coordinate system Cc is rotated by an angle θ about the X axis. The origin of the reference coordinate system Cc and the origin of the rotary coordinate system Cr do not necessarily have to coincide. The origin of the rotary coordinate system Cr can also be a point that is moved parallel by ΔX, ΔY, ΔZ in the X, Y, Z axial directions, respectively, from the origin of the reference coordinate system Cc.
[0049] The coordinate conversion information is information for converting coordinate values in the rotary coordinate system Cr into coordinate values in the reference coordinate system Cc. The coordinate conversion information is, for example, coordinate difference information that indicates the difference between the reference coordinate system Cc and the rotary coordinate system Cr. The coordinate difference information contains information indicating the rotation center of the rotary coordinate system Cr and information indicating the rotation angle. However, the coordinate difference information does not contain the parallel movement amounts ΔX, ΔY, ΔZ from the origin of the reference coordinate system Cc to the origin of the rotary coordinate system Cr.
[0050] The coordinate conversion information is set in accordance with the mounting direction of the tool T with respect to the spindle S. In the example shown in Figure 3 In this case, the information contains the X axis that indicates the rotation center of the rotary coordinate system Cr and the angle θ.
[0051] Also, the information storage section 11 stores the coordinate conversion information in association with the unique identification information assigned to each tool T. The unique identification information assigned to the tool T is, for example, the tool number of each tool T. The information storage section 11 can also store information indicating the tool type in association with the unique identification information of each tool T.
[0052] Figure 4 is a diagram showing an example of information stored in the information storage section 11. The information storage section 11 stores information showing the tool type and coordinate conversion information in association with the tool number.
[0053] Specifically, in the tool number 11, "drill" is stored as the tool type in association, and "X: 45" is stored as the coordinate conversion information in association. "X: 45" indicates that the rotary coordinate system Cr is rotated by 45° around the X-axis of the reference coordinate system Cc. In other words, it indicates that the tool T is installed in an orientation rotated by 45° around the X-axis with respect to the length direction of the spindle S.
[0054] In the tool number 12, "tap" is stored as the tool type in association, and "X: 45" is stored as the coordinate conversion information in association.
[0055] In the tool number 13, "end mill" is stored as the tool type in association, and "Null" is stored as the coordinate conversion information in association. "Null" indicates that there is no difference between the rotary coordinate system Cr and the reference coordinate system Cc, and the length direction of the tool T is installed in parallel with the length direction of the spindle S.
[0056] The coordinate conversion information is inputted from the input device 10 by the user, for example, and stored in the information storage section 11.
[0057] Here, the description of Figure 2 will be returned to.
[0058] The execution instruction generation section 12 generates an execution instruction of coordinate conversion for each identification information based on the coordinate conversion information stored in the information storage section 11. For example, in the case where the information shown in Figure 4 is stored in the information storage section 11, the execution instruction generation section 12 generates an execution instruction "ROTX DEG=45.0" of coordinate conversion that rotates the coordinate value of the moving path of the drill of the instruction tool number 11 by 45° around the X-axis. In other words, the execution instruction generation section 12 generates an execution instruction of coordinate conversion that converts the coordinate value in the rotary coordinate system Cr rotated by 45° around the X-axis with respect to the reference coordinate system Cc into the coordinate value in the reference coordinate system Cc.
[0059] In addition, the execution instruction generation section 12 generates an execution instruction "ROTX DEG=45.0" of coordinate conversion that rotates the coordinate value of the moving path of the tap of the tool number 12 by 45° around the X-axis.
[0060] On the other hand, the coordinate conversion information "Null" is stored in association in the tool number 13. Therefore, the execution instruction generation section 12 generates an execution instruction "DO NOTHING" that does not perform coordinate conversion on the coordinate value of the moving path of the end mill of the instruction tool number 13.
[0061] Here, the explanation of Figure 2 is returned.
[0062] The program generation section 13 generates a coordinate conversion program containing the execution instruction of the coordinate conversion generated by the execution instruction generation section 12.
[0063] Figure 5 is a diagram showing an example of the coordinate conversion program generated by the program generation section 13. Figure 5 The coordinate conversion program shown in Figure 4 is a coordinate conversion program generated in a case where the information shown in
[0064] In this coordinate conversion program, the execution instruction to be executed in correspondence with the identification information is specified by the SWITCH statement.
[0065] Specifically, for the tool of tool number 11, the execution instruction of the coordinate conversion that rotates the coordinate value by 45° around the X axis is specified. For the tool of tool number 12, the execution instruction of the coordinate conversion that rotates the coordinate value by 45° around the X axis is specified. For the tool of tool number 13, the execution instruction of the coordinate conversion that does not perform the coordinate conversion of the coordinate value is specified.
[0066] The output section 14 outputs the coordinate conversion program generated by the program generation section 13. The output section 14, for example, outputs the coordinate conversion program to the numerical control device 22 of the machine tool 21 connected to the program generation device 1 via the Internet line 20.
[0067] Here, the numerical control device 22 is explained. The numerical control device 22 is a device that controls each axis of the machine tool 21 in accordance with a machining program, and performs cutting processing of a workpiece.
[0068] Figure 6 is a diagram showing an example of the machining program executed in the numerical control device 22.
[0069] The instruction "M6 T11" of the first line is a tool change instruction to the tool T of tool number 11.
[0070] The instructions "G90" and "G00 X0.0 Y0.0 Z10.0" of the second line are an absolute instruction and a positioning instruction of the tool T, respectively. These instructions are instructions that position the tool T at the position (0.0, 0.0, 10.0) in the reference coordinate system Cc.
[0071] The instructions "G68.1" and "X0.0 Y-20.0 Z-20.0" in the third line represent the coordinate transformation instruction and the parallel translation amount from the origin of the reference coordinate system Cc to the origin of the rotating coordinate system Cr, respectively. This parallel translation amount is specified by the coordinate values in the reference coordinate system Cc. Furthermore, if only "G68.1" is specified, it is considered that no parallel translation amount exists. That is, the origin of the reference coordinate system Cc coincides with the origin of the rotating coordinate system Cr. The coordinate transformation instruction converts the coordinate values up to the point where the coordinate transformation is canceled into coordinate values in the reference coordinate system Cc. In other words, the coordinate values written between the coordinate transformation instruction and the coordinate transformation cancellation instruction are coordinate values in the rotating coordinate system Cr, and the coordinates are converted to coordinate values in the reference coordinate system Cc through the coordinate transformation execution instruction.
[0072] The instruction "G00 X10.0 Y-20.0Z5.0" in the fourth line is a positioning instruction. The coordinate values in this positioning instruction are the coordinate values in the rotating coordinate system Cr.
[0073] The instruction "M3 S1000" on the fifth line is the spindle forward rotation instruction. The spindle forward rotation instruction causes the spindle S to rotate forward at a speed of 1,000 rpm.
[0074] The instruction "G01 Z-20.0F0.1" on the sixth line is a linear interpolation instruction. This linear interpolation instruction moves tool T to the position Z: -20.0 at a feed rate of 0.1 [mm / rev].
[0075] The instruction "G69" on line nine is the coordinate transformation cancellation instruction. This instruction cancels the coordinate transformation.
[0076] The numerical control device 22 obtains these machining instruction information from the machining program.
[0077] Next, the process of the numerical control device 22 reading the coordinate transformation program from the program generation device 1 and then executing the machining program will be explained.
[0078] For example, reading from the numerical control device 22 Figure 5 The coordinate transformation program shown was executed. Figure 6 In the case of the machining procedure shown, the numerical control device 22 performs coordinate transformation on the coordinate values of the movement path of the tool T representing tool number 11 based on the coordinate transformation procedure.
[0079] Specifically, the numerical control device 22 performs coordinate conversion on the coordinate value (10.0, -20.0, 5.0) in the positioning command of the tool T of the tool number 11 and the coordinate value (10.0, -20.0, -20.0) in the linear interpolation command based on the execution command "ROTXDEG=45.0" and the parallel movement amount "X0.0Y-20.0Z-20.0" from the origin of the reference coordinate system Cc when reading in the coordinate conversion command "G68.1". That is, the numerical control device 22 performs coordinate conversion of the coordinate value (10.0, -20.0, 5.0) and the coordinate value (10.0, -20.0, -20.0) from the coordinate value in the rotated coordinate system Cr to the coordinate value in the reference coordinate system Cc by rotating the coordinate value (10.0, -20.0, 5.0) and the coordinate value (10.0, -20.0, -20.0) by 45° around the X axis and moving the X axis, the Y axis, and the Z axis directions by 0.0, -20.0, and -20.0, respectively.
[0080] The numerical control device 22 generates a coordinate conversion matrix for converting the coordinate value in the rotated coordinate system Cr to the coordinate value in the reference coordinate system Cc, for example, based on the execution command included in the coordinate conversion program. In the case where the rotated coordinate system Cr is a coordinate system rotated by an angle θ around the X axis with respect to the reference coordinate system Cc, the numerical control device 22 multiplies the coordinate conversion matrix Rx(θ) shown in the following Expression 1 by the coordinate value specified by the machining program. Thereby, it is possible to convert the coordinate value in the rotated coordinate system Cr acquired from the machining program to the coordinate value in the reference coordinate system Cc.
[0081] [Expression 1]
[0082]
[0083] The numerical control device 22 performs control of each axis based on the coordinate value in the reference coordinate system Cc. In the case where the coordinate conversion command is specified in the machining program, the numerical control device 22 controls the movement of the tool T based on the coordinate value after the coordinate conversion.
[0084] Next, the processing performed in the program generation device 1 at the time of generating the coordinate conversion program will be described.
[0085] Figure 7 is a flowchart showing the processing performed in the program generation device 1 at the time of generating the coordinate conversion program.
[0086] First, the execution command generation section 12 acquires the coordinate conversion information stored in the information storage section 11 (step SA01).
[0087] Next, the execution command generation section 12 generates the execution command for the coordinate conversion for each identification information based on the acquired coordinate conversion information (step SA02).
[0088] Next, the program generation unit 13 generates a coordinate transformation program based on the execution instructions for coordinate transformation of each identification information generated by the execution instruction generation unit 12 (step SA03).
[0089] Finally, the output unit 14 outputs the coordinate transformation program generated by the program generation unit 13. (Step SA04).
[0090] As described above, the program generation apparatus 1 of the first embodiment includes: an information storage unit 11, which stores coordinate transformation information for converting coordinate values in a rotating coordinate system to coordinate values in a reference coordinate system in association with identification information assigned to a tool; an execution instruction generation unit 12, which generates an execution instruction for coordinate transformation based on the coordinate transformation information stored in the information storage unit 11; and a program generation unit 13, which generates a coordinate transformation program containing the execution instruction generated by the execution instruction generation unit 12.
[0091] Therefore, it is unnecessary to write information such as the rotation center, rotation direction, and rotation amount of the coordinate system used for coordinate transformation into the machining program. As a result, the readability of the machining program can be improved and machining errors can be reduced.
[0092] Furthermore, in the program generation apparatus 1 of the first embodiment, the coordinate transformation information includes coordinate difference information representing the difference between the rotating coordinate system and the reference coordinate system, and the execution instruction generation unit 12 generates execution instructions based on the coordinate difference information. Therefore, the information stored in the information storage unit 11 can be simplified.
[0093] [Second Implementation]
[0094] Next, the second embodiment will be described using the accompanying drawings. Furthermore, descriptions of structures identical to those in the first embodiment will be omitted.
[0095] like Figure 2 As shown, the program generation device 1 includes, for example, an information storage unit 11, an execution instruction generation unit 12, a program generation unit 13, and an output unit 14.
[0096] The information storage unit 11 stores coordinate transformation information used to convert coordinate values in the rotating coordinate system Cr to coordinate values in the reference coordinate system Cc. The coordinate transformation information includes reference direction information and tangent direction information.
[0097] Reference direction information refers to the machining direction that serves as the reference, determined according to the type of tool. For example, when tool T is a turning tool such as a lathe tool, the machining direction that serves as the reference is the -X direction in the reference coordinate system Cc.
[0098] The cutting direction information is information indicating the cutting direction of the tool T. For example, in the case where the turning tool is installed substantially in parallel with the X-Z plane in the reference coordinate system Cc and cuts in the -X direction, the cutting direction of the turning tool is the -X direction. In this case, the machining direction that becomes the reference and the cutting direction of the tool T coincide.
[0099] On the other hand, in the case where the turning tool is installed substantially in parallel with the Y-Z plane in the reference coordinate system Cc and cuts in the -Y direction, the cutting direction of the turning tool is the -Y direction. In this case, the cutting direction of the tool becomes a direction in which the machining direction that becomes the reference is rotated 90° about the Z axis.
[0100] Figure 8 is a diagram illustrating the machining direction that becomes the reference and the cutting direction. In Figure 8 In this case, the machining direction that becomes the reference is the -X direction in the reference coordinate system Cc. In addition, the turning tool Tt is installed substantially in parallel with the Y-Z plane in the reference coordinate system Cc and cuts in the -Y direction when machining the workpiece. Therefore, the cutting direction of the turning tool Tt becomes a direction in which the machining direction that becomes the reference is rotated 90° about the Z axis.
[0101] Figure 9 is a diagram indicating an example of information stored in the information storage section 11. In the information storage section 11, information indicating the tool type, the reference direction information, and the cutting direction information are stored in association with the tool number.
[0102] Specifically, in the tool number 121, "turning" is stored in association as the tool type, "-X" is stored in association as the reference direction information, and "Null" is stored in association as the cutting direction information. In this case, the cutting direction of the tool T is the -X direction, which is the same as the machining direction that becomes the reference.
[0103] In the tool number 122, "turning" is stored in association as the tool type, "-X" is stored in association as the reference direction information, and "-Y" is stored in association as the cutting direction information. In this case, the tool T is installed substantially in parallel with the Y-Z plane in the reference coordinate system Cc and cuts in the -Y direction.
[0104] In the tool number 123, "thread cutting" is stored in association as the tool type, "-X" is stored in association as the reference direction information, and "Null" is stored in association as the cutting direction information. In this case, the cutting direction of the thread cutting tool coincides with the machining direction that becomes the reference.
[0105] The instruction execution generation section 12 (refer toFigure 2 The coordinate transformation execution instruction is generated based on the difference between the direction represented by the reference direction information stored in the information storage unit 11 and the direction represented by the cutting direction information.
[0106] For example, the information storage unit 11 stores Figure 9 In the case shown, the execution instruction generation unit 12 generates a coordinate transformation execution instruction based on the reference direction information "-X" and the cutting direction information "-Y" associated with tool number 122. Here, the difference between the cutting direction of the turning tool Tt of tool number 122 and the machining direction that serves as the reference is 90° around the Z-axis. In this case, the rotating coordinate system Cr is a coordinate system that rotates the reference coordinate system Cc by 90° around the Z-axis. Therefore, the execution instruction generation unit 12 generates an execution instruction "ROTZ DEG = 90.0" that rotates the coordinate values of the movement path of the turning tool Tt of instruction tool number 122 by 90° around the Z-axis. In other words, the execution instruction generation unit 12 generates an execution instruction that converts the coordinate values in the rotating coordinate system Cr, which is rotated 90° around the Z-axis relative to the reference coordinate system Cc, into the coordinate values in the reference coordinate system Cc.
[0107] In addition, the cutting direction information of the turning tool Tt of tool number 121 and the thread cutting tool of tool number 123 is "Null". Therefore, the execution instruction generation unit 12 generates an execution instruction "DO NOTHING" that does not perform coordinate transformation on the coordinate values of the movement path of the turning tool Tt of tool number 121 and the thread cutting tool of tool number 123.
[0108] The program generation unit 13 generates a program containing execution instructions generated by the execution instruction generation unit 12 according to each identification information, which are coordinate transformations.
[0109] The output unit 14 outputs the coordinate transformation program generated by the program generation unit 13. For example, the output unit 14 outputs the coordinate transformation program to the numerical control device 22, which is connected to the program generation device 1 via an Internet line.
[0110] As explained above, in the program generation apparatus 1 of the second embodiment, the coordinate transformation information includes reference direction information indicating the machining direction of the tool T set according to each identification information and cutting direction information indicating the cutting direction of the tool T. The execution instruction generation unit 12 generates an execution instruction based on the difference between the direction indicated by the reference direction information and the direction indicated by the cutting direction information.
[0111] Therefore, it is unnecessary to write information such as the rotation center, rotation direction, and rotation amount of the coordinate system used for coordinate transformation into the machining program. As a result, the readability of the machining program can be improved and machining errors can be reduced.
[0112] [Third Embodiment]
[0113] Next, the third embodiment will be described using the drawings. For the same structure as the first embodiment, the description will be omitted.
[0114] As Figure 2 indicated, the program generation device 1 is provided with, for example, an information storage section 11, an execution instruction generation section 12, a program generation section 13, and an output section 14.
[0115] The information storage section 11 stores coordinate conversion information for converting coordinate values in the rotary coordinate system Cr to coordinate values in the reference coordinate system Cc. The coordinate conversion information includes coordinate difference information indicating the difference between the reference coordinate system Cc and the rotary coordinate system Cr.
[0116] The coordinate difference information includes, for example, information indicating the rotation center of the rotary coordinate system Cr and information indicating the rotation angle. In addition, the coordinate difference information can be determined in correspondence with the information indicating the rotation center of the rotary coordinate system Cr and the information indicating the rotation angle and the position information indicating the position of the tool T at the start of cutting.
[0117] For example, in the case where the position information indicating the position of the turning tool is Y > 0.0, the coordinate difference information is Z: 90. The case where the position information is Y > 0.0 means, for example, as Figure 10 indicated, the case where the turning tool Tt is positioned on the +Y side in the Y-Z plane of the reference coordinate system Cc at the start of cutting. In this case, the cutting-in direction of the tool T is the -Y direction.
[0118] On the other hand, in the case where the position information indicating the position of the turning tool is Y < 0.0, the coordinate difference information is Z: 270. Regarding the case where the position information is Y < 0.0, for example, as Figure 11 indicated, the case where the turning tool Tt is positioned on the -Y side in the Y-Z plane of the reference coordinate system Cc at the start of cutting. In this case, the cutting-in direction of the tool T is the +Y direction.
[0119] Figure 12 is a diagram indicating an example of the information stored in the information storage section 11. In the information storage section 11, information indicating the tool type and coordinate difference information are stored in association with the tool number.
[0120] Specifically, in the tool number 131, "turning" is stored as the tool type in association and "Null" is stored as the coordinate difference information. In this case, the coordinate conversion of the coordinate values of the movement path of the tool T of the instruction tool number 131 is not performed.
[0121] In the tool number 132, "Turning" is stored as the tool kind, and "IF Y>0.0" "THEN Z:90" "ELSE Z:270" is stored as the tool difference information. That is, in a case where the position information of the tool T is Y>0.0, a rotation coordinate system Cr that rotates 90° with respect to the Z axis from the reference coordinate system Cc is set. In addition, in a case where the position information of the tool is Y<0.0, a rotation coordinate system Cr that rotates 270° with respect to the Z axis from the reference coordinate system Cc is set.
[0122] In the tool number 133, "Thread cutting" is stored as the tool kind, and "Null" is stored as the tool conversion information.
[0123] The execution instruction generating section 12 (refer to Figure 2 ) generates an execution instruction of coordinate conversion for each identification information on the basis of the coordinate conversion information stored in the information storing section 11. For example, in a case where the information shown in Figure 12 is stored in the information storing section 11, the execution instruction generating section 12 generates an execution instruction "DO NOTHING" that does not perform coordinate conversion of the coordinate values of the movement path of the turning tool of the instruction tool number 131.
[0124] In addition, the execution instruction generating section 12 generates an execution instruction "ROTZ DEG=90.0" that rotates the coordinate values of the movement path of the turning of the instruction tool number 132 by 90° with respect to the Z axis or an execution instruction "ROTZ DEG=270.0" that rotates the coordinate values of the movement path of the turning by 270° with respect to the Z axis on the basis of the position at which the tool is positioned.
[0125] In addition, the execution instruction generating section 12 generates an execution instruction "DO NOTHING" that does not perform coordinate conversion of the coordinate values of the movement path of the thread cutting of the instruction tool number 133.
[0126] The program generating section 13 generates a program that includes the execution instruction of coordinate conversion generated by the execution instruction generating section 12 for each identification information.
[0127] Figure 13 is a drawing that shows an example of the coordinate conversion program generated by the program generating section 13. Figure 13 The coordinate conversion program shown in Figure 12 is generated in a case where the information shown in is stored in the information storing section 11. In this coordinate conversion program, the execution instruction that is executed in correspondence with the identification information is defined by the SWITCH statement.
[0128] Specifically, coordinate conversion of the coordinate values of the movement path of the tool of the instruction tool number 131 is not defined.
[0129] In addition, for the tool with the tool number 132, it is specified that the coordinate values are rotated 90° around the Z axis in the case where the tool T is positioned on the +Y side in the reference coordinate system Cc, and the coordinate values are rotated -270° around the Z axis in the case where the tool is positioned on the -Y side in the reference coordinate system Cc.
[0130] In addition, for the coordinate values of the movement path of the tool with the tool number 133, it is specified that no coordinate conversion is performed.
[0131] The output section 14 outputs the coordinate conversion program generated by the program generation section 13. The output section 14 outputs the coordinate conversion program, for example, to the numerical control device 22 connected to the program generation device 1 via an Internet line.
[0132] For example, in the case where the coordinate conversion program shown in FIG. 6 is read into the numerical control device 22, and the machining program shown in FIG. 7 is executed, the numerical control device 22 performs coordinate conversion on the coordinate values representing the movement path of the tool T with the tool number 132, based on the coordinate conversion program. Figure 13 Figure 14 For example, in the case where the coordinate conversion program shown in FIG. 6 is read into the numerical control device 22, and the machining program shown in FIG. 7 is executed, the numerical control device 22 performs coordinate conversion on the coordinate values representing the movement path of the tool T with the tool number 132, based on the coordinate conversion program.
[0133] Specifically, the numerical control device 22 performs coordinate conversion on the coordinate values of the positioning command and the linear interpolation command based on the position information representing the position of the tool T, when the coordinate conversion command "G68.1" is read. Here, the tool T is positioned on the +Y side when the coordinate conversion command is read. That is, the position information is Y > 0.0. Therefore, the numerical control device 22 performs coordinate conversion on the coordinate values representing the movement path of the tool with the tool number 132 based on the execution command "ROTZ DEG=90.0". That is, the numerical control device 22 performs coordinate conversion from the coordinate values in the rotary coordinate system Cr to the coordinate values in the reference coordinate system Cc by rotating the coordinate values representing the movement path of the tool with the tool number 132 90° around the Z axis.
[0134] As described above, in the program generation device 1 of the third embodiment, the coordinate conversion information includes coordinate difference information representing the difference between the rotary coordinate system and the reference coordinate system, and the coordinate difference information is determined for each position information representing the position of the tool.
[0135] Therefore, it is not necessary to write information related to the coordinate system for coordinate conversion in the machining program. As a result, it is possible to improve the readability of the machining program and reduce machining errors.
[0136] In addition, in the above-described first to third embodiments, the example in which the program generation device 1 is installed in a PC is described, but the program generation device 1 can be installed in the numerical control device 22 of the machine tool 21. In addition, the structures in the above-described first to third embodiments can be appropriately combined.
[0137] Explanation of reference numerals
[0138] 1 program generation device
[0139] 2 CPU
[0140] 3 bus
[0141] 4 ROM
[0142] 5 RAM
[0143] 6 nonvolatile memory
[0144] 7 first interface
[0145] 8 second interface
[0146] 9 display device
[0147] 10 input device
[0148] 11 information storage section
[0149] 12 execution instruction generation section
[0150] 13 program generation section
[0151] 14 output section
[0152] 20 Internet line
[0153] 21 machine tool
[0154] 22 numerical control device
[0155] AH elbow
[0156] Cc reference coordinate system
[0157] Cr rotary coordinate system
[0158] S main shaft
[0159] TB table
[0160] T tool
[0161] Tt turning tool
[0162] TH tool holder
Claims
1. A program generation apparatus, characterized in that, The program generation device has the following features: The information storage unit stores coordinate transformation information, which is used to convert coordinate values in the rotating coordinate system to coordinate values in the reference coordinate system and includes coordinate difference information representing the difference between the rotating coordinate system and the reference coordinate system, in association with the identification information assigned to the tool. An execution instruction generation unit generates an execution instruction for the coordinate transformation based on the coordinate transformation information stored in association with the identification information; as well as The program generation unit generates a coordinate transformation program that includes the execution instructions generated by the execution instruction generation unit. The program generation unit generates the coordinate transformation program for machining programs that do not contain information about the rotation center, rotation direction, and rotation amount of the coordinate system used for coordinate transformation, and executes it in the numerical control device that controls the machine tool.
2. The program generation apparatus according to claim 1, characterized in that, The coordinate transformation information includes reference direction information, which represents the machining direction that serves as the reference for the tool, and cutting direction information, which represents the cutting direction of the tool, as set according to each of the identification information.
3. A program generation apparatus, characterized in that, The program generation device has the following features: The information storage unit stores coordinate transformation information, which is used to convert coordinate values in the rotating coordinate system to coordinate values in the reference coordinate system and includes coordinate difference information representing the difference between the rotating coordinate system and the reference coordinate system, in association with the identification information assigned to the tool. An execution instruction generation unit generates an execution instruction for the coordinate transformation based on the coordinate transformation information stored in association with the identification information; as well as The program generation unit generates a coordinate transformation program that includes the execution instructions generated by the execution instruction generation unit. The coordinate difference information is determined according to each positional information representing the position of the tool. The program generation unit generates the coordinate transformation program for machining programs that do not contain information about the rotation center, rotation direction, and rotation amount of the coordinate system used for coordinate transformation, and executes it in the numerical control device that controls the machine tool.
4. A machine tool, characterized in that, The machine tool is equipped with the program generation device according to any one of claims 1-3.
Citation Information
Patent Citations
Numerical controller
JP1991269604A
Numerical control device for controlling phase of coordinate-transformation tool
JP2009301232A
Machining-information management device and tool-path generation device
WO2015097886A1