Information processing device, method for generating NC program, and control program
By introducing program generation and simulation execution units into information processing equipment, problems such as moving body interference in the NC program generation process in the existing technology are solved, and error-free NC programs are generated according to simulation results, thereby improving the accuracy and efficiency of machine tool processing.
Patent Information
- Application Number
- CN202480013742.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-12-13
- Filing Date
- 2024-11-01
- Publication Date
- 2025-09-16
AI Technical Summary
When existing information processing equipment generates NC programs, it is difficult to effectively solve errors such as interference from moving objects in the machining area based on simulation results.
The information processing device includes a program generation unit and a simulation execution unit, which can generate corresponding NC programs when different coordinate systems are selected, determine and solve errors such as moving body interference through the simulation execution unit, and regenerate the NC program when a second coordinate system is selected.
It is possible to generate error-free NC programs based on simulation results, thus improving the accuracy and efficiency of machine tool processing.
Smart Images

Figure CN120660049A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing device, a method for generating an NC program, and a control program. Background Art
[0002] For example, Japanese Patent 7301486 (Patent Document 1) discloses an information processing device including: a first conversion unit for converting a second NC program into CL data; an interpretation unit for interpreting the CL data; a receiving unit for receiving an input of an execution code to be executed by a machine tool; and a second conversion unit for converting the CL data into a first NC program including the execution code received by the receiving unit based on the interpretation of the CL data.
[0003] Citation List
[0004] Patent Literature
[0005] Patent Document 1: Japanese Patent 7301486 Summary of the Invention
[0006] Technical issues
[0007] As disclosed in Patent Document 1, an information processing device is known that generates NC programs for use in machine tools. Such an information processing device can, for example, simulate the generated NC program to determine various errors, such as interference with a moving object in a machining area. In such cases, it is necessary to generate the NC program based on the simulation results.
[0008] An object of the present invention is to provide an information processing apparatus capable of generating an NC program based on simulation results, a method for generating an NC program, and a control program.
[0009] Solutions for solving problems
[0010] An information processing device according to the present invention is an information processing device for generating an NC program for use in a machine tool. The information processing device includes: a program generation unit for generating an NC program from CL data; and a simulation execution unit for simulating the CL data or the NC program. When a first coordinate system is selected, the program generation unit generates an NC program that causes machining steps including relative movement with respect to the first coordinate system. When a second coordinate system is selected, the program generation unit generates an NC program that causes machining steps including relative movement with respect to the second coordinate system.
[0011] A method for generating an NC program according to the present invention is a method for generating an NC program for use in a machine tool. The method includes the following steps: performing a simulation of CL data or an NC program that causes a machining step including relative movement with respect to a first coordinate system; and, after the simulation, generating an NC program that causes a machining step including relative movement with respect to the second coordinate system when a second coordinate system is selected.
[0012] A control program according to the present invention is a control program for at least one information processing device for generating an NC program for use in a machine tool. The control program causes the at least one information processing device to simulate CL data or an NC program that causes a machining step including relative movement with respect to a first coordinate system, and causes the at least one information processing device to generate an NC program that causes a machining step including relative movement with respect to the second coordinate system when a second coordinate system is selected after performing the simulation.
[0013] Advantageous Effects of the Invention
[0014] According to the present invention, it is possible to provide an information processing apparatus capable of generating an NC program based on simulation results, a method for generating an NC program, and a control program. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 is a block diagram illustrating an information processing apparatus according to an embodiment of the present invention.
[0016] Figure 2 It is a front view illustrating an example of a machine tool.
[0017] Figure 3 This is a diagram illustrating an example of a model selection screen.
[0018] Figure 4 This is a table illustrating the correspondence between CL data in a drilling cycle (spot drilling cycle) and NC codes used in various control devices.
[0019] Figure 5 This is a table illustrating the correspondence between CL data in a drilling cycle (deep hole drilling cycle) and NC codes used in various control devices.
[0020] Figure 6 This is a diagram illustrating the steps of machining a workpiece in the simulation of an NC program.
[0021] Figure 7 This is a diagram illustrating an example of a simulation screen of an NC program.
[0022] Figure 8 This is a diagram illustrating another simulation screen of the NC program.
[0023] Figure 9 This is a diagram illustrating a coordinate system selection screen.
[0024] Figure 10 This is a diagram illustrating the steps of machining a workpiece in re-simulating an NC program.
[0025] Figure 11 is exemplified in Figure 1 This is a flowchart of a process for generating an NC program in the illustrated information processing device.
[0026] Figure 12 is exemplified in Figure 1 This is a flowchart of a process for generating an NC program in a modification of the illustrated information processing apparatus. DETAILED DESCRIPTION
[0027] The embodiments of the present invention will be described with reference to the accompanying drawings. In the following drawings, the same or corresponding components are denoted by the same reference numerals.
[0028] Figure 1 1 is a block diagram illustrating an information processing apparatus according to an embodiment of the present invention. Figure 1 , the information processing apparatus 100 is configured to generate an NC (numerical control) program for use in a machine tool.
[0029] The information processing apparatus 100 receives CL (cutting tool position) data created by a CAD (computer-aided design) or CAM (computer-aided manufacturing) device and generates an NC program from the CL data, and outputs the generated NC program to a machine tool.
[0030] CL data includes information related to cutting conditions, such as tool position information (the tool's three-dimensional position and orientation), spindle speed, and feed rate. CL data may also include information related to coolant discharge. During the steps of machining a workpiece, the workpiece is machined by relatively moving the tool and workpiece. CL data also includes information related to the coordinate system used to relatively move the tool and workpiece during each machining step.
[0031] CL data is described using, for example, APT (Automatic Programming Tool). APT is a programming language developed for numerical control of machine tools that can automatically determine tool paths and machining steps based on the shape of the mechanical component to be produced. As a programming language for describing CL data, EXAPT (an extended subset of APT) can be used, which more precisely improves APT's tool path determination capabilities.
[0032] NC programs for use in machine tools differ depending on the type of controller provided in the machine tool (typically, the manufacturer of the controller). Information processing apparatus 100 is configured to generate NC programs for use in machine tools equipped with various controllers from CL data.
[0033] There are no particular limitations on machine tools that use the NC programs generated by information processing device 100. Examples of such machine tools include additive manufacturing machines that process workpieces by adding material to them, subtractive manufacturing machines that process workpieces by removing material from them, and laser processing machines that process workpieces by irradiating them with a light beam, such as a laser. More specifically, lathes, drilling machines, boring machines, milling machines, gear cutting machines, grinding machines, multi-axis machining centers, laser processing machines, or laminating machines are numerically controlled based on NC programs and perform various types of processing on workpieces such as metal, wood, stone, or resin, including turning, cutting, drilling, grinding, polishing, rolling, forging, bending, forming, micromachining, and laminating. Furthermore, some machine tools have a measurement function and are configured to measure the dimensions of a workpiece using a measuring instrument, such as a contact probe or camera.
[0034] Figure 2 This is a front view illustrating an example of a machine tool. Figure 2 In FIG. 1 , the internal structure of the machine tool is illustrated by seeing through a cover (splash guard) that forms the appearance of the machine tool.
[0035] refer to Figure 2 Machine tool 200 is a composite machine having a turning function, in which a tool is brought into contact with a rotating workpiece to machine the workpiece, and a milling function, in which a rotating tool is brought into contact with the workpiece to machine the workpiece. Machine tool 200 is an NC (numerically controlled) machine tool that automatically performs various operations for machining a workpiece under the numerical control of a computer and operates according to an NC program.
[0036] In this specification, the axis parallel to the left-right direction (width direction) of the machine tool 200 and extending in the horizontal direction is called the "Z axis", the axis parallel to the front-back direction (depth direction) of the machine tool 200 and extending in the horizontal direction is called the "Y axis", and the axis extending in the up-down direction is called the "X axis". Figure 2 The right direction in is called "+Z axis direction", and the left direction is called "-Z axis direction". Figure 2 In the figure, the forward direction of the paper is called the "+Y-axis direction," and the backward direction is called the "-Y-axis direction." The +Y-axis direction corresponds to the front side of the machine tool, and the -Y-axis direction corresponds to the rear side of the machine tool. The upward direction is called the "+X-axis direction," and the downward direction is called the "-X-axis direction."
[0037] The machine tool 200 includes a bed 236 , a working spindle 211 , a counter-working spindle 216 , a tool spindle (upper tool post) 221 , and a tool post (lower tool post) 231 .
[0038] The bed 236 is a base member configured to support the work spindle 211 , the counter work spindle 216 , the tool spindle 221 , the tool rest 231 , etc., and is installed on the floor of a factory, etc. The bed 236 is made of metal such as cast iron.
[0039] The work spindle 211 and the counter work spindle 216 are configured to hold a workpiece. The work spindle 211 and the counter work spindle 216 are arranged so as to face each other in the Z-axis direction. The work spindle 211 is configured to be rotated by a servo motor about a central axis 301 parallel to the Z-axis. The counter work spindle 216 is configured to be rotated by a servo motor about a central axis 302 parallel to the Z-axis. The work spindle 211 is provided with a first chuck mechanism 213 for detachably clamping a workpiece, and the counter work spindle 216 is provided with a second chuck mechanism 218 for detachably clamping a workpiece.
[0040] The work spindle 211 is fixed to the bed 236. The opposing work spindle 216 is configured to move in the Z-axis direction using various feed mechanisms, guide mechanisms, servo motors, and the like.
[0041] The tool spindle 221 and the tool holder 231 are configured to hold a tool. The tool spindle 221 is arranged above the tool holder 231. The tool spindle 221 is configured to rotate about a central axis 303 parallel to the X-axis in a reference posture described later. The tool spindle 221 is provided with a clamping mechanism (not shown) for detachably holding a tool.
[0042] The tool spindle 221 is further configured to rotate about a central axis 304 parallel to the Y axis. The rotation range of the tool spindle 221 is, for example, a reference posture in which the spindle end face 223 of the tool spindle 221 faces downward (e.g., Figure 2 The reference is ±120°.
[0043] The tool spindle 221 is supported on the bed 236 by a column or the like (not shown). The tool spindle 221 is configured to move in the X-axis direction, the Y-axis direction, and the Z-axis direction by various feed mechanisms, guide mechanisms, and servo motors provided in the column or the like.
[0044] The tool post 231 has a so-called turntable shape, to which a plurality of tools are radially attached, and is configured to perform rotary indexing.
[0045] More specifically, tool holder 231 includes a rotating portion 232. Rotating portion 232 is configured to rotate about central axis 206, which is parallel to the Z axis. A tool holder for holding a tool is placed at a position spaced apart from central axis 206 in the circumferential direction. When rotating portion 232 rotates about central axis 206, the tool held by the tool holder moves in the circumferential direction, thereby determining the tool used for machining.
[0046] The tool post 231 is supported on the bed 236 by a saddle or the like (not shown). The tool post 231 is configured to move in the Z-axis direction and the X-axis direction by various feed mechanisms, guide mechanisms, and servo motors provided in the saddle or the like.
[0047] Each of the tool spindle 221 and the tool holder 231 can hold either a rotating tool or a fixed tool. A rotating tool is a tool that rotates to perform machining on a workpiece, such as a drill, end mill, or reamer. A fixed tool is a cutting tool that performs machining on a rotating workpiece. When a rotating tool is held on the tool holder 231, a motor that outputs rotational power and a power transmission mechanism that transmits the rotational power output from the motor to the rotating tool are built into the tool holder 231.
[0048] Each movable body of the work spindle 211, counter work spindle 216, tool spindle 221, and tool rest 231 has a coordinate axis that serves as a reference for various operations such as movement, rotation, or swivel. For example, the coordinate axes that can serve as a reference for movement of the tool spindle 221 are the X-axis, Y-axis, and Z-axis; the coordinate axis that can serve as a reference for movement of the counter work spindle 216 is the Z-axis; and the coordinate axes that can serve as a reference for movement of the tool rest 231 are the X-axis and Z-axis. The center axis 301 serves as a reference for rotation of the work spindle 211 and is referred to as the "C-axis" in this specification. The center axis 304 serves as a reference for swivel of the tool spindle 221 and is referred to as the "B-axis" in this specification.
[0049] The machine tool 200 further includes a cover (splash guard) 310. The cover 310 forms the exterior appearance of the machine tool 200 and defines a machining area 300. The machining area 300 is a space in which a workpiece is machined and is surrounded by the cover 310 to prevent foreign matter (such as chips or cutting oil) associated with the machining of the workpiece from escaping from the machining area 300.
[0050] Despite Figure 2 Although not illustrated in the figure, an automatic tool changer (ATC) for automatically changing a tool held by the tool spindle 221 and a tool magazine for accommodating a replacement tool held by the tool spindle 221 are provided around the work spindle 211 .
[0051] Next, the information processing apparatus 100 according to the present embodiment will be described. Figure 1 The components of the information processing device 100 are implemented by hardware and software. The hardware includes arithmetic units such as a CPU (central processing unit) and various computer processors, a storage device such as a memory or storage unit, and a wired or wireless communication line connecting the arithmetic units and the storage device. The software is stored in the storage device and is configured to supply processing instructions to the arithmetic units. The computer program may be a device driver, an operating system, various application programs located above the device driver and the operating system, or a library that provides common functions to various application programs. Each block described below represents a functional unit block.
[0052] The information processing apparatus 100 includes a CL data acquisition unit 111 and a program generation unit 112 .
[0053] The CL data acquisition unit 111 acquires CL data from an external source. The CL data acquisition unit 111 outputs the acquired CL data to the storage unit 136 described later. The program generation unit 112 generates an NC program from the CL data. The program generation unit 112 outputs the generated NC program to the storage unit 136.
[0054] The information processing device 100 further includes a storage unit 136. The storage unit 136 stores various program modules. The processor of the information processing device 100 implements the functions of each unit by executing the various program modules.
[0055] The storage unit 136 also stores machine tool information 151 , correspondence relationship information 152 , acquired CL data 153 , a selected machine tool 154 , a selected controller 155 , and a generated NC program 156 .
[0056] Machine tool information 151 relates to the mechanical specifications of the machine tool and includes information related to the mechanical origin, mechanical stroke length, mechanical axis configuration, and numerical controller. Machine tool information 151 may also include information related to the machine model number, option information (number of rotary tables, spindle diameter, servo, presence / absence and type of chip conveyor, or presence / absence and type of measuring device), usable tool types (e.g., drills, end mills), and the number of tool positions and tool position numbers in the tool magazine. Machine tool information 151 is created for each machine tool model.
[0057] In this embodiment, machine tool information 151A, machine tool information 151B, machine tool information 151C, machine tool information 151D, and machine tool information 151E are stored in storage unit 136 as machine tool information 151. Machine tool information 151A, machine tool information 151B, machine tool information 151C, machine tool information 151D, and machine tool information 151E are respectively related to the mechanical specifications of a machine tool of model A, a machine tool of model B, a machine tool of model C, a machine tool of model D, and a machine tool of model E.
[0058] Correspondence information 152 relates to the correspondence between CL data, controllers, and NC codes. Since NC codes vary depending on the type (manufacturer) of controllers installed in machine tools, the correspondence information 152 creates a correspondence between CL data and NC codes for each type of controller.
[0059] In the present embodiment, correspondence information 152a, correspondence information 152b, and correspondence information 152c are stored as correspondence information 152 in the storage unit 136. Correspondence information 152a is related to the correspondence between CL data and the NC code used by the controller of type Fa, correspondence information 152b is related to the correspondence between CL data and the NC code used by the controller of type Fb, and correspondence information 152c is related to the correspondence between CL data and the NC code used by the controller of type Fc.
[0060] The controllers of type Fa, type Fb, and type Fc are manufactured by different controller manufacturers. For example, the controller of type Fa is manufactured by FANUC, the controller of type Fb is manufactured by Siemens, and the controller of type Fc is manufactured by HEIDENHAIN.
[0061] The NC code may differ depending on the type of machine tool (e.g., lathe, machining center, multifunction machine). In this case, the correspondence information 152 may relate to the correspondence between the CL data, the controller, the type of machine tool, and the NC code. In the correspondence information 152, a correspondence between the CL data and the NC code is created for each combination of the controller type and the type of machine tool. Furthermore, even if the controllers are manufactured by the same manufacturer, the NC code may differ depending on the version of the controller. In this case, the correspondence information 152 creates a correspondence between the CL data and the NC code for each version of the controller.
[0062] The acquired CL data 153 corresponds to the CL data input from the CL data acquisition unit 111. The selected machine tool 154 corresponds to the machine tool selected by the user from the machine model selection screen 142 to be described later. The selected controller 155 corresponds to the controller selected by the user from the machine model selection screen 142 to be described later. The generated NC program 156 corresponds to the NC program generated by the program generation unit 112.
[0063] The information processing apparatus 100 further includes a user interface processing unit 131. The user interface processing unit 131 processes information input by a user via a user interface such as a display, keyboard, mouse, touch sensor, or a touch panel in which a display and a touch sensor are integrated.
[0064] Figure 3 This is a diagram showing an example of the model selection screen. Figure 1 and Figure 3 The information processing apparatus 100 includes a GUI (Graphical User Interface) 141 as a user interface. A machine tool model selection screen 142 is displayed on the GUI 141.
[0065] Machine tools of models A to E are displayed on the model selection screen 142. The model selection screen 142 also displays the series names Sa to Se of each machine tool model, the selectable models Oa to Oe for each machine tool model, and the controller types Fa to Fe for each machine tool model. A controller type Fa is set for machine tools of models A and B, a controller type Fb is set for machine tools of models C and D, and a controller type Fc is set for machine tool model E. Using the model selection screen 142, the user selects a machine tool from among the machine tools of models A to E for which an NC program generated by the information processing apparatus 100 is to be used, and then selects a controller for the selected machine tool.
[0066] When the user selects a machine tool and a controller via the GUI 141, the user interface processing unit 131 receives the selection and outputs the selected machine tool 154 and the selected controller 155 to the storage unit 136.
[0067] This embodiment is based on the assumption that a machine tool of model A and a controller of type Fa are selected from the machine model selection screen 142. The machine tool of model A corresponds to Figure 2 The machine tool 200 is shown as an example.
[0068] refer to Figure 1 The user may also input various additional conditions for machining the workpiece via the GUI 141 .
[0069] As an example, the additional condition for machining a workpiece may be a workpiece machining mode for optimizing machining accuracy and machining time. The user can select a predetermined machining mode from the following four machining modes via the GUI 141: (a) a time priority mode (a mode that prioritizes shortening the machining time and is used when the required accuracy is low (such as rough machining), (b) an intermediate mode (a mode between the time priority mode and the accuracy priority mode and used in semi-finishing machining when high accuracy and a short time are required), (c) an accuracy priority mode (a mode that prioritizes machining accuracy and is used when machining accuracy and final machining accuracy are required), and (d) a higher accuracy priority mode (a mode that prioritizes machining accuracy higher than that in the accuracy priority mode).
[0070] As another example, the additional condition may be the selection of a work spindle. The user may select via the GUI 141 Figure 2 One of the working spindle 211 and the counter working spindle 216 is used as a working spindle for use in a predetermined machining step.
[0071] The work spindle 211 may be set as a default work spindle, and instead of the work spindle 211 , the user may use the GUI 141 to set the counter work spindle 216 as the default work spindle.
[0072] When the user inputs additional conditions for machining a workpiece via the GUI 141 , the user interface processing unit 131 outputs the additional conditions to the program generating unit 112 .
[0073] Figure 4 This is a table illustrating the correspondence between CL data in a drilling (spot drilling) cycle and NC codes used in various controllers. Figure 5 This is a table illustrating the correspondence between CL data in a drilling (deep hole drilling) cycle and NC codes used in various controllers.
[0074] refer to Figure 1 、 Figure 4 and Figure 5 The program generating unit 112 generates an NC program from the acquired CL data 153 based on the selected controller 155 received by the user interface processing unit 131 and the correspondence information 152 indicating the correspondence between the selected controller 155, CL data, and NC codes.
[0075] More specifically, the program generation unit 112 includes a conversion unit 117. The conversion unit 117 retrieves the selected controller 155 from the storage unit 136. Based on the selected controller 155, the conversion unit 117 determines the controller of type Fa as the controller selected by the user. The conversion unit 117 specifies the correspondence information 152a indicating the correspondence between CL data and the NC code used in the controller of type Fa as the correspondence information 152, and retrieves the correspondence information from the storage unit 136. The conversion unit 117 retrieves the acquired CL data 153 from the storage unit 136. The conversion unit 117 converts the acquired CL data 153 into an NC program based on the correspondence between the CL data and the NC code used in the controller of type Fa, which is included in the correspondence information 152a.
[0076] like Figure 4 and Figure 5 As illustrated, the program generating unit 112 can generate an NC program for use in a controller of type Fa manufactured by FANUC Corporation from CL data described in APT.
[0077] When the user Figure 3 When a machine tool of model C or model D and a controller of type Fb are selected on the machine model selection screen 142 in the image processing unit 110, the conversion unit 117 converts the acquired CL data 153 into an NC program based on the correspondence between the CL data and the NC code used in the controller of type Fb (which is included in the correspondence information 152b). Figure 4 and Figure 5 As illustrated, the program generating unit 112 can generate an NC program for use in a controller of type Fb manufactured by Siemens from CL data described in APT. Figure 3 When a machine tool of model E is selected and a controller of type Fc is selected on the machine model selection screen 142 in the figure, the conversion unit 117 converts the acquired CL data 153 into an NC program based on the correspondence between the CL data and the NC code used in the controller of type Fc (which is included in the correspondence information 152c). Figure 4 and Figure 5 As illustrated, the program generating unit 112 can generate an NC program for use in a controller of type Fc manufactured by HEIDENHAIN Corporation from CL data described in APT.
[0078] According to this embodiment, the information processing device 100 includes: a user interface processing unit 131 for receiving a selection of a controller of a machine tool; a storage unit 136 for storing the correspondence between CL data, controllers and NC codes; and a program generation unit 112 for generating an NC program from the acquired CL data 153 based on: (a) the selected controller 155 received by the user interface processing unit 131; and (b) the correspondence between the selected controller 155, (b-1) CL data and (b-2) NC codes.
[0079] With this configuration, an NC program suitable for the controller of the machine tool can be generated.
[0080] The machine tool model name may include a symbol indicating the type of controller used in the machine tool. For example, machine tool models Aa, Ab, and Ac are displayed on model selection screen 142. The symbol "a" in the name of model Aa indicates a controller manufactured by FANUC, the symbol "b" in the name of model Ab indicates a controller manufactured by Siemens, and the symbol "c" in the name of model Ac indicates a controller manufactured by HEIDENHAIN. In this case, the controller type is not displayed on model selection screen 142, and the user simply selects the model of the machine tool.
[0081] When the machine tool model name includes a symbol indicating the controller type, Figure 1 The correspondence information 152 in is related to the correspondence between CL data, machine tools and NC codes. Figure 1 In the correspondence information 152 , the correspondence between CL data and NC code is created for each model of the machine tool.
[0082] The information processing device according to the variant example includes: a user interface processing unit 131 for receiving a selection of a machine tool; a storage unit 136 for storing the correspondence between CL data, machine tools and NC codes; and a program generation unit for generating an NC program from the CL data based on the following items: (a) the selected machine tool 154 received by the user interface processing unit 131 and (b) the correspondence between the selected machine tool 154, (b-1) the CL data and (b-2) the NC code.
[0083] In this modification, when the model name of the machine tool includes a symbol indicating the type of controller, an NC program suitable for the controller of the machine tool can also be generated.
[0084] refer to Figure 1 , the program generating unit 112 also generates an NC program from the CL data based on the machine tool information 151A.
[0085] More specifically, conversion unit 117 retrieves selected machine tool 154 from storage unit 136. Based on selected machine tool 154, conversion unit 117 determines that the machine tool of model A is the machine tool selected by the user. Conversion unit 117 designates machine tool information 151A indicating the mechanical specifications of the machine tool of model A as machine tool information 151, and retrieves the machine tool information from storage unit 136.
[0086] CL data includes information about the tool's travel path in each machining step, but may not include information about the tool's travel path during transitions from one machining step to another or during automatic tool control (ATC). Furthermore, the axis configuration of movable bodies such as the work spindle and tool spindle, the location of the machine origin, the position of automatic tool change using ATC, and the types of usable tools may vary depending on the machine tool model. The conversion unit 117 identifies the specific machine specifications of the machine tool of model A by referring to the machine tool information 151A, and generates an NC program corresponding to these specific machine specifications.
[0087] When the CL data includes information about the travel path of the tool during transition from one machining step to another and the travel path of the tool during ATC, the conversion unit 117 generates an NC program reflecting the information about the travel path included in the CL data.
[0088] The program generating unit 112 further includes an additional condition receiving unit 116. The additional condition receiving unit 116 receives various additional conditions for machining a workpiece input from the user interface processing unit 131. The converting unit 117 converts the CL data into NC code reflecting the additional conditions received by the additional condition receiving unit 116.
[0089] For example, in a controller of type Fa, "G332" is an NC code to be inserted into the NC program when any of the above-mentioned machining modes (a) to (d) is selected. When the user selects the time priority mode (a) via the GUI 141, the conversion unit 117 inserts "G332R1" immediately before the code G01 for starting the cutting operation. When the user selects the intermediate mode (b) via the GUI 141, the conversion unit 117 inserts "G332R2" immediately before the code G01 for starting the cutting operation. When the user selects the precision priority mode (c) via the GUI 141, the conversion unit 117 inserts "G332R3" immediately before the code G01 for starting the cutting operation. When the user selects the higher precision priority mode (d) via the GUI 141, the conversion unit 117 inserts "G332R4" immediately before the code G01 for starting the cutting operation.
[0090] Figure 6 This is a diagram illustrating the steps of machining a workpiece in the simulation of an NC program. Figure 7 and Figure 8 Each of the figures exemplifies a simulation screen of an NC program.
[0091] refer to Figure 1 and Figures 6 to 8 The information processing apparatus 100 further includes a simulation execution unit 113. The simulation execution unit 113 executes a simulation of the NC program generated by the program generation unit 112.
[0092] More specifically, the simulation execution unit 113 retrieves the generated NC program 156 from the storage unit 136. The simulation execution unit 113 executes the simulation of the generated NC program 156. Figure 7 and Figure 8 As illustrated, a simulation screen 143 is displayed on the GUI 141 . The simulation execution unit 113 displays the simulation of the generated NC program 156 on the simulation screen 143 .
[0093] like Figure 6 As illustrated, the NC program simulated by the simulation execution unit 113 includes a machining step in which a tool T and a workpiece W move relative to each other with reference to a first coordinate system 401. The first coordinate system 401 is information included in the acquired CL data 153. When creating CL data using a CAD / CAM device, the user selects the first coordinate system 401. Based on the acquired CL data 153, the program generation unit 112 generates an NC program including a machining step in which the tool T and the workpiece W move relative to each other with reference to the first coordinate system 401.
[0094] More specifically, a cylindrical workpiece W is held by a work spindle 211. To machine a workpiece W having a regular hexagonal outer shape from the cylindrical workpiece W, the work spindle 211 is fixed to the C-axis, and a tool T is brought into contact with the outer peripheral surface of the cylindrical workpiece W and moved in the XY plane. During this process, the cylindrical workpiece W and the tool T move relative to each other with reference to a first coordinate system 401 including the X-axis and the Y-axis.
[0095] The simulation execution unit 113 determines whether there is an error in the simulation of the NC program.
[0096] Errors are various events that may interfere with the progress of workpiece machining, such as interference with a moving body, overtravel, or axis configuration mismatch, as described later. A moving body is an object that moves in the machining area as the workpiece is being machined, and may be, for example, a tool spindle, work spindle, tool holder, or worktable.
[0097] The simulation execution unit 113 includes an interference determination unit 121 , an overtravel determination unit 122 , and an axis configuration determination unit 124 .
[0098] The interference determination unit 121 determines whether interference exists in the moving body according to the simulation of the NC program. When it is determined that interference exists in the moving body, the interference determination unit 121 transmits an alarm to notify a user of the interference in the moving body.
[0099] When Figures 6 to 8 When the tool spindle 221 holding the tool T is moved in the -X axis direction in the illustrated machining step, the interference determination unit 121 determines that there is interference between the tool spindle 221 and the tool holder held by the tool post 231. Figure 8 As illustrated, the interference determination unit 121 sends an alert to the user by displaying the tool spindle 221 and the tool holder 231 in a specific color such as red.
[0100] During the simulation of the NC program, the overtravel determining unit 122 determines whether there is an overtravel of the moving body beyond the movable area. When determining that there is an overtravel of the moving body, the overtravel determining unit 122 sends an alarm to the user to inform the user of the overtravel of the moving body.
[0101] exist Figures 6 to 8 In the illustrated machining step, when the tool spindle 221 holding the tool T moves in the -X-axis direction, the overtravel determining unit 122 determines that there is an overtravel in which the tool spindle 221 moves by more than Δx in the X-axis direction relative to the movable area St. The interference determining unit 121 issues an alert to the user by displaying the tool spindle 221 in a specific color, such as red.
[0102] In the simulation of the NC program, the axis configuration determining unit 124 determines whether the coordinate axes that do not constitute the axis configuration in which the movable body is movable are included in the first coordinate system 401. When it is determined that the coordinate axes that do not constitute the axis configuration in which the movable body is movable are included in the first coordinate system 401, the axis configuration determining unit 124 sends an alarm to the user to inform the user that the axis configuration of the movable body does not match.
[0103] For example, Figure 2 Machine tool 200 in FIG. 1 includes a tool post 231 as a movable body, movable in the Z-axis and X-axis directions. When first coordinate system 401, serving as a reference coordinate system in a machining step using a tool held by tool post 231, includes a Y-axis that does not constitute an axis configuration in which tool post 231 is movable, axis configuration determination unit 124 determines that an axis configuration mismatch exists. Interference determination unit 121 issues an alert to the user by displaying tool post 231 in a specific color, such as red.
[0104] The alarm for notifying the user is not particularly limited and may be, for example, text displayed on the simulation screen 143 to notify the user of interference with the tool spindle 221 , overtravel of the tool spindle 221 , or mismatch in axis configuration of a movable body such as the tool post 231 .
[0105] Figure 9 This is a diagram illustrating a coordinate system selection screen. Figure 10 This is a diagram illustrating the steps of machining a workpiece in re-simulating an NC program.
[0106] refer to Figure 1 、 Figure 9 and Figure 10 If the simulation of the NC program indicates that there is an error in the machining step in which the tool T and the workpiece W move relative to each other with respect to the first coordinate system 401, the simulation execution unit 113 presents the second coordinate system 402 to the user as an alternative to the first coordinate system 401, which is a combination of coordinate axes constituting the coordinate system and is different from the first coordinate system 401.
[0107] More specifically, when the interference determination unit 121 determines that there is interference with the tool spindle 221, when the overtravel determination unit 122 determines that there is overtravel of the tool spindle 221, and / or when the axis configuration determination unit 124 determines that there is an axis configuration mismatch of the moving body, the simulation execution unit 113 causes the GUI 141 to display the coordinate system selection screen 144.
[0108] The simulation execution unit 113 further includes a substitute coordinate system presenting unit 123. The substitute coordinate system presenting unit 123 retrieves the machine tool information 151A from the storage unit 136. The substitute coordinate system presenting unit 123 refers to the machine tool information 151A to designate the second coordinate system 402 as a substitute for the machine tool information 151A. Figure 6 The candidate coordinate system of the first coordinate system 401 in the illustrated machining step, and the second coordinate system 402 is displayed on the coordinate system selection screen 144. The user can select the second coordinate system 402 from the coordinate system selection screen 144.
[0109] The first coordinate system 401 is a combination of X and Y axes, and the second coordinate system 402 is a combination of C and X axes. The combination of coordinate axes constituting the first coordinate system 401 and the combination of coordinate axes constituting the second coordinate system 402 are different from each other.
[0110] The number of candidate coordinate systems that replace the first coordinate system 401 is not limited to one and may be more than one. The number of coordinate axes constituting the coordinate system is not limited to two and may be three or more.
[0111] When the user selects the second coordinate system 402 via the GUI 141, the simulation execution unit 113 outputs the second coordinate system 402 as an additional condition for machining the workpiece to the program generation unit 112. The additional condition reception unit 116 receives the additional condition input from the simulation execution unit 113.
[0112] The program generation unit 112 regenerates an NC program from the acquired CL data 153. During this process, the conversion unit 117 converts the acquired CL data 153 into an NC program that reflects the additional conditions received by the additional condition receiving unit 116. The program generation unit 112 generates an NC program in which the first coordinate system 401, which serves as the reference coordinate system in the machining step where the error was discovered, is replaced with the second coordinate system 402.
[0113] The simulation execution unit 113 executes re-simulation of the NC program generated by the program generation unit 112. The simulation execution unit 113 determines whether an error has been resolved in the re-simulation of the NC program. When the error has been resolved in the re-simulation, the simulation execution unit 113 outputs the NC program to the machine tool 200.
[0114] like Figure 10 As illustrated, in the re-simulation of the NC program, when using the second coordinate system 402, which is a combination of the C-axis and the X-axis, the tool T is moved in the X-axis direction (upward and downward) while maintaining contact with the outer peripheral surface of the workpiece W, and the workpiece W is rotated about the C-axis (center axis 301). In this case, the tool spindle 221 is reciprocated in the +X-axis direction (upward) and the -X-axis direction (downward) to form one side of a regular hexagon on the outer peripheral surface of the workpiece W. The reciprocating motion of the tool spindle 221 is repeated in the X-axis direction to form the outer peripheral surface of the workpiece W into a regular hexagonal shape. Since the movement width of the tool spindle 221 in the X-axis direction is limited, interference and overtravel of the tool spindle 221 can be avoided.
[0115] In addition, since the first coordinate system 401 used as a reference coordinate system in the machining step by using the tool held by the tool holder 231 includes a Y-axis that does not constitute an axis configuration in which the tool holder 231 is movable, when the axis configuration determination unit 124 determines that there is an axis configuration mismatch, the alternative coordinate system presentation unit 123 can present to the user a second coordinate system 402 that includes a C-axis, an X-axis and / or a Z-axis instead of the Y-axis.
[0116] The information processing apparatus 100 according to the present embodiment includes a program generation unit 112 that generates an NC program from CL data and a simulation execution unit 113 that executes a simulation of the NC program. When the first coordinate system 401 is selected, the program generation unit 112 generates an NC program that causes a machining step including relative movement with respect to the first coordinate system 401, and when the second coordinate system 402 is selected, the program generation unit generates an NC program that causes a machining step including relative movement with respect to the second coordinate system 402.
[0117] According to this configuration, when the first coordinate system 401 is selected, an NC program is generated that causes a machining step including relative movement with respect to the first coordinate system 401, and when the second coordinate system 402 is selected, an NC program is generated that causes a machining step including relative movement with respect to the second coordinate system 402, thereby enabling an NC program to be generated based on the simulation results.
[0118] In addition, when simulation of the NC program indicates that there is an error in a machining step in which the tool and the workpiece move relative to each other with reference to the first coordinate system 401, the user is presented with the second coordinate system 402 to replace the first coordinate system 401. Thus, the user can attempt to resolve the error found in the machining step simply by selecting the second coordinate system 402.
[0119] The machine tool includes a movable body that holds one of a tool and a workpiece and moves within a machining area. The error may be interference of the movable body within the machining area, overtravel of the movable body beyond a movable area, or mismatch of coordinate axes included in the first coordinate system, where the coordinate axes that do not constitute the movable axis configuration of the movable body are included.
[0120] Figure 1 The axis configuration determination unit 124 in may be incorporated into the program generation unit 112 instead of the simulation execution unit 113 .
[0121] Figure 11 is exemplified in Figure 1 This is a flowchart of a process for generating an NC program in the illustrated information processing device.
[0122] refer to Figure 1 and Figure 11 , the CL data acquisition unit 111 acquires CL data created by the CAD / CAM device (S101). In this step, the CL data acquisition unit 111 outputs the acquired CL data as acquired CL data 153 to the storage unit 136.
[0123] The information processing device 100 receives a machine tool and a controller using an NC program to be generated (S102). In this step, the user causes the GUI 141 to display Figure 3, and selects a machine tool and a controller from the machine model selection screen 142. The user interface processing unit 131 receives the selection of the machine tool and the controller, and outputs them to the storage unit 136 as a selected machine tool 154 and a selected controller 155, respectively.
[0124] Next, the program generating unit 112 determines the machine tool information 151 and the correspondence relationship information 152 ( S103 ).
[0125] In this step, the program generation unit 112 retrieves the selected machine tool 154 and the selected controller 155 from the storage unit 136. Based on the selected machine tool 154, the program generation unit 112 determines machine tool information 151A indicating the mechanical specifications of a machine tool of model A as the machine tool information 151, and retrieves the machine tool information from the storage unit 136. Based on the selected controller 155, the program generation unit 112 determines correspondence information 152a indicating the correspondence between CL data and NC code for use in a controller of model Fa as the correspondence information 152, and retrieves the correspondence information from the storage unit 136.
[0126] Next, the NC program generation unit 112 generates an NC program (S104). In this step, the NC program generation unit 112 retrieves the acquired CL data 153 from the storage unit 136. Based on the machine tool information 151A and the correspondence information 152a, the NC program generation unit 112 generates an NC program from the CL data. When additional conditions for machining a workpiece are input via the GUI 141, the NC program generation unit 112 generates an NC program reflecting the additional conditions. The NC program generation unit 112 outputs the generated NC program as generated NC program 156 to the storage unit 136.
[0127] Next, the simulation execution unit 113 executes simulation of the NC program ( S105 ).
[0128] In this step, the user causes the GUI 141 to display Figure 3 The simulation screen 143 in the program is displayed, and the operation of executing the simulation on the simulation screen 143 is started. The simulation execution unit 113 executes the simulation of the generated NC program 156 and displays the simulation on the simulation screen 143.
[0129] Next, the simulation execution unit 113 determines whether there is interference, overtravel, and / or axis configuration mismatch in the moving body (S106). In this step, the interference determination unit 121 determines whether there is interference in the moving body, the overtravel determination unit 122 determines whether there is overtravel in the moving body, and the axis configuration determination unit 124 determines whether there is an axis configuration mismatch in the moving body.
[0130] Next, when it is determined in step S106 that there is no interference, overtravel, and / or axis configuration mismatch in the moving body, the simulation execution unit 113 outputs the NC program to the machine tool.
[0131] If it is determined in step S106 that there is interference, overtravel, and / or an axis configuration mismatch in the mobile object, the simulation execution unit 113 sends an alarm to the user to notify the user of the error (S108). The simulation execution unit 113 presents the user with an alternative coordinate system (S109). In this step, the alternative coordinate system presentation unit 123 displays the alternative coordinate system on the coordinate system selection screen 144. The user selects the alternative coordinate system displayed on the coordinate system selection screen 144.
[0132] Next, the program generation unit 112 receives the alternative coordinate system selected by the user as an additional condition ( S110 ).
[0133] The process then returns to step S104, where the program generation unit 112 regenerates the NC program (S104). At this point, the program generation unit 112 generates an NC program that reflects the alternative coordinate system selected by the user. Next, in step S105, the simulation execution unit 113 re-simulates the NC program and, if it is determined in step S106 that there is no interference, overtravel, or axis configuration mismatch in the moving body, outputs the NC program to the machine tool.
[0134] If it is determined in step S106 that there is interference, overtravel, and axis configuration mismatch in the moving body, steps S108, S109, and S110 may be performed again. In this case, in step S109, an alternative coordinate system that will replace the second coordinate system may be presented to the user.
[0135] The method for generating an NC program according to the present embodiment includes: a step (S102) for receiving a selection of a controller for a machine tool; and a step (S104) for generating an NC program from the acquired CL data 153 based on: (a) the selected controller 155 received in the step (S102) for receiving a selection of a controller for a machine tool; and (b) the correspondence between the selected controller 155, (b-1) the CL data, and (b-2) the NC code.
[0136] Furthermore, the control program according to this embodiment causes the information processing apparatus 100 to execute: a step (S102) for receiving a signal for specifying a selection of a machine tool controller; and a step (S104) for generating an NC program from the acquired CL data 153 based on: (a) the selected controller 155 received in the step (S102) for receiving a signal for specifying a selection of a machine tool controller; and (b) the correspondence between the selected controller 155, (b-1) the CL data, and (b-2) the NC code. When the selection of a machine tool controller is received by a device other than the information processing apparatus 100, the control program may cause the information processing apparatus to execute the step of receiving a signal for specifying a selection of a controller from the different device.
[0137] According to the above configuration, an NC program suitable for the controller of a machine tool can be generated.
[0138] According to this embodiment, the method for generating the following NC program includes: a step (S105) for performing simulation of the NC program, which causes a machining step including relative movement with respect to the first coordinate system 401; and a step (S104) for generating the following NC program when the second coordinate system 402 is selected after the step (S105) for performing simulation, which causes a machining step including relative movement with respect to the second coordinate system 402.
[0139] In addition, the control program according to the present embodiment causes at least one information processing device 100 to execute: a step (S105) for simulating an NC program that causes a machining step including relative movement with respect to first coordinate system 401; and a step (S104) for generating an NC program that causes a machining step including relative movement with respect to second coordinate system 402 when second coordinate system 402 is selected after the step (S105) for simulating the program. The information processing device controlled by the control program to execute the step for simulating the NC program and the information processing device controlled by the control program to execute the step for generating the NC program may be different from each other.
[0140] More specifically, the method for generating an NC program according to the present embodiment includes: a step (S104) for generating an NC program that causes a machining step including relative movement with respect to the first coordinate system 401 from CL data including selection of the first coordinate system 401; a step (S105) for performing a simulation of the NC program; and a step (S104) for generating an NC program that causes a machining step including relative movement with respect to the second coordinate system 402 when the second coordinate system 402 is selected after the step (S105) for performing the simulation of the NC program.
[0141] In addition, the control program according to the present embodiment causes at least one information processing device 100 to execute: a step (S104) for generating an NC program causing a machining step including relative movement with respect to the first coordinate system 401 from selected CL data including the first coordinate system 401; a step (S105) for performing a simulation of the NC program; and a step (S104) for generating an NC program causing a machining step including relative movement with respect to the second coordinate system 402 when the second coordinate system 402 is selected after the step (S105) for performing the simulation of the NC program.
[0142] According to such a configuration, an NC program can be generated based on the simulation results.
[0143] The control program (program) according to the present embodiment may be recorded in a computer-readable storage medium. The computer-readable storage medium may be a non-transitory computer-readable storage medium.
[0144] Figure 12 is exemplified in Figure 1 Flowchart of the process of generating an NC program in a modification of the illustrated information processing device. Figure 11 The steps in the flowchart correspond to Figure 12 The steps in the flowcharts of FIG. 1 are denoted by the same reference numerals.
[0145] As reference Figure 12 In this modification, Figure 1 The simulation execution unit 113 in can execute the simulation of CL data.
[0146] First, the CL data acquisition unit 111 acquires CL data created by a CAD / CAM device ( S101 ).
[0147] Next, the simulation execution unit 113 executes simulation of the CL data (S105). In this step, the simulation execution unit 113 retrieves the acquired CL data 153 from the storage unit 136. The simulation execution unit 113 executes simulation of the acquired CL data 153 and displays the simulation on the simulation screen 143.
[0148] Next, the simulation execution unit 113 determines whether there is interference, overtravel, and / or axis configuration mismatch in the moving body ( S106 ).
[0149] If it is determined in step S106 that there is no interference, overtravel, and / or axis configuration mismatch in the moving body, the process proceeds to steps S102 to S104 to generate an NC program from the CL data. Steps S102 and S103 may be performed before simulating the CL data. In step S104, program generation unit 112 generates an NC program that causes machining steps including relative movement with respect to first coordinate system 401. After step S104, program generation unit 112 outputs the NC program to the machine tool.
[0150] When it is determined in step S106 that there is interference, overtravel, and / or axis configuration mismatch in the mobile body, the simulation execution unit 113 sends an alarm to the user to notify the user of the error (S108). The simulation execution unit 113 presents the alternative coordinate system to the user (S109). The user selects the second coordinate system 402 displayed on the coordinate system selection screen 144 as the alternative coordinate system. The information processing device 100 receives the alternative coordinate system selected by the user (S110). The information processing device 100 rewrites the CL data to reflect the alternative coordinate system selected by the user and outputs the rewritten CL data to the simulation execution unit 113.
[0151] Next, the process returns to step S105 (where the simulation execution unit 113 executes a re-simulation of the CL data), and if it is determined in step S106 that there is no interference, overtravel, or axis configuration mismatch in the moving body, the process proceeds to step S102. In step S104, the program generation unit 112 generates an NC program that causes a machining step including relative movement with respect to the second coordinate system 402.
[0152] The information processing apparatus according to this variation includes a program generation unit 112 that generates an NC program from CL data and a simulation execution unit 113 that executes a simulation of the CL data. When the first coordinate system 401 is selected, the program generation unit 112 generates an NC program that causes a machining step including relative movement with respect to the first coordinate system 401, and when the second coordinate system 402 is selected, the program generation unit 112 generates an NC program that causes a machining step including relative movement with respect to the second coordinate system 402.
[0153] In addition, the method for generating an NC program according to this variant example includes: a step (S105) for performing simulation of the following CL data, which CL data causes a machining step including relative movement with respect to the first coordinate system 401; and a step (S104) for generating the following NC program when the second coordinate system 402 is selected after the step (S105) for performing the simulation, which NC program causes a machining step including relative movement with respect to the second coordinate system 402.
[0154] In addition, the control program according to this variant causes at least one information processing device to execute: a step (S105) for performing a simulation of the following CL data, which CL data causes a machining step including relative movement with respect to the first coordinate system 401; and a step (S104) for generating the following NC program when the second coordinate system 402 is selected after the step (S105) for performing the simulation, which NC program causes a machining step including relative movement with respect to the second coordinate system 402.
[0155] The information processing device according to the present embodiment is an information processing device that generates an NC program for use in a machine tool. The information processing device includes a program generation unit that generates an NC program from CL data and a simulation execution unit that performs a simulation of the CL data or the NC program. The simulation execution unit displays a first coordinate system and a second coordinate system (which is a combination of coordinate axes different from the coordinate axes of the first coordinate system) on a screen for user selection. When the first coordinate system is selected, the program generation unit generates an NC program that causes a machining step including relative movement with respect to the first coordinate system, and when the second coordinate system is selected, the program generation unit generates an NC program that causes a machining step including relative movement with respect to the second coordinate system.
[0156] Furthermore, when it is determined that there is an error in the machining step including relative movement with reference to the first coordinate system, the simulation execution unit displays the first coordinate system and the second coordinate system on the screen.
[0157] The method for generating an NC program according to this embodiment is a method for generating an NC program for use in a machine tool. The method for generating an NC program includes: a step for simulating CL data or an NC program that causes a machining step including relative movement with respect to a first coordinate system; and a step for generating an NC program that causes a machining step including relative movement with respect to the second coordinate system when a second coordinate system is selected after the step for simulating.
[0158] The program according to this embodiment is a program executed by a computer that generates an NC program for use in a machine tool. The program causes the computer to simulate CL data or an NC program that causes a machining step including relative movement with respect to a first coordinate system, and after the simulation is performed, when a second coordinate system is selected, the program causes the computer to generate an NC program that causes a machining step including relative movement with respect to the second coordinate system.
[0159] It should be understood that the embodiments disclosed herein are illustrative and non-restrictive in all aspects. The scope of the present invention is defined by the terms of the claims rather than the description of the above embodiments, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
[0160] This nonprovisional application is based on Japanese Patent Application No. 2023-209793 filed with the Japan Patent Office on December 13, 2023, the entire contents of which are incorporated herein by reference.
[0161] Reference Signs List
[0162] 100: Information processing device; 111: Data acquisition unit; 112: Program generation unit; 113: Simulation execution unit; 116: Conditional acceptance unit; 117: Conversion unit; 121: Interference determination unit; 122: Overtravel determination unit; 123: Alternative coordinate system presentation unit; 124: Axis configuration determination unit; 131: User interface processing unit; 136: Storage unit; 142: Machine model selection screen; 143: Simulation screen; 144: Coordinate system selection screen; 151, 151A, 151B, 151C, 151D, 151E: Machine tool information; 152, 152a, 152b, 152c: Correspondence relationship information; 200: Machine tool; 211: Work spindle; 213: First chuck mechanism; 216: Opposing work spindle; 218: Second chuck mechanism; 221: tool spindle; 223: spindle end face; 231: tool holder; 232: rotating part; 236: bed; 300: machining area; 206, 301, 302,303, 304: center axis; 310: cover; 401: first coordinate system; 402: second coordinate system.
Claims
1. An information processing device for generating an NC program for use in a machine tool, the information processing device comprising: Program generation unit for generating NC programs from CL data; as well as A simulation execution unit, configured to execute a simulation of the CL data or the NC program, When a first coordinate system is selected, the program generation unit generates an NC program that causes a machining step including relative movement with respect to the first coordinate system, and when a second coordinate system is selected, the program generation unit generates an NC program that causes a machining step including relative movement with respect to the second coordinate system.
2. The information processing device according to claim 1, wherein When it is determined that an error exists in a machining step including relative movement with respect to the first coordinate system, the simulation execution unit presents the second coordinate system to a user.
3. A method for generating an NC program for use in a machine tool, the method comprising the steps of: executing a simulation of CL data or an NC program causing a machining step including a relative movement with respect to a first coordinate system; as well as After the step for executing the simulation, when the second coordinate system is selected, an NC program is generated that causes a machining step including relative movement with reference to the second coordinate system.
4. A control program for at least one information processing device for generating an NC program for use in a machine tool, The control program causes the at least one information processing device to: performing a simulation of CL data or an NC program causing a machining step including relative movement with respect to a first coordinate system; and After the simulation is performed, when the second coordinate system is selected, an NC program is generated that causes a machining step including relative movement with reference to the second coordinate system.