WO2019130412A1 - 加工プログラム修正装置および加工プログラム修正方法 - Google Patents

加工プログラム修正装置および加工プログラム修正方法 Download PDF

Info

Publication number
WO2019130412A1
WO2019130412A1 PCT/JP2017/046556 JP2017046556W WO2019130412A1 WO 2019130412 A1 WO2019130412 A1 WO 2019130412A1 JP 2017046556 W JP2017046556 W JP 2017046556W WO 2019130412 A1 WO2019130412 A1 WO 2019130412A1
Authority
WO
WIPO (PCT)
Prior art keywords
correction
data
range
processing program
unit
Prior art date
Application number
PCT/JP2017/046556
Other languages
English (en)
French (fr)
Inventor
弘樹 金子
慎哉 西野
守昭 内田
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2017/046556 priority Critical patent/WO2019130412A1/ja
Priority to DE112017006457.0T priority patent/DE112017006457T5/de
Priority to JP2018535198A priority patent/JP6479275B1/ja
Priority to CN201780083832.6A priority patent/CN110199230B/zh
Publication of WO2019130412A1 publication Critical patent/WO2019130412A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present invention relates to a machining program correction device and a machining program correction method for editing a machining program for machining a workpiece.
  • the machining program is generated by a numerical control device, a CAD (Computer Aided Design) device, a CAM (Computer Aided Manufacturing) device, or the like.
  • the machining program is a program in which a movement command for moving the object to be machined and the tool to a preset path is described.
  • Patent Document 1 discloses a machine tool that changes a specific range in a processing program specified in advance. Specifically, the machine tool described in Patent Document 1 displays the machining program in the display area, specifies the range in the machining program displayed in the display area according to the selection operation of the range designation button, and edits Edit the control code within the specified range according to the button selection operation.
  • the present invention has been made in view of the above, and provides a processing program correction apparatus and a processing program correction method capable of designating a desired correction range of a processing program while suppressing a decrease in work efficiency of a worker.
  • the purpose is
  • the present invention sets a processing program receiving unit for receiving an input of a processing program, and an extraction rule setting for setting an extraction rule for extracting data of a correction range from the processing program. And an extraction unit that extracts data of the correction range from the processing program based on the extraction rule, a correction unit that corrects data of the correction range extracted by the extraction unit, a processing program, and a correction unit And a generation unit that generates a post-correction machining program based on the correction range data.
  • the machining program correction apparatus has an effect that it is possible to specify a desired correction range of the machining program while suppressing a decrease in work efficiency of the worker.
  • a diagram showing a configuration of a processing program correction device The figure which shows an example of the processing program in Embodiment 1
  • a diagram showing a configuration of a display editing unit in the first embodiment Flowchart showing an operation of correcting a machining program by the machining program correction device according to the first embodiment
  • a diagram showing a correction range of a processing program in the first embodiment A diagram showing a correction range of a processing program in the first embodiment
  • a diagram showing a correction range of a processing program in the first embodiment A diagram showing a correction range of a processing program in the first embodiment
  • a diagram showing a correction range of a processing program in the first embodiment A diagram showing a configuration of a machining program correction device according to a second embodiment
  • a flowchart showing an operation of correcting a machining program by the machining program correction device according to the second embodiment The figure which shows an example of the processing program in Embodiment 2.
  • the perspective view which shows the processing shape model of the shape processed by the processing program in Embodiment 2 Sectional drawing which shows the processing shape model of the shape processed by the processing program in Embodiment 2
  • the figure which shows an example of the tool data in Embodiment 2 The figure which shows the route by movement command in Embodiment 2, and processing shape model
  • the figure which shows the state which the tool model and the processing shape model in Embodiment 2 are in contact with.
  • FIG. 1 is a diagram showing the configuration of a processing program correction device 1 according to a first embodiment of the present invention.
  • the processing program correction apparatus 1 includes a processing program receiving unit 11 that receives an input of a processing program, and an extraction rule setting unit 12 that sets an extraction rule for extracting data of a correction range from the processing program.
  • the extraction rule is, for example, “extract a range in which a specific command code is valid or a range in which a specific command code is invalid among command codes such as G code or M code in a processing program”.
  • the correction range is a range of blocks that indicate and request a correction target in the machining program by the machining program correction device 1 or a range of blocks that allows correction in the machining program by the machining program correction device 1.
  • FIG. 2 is a diagram showing an example of the processing program 100.
  • the machining program 100 is composed of a plurality of blocks. Each block is composed of a sequence number 101 such as "N001" and a command code 102 such as "G00X0.Y0.”.
  • the configuration of the blocks illustrated in FIG. 2 is an example, and each block may include elements other than the sequence number 101 and the command code 102.
  • the command code 102 is described in a predetermined format of a character string by, for example, a G code, an M code, and a macro sentence.
  • the G code is, for example, a command code described in a machining program when performing positioning, linear interpolation, circular interpolation, and plane designation by numerical control.
  • the M code is a command code for realizing an auxiliary function for processing.
  • the data of the correction range is the sequence number 101 and the command code 102 included in the block of the correction range.
  • FIG. 3 is a diagram showing an example of information indicating the position in the processing program 100 for each processing step.
  • the information includes a process number indicating the number of the processing process, a processing process name indicating the name of the processing process, a start block indicating the start of the processing process in the processing program 100, and an end block indicating the end of the processing process. It is configured.
  • the “processing step 1” is a block whose start block is the number “N010” and whose end block is the block “N028”.
  • the “processing step 2” is a block whose start block is the number of "N029” and whose end block is the block of "N046”.
  • the “processing step 3” is a block whose start block is “N050” and whose end block is “N069”.
  • the processing program correction apparatus 1 further includes an extraction unit 13 that extracts data of the correction range from the processing program based on the extraction rule, and a correction unit 14 that corrects the data of the correction range extracted by the extraction unit 13. .
  • the correction unit 14 corrects, for example, the command code included in the data of the correction range.
  • the machining program correction apparatus 1 includes a generation unit 15 that generates a machining program after correction, and a machining program output unit 16 that outputs a machining program after correction.
  • the generation unit 15 generates a post-correction machining program based on the machining program and the data of the correction range corrected by the correction unit 14.
  • the machining program output unit 16 outputs the after-correction machining program generated by the generation unit 15 to an external device.
  • the processing program correction apparatus 1 further includes a processing program storage unit 21 for storing a processing program, an extraction rule storage unit 22 for storing extraction rules, a correction range storage unit 23 for storing data of a correction range, and processing after correction And a post-correction processing program storage unit 24 for storing a program.
  • the processing program is generated by, for example, a CAD device or a CAM device.
  • the processing program receiving unit 11 receives an input of a processing program from a CAD device or a CAM device.
  • the processing program receiving unit 11 may receive an input of the processing program stored in the external medium, or according to the operation of the input device provided in the processing program correction apparatus 1 such as a keyboard by the operator. , And may receive an input of a processing program.
  • the processing program receiving unit 11 stores the processing program in the processing program storage unit 21.
  • the setting method of the extraction rule by the extraction rule setting part 12 is demonstrated.
  • a method of setting extraction rules there is a method of causing an operator to select an arbitrary extraction rule from among a plurality of predetermined extraction rules, and setting an extraction rule based on the selection.
  • a plurality of extraction rules set in advance are stored in the extraction rule storage unit 22.
  • the extraction rule setting unit 12 displays a plurality of extraction rules on a display unit provided in the processing program correction device 1.
  • the operator operates an input device provided in the processing program correction apparatus 1 such as a keyboard and a mouse to select an extraction rule from among a plurality of extraction rules.
  • the operator may be required to input a numerical value or a character string depending on the selected extraction rule.
  • the extraction rule setting unit 12 sets an extraction rule according to the selection by the operator or according to the selection by the operator and the numerical value or the character string input by the request at the time of the selection.
  • the extraction rule setting unit 12 may set only overlapping portions as extraction rules in the selected extraction rules, or the selected extraction rules All of may be set as extraction rules.
  • the extraction rule setting unit 12 stores the set extraction rule in the extraction rule storage unit 22.
  • the extraction unit 13 reads the machining program from the machining program storage unit 21. Further, the extraction unit 13 reads the extraction rule from the extraction rule storage unit 22. The extraction unit 13 extracts data of the correction range from the processing program based on the extraction rule. The extraction unit 13 stores the data of the extracted correction range in the correction range storage unit 23.
  • the correction unit 14 reads data of the correction range from the correction range storage unit 23 and corrects the read data. Although the details will be described later, the correction unit 14 corrects the read data based on the parameters.
  • the correction unit 14 stores the data of the corrected correction range in the correction range storage unit 23.
  • the data of the correction range corrected by the correction unit 14 will be referred to as first corrected data.
  • the generation unit 15 generates a post-correction processing program by changing data of the correction range of the processing program into data after the first correction.
  • the generation unit 15 reads the machining program from the machining program storage unit 21. In addition, the generation unit 15 reads the first corrected data from the correction range storage unit 23.
  • the generation unit 15 deletes the data in the correction range of the machining program, and generates the post-correction machining program by inserting the first corrected data into the deleted portion.
  • the generation unit 15 may generate the post-correction processing program by overwriting the data after the first correction on the data of the correction range of the processing program.
  • the generation unit 15 stores the generated post-correction machining program in the post-correction machining program storage unit 24.
  • the machining program output unit 16 reads the post-correction machining program stored in the post-correction machining program storage unit 24 and outputs the read post-correction machining program to an external device such as a numerical controller.
  • the machining program correction apparatus 1 can extract the data of the correction range from the machining program based on the extraction rule, there is no need for the operator to specify the correction range while checking the machining program, and the worker can It is possible to suppress the decrease in work efficiency due to Further, since the machining program correction apparatus 1 can designate a desired correction range by setting the extraction rule, the work of the operator who understands the contents of the machining program can be reduced, and the work efficiency by the operator can be reduced. It is possible to suppress the decrease.
  • the processing program correction device 1 further includes a display editing unit 17 that displays data of the correction range extracted by the extraction unit 13 and edits the correction range.
  • FIG. 4 is a diagram showing the configuration of the display editing unit 17.
  • the display editing unit 17 includes a display unit 17 a that displays data of the correction range extracted by the extraction unit 13, and an operation unit 17 b that receives an operation by a worker.
  • the operator When the operator wants to edit the correction range displayed on the display unit 17a, the operator operates the operation unit 17b.
  • the display editing unit 17 edits the correction range based on the operation accepted by the operation unit 17 b. For example, if the correction range extracted by the extraction rule is not the desired range, the operator operates the operation unit 17b to delete or add a block of the correction range.
  • the display editing unit 17 stores the edited correction range data in the correction range storage unit 23.
  • the operator may not edit the correction range only by checking the data of the correction range displayed on the display unit 17a.
  • the machining program correction apparatus 1 can make the operator confirm the data of the correction range before being corrected by the correction unit 14. For example, the worker can confirm whether data of a desired range can be extracted by the data of the correction range displayed on the display unit 17a. The operator can change the setting to an extraction rule in which data in the desired range is extracted, unless data in the desired range is displayed on the display unit 17a.
  • the display editing unit 17 receives an input of setting of parameters for correcting data of the correction range, and associates the received parameter with the corresponding correction range. Specifically, the display editing unit 17 stores the received parameter in the correction range storage unit 23 in association with the correction range stored in the correction range storage unit 23.
  • the parameter indicates, for example, information for instructing and selecting what correction is to be made to the correction range, and how much the coordinates of the command point indicated by the command code included in the data of the correction range are corrected Tolerance information, such as whether to allow up to the correction amount of
  • the correction unit 14 reads the data of the correction range and the parameters associated with the correction range from the correction range storage unit 23, and corrects the data of the correction range based on the read parameters.
  • the display editing unit 17 receives input of parameters for each correction range, and associates each received parameter with the corresponding correction range. Specifically, the display editing unit 17 associates each received parameter with each correction range stored in the correction range storage unit 23.
  • the correction unit 14 reads data of a plurality of correction ranges and parameters associated with each correction range from the correction range storage unit 23, and corrects the data of each correction range based on the read parameters.
  • the machining program correction apparatus 1 can correct data of all the corresponding correction ranges based on the received parameters.
  • step ST1 the processing program receiving unit 11 receives an input of a processing program.
  • the processing program receiving unit 11 stores the processing program in the processing program storage unit 21.
  • the extraction rule setting unit 12 sets an extraction rule by selecting from among predetermined extraction rules.
  • the predetermined extraction rule is, for example, “extract a range in which a specific command code is valid or a range in which a specific command code is invalid among command codes such as G code or M code in a processing program” “Extract a range including a specific character string in a processing program or a range not including a specific character string”, “extract a range of a specific processing step in a processing program”, and the like. Extraction rules are not limited to these.
  • the operator may be required to input a numerical value or a character string depending on the selected extraction rule.
  • the selected extraction rule is "extract a range in which a specific command code is valid or a specific command code is invalid among command codes such as G code or M code in the machining program"
  • the operator inputs a numerical value or a character string representing a specific command code.
  • the selected extraction rule is "to extract a range including a specific string or a range not including a specific string in the processing program”
  • the worker may select a numeric value or a string representing the specific string.
  • the extraction rules are set by a logical operation such as logical multiplication or logical sum of the plurality of extraction rules.
  • the extraction rule is set based on the content selected or input by the worker.
  • the extraction rule setting unit 12 stores the set extraction rule in the extraction rule storage unit 22.
  • step ST3 the extraction unit 13 extracts data of the correction range from the processing program based on the extraction rule set in the process of step ST2.
  • the extraction unit 13 stores the data of the extracted correction range in the correction range storage unit 23.
  • step ST4 the display editing unit 17 reads the data of the correction range from the correction range storage unit 23, and displays the data of the read correction range. Further, the display editing unit 17 displays the data of the correction range and also displays a screen prompting the input of the parameter. For example, the screen prompting for the input of the parameter may have a form in which a button for setting the parameter is displayed on the menu. Further, when the correction range is edited according to the operation of the worker, the display editing unit 17 stores data of the edited correction range in the correction range storage unit 23.
  • the display editing unit 17 when the display editing unit 17 receives an input of setting of a parameter for correcting data of the correction range, the display editing unit 17 associates the received parameter with the corresponding correction range. When the input of the setting of the parameter is not received, the display editing unit 17 may associate the predetermined parameter with the corresponding correction range. In the following, it is assumed that the display editing unit 17 receives an input of setting of parameters for correcting data of the correction range.
  • step ST5 the extraction rule setting unit 12 determines whether the extraction rule has been reset.
  • the display editing unit 17 displays a screen prompting to reset the extraction rule.
  • the screen prompting the user to reset the extraction rule may have a form in which a button for resetting the extraction rule is displayed on the menu. If the extraction rule setting unit 12 determines that the extraction rule has been reset (Yes at step ST5), the process returns to step ST2, and if it is determined that the extraction rule has not been reset (No at step ST5). The process proceeds to step ST6.
  • step ST6 the correction unit 14 reads the data of the correction range and the parameters associated with the correction range from the correction range storage unit 23, and corrects the data of the correction range based on the read parameters.
  • the correction unit 14 stores the data of the corrected correction range in the correction range storage unit 23.
  • step ST7 the generation unit 15 generates a post-correction machining program by changing data of the correction range of the machining program into data of the correction range corrected in the process of step ST6.
  • the generation unit 15 stores the generated post-correction machining program in the post-correction machining program storage unit 24.
  • step ST8 the machining program output unit 16 reads the post-correction machining program stored in the post-correction machining program storage unit 24, and outputs the read post-correction machining program to an external device such as a numerical controller.
  • the machining program correction apparatus 1 can extract data of the correction range from the machining program based on the extraction rule arbitrarily set by the operator, the operator designates the correction range while checking the machining program. It is not necessary to do so, and it is possible to suppress a drop in work efficiency by the worker.
  • the extraction rule setting unit 12 sets a first extraction rule for extracting data of the correction range from the machining program, with the range in which the single or plural command codes are valid as the correction range.
  • the extraction unit 13 extracts, from the processing program, data in a range in which one or more command codes are valid, based on the first extraction rule.
  • the extraction unit 13 extracts data of a range in which the work coordinate system selection G55 is effective from the processing program. Specifically, the extraction unit 13 searches for a block including the character string “G55” in order from the first block “N001 O100” of the processing program. In the following, the block "N001 O100” is expressed as a block "N001 ".
  • the block “N050 " includes the character string "G55".
  • the extraction unit 13 sets the block “N050...” As the start block of the correction range.
  • the extraction unit 13 searches the processing program for a block for which the command of “G55” is invalid. "G55” is invalidated when one of "G54” and “G56” to “G59” which are the same modal group command codes as "G55” is instructed.
  • the extraction unit 13 searches for blocks including the character string of any one of "G54" and “G56” to “G59” in blocks after the block "N050 " to which "G55” is instructed. Do.
  • the block “N070 " includes the character string "G54".
  • the extraction unit 13 sets the block “N069 " immediately before the block “N070 " as the end block of the correction range.
  • FIG. 6 is a diagram showing a correction range r1 of the processing program 100. As shown in FIG.
  • extraction rule in the case where “extract data in a range in which work coordinate system selection G55 is valid” and “extract data in a range in which circular interpolation command G02 or G03 is instructed” are selected.
  • a procedure for extracting data of the correction range from the machining program 100 will be described.
  • the case of extracting data in a range in which the workpiece coordinate system selection G55 is effective and in which the arc interpolation command G02 or G03 is instructed will be described.
  • the extraction unit 13 sets the range in which the work coordinate system selection G55 is effective from the processing program as the first correction candidate range in the same procedure as described above. Therefore, the extraction unit 13 sets the range from the block "N050 " to the block "N069 " as the first correction candidate range.
  • the extraction unit 13 searches for a block for which an operation command is issued by the arc interpolation command of “G02” or “G03” from the processing program.
  • the extraction unit 13 searches for a block including the character string “G02” or “G03” in order from the head block “N001...” Of the processing program.
  • the extraction unit 13 searches for a block including the character string "G02" or "G03" in order from the first block "N001 " of the processing program, or the same group after the arc interpolation command A block of movement commands until a modal interpolation command is specified is searched.
  • the block “N016 ", the block “N018 ", the block “N020 ", the block “N022 ", the block “N026 ", the block “N057 The character string “G02” or “G03” is included in the block “N068.
  • the extraction unit 13 sets these blocks including the character string “G02” or “G03” as the second correction candidate range.
  • the extraction unit 13 sets an overlapping range of the first correction candidate range and the second correction candidate range as a correction range. Therefore, the extraction unit 13 extracts data of the correction range r2 with the range from the block "N057 " to the block "N068 " as the correction range r2, as shown in FIG.
  • FIG. 7 is a diagram showing a correction range r2 of the processing program 100. As shown in FIG.
  • the extraction rule setting unit 12 sets a range of the selected processing step as a correction range, and sets a second extraction rule for extracting data of the correction range from the processing program.
  • the processing program is configured from data corresponding to a plurality of processing steps.
  • the extraction unit 13 extracts data of the correction range from the processing program based on the information indicating the position in the processing program 100 for each processing step and the second extraction rule.
  • the correction is made from the processing program 100 when “extract data in the range of the processing step 2” and “extract data in the range to which the linear interpolation G01 is instructed” are selected as an example of the extraction rule.
  • a procedure for extracting range data will be described.
  • Comprising The case where the data of the range where linear interpolation G01 is commanded is extracted is demonstrated.
  • the extraction unit 13 extracts data in the range of “processing step 2” from the processing program.
  • the range of the “processing step 2” is, as shown in FIG. 3, from the block “N029...” To the block “N046. Therefore, the extraction unit 13 sets the range from the block “N029 " to the block “N046 " as the first correction candidate range.
  • the extraction unit 13 searches the processing program for a block for which an operation command is issued according to the interpolation command “G01”. For example, the extraction unit 13 searches for a block including the character string of "G01" in order from the first block "N001 " of the processing program, or the interpolation command of the same group modal after the linear interpolation command Search for a block of movement commands until a command is issued.
  • the character string “G01” is included in “.
  • the extraction unit 13 sets those blocks including the character string “G01” as a second correction candidate range.
  • the extraction unit 13 sets an overlapping range of the first correction candidate range and the second correction candidate range as a correction range. Therefore, as illustrated in FIG. 8, the extraction unit 13 extracts data of the correction range r3 with the range from the block "N030 " to the block "N046 " as the correction range r3.
  • FIG. 8 is a diagram showing a correction range r3 of the processing program 100. As shown in FIG.
  • the machining program correction apparatus 1 can extract the data of the correction range from the machining program based on the extraction rule, so that the operator need not specify the correction range while checking the machining program. It is possible to suppress a drop in work efficiency by the worker.
  • the processing program correction apparatus 1 is a first extraction that extracts the data of the correction range from the processing program by using the extraction rule setting unit 12 as a correction range where a single or a plurality of command codes are valid.
  • a rule is set, and the extraction unit 13 extracts data of a range in which a single or a plurality of command codes are valid from the machining program based on the first extraction rule. Therefore, the processing program correction apparatus 1 according to the first embodiment does not have to specify the correction range while the operator confirms the processing program, and can suppress the reduction in the work efficiency by the operator.
  • the processing program correction apparatus 1 extracts the data of the correction range from the processing program by using the extraction rule setting unit 12 with the range of the processing step selected from among the plurality of processing steps as the correction range. Set the second extraction rule.
  • the processing program correction apparatus 1 in the first embodiment extracts the data of the correction range from the processing program 100 based on the information indicating the position in the processing program 100 for each processing step and the second extraction rule by the extraction unit 13 . Therefore, the processing program correction apparatus 1 according to the first embodiment does not have to specify the correction range while the operator confirms the processing program, and can suppress the reduction in the work efficiency by the operator.
  • the processing program correction apparatus 1 displays the correction range of the processing program and includes the display editing unit 17 that receives the editing, thereby displaying the extracted correction range and thus the correction range before the correction.
  • the processing program correction apparatus 1 displays the correction range of the processing program and includes the display editing unit 17 that receives the editing, thereby displaying the extracted correction range and thus the correction range before the correction.
  • the display editing unit 17 receives setting of parameters for correcting the processing program for each correction range, and the correction unit 14 sets each correction range. Since the machining program is corrected based on the parameters, when a plurality of correction ranges are extracted, different conversion parameters can be set for each correction range, and one machining program may be corrected several times It is possible to correct it at one time, and it is possible to suppress a drop in work efficiency by the worker.
  • FIG. 9 is a diagram showing the configuration of the processing program correction device 2 according to the second embodiment of the present invention.
  • the processing program correction device 2 receives a shape data reception unit 31 that receives an input of shape data, a tool data reception unit 32 that receives an input of tool data, a shape data storage unit 25 that stores shape data, and stores tool data.
  • This embodiment differs from the configuration of the processing program correction device 1 according to the first embodiment in that a tool data storage unit 26 is provided.
  • the same components as those of the processing program correction apparatus 1 according to the first embodiment are designated by the same reference numerals, and the description thereof is omitted.
  • the processing program correction apparatus 2 includes a processing program receiving unit 11 for receiving an input of a processing program, a shape data receiving unit 31 for receiving an input of shape data which is information defining a processing shape model of a processing object, and a tool model of a tool. And a tool data receiving unit 32 for receiving an input of tool data, which is information for defining.
  • the shape data is generated by, for example, a CAD device or a CAM device.
  • the CAD device or CAM device generates shape data of a predetermined format according to the operation of the operator.
  • the shape data receiving unit 31 receives an input of shape data.
  • the shape data receiving unit 31 may receive an input of shape data according to an operation of an input device provided in the processing program correction apparatus 2 such as a keyboard by a worker.
  • the tool data is generated by, for example, a CAD device or a CAM device.
  • the CAD device or CAM device generates tool data of a predetermined format according to the operation of the worker.
  • the tool data receiving unit 32 receives an input of tool data.
  • the tool data receiving unit 32 may receive an input of tool data in accordance with an operation of an input device provided in the processing program correction apparatus 2 such as a keyboard by a worker.
  • the tool data is information necessary for generating a tool model in the extraction unit 13 and is composed of, for example, information such as the type of tool, tool diameter, and tool length.
  • the processing program correction apparatus 2 sets an extraction rule for extracting data of the correction range from the processing program, and an extraction unit 13 which extracts data of the correction range from the processing program based on the extraction rule. And The extraction unit 13 extracts data of the correction range from the processing program based on the extraction rule, the shape data, and the tool data.
  • the machining program correction apparatus 2 corrects the post-correction machining program based on the correction unit 14 that corrects the data of the correction range extracted by the extraction unit 13, the machining program, and the data of the correction range corrected by the correction unit 14. And a processing program output unit 16 for outputting the post-correction processing program generated by the generation unit 15 to an external device.
  • the processing program correction apparatus 2 includes a display editing unit 17 that displays data of the correction range extracted by the extraction unit 13 and edits the correction range.
  • the processing program correction apparatus 2 includes a processing program storage unit 21 for storing a processing program, an extraction rule storage unit 22 for storing extraction rules, a correction range storage unit 23 for storing data of a correction range, and a processing program after correction. And a post-correction processing program storage unit 24 to be stored.
  • the machining program correction device 2 includes a shape data storage unit 25 in which shape data is stored, and a tool data storage unit 26 in which tool data is stored.
  • step ST11 the processing program receiving unit 11 receives an input of a processing program.
  • the processing program receiving unit 11 stores the processing program in the processing program storage unit 21.
  • step ST12 the shape data receiving unit 31 receives an input of shape data.
  • the shape data receiving unit 31 stores shape data in the shape data storage unit 25.
  • step ST13 the tool data receiving unit 32 receives an input of tool data.
  • the tool data receiving unit 32 stores the tool data in the tool data storage unit 26.
  • step ST14 the extraction rule setting unit 12 sets an extraction rule.
  • the extraction rule is set based on the content selected or input by the worker.
  • the extraction rule setting unit 12 stores the set extraction rule in the extraction rule storage unit 22.
  • step ST15 based on the shape data received in the process of step ST12, the tool data received in the process of step ST13, and the extraction rule set in the process of step ST14, the extraction unit 13 Extract data.
  • the extraction unit 13 stores the data of the extracted correction range in the correction range storage unit 23.
  • step ST16 the display editing unit 17 reads the data of the correction range from the correction range storage unit 23, and displays the data of the read correction range. Further, when the correction range is edited according to the operation of the worker, the display editing unit 17 stores data of the edited correction range in the correction range storage unit 23.
  • the display editing unit 17 When the display editing unit 17 receives an input of setting of parameters for correcting data of the correction range, the display editing unit 17 associates the received parameter with the corresponding correction range. When the input of setting of the parameter is not received, the display editing unit 17 may associate the predetermined parameter with the corresponding correction range. In the following, it is assumed that the display editing unit 17 receives an input of setting of parameters for correcting data of the correction range.
  • step ST17 the extraction rule setting unit 12 determines whether the extraction rule has been reset. If the extraction rule setting unit 12 determines that the extraction rule has been reset (Yes at step ST17), the process returns to step ST14, and if it is determined that the extraction rule has not been reset (No at step ST17). The process proceeds to step ST18.
  • step ST18 the correction unit 14 reads the data of the correction range and the parameters associated with the correction range from the correction range storage unit 23, and corrects the data of the correction range based on the read parameters.
  • the correction unit 14 stores the data of the corrected correction range in the correction range storage unit 23.
  • step ST19 the generation unit 15 generates a post-correction machining program by changing data of the correction range of the machining program into data of the correction range corrected in the process of step ST18.
  • the generation unit 15 stores the generated post-correction machining program in the post-correction machining program storage unit 24.
  • step ST20 the machining program output unit 16 reads the post-correction machining program stored in the post-correction machining program storage unit 24, and outputs the read post-correction machining program to an external device such as a numerical control device.
  • the processing program correction apparatus 2 can extract the data of the correction range from the processing program based on the extraction rule arbitrarily set by the operator, the operator specifies the correction range while checking the processing program. It is not necessary to do so, and it is possible to suppress a drop in work efficiency by the worker.
  • the extraction rule setting unit 12 virtually passes the tool model on the tool path along which the tool model generated based on the tool data moves.
  • the extraction rule setting unit 12 sets, as a correction range, a range in which finishing is performed such that the tool shape and the machining shape model generated based on the shape data are in contact with each other.
  • the extraction rule setting unit 12 sets, as a correction range, a range in which roughing is performed such that the tool model and the machining shape model do not contact each other.
  • the extraction rule setting unit 12 sets a range for performing the finishing process or a range for performing the roughing process as a correction range, and sets a rule for extracting data of the correction range from the machining program as a third extraction rule.
  • the extraction unit 13 extracts data of the range of finishing or the range of roughing from the processing program based on the third extraction rule.
  • the extraction rule setting unit 12 virtually passes the tool model on the tool path along which the tool model generated based on the tool data moves.
  • the extraction rule setting unit 12 sets a range in which the tool model and an arbitrary curved surface of the machining shape model generated based on the shape data are in contact with each other as a correction range, and extracts the data of the correction range from the machining program Is set as the fourth extraction rule.
  • the extraction unit 13 extracts data of a range in which the tool model and an arbitrary curved surface of the machining shape model are in contact with each other from the machining program based on the fourth extraction rule.
  • FIG. 11 is a diagram showing an example of the processing program 200. As shown in FIG. The machining program 200 indicates coordinates of the command position by three-dimensional coordinate addresses “X”, “Y” and “Z” and numerical values following them.
  • FIG. 12 is a perspective view of a processed shape model M1 having a shape processed by the processing program 200.
  • FIG. 13 is a cross-sectional view of the processing shape model M1.
  • the processing shape model M1 has a processing curved surface S3 to a processing curved surface S0.
  • the processed curved surface S0 and the processed curved surface S1 are connected at the connection position e0.
  • the processed curved surface S1 and the processed curved surface S2 are connected at the connection position e1.
  • the processed curved surface S2 and the processed curved surface S3 are connected at the connection position e2.
  • FIG. 14 is a figure which shows an example of tool data.
  • the tool data includes a tool number indicating a tool number, a tool type indicating a tool type, a tool length indicating a tool length, a tool diameter indicating a tool diameter, and a corner R indicating a corner radius. Configured In the second embodiment, it is assumed that the tool instructed by the machining program 200 is a tool of tool number 1.
  • the extraction unit 13 extracts data of a range to be subjected to finish processing from the processing program 200. Specifically, when moving the tool model along the path according to the movement command in the machining program 200, the extraction unit 13 extracts data in a range in which the tool model and the machining shape model are in contact with each other.
  • the extraction unit 13 extracts a movement command of each block in the processing program 200, and generates a path based on the extracted movement command.
  • the path includes a command point.
  • FIG. 15 is a diagram showing a path according to a movement command generated by the extraction unit 13 and a processing shape model M1.
  • FIG. 15 shows a path P1 by the fast forward command and a path P2 by the linear interpolation command.
  • each command point of command point CL 012 to command point CL 054 corresponds to each block of block “N 012...” In which the command coordinates of movement command in machining program 200 are described. doing.
  • the extraction unit 13 determines whether the tool model and the processing shape model are in contact when the tool model defined by the tool data is virtually arranged at each command point from the command point CL012 to the command point CL054. Determine This determination can be made using the shortest distance between the tool model and the machining shape model. For example, when the shortest distance between the tool model and the machining shape model is zero or a predetermined distance, the extraction unit 13 determines that the tool model and the machining shape model are in contact with each other.
  • FIG. 16 is a diagram showing a state in which the tool model T1 and the processing shape model M1 are not in contact with each other.
  • CL in FIG. 16 indicates a command point.
  • FIG. 17 is a view showing a state in which the tool model T1 and the processing shape model M1 are in contact with each other.
  • CL in FIG. 17 indicates a command point.
  • the tool model of the tool number 1 when the tool model of the tool number 1 is arranged from the command point CL040 to the command point CL054, the tool model and the processing shape model are in contact with each other.
  • FIG. 18 is a diagram showing a correction range r4 of the processing program 200. As shown in FIG. 18, the extraction unit 13 corrects the range from the block "N040 " to the block “N054 " in the processing program 200 corresponding to the command point CL040 to the command point CL054. It is set as r4, and the data of correction range r4 are extracted.
  • FIG. 18 is a diagram showing a correction range r4 of the processing program 200. As shown in FIG.
  • the extraction unit 13 extracts, from the processing program 200, data of a range in which the processing curved surface S1 of the processing shape model is to be processed. Specifically, when moving the tool model along the path according to the movement command in the machining program 200, the extraction unit 13 extracts data of a range in which the tool model and the machining surface S1 are in contact with each other.
  • the extraction unit 13 extracts a movement command of each block in the processing program 200, and generates a path based on the extracted movement command.
  • the extraction unit 13 virtually arranges the tool model defined by the tool data at each command point from the command point CL012 to the command point CL054, whether the tool model and the processing surface S1 are in contact with each other or not judge.
  • This determination can be made using the shortest distance between the tool model and the processing surface S1. For example, when the shortest distance between the tool model and the processing surface S1 is zero or a predetermined distance, the extraction unit 13 determines that the tool model is in contact with the processing surface S1.
  • the tool model of the tool number 1 when the tool model of the tool number 1 is arranged from the command point CL041 to the command point CL051, the tool model and the processing surface S1 are in contact with each other.
  • FIG. 19 is a diagram showing a correction range r5 of the processing program 200. As shown in FIG. 19
  • the correction command is made according to the command point correction direction which is the direction to correct the correction command point so that the tool contacts the machining curved surface.
  • the apparatus described in Japanese Patent No. 6157781 is a machined shape when arranged to a command point described in the tool path data based on tool path data, tool data, and a shape which are machining programs.
  • the to-be-cut point information which is information on the to-be-processed point by the tool on the machined curved surface of is calculated.
  • a correction command point which is a command point to be corrected is extracted from the command point described in the tool path data.
  • a command point correction direction which is a direction to be corrected of the correction command point is determined.
  • the tool path data is corrected by correcting the correction command point in accordance with the command point correction direction so that the tool contacts the processing surface.
  • the correction unit 14 may correct the data of the correction range extracted by the extraction unit 13 using the invention according to the above-mentioned Japanese Patent No. 6157781.
  • the machining program correction apparatus 2 can extract the data of the correction range from the machining program based on the shape data, the tool data, and the extraction rule, so the operator confirms the machining program.
  • it is not necessary to specify a correction range and it is possible to suppress a drop in work efficiency by the operator.
  • the machining program correction apparatus 2 according to the second embodiment can specify a desired correction range by setting the extraction rule, the work of the worker who understands the contents of the machining program can be reduced, and the work can be performed. It is possible to suppress the decrease in work efficiency caused by workers.
  • the processing program correction apparatus 2 is a range in which the tool model and the arbitrary curved surface of the processing shape model are in contact from the processing program based on the extraction rule arbitrarily set by the operator. Since data can be extracted, it is not necessary for the operator to specify the range in which the tool model and the arbitrary curved surface of the machining shape model are in contact with each other, and the reduction of the working efficiency by the operator can be suppressed. it can.
  • the processing program correction apparatus 2 can extract data of the finish processing range or the rough processing range from the processing program on the basis of the extraction rule arbitrarily set by the operator. It is not necessary for a person to specify the range of finish machining or the range of rough machining, and it is possible to suppress the decrease in working efficiency by the worker.
  • FIG. 20 is a diagram showing an example of the hardware configuration of the processing program correction devices 1 and 2.
  • the processing program correction devices 1 and 2 are computers, and each include an output unit 301, a processor 302, a memory 303, a display unit 304, and an input unit 305.
  • the processing program output unit 16 shown in FIGS. 1 and 9 is realized by the output unit 301.
  • the extraction rule setting unit 12, the extraction unit 13, the correction unit 14, and the generation unit 15 shown in FIGS. 1 and 9 are realized by the processor 302 executing a program stored in the memory 303.
  • the range storage unit 23, the post-correction processing program storage unit 24, the shape data storage unit 25, and the tool data storage unit 26 are realized by the memory 303.
  • the processor 302 is, for example, a CPU, a microprocessor, or the like, and is a processing circuit.
  • the memory 303 is also used as a storage area when the processor 302 executes a program.
  • the processing program reception unit 11 shown in FIG. 1 and the processing program reception unit 11, the shape data reception unit 31, and the tool data reception unit 32 shown in FIG. 9 are realized by the input unit 305.
  • the display editing unit 17 illustrated in FIGS. 1 and 9 is realized by a touch panel in which the display unit 304 and the input unit 305 are integrated.
  • the display function of the display editing unit 17 may be realized by the display unit 304.
  • the editing function of the display editing unit 17 may be realized by the input unit 305.
  • the configuration shown in the above embodiment shows an example of the contents of the present invention, and can be combined with another known technique, and one of the configurations is possible within the scope of the present invention. Parts can be omitted or changed.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

加工プログラムの入力を受け付ける加工プログラム受付部(11)と、修正範囲のデータを加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定部(12)と、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する抽出部(13)と、抽出部(13)により抽出された修正範囲のデータを修正する修正部(14)と、加工プログラムと、修正部(14)により修正された修正範囲のデータとに基づいて、修正後加工プログラムを生成する生成部(15)とを備える。

Description

加工プログラム修正装置および加工プログラム修正方法
 本発明は、加工対象物を加工するための加工プログラムを編集する加工プログラム修正装置および加工プログラム修正方法に関する。
 加工プログラムは、数値制御装置、CAD(Computer Aided Design)装置、またはCAM(Computer Aided Manufacturing)装置などにより生成される。加工プログラムとは、加工対象物および工具を予め設定された経路に移動させる移動指令などが記述されたプログラムである。
 ここで、加工プログラムの一部の修正が行われる場合がある。例えば、特許文献1には、予め指定した加工プログラム内の特定の範囲に対して変更を加える工作機械が開示されている。具体的には、特許文献1に記載の工作機械は、加工プログラムを表示領域に表示し、範囲指定ボタンの選択操作に応じて、表示領域に表示された加工プログラム内の範囲を指定し、編集ボタンの選択操作に応じて、指定された範囲内の制御コードを編集する。
特開2015-207134号公報
 しかしながら、特許文献1に記載の工作機械は、加工プログラムの所望の範囲を指定する場合、作業者が範囲指定ボタンを操作する必要がある。
 例えば、長大な加工プログラムの中の一部を修正範囲として指定する場合、加工プログラムの中から複数の異なる部分を修正範囲として指定する場合などにおいては、範囲指定ボタンによる操作が煩雑となり、修正範囲の指定に多大な時間と手間とを要し、作業者の作業能率が低下する可能性がある。
 また、作業者は、加工プログラムの内容を理解していないと修正範囲の指定ができないため、加工プログラムの内容を理解するために時間を要する。このため、作業者の作業能率が低下する可能性がある。
 本発明は、上記に鑑みてなされたものであって、作業者の作業能率の低下を抑制しつつ加工プログラムの所望の修正範囲を指定することができる加工プログラム修正装置および加工プログラム修正方法を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、加工プログラムの入力を受け付ける加工プログラム受付部と、修正範囲のデータを加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定部と、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する抽出部と、抽出部により抽出された修正範囲のデータを修正する修正部と、加工プログラムと、修正部により修正された修正範囲のデータとに基づいて、修正後加工プログラムを生成する生成部とを備える。
 本発明にかかる加工プログラム修正装置は、作業者の作業能率の低下を抑制しつつ加工プログラムの所望の修正範囲を指定することができるという効果を奏する。
実施の形態1にかかる加工プログラム修正装置の構成を示す図 実施の形態1における加工プログラムの一例を示す図 実施の形態1における加工工程ごとの加工プログラム内の位置を示す情報の一例を示す図 実施の形態1における表示編集部の構成を示す図 実施の形態1における加工プログラム修正装置による加工プログラムを修正する動作を示すフローチャート 実施の形態1における加工プログラムの修正範囲を示す図 実施の形態1における加工プログラムの修正範囲を示す図 実施の形態1における加工プログラムの修正範囲を示す図 実施の形態2にかかる加工プログラム修正装置の構成を示す図 実施の形態2における加工プログラム修正装置による加工プログラムを修正する動作を示すフローチャート 実施の形態2における加工プログラムの一例を示す図 実施の形態2における加工プログラムによって加工される形状の加工形状モデルを示す斜視図 実施の形態2における加工プログラムによって加工される形状の加工形状モデルを示す断面図 実施の形態2における工具データの一例を示す図 実施の形態2における移動指令による経路と加工形状モデルとを示す図 実施の形態2における工具モデルと加工形状モデルとが接していない状態を示す図 実施の形態2における工具モデルと加工形状モデルとが接している状態を示す図 実施の形態2における加工プログラムの修正範囲を示す図 実施の形態2における加工プログラムの修正範囲を示す図 実施の形態1および実施の形態2における加工プログラム修正装置のハードウェアの構成例を示す図
 以下に、本発明の実施の形態にかかる加工プログラム修正装置および加工プログラム修正方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1における加工プログラム修正装置1の構成を示す図である。加工プログラム修正装置1は、加工プログラムの入力を受け付ける加工プログラム受付部11と、修正範囲のデータを加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定部12とを備える。抽出ルールは、例えば、「加工プログラム中のGコードまたはMコードなどの指令コードのうち、特定の指令コードが有効な範囲、または特定の指令コードが無効な範囲を抽出する」などである。また、修正範囲とは、加工プログラム修正装置1による加工プログラム中の修正対象を指示および要求するブロックの範囲、または、加工プログラム修正装置1による加工プログラム中の修正を許容するブロックの範囲である。
 ここで、加工プログラムについて説明する。加工プログラムには、加工対象物と、加工対象物を加工する工具との相対的な移動を指令する指令コードを含む複数の指令コードが記述されている。図2は、加工プログラム100の一例を示す図である。加工プログラム100は、複数のブロックから構成されている。各ブロックは、「N001」などのシーケンス番号101と、「G00X0.Y0.」などの指令コード102とにより構成されている。なお、図2に示すブロックの構成は、一例であり、各ブロックは、シーケンス番号101および指令コード102以外の要素を含んでもよい。また、指令コード102は、例えば、Gコード、Mコード、およびマクロ文などによる文字列の予め定められたフォーマットで記述される。Gコードとは、例えば、数値制御によって位置決め、直線補間、円弧補間、平面指定を行う際に、加工プログラムに記述される指令コードである。Mコードは、加工を行うための補助機能を実現するための指令コードである。また、修正範囲のデータとは、修正範囲のブロックに含まれているシーケンス番号101および指令コード102である。
 また、加工プログラム100は、複数の加工工程に対応するデータから構成されている。図3は、加工工程ごとの加工プログラム100内の位置を示す情報の一例を示す図である。当該情報は、加工工程の番号を示す工程番号と、加工工程の名称を示す加工工程名と、加工プログラム100内の加工工程の開始を示す開始ブロックと、加工工程の終了を示す終了ブロックとにより構成されている。「加工工程1」は、開始ブロックが「N010」の番号のブロックであり、終了ブロックが「N028」の番号のブロックである。「加工工程2」は、開始ブロックが「N029」の番号のブロックであり、終了ブロックが「N046」の番号のブロックである。「加工工程3」は、開始ブロックが「N050」の番号のブロックであり、終了ブロックが「N069」の番号のブロックである。
 また、加工プログラム修正装置1は、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する抽出部13と、抽出部13により抽出された修正範囲のデータを修正する修正部14とを備える。修正部14は、例えば、修正範囲のデータに含まれている指令コードを修正する。
 加工プログラム修正装置1は、修正後加工プログラムを生成する生成部15と、修正後加工プログラムを出力する加工プログラム出力部16とを備える。生成部15は、加工プログラムと、修正部14により修正された修正範囲のデータとに基づいて、修正後加工プログラムを生成する。加工プログラム出力部16は、生成部15により生成された修正後加工プログラムを外部装置に出力する。
 また、加工プログラム修正装置1は、加工プログラムを記憶する加工プログラム記憶部21と、抽出ルールを記憶する抽出ルール記憶部22と、修正範囲のデータを記憶する修正範囲記憶部23と、修正後加工プログラムを記憶する修正後加工プログラム記憶部24とを備える。
 加工プログラムは、例えば、CAD装置またはCAM装置により生成される。加工プログラム受付部11は、CAD装置またはCAM装置から加工プログラムの入力を受け付ける。なお、加工プログラム受付部11は、外部媒体に保存されている加工プログラムの入力を受け付けてもよいし、作業者によるキーボードなどの加工プログラム修正装置1に備えられている入力機器の操作に応じて、加工プログラムの入力を受け付けてもよい。
 加工プログラム受付部11は、加工プログラムを加工プログラム記憶部21に記憶させる。
 つぎに、抽出ルール設定部12による抽出ルールの設定方法について説明する。抽出ルールの設定方法には、予め定められている複数の抽出ルールの中から任意の抽出ルールを作業者に選択させ、当該選択に基づいて抽出ルールを設定する方法がある。なお、予め定められている複数の抽出ルールは、抽出ルール記憶部22に記憶されている。
 抽出ルールを設定する方法について説明する。抽出ルール設定部12は、複数の抽出ルールを加工プログラム修正装置1に備えられている表示部に表示する。作業者は、キーボード、マウスなどの加工プログラム修正装置1に備えられている入力機器を操作して、複数の抽出ルールの中から抽出ルールを選択する。また、抽出ルールが選択されたとき、選択された抽出ルールによっては、作業者に数値または文字列の入力を求めることがある。抽出ルール設定部12は、作業者による選択に応じて、または作業者による選択とこの選択時の要求により入力された数値または文字列とに応じて、抽出ルールを設定する。なお、複数の抽出ルールが選択された場合には、抽出ルール設定部12は、選択された抽出ルールにおいて、重複する部分のみを抽出ルールとして設定してもよいし、また、選択された抽出ルールのすべてを抽出ルールとして設定してもよい。
 抽出ルール設定部12は、設定した抽出ルールを抽出ルール記憶部22に記憶させる。
 抽出部13は、加工プログラム記憶部21から加工プログラムを読み出す。また、抽出部13は、抽出ルール記憶部22から抽出ルールを読み出す。抽出部13は、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する。抽出部13は、抽出した修正範囲のデータを修正範囲記憶部23に記憶させる。
 修正部14は、修正範囲記憶部23から修正範囲のデータを読み出し、読み出したデータを修正する。詳細は後述するが、修正部14は、パラメータに基づいて、読み出したデータを修正する。修正部14は、修正した修正範囲のデータを修正範囲記憶部23に記憶させる。以下では、修正部14により修正された修正範囲のデータは、第1修正後データという。
 生成部15は、加工プログラムの修正範囲のデータを、第1修正後データに変更することにより修正後加工プログラムを生成する。
 具体的には、生成部15は、加工プログラム記憶部21から加工プログラムを読み出す。また、生成部15は、修正範囲記憶部23から第1修正後データを読み出す。
 生成部15は、加工プログラムの修正範囲のデータを削除し、削除した部分に第1修正後データを挿入することにより修正後加工プログラムを生成する。なお、生成部15は、加工プログラムの修正範囲のデータに第1修正後データを上書きすることにより修正後加工プログラムを生成してもよい。
 生成部15は、生成した修正後加工プログラムを修正後加工プログラム記憶部24に記憶させる。
 加工プログラム出力部16は、修正後加工プログラム記憶部24に記憶されている修正後加工プログラムを読み出し、読み出した修正後加工プログラムを数値制御装置などの外部装置に出力する。
 よって、加工プログラム修正装置1は、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出することができるので、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。また、加工プログラム修正装置1は、抽出ルールを設定することにより、所望の修正範囲を指定することができるので、加工プログラムの内容を理解する作業者の作業を低減し、作業者による作業能率の低下を抑制することができる。
 また、加工プログラム修正装置1は、抽出部13により抽出された修正範囲のデータを表示し、修正範囲を編集する表示編集部17を備える。図4は、表示編集部17の構成を示す図である。表示編集部17は、抽出部13により抽出された修正範囲のデータを表示する表示部17aと、作業者による操作を受け付ける操作部17bとを備える。
 作業者は、表示部17aに表示されている修正範囲を編集したい場合、操作部17bを操作する。表示編集部17は、操作部17bにより受け付けた操作に基づいて、修正範囲を編集する。例えば、抽出ルールによって抽出された修正範囲が所望の範囲ではなかった場合、作業者は、操作部17bを操作して、修正範囲のブロックを削除、または追加する。
 表示編集部17は、編集した修正範囲のデータを修正範囲記憶部23に記憶させる。
 なお、作業者は、表示部17aに表示されている修正範囲のデータを確認するだけで、修正範囲の編集を行わない場合もある。
 よって、加工プログラム修正装置1は、修正部14によって修正される前に修正範囲のデータを作業者に確認させることができる。例えば、作業者は、表示部17aに表示されている修正範囲のデータにより、所望の範囲のデータが抽出できているのかどうかの確認をすることができる。作業者は、所望の範囲のデータが表示部17aに表示されていなければ、所望の範囲のデータが抽出される抽出ルールに設定を変更することができる。
 また、表示編集部17は、修正範囲のデータを修正するためのパラメータの設定の入力を受け付け、受け付けたパラメータを、対応する修正範囲に関連付ける。具体的には、表示編集部17は、受け付けたパラメータを修正範囲記憶部23に記憶されている修正範囲に対応付けて、修正範囲記憶部23に記憶する。パラメータは、例えば、修正範囲に対してどのような修正を行うかを指示および選択する情報、修正範囲のデータに含まれている指令コードにより示される指令点の座標を修正する場合に、どの程度の修正量まで許容するかというトレランス情報などである。
 修正部14は、修正範囲記憶部23から修正範囲のデータと、修正範囲に関連付けられているパラメータとを読み出し、読み出したパラメータに基づいて修正範囲のデータを修正する。
 また、加工プログラムに複数個所の修正範囲がある場合には、表示編集部17は、それぞれの修正範囲に対してパラメータの入力を受け付け、受け付けた各パラメータを、対応するそれぞれの修正範囲に関連付ける。具体的には、表示編集部17は、受け付けた各パラメータを修正範囲記憶部23に記憶されているそれぞれの修正範囲に関連付ける。
 修正部14は、修正範囲記憶部23から複数の修正範囲のデータと、各修正範囲に関連付けられているパラメータとを読み出し、読み出した各パラメータに基づいてそれぞれの修正範囲のデータを修正する。
 よって、加工プログラム修正装置1は、加工プログラムに複数個所の修正範囲がある場合、受け付けた各パラメータに基づいて、対応するすべての修正範囲のデータを修正することができる。
 ここで、加工プログラム修正装置1による加工プログラムを修正する動作について、図5に示すフローチャートを用いて説明する。
 ステップST1において、加工プログラム受付部11は、加工プログラムの入力を受け付ける。加工プログラム受付部11は、加工プログラムを加工プログラム記憶部21に記憶させる。
 ステップST2において、抽出ルール設定部12は、予め定められている抽出ルールの中から選択することにより抽出ルールを設定する。予め定められている抽出ルールは、例えば、「加工プログラム中のGコードまたはMコードなどの指令コードのうち、特定の指令コードが有効な範囲、または特定の指令コードが無効な範囲を抽出する」、「加工プログラム中に特定文字列を含む範囲、または特定文字列を含まない範囲を抽出する」、「加工プログラム中の特定の加工工程の範囲を抽出する」などである。抽出ルールは、これらに限定されない。また、抽出ルールが選択されたとき、選択された抽出ルールによっては、作業者に数値または文字列の入力を求めることがある。例えば、選択された抽出ルールが「加工プログラム中のGコードまたはMコードなどの指令コードのうち、特定の指令コードが有効な範囲、または特定の指令コードが無効な範囲を抽出する」である場合、作業者は、特定の指令コードを表す数値または文字列を入力する。また、選択された抽出ルールが、「加工プログラム中に特定文字列を含む範囲、または特定文字列を含まない範囲を抽出する」である場合、作業者は、特定文字列を表す数値または文字列を入力する。また、複数の抽出ルールが選択された場合には、複数の抽出ルールの論理積または論理和などの論理演算によって抽出ルールが設定される。また、抽出ルールは、作業者により選択または入力された内容に基づいて設定される。抽出ルール設定部12は、設定した抽出ルールを抽出ルール記憶部22に記憶させる。
 ステップST3において、抽出部13は、ステップST2の工程により設定された抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する。抽出部13は、抽出した修正範囲のデータを修正範囲記憶部23に記憶させる。
 ステップST4において、表示編集部17は、修正範囲記憶部23から修正範囲のデータを読み出し、読み出した修正範囲のデータを表示する。また、表示編集部17は、修正範囲のデータを表示するとともに、パラメータの入力を促す画面を表示する。例えば、パラメータの入力を促す画面は、メニューにパラメータを設定するボタンが表示される形態でもよい。また、表示編集部17は、作業者の操作に応じて修正範囲を編集した場合には、編集した修正範囲のデータを修正範囲記憶部23に記憶させる。
 また、表示編集部17は、修正範囲のデータを修正するためのパラメータの設定の入力を受け付けた場合、受け付けたパラメータを、対応する修正範囲に関連付ける。なお、パラメータの設定の入力を受け付けなかった場合には、表示編集部17は、予め定められているパラメータを、対応する修正範囲に関連付けてもよい。以下では、表示編集部17は、修正範囲のデータを修正するためのパラメータの設定の入力を受け付けた場合を想定して説明する。
 ステップST5において、抽出ルール設定部12は、抽出ルールの再設定が行われたかどうかを判断する。表示編集部17は、抽出ルールの再設定を促す画面を表示する。例えば、抽出ルールの再設定を促す画面は、メニューに抽出ルールを再設定するボタンが表示される形態でもよい。抽出ルール設定部12は、抽出ルールの再設定が行われたと判断した場合(ステップST5 Yes)は、ステップST2に戻り、抽出ルールの再設定が行われていないと判断した場合(ステップST5 No)は、ステップST6に進む。
 ステップST6において、修正部14は、修正範囲記憶部23から修正範囲のデータと、修正範囲に関連付けられているパラメータとを読み出し、読み出したパラメータに基づいて修正範囲のデータを修正する。修正部14は、修正した修正範囲のデータを修正範囲記憶部23に記憶させる。
 ステップST7において、生成部15は、加工プログラムの修正範囲のデータを、ステップST6の工程により修正した修正範囲のデータに変更することにより修正後加工プログラムを生成する。生成部15は、生成した修正後加工プログラムを修正後加工プログラム記憶部24に記憶させる。
 ステップST8において、加工プログラム出力部16は、修正後加工プログラム記憶部24に記憶されている修正後加工プログラムを読み出し、読み出した修正後加工プログラムを数値制御装置などの外部装置に出力する。
 よって、加工プログラム修正装置1は、作業者が任意に設定した抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出することができるので、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、抽出ルール設定部12は、単一または複数の指令コードが有効な範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出する第1抽出ルールを設定する。抽出部13は、第1抽出ルールに基づいて、単一または複数の指令コードが有効な範囲のデータを加工プログラムから抽出する。
 ここで、抽出ルールの一例として、「ワーク座標系選択G55が有効な範囲のデータを抽出する」が選択された場合において、加工プログラム100から修正範囲のデータを抽出する手順について説明する。
 抽出部13は、加工プログラムからワーク座標系選択G55が有効な範囲のデータを抽出する。具体的には、抽出部13は、加工プログラムの最初のブロック「N001 O100」から順番に、「G55」の文字列が含まれるブロックを探索する。なお、以下では、ブロック「N001 O100」をブロック「N001・・・」として表現する。
 本実施の形態1では、ブロック「N050・・・」に「G55」の文字列が含まれている。抽出部13は、ブロック「N050・・・」を修正範囲の開始ブロックにする。
 つぎに、抽出部13は、加工プログラムから「G55」の指令が無効になるブロックを探索する。「G55」が無効になるのは、「G55」と同じモーダルグループの指令コードである「G54」、「G56」から「G59」のいずれかが指令される場合である。
 よって、抽出部13は、「G55」が指令されたブロック「N050・・・」以降のブロック内に、「G54」、「G56」から「G59」のいずれかの文字列が含まれるブロックを探索する。本実施の形態1では、ブロック「N070・・・」に「G54」の文字列が含まれている。抽出部13は、ブロック「N070・・・」の直前のブロック「N069・・・」を修正範囲の終了ブロックにする。
 よって、抽出部13は、図6に示すように、ブロック「N050・・・」からブロック「N069・・・」までの範囲を修正範囲r1とし、修正範囲r1のデータを抽出する。図6は、加工プログラム100の修正範囲r1を示す図である。
 また、抽出ルールの一例として、「ワーク座標系選択G55が有効な範囲のデータを抽出する」と「円弧補間指令G02またはG03が指令される範囲のデータを抽出する」とが選択された場合において、加工プログラム100から修正範囲のデータを抽出する手順について説明する。なお、以下では、ワーク座標系選択G55が有効な範囲であって、円弧補間指令G02またはG03が指令される範囲のデータを抽出する場合について説明する。
 抽出部13は、上述と同様の手順で加工プログラムからワーク座標系選択G55が有効な範囲を第1修正候補範囲とする。よって、抽出部13は、ブロック「N050・・・」からブロック「N069・・・」までの範囲を第1修正候補範囲とする。
 つぎに、抽出部13は、加工プログラムから「G02」または「G03」の円弧補間指令による動作指令がなされているブロックを探索する。
 具体的には、抽出部13は、加工プログラムの先頭のブロック「N001・・・」から順番に、「G02」または「G03」の文字列が含まれるブロックを探索する。
 例えば、抽出部13は、加工プログラムの最初のブロック「N001・・・」から順番に、「G02」または「G03」の文字列が含まれるブロックを探索する、または、円弧補間指令以降で同じグループモーダルの補間指令が指令されるまでの移動指令のブロックを探索する。
 本実施の形態1では、ブロック「N016・・・」,ブロック「N018・・・」,ブロック「N020・・・」,ブロック「N022・・・」,ブロック「N026・・・」,ブロック「N057・・・」からブロック「N068・・・」に「G02」または「G03」の文字列が含まれている。
 抽出部13は、「G02」または「G03」の文字列が含まれているこれらのブロックを第2修正候補範囲とする。
 抽出部13は、第1修正候補範囲と第2修正候補範囲との重複する範囲を修正範囲にする。よって、抽出部13は、図7に示すように、ブロック「N057・・・」からブロック「N068・・・」までの範囲を修正範囲r2とし、修正範囲r2のデータを抽出する。図7は、加工プログラム100の修正範囲r2を示す図である。
 また、抽出ルール設定部12は、加工工程が選択された場合、選択された加工工程の範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出するための第2抽出ルールを設定する。なお、上述したように加工プログラムは、複数の加工工程に対応するデータから構成されている。
 抽出部13は、加工工程ごとの加工プログラム100内の位置を示す情報および第2抽出ルールに基づいて、修正範囲のデータを加工プログラムから抽出する。
 ここで、抽出ルールの一例として、「加工工程2の範囲のデータを抽出する」と「直線補間G01が指令される範囲のデータを抽出する」とが選択された場合において、加工プログラム100から修正範囲のデータを抽出する手順について説明する。なお、以下では、「加工工程2」の範囲であって、直線補間G01が指令される範囲のデータを抽出する場合について説明する。
 抽出部13は、加工プログラムから「加工工程2」の範囲のデータを抽出する。「加工工程2」の範囲は、図3に示すように、ブロック「N029・・・」からブロック「N046・・・」である。よって、抽出部13は、ブロック「N029・・・」からブロック「N046・・・」までの範囲を第1修正候補範囲とする。
 つぎに、抽出部13は、加工プログラムから「G01」の補間指令による動作指令がなされているブロックを探索する。例えば、抽出部13は、加工プログラムの最初のブロック「N001・・・」から順番に、「G01」の文字列が含まれるブロックを探索する、または、直線補間指令以降で同じグループモーダルの補間指令が指令されるまでの移動指令のブロックを探索する。
 本実施の形態1では、ブロック「N011・・・」,ブロック「N013・・・」からブロック「N015・・・」,ブロック「N017・・・」,ブロック「N019・・・」,ブロック「N021・・・」,ブロック「N023」からブロック「N025・・・」,ブロック「N030・・・」からブロック「N046・・・」,ブロック「N051」からブロック「N056・・・」,ブロック「N069・・・」に「G01」の文字列が含まれている。抽出部13は、「G01」の文字列が含まれているこれらのブロックを第2修正候補範囲とする。
 抽出部13は、第1修正候補範囲と第2修正候補範囲との重複する範囲を修正範囲にする。よって、抽出部13は、図8に示すように、ブロック「N030・・・」からブロック「N046・・・」までの範囲を修正範囲r3とし、修正範囲r3のデータを抽出する。図8は、加工プログラム100の修正範囲r3を示す図である。
 実施の形態1における加工プログラム修正装置1は、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出することができるので、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、実施の形態1における加工プログラム修正装置1は、抽出ルール設定部12により、単一または複数の指令コードが有効な範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出する第1抽出ルールを設定し、抽出部13により、第1抽出ルールに基づいて、単一または複数の指令コードが有効な範囲のデータを加工プログラムから抽出する。よって、実施の形態1における加工プログラム修正装置1は、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、実施の形態1における加工プログラム修正装置1は、抽出ルール設定部12により、複数の加工工程の中から、選択された加工工程の範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出する第2抽出ルールを設定する。実施の形態1における加工プログラム修正装置1は、抽出部13により、加工工程ごとの加工プログラム100内の位置を示す情報および第2抽出ルールに基づいて、修正範囲のデータを加工プログラム100から抽出する。よって、実施の形態1における加工プログラム修正装置1は、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、実施の形態1における加工プログラム修正装置1は、加工プログラムの修正範囲を表示し、編集を受け付ける表示編集部17を備えることにより、抽出された修正範囲を表示することによって修正前に修正範囲を確認することができ、手戻りが減少して、作業者による作業能率の低下を抑制することができる。また、実施の形態1における加工プログラム修正装置1は、修正後に修正範囲を確認することで修正の結果の確認が容易になり、作業者による作業能率の低下を抑制することができる。
 また、実施の形態1における加工プログラム修正装置1は、表示編集部17により、各々の修正範囲について加工プログラムを修正するためのパラメータの設定を受け付け、修正部14により、各々の修正範囲に設定されたパラメータに基づいて加工プログラムを修正するので、複数の修正範囲が抽出された場合に、各々の修正範囲に対して異なる変換パラメータを設定することができ、一つの加工プログラムを複数回修正することなく一度で修正することができ、作業者による作業能率の低下を抑制することができる。
実施の形態2.
 図9は、本発明の実施の形態2における加工プログラム修正装置2の構成を示す図である。加工プログラム修正装置2は、形状データの入力を受け付ける形状データ受付部31と、工具データの入力を受け付ける工具データ受付部32と、形状データが記憶される形状データ記憶部25と、工具データが記憶される工具データ記憶部26とを備える点が実施の形態1における加工プログラム修正装置1の構成と異なる。以下では、実施の形態1における加工プログラム修正装置1の構成と同一の構成には同一の符号を付し、説明を省略する。
 加工プログラム修正装置2は、加工プログラムの入力を受け付ける加工プログラム受付部11と、加工対象物の加工形状モデルを定義する情報である形状データの入力を受け付ける形状データ受付部31と、工具の工具モデルを定義する情報である工具データの入力を受け付ける工具データ受付部32とを備える。
 形状データは、例えば、CAD装置またはCAM装置により生成される。CAD装置またはCAM装置は、作業者の操作に応じて予め定められたフォーマットの形状データを生成する。形状データ受付部31は、形状データの入力を受け付ける。なお、形状データ受付部31は、作業者によるキーボードなどの加工プログラム修正装置2に備えられている入力機器の操作に応じて、形状データの入力を受け付けてもよい。
 工具データは、例えば、CAD装置またはCAM装置により生成される。CAD装置またはCAM装置は、作業者の操作に応じて予め定められたフォーマットの工具データを生成する。工具データ受付部32は、工具データの入力を受け付ける。なお、工具データ受付部32は、作業者によるキーボードなどの加工プログラム修正装置2に備えられている入力機器の操作に応じて、工具データの入力を受け付けてもよい。なお、工具データは、抽出部13において工具モデルを生成するために必要な情報であって、例えば、工具の種類、工具径、工具長などの情報から構成される。
 加工プログラム修正装置2は、修正範囲のデータを加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定部12と、抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する抽出部13とを備える。抽出部13は、抽出ルール、形状データ、および工具データに基づいて、加工プログラムから修正範囲のデータを抽出する。
 加工プログラム修正装置2は、抽出部13により抽出された修正範囲のデータを修正する修正部14と、加工プログラムと、修正部14により修正された修正範囲のデータとに基づいて、修正後加工プログラムを生成する生成部15と、生成部15により生成された修正後加工プログラムを外部装置に出力する加工プログラム出力部16とを備える。
 加工プログラム修正装置2は、抽出部13により抽出された修正範囲のデータを表示し、修正範囲を編集する表示編集部17を備える。
 加工プログラム修正装置2は、加工プログラムを記憶する加工プログラム記憶部21と、抽出ルールを記憶する抽出ルール記憶部22と、修正範囲のデータを記憶する修正範囲記憶部23と、修正後加工プログラムを記憶する修正後加工プログラム記憶部24とを備える。加工プログラム修正装置2は、形状データが記憶される形状データ記憶部25と、工具データが記憶される工具データ記憶部26とを備える。
 ここで、加工プログラム修正装置2による加工プログラムを修正する動作について、図10に示すフローチャートを用いて説明する。
 ステップST11において、加工プログラム受付部11は、加工プログラムの入力を受け付ける。加工プログラム受付部11は、加工プログラムを加工プログラム記憶部21に記憶させる。
 ステップST12において、形状データ受付部31は、形状データの入力を受け付ける。形状データ受付部31は、形状データを形状データ記憶部25に記憶させる。
 ステップST13において、工具データ受付部32は、工具データの入力を受け付ける。工具データ受付部32は、工具データを工具データ記憶部26に記憶させる。
 ステップST14において、抽出ルール設定部12は、抽出ルールを設定する。抽出ルールは、作業者により選択または入力された内容に基づいて設定される。抽出ルール設定部12は、設定した抽出ルールを抽出ルール記憶部22に記憶させる。
 ステップST15において、抽出部13は、ステップST12の工程により受け付けた形状データ、ステップST13の工程により受け付けた工具データ、およびステップST14の工程により設定された抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出する。抽出部13は、抽出した修正範囲のデータを修正範囲記憶部23に記憶させる。
 ステップST16において、表示編集部17は、修正範囲記憶部23から修正範囲のデータを読み出し、読み出した修正範囲のデータを表示する。また、表示編集部17は、作業者の操作に応じて修正範囲を編集した場合には、編集した修正範囲のデータを修正範囲記憶部23に記憶させる。
 また、表示編集部17は、修正範囲のデータを修正するためのパラメータの設定の入力を受け付けた場合、受け付けたパラメータを対応する修正範囲に関連付ける。なお、パラメータの設定の入力を受け付けなかった場合には、表示編集部17は、予め定められているパラメータを対応する修正範囲に関連付けてもよい。以下では、表示編集部17は、修正範囲のデータを修正するためのパラメータの設定の入力を受け付けた場合を想定して説明する。
 ステップST17において、抽出ルール設定部12は、抽出ルールの再設定が行われたかどうかを判断する。抽出ルール設定部12は、抽出ルールの再設定が行われたと判断した場合(ステップST17 Yes)は、ステップST14に戻り、抽出ルールの再設定が行われていないと判断した場合(ステップST17 No)は、ステップST18に進む。
 ステップST18において、修正部14は、修正範囲記憶部23から修正範囲のデータと、修正範囲に関連付けられているパラメータとを読み出し、読み出したパラメータに基づいて修正範囲のデータを修正する。修正部14は、修正した修正範囲のデータを修正範囲記憶部23に記憶させる。
 ステップST19において、生成部15は、加工プログラムの修正範囲のデータを、ステップST18の工程により修正した修正範囲のデータに変更することにより修正後加工プログラムを生成する。生成部15は、生成した修正後加工プログラムを修正後加工プログラム記憶部24に記憶させる。
 ステップST20において、加工プログラム出力部16は、修正後加工プログラム記憶部24に記憶されている修正後加工プログラムを読み出し、読み出した修正後加工プログラムを数値制御装置などの外部装置に出力する。
 よって、加工プログラム修正装置2は、作業者が任意に設定した抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出することができるので、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、抽出ルール設定部12は、工具データに基づいて生成される工具モデルが移動する工具経路上に工具モデルを仮想的に通過させる。抽出ルール設定部12は、工具モデルと形状データに基づいて生成される加工形状モデルとが接する状態になる仕上げ加工を行う範囲を修正範囲とする。また、抽出ルール設定部12は、工具モデルと加工形状モデルとが接しない状態になる荒加工を行う範囲を修正範囲とする。抽出ルール設定部12は、仕上げ加工を行う範囲、または、荒加工を行う範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出するルールを第3抽出ルールとして設定する。
 抽出部13は、第3抽出ルールに基づいて、加工プログラムから仕上げ加工の範囲または荒加工の範囲のデータを抽出する。
 また、抽出ルール設定部12は、工具データに基づいて生成される工具モデルが移動する工具経路上に工具モデルを仮想的に通過させる。抽出ルール設定部12は、工具モデルと形状データに基づいて生成される加工形状モデルの任意の曲面とが接している状態になる範囲を修正範囲とし、修正範囲のデータを加工プログラムから抽出するルールを第4抽出ルールとして設定する。
 抽出部13は、第4抽出ルールに基づいて、加工プログラムから工具モデルと加工形状モデルの任意の曲面とが接している状態になる範囲のデータを抽出する。
 ここで、加工プログラム修正装置2の具体的な動作について説明する。図11は、加工プログラム200の一例を示す図である。加工プログラム200は、指令位置を3次元の座標アドレス「X」、「Y」および「Z」とこれらに続く数値とにより座標を示している。
 図12は、加工プログラム200によって加工される形状の加工形状モデルM1の斜視図である。図13は、加工形状モデルM1の断面図である。加工形状モデルM1は、加工曲面S0から加工曲面S3を有する。
 また、図13に示すように、加工曲面S0と加工曲面S1とは、接続位置e0において接続されている。また、加工曲面S1と加工曲面S2とは、接続位置e1において接続されている。また、加工曲面S2と加工曲面S3とは、接続位置e2において接続されている。
 また、図14は、工具データの一例を示す図である。工具データは、工具の番号を示す工具番号と、工具の種別を示す工具種別と、工具の長さを示す工具長と、工具の直径を示す工具径と、コーナの半径を示すコーナRとにより構成される。本実施の形態2では、加工プログラム200で指令される工具は、工具番号1の工具であるとする。
 抽出ルール設定部12において、「加工プログラム中の仕上げ加工を行う範囲のデータを抽出する」が抽出ルールとして設定された場合について説明する。
 抽出部13は、加工プログラム200から仕上げ加工を行う範囲のデータを抽出する。具体的には、抽出部13は、加工プログラム200中の移動指令による経路に沿って工具モデルを移動させた際に、工具モデルと加工形状モデルとが接する状態になる範囲のデータを抽出する。
 まず、抽出部13は、加工プログラム200中の各ブロックの移動指令を抽出し、抽出した移動指令に基づいて、経路を生成する。経路には、指令点が含まれている。
 図15は、抽出部13により生成された移動指令による経路と加工形状モデルM1とを示す図である。図15には、早送り指令による経路P1と、直線補間指令による経路P2とが示されている。
 また、指令点CL012から指令点CL054の各指令点は、加工プログラム200中の移動指令の指令座標が記述されているブロック「N012・・・」からブロック「N053・・・」の各ブロックに対応している。
 つぎに、抽出部13は、指令点CL012から指令点CL054の各指令点に工具データにより定義される工具モデルを仮想的に配置した際に、工具モデルと加工形状モデルとが接しているか否かを判定する。この判定は、工具モデルと加工形状モデルとの最短距離を用いて判定することができる。例えば、抽出部13は、工具モデルと加工形状モデルとの最短距離がゼロまたは予め定められた距離の場合には、工具モデルと加工形状モデルとが接していると判定する。
 図16は、工具モデルT1と加工形状モデルM1とが接していない状態を示す図である。なお、図16中のCLは、指令点を示している。図17は、工具モデルT1と加工形状モデルM1とが接している状態を示す図である。なお、図17中のCLは、指令点を示している。
 本実施の形態2では、指令点CL040から指令点CL054に工具番号1の工具モデルを配置した際に、工具モデルと加工形状モデルとが接する。
 よって、抽出部13は、図18に示すように、指令点CL040から指令点CL054に対応する加工プログラム200中のブロック「N040・・・」からブロック「N054・・・」までの範囲を修正範囲r4とし、修正範囲r4のデータを抽出する。図18は、加工プログラム200の修正範囲r4を示す図である。
 つぎに、抽出ルール設定部12において、「加工プログラム200中の加工形状モデルの加工曲面S1を加工する範囲のデータを抽出する」が抽出ルールとして設定された場合について説明する。
 抽出部13は、加工プログラム200から加工形状モデルの加工曲面S1を加工する範囲のデータを抽出する。具体的には、抽出部13は、加工プログラム200中の移動指令による経路に沿って工具モデルを移動させた際に、工具モデルと加工曲面S1とが接する状態となる範囲のデータを抽出する。
 まず、抽出部13は、加工プログラム200中の各ブロックの移動指令を抽出し、抽出した移動指令に基づいて、経路を生成する。
 つぎに、抽出部13は、指令点CL012から指令点CL054の各指令点に工具データにより定義される工具モデルを仮想的に配置した際に、工具モデルと加工曲面S1とが接するか否かを判定する。この判定は、工具モデルと加工曲面S1との最短距離を用いて判定することができる。例えば、抽出部13は、工具モデルと加工曲面S1との最短距離がゼロまたは予め定められた距離の場合には、工具モデルと加工曲面S1とが接していると判定する。
 本実施の形態2では、指令点CL041から指令点CL051に工具番号1の工具モデルを配置した際に、工具モデルと加工曲面S1が接する。
 よって、抽出部13は、図19に示すように、指令点CL041から指令点CL051に対応する加工プログラム200中のブロック「N041・・・」からブロック「N051・・・」までの範囲を修正範囲r5とし、修正範囲r5からデータを抽出する。図19は、加工プログラム200の修正範囲r5を示す図である。
 ここで、特許第6157781号公報には、加工曲面に工具が接しない指令があった場合に、工具が加工曲面に接するように修正指令点の修正すべき方向である指令点修正方向に従って修正指令点を修正することにより工具経路データを修正する装置が開示されている。
 具体的には、特許第6157781号公報に記載の装置は、加工プログラムである工具経路データ、工具データ、および形状に基づいて、工具経路データに記述される指令点へ配置した際の、加工形状の加工曲面上であって工具による被加工点の情報である被切削点情報を算出する。工具経路データおよび被切削点情報に基づいて、工具経路データに記述される指令点から修正すべき指令点である修正指令点を抽出する。抽出した修正指令点に基づいて、修正指令点の修正すべき方向である指令点修正方向を決定する。工具が加工曲面に接するように指令点修正方向に従って修正指令点を修正することにより工具経路データを修正する。
 修正部14は、上述した特許第6157781号公報にかかる発明を利用して、抽出部13により抽出した修正範囲のデータを修正してもよい。
 よって、実施の形態2における加工プログラム修正装置2は、形状データ、工具データ、および抽出ルールに基づいて、加工プログラムから修正範囲のデータを抽出することができるので、作業者が加工プログラムを確認しながら修正範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。また、実施の形態2における加工プログラム修正装置2は、抽出ルールを設定することにより、所望の修正範囲を指定することができるので、加工プログラムの内容を理解する作業者の作業を低減し、作業者による作業能率の低下を抑制することができる。
 また、実施の形態2における加工プログラム修正装置2は、作業者が任意に設定した抽出ルールに基づいて、加工プログラムから工具モデルと加工形状モデルの任意の曲面とが接している状態になる範囲のデータを抽出することができるので、作業者が工具モデルと加工形状モデルの任意の曲面とが接している状態になる範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 また、実施の形態2における加工プログラム修正装置2は、作業者が任意に設定した抽出ルールに基づいて、加工プログラムから仕上げ加工の範囲または荒加工の範囲のデータを抽出することができるため、作業者が仕上げ加工の範囲または荒加工の範囲を指定する必要がなく、作業者による作業能率の低下を抑制することができる。
 図20は、加工プログラム修正装置1,2のハードウェア構成例を示す図である。加工プログラム修正装置1,2は、コンピュータであり、出力部301、プロセッサ302、メモリ303、表示部304および入力部305を備える。図1および図9に示した加工プログラム出力部16は、出力部301により実現される。
 図1および図9に示した抽出ルール設定部12、抽出部13、修正部14および生成部15は、メモリ303に格納されたプログラムがプロセッサ302により実行されることにより実現される。
 図1に示した加工プログラム記憶部21、抽出ルール記憶部22、修正範囲記憶部23および修正後加工プログラム記憶部24、および図9に示した加工プログラム記憶部21、抽出ルール記憶部22、修正範囲記憶部23、修正後加工プログラム記憶部24、形状データ記憶部25、工具データ記憶部26は、メモリ303により実現される。
 プロセッサ302は、例えば、CPU、マイクロプロセッサなどであり、処理回路である。メモリ303は、プロセッサ302によりプログラムが実行される際の記憶領域としても用いられる。
 図1に示した加工プログラム受付部11、および図9に示した加工プログラム受付部11、形状データ受付部31、工具データ受付部32は、入力部305により実現される。
 図1および図9に示した表示編集部17は、表示部304および入力部305が一体化されたタッチパネルにより実現される。なお、表示編集部17の表示機能は、表示部304により実現されてもよい。また、表示編集部17の編集機能は、入力部305により実現されてもよい。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1,2 加工プログラム修正装置、11 加工プログラム受付部、12 抽出ルール設定部、13 抽出部、14 修正部、15 生成部、16 加工プログラム出力部、17 表示編集部、17a 表示部、17b 操作部、21 加工プログラム記憶部、22 抽出ルール記憶部、23 修正範囲記憶部、24 修正後加工プログラム記憶部、25 形状データ記憶部、26 工具データ記憶部、31 形状データ受付部、32 工具データ受付部、100,200 加工プログラム。

Claims (9)

  1.  加工プログラムの入力を受け付ける加工プログラム受付部と、
     修正範囲のデータを前記加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定部と、
     前記抽出ルールに基づいて、前記加工プログラムから前記修正範囲のデータを抽出する抽出部と、
     前記抽出部により抽出された前記修正範囲のデータを修正する修正部と、
     前記加工プログラムと、前記修正部により修正された前記修正範囲のデータとに基づいて、修正後加工プログラムを生成する生成部とを備えることを特徴とする加工プログラム修正装置。
  2.  前記抽出ルール設定部は、単一または複数の指令コードが有効な範囲を前記修正範囲とし、当該修正範囲のデータを前記加工プログラムから抽出する第1抽出ルールを設定し、
     前記抽出部は、前記第1抽出ルールに基づいて、単一または複数の指令コードが有効な範囲のデータを前記加工プログラムから抽出することを特徴とする請求項1に記載の加工プログラム修正装置。
  3.  前記加工プログラムは、複数の加工工程に対応するデータから構成されており、
     前記抽出ルール設定部は、前記複数の加工工程の中から、選択された加工工程の範囲を前記修正範囲とし、当該修正範囲のデータを前記加工プログラムから抽出するための第2抽出ルールを設定し、
     前記抽出部は、前記複数の加工工程ごとの加工プログラム内の位置を示す情報および前記第2抽出ルールに基づいて、前記修正範囲のデータを前記加工プログラムから抽出することを特徴とする請求項1に記載の加工プログラム修正装置。
  4.  加工対象物の加工形状モデルを定義する情報である形状データの入力を受け付ける形状データ受付部と、
     工具の工具モデルを定義する情報である工具データの入力を受け付ける工具データ受付部とを備え、
     前記抽出部は、前記抽出ルール、前記形状データ、および前記工具データに基づいて、前記加工プログラムから前記修正範囲のデータを抽出することを特徴とする請求項1に記載の加工プログラム修正装置。
  5.  前記抽出ルール設定部は、前記工具データに基づいて生成される工具モデルが移動する工具経路上に前記工具モデルを仮想的に通過させた際に、前記工具モデルと前記形状データに基づいて生成される加工形状モデルとが接する状態になる仕上げ加工を行う範囲を前記修正範囲とし、または、前記工具モデルと前記加工形状モデルとが接しない状態になる荒加工を行う範囲を前記修正範囲とし、当該修正範囲のデータを前記加工プログラムから抽出する第3抽出ルールを設定し、
     前記抽出部は、前記第3抽出ルールに基づいて、前記加工プログラムから前記仕上げ加工の範囲または前記荒加工の範囲のデータを抽出することを特徴とする請求項4に記載の加工プログラム修正装置。
  6.  前記抽出ルール設定部は、前記工具データに基づいて生成される工具モデルが移動する工具経路上に前記工具モデルを仮想的に通過させた際に、前記工具モデルと前記形状データに基づいて生成される加工形状モデルの任意の曲面とが接している状態になる範囲を前記修正範囲とし、当該修正範囲のデータを前記加工プログラムから抽出する第4抽出ルールを設定し、
     前記抽出部は、前記第4抽出ルールに基づいて、前記加工プログラムから前記工具モデルと前記加工形状モデルの任意の曲面とが接している状態になる範囲のデータを抽出することを特徴とする請求項4に記載の加工プログラム修正装置。
  7.  前記抽出部により抽出された前記修正範囲のデータを表示し、前記修正範囲を編集する表示編集部を備え、
     前記修正部は、前記表示編集部により編集された前記修正範囲のデータを修正することを特徴とする請求項1に記載の加工プログラム修正装置。
  8.  前記表示編集部は、パラメータの設定の入力を受け付け、受け付けたパラメータを対応する修正範囲に関連付けることを特徴とする請求項7に記載の加工プログラム修正装置。
  9.  加工プログラムの入力を受け付ける加工プログラム受付工程と、
     修正範囲のデータを前記加工プログラムから抽出するための抽出ルールを設定する抽出ルール設定工程と、
     前記抽出ルールに基づいて、前記加工プログラムから前記修正範囲のデータを抽出する抽出工程と、
     前記抽出工程により抽出された前記修正範囲のデータを修正する修正工程と、
     前記加工プログラムと、前記修正工程により修正された前記修正範囲のデータとに基づいて、修正後加工プログラムを生成する生成工程とを含むことを特徴とする加工プログラム修正方法。
PCT/JP2017/046556 2017-12-26 2017-12-26 加工プログラム修正装置および加工プログラム修正方法 WO2019130412A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/JP2017/046556 WO2019130412A1 (ja) 2017-12-26 2017-12-26 加工プログラム修正装置および加工プログラム修正方法
DE112017006457.0T DE112017006457T5 (de) 2017-12-26 2017-12-26 Bearbeitungsprogrammänderungsvorrichtung und Bearbeitungsprogrammänderungsverfahren
JP2018535198A JP6479275B1 (ja) 2017-12-26 2017-12-26 加工プログラム修正装置および加工プログラム修正方法
CN201780083832.6A CN110199230B (zh) 2017-12-26 2017-12-26 加工程序修正装置以及加工程序修正方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/046556 WO2019130412A1 (ja) 2017-12-26 2017-12-26 加工プログラム修正装置および加工プログラム修正方法

Publications (1)

Publication Number Publication Date
WO2019130412A1 true WO2019130412A1 (ja) 2019-07-04

Family

ID=65655823

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/046556 WO2019130412A1 (ja) 2017-12-26 2017-12-26 加工プログラム修正装置および加工プログラム修正方法

Country Status (4)

Country Link
JP (1) JP6479275B1 (ja)
CN (1) CN110199230B (ja)
DE (1) DE112017006457T5 (ja)
WO (1) WO2019130412A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021095170A1 (ja) * 2019-11-13 2021-05-20 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
JPWO2021187498A1 (ja) * 2020-03-18 2021-09-23
WO2024042633A1 (ja) * 2022-08-24 2024-02-29 ファナック株式会社 加工プログラム編集装置、及び加工プログラム編集方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7417832B2 (ja) * 2020-06-19 2024-01-19 パナソニックIpマネジメント株式会社 情報処理方法、及び、情報処理装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100730A (ja) * 1991-10-03 1993-04-23 Yaskawa Electric Corp モーシヨンコントローラのプログラミング装置
JPH09160624A (ja) * 1995-12-06 1997-06-20 Toyota Motor Corp 工具経路決定方法
JPH10307615A (ja) * 1997-05-08 1998-11-17 Nissan Motor Co Ltd Cam用凹溝部位の加工経路自動生成方法
JP2003067019A (ja) * 2001-08-29 2003-03-07 Star Micronics Co Ltd 加工プログラム編集システム
JP2009266000A (ja) * 2008-04-25 2009-11-12 Sodick Co Ltd 加工制御装置
JP2015207147A (ja) * 2014-04-21 2015-11-19 村田機械株式会社 工作機械、プログラム編集方法、及び制御プログラム
WO2016035869A1 (ja) * 2014-09-03 2016-03-10 ヤマザキマザック 株式会社 加工プログラム編集支援装置
JP2016139349A (ja) * 2015-01-29 2016-08-04 ファナック株式会社 加工サイクルの部分修正が可能な数値制御装置
WO2017110236A1 (ja) * 2015-12-24 2017-06-29 三菱電機株式会社 工具経路修正装置および工具経路修正方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6157781A (ja) 1984-08-29 1986-03-24 松下電工株式会社 収納家具の引戸装置
JP3193072B2 (ja) * 1991-06-14 2001-07-30 オークマ株式会社 数値制御プログラム編集装置
JP2015207134A (ja) 2014-04-21 2015-11-19 村田機械株式会社 工作機械、プログラム編集方法、及び制御プログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05100730A (ja) * 1991-10-03 1993-04-23 Yaskawa Electric Corp モーシヨンコントローラのプログラミング装置
JPH09160624A (ja) * 1995-12-06 1997-06-20 Toyota Motor Corp 工具経路決定方法
JPH10307615A (ja) * 1997-05-08 1998-11-17 Nissan Motor Co Ltd Cam用凹溝部位の加工経路自動生成方法
JP2003067019A (ja) * 2001-08-29 2003-03-07 Star Micronics Co Ltd 加工プログラム編集システム
JP2009266000A (ja) * 2008-04-25 2009-11-12 Sodick Co Ltd 加工制御装置
JP2015207147A (ja) * 2014-04-21 2015-11-19 村田機械株式会社 工作機械、プログラム編集方法、及び制御プログラム
WO2016035869A1 (ja) * 2014-09-03 2016-03-10 ヤマザキマザック 株式会社 加工プログラム編集支援装置
JP2016139349A (ja) * 2015-01-29 2016-08-04 ファナック株式会社 加工サイクルの部分修正が可能な数値制御装置
WO2017110236A1 (ja) * 2015-12-24 2017-06-29 三菱電機株式会社 工具経路修正装置および工具経路修正方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021095170A1 (ja) * 2019-11-13 2021-05-20 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
JPWO2021095170A1 (ja) * 2019-11-13 2021-05-20
JP7175403B2 (ja) 2019-11-13 2022-11-18 三菱電機株式会社 加工プログラム変換装置、数値制御装置および加工プログラムの変換方法
JPWO2021187498A1 (ja) * 2020-03-18 2021-09-23
WO2021187498A1 (ja) * 2020-03-18 2021-09-23 ファナック株式会社 速度調整支援装置
JP7410272B2 (ja) 2020-03-18 2024-01-09 ファナック株式会社 速度調整支援装置
WO2024042633A1 (ja) * 2022-08-24 2024-02-29 ファナック株式会社 加工プログラム編集装置、及び加工プログラム編集方法

Also Published As

Publication number Publication date
CN110199230A (zh) 2019-09-03
JPWO2019130412A1 (ja) 2019-12-26
JP6479275B1 (ja) 2019-03-06
DE112017006457T5 (de) 2019-09-05
CN110199230B (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
WO2019130412A1 (ja) 加工プログラム修正装置および加工プログラム修正方法
JP5925976B1 (ja) 加工プログラム編集支援装置
CN108369407B (zh) 刀具路径修正装置及刀具路径修正方法
WO2014155723A1 (ja) 数値制御装置
JPH02293903A (ja) Cad/cam装置
JPWO2014167736A1 (ja) 数値制御プログラム編集装置、数値制御プログラム編集方法およびプログラム
JP6333798B2 (ja) 数値制御装置
JP2021043771A (ja) 情報処理装置
JP5020412B1 (ja) 自動プログラミング装置および制御指令生成方法
JP6687582B2 (ja) 情報処理装置
JP5734228B2 (ja) 自動プログラミング装置および方法
JPWO2013128625A1 (ja) 加工プログラム生成装置、加工プログラム生成方法、および加工プログラム生成プログラム
JP7339069B2 (ja) 加工プログラム生成支援装置
EP3960364A1 (en) Joint amount control device, joint amount control method, joint amount control program, and laser processing device
JP2584229B2 (ja) Cad/cam自動プログラミング装置
JP2000039909A (ja) 数値制御情報作成装置
JP6219866B2 (ja) 表示機能付き数値制御装置および表示プログラム
JP2584356B2 (ja) Cad/cam装置における加工プログラムの生成方法
CN111650887B (zh) 控制系统
KR20110071503A (ko) 컴퓨터 수치 제어 공작기계에서 가공 대화형 프로그램을 이용한 가공 형상 입력 장치 및 방법
JPH09160626A (ja) Ncデータ作成システム
JP2871991B2 (ja) 加工経路生成装置
JPH11338529A (ja) データ変換方法およびcad/cam装置およびそのデータ変換方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2007133559A (ja) 三次元cad部品データ構成生成装置及び生成方法
JPH03201010A (ja) 数値制御装置

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2018535198

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17936459

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17936459

Country of ref document: EP

Kind code of ref document: A1