Program editing apparatus, program editing method, and computer-readable storage medium
By assigning units to the machining program through the program editing device, the problem of operators being unable to confirm the code units is solved, ensuring the accuracy of the machining program.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- FANUC LTD
- Filing Date
- 2023-12-06
- Publication Date
- 2026-06-23
AI Technical Summary
In the program creation device, the operator may fail to easily identify the code units used in the machining program, which may lead to machining errors.
The unit assignment and output units of the program editing device assign units to the machining program based on the G-code and independent variables in the machining program, and output the machining program with assigned units.
Ensure that operators can easily identify and correct unit errors in the machining process to avoid poor machining.
Smart Images

Figure CN122270731A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to a program editing apparatus, a program editing method, and a computer-readable storage medium. Background Technology
[0002] Conventionally, dialog-based program creation devices are used to create processing programs (e.g., Patent Document 1). In such program creation devices, the operator specifies the unit of the independent variable of the code specified by the processing program.
[0003] Existing technical documents
[0004] Patent documents
[0005] Patent Document 1: Japanese Patent Application Publication No. 8-106316 Summary of the Invention
[0006] The problem that the invention aims to solve
[0007] However, the units of the arguments in the machining program generated by the program generation device are not displayed. Therefore, if there is an error in the units used in the machining program, the operator may not notice the error and execute the machining program. In this case, machining defects may occur. Therefore, a technique is sought that allows the operator to easily identify the units used in the generated machining program.
[0008] Methods for solving problems
[0009] The program editing apparatus disclosed herein includes: a unit assignment unit that assigns units to a machining program based on G-codes and independent variables of the G-codes contained in the machining program used for machining in a machining machine; and an output unit that outputs the machining program to which the units have been assigned by the unit assignment unit.
[0010] The program editing method disclosed herein includes: assigning units to a machining program based on the G-codes and independent variables contained in the machining program used for machining in a machining machine; and outputting the machining program with the assigned units.
[0011] The computer-readable storage medium disclosed herein stores commands that enable a computer to execute the following: assign units to a machining program based on G-codes and G-code arguments contained in a machining program used for machining in a machining machine; and output the machining program assigned units. Attached Figure Description
[0012] Figure 1 This is a block diagram illustrating an example of the hardware structure of a program editing device.
[0013] Figure 2 This is a block diagram illustrating an example of the functionality of a program editing device.
[0014] Figure 3 This is an example of a processing program obtained by the program parsing department.
[0015] Figure 4 This is an example of analytical information obtained by a department from an organization.
[0016] Figure 5 It is an example of information corresponding to the first unit as defined in the first form.
[0017] Figure 6 This is an example of a processing procedure that has been assigned to a unit.
[0018] Figure 7 This is a flowchart illustrating an example of a process performed by a program editing device.
[0019] Figure 8 This is an example of information corresponding to the second unit as defined in the second form.
[0020] Figure 9 This is a diagram illustrating an example of how the unit to be assigned has been determined.
[0021] Figure 10 This is an example of a processing program obtained by the program parsing department.
[0022] Figure 11 This is an example of information obtained by a department from information provided by the unit.
[0023] Figure 12 It is an example of a processing program that has been given information that represents the meaning of code.
[0024] Figure 13 This is an example of a processing program obtained by the program parsing department.
[0025] Figure 14 This is an example of analytical information obtained by a department from an organization.
[0026] Figure 15 It is an example of information corresponding to the first unit as defined in the first form.
[0027] Figure 16 This is an example of a processing procedure that has been assigned to a unit.
[0028] Figure 17 This is an example of a processing program obtained by the program parsing department.
[0029] Figure 18 This is an example of analytical information obtained by a department from an organization.
[0030] Figure 19 It is an example of information corresponding to the first unit as defined in the first form.
[0031] Figure 20 This is an example of assigning formatting information.
[0032] Figure 21 It is an example of a processing program that has been given units and the meaning of codes. Detailed Implementation
[0033] Hereinafter, a program editing apparatus, a program editing method, and a computer-readable storage medium according to embodiments of the present disclosure will be described with reference to the accompanying drawings. Furthermore, in the following description, structures having the same or similar functions will be labeled with the same reference numerals. Also, repeated descriptions of these structures will sometimes be omitted.
[0034] In this application, "based on XX" means "at least based on XX," and includes cases based on other elements besides XX. Furthermore, "based on XX" is not limited to the direct use of XX, but also includes cases based on calculations or processing of XX. "XX" can be any element (e.g., any information).
[0035] The program editing apparatus disclosed herein is an apparatus for editing machining programs. The program editing apparatus assigns units to the machining program and outputs the machined program with assigned units. Furthermore, while the machining program edited by the program editing apparatus of this disclosure is an executable machining program, it can also be applied to dialog-type program creation apparatuses that assign units to machining programs during the manufacturing process.
[0036] A machining program is a program used for machining in a machining machine. Examples of machining machines include machine tools, electrical discharge machining (EDM) machines, and 3D printers. Examples of machine tools include machining centers, lathes, and multi-functional machining centers.
[0037] The program editing device may be installed in a PC (Personal Computer), server, or tablet terminal, for example. The program editing device may also be installed in a numerical control device. When the program editing device is installed in a numerical control device, it may also have a control unit for controlling the machining center.
[0038] Figure 1 This is a block diagram illustrating an example of the hardware structure of a program editing device. The program editing device 1 includes, for example, a hardware processor 101, a bus 102, a ROM (Read Only Memory) 103, a RAM (Random Access Memory) 104, a non-volatile memory 105, a first interface 106, and a second interface 107.
[0039] The hardware processor 101 is a processor that controls the entire program editing device 1 according to the system program. The hardware processor 101 reads the system program and the like stored in the ROM 103 via the bus 102. The hardware processor 101 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
[0040] Bus 102 is a communication path that connects the various hardware components of program editing device 1 to each other. The various hardware components of program editing device 1 exchange data via bus 102.
[0041] ROM103 is a storage device for storing system programs, etc. ROM103 is a computer-readable storage medium.
[0042] RAM 104 is a storage device for temporary storage of various data. RAM 104 functions as the working area of the hardware processor 101 for processing various data.
[0043] Non-volatile memory 105 is a storage device that retains data even when the power supply to the program editing device 1 is cut off. For example, non-volatile memory 105 stores edited processing programs. Non-volatile memory 105 is a computer-readable storage medium. Non-volatile memory 105 may be, for example, a battery-backed memory or an SSD (Solid State Drive).
[0044] The first interface 106 is an interface for connecting the bus 102 and the input / output device 2. The first interface 106, for example, transmits various data processed by the hardware processor 101 to the input / output device 2.
[0045] Input / output device 2 receives various data via first interface 106 and displays various data on the display. Additionally, input / output device 2 accepts various data input operations and transmits various data via first interface 106, for example, to hardware processor 101. Input / output device 2 includes, for example, a display, a keyboard, and a mouse.
[0046] The second interface 107 is used to connect the program editing device 1 and the numerical control device 3. The program editing device 1 uses the second interface 107 to connect to the numerical control device 3.
[0047] The numerical control device 3 is a device for controlling the machining machine. The numerical control device 3 controls the movement of the control axes and the rotation of the spindle of the machining machine according to the machining program. Thus, the machining machine performs workpiece machining.
[0048] Figure 2This is a block diagram illustrating an example of the function of the program editing device 1. The program editing device 1 includes, for example, a program parsing unit 111, a unit assignment unit 112, and an output unit 113. The program parsing unit 111, the unit assignment unit 112, and the output unit 113 are implemented, for example, by a hardware processor 101 performing calculations using a system program stored in ROM 103 and various data stored in non-volatile memory 105.
[0049] The program parsing unit 111 acquires the machining program. For example, the program parsing unit 111 acquires the machining program stored in the storage unit (not shown). The program parsing unit 111 may also acquire the machining program from the numerical control device 3.
[0050] The machining program includes G-codes. G-codes are instructions that determine the functional mode of at least one of the machining machine and the numerical control device 3. G-codes consist of "G" followed by numbers.
[0051] Figure 3 This is an example of a machining program obtained by the program parsing unit 111. The first program block of the machining program contains "O1001". "O" is a code that specifies the program number. That is, "O1001" indicates that the machining program number is "1001".
[0052] The program block with serial number "N10" specifies "G00 Xxx Yyy". "G00" is the G-code specifying the positioning of the control axis. "Xxx Yyy" are the arguments of the G-code "G00". The arguments consist of a combination of an address specified by an English letter used in the G-code and the set, followed by a number. "xx" and "yy" are arbitrary numbers.
[0053] "G00" is a modal instruction. A modal instruction is an instruction that is valid before any other modal instructions belonging to the same group are specified. Examples of modal instructions belonging to the same group are "G00", "G01", "G02", and "G03". That is, if "G00" is specified in a program block, "G00" is valid before "G01", "G02", and "G03" are specified in other program blocks that follow that block.
[0054] The code block for serial number "N20" specifies "X15.0 A45.0". "G00" is not specified in the code block for serial number "N20". However, "G00" is specified in the code block for serial number "N10". Therefore, "G00" is valid in the code block for serial number "N20". That is, "X15.0 A45.0" is the argument of the G-code "G00".
[0055] "X15.0" is an argument that specifies the position of the X-axis. When "X15.0" is used in conjunction with G-codes such as "G00", "X15.0" is an argument that specifies the movement of the control axis.
[0056] "A45.0" is the argument that specifies the angle of the rotation axis. When "A45.0" is used in conjunction with G-codes such as "G00", "A45.0" is the argument that specifies the movement of the control axis.
[0057] That is, in the program block with serial number "N20", it is specified that the X-axis is positioned at "15.0" and the angle of the rotary axis is positioned at "45.0" via rapid feed. In addition, a program block is a collection of codes specified by a single line of the machining program.
[0058] In the program block with serial number "N30", "G74 X300.0 Z-150.0 R-120.0 P1000F120.0" is specified. "X300.0 Z-150.0 R-120.0 P1000 F120.0" is the argument of the G code "G74".
[0059] "G74" is a G-code that specifies a fixed cycle for drilling. A fixed cycle is an instruction that uses a G-code to specify a predetermined series of control axis actions for drilling, boring, tapping, or combinations thereof.
[0060] "X300.0" is the independent variable specifying the positioning position on the X-axis. "Z-150.0" is the independent variable specifying the position at the bottom of the hole. "R-120.0" is the independent variable specifying the approach position midway through the hole. "P1000" is the independent variable specifying the stopping time of the tool movement at the bottom of the hole. "F120.0" is the independent variable specifying the tool feed rate.
[0061] That is, in the program block with serial number "N30", the following fixed cycle is specified: the tool is moved to the positioning position "X300.0" by rapid feed, then the tool is moved to the position "Z-120.0" by rapid feed, then the tool is moved to the position "Z-150.0" by feed rate "120.0" [mm / min], then the tool movement stops at the position "Z-150.0" for "1.0" [sec], then the tool is moved to the approach position again by feed rate "120.0" [mm / min].
[0062] The program parsing unit 111 parses the meaning of each code contained in the acquired machining program. Furthermore, the program parsing unit 111 parses the machining program and generates parsing information related to the G-codes contained in the machining program and the independent variables of the G-codes. Additionally, the program parsing unit 111 parses the machining program and generates information indicating whether each independent variable contained in the machining program is a variable indicating the movement of a specified control axis.
[0063] The unit assignment unit 112 obtains the G-code of the machining program produced by the program parsing unit 111 and the parsing information related to the independent variables of the G-code.
[0064] Figure 4 This is an example of the parsing information obtained by the unit from department 112. Figure 4 The parsed information shown is based on Figure 3 The parsed information generated by the processing procedure shown.
[0065] After being parsed by the program parsing unit 111 Figure 3 In the case of the machining program shown, the unit assignment unit 112 obtains the parsing information "G00 X_Y_" for the program block with serial number "N10". The unit assignment unit 112 obtains the parsing information "G00 X_A_" for the program block with serial number "N20". In addition, the unit assignment unit 112 obtains the parsing information "G74 X_Y_Z_R_P_F_" for the program block with serial number "N30".
[0066] exist Figure 3 The program block for serial number "N20" in the shown machining program does not specify "G00", but as mentioned above, "G00" is a modal instruction. Therefore, "G00" is valid in the program block for serial number "N20". Therefore, the unit assignment unit 112 obtains the G code "G00" representing the parsing information in the program block for serial number "N20".
[0067] In addition, Figure 3 The Y-axis position is not specified in the program block with serial number "N30" of the machining program shown, but "Yyy" is specified in the program block with serial number "N10". Therefore, in the program block with serial number "N30", the independent variable obtained by the unit assignment unit 112 includes "Yyy".
[0068] The unit assignment unit 112 assigns units to the machining program based on the G-codes and their arguments contained in the machining program. Specifically, the unit assignment unit 112 obtains unit correspondence information based on the G-codes contained in the machining program. For example, the unit assignment unit 112 obtains unit correspondence information stored in a storage unit (not shown). Based on the obtained unit correspondence information, the unit assignment unit 112 determines the units to be assigned to the machining program.
[0069] Unit correspondence information represents the units of the arguments in G-code. Unit correspondence information includes first unit correspondence information defined in a first form. This first form is, for example, textual.
[0070] Figure 5 It is an example of information corresponding to the first unit as defined in the first form. Figure 5 The unit correspondence information shown represents the unit correspondence of the arguments in the G-code "G74". The unit correspondence information includes the G-code "G74" and the arguments "X_", "Y_", "Z_", "R_", "P_", "F_", and "K_" used with this G-code. Additionally, the unit correspondence information includes "[msec]" for the unit of "P" and "[times]" for the unit of "K". Furthermore, the unit correspondence information includes the text information "R is the same unit as the linear axis" indicating that the unit of "R" is the same as the unit of the linear axis.
[0071] When the unit assignment unit 112 obtains the parsing information "G74 X_Y_Z_R_P_F_" related to the G code and independent variables, the unit assignment unit 112 obtains the unit correspondence information containing "G74". That is, the unit assignment unit 112 obtains... Figure 5 The unit correspondence information is shown.
[0072] In the unit correspondence information, if the unit to be assigned to the independent variable is predetermined, the unit assignment unit 112 assigns the predetermined unit to the independent variable. Figure 5 The unit correspondence information shown predetermines the unit "[msec]" to be assigned to the independent variable "P". Therefore, the unit assignment unit 112 decides to assign the unit "[msec]" to the independent variable "P".
[0073] In addition, Figure 5 In the unit correspondence information shown, the unit "[times]" is predetermined to be assigned to the independent variable "K". Therefore, the unit assignment unit 112 decides to assign the unit "[times]" to the independent variable "K". Here, the independent variable "K" is an independent variable that can be omitted in the processing procedure. If the independent variable "K" is omitted in the processing procedure, and "K" is not included in the parsing information obtained by the unit assignment unit 112 (see...). Figure 4 Unit assignment department 112 decides not to assign the unit "[times]" contained in the unit corresponding information to the processing program.
[0074] In the unit correspondence information, if the unit to be assigned to the independent variable is not predetermined, the unit assignment unit 112 determines the unit to be assigned to the independent variable based on the setting information set by the control device for controlling the machining machine. The setting information may be stored in the control device for controlling the machining machine or in an external storage device connected to the control device via a network line. The control device is, for example, a numerical control device 3. The unit assignment unit 112 obtains the setting information stored in the control device or the external storage device.
[0075] The setting information includes mechanical information representing the structure of the processing machine, as well as parameter setting information representing the parameter settings.
[0076] Mechanical information, for example, indicates the types of control axes a machining machine has. Control axes include linear axes and rotary axes. Linear axes include, for example, the X-axis, Y-axis, and Z-axis. Rotary axes include, for example, the A-axis and C-axis. In other words, mechanical information indicates what control axes a machining machine has.
[0077] Parameter setting information, for example, is information about the initial settings of the control device. Parameter setting information may include, for example, information about the unit of the independent variable representing the movement of a specified rotation axis. The unit of the independent variable specifying the movement of the rotation axis may be, for example, [deg].
[0078] Parameter setting information includes, for example, modal information for the initial setup of the control device. Modal information for the initial setup of the control device may be, for example, the modal command "G21". Modal command "G21" is a G-code that sets the unit of the control axis to the measurement input. Alternatively, modal information for the initial setup of the control device may be, for example, the modal command "G94". Modal command "G94" is a G-code that specifies the feed per minute.
[0079] The unit assignment unit 112, for example, classifies one or more independent variables contained in the acquired parsing information into independent variables that represent the movement of a specified control axis and independent variables other than those representing the movement of a specified control axis. The unit assignment unit 112 classifies the independent variables based on information generated by the program parsing unit 111 indicating whether each independent variable represents the movement of a specified control axis.
[0080] Figure 4 In the independent variables shown, "X_ Y_" in serial number "N10" specifies the movement of the control axis. Similarly, "X_ A_" in serial number "N20" specifies the movement of the control axis. Furthermore, "X_ Y_ Z_" in serial number "N30" specifies the movement of the control axis. On the other hand, "R_ P_ F_" in serial number "N30" is an independent variable other than the one specifying the movement of the control axis.
[0081] Next, the unit assignment unit 112 determines, based on the machine information, whether the independent variable specifying the movement of the control axis is the independent variable specifying the movement of a linear axis or the independent variable specifying the movement of a rotary axis. Furthermore, "X_", "Y_", and "Z_" are independent variables specifying the movement of the linear axis. Additionally, "A_" is the independent variable specifying the movement of the rotary axis.
[0082] The unit assignment unit 112 determines the assignment of [deg] to the independent variable of the specified rotation axis based on the parameter setting information. That is, the unit assignment unit 112 determines to assign [deg] to the independent variable "A_".
[0083] Furthermore, the unit assignment unit 112 assigns [mm] to the independent variable of the movement of the specified linear axis based on the modal information. That is, the unit assignment unit 112 decides to assign [mm] to "X_", "Y_", and "Z_".
[0084] The unit assignment unit 112 also decides to assign units to independent variables that have not yet been assigned units. The unit assignment unit 112 determines to assign units to independent variables that have not yet been assigned units based on unit correspondence information and units that have already been assigned. Figure 5 The unit correspondence information shown includes text information such as "R is the same unit as the linear axis". Therefore, the unit assignment unit 112 decides to assign the independent variable "R" the same unit [mm] as that already assigned to the independent variables of the linear axis such as "Z_".
[0085] Furthermore, the unit assignment unit 112 determines to assign units to independent variables that have not yet been assigned units, based on the units assigned to the independent variable for the movement of the specified linear axis and the modal information. The unit assigned to the independent variable for the movement of the specified linear axis is [mm]. In addition, the feed per minute "G94" is set in the modal information. Therefore, the unit assignment unit 112 determines to assign [mm / min] to the independent variable "F".
[0086] The unit assignment unit 112 assigns units to the processing procedure based on the prescribed assignment format information. The assignment format information specifies the format in which the units determined by the unit assignment unit 112 are assigned. Alternatively, the assignment format information specifies whether to assign the determined units to the processing procedure.
[0087] For example, the assignment format information specifies that no unit is assigned to the argument for the movement of the specified control axis. Additionally, the assignment format information specifies that units determined by the unit assignment unit 112 are assigned to arguments other than the argument for the movement of the specified control axis.
[0088] Therefore, when the format information specifies that units are assigned only to the independent variables other than the independent variables that control the movement of the specified axis, the unit assignment unit 112 assigns units only to "P", "R", and "F".
[0089] Furthermore, the formatting information may also specify that information other than units is assigned to the processing program. For example, the formatting information may also specify that information representing the meaning of a code is assigned to the processing program. When the formatting information specifies that information representing the meaning of a code is assigned to the processing program, the unit assignment unit 112 obtains the information representing the meaning of the code from the storage unit, for example, and assigns the information to the processing program.
[0090] The output unit 113 outputs the processing program assigned to the unit by the unit assignment unit 112. The output unit 113 assigns the processing program to at least one of the following: a display device, an external device, and a storage device. The display device is, for example, an input / output device 2. The external device is, for example, a numerical control device 3. The storage device is, for example, a non-volatile memory 105.
[0091] Figure 6 This is an example of a processing procedure that has been assigned to a unit. Figure 6 The machining program shown is a machining program that assigns units to independent variables other than the independent variable for the movement of the specified control axis.
[0092] That is, assign the unit "[mm]" to the independent variable "R". Assign the unit "[msec]" to the independent variable "P". Assign the unit "[mm / min]" to the independent variable "F". In addition, assign "(PROGRAM NUMBER)" to "O1001" to indicate that the machining program is a machining program with assigned units.
[0093] Figure 7 This is a flowchart illustrating an example of the processing performed by the program editing device 1. In the program editing device 1, firstly, the program parsing unit 111 obtains the processing program (step S1).
[0094] Next, the program parsing unit 111 parses the processing program (step S2). Next, the program parsing unit 111 generates parsing information related to the G-code contained in the processing program and the independent variables of the G-code (step S3).
[0095] Next, the unit assignment unit 112 obtains the parsing information generated by the program parsing unit 111 (step S4). Next, the unit assignment unit 112 obtains the unit corresponding information (step S5).
[0096] Next, the unit assignment unit 112 determines the unit to be assigned to the independent variable based on at least one of the unit correspondence information, modal information, and parameter setting information (step S6). Then, the unit assignment unit 112 assigns the unit to the machining program according to the assignment format information (step S7). Finally, the output unit 113 outputs the machining program with the assigned unit (step S8), and the processing in the program editing device 1 ends.
[0097] Next, an implementation method that defines unit-corresponding information in a second form, different from the first form, will be described. Furthermore, descriptions of functions and structures identical to those of the program editing device 1 described above will be omitted.
[0098] The program parsing unit 111 acquires the processing program. For example, the program parsing unit 111 acquires... Figure 3 The processing procedure shown.
[0099] The program parsing unit 111 parses the meaning of each code contained in the acquired machining program. Furthermore, the program parsing unit 111 parses the machining program and generates parsing information related to the G-codes contained in the machining program and the independent variables of the G-codes. Additionally, the program parsing unit 111 parses the machining program and generates information indicating whether each independent variable contained in the machining program is a variable indicating the movement of a specified control axis.
[0100] The unit assignment unit 112 obtains the parsing information of the machining program produced by the program parsing unit 111. The unit assignment unit 112 obtains... Figure 4 The parsing information shown.
[0101] The unit assignment unit 112 assigns units to the machining program based on the G-codes and their arguments contained in the machining program. Specifically, the unit assignment unit 112 obtains unit-corresponding information based on the G-codes contained in the machining program. For example, the unit assignment unit 112 obtains unit-corresponding information stored in the storage unit. The unit assignment unit 112 assigns units to the machining program based on the obtained unit-corresponding information.
[0102] Unit assignment section 112 obtains information corresponding to a second unit defined in a second form different from the first form. The second form is, for example, a tabular form.
[0103] Figure 8 This is an example of information corresponding to the second unit as defined in the second form. Figure 8 The unit correspondence information shown includes information on the units of the independent variables representing the G codes “G00”, “G01”, “G74”, “G94” and “G95”.
[0104] The unit correspondence information includes the G-code "G00" and the independent variables "X", "Y", "Z", "A", and "S" used with that G-code. Additionally, the unit correspondence information associates the "axis" representing the control axes of the independent variables "X", "Y", "Z", and "A" with "X", "Y", "Z", and "A". Furthermore, the unit correspondence information includes " / min" representing the unit of "S".
[0105] The unit correspondence information includes the G-code "G01" and the independent variables "X", "Y", "Z", "A", "F", and "S" used with that G-code. Additionally, the unit correspondence information associates the "axis" representing the control axes of the independent variables "X", "Y", "Z", and "A" with "X", "Y", "Z", and "A". Furthermore, the unit correspondence information includes "axis / min" and "axis / rev" for the unit representing "F". Additionally, the unit correspondence information includes " / min" for the unit representing "S".
[0106] The unit correspondence information includes the G-code "G74" and the independent variables "X", "Y", "Z", "A", "F", "R", "P", and "K" used with this G-code. Additionally, the unit correspondence information associates the "axis" representing the control axes of the independent variables "X", "Y", "Z", and "A" with "X", "Y", "Z", and "A". Furthermore, the unit correspondence information includes "axis / min" and "axis / rev" representing the units of "F". Additionally, the unit correspondence information associates the "axis" representing "R" with the same units as the linear axes. Furthermore, the unit correspondence information includes "msec" representing the units of "P". Finally, the unit correspondence information includes "times" representing the units of "K".
[0107] The unit correspondence information includes the G-code "G94" and the argument "F" used with that G-code. The unit correspondence information includes "axis / min" representing the unit of "F" which is the argument of that G-code.
[0108] The unit correspondence information includes the G-code "G95" and the argument "F" used with that G-code. "G95" is the G-code that specifies the feed per revolution. The unit correspondence information includes "axis / rev" representing the unit of "F", which is the argument of that G-code.
[0109] When the unit assignment unit 112 obtains the parsing information related to the G code and the independent variable, it determines the unit to be assigned to the independent variable based on the corresponding unit information.
[0110] Figure 9This diagram illustrates an example of the unit assignment unit 112 determining the unit to be assigned. When the unit assignment unit 112 obtains the parsing information "G00 X_Y_" related to the G code and independent variables, it obtains the unit correspondence information for "G00". That is, the unit assignment unit 112 obtains the "axis" associated with the independent variables "X" and "Y" of "G00". Furthermore, the unit assignment unit 112 decides to assign the "axis" to the independent variables "X" and "Y".
[0111] When the unit assignment unit 112 obtains the parsing information "G00 X_A_", it also obtains the unit correspondence information for "G00". That is, the unit assignment unit 112 obtains the "axis" associated with the independent variables "X" and "A" of "G00". Furthermore, the unit assignment unit 112 decides to assign "axis" to the independent variables "X" and "A".
[0112] When the unit assignment unit 112 obtains the parsed information "G74 X_Y_Z_R_P_F_", it obtains the unit correspondence information for "G74". That is, the unit assignment unit 112 obtains the "axis" associated with the independent variables "X", "Y", "Z", and "R" of "G74". Additionally, the unit assignment unit 112 obtains the "msec" associated with the independent variable "P" of "G74". Furthermore, the unit assignment unit 112 obtains the "axis / min" associated with the independent variable "F" of "G74".
[0113] Furthermore, the unit assignment unit 112 determines to assign "axis" to the independent variables "X", "Y", "Z" and "R". Additionally, the unit assignment unit 112 determines to assign "msec" to the independent variable "P". Furthermore, the unit assignment unit 112 determines to assign "axis / min" to the independent variable "F".
[0114] The unit assignment unit 112 classifies one or more independent variables contained in the acquired parsed information into independent variables that represent the movement of a specified control axis and independent variables other than those representing the movement of a specified control axis. The unit assignment unit 112 classifies the independent variables based on information generated by the program parsing unit 111 that indicates whether each independent variable represents the movement of a specified control axis.
[0115] Figure 9 In the independent variables shown, "X_ Y_" in serial number "N10" specifies the movement of the control axis. Similarly, "X_ A_" in serial number "N20" specifies the movement of the control axis. Furthermore, "X_ Y_ Z_" in serial number "N30" specifies the movement of the control axis. On the other hand, "R_ P_ F_" in serial number "N30" is an independent variable other than the one specifying the movement of the control axis.
[0116] Next, the unit assignment unit 112 determines, based on the machine information, whether the independent variable specifying the movement of the control axis is the independent variable specifying the movement of a linear axis or the independent variable specifying the movement of a rotary axis. Furthermore, "X_", "Y_", and "Z_" are independent variables specifying the movement of the linear axis. Additionally, "A_" is the independent variable specifying the movement of the rotary axis.
[0117] The unit assignment unit 112 assigns [deg] to the independent variable of the specified rotation axis based on the parameter setting information. That is, the unit assignment unit 112 assigns [deg] to the independent variable "A_".
[0118] Furthermore, the unit assignment unit 112 assigns [mm] to the independent variable of the movement of the specified linear axis based on the modal information. That is, the unit assignment unit 112 assigns [mm] to "X_", "Y_", and "Z_". In addition, the unit correspondence information includes the information that "R" is "the same unit as the linear axis". Therefore, the unit assignment unit 112 assigns "mm" to "R" with the same unit as the linear axis.
[0119] If the assignment format is not specified in the assignment format information, the unit assignment section 112 will directly assign the unit to be assigned to the independent variable.
[0120] Output unit 113 outputs the machining program assigned to the unit by unit assignment unit 112. For example, output unit 113 outputs... Figure 6 The processing procedure shown.
[0121] Next, an example of specifying G-code without arguments will be given.
[0122] Figure 10 This is an example of a machining program obtained by the program parsing unit 111. The first line of the machining program contains "O1000". That is, the machining program number is "1000".
[0123] The program block with serial number "N30" specifies "G80". "G80" is a G code that specifies cancellation at a fixed period.
[0124] The code block with serial number "N31" specifies "G4.1". "G4.1" is the G code that specifies the masking of the buffer.
[0125] The program parsing unit 111 parses the meaning of each code contained in the acquired processing program. In addition, the program parsing unit 111 parses the processing program and creates parsing information related to the G-code contained in the processing program and the independent variables of the G-code.
[0126] Unit 112 receives the parsed information produced by program parsing unit 111. The program parsing unit 111 then parses... Figure 10In the case of the processing procedure shown, the unit assignment unit 112 obtains the parsing information "G80" for the program block with serial number "N30". In addition, the unit assignment unit 112 obtains the parsing information "G4.1" for the program block with serial number "N31".
[0127] Unit 112 obtains the corresponding unit information based on the G code contained in the processing program.
[0128] Figure 11 This is an example of unit-related information obtained by department 112 from the unit. Figure 11 The unit correspondence information shown is the unit correspondence information for G codes "G80" and "G4.1".
[0129] The unit correspondence information includes "No independent variable" indicating that there is no independent variable corresponding to "G80". Additionally, the unit correspondence information includes "(Fixed-period cancellation)" indicating that "G80" is a fixed-period cancellation instruction.
[0130] Additionally, the unit correspondence information includes "No independent variable" indicating that there is no independent variable corresponding to "G4.1". Furthermore, the unit correspondence information includes "(G-code based masking cache)" indicating that "G4.1" is a masking cache based on G-code.
[0131] The unit assignment unit 112 assigns units to the arguments of the G-code based on the unit correspondence information. If there is no argument corresponding to the G-code, the unit assignment unit 112 does not assign units.
[0132] When a G-code without a corresponding argument is specified through the processing procedure, the format information can also be used to specify that information representing the meaning of the code is assigned to the processing procedure.
[0133] The formatting information can specify, for example, that "G80" is assigned "cycle cancel mode". Additionally, the formatting information can specify that "G4.1" is assigned "non-buffering command by G code". The unit assignment unit 112 will assign the information specified in the formatting information to the processing program.
[0134] Figure 12This is an example of a processing program that has been assigned information indicating the meaning of its codes. The unit assignment unit 112 assigns "(PROGRAM NUMBER)" to the code representing the processing program number. Additionally, the unit assignment unit 112 assigns "(cycle cancel mode)" to "G80," indicating that "G80" is a fixed-cycle cancel instruction. Furthermore, the unit assignment unit 112 assigns "(non-buffering command by Gcode)" to "G4.1," indicating that "G4.1" is an instruction specifying a G-code-based masking buffer. The output unit 113 outputs the processing program that has been assigned information indicating the meaning of its codes.
[0135] Next, an example will be given in which the same address is assigned different units in the processing procedure.
[0136] Figure 13 This is an example of a machining program obtained by the program parsing unit 111. The first program block of the machining program contains "O1002". That is, the machining program number is "1002".
[0137] The program block for serial number "N10" specifies "G01 X100.0 F150.0". The program block for serial number "N20" specifies "G95 X50.0 F0.15". The program block for serial number "N30" specifies "G20 X30.0 F0.10". The program block for serial number "N40" specifies "G94 X10.0 F100.0". Furthermore, "G20" is a G code specifying inch input.
[0138] The program parsing unit 111 parses the meaning of each code contained in the acquired machining program. Furthermore, the program parsing unit 111 parses the machining program and generates parsing information related to the G-codes contained in the machining program and the independent variables of the G-codes. Additionally, the program parsing unit 111 parses the machining program and generates information indicating whether each independent variable contained in the machining program is a movement of a specified control axis.
[0139] The unit assignment unit 112 obtains the G-code of the machining program produced by the program parsing unit 111 and the parsing information related to the independent variables of the G-code.
[0140] Figure 14 This is an example of parsing information related to the G-code and the independent variables of the G-code obtained by the unit 112. Figure 14 The information shown is based on Figure 13 The information generated by the processing procedure shown.
[0141] After being parsed by the program parsing unit 111 Figure 13In the machining process shown, unit assignment unit 112 obtains the parsing information "G01 X_ F_" for the program block with serial number "N10". Unit assignment unit 112 obtains the parsing information "G95 X_ F_" for the program block with serial number "N20". Additionally, unit assignment unit 112 obtains the parsing information "G20 X_ F_" for the program block with serial number "N30". Furthermore, unit assignment unit 112 obtains the parsing information "G94 X_ F_" for the program block with serial number "N40".
[0142] The unit assignment unit 112 assigns units to the machining program based on the G-codes and their independent variables contained in the machining program. Specifically, the unit assignment unit 112 obtains unit-corresponding information based on the G-codes contained in the machining program. The unit assignment unit 112 then assigns units to the machining program based on the obtained unit-corresponding information.
[0143] Figure 15 It is an example of information corresponding to the first unit as defined in the first form. Figure 15 The unit correspondence information shown represents the unit correspondence information of the independent variables of the G codes "G01", "G95", "G20" and "G94".
[0144] The unit correspondence information includes the G-code "G01" and the independent variables "X_", "Y_", "Z_", and "F_" used with this G-code. The unit correspondence information includes the G-code "G95" and the independent variable "F_" used with this G-code. Furthermore, the unit assigned to the independent variable "F_" is pre-defined as "axis / rev".
[0145] The unit information includes the G-code "G20" and the independent variables "X_", "Y_", and "Z_" used with this G-code. In addition, the unit assigned to the independent variables "X_", "Y_", and "Z_" is predetermined as "[inch]".
[0146] The unit correspondence information includes the G-code "G94" and the independent variable "F_" used with that G-code. In addition, the unit assigned to the independent variable "F_" is predetermined as "[axis / min]".
[0147] When the unit assignment unit 112 obtains the parsing information “G01 X_ F_”, the unit assignment unit 112 obtains the unit corresponding information containing “G01”.
[0148] When the unit assignment unit 112 obtains the parsed information "G95 X_ F_", it also obtains the unit correspondence information containing "G95". In the unit correspondence information, it is pre-determined that the argument "F" for "G95" is assigned "axis / rev". Therefore, the unit assignment unit 112 assigns the unit "axis / rev" to the argument "F" of the G code "G95".
[0149] When the unit assignment unit 112 obtains the parsing information “G20 X_ F_”, the unit assignment unit 112 obtains the unit corresponding information containing “G20”.
[0150] When the unit assignment unit 112 obtains the parsed information "G94 X_ F_", it also obtains the unit correspondence information containing "G94". In the unit correspondence information, it is predetermined that the independent variable "F" of "G94" will be assigned "axis / min". Therefore, the unit assignment unit 112 assigns the unit "axis / min" to the independent variable "F" of the G code "G94".
[0151] Furthermore, the unit assignment unit 112 classifies one or more independent variables contained in the acquired parsing information into independent variables that indicate the movement of the specified control axis and independent variables other than those indicating the movement of the specified control axis. The unit assignment unit 112 classifies the independent variables based on information generated by the program parsing unit 111 indicating whether each independent variable is an independent variable indicating the movement of the specified control axis.
[0152] Figure 14 The "X_" in the serial numbers "N10", "N20", "N30", and "N40" shown are independent variables that specify the movement of the control axis. Therefore, the unit assignment unit 112 classifies "X_" as an independent variable that specifies the movement of the control axis.
[0153] Next, the unit assignment unit 112 determines, based on the machine information, whether the independent variable specifying the movement of the control axis is the independent variable specifying the movement of a linear axis or the independent variable specifying the movement of a rotary axis. Furthermore, "X_" is the independent variable specifying the movement of a linear axis. Therefore, the unit assignment unit 112 classifies "X_" as the independent variable specifying the movement of a linear axis.
[0154] Furthermore, the unit assignment unit 112 determines the unit assigned to the independent variable of the movement of the specified linear axis based on the modal information. In the control device, "G21" is set as the modal information. Therefore, the "X" of the serial numbers "N10" and "N20" is assigned the unit "[mm]".
[0155] On the other hand, "G20" is specified as a modal instruction in the serial number "N30". Therefore, the "X" in the serial numbers "N30" and "N40" is assigned the unit "[inch]".
[0156] The unit assignment unit 112 also determines the unit of the independent variable whose unit has not yet been determined. The unit assignment unit 112 determines the unit of the independent variable whose unit has not yet been determined based on at least one of the machine information and the parameter setting information.
[0157] In the control device, "G94" is initially set as the modal information specifying the feed per minute. Additionally, as described above, "G21" is initially set as the modal information specifying the measurement input. Therefore, the unit assignment unit 112 determines to assign "mm / min" to "F" for serial number "N10". Furthermore, the unit assignment unit 112 determines to assign "mm / rev" to "F" for serial number "N20".
[0158] Furthermore, the serial number "N30" specifies "G20" for inch input. Additionally, the serial number "N20" specifies "G95" for feed per revolution. Therefore, the unit assignment unit 112 determines to assign "inch / rev" to "F" in the serial number "N30".
[0159] Furthermore, serial number "N40" specifies "G94" for feed per minute. Additionally, serial number "N30" specifies "G20" for inch input. Therefore, unit assignment unit 112 assigns "inch / min" to "F" in serial number "N40". Output unit 113 outputs the machining program assigned to the unit by unit assignment unit 112.
[0160] Figure 16 This is an example of a machining program that has been assigned units. The unit "[mm]" is assigned to "X" in the program block with serial number "N10". Additionally, the unit "[mm / min]" is assigned to "F".
[0161] Assign the unit "[mm]" to the "X" of the program block with serial number "N20". Also, assign the unit "[mm / rev]" to "F".
[0162] Assign the unit "[inch]" to the "X" of the program block with serial number "N30". Also, assign the unit "[inch / rev]" to "F".
[0163] Assign the unit "[inch]" to the "X" of the program block with serial number "N40". Also, assign the unit "[inch / min]" to "F".
[0164] Next, other examples will be explained where the same address is assigned different units in the processing procedure.
[0165] Figure 17This is an example of a machining program obtained by the program parsing unit 111. The first program block of the machining program contains "O1003". That is, the machining program number is "1003".
[0166] The program block with serial number "N20" specifies "G02 X60.0 Y55.0 R50.0 F300.0". "G02" is the G code that specifies circular interpolation. "X60.0 Y55.0 R50.0 F300.0" is the argument of the G code "G02".
[0167] "X60.0" is the independent variable specifying the position on the X-axis. "Y55.0" is the independent variable specifying the position on the Y-axis. "R50.0" is the independent variable specifying the radius of the arc. "F300.0" is the independent variable specifying the tool feed rate. That is, in the program block with serial number "N20", it is specified that the tool moves to the position of "60.0" on the X-axis and the position of "55.0" on the Y-axis at a feed rate of "300.0" by drawing an arc with a radius of "50.0".
[0168] The program block with serial number "N30" specifies "G68 X0 Y0 R55.0". "G68" is the G-code that specifies a three-dimensional coordinate transformation. "X0 Y0 R55.0" is the argument of the G-code "G68".
[0169] “X0 Y0” is an independent variable that specifies the center position of the rotating coordinate system. “R55.0” is an independent variable that specifies the rotation angle of the coordinate system. That is, in the program block with serial number “N30”, it is specified that the coordinate system is rotated by 55° with “X0 Y0” as the center.
[0170] The program block with serial number "N40" specifies "G04 X4.0". "G04" is the G-code that specifies a pause. "X4.0" is the argument of the G-code "G04".
[0171] “X4.0” is an argument that specifies the pause time. That is, in the program block with sequence number “N40”, it is specified that the program’s progress will be stopped for 4.0 [sec].
[0172] The program parsing unit 111 parses the meaning of each code contained in the acquired machining program. Furthermore, the program parsing unit 111 parses the machining program and generates parsing information related to the G-codes contained in the machining program and the independent variables of the G-codes. Additionally, the program parsing unit 111 parses the machining program and generates information indicating whether each independent variable contained in the machining program is a variable indicating the movement of a specified control axis.
[0173] Unit 112 obtains the parsing information produced by program parsing unit 111.
[0174] Figure 18 This is an example of the parsing information obtained by the unit from department 112. Figure 18 The parsed information shown is based on Figure 17 The information generated by the processing procedure shown.
[0175] After being parsed by the program parsing unit 111 Figure 17 In the case of the machining program shown, the unit assignment unit 112 obtains the parsing information "G02 X_ Y_ R_ F_" for the program block with serial number "N20". The unit assignment unit 112 obtains the parsing information "G68 X_ Y_ R_" for the program block with serial number "N30". Furthermore, the unit assignment unit 112 obtains the parsing information "G04 X_" for the program block with serial number "N40".
[0176] The unit assignment unit 112 assigns units to the machining program based on the G-codes and their independent variables contained in the machining program. Specifically, the unit assignment unit 112 obtains unit-corresponding information based on the G-codes contained in the machining program. The unit assignment unit 112 then assigns units to the machining program based on the obtained unit-corresponding information.
[0177] Figure 19 It is an example of information corresponding to the first unit as defined in the first form. Figure 19 The unit correspondence information shown represents the unit correspondence information of the independent variables in G codes “G02”, “G68”, and “G04”.
[0178] The unit correspondence information includes the G-code "G02" and the independent variables "X_", "Y_", "Z_", "R_", and "F_" used with this G-code. The unit correspondence information includes the G-code "G68" and the independent variables "X_", "Y_", "Z_", and "R_" used with this G-code. Additionally, the unit assigned to the independent variable "R_" is pre-determined as "deg". Furthermore, the unit correspondence information includes the G-code "G04" and the independent variable "X_" or "P_" used with this G-code.
[0179] When the unit assignment unit 112 obtains the parsing information “G02 X_ Y_ R_ F_”, the unit assignment unit 112 obtains the unit corresponding information containing “G02”.
[0180] When the unit assignment unit 112 obtains the parsed information "G68 X_ Y_ R_", it obtains the unit correspondence information containing "G68". In the unit correspondence information, it is predetermined that the argument "R" of "G68" will be assigned "[deg]". Therefore, the unit assignment unit 112 assigns the unit "[deg]" to the argument "R" of the G code "G68".
[0181] When the unit assignment unit 112 obtains the parsing information "G04 X_" related to the G code and independent variables, the unit assignment unit 112 obtains the unit corresponding information containing "G04".
[0182] Furthermore, the unit assignment unit 112 classifies one or more independent variables contained in the acquired parsing information into independent variables that represent the movement of the specified control axis and independent variables other than those representing the movement of the specified control axis. The unit assignment unit 112 classifies the independent variables based on information generated by the program parsing unit 111 indicating whether each independent variable represents the movement of the specified control axis.
[0183] Figure 18 The "X_ Y_" in the serial numbers "N20" and "N30" shown are independent variables that specify the movement of the control axis. Therefore, the unit assignment unit 112 classifies "X_ Y_" as independent variables that specify the movement of the control axis.
[0184] Next, the unit assignment unit 112 determines, based on the machine information, whether the independent variable specifying the movement of the control axis is the independent variable specifying the movement of a linear axis or the independent variable specifying the movement of a rotary axis. Furthermore, "X_ Y_" is the independent variable specifying the movement of a linear axis. Therefore, the unit assignment unit 112 classifies "X_ Y_" as the independent variable specifying the movement of a linear axis.
[0185] Furthermore, the unit assignment unit 112 determines the unit assigned to the independent variable of the movement of the specified linear axis based on the modal information. In the control device, "G21" is set as the modal information. Therefore, the unit "[mm]" is assigned to "X" and "Y" of the serial numbers "N20" and "N30".
[0186] The unit assignment unit 112 also decides to assign units to independent variables that have not yet been assigned units. The unit assignment unit 112 decides to assign units to independent variables that have not yet been assigned units based on the unit correspondence information and the units that have already been assigned.
[0187] In the control device, "G94" specifying the feed per minute is initially set as modal information. Additionally, as described above, "G21" specifying the measurement input is initially set as modal information in the control device. Therefore, the unit assignment unit 112 determines to assign "mm / min" to "F" for serial number "N20". Furthermore, the unit assignment unit 112 determines to assign "mm" to "R" for serial number "N20".
[0188] Furthermore, in the control device, as parameter setting information, the unit of the independent variable "X" that specifies the pause time is initially set to "[sec]". Therefore, the unit assignment unit 112 decides to assign "sec" to "X" of the serial number "N40".
[0189] The unit assignment unit 112 assigns unit information to the processing procedure based on the assignment format information. The assignment format information, for example, specifies information indicating the meaning of the code assigned to the processing procedure.
[0190] Figure 20 This is an example of assigning format information. The format information includes "(PROGRAMNUMBER)" associated with code "O". Additionally, the format information includes "(circular interpolation)" indicating the meaning of the code associated with G code "G02". Furthermore, the format information includes "(3-dimensional coordinate system conversion)" indicating the meaning of the code associated with G code "G68". Additionally, the format information includes "(dwell)" indicating the meaning of the code associated with G code "G04". The unit assignment unit 112 assigns information indicating the meaning of the codes to the machining program based on the format information.
[0191] The output unit 113 outputs the processing program that has been assigned units and meanings of codes by the unit assignment unit 112.
[0192] Figure 21 This is an example of a processing program that has been assigned units and information representing codes. Furthermore, the program number is assigned unit information "(PROGRAM NUMBER)".
[0193] Assign the unit "[mm]" to "X", "Y", and "R" of the program block with serial number "N20". Additionally, assign the unit "[mm / min]" to "F". Furthermore, assign the information "(circularinterpolation)" to the program block with serial number "N20" to indicate the meaning of the code.
[0194] Assign the unit "[mm]" to "X" and "Y" of the program block with serial number "N30". Additionally, assign the unit "[deg]" to "R". Furthermore, assign the information indicating the code meaning "(3-dimensional coordinate system conversion)" to the program block with serial number "N30".
[0195] Assign the unit "[sec]" to the "X" of the program block with serial number "N40". Also, assign the information "(dwell)" to the program block with serial number "N40" to indicate the meaning of the code.
[0196] As explained above, the program editing device 1 includes: a unit assignment unit 112, which assigns units to the machining program based on the G-code and the independent variables of the G-code contained in the machining program used in the machining machine; and an output unit 113, which outputs the machining program for which units have been assigned by the unit assignment unit 112. Therefore, the program editing device 1 enables the operator to easily identify the units used in the created machining program.
[0197] Furthermore, the unit assignment unit 112 assigns units to the machining program based on at least one of the unit correspondence information of the units of the independent variables representing the G-code and the setting information set for the control device controlling the machining machine. In addition, if the unit to be assigned to the independent variable is predetermined in the unit correspondence information, the unit assignment unit 112 assigns the predetermined unit to the independent variable; if the unit to be assigned to the independent variable is not predetermined in the unit correspondence information, the unit assignment unit 112 assigns the unit to the independent variable based on the setting information. Therefore, even if different units are assigned to the independent variables based on the setting information, the program editing device 1 can still assign the correct units to the machining program.
[0198] Furthermore, the setting information is stored in the control device that controls the machining center, or in an external storage device connected to the control device via a network line. Therefore, the program editing device 1 does not need to pre-store the setting information. As a result, the storage capacity of the program editing device 1 can be reduced.
[0199] Furthermore, the unit correspondence information includes first unit correspondence information defined in a first form, or second unit correspondence information defined in a second form different from the first form. Additionally, the unit assignment unit 112 assigns units to the independent variables. That is, the program editing device 1 can assign units to the independent variables using unit correspondence information defined in various forms.
[0200] Furthermore, the output unit 113 assigns a unit of processing program to at least one of the outputs from the display device, external device, and storage device. Therefore, the program editing device 1 enables the operator to utilize the assigned unit of processing program in various devices.
[0201] In addition, the program editing device 1 also has a control unit for controlling the machining center. That is, the program editing device 1 can also be installed in the numerical control device 3 that controls the machining center.
[0202] This disclosure has been described in detail, but it is not limited to the various embodiments described above. These embodiments can be modified, supplemented, altered, or partially deleted in various ways without departing from the spirit of this disclosure or from the spirit of the disclosure derived from the claims and their equivalents. Furthermore, these embodiments can also be implemented in combination.
[0203] The following are notes indicating embodiments of the present disclosure.
[0204] Postscript [1]
[0205] A program editing apparatus comprising: a unit assignment unit that assigns units to a machining program for machining in a machining machine based on G-codes contained therein and the independent variables of the G-codes; and an output unit that outputs the machining program to which the units have been assigned by the unit assignment unit.
[0206] Postscript [2]
[0207] According to the program editing apparatus described in Appendix [1], the unit assignment unit further determines the unit assigned to the machining program based on at least one of unit correspondence information of the unit of the independent variable representing the G code and setting information set for the control device controlling the machining machine.
[0208] Postscript [3]
[0209] According to the program editing device described in Appendix [2], when the unit to be assigned to the independent variable is predetermined in the unit correspondence information, the unit assignment unit decides to assign the predetermined unit to the independent variable; when the unit to be assigned to the independent variable is not predetermined in the unit correspondence information, the unit assignment unit decides to assign the unit to the independent variable according to the setting information.
[0210] Postscript [4]
[0211] According to the program editing device described in Appendix [2] or [3], the setting information is stored in a control device that controls the processing machine or in an external storage device connected to the control device via a network line.
[0212] Postscript [5]
[0213] According to any one of the appendices [2] to [4], the program editing apparatus wherein the unit correspondence information includes first unit correspondence information defined in a first form or second unit correspondence information defined in a second form different from the first form.
[0214] Postscript [6]
[0215] According to any one of the appendices [1] to [3], the program editing apparatus wherein the unit assignment unit assigns the unit to the independent variable.
[0216] Postscript [7]
[0217] According to any one of the appendices [1] to [4], the program editing apparatus wherein the output unit outputs the processing program of the unit to at least one of the display device, the external device and the storage device.
[0218] Postscript [8]
[0219] The program editing apparatus according to any one of the appendices [1] to [7] further comprises: a control unit that controls the processing machine.
[0220] Postscript [9]
[0221] According to any one of the appendices [1] to [8], the program editing apparatus wherein the unit assignment unit assigns the unit to the processing program according to assignment format information that specifies the assignment format of the unit.
[0222] Postscript
[10]
[0223] A program editing method comprising: assigning units to the machining program based on G-code contained in a machining program used for machining in a machining machine and the independent variables of the G-code; and outputting the machining program assigned the units.
[0224] Postscript
[11]
[0225] A computer-readable storage medium, wherein storing commands that cause a computer to execute the following: assigning units to a machining program contained in a machining program for machining in a machining machine and the arguments of the G-code; and outputting the machining program assigned the units.
[0226] Explanation of reference numerals in the attached figures
[0227] 1. Program editing device
[0228] 101 Hardware Processor
[0229] 102 bus
[0230] 103 ROM
[0231] 104 RAM
[0232] 105 Non-volatile memory
[0233] 106 First Interface
[0234] 107 Second Interface
[0235] 111 Program Analysis Department
[0236] Unit 112 is assigned to the department
[0237] 113 Output Section
[0238] 2 Input / output devices
[0239] 3. Numerical control device.
Claims
1. A program editing device, characterized in that, have: The unit assignment department assigns units to the machining program based on the G-code contained in the machining program used for machining in the machining machine and the independent variables of the G-code; The output unit outputs the processing program assigned to the unit by the unit assignment unit.
2. The program editing device according to claim 1, characterized in that, The unit assignment unit further determines the unit assigned to the machining program based on at least one of the unit correspondence information of the unit of the independent variable representing the G code and the setting information set for the control device controlling the machining machine.
3. The program editing device according to claim 2, characterized in that, If the unit to be assigned to the independent variable is predetermined in the unit correspondence information, the unit assignment unit decides to assign the predetermined unit to the independent variable. If the unit to be assigned to the independent variable is not predetermined in the unit correspondence information, the unit assignment unit determines to assign the unit to the independent variable based on the setting information.
4. The program editing device according to claim 2 or 3, characterized in that, The setting information is stored in the control device that controls the processing machine, or in an external storage device connected to the control device via a network line.
5. The program editing device according to any one of claims 2 to 4, characterized in that, The unit correspondence information includes first unit correspondence information defined in a first form, or second unit correspondence information defined in a second form different from the first form.
6. The program editing apparatus according to any one of claims 1 to 3, characterized in that, The unit assignment part assigns the unit to the independent variable.
7. The program editing apparatus according to any one of claims 1 to 4, characterized in that, The output unit outputs the processing program of the unit to at least one of the display device, external device, and storage device.
8. The program editing apparatus according to any one of claims 1 to 7, characterized in that, The program editing device further includes a control unit that controls the processing machine.
9. The program editing apparatus according to any one of claims 1 to 8, characterized in that, The unit assignment unit assigns the unit to the processing program according to the assignment format information that specifies the assignment format of the unit.
10. A program editing method, characterized in that, Include: Units are assigned to the machining program based on the G-code contained in the machining program used for machining in the machining machine and the independent variables of the G-code; The output is assigned to the processing procedure of the unit.
11. A computer-readable storage medium, characterized in that, Storage causes the computer to execute the following commands: Units are assigned to the machining program based on the G-code contained in the machining program used for machining in the machining machine and the independent variables of the G-code; The output is assigned to the processing procedure of the unit.