Machining program change device and machining program change method
The machining program changing apparatus automates the identification and modification of change ranges using extraction rules, addressing inefficiencies in manual specification and enhancing productivity in machining program editing.
Patent Information
- Application Number
- DE112017006457
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2017-12-26
- Publication Date
- 2025-10-23
- Estimated Expiration
- 2037-12-26
AI Technical Summary
Existing machining program editing systems require employees to manually specify change ranges, which is time-consuming and inefficient, especially for long programs or multiple changes, leading to decreased worker productivity.
A machining program changing apparatus and method that uses extraction rules to automatically identify and modify change ranges in machining programs, reducing the need for manual specification and enabling efficient editing.
Enables efficient setting of desired change ranges without decreasing worker efficiency by automating the identification and modification of machining program sections, thus improving productivity.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Area
[0001] The present invention relates to a machining program modification device and a machining program modification method for editing a machining program for machining a machining target. background
[0002] A machining program is created using a numerical control device, a computer-aided design (CAD) system, a computer-aided manufacturing (CAM) system, or similar equipment. The machining program is a program that contains, for example, a movement command to move a machining target and a tool along a predefined path.
[0003] There are cases where a part of the machining program is modified. For example, patent document 1 discloses a machine tool that modifies a specific area of a previously specified machining program. In particular, the machine tool described in patent document 1 displays a machining program in a display area, allowing the user to specify an area of the displayed machining program by means of a selection process using an area specification button, and edits a control code within the specified area in accordance with a selection process using an edit button.
[0004] Patent document 2 discloses a device for supporting the editing of a machining program. In this device, program data is displayed on one side of a split screen display, and an operation list is displayed on the other side. An input device allows the selection of an element displayed on the screen. When an element is selected on one side of the split screen display, the corresponding element is distinguished from other elements on the same side of the screen display, and a corresponding element on the other side of the screen display is identified and distinguished there.
[0005] Patent document 3 discloses an editing system for an editing program. The system selects blocks of the editing program to be edited that satisfy an editing condition. List of citations from patent literature Patent document 1: JP 2015 - 207 134 A Patent document 2: US 2017 / 0 160 724 A1 Patent document 3: JP 2003 - 67 019 A Brief description: Technical problem
[0006] However, in the machine tool described in patent document 1, an employee must activate the area specification button when defining a desired area of the machining program.
[0007] For example, if a section of a long machining program is specified as a change area, and several different sections of the machining program are also specified as change areas, using the area specification button becomes complicated. Defining the change area requires a lot of time and effort, and there is a possibility that the employee's work efficiency will decrease.
[0008] Because the employee needs to understand the content of the processing program in order to define the scope of the change, it takes time for the employee to understand the content of the processing program. For this reason, there is a possibility that the employee's work efficiency will be reduced.
[0009] The present invention arose in view of the circumstances stated above, wherein an object of the invention is to provide a machining program change device and a machining program change method that can define a desired change range of a machining program and at the same time prevent a reduction in the work efficiency of an employee. Solution to the problem
[0010] The problem is solved by a machining program change device and a machining program change method combining the features of independent claim 1 and 8, respectively. Preferred embodiments are found in the dependent claims. Advantageous effects of the invention
[0011] A machining program modification device according to the present invention enables the specification of a desired modification range of a machining program while simultaneously preventing a decrease in the work efficiency of an employee. Brief description of the characters Fig. Figure 1 shows a representation illustrating the configuration of a machining program change device according to a first embodiment. Fig. Figure 2 shows a representation illustrating an example of an editing program according to the first embodiment. Fig. Figure 3 shows a representation illustrating an example of information that specifies the position of each machining process in the machining program according to the first embodiment. Fig. Figure 4 shows a diagram illustrating the configuration of a display editing unit according to the first embodiment. Fig. Figure 5 shows a flowchart illustrating a process for modifying the machining program using the machining program modification device according to the first embodiment. Fig. Figure 6 shows a representation to illustrate a modification area of the processing program according to the first embodiment. Fig. Figure 7 shows a representation illustrating a modification area of the processing program according to the first embodiment. Fig. Figure 8 shows a representation to illustrate a modification range of the processing program according to the first embodiment. Fig. Figure 9 shows a representation illustrating the configuration of a machining program change device according to a second embodiment. Fig. Figure 10 shows a flowchart illustrating a process for modifying the machining program using the machining program modification device according to the second embodiment. Fig. Figure 11 shows a representation illustrating an example of a processing program according to the second embodiment. Fig. Figure 12 shows a perspective view to illustrate a machining form model for a form that is to be machined using the machining program according to the second embodiment. Fig. Figure 13 shows a cross-sectional view to illustrate the machining form model of the form to be machined using the machining program according to the second embodiment. Fig. Figure 14 shows a representation illustrating an example of tool data according to the second embodiment. Fig. Figure 15 shows a representation illustrating a path corresponding to the trajectory commands and the machining form model according to the second embodiment. Fig. Figure 16 shows a representation illustrating a state in which the tool model and the machining shape model do not touch according to the second embodiment. Fig. Figure 17 shows a representation illustrating a state in which the tool model and the machining form model are in contact according to the second embodiment. Fig. Figure 18 shows a representation illustrating a modification range of the machining program according to the second embodiment. Fig. Figure 19 shows a representation illustrating a modification range of the machining program according to the second embodiment. Fig. Figure 20 shows a representation illustrating an example of a hardware configuration of the machining program change device according to the first and second embodiments. Description of embodiments
[0012] The following section describes in detail, with reference to the figures, the machining program change devices and machining program change methods according to the embodiments of the present invention. It should be noted that the invention is not limited to these embodiments. First embodiment
[0013] Fig. Figure 1 shows a diagram illustrating the configuration of a machining program modification device 1 according to a first embodiment of the present invention. The machining program modification device 1 comprises a machining program receiving unit 11, which receives an input of a machining program, and an extraction rule setting unit 12, which sets an extraction rule for extracting data from a modification area of the machining program. The extraction rule is, for example, a rule for "extracting an area of the machining program in which a specific instruction code, such as G-codes or M-codes, is valid, or an area of the machining program in which a specific instruction code, such as G-codes or M-codes, is not valid."Furthermore, the change area is an area of blocks of the machining program in which a change target is instructed and requested for the machining program change device 1, or an area of blocks of the machining program in which a change by the machining program change device 1 is tolerated.
[0014] The machining program will now be described. The machining program specifies several command codes, including one that instructs a relative movement between a machining target and a tool for machining the machining target. Fig. Figure 2 shows a diagram illustrating an example of an editing program 100. The editing program 100 consists of several blocks. Each block consists of a sequence number 101, such as "N001", and a command code 102, such as "G00X0.Y0.". It is noted that the configuration of the Fig. The two blocks shown represent an example, and each block can contain elements other than sequence number 101 and command code 102. Furthermore, command code 102 is specified in a string with a predefined format, such as G-code, M-code, or a macro. G-code, for example, is a command code specified in the machining program for positioning, linear interpolation, circular interpolation, or level setting of the numerical control. M-code is a command code for implementing an auxiliary function for machining. Additionally, "data of the modification area" refers to sequence number 101 and command code 102 contained within the modification area block.
[0015] The processing program 100 is also built from data that correspond to several processing processes. Fig. Figure 3 shows a diagram illustrating an example of information specifying the position of each of the processing operations in processing program 100. The information consists of: a process number, which indicates the number of the processing operation; a processing operation name, which indicates the name of the processing operation; a start block, which indicates the beginning of the processing operation; and an end block, which indicates the end of the processing operation in processing program 100. "Processing operation 1" is a block with the number "N010" as its start block and the number "N028" as its end block. "Processing operation 2" is a block with the number "N029" as its start block and the number "N046" as its end block. "Processing operation 3" is a block with the number "N050" as its start block and the number "N069" as its end block.
[0016] The machining program modification device 1 further comprises: an extraction unit 13, which extracts data of the modification area from the machining program based on the extraction rule; and a modification unit 14, which modifies the data of the modification area extracted by the extraction unit 13. The modification unit 14, for example, changes the instruction code contained in the data of the modification area.
[0017] The machining program modification device 1 comprises: a generation unit 15, which generates the post-modification machining program; and a machining program output unit 16, which outputs the post-modification machining program. The generation unit 15 generates the post-modification machining program based on the machining program and the data of the modification area modified by the modification unit 14. The machining program output unit 16 outputs the post-modification machining program generated by the generation unit 15 to an external device.
[0018] The machining program modification device 1 further comprises: a machining program storage unit 21, which stores the machining program; an extraction rule storage unit 22, which stores the extraction rule; a modification area storage unit 23, which stores data of the modification area; and a post-modification machining program storage unit 24, which stores the post-modification machining program.
[0019] The machining program is created, for example, by a CAD or CAM machine. The machining program receiving unit 11 receives an input of a machining program from a CAD or CAM machine. It should be noted that the machining program receiving unit 11 can receive input of a machining program stored on an external medium, or input of a machining program by an operator using an input device such as a keyboard provided on the machining program modification device 1.
[0020] The processing program receiving unit 11 causes the processing program storage unit 21 to store the processing program.
[0021] Next, a procedure for setting the extraction rule using the extraction rule setting unit 12 is described. In one of the procedures for setting an extraction rule, an employee is prompted to select any extraction rule from several predefined extraction rules, and the extraction rule is then set based on this selection. It is noted that the several predefined extraction rules are stored in the extraction rule storage unit 22.
[0022] A procedure for defining the extraction rule is now described. The extraction rule definition unit 12 displays several extraction rules on a display unit integrated into the machining program change device 1. An operator uses an input device integrated into the machining program change device 1, such as a keyboard and a mouse, to select an extraction rule from the several available extraction rules. Depending on the selected extraction rule, the operator may also be prompted to enter a numerical value or a string. The extraction rule definition unit 12 defines an extraction rule according to the operator's selection or according to the operator's selection and the numerical value or string entered at the time of selection.It should be noted that when selecting multiple extraction rules, the extraction rule setting unit 12 can only set an overlapping part of the selected extraction rules as an extraction rule, or all selected extraction rules as an extraction rule.
[0023] The extraction rule setting unit 12 causes the extraction rule storage unit 22 to store the set extraction rule.
[0024] Extraction unit 13 reads the processing program from processing program storage unit 21. Extraction unit 13 also reads the extraction rule from extraction rule storage unit 22. Extraction unit 13 extracts data from a change area in the processing program based on the extraction rule. Extraction unit 13 causes change area storage unit 23 to store the extracted data from the change area.
[0025] Modification unit 14 reads the data of the change area from change area storage unit 23 and modifies the read data. Although details are described later, modification unit 14 modifies the read data based on a parameter. Modification unit 14 causes change area storage unit 23 to store the modified data of the change area. Hereafter, the data of the change area modified by modification unit 14 is referred to as the first post-modification data.
[0026] The generation unit 15 generates the post-modification processing program by modifying the data of the modification area of the processing program into the first post-modification data.
[0027] Specifically, the generation unit 15 reads the processing program from the processing program storage unit 21. The generation unit 15 also reads the first post-modification data from the change area storage unit 23.
[0028] Generation unit 15 deletes the data from the modification area of the editing program and inserts the initial post-modification data into the deleted section, thereby generating the post-modification editing program. It should be noted that generation unit 15 can also generate the post-modification editing program by overwriting the data from the modification area of the editing program with the initial post-modification data.
[0029] The generation unit 15 causes the post-modification editing program storage unit 24 to store the generated post-modification editing program.
[0030] The processing program output unit 16 reads the post-modification processing program stored in the post-modification processing program storage unit 24 and outputs the read-out post-modification processing program to an external device, such as a numerical control device.
[0031] Since the machining program change device 1 can extract the change area data from the machining program using the extraction rule, an employee does not need to specify the change area when defining the machining program, thus preventing a decrease in work efficiency attributable to the employee. Because the machining program change device 1 can define a desired change area by setting the extraction rule, the effort required by an employee to understand the content of the machining program can be reduced, and a decrease in work efficiency attributable to the employee can be prevented.
[0032] The editing program change device 1 also includes an editing display unit 17, which displays the data of the change area extracted by the extraction unit 13 and edits the change area. Fig. Figure 4 shows a diagram illustrating the configuration of the editing display unit 17. The editing display unit 17 comprises a display unit 17a, which displays the data of the change area extracted by the extraction unit 13, and an operator unit 17b, which receives input from the employee.
[0033] If the employee wants to edit the change area displayed on display unit 17a, the employee operates the control unit 17b. The editing display unit 17 edits the change area based on the operation received from control unit 17b. For example, if the change area extracted using the extraction rule does not match the desired area, the employee operates control unit 17b to delete or add a block to the correction area.
[0034] The editing display unit 17 causes the change area storage unit 23 to store data of the edited change area.
[0035] It should be noted that there are cases where the employee merely confirms the data of the change area displayed on display unit 17a, without editing the change area.
[0036] Therefore, the editing program change device 1 can prompt the operator to confirm the change area data before it is modified by the modification unit 14. From the change area data displayed on the display unit 17a, the operator can, for example, confirm whether data from a desired area has been extracted. If the desired area data is not displayed on the display unit 17a, the operator can modify the setting to an extraction rule that allows the desired area data to be extracted.
[0037] Furthermore, the editing display unit 17 receives an input to specify a parameter for modifying the change area data and assigns the received parameter to a corresponding change area. Specifically, the editing display unit 17 assigns the received parameter to the change area stored in the memory unit 23 and causes the change area memory unit 23 to store the received parameter. The parameter could be, for example, information that instructs and selects which modification is to be made to the change area, or tolerance information that specifies the extent to which the degree of change is tolerated when the coordinates of a command point are changed, as specified by the command code contained in the change area data.
[0038] The modification unit 14 reads the data of the change area and the parameter assigned to the change area from the change area storage unit 23 and modifies the data of the change area based on the read parameter.
[0039] If the change areas are contained in multiple locations within the editing program, the editing display unit 17 also receives parameter inputs for each change area and individually assigns each received parameter to its corresponding change area. Specifically, the editing display unit 17 individually assigns each received parameter to its corresponding change area stored in the change area memory unit 23.
[0040] The modification unit 14 reads data from the multiple change areas and the parameters assigned to the respective change areas from the change area storage unit 23 and modifies the data of the respective change areas based on the read parameters.
[0041] If the editing program contains the change areas in multiple places, the editing program change device 1 can therefore change the data of all corresponding change areas based on each received parameter.
[0042] A process for changing the machining program by the machining program changing device 1 is now being carried out with reference to the one in Fig. The flowchart shown in section 5 is described.
[0043] In step ST1, the processing program receiver unit 11 receives the input of a processing program. The processing program receiver unit 11 causes the processing program storage unit 21 to store the processing program.
[0044] In step ST2, the extraction rule setting unit 12 sets an extraction rule by selecting one from a predefined set of extraction rules. These predefined rules include, for example: a rule to "extract a section of the processing program where a specific instruction code, such as G-codes or M-codes, is valid, or a section of the processing program where a specific instruction code, such as G-codes or M-codes, is not valid"; a rule to "extract a section of the processing program that contains a specific string, or a section of the processing program that does not contain a specific string"; and a rule to "extract a section of a specific processing step of the processing program." The extraction rules are not limited to these examples.Furthermore, when selecting an extraction rule, the operator may be prompted to enter a numerical value or a string, depending on the chosen rule. For example, if the selected extraction rule is to "extract from the command codes, such as G-codes or M-codes, a section of the processing program where a specific command code is valid, or a section of the processing program where a specific command code is not valid," the operator enters a numerical value or a string representing the specific command code. Similarly, if the selected extraction rule is to "extract a section of the processing program that contains a specific string, or a section that does not contain a specific string," the operator enters a numerical value or a string representing the specific string.Furthermore, when multiple extraction rules are selected, one extraction rule is determined by a logical calculation, such as a logical product or a logical sum of the multiple extraction rules. The extraction rule is also determined based on the content of the selection or input provided by the employee. The extraction rule determination unit 12 causes the extraction rule storage unit 22 to store the determined extraction rule.
[0045] In step ST3, extraction unit 13 extracts data from the change area from the machining program based on the extraction rule defined in step ST2. Extraction unit 13 then causes change area storage unit 23 to store the extracted change area data.
[0046] In step ST4, the editing display unit 17 reads the change area data from the change area storage unit 23 and displays the read data. Furthermore, the editing display unit 17 displays the change area data as well as a screen prompting the user to enter a parameter. For example, the screen prompting for parameter input might display a menu with a button for setting a parameter. Finally, once the editing display unit 17 has processed the change area according to the operator's instructions, it instructs the change area storage unit 23 to save the processed change area data.
[0047] Additionally, when the editing display unit 17 receives an input to set a parameter for modifying the data in the modification area, it assigns the received parameter to the corresponding modification area. It should be noted that if no input is received to set a parameter, the editing display unit 17 can assign a predefined parameter to the corresponding modification area. The following description of the editing display unit 17 assumes that an input for a parameter setting to modify the data in the modification area is received.
[0048] In step ST5, the extraction rule setting unit 12 determines whether the extraction rule has been reset. The editing display unit 17 displays a screen prompting the user to reset the extraction rule. For example, the screen prompting the user to reset the extraction rule might be a menu item with a button to reset the extraction rule. If it is determined that the extraction rule has been reset (step ST5, Yes), the extraction rule setting unit 12 returns to step ST2. If it is determined that the extraction rule has not been reset (step ST5, No), the extraction rule setting unit 12 proceeds to step ST6.
[0049] In step ST6, the modification unit 14 reads the data of the change area and the parameter assigned to the change area from the change area storage unit 23 and modifies the data of the change area based on the read parameter. The modification unit 14 causes the change area storage unit 23 to save the modified data of the change area.
[0050] In step ST7, the generation unit 15 creates a post-modification processing program by changing the data of the modification area of the processing program to the data of the modification area changed in the process of step ST6. The generation unit 15 causes the post-modification processing program storage unit 24 to store the created post-modification processing program.
[0051] In step ST8, the machining program output unit 16 reads the post-modification machining program stored in the post-modification machining program storage unit 24 and outputs the read post-modification machining program to an external device, such as a numerical control device.
[0052] Since the machining program change device 1 can extract the data of the change area from the machining program based on the extraction rule arbitrarily defined by the employee, the employee does not have to specify the change area when confirming the machining program, thus preventing a reduction in work efficiency attributable to the employee.
[0053] Furthermore, the extraction rule definition unit 12 defines a range in which one or more command codes are valid as the change range and defines a first extraction rule for extracting data from the change range from the editing program. Based on the first extraction rule, the extraction unit 13 extracts data from the editing program from a range in which one or more command codes are valid.
[0054] As an example of an extraction rule, a procedure for extracting data from the change area from the machining program 100 is now described for the case where a rule for "extracting data from an area where the workpiece coordinate system selection G55 is valid" is selected.
[0055] Extraction unit 13 extracts data from the machining program for an area where the workpiece coordinate system selection G55 is valid. Specifically, extraction unit 13 searches sequentially, starting with the first block "N001 0100" of the machining program, for a block containing the string "G55". It should be noted that in the following description, block "N001 0100" is referred to as block "N001 ...".
[0056] In the first embodiment, the string "G55" is contained within a block "N050 ...". Extraction unit 13 designates block "N050 ..." as the starting block of the modification area.
[0057] Extraction unit 13 then searches the processing program for a block where the command "G55" is invalid. "G55" becomes invalid if one of the commands "G54" and "G56" through "G59", which are command codes of the same modal group as "G55", is instructed.
[0058] Therefore, after block “N050 ...”, in which “G55” is instructed, extraction unit 13 searches for a block containing one of the strings “G54” and “G56” through “G59”. In the first embodiment, the string “G54” is contained in block “N070 ...”. Extraction unit 13 identifies block “N069 ...” immediately preceding block “N070 ...” as the end block of the modification range.
[0059] Accordingly, extraction unit 13 determines how in Fig. As shown in section 6, change area r1 is defined as a range from block "N050 ..." to block "N069 ..." and extracts data from change area r1. Fig. Figure 6 shows a representation to illustrate the change range r1 of the editing program 100.
[0060] As an example of an extraction rule, a procedure for extracting data from the modification area of machining program 100 is described for a case where a rule for "Extracting data from an area where the workpiece coordinate system selection G55 is valid" and a rule for "Extracting data from an area where a circular interpolation command G02 or G03 is instructed" are selected. It should be noted that the following description explains a case where data is extracted from an area where the workpiece coordinate system selection G55 is valid and the circular interpolation command G02 or G03 is executed.
[0061] Extraction unit 13 determines a region of the machining program in which the workpiece coordinate system selection G55 is valid as the first modification candidate region according to the procedure described above. Therefore, extraction unit 13 determines a region from block "N050..." to block "N069..." as the first modification candidate region.
[0062] The extraction unit 13 then searches the processing program for a block in which an action command is issued using the circular interpolation command “G02” or “G03”.
[0063] Specifically, extraction unit 13 searches sequentially from the upper block “N001 ...” of the processing program for a block containing the string “G02” or “G03”.
[0064] For example, extraction unit 13 searches sequentially from the first block “N001 ...” of the processing program for a block containing the string “G02” or “G03”, or searches for a movement instruction block before an instruction of an interpolation instruction of the same modal group for the circular interpolation instruction.
[0065] In the first embodiment, the string “G02” or “G03” is located in block “N016 ...”, block “N018 ...”, block “N020 ...”, block “N022 ...”, block “N026 ...” and blocks “N057...” to “N068 ...”.
[0066] Extraction unit 13 identifies these blocks, which contain the string "G02" or "G03", as second modification candidate areas.
[0067] Extraction unit 13 identifies a region where the first candidate modification region and the second candidate modification region overlap as the modification region. Therefore, extraction unit 13 determines, as in Fig. 7 represents an area from block “N057 ...” to block “N068 ...” as change area r2 and extracts data from change area r2. Fig. Figure 7 shows a representation illustrating the change range r2 of the editing program 100.
[0068] When an editing process is selected, the extraction rule setting unit 12 further defines the area of the selected editing process as the change area and sets a second extraction rule to extract data from the change area from the editing program. It should be noted that, as already described, the editing program consists of data belonging to multiple editing processes.
[0069] Extraction unit 13 extracts data from the modification area from the machining program based on information specifying the position of each machining process in machining program 100 and the second extraction rule.
[0070] As an example of an extraction rule, a procedure for extracting data from the change area of processing program 100 is now described when a rule for "Extract data from the area of processing process 2" and a rule for "Extract data from an area in which linear interpolation G01 is instructed" are selected. It should be noted that the following description explains a case in which data is extracted from the area "Processing process 2" in which linear interpolation G01 is instructed.
[0071] Extraction unit 13 extracts data from the "Processing Process 2" area of the processing program. As in Fig. As shown in Figure 3, the area of "Processing 2" extends from block "N029..." to block "N046...". Therefore, extraction unit 13 defines an area from block "N029..." to block "N046..." as the first modification candidate area.
[0072] Extraction unit 13 then searches the processing program for a block containing the interpolation instruction "G01". For example, starting from the first block "N001..." of the processing program, extraction unit 13 searches for a block containing the string "G01" or for a movement instruction block preceding an interpolation instruction of the same modal group after the linear interpolation instruction.
[0073] In the first embodiment, the string "G01" is located in block "N011 ...", block "N013 ...", block "N015 ...", block "N017 ...", block "N019 ...", block "N021 ...", blocks "N023 ..." to "N025 ...", blocks "N030 ..." to "N046 ...", blocks "N051 ..." to "N056 ..." and block "N069 ...". Extraction unit 13 designates the blocks containing the string "G01" as the second modification candidate areas.
[0074] Extraction unit 13 identifies a region where the first candidate modification region and the second candidate modification region overlap as the modification region. Therefore, extraction unit 13 determines, as in Fig. Figure 8 shows a range from block "N030..." to block "N046..." as change area r3 and extracts data from change area r3. Fig. Figure 8 shows a representation illustrating the change area r3 of the editing program 100.
[0075] Since the machining program modification device 1 according to the first embodiment can extract the data of the modification area from the machining program based on the extraction rule, an employee does not have to specify the modification area when confirming the machining program, thus preventing a decrease in work efficiency attributable to the employee.
[0076] Furthermore, the extraction rule setting unit 12 of the machining program modification device 1, according to the first embodiment, defines a range in which one or more command codes are valid as the modification range and sets the first extraction rule for extracting data of the modification range from the machining program; the extraction unit 13 extracts data from the machining program of a range in which one or more command codes are valid, based on the first extraction rule. Therefore, according to the first embodiment, it is not necessary for an operator of the machining program modification device 1 to specify the modification range when confirming the machining program, and a decrease in work efficiency attributable to the operator can be prevented.
[0077] Additionally, in the machining program modification device 1 according to the first embodiment, the extraction rule setting unit 12 determines the selected area of a machining process from among several machining processes as the modification area and sets the second extraction rule for extracting data of the modification area from the machining program. In the machining program modification device 1 according to the first embodiment, the extraction unit 13 extracts data of the modification area from the machining program 100 based on information specifying the position of each machining process in the machining program 100 and the second extraction rule. Therefore, in the machining program modification device 1 according to the first embodiment, an operator does not need to specify the modification area when confirming the machining program, thus preventing a decrease in work efficiency attributable to the operator.
[0078] The machining program modification device 1 according to the first embodiment further comprises the editing display unit 17, which displays the modification area of the machining program and receives an editing operation, wherein the extracted modification area can be displayed in such a way that the modification area is confirmed before the modification; this reduces the need for rework and prevents a decrease in work efficiency attributable to the employee. Furthermore, in the machining program modification device 1 according to the first embodiment, the confirmation of the modification area after the modification facilitates the confirmation of the result of the modification and accordingly prevents a decrease in work efficiency attributable to the employee.
[0079] In the case of the machining program modification device 1 according to the first embodiment, since the editing display unit 17 receives the specification of a parameter for modifying the machining program for each modification area and the modification unit 14 modifies the machining program based on the parameter specified for each modification area, different conversion parameters can be specified for the respective modification areas when extracting several modification areas, and a machining program can be modified in one go instead of in several steps, thus preventing a decrease in work efficiency attributable to the employee. Second embodiment
[0080] Fig. Figure 9 shows a diagram illustrating the configuration of a machining program change device 2 according to a second embodiment of the present invention. The configuration of the machining program change device 2 differs from the configuration of the machining program change device 1 according to the first embodiment in that it comprises the following: a shape data receiving unit 31, which receives input shape data; a tool data receiving unit 32, which receives input tool data; a shape data storage unit 25, which stores the shape data; and a tool data storage unit 26, which stores the tool data. In the following description, the same reference numerals are used for components corresponding to those of the machining program change device 1 according to the first embodiment, and their descriptions are omitted.
[0081] The machining program change device 2 comprises: the machining program receiving unit 11, which receives an input of a machining program; the shape data receiving unit 31, which receives an input of shape data, which is information that defines a machining shape model of a machining target; and the tool data receiving unit 32, which receives an input of tool data, which is information that defines a tool model of a tool.
[0082] The shape data is generated, for example, by a CAD or CAM device. The CAD or CAM device generates shape data of a predefined format corresponding to an operator's input. The shape data receiving unit 31 receives the input of the shape data. It should be noted that the shape data receiving unit 31 can receive input of the shape data corresponding to an operator's input device, where the input device, for example, a keyboard, is integrated into the machining program modification device 2.
[0083] The tool data is generated, for example, by a CAD or CAM device. The CAD or CAM device generates tool data in a predefined format in accordance with an operator input. The tool data receiving unit 32 receives this tool data input. It should be noted that the tool data receiving unit 32 can receive tool data input corresponding to an operator input device, where the input device, for example, a keyboard, is located on the machining program modification device 2. The tool data is information required by the extraction unit 13 to generate the tool model and consists of information such as tool type, tool diameter, and tool length.
[0084] The machining program modification device 2 comprises: the extraction rule setting unit 12, which sets an extraction rule for extracting data of a modification area from the machining program; and the extraction unit 13, which extracts data of the modification area from the machining program based on the extraction rule. The extraction unit 13 extracts data of the modification area from the machining program based on the extraction rule, the form data, and the tool data.
[0085] The machining program modification device 2 comprises: the modification unit 14, which modifies the data of the modification area extracted by the extraction unit 13; the generation unit 15, which generates a post-modification machining program based on the machining program and the data of the modification area modified by the modification unit 14; and the machining program output unit 16, which outputs the post-modification machining program generated by the generation unit 15 to an external device.
[0086] The editing program change device 2 includes the editing display unit 17, which displays the data of the change area extracted by the extraction unit 13 and edits the change area.
[0087] The machining program modification device 2 comprises: the machining program storage unit 21, which stores the machining program; the extraction rule storage unit 22, which stores the extraction rule; the modification area storage unit 23, which stores the modification area data; and the post-modification machining program storage unit 24, which stores the post-modification machining program. The machining program modification device 2 comprises: the form data storage unit 25, which stores the form data; and the tool data storage unit 26, which stores the tool data.
[0088] A procedure for changing the machining program by the machining program change device 2 is now described with reference to the one in Fig. The flowchart shown in the diagram is described.
[0089] In step ST11, the processing program receiver unit 11 receives the input of a processing program. The processing program receiver unit 11 causes the processing program storage unit 21 to store the processing program.
[0090] In step ST12, the shape data receiving unit 31 receives an input of the shape data. The shape data receiving unit 31 causes the shape data storage unit 25 to store the shape data.
[0091] In step ST13, the tool data receiving unit 32 receives an input of the tool data. The tool data receiving unit 32 causes the tool data storage unit 26 to store the tool data.
[0092] In step ST14, the extraction rule setting unit 12 defines the extraction rule. The extraction rule is determined based on the contents of the selection or input by the employee. The extraction rule setting unit 12 causes the extraction rule storage unit 22 to store the defined extraction rule.
[0093] In step ST15, the extraction unit 13 extracts data from the modification area from the machining program based on the form data received in step ST12, the tool data received in step ST13, and the extraction rule defined in step ST14. The extraction unit 13 then causes the modification area storage unit 23 to store the extracted modification area data.
[0094] In step ST16, the editing display unit 17 reads the change area data from the change area storage unit 23 and displays the read data. Furthermore, once the editing display unit 17 has edited the change area in accordance with the operator's instructions, it instructs the change area storage unit 23 to save the data of the edited change area.
[0095] Furthermore, when the editing display unit 17 receives an input to set a parameter for changing the data in the change area, it assigns the received parameter to the corresponding change area. It should be noted that if no input to set a parameter is received, the editing display unit 17 can assign a predefined parameter to the corresponding change area. The following description of the editing display unit 17 assumes that an input to set a parameter for changing the data in the change area is received.
[0096] In step ST17, the extraction rule setting unit 12 determines whether the extraction rule has been reset. If it is determined that the extraction rule has been reset (step ST17, Yes), the extraction rule setting unit 12 returns to step ST14. If it is determined that the extraction rule has not been reset (step ST17, No), the extraction rule setting unit 12 proceeds to step ST18.
[0097] In step ST18, the modification unit 14 reads the data of the change area and the parameter assigned to the change area from the change area storage unit 23 and modifies the data of the change area based on the read parameter. The modification unit 14 causes the change area storage unit 23 to save the modified data of the change area.
[0098] In step ST19, the generation unit 15 creates a post-modification processing program by changing the data of the modification area of the processing program to the data of the modification area changed in the process of step ST18. The generation unit 15 causes the post-modification processing program storage unit 24 to store the created post-modification processing program.
[0099] In step ST20, the machining program output unit 16 reads the post-modification machining program stored in the post-modification machining program storage unit 24 and outputs the read-out post-modification machining program to an external device, such as a numerical control device.
[0100] Since the machining program change device 2 can extract the change area data from the machining program based on the extraction rule arbitrarily defined by the employee, an employee does not have to specify the change area when confirming the machining program, thus preventing a decrease in work efficiency attributable to the employee.
[0101] Furthermore, the extraction rule definition unit 12 virtually guides the tool model along the toolpath on which the tool model generated from the tool data moves. Extraction rule definition unit 12 defines a modification area for performing finishing work, where the tool model and the machining form model generated based on the form data are kept in contact. Additionally, extraction rule definition unit 12 defines a modification area for performing roughing work, where the tool model and the machining form model do not touch. Extraction rule definition unit 12 defines either a finishing work area or a roughing work area as a modification area and specifies a rule for extracting data from the modification area from the machining program as a third extraction rule.
[0102] Based on the third extraction rule, the extraction unit 13 extracts data from the machining program from the area of finishing or from the area of rough machining.
[0103] Furthermore, the extraction rule definition unit 12 virtually guides the tool model along the toolpath on which the tool model generated from the tool data moves. Extraction rule definition unit 12 defines a region where the tool model and an arbitrarily curved surface of the machining form model generated based on the form data are held in alignment, as the modification area, and defines a fourth extraction rule for extracting data from the modification area from the machining program.
[0104] Based on the fourth extraction rule, the extraction unit 13 extracts data from the machining program of an area in which the tool model and an arbitrarily curved surface of the machining form model are held in alignment.
[0105] A specific procedure for the machining program change device 2 will now be described. Fig. Figure 11 shows a representation illustrating an example of an machining program 200. The machining program 200 specifies the command position using coordinates consisting of the three-dimensional coordinate addresses “X”, “Y”, and “Z”, and numerical values after these three-dimensional coordinate addresses.
[0106] Fig. Figure 12 shows a perspective view of a machining form model M1 of a form that is to be machined with the machining program 200. Fig. Figure 13 shows a cross-sectional view of the machining shape model M1. The machining shape model M1 has curved machining surfaces S0 to S3.
[0107] As in Fig. As shown in Figure 13, the curved machining surfaces S0 and S1 are connected at a connection position e0. Similarly, the curved machining surfaces S1 and S2 are connected at a connection position e1. Furthermore, the curved machining surfaces S2 and S3 are connected at a connection position e2.
[0108] Fig. Figure 4 shows a diagram illustrating an example of tool data. The tool data consists of: a tool number, which specifies the number of the tool; a tool classification, which specifies the classification of the tool; a tool length, which specifies the length of the tool; a tool diameter, which specifies the diameter of the tool; and a cutting edge R, which specifies the radius of the cutting edge. In the second embodiment, it is assumed that the tool specified by the machining program 200 is a tool with tool number 1.
[0109] A case is now described in which the extraction rule definition unit 12 specifies a rule for "extracting data from an area of the processing program to perform the final processing".
[0110] Extraction unit 13 extracts data from machining program 200 for a specific area to perform the finishing operation. Specifically, extraction unit 13 extracts data from an area where the tool model and the machining form model are kept aligned as the tool model is moved along a path according to the movement commands of machining program 200.
[0111] First, the extraction unit 13 extracts a movement command from each block of the machining program 200 and generates a path from the extracted movement commands. The path includes one command point.
[0112] Fig. Figure 15 shows a representation illustrating a path that corresponds to the movement commands generated by the extraction unit 13, and the machining shape model M1. Fig. Figure 15 shows a path P1 corresponding to a fast forward travel command and a path P2 corresponding to a linear interpolation command.
[0113] Furthermore, the command points from command point CL012 to command point CL054 correspond to the blocks "N012 ..." to "N053 ...", in which the command coordinates of the movement commands in machining program 200 are specified.
[0114] Next, Extraction Unit 13 determines whether the tool model and the machining shape model are in contact when the tool model, defined by the tool data, is virtually positioned at each of the command points CL012 to CL054. This determination can be made using the shortest distance between the tool model and the machining shape model. For example, if the shortest distance between the tool model and the machining shape model is zero or a predefined distance, Extraction Unit 13 determines that the tool model and the machining shape model are in contact.
[0115] Fig. Figure 16 shows a diagram illustrating a state in which a tool model T1 and the machining tool model M1 are not in the system. It is noted that in Fig. 16 CL designates the command point. Fig. Figure 17 shows a diagram illustrating a state in which the tool model T1 and the machining tool model M1 are in the attachment. It is noted that in Fig. 17 CL designates the command point.
[0116] In the second embodiment, the tool model and the machining shape model touch when the tool model with tool number 1 is positioned at command points CL040 to CL054.
[0117] Therefore, the extraction unit 13 determines as in Fig. 18 represents an area from block “N040 ...” to block “N054 ...” of the editing program 200, which belongs to the command points CL040 to CL054, as change area r4 and extracts data from change area r4. Fig. Figure 18 shows a representation illustrating the change area r4 of the editing program 200.
[0118] Next, a case is described in which the extraction rule definition unit 12 specifies a rule for "extracting data from an area of the machining program 200 for machining the curved machining surface S1 of the machining shape model".
[0119] Extraction unit 13 extracts data from machining program 200 for an area related to machining the curved machining surface S1 of the machining form model. Specifically, extraction unit 13 extracts data from an area where the tool model and the curved machining surface S1 are in alignment when the tool model is moved along a path corresponding to the movement commands of machining program 200.
[0120] First, the extraction unit 13 extracts a movement command from each block of the machining program 200 and generates a path from the extracted movement commands.
[0121] Next, the extraction unit 13 determines whether the tool model and the curved machining surface S1 are aligned when the tool model, defined by the tool data, is virtually positioned at each of the command points CL012 to CL054. This determination can be made using the shortest distance between the tool model and the curved machining surface S1. For example, if the shortest distance between the tool model and the curved machining surface S1 is zero or corresponds to a predefined distance, the extraction unit 13 determines that the tool model and the curved machining surface S1 are aligned.
[0122] When the tool model with tool number 1 is positioned at command points CL041 to CL051, in the second embodiment the tool model and the curved machining surface S1 are in alignment.
[0123] Therefore, extraction unit 13 determines, as in Fig. Figure 19 shows an area from block “N041 ...” to block “N051 ...” of the editing program 200, which corresponds to the command points CL041 to CL051, as change area r5 and extracts data from change area r5. Fig. Figure 19 shows a representation illustrating the change area r5 of the editing program 200.
[0124] Japanese patent no. JP 6 157 781 B1 discloses a device which, when a command is issued that does not cause the tool to come into contact with the curved machining surface, modifies the toolpath data by changing a modification command point according to a command point modification direction which represents a direction in which the modification command point is to be changed so that the tool comes into contact with the curved machining surface.
[0125] In particular, the device described in Japanese Patent No. JP 6 157 781 B1 calculates cutting point information, i.e., information about a point on the curved machining surface of the shape to be machined by the tool, when the point to be machined is located at a command point described in the toolpath data, based on the toolpath data, the tool data, and the shape contained in the machining program. Based on the toolpath data and the cutting point information, a modification command point is extracted from the command points described in the toolpath data, which is the command point to be modified. The command point modification direction, i.e., the direction in which the modification command point is to be changed, is determined based on the extracted modification command point.The toolpath data is changed by modifying the modification command point according to the modification direction of the command point so that the tool comes into contact with the curved machining surface.
[0126] The modification unit 14 can modify the data of the modification area extracted by the extraction unit 13 using the invention of the above-mentioned Japanese patent specification No. JP 6 157 781 B1.
[0127] Since the machining program modification device 2, according to the second embodiment, can extract the modification area data from the machining program based on the form data, the tool data, and the extraction rule, an employee does not need to specify the modification area when confirming the machining program, thus preventing a decrease in work efficiency attributable to the employee. Furthermore, since the machining program modification device 2, according to the second embodiment, can define a desired modification area by specifying the extraction rule, the effort required by an employee to understand the content of a machining program can be reduced, thus preventing a decrease in work efficiency attributable to the employee.
[0128] Furthermore, according to the second embodiment, the machining program modification device 2 can extract from the machining program an area in which the tool model and an arbitrarily curved surface of the machining form model are held in contact, based on the extraction rule arbitrarily defined by the employee, whereby the employee does not have to define an area in which the tool model and an arbitrarily curved surface of the machining form model are held in contact, thereby preventing a reduction in work efficiency attributable to the employee.
[0129] Since the machining program modification device 2 according to the second embodiment can extract data from the machining program of an area for finishing or an area for roughing based on the extraction rule arbitrarily defined by the employee, an employee does not have to specify an area for finishing or an area for roughing, thereby preventing a decrease in work efficiency attributable to the employee.
[0130] Fig. Figure 20 shows a diagram illustrating an example of a hardware configuration for the program change devices 1 and 2. The program change devices 1 and 2 are computers and each have an output unit 301, a processor 302, a memory 303, a display unit 304, and an input unit 305. The components shown in the Fig. 1 and Fig. The processing program output unit 16 shown in Figure 9 is implemented by the output unit 301.
[0131] The extraction rule setting unit 12, the extraction unit 13, the modification unit 14 and the generation unit 15, which are located in the Fig. 1 and Fig. The functions shown in 9 are implemented by executing a program stored in memory 303 using processor 302.
[0132] The editing program storage unit 21, the extraction rule storage unit 22, the modification area storage unit 23, and the post-modification editing program storage unit 24, which are located in Fig. 1 are shown, as well as the machining program storage unit 21, the extraction rule storage unit 22, the modification area storage unit 23, the post-modification machining program storage unit 24, the form data storage unit 25 and the tool data storage unit 26, which are in Fig. The 9 shown are implemented using memory 303.
[0133] Processor 302, for example, is a central processing unit (CPU), a microprocessor, or similar device, representing a processing circuit. Memory 303 is also used as a memory area when the program is executed by Processor 302.
[0134] The in Fig. 1 shown machining program receiving unit 11 as well as the machining program receiving unit 11, the form data receiving unit 31 and the tool data receiving unit 32, which are in Fig. The functions shown in 9 are implemented using the input unit 305.
[0135] The in the Fig. 1 and Fig.The editing display unit 17 shown in Figure 9 is implemented by a touchscreen in which the display unit 304 and the input unit 305 are integrated. It should be noted that the display function of the editing display unit 17 can be implemented using the display unit 304. Furthermore, the editing function of the editing display unit 17 can be implemented using the input unit 305.
[0136] The configuration shown in the embodiments above provides examples of the content of the present invention and can be combined with other known technologies. Part of the configuration can also be omitted or modified without departing from the core of the present invention. Reference symbol list 1, 2 Processing program change device; 11 Processing program receiving unit; 12 Extraction rule setting unit; 13 extraction units; 14 modification unit; 15 production units; 16 Processing program output unit; 17 Editing display unit; 17a Display unit; 17b Operating Unit; 21 Processing program storage unit; 22 Extraction control storage unit; 23 Change area storage unit; 24 Post-modification editing program storage unit; 25 Form data storage unit; 26 Tool data storage unit; 31 Form data receiving unit; 32 Tool data receiving unit; 100,200 editing program.
Claims
[1] Processing program change device (1, 2) comprising: an editing program receiving unit (11) to receive an input of an editing program (100, 200) created with the aid of a numerical control device, which editing program (100, 200) contains different command codes of at least one modal group; an extraction rule setting unit (12) to to define as the scope of change an area in which a first command code of a modal group is valid, and to define a first extraction rule for extracting data from the change area from the editing program (100, 200); an extraction unit (13), to determine the range of change based on the first extraction rule, at which a block containing the first command code is designated as the start block, and a block that is immediately before a block containing a second command code, which is a command code of the same modal group as the first command code but different from the first command code, is designated as the end block, and to extract data from the change area from the editing program (100, 200) based on the first extraction rule; a modification unit (14) to modify the data of the change area extracted by the extraction unit (13); and a generation unit (15) to generate a post-modification processing program based on the processing program (100, 200) and the data of the modification area modified by the modification unit (14). [2] Processing program change device according to claim 1, wherein the processing program (100, 200) is composed of data that correspond to multiple processing processes, the extraction rule setting unit (12) defines as a change area an area of a machining process which is selected from the several machining processes, and defines a second extraction rule for extracting data of the change area from the machining program (100, 200), and The extraction unit (13) extracts the data of the change area from the machining program (100, 200) based on information specifying a position of each of the multiple machining processes in the machining program (100, 200) and the second extraction rule. [3] Processing program modification device according to claim 1, further comprising: a shape data receiving unit (31) for receiving an input of shape data, which is information that defines a processing shape model of a processing target; and a tool data receiving unit (32) for receiving an input of tool data, which is information that defines a tool model of a tool, wherein the extraction unit (13) extracts the data of the modification area from the machining program (100, 200) based on the extraction rule, the form data and the tool data. [4] Machining program modification device according to claim 3, wherein the extraction rule determination unit (12) defines as the modification area an area for performing finishing work in which a tool model generated on the basis of the tool data and a machining form model generated on the basis of the form data are held in contact when the tool model is virtually guided along a toolpath on which the tool model moves, or an area for performing roughing work in which the tool model and the machining form model are not in contact when the tool model is virtually guided on the toolpath, and defines a third extraction rule for extracting data of the modification area from the machining program (100, 200), and the extraction unit (13) extracts data of the area for finishing work or the area for roughing work from the machining program (100, 200).200) extracted on the basis of the third extraction rule. [5] Machining program modification device according to claim 3, wherein the extraction rule setting unit (12) defines as the modification area an area in which a tool model generated on the basis of the tool data and an arbitrarily curved surface of a machining form model generated on the basis of the form data are held in contact when the tool model is virtually guided along a toolpath on which the tool model moves, and defines a fourth extraction rule for extracting data of the modification area from the machining program (100, 200), and the extraction unit (13) extracts from the machining program (100, 200) data of an area in which the tool model and an arbitrarily curved surface of the machining form model are held in contact, based on the fourth extraction rule. [6] Processing program modification device according to claim 1, which further comprises an editing display unit (17) for displaying the data of the modification area extracted by the extraction unit (13) and for editing the modification area, wherein the modification unit (14) modifies the data of the modification area edited by the editing display unit (17). [7] Editing program change device according to claim 6, wherein the editing display unit (17) receives an input to define a parameter and assigns the received parameter to a corresponding change area. [8] Editing program change procedure, which includes: an editing program reception process for receiving an input of an editing program (100, 200) created with the aid of a numerical control device, which editing program (100, 200) contains different command codes of at least one modal group; an extraction rule determination process for Determining a range in which a first command code of a modal group is valid, as the scope of modification, and Defining a first extraction rule to extract data from the change area from the editing program (100, 200); an extraction process to determine the change range based on the first extraction rule, in which a block containing the first command code is designated as the start block, and a block that is immediately before a block that contains a second command code, which is a command code of the same modal group as the first command code but is different from the first command code, is designated as the end block, and for extracting data of the modification area from the editing program (100, 200) based on the first extraction rule; a modification process to modify the data extracted from the change area by the extraction process; and a generation process for generating a post-modification processing program based on the processing program (100, 200) and the data of the change area modified by the modification process.
Citation Information
Patent Citations
Machining program editing system
JP2003067019A
Machine tool, program editing method, and control program
JP2015207134A
Tool path correction device and tool path correction method
JP6157781B1
Machining program editing assist apparatus
US20170160724A1
JP000006157781B1