WO2022004645A1 - ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム - Google Patents

ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム Download PDF

Info

Publication number
WO2022004645A1
WO2022004645A1 PCT/JP2021/024326 JP2021024326W WO2022004645A1 WO 2022004645 A1 WO2022004645 A1 WO 2022004645A1 JP 2021024326 W JP2021024326 W JP 2021024326W WO 2022004645 A1 WO2022004645 A1 WO 2022004645A1
Authority
WO
WIPO (PCT)
Prior art keywords
machining
information
cnc
unit
program
Prior art date
Application number
PCT/JP2021/024326
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 CN202180046462.5A priority Critical patent/CN115735167A/zh
Priority to US17/928,711 priority patent/US20230236567A1/en
Priority to DE112021003589.4T priority patent/DE112021003589T5/de
Priority to JP2022533987A priority patent/JP7464712B2/ja
Publication of WO2022004645A1 publication Critical patent/WO2022004645A1/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/4097Numerical 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 using design data to control NC machines, e.g. CAD/CAM
    • 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/406Numerical 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 monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • 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/408Numerical 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 data handling or data format, e.g. reading, buffering or conversion of data
    • G05B19/4083Adapting programme, configuration
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36231Translate, convert machine independent to machine dependent program
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36232Before machining, convert, adapt program to specific possibilities of machine
    • 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 post processor, a machining program creation method, a CNC machining system, and a machining program generation program.
  • a machining program G code or the like
  • the CAM Computer Aided Manufacturing
  • CL Cutting location
  • the CL data is stored by the post processor. It is converted into a machining program suitable for each machine. Therefore, whether or not a machining program utilizing the CNC function can be generated depends on the performance of the post processor.
  • Patent Document 1 describes a method in which a CNC device calls and uses a control subprogram for a machine tool to perform a specific machining step to be performed such as finish cutting and rough cutting. Specifically, Patent Document 1 describes that a control device (which becomes a CNC device) reads usability information that specifies a control subprogram for a specific machining process to be performed. Further, in Patent Document 1, when the control subprogram attached to the machining process can be used for the machining step to be executed based on the available control subprogram and the motion information, the machining step can be described. It is described that the control subprogram call request for calling the attached control subprogram is generated as a control instruction.
  • Patent Document 2 describes a method for avoiding an error in the machining process due to a discrepancy between the configuration of the machine tool used in the simulation of the partial program and the configuration of the actual machine tool in the actual machining process. ing. Specifically, in Patent Document 2, the machining process of a machine tool can be controlled by a partial program, and the current configuration of the machine tool is required. The current configuration and the machine tool stored in the partial program are required. It is described that an alarm is generated when the current configuration and the simulation configuration do not match.
  • the current post processor is not linked with the CNC device, and if the CNC device is updated or options are added, the added functions can be used unless the post processor is updated separately from the CNC device. Can not. In addition, the user may not know the function of the CNC device, and a useful function may not be selected.
  • the post processor refers to the information of the CNC device, selects the function to be used based on the information of the CNC device, and generates the machining program. Furthermore, it is also desired that the post processor predicts the machining result with the machining simulator and outputs the optimum machining program for the machining target.
  • the first aspect of the present disclosure is a machining command input unit for inputting a machining command independent of a machine, and a machining command input unit.
  • a CNC information acquisition unit that communicates with a CNC device and acquires optional information of the CNC device or information regarding specifications of the CNC device.
  • the machining target input section where machining target information related to the machining target is input, and
  • An available function determination unit that determines a function that can be used for machining based on the option information of the CNC device or the information related to the specifications of the CNC device acquired by the CNC information acquisition unit.
  • a machining program generation unit that generates at least one machining program that uses or does not use at least one function determined to be usable by the available function determination unit based on the machining command.
  • a machining simulation unit that simulates machining results based on the machining program generated by the machining program generation unit, and a machining simulation unit.
  • a machining simulation result evaluation unit that evaluates machining simulation results output from the machining simulation unit according to the machining target, and a machining simulation result evaluation unit.
  • a machining program output unit that selects and outputs a machining program to be used for machining based on the evaluation of the machining simulation result, and a machining program output unit. including, It is a post processor.
  • the second aspect of the present disclosure has the post processor described in (1) above and a CNC device connected to the post processor, and is a workpiece based on a machining program output from the post processor.
  • CNC machining machine that performs CNC machining of It is a CNC processing system equipped with.
  • a machine-independent machining command is input. Communicate with the CNC device to obtain optional information on the CNC device or information on the specifications of the CNC device. Processing target information related to processing target is input, The functions that can be used for machining are determined based on the acquired option information of the CNC device or the information regarding the specifications of the CNC device. Based on the machining command, generate at least one machining program that uses or does not use at least one function determined to be usable. Machining simulation of machining results based on the generated machining program, The result of the machining simulation is evaluated according to the machining target. Based on the evaluation of the result of the machining simulation, the machining program used for machining is selected and output. This is a post-processor machining program generation method.
  • a fourth aspect of the present disclosure is to a computer as a post processor.
  • Processing that simulates machining results based on the generated machining program, and Processing to evaluate the result of machining simulation according to the input machining target, Based on the evaluation of the result of the machining simulation, the process of selecting and outputting the machining program used for machining, and the process of selecting and outputting. It is a program for generating a machining program to execute.
  • the post processor can refer to the information of the CNC device to select the function to be used based on the information of the CNC device and generate the machining program.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • FIG. 1 is a block diagram showing a configuration example of a CNC machining system including the post processor of the first embodiment of the present disclosure.
  • FIG. 2 is a block diagram showing a configuration example of the post processor according to the first embodiment of the present disclosure.
  • the CNC machining system includes a CAD (computer aided design) device 10, a main processor 20, a post processor 30, and a CNC machine tool 40.
  • CAD computer aided design
  • the CNC machine tool 40 includes a CNC device 410, a motor control device 420, a spindle motor 431, and a feed shaft motor 432.
  • the CNC machine tool 40 includes members necessary for machining in addition to the spindle motor 431 and the feed shaft motor 432, but FIG. 1 shows only the spindle motor 431 and the feed shaft motor 432.
  • the CAD device 10 operates CAD software that draws drawings on the screen of a computer by using a CPU (Central Processing Unit).
  • the work is drawn by two-dimensional CAD or three-dimensional CAD.
  • two-dimensional CAD is used, a front view, a top view, a side view, etc. of the workpiece are produced on the planes of X and Y.
  • 3D CAD is used, a 3D image of the work piece is created in the 3D space of X, Y and Z.
  • the main processor 20 sets the movement of the tool or machine tool so that the machining shape can be obtained based on the CAD data, and converts the movement into CL (cutter location) data.
  • the post processor 30 generates a machining program (NC data) based on the CL data created by the main processor 20.
  • the post processor 30 is connected to the CNC device 410 by wire or wirelessly so as to be able to communicate directly or indirectly, and generates a machining program by referring to the information of the CNC device 410. The detailed configuration of the post processor 30 will be described later.
  • the main processor 20 and the post processor 30 may be provided separately, or may be integrated as a CAM device.
  • the main processor 20 and the post processor 30 operate the main processor software operated as the main processor 20 and the post processor software operated as the post processor 30 by using the CPU of the computer as the main processor 20 and the post processor 30, respectively. It may work.
  • the two software may be run on the same computer or on different computers.
  • the post-processor 30, the post-processor 30 and the main processor 20, or the post-processor 30, the main processor 20, and the CAD device 10 may be included in the CNC machine tool 40.
  • the CNC machine tool 40 is a 3-axis machine tool that performs CNC machining based on, for example, a machining program.
  • the CNC device 410 controls the motor control device 420 based on the machining program, and the motor control device 420 drives the spindle motor 431 and the feed shaft motor 432 to perform machining.
  • the CNC machine tool 40 is not limited to the 3-axis machine tool, and may be, for example, a 5-axis machine tool.
  • the CNC device 410 includes a program analysis unit 411, a command output unit 412, and a storage unit 413.
  • the program analysis unit 411 sequentially reads and analyzes blocks including the X-axis, Y-axis and Z-axis movement commands and the spindle rotation commands from the machining program (NC data) created by the post-processor 30. Based on the result, command data for commanding the movement of the X-axis, the Y-axis and the Z-axis and the rotation of the spindle is created and output to the command output unit 412.
  • the command output unit 412 calculates the speed of each axis based on the command data output from the program analysis unit 411, and the data based on the calculation result is input to the spindle motor control unit 421 of the motor control device 420, the X axis, and Y. The data is output to the three feed shaft motor control units 422 of the shaft and the Z shaft.
  • the storage unit 413 stores the parameter information of the CNC device 410, the option information of the CNC device 410, and the information regarding the specifications of the CNC device 410.
  • the information stored in the storage unit 413 may be one or two of the parameter information of the CNC device 410, the option information, and the information regarding the specifications of the CNC device 410.
  • the parameter information of the CNC device 410 is used, for example, for parameters related to the axis configuration and the movable range of each axis, parameters such as a time constant used for controlling the speed, acceleration, and jerk of each axis, and control of the position of each axis. It is at least one parameter of the parameters such as the allowable position deviation.
  • the option information of the CNC device 410 is, for example, information about the CNC function that can be used in the CNC device 410.
  • the information about the CNC function that can be used in the CNC device 410 includes the presence / absence of the CNC function that can be used in the CNC device 410, and the content of the CNC function if there is the CNC function.
  • the information regarding the specifications of the CNC device 410 is, for example, information about the manufacturer, model, and / or software version of the CNC device 410.
  • the motor control device 420 includes a spindle motor control unit 421 and a feed shaft motor control unit 422.
  • the spindle motor control unit 421 controls the rotation operation of the spindle motor 431 by general feedback control using the feedback value of the rotation position of the spindle motor 431 based on the output from the command output unit 412.
  • the three feed axis motor control units 422 of the X-axis, Y-axis, and Z-axis feed back the feed positions of the three feed-axis motors 432 of the X-axis, Y-axis, and Z-axis based on the output from the command output unit 412.
  • the value is used to control the feed operation of the three feed shaft motors 432. Since the internal configuration of the spindle motor control unit 421 and the three feed shaft motor control units 422 is well known to those skilled in the art, detailed description and illustration thereof will be omitted.
  • the spindle motor 431 rotates a tool such as a ball end mill.
  • the feed shaft motor 432 includes three motors in the X-axis direction, the Y-axis direction, and the Z-axis direction.
  • the motors in the X-axis direction and the Y-axis direction linearly move the table on which the substrate for manufacturing the work is placed in the X-axis direction and the Y-axis direction, respectively, via a ball screw or the like.
  • the Z-axis motor moves the tool or table linearly in the Z-axis direction.
  • the configuration of the 3-axis machine is not limited to such a configuration.
  • the tool is fixed, and the feed axis motor 432 linearly moves the table in the X-axis direction, the Y-axis direction, and the Z-axis direction, or fixes the table.
  • the feed shaft motor 432 may linearly move the tool in the X-axis direction, the Y-axis direction, and the Z-axis direction.
  • a linear motor may be used as the motor in the X-axis direction, the Y-axis direction, and the Z-axis direction.
  • the post processor 30 includes a CNC information acquisition unit 301, a usable function determination unit 302, a machining target input section 303, a machining command input section 304, a machining program generation section 305, a machining simulation section 306, and a machining simulation. It includes a result evaluation unit 307 and a machining program output unit 308.
  • the post processor 30 may be built in the CNC device 410.
  • the CNC information acquisition unit 301 communicates with the CNC device 410, acquires at least one of the option information of the CNC device 410 and the information regarding the specifications of the CNC device 410 from the storage unit 413, and outputs the information to the usable function determination unit 302. Further, the CNC information acquisition unit 301 may acquire the parameters of the CNC device 410 from the storage unit 413 and output them to one or both of the usable function determination unit 302 and the machining program generation unit 305.
  • the option information of the CNC device 410, the information regarding the specifications of the CNC device 410, and the parameters of the CNC device 410 are collectively referred to as "CNC information".
  • the usable function determination unit 302 determines the CNC function that can be used in the CNC device 410 based on the option information of the CNC device 410 or the information regarding the specifications of the CNC device 410 acquired by the CNC information acquisition unit 301, and performs a machining program. Output to the generator 305.
  • the available function determination unit 302 determines whether or not there is a CNC function that can be used in the CNC device 410. If there is a CNC function, take out the CNC function.
  • the CNC functions taken out include, for example, a smoothing function and a high-speed machining function.
  • the usable function determination unit 302 can determine the CNC function that can be used in the CNC device 410 by using the information regarding the specifications of the CNC device 410 without using the option information. Specifically, the usable function determination unit 302 stores itself as information regarding the specifications of the CNC device 410, for example, using information regarding the manufacturer and model of the CNC device 410, and / or information regarding the version of the software. With reference to the list of functions of the CNC device 410, it can be determined that the smoothing function FA and the high-speed machining function are the CNC functions that can be used in the CNC device 410.
  • the usable function determination unit 302 uses the information on the specifications of the CNC device 410, refers to the list of functions of the CNC device 410 stored by itself, identifies a plurality of functions that can be used in the CNC device 410, and determines the plurality of functions that can be used in the CNC device 410.
  • the CNC function that can be used in the CNC device 410 can be determined by referring to the NC parameter indicating whether or not the plurality of functions of the CNC device 410 included in the parameter of the device 410 are valid.
  • the usable function determination unit 302 stores itself as information regarding the specifications of the CNC device 410, for example, using information regarding the manufacturer and model of the CNC device 410, and / or information regarding the software version.
  • the smoothing function FA, the smoothing function FB, the corner deceleration function and the high-speed machining function shown in FIG. 3 are specified as the functions that can be used in the CNC device 410.
  • the usable function determination unit 302 refers to the NC parameter indicating whether or not the function of the CNC device 410, which is included in the parameter of the CNC device 410, is effective, and the smoothing function FA and the high-speed machining function are the CNC device. It can be determined that it is a CNC function that can be used with 410.
  • Function FA and high-speed machining functions can be selected as CNC functions that can be used in the CNC device 410.
  • the machining target input unit 303 outputs the machining target input by the user at the time of machining to the machining program generation unit 305 and the machining simulation result evaluation unit 307.
  • the machining target may include, for example, at least one of the time required for machining, machining accuracy, machining quality, and a combination of at least two of these in a prioritized manner.
  • the time required for processing is, for example, the shortest processing time or the target processing time.
  • the processing accuracy is, for example, a dimensional difference from the target shape or a geometrical tolerance from the target shape.
  • the processing quality is, for example, an allowable value of surface roughness.
  • a goal that must be met and a goal that does not necessarily have to be met may be set. However, the priority of goals that do not necessarily have to be met is set lower than the priority of goals that must be met.
  • the position on the target shape to which the target is applied may also be entered.
  • Table 1 shows the machining time, machining accuracy, machining quality values, priorities, and machining application points, which are the machining targets in the case of manufacturing a workpiece having a cylinder on a rectangular parallelepiped, which is shown in FIG. ..
  • FIG. 4 is a perspective view showing a work in which a cylinder is provided on a rectangular parallelepiped.
  • the work 50 is provided with a cylinder having a plane PS1 and a cylindrical surface CS on a rectangular parallelepiped plane PS2.
  • machining time, machining accuracy and machining quality are set as machining targets.
  • Machining quality, and machining time are set in this order, and it is set that it is essential to set the machining accuracy and the priority order of machining quality.
  • the machining accuracy is set to the cylindrical surface CS, and the machining quality is set to the flat surface PS1 and the flat surface PS2.
  • the machining accuracy of the machining target can be specified, for example, based on the following information.
  • -Target dimensions between specific elements of the target shape for example, the target distance between the surface SA and the surface SC in FIG. 5
  • Geometric tolerance between specific elements of the target shape eg, target parallelism of surface SB and surface SD in FIG. 5 More specifically, as shown in FIG. 5, when the distance between the surface SA and the surface SC is set as the target dimension LA and the dimensional difference between the target dimension LA and the processed dimension is evaluated, the surface SA and the surface SC are used. Determine the surface SA'and surface SC' of the corresponding post-processed shape.
  • the surface SA'and the surface SC' there is a method in which the surface of the processed shape whose position and orientation are closest to the surface SA of the target shape is defined as the surface SA'.
  • the surface SC' can be determined in the same manner.
  • the distance between the surface SA'and the surface SC' is defined as the post-machining dimension LA'
  • the difference between the target dimension LA and the post-machining dimension LA' is defined as the dimension difference.
  • the surface SB'and the surface SD' are similarly determined, and the angle of the surface SD'with respect to the surface SB'is calculated as the geometrical tolerance after processing. do.
  • the machining quality of the machining target can be specified by, for example, the allowable value of the surface roughness.
  • the method of calculating the surface roughness by simulation is, for example, "Simulation of Surface roughness and profile in high-speed end milling", Ki Yong Lee, Myeong Chang Kang, Yung Ho Jeong, Deuk Woo Lee, Jeong Suk Kim. As described in Journal of Materials Processing Technology 113 (2001) 410-415, it is well known to those skilled in the art, and detailed description thereof will be omitted.
  • the machining command input unit 304 outputs the input machine-independent machining command to the machining program generation unit 305.
  • a CL file (Cutter Location file) can be mentioned.
  • the CL file is input from the main processor 20.
  • the machining program generation unit 305 generates one or more machining programs based on the machining command. At that time, the machining program generation unit 305 generates a machining program that uses or does not use at least one function determined to be usable by the usable function determination unit 302.
  • the functions determined to be usable by the available function determination unit 302 are the smoothing function FA and the high-speed machining function. Therefore, the available function determination unit 302 uses the following machining programs (a) to ( d) can be generated.
  • the machining program generation unit 305 does not have to create all of the machining programs (a) to (d). Examples of the case where one or more of the machining programs (a) to (d) are created instead of all of them include the following cases (A) and (B).
  • (A) When the machining program generation unit 305 can refer to information on the specifications of the CNC device 410 and knows a combination of functions that cannot be used together. For example, the machining program generation unit 305 uses both the smoothing function FA and the high-speed machining function. If it is found that the machining program (d) cannot be generated, the machining programs (a) to (c) may be generated instead of the machining program (d).
  • the machining program generation unit 305 can refer to the information regarding the specifications of the CNC device 410 and the machining target information described later, and the effect of each CNC function is known in advance.
  • the machining program generation unit 305 is used for machining. If the target is only "shortest machining time" and it is known that the effect of the high-speed machining function is to reduce the machining time, only the machining programs (c) and (d) may be created.
  • the machining program generation unit 305 may generate a machining program including a command for changing one or more parameter values of the CNC device 410 acquired by the CNC information acquisition unit 301.
  • the machining program generation unit 305 includes a command for changing two or more machining programs in the machining programs (a) to (d) so that the parameter values of the CNC apparatus 410 differ from each other by one or more. Can be done.
  • the parameters whose values can be changed by a command include, for example, the following. -Parameters such as time constant used to control the speed, acceleration, and jerk of each axis-Parameters such as allowable position deviation used to control the position of each axis
  • parameter values can be set so that the machining speed becomes high.
  • accuracy is important, parameter values can be set so that the error from the commanded route is small.
  • parameter values can be set so that the acceleration or jerk of each axis becomes small.
  • the CNC device 410 tries to move the tool according to the tool path and the command speed generally instructed by the machining program, but the actual tool path and the tool path instructed by the machining program are the following factors ( Since a) and (b) occur, they do not always match. (A) When the command speed is fast or the curve of the commanded path is steep, the acceleration on the curve becomes too large when passing through the commanded path at the command speed, for example, driving the shaft. It may exceed the performance of the motor. Further, in such a case, for example, vibration may occur.
  • the command path is a polygon even if the target shape is a smooth curved surface, for example. Therefore, it may intentionally deviate from the command path so that the machining result becomes a smooth curve.
  • the machining program generation unit 305 can determine that the machine operates at (1a), (2b) or an intermediate operation by changing the value of the above parameter.
  • the machining program generation unit 305 can determine that the machine operates at (1b), (2b) or an intermediate operation by changing the value of the above parameter.
  • (1b: Emphasis on command path) Parameter values can be set so that the corners of the polygonal line appear and the command path is followed.
  • 2b: Emphasis on smoothness Smoothing is possible by setting parameter values so that the tool path becomes smooth.
  • the dimensional accuracy deteriorates.
  • FIG. 6 is a diagram showing a tool path when moving faithfully to a command path and a tool path smoothed so as to be smooth with respect to the command path.
  • the tool path when it moves faithfully to the command path it becomes a jerky surface (square surface), but the accuracy of the dimension L is good.
  • the surface becomes smooth, but the accuracy of the dimension L is not good.
  • the machining program generation unit 305 performs the above-mentioned operations (1a) and (2a) and the above-mentioned operation (1b).
  • ) And (2b) may be combined as shown in Table 2 to determine the value of the parameter.
  • the method of inserting a command for changing the parameter value in the machining program has an advantage that the operation of the machine can be changed in the middle of the program. Therefore, this method is suitable when the machine setting is changed according to the machining program, or when it is necessary to change the machine setting during a series of machining such as rough machining and finish machining.
  • this method is suitable when the machine setting is changed according to the machining program, or when it is necessary to change the machine setting during a series of machining such as rough machining and finish machining.
  • the machining simulation unit 306 simulates the machining result based on each machining program generated by the machining program generation unit 305, and outputs the machining simulation result information.
  • the machining simulation result information includes, for example, information regarding the shape after machining and / or information regarding the machining time. Since the technique for simulating the machining result based on the machining program is a known technique as described in, for example, Japanese Patent No. 5149421, detailed description thereof will be omitted.
  • the machining simulation unit 306 may refer to the information of the parameter of the CNC device 410 already described.
  • the machining simulation unit 306 is at least one machining program generated by the machining program generation unit 305.
  • the machining simulation can be performed under two or more conditions in which the parameter values of the CNC device 410 are different. Specifically, when the machining program generation unit 305 sets two or more different conditions for parameters such as the time constant used for controlling the speed, acceleration, or jerk of each axis, the machining simulation unit 306 sets each. Perform machining simulation for the above conditions. By doing so, the machining simulation unit 306 can output the simulation result to which the value of the parameter is applied for each parameter value of the CNC device 410 used for the machining simulation.
  • the machining simulation result evaluation unit 307 evaluates and scores the machining simulation result output from the machining simulation unit 306 based on the machining target output from the machining target input unit 303. Specifically, if the machining target is "shortest machining time", higher scores are given to the machining simulation results in ascending order of machining time. When the processing target is given by a combination of a plurality of targets, the higher the priority target is, the higher the score is given. In the examples shown in FIGS. 4 and 1, since the accuracy of the cylindrical surface CS is the first priority target, the machining simulation results in which the diameter D of the cylindrical surface CS satisfies 20 ⁇ 0.01 mm are selected.
  • the highest score is given to the result in which the diameter D of the cylindrical surface CS is closest to the target, and the evaluation ends.
  • the results satisfying the surface roughness Ra of the planes PS1 and PS2 having the second highest priority are selected.
  • the result closest to the goal is given the highest score and the evaluation ends.
  • the score is given in the order of the shortest processing time from the selected results.
  • the machining simulation result evaluation unit may output that there is no machining program that meets the goals together with the evaluation results.
  • the machining program output unit 308 outputs the machining program that gives the machining simulation result with the highest score in the machining simulation result evaluation unit 307 to the CNC device 410 as the machining program used for machining.
  • the CNC device 410 uses the machining program for CNC (Direct Numerical Control) operation. Further, when a machining program to which the value of the parameter is applied is simulated for each parameter value of the CNC device 410 used for the machining simulation, the machining program output unit 308 gives the highest score by the machining simulation result evaluation unit 307.
  • a command for changing the parameter value of the CNC device 410 to the parameter value may be inserted and output in the machining program associated with the parameter value corresponding to the machining simulation result.
  • the machining command input unit 304 may input a machining command described as a set of machining processes in which machining is one or more.
  • a machining command in which machining is described as a set of one or more machining processes is a machining command described in accordance with the STEP NC data model. Details of such machining orders are given in Japanese Patent No. 6646027, in particular in paragraphs 0034 and FIG.
  • the machining simulation result evaluation unit 307 and the machining program output unit 308 perform the following processing.
  • the machining command input unit 304 inputs a machining command in which machining is described as a set of one or more machining processes
  • the machining program generation unit 305 decodes this machining command and decomposes it into machining processes. Then, the machining program generation unit 305 generates one or more machining programs having different combinations of NC functions to be used for each disassembled machining process.
  • the machining target information input to the machining target input unit 303 may describe the machining target for each machining process.
  • the processing target corresponding to the processing process is applied to each processing process. If the machining target is not described for each machining process, the same machining target is applied to all machining processes.
  • the machining simulation unit 306 performs machining simulation for each process, and the machining simulation result evaluation unit 307 evaluates the machining simulation result for each machining process.
  • the machining program output unit 308 selects a machining program that produces the most highly evaluated machining simulation result for each machining process, and combines these machining programs according to the order of the machining processes described in the machining command to perform machining. Generates the entire machining program and outputs the machining program for the entire machining process.
  • the post processor 30 includes an arithmetic processing unit (CPU) or the like. Further, the post processor 30 is temporarily used by an auxiliary storage device such as an HDD (Hard Disk Drive) or an arithmetic processing device that stores various control programs such as application software or an OS (Operating System) to execute the program. It also has a main storage device such as a RAM (Random Access Memory) for storing the data required for the device.
  • auxiliary storage device such as an HDD (Hard Disk Drive) or an arithmetic processing device that stores various control programs such as application software or an OS (Operating System) to execute the program. It also has a main storage device such as a RAM (Random Access Memory) for storing the data required for the device.
  • RAM Random Access Memory
  • the arithmetic processing device reads the application software and the OS from the auxiliary storage device, and while deploying the read application software or the OS to the main storage device, performs arithmetic processing based on these application software or the OS. .. Further, based on the calculation result, various hardware included in each device is controlled. Thereby, the functional block of this embodiment is realized. That is, this embodiment can be realized by the cooperation of hardware and software.
  • FIG. 7 is a flowchart showing the operation of the post processor 30.
  • the CNC information acquisition unit 301 acquires CNC information
  • the usable function determination unit 302 determines the usable function of the CNC device based on the CNC information acquired by the CNC information acquisition unit 301.
  • step S12 the machining program generation unit 305 generates a machining program by selecting a function from the functions determined to be usable by the available function determination unit 302 or without selecting a function based on the machining command.
  • step S13 the machining result is simulated based on each machining program generated by the machining program generation unit 305, and the machining simulation result information is output.
  • the machining simulation result information includes, for example, information regarding the shape after machining and / or information regarding the machining time.
  • step S14 the machining simulation result evaluation unit 307 evaluates and scores the machining simulation result based on the machining target output from the machining target input unit 303.
  • step S15 the machining simulation result evaluation unit 307 determines whether or not the machining simulation result satisfies the machining target. If none of the machining simulation results satisfy the machining target, the machining simulation result evaluation unit 307 outputs that there is no machining program that satisfies the target together with the evaluation result, and ends the process.
  • step S16 when the machining simulation result satisfies the machining target, the machining program output unit 308 uses the machining program that gives the machining simulation result with the highest score in the machining simulation result evaluation unit 307 for machining. As a processing program, it is output to the CNC device and the processing is completed.
  • the post processor can refer to the information of the CNC device, select the function to be used based on the information of the CNC device, and generate the machining program.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • FIG. 8 is a block diagram showing a configuration example of the post processor according to the second embodiment of the present disclosure.
  • the post processor 30A of the present embodiment has a CNC parameter information output unit 309, an external storage device 310, a target shape information input unit 311 and a material shape information with respect to the post processor 30 shown in FIG.
  • An input unit 312 and a tool shape information input unit 313 have been added.
  • the same components as those of the post processor 30 shown in FIG. 2 are designated by the same reference numerals, and the description thereof will be omitted.
  • the configuration of the CNC machining system in the present embodiment is the same as the configuration of the CNC machining system shown in FIG. 1 except that the post processor 30 shown in FIG. 1 is replaced with the post processor 30A.
  • the machining program output unit 308 uses the value of the parameter of the CNC device 410 as the machining simulation result in the machining program that outputs the machining simulation result with the highest score in the machining simulation result evaluation unit 307.
  • a command to change to the value of the parameter of the associated CNC device 410 was inserted and output.
  • the CNC parameter information output unit 309 that outputs the parameter information of the CNC device 410 is provided instead of inserting the command to change the value of the parameter of the CNC device 410 into the machining program.
  • the CNC parameter information output unit 309 is a CNC consisting of a set of parameter numbers and parameter values of the CNC device 410 used when the machining simulation result with the highest score is output by the machining simulation result evaluation unit 307.
  • the parameter information of the device 410 is output to the CNC device 410.
  • the machining program output unit 308 outputs only the machining program that gives the machining simulation result with the highest score in the machining simulation result evaluation unit 307.
  • the parameter information of the CNC device 410 is read before starting the machining. Change all CNC parameters at once.
  • Table 5 shows an example of the parameter information of the CNC device 410. In Table 5, A indicates an axis number, A1 indicates an X axis, A2 indicates a Y axis, and A3 indicates a Z axis. Further, in Table 5, P indicates a parameter value.
  • the CNC parameter information output unit 309 outputs the parameter information of the CNC device 410 separately from the machining program and changes the machine parameter using this, only the parameter information of the CNC device 410 is changed when the machine setting is changed.
  • This method is suitable when it is desired to change only the machine settings without changing the machining programs, or when it is desired to operate a plurality of machining programs with the same machine settings.
  • the parameters are set collectively before machining, the machine settings cannot be changed during machining.
  • the parameter information of the CNC device 410 may not be output to the CNC device 410, but may be output as a file to the external storage device 310. Further, the machining program may be output as a file to the external storage device 310 instead of being output to the CNC device 410.
  • Machining accuracy is included in the machining target input from the machining target input unit 303, and the machining accuracy may be specified by a tolerance with the target shape. Then, the machining simulation result evaluation unit 307 may need to compare the post-machining shape predicted by the machining simulation unit 306 with the target shape. In such a case, the target shape information input unit 311 may be provided. The target shape information input unit 311 outputs the processed target shape information input by the user to the processing simulation result evaluation unit 307.
  • the target shape information is, for example, CAD data.
  • the CAD data is input from the CAD device 10 shown in FIG.
  • Any data other than CAD data may be used as long as the target shape after processing can be expressed three-dimensionally.
  • Examples of data that can express a three-dimensional shape other than CAD data include CSG (Constructive Solid Geometry) data, polyhedron element model data, voxel data, polygon mesh, and point cloud data.
  • CSG data is information that expresses a three-dimensional shape as a set of basic shapes.
  • CSG data includes, for example, the type of basic shape (plane, sphere, cube, cylinder, etc.) and its dimensions (plane contour, sphere diameter, cube length and width, cylinder diameter and length, etc.). It is information on the position and posture and the degree of overlap (addition, difference, common part, etc.).
  • the polyhedral element model data is information on the target shape expressed as a set of polyhedra.
  • Voxel data is information on a target shape expressed as a set of cubes.
  • a polygon mesh is surface information of a target shape expressed as a set of polygons.
  • the point cloud data is surface information of the target shape expressed by the point cloud.
  • the material shape information input unit 312 When the material shape information input unit 312 requires information on the material shape before machining in addition to the machining program in the simulation machining of the machining simulation unit 306, the material shape information input unit 312 performs machining simulation on the information on the material shape before machining entered by the user. Output to unit 306.
  • the material shape before machining is information about the three-dimensional shape of the work piece before executing the machining program.
  • the material shape before processing is a rectangular parallelepiped.
  • the material shape before processing is the shape of the casting.
  • some kind of processing is performed in the previous process such as performing the finishing process after the rough processing, the material shape before the processing becomes the shape information of the work piece at the time when the immediately preceding process is completed.
  • CAD data can be used as in the target shape information, but any format can be used as long as it can express a three-dimensional shape.
  • the machining simulation unit 306 calculates the area to pass when the tool moves according to the machining program. As shown in FIG. 9, since this region is a portion that is scraped off by the tool during machining, the shape of the material before machining output from the material shape information input unit 312 excluding the region through which the tool passes is the shape after machining. It becomes.
  • FIG. 9 is a diagram showing the operation of the machining simulation unit for obtaining the shape after machining using the shape of the material before machining.
  • the tool shape information input unit 313 inputs the tool shape information input by the user when the tool shape information of the tool used for machining is required in addition to the machining program in the simulation machining of the machining simulation unit 306. Output to 306.
  • the target shape information, the material shape information, and the tool shape information are input to the post processor 30A by the user separately from the main processor 20 or the CAD device 10, and the target shape information and the material shape are input to the CL data output by the main processor 20.
  • Information and tool shape information may be included. For example, by using the STEP NC standard defined by ISO-14649, it is possible to include all the above information in the CL data output by the main processor 20. When such a machining command is input, it is not necessary to separately input the target shape information, the material shape information, and the tool shape information. If the CL data does not include the target shape information, material shape information, and tool shape information, and the CL data contains only the tool movement path information, the target shape information, material shape information, and tool shape information are separately provided. To the post processor.
  • one or more components are selected from among the CNC parameter information output unit 309, the external storage device 310, the target shape information input unit 311, the material shape information input unit 312, and the tool shape information input unit 313.
  • the post processor 30A shown in FIG. 8 has a configuration in which only the CNC parameter information output unit 309 is added to the post processor 30 shown in FIG. 1, and the CNC parameter information output unit 309 and the external storage device 310 are added. It is possible to have a configuration in which only the target shape information input unit 311 is added, a configuration in which the material shape information input unit 312 or the tool shape information input unit 313 is added, and the like.
  • each embodiment of the present invention has been described above, all or part of the functions of the post processors 30 and 30A can be realized by software.
  • the function of the post processor 30.30A can be realized by hardware or a combination of software and hardware.
  • what is realized by software means that it is realized by a computer reading and executing a program.
  • a part or all of each component of the post-processors 30 and 30A may be, for example, an LSI (Large Scale Integrated circuit), an ASIC (Application Specific Integrated Circuit), or a gate array.
  • FPGA Field Programmable Gate Array
  • IC integrated circuit
  • a post-processor application stored in a first storage unit such as a hard disk device and a ROM that describes the operation as shown in FIG. 7 for operating the post-processors 30 and 30A.
  • the information necessary for the calculation is stored in the second storage unit such as the RAM, and the CPU executes the processing, so that the operations of the post processors 30 and 30A can be executed by the program.
  • the post-processor application can read the program from a computer-readable medium on which the program is recorded into a first storage unit such as a hard disk.
  • Computer-readable media include various types of tangible storage media. Computer-readable media include non-transitory computer readable medium.
  • Examples of computer-readable media include magnetic recording media (eg, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, semiconductors.
  • a memory for example, a mask ROM, a PROM (Programmable ROM), an EPROM (Erasable PROM), a flash ROM, and a RAM (random access memory) is included.
  • the post processor, the machining program generation method, the CNC machining system, and the machining program generation program according to the present disclosure can take various embodiments having the following configurations, including the above-described embodiment.
  • a machining command input unit for example, a machining command input unit 304) into which a machine-independent machining command is input
  • a CNC information acquisition unit for example, CNC information acquisition unit 301 that communicates with the CNC device and acquires optional information of the CNC device or information regarding the specifications of the CNC device.
  • a machining target input unit for example, a machining target input unit 303) for inputting machining target information regarding a machining target, and a machining target input unit 303.
  • Usable function determination unit for example, available function determination unit 302 that determines the functions that can be used for machining based on the option information of the CNC device or the information related to the specifications of the CNC device acquired by the CNC information acquisition unit.
  • a machining program generation unit (for example,) that generates at least one machining program that uses or does not use at least one function determined to be usable by the available function determination unit based on the machining command.
  • Machining program generator 305) and A machining simulation unit (for example, a machining simulation unit 306) that simulates a machining result based on a machining program generated by the machining program generation unit, and a machining simulation unit.
  • a machining simulation result evaluation unit (for example, a machining simulation result evaluation unit 307) that evaluates a machining simulation result output from the machining simulation unit according to the machining target.
  • a machining program output unit (for example, a machining program output unit 308) that selects and outputs a machining program to be used for machining based on the evaluation of the machining simulation result, and a machining program output unit 308. including, Post processor.
  • the post processor can select the function to be used based on the information of the CNC device and generate the machining program by referring to the information of the CNC device.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • the CNC information acquisition unit acquires the parameter information of the CNC device and obtains the parameter information.
  • the machining program generation unit generates the machining program including a command for changing the value of one or more parameters of the CNC apparatus included in the parameter information of the CNC apparatus.
  • the post processor according to (1).
  • the CNC information acquisition unit acquires the parameter information of the CNC device and obtains the parameter information.
  • the machining simulation unit performs machining simulation under a plurality of conditions in which one or more parameters of the CNC device included in the parameter information of the CNC device are different.
  • the machining program output unit selects a machining program to be used for machining based on the evaluation of the machining simulation result, inserts a command to change the value of one or more parameters of the CNC device into the machining program, and outputs the command. do,
  • the post processor according to (1).
  • the CNC information acquisition unit acquires the parameter information of the CNC device and obtains the parameter information.
  • the machining simulation unit performs machining simulation under a plurality of conditions in which one or more parameters of the CNC device included in the parameter information of the CNC device are different.
  • a CNC parameter information output unit (for example, CNC parameter information output) that outputs CNC parameter information consisting of a set of one or more parameter numbers of the CNC device and the value of the parameter based on the evaluation of the machining simulation result.
  • a part 309 is provided.
  • the post processor according to (1).
  • the machining simulation result evaluation unit evaluates the machining simulation result based on the machining simulation result and the target shape information.
  • the post processor according to any one of (1) to (4).
  • a machining command described as a set of machining processes in which machining is one or more is input to the machining command input unit.
  • the machining target input unit different machining targets are input for each machining process.
  • the machining program generation unit generates a machining program for each machining process.
  • the post processor according to any one of (1) to (5).
  • the post processor according to any one of (1) to (6).
  • a material shape information input unit for inputting information on the material shape before machining or a tool shape information input section for inputting tool shape information of the tool used for machining is provided.
  • the post processor according to any one of (1) to (7), wherein the machining simulation unit performs machining simulation using information on the material shape before machining or information on the tool shape.
  • a machine tool having the post processor according to any one of (1) to (6) and a CNC device connected to the post processor, and based on a machining program output from the post processor.
  • CNC machining machines that perform CNC machining (for example, CNC machine tools 40) and CNC machining system equipped with.
  • the post processor can refer to the information of the CNC device, select the function to be used based on the information of the CNC device, and generate the machining program.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • a machine-independent machining command is input, Communicate with the CNC device to obtain optional information on the CNC device or information on the specifications of the CNC device.
  • Processing target information related to processing target is input, The functions that can be used for machining are determined based on the acquired option information of the CNC device or the information regarding the specifications of the CNC device.
  • Based on the machining command generate at least one machining program that uses or does not use at least one function determined to be usable. Machining simulation of machining results based on the generated machining program, The result of the machining simulation is evaluated according to the machining target. Based on the evaluation of the result of the machining simulation, the machining program used for machining is selected and output.
  • Post-processor machining program generation method is used to generate Post-processor machining program generation method.
  • the post processor can refer to the information of the CNC device to select the function to be used based on the information of the CNC device and generate the machining program.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • (11) For a computer as a post processor The process of communicating with the CNC device and acquiring the option information of the CNC device or the information regarding the specifications of the CNC device. The process of determining the functions that can be used for machining based on the acquired option information of the CNC device or the information related to the specifications of the CNC device, and A process of generating at least one machining program that uses or does not use at least one function determined to be usable based on a machine-independent machining command. Processing that simulates machining results based on the generated machining program, and Processing to evaluate the result of machining simulation according to the input machining target, Based on the evaluation of the result of the machining simulation, the process of selecting and outputting the machining program used for machining, and the process of selecting and outputting. A program for generating a machining program to execute.
  • the post processor can refer to the information of the CNC device to select the function to be used based on the information of the CNC device and generate the machining program.
  • the post processor predicts the machining result with the machining simulator, so that the optimum machining program for the machining target can be output.
  • CAD device 20 Main processor 30, 30A Post processor 40 CNC machine tool 301 CNC information acquisition unit 302 Usable function judgment unit 303 Machining target input unit 304 Machining command input unit 305 Machining program generation unit 306 Machining simulation 307 Machining simulation result evaluation unit 308 Machining program output unit 309 CNC parameter information output unit 310 External storage device 311 Target shape information input unit 312 Material shape information input unit 313 Tool shape information input unit 410 CNC device 411 Program analysis unit 412 Command output unit 413 Storage unit 420 Motor control Equipment 421 Spindle motor control unit 422 Feed shaft motor control unit 431 Spindle shaft motor 432 Feed shaft motor

Abstract

CNC装置の情報に基づき使用機能を選択して加工プログラムを生成する。 ポストプロセッサが、加工指令が入力される加工指令入力部と、CNC装置のオプション情報又は仕様に関する情報を取得するCNC情報取得部と、加工目標情報が入力される加工目標入力部と、オプション情報又は仕様に関する情報に基づいて加工に使用可能な機能を判断する使用可能機能判断部と、加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は機能を使用しない加工プログラムを少なくとも一つ生成する加工プログラム生成部と、加工プログラムに基づき加工結果をシミュレートする加工シミュレーション部と、加工目標に応じて、加工シミュレーション結果を評価する加工シミュレーション結果評価部と、加工シミュレーション結果の評価に基づいて、加工プログラムを選択し出力する加工プログラム出力部と、を含む。

Description

ポストプロセッサ、加工プログラム生成方法、CNC加工システム及び加工プログラム生成用プログラム
 本発明は、ポストプロセッサ、加工プログラム作成方法、CNC加工システム及び加工プログラム生成用プログラムに関する。
 コンピュータ数値制御装置(CNC装置)により制御され、工具もしくは加工物(ワーク)を作製するためのテーブルを動かしワークを作製する工作機械において、機械の動作は加工プログラム(Gコード等)で与えられる。
 しかし、加工プログラムは機械メーカ、又は機械のオプションにより異なっているため、CAM(Computer Aided Manufacturing)装置は機械に依存しない加工指令であるCL(Cutter location)データを出力し、CLデータはポストプロセッサにより個々の機械に応じた加工プログラムに変換される。
 そのため、CNCの機能を活用した加工プログラムが生成できるかどうかは、ポストプロセッサの性能に依存する。
 CNC装置が、仕上削りおよび荒削りのような特定の実行すべき加工工程を工作機械に実行させるために、CNC装置が制御サブプログラムを呼び出して使用する方法が特許文献1に記載されている。
 具体的には、特許文献1には、制御装置(CNC装置となる)において特定の実行すべき加工工程のために制御サブプログラムを指定する使用可能性情報が読み込まれることが記載されている。そして、特許文献1には、使用可能な制御サブプログラムおよび運動情報に基づいて、実行すべき加工工程のために当該加工工程に付属する制御サブプログラムが使用可能である場合に、当該加工工程に付属する制御サブプログラムの呼出しのための制御サブプログラム呼出し要求が制御命令として発生させられることが記載されている。
 また、部分プログラムのシミュレーション時に使用された工作機械の構成と実際の加工プロセスの際の実際の工作機械の構成との不一致に起因する加工プロセス時の誤りを回避する方法が特許文献2に記載されている。
 具体的には、特許文献2には、工作機械の加工プロセスが部分プログラムにより制御可能であり、工作機械の現在の構成が求められ、現在の構成と、部分プログラム内に格納されている工作機械のシミュレーション構成とが比較され、現在の構成とシミュレーション構成との不一致時に警報が発生されることが記載されている。
特開2010-123122号公報 特開2009-123209号公報
 現在のポストプロセッサは、CNC装置と連携しておらず、CNC装置のアップデート又はオプションの追加を行った場合は、CNC装置とは別にポストプロセッサを更新しなければ追加された機能を利用することが出来ない。
 また、ユーザが、CNC装置の機能を把握しておらず、有用な機能が選択されない場合がある。
 よって、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することが望まれる。さらに、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することも望まれる。
 (1) 本開示の第1の態様は、機械に依存しない加工指令が入力される加工指令入力部と、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得するCNC情報取得部と、
 加工目標に関する加工目標情報が入力される加工目標入力部と、
 前記CNC情報取得部で取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する、使用可能機能判断部と、
 前記加工指令に基づいて、前記使用可能機能判断部で使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する、加工プログラム生成部と、
 前記加工プログラム生成部で生成された加工プログラムに基づき加工結果をシミュレートする加工シミュレーション部と、
 前記加工目標に応じて、前記加工シミュレーション部から出力される加工シミュレーション結果を評価する加工シミュレーション結果評価部と、
 前記加工シミュレーション結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する加工プログラム出力部と、
を含む、
 ポストプロセッサである。
 (2) 本開示の第2の態様は、上記(1)に記載のポストプロセッサと、該ポストプロセッサと接続されるCNC装置を有し、該ポストプロセッサから出力された加工プログラムに基づいて加工物のCNC機械加工を行うCNC加工機械と、
を備えたCNC加工システムである。
 (3) 本開示の第3の態様は、機械に依存しない加工指令が入力され、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得し、
 加工目標に関する加工目標情報が入力され、
 取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断し、
 前記加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成し、
 生成された加工プログラムに基づき加工結果を加工シミュレーションし、
 前記加工目標に応じて、加工シミュレーションの結果を評価し、
 前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する、
 ポストプロセッサの加工プログラム生成方法である。
 (4) 本開示の第4の態様は、ポストプロセッサとしてのコンピュータに、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得する処理と、
 取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する処理と、
 機械に依存しない加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する処理と、
 生成された加工プログラムに基づき加工結果を加工シミュレーションする処理と、
 入力された加工目標に応じて、加工シミュレーションの結果を評価する処理と、
 前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する処理と、
 を実行させる加工プログラム生成用プログラムである。
 本開示の各態様によれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。
 また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
本開示の第1実施形態のポストプロセッサを含むCNC加工システムの一構成例を示すブロック図である。 本開示の第1実施形態のポストプロセッサの一構成例を示すブロック図である。 CNC工作機械のCNC機能に関する情報の一例を示す図である。 直方体上に円筒を設けたワークを示す斜視図である。 目標形状の特定の要素間の目標寸法と幾何公差を説明するためのワークを示す図である。 指令経路に対して、忠実に動く場合の工具経路と、指令経路に対して、滑らかになるようにスムージングした工具経路とを示す図である。 ポストプロセッサの動作を示すフローチャートである。 本開示の第2実施形態のポストプロセッサの一構成例を示すブロック図である。 加工前の素材形状を用いて加工後の形状を求める加工シミュレーション部の動作を示す図である。
 以下、本発明の実施形態について図面を用いて詳細について説明する。
 (第1実施形態)
 まず、本開示の第1実施形態のポストプロセッサを含むCNC(Computerized Numerical Control)加工システムの構成について説明する。
 図1は、本開示の第1実施形態のポストプロセッサを含むCNC加工システムの一構成例を示すブロック図である。図2は本開示の第1実施形態のポストプロセッサの一構成例を示すブロック図である。
 図1に示すように、CNC加工システムは、CAD (computer aided design)装置10、メインプロセッサ20、ポストプロセッサ30、及びCNC工作機械40を備えている。CNC工作機械40は、CNC装置410、モータ制御装置420、主軸モータ431及び送り軸モータ432を備えている。CNC工作機械40は、主軸モータ431及び送り軸モータ432以外にも機械加工に必要な部材を備えているが、図1では主軸モータ431及び送り軸モータ432のみを示している。
 CAD装置10はコンピュータの画面上に製図を行うCADソフトウェアを、CPU(Central Processing Unit)を用いて動作させる。ワークは2次元CAD又は3次元CADで製図が行われる。2次元CADを用いる場合には、X、Yの平面上に、加工物の正面図、上面図、側面図等を作製する。3次元CADを用いる場合には、X、Y及びZの立体空間上に、加工物の立体像を作成する。
 メインプロセッサ20は、CADデータに基づき、加工形状が得られるように工具や工作機械の動きを設定し、その動きをCL(カッターロケーション)データに変換する。
 ポストプロセッサ30は、メインプロセッサ20によって作成されたCLデータに基づいて加工プログラム(NCデータ)を生成する。ポストプロセッサ30は、CNC装置410と有線または無線により、直接もしくは間接的に通信可能なように接続され、CNC装置410の情報を参照して加工プログラムを生成する。ポストプロセッサ30の詳細な構成は後述する。
 メインプロセッサ20とポストプロセッサ30とは別に設けられても、CAM装置として一体化されて構成されてもよい。
 メインプロセッサ20とポストプロセッサ30はそれぞれ、メインプロセッサ20として動作させるメインプロセッサソフトウェアとポストプロセッサ30として動作させるポストプロセッサソフトウェアとを、コンピュータのCPUを用いて動作させて、メインプロセッサ20とポストプロセッサ30として機能させてもよい。2つのソフトウェアは同一のコンピュータで動作させても、別なコンピュータで動作させてもよい。
 なお、ポストプロセッサ30、ポストプロセッサ30とメインプロセッサ20、又はポストプロセッサ30とメインプロセッサ20とCAD装置10は、CNC工作機械40に含まれてもよい。
 CNC工作機械40は、例えば加工プログラムに基づいてCNC機械加工を行う3軸加工機である。3軸加工機は、CNC装置410が加工プログラムに基づいてモータ制御装置420を制御し、モータ制御装置420が主軸モータ431及び送り軸モータ432を駆動して機械加工を行う。CNC工作機械40は3軸加工機に限定されず、例えば5軸加工機でもよい。
 CNC装置410は、プログラム解析部411、指令出力部412、及び記憶部413を備えている。
 プログラム解析部411は、ポストプロセッサ30によって作成された加工プログラム(NCデータ)からX軸、Y軸及びZ軸の移動の指令及び主軸の回転の指令を含むブロックを逐次読みだして解析し、解析結果に基づいてX軸、Y軸及びZ軸の移動と主軸の回転を指令する指令データを作成し、指令出力部412に出力する。
 指令出力部412は、プログラム解析部411から出力された指令データに基づいて、各軸の速度を計算し、算出結果に基づくデータをモータ制御装置420の主軸モータ制御部421と、X軸、Y軸及びZ軸の3つの送り軸モータ制御部422とへ出力する。
 記憶部413は、CNC装置410のパラメータ情報、CNC装置410のオプション情報及びCNC装置410の仕様に関する情報を記憶する。記憶部413に記憶する情報はCNC装置410のパラメータ情報、オプション情報及びCNC装置410の仕様に関する情報の内の1又は2つの情報であってもよい。
 CNC装置410のパラメータ情報は、例えば、軸構成及び各軸の可動範囲に関するパラメータ、各軸の速度、加速度、及び加加速度の制御に用いる時定数等のパラメータ、並びに各軸の位置の制御に用いる許容位置偏差等のパラメータのうちの少なくとも一つのパラメータである。
 CNC装置410のオプション情報は、例えば、CNC装置410で使用可能なCNC機能に関する情報である。CNC装置410で使用可能なCNC機能に関する情報は、CNC装置410で使用可能なCNC機能の有無、及びCNC機能がある場合はCNC機能の内容を含んでいる。
 CNC装置410の仕様に関する情報は、例えば、CNC装置410のメーカ、型式に関する情報、及び/又はソフトウェアのバージョンに関する情報である。
 モータ制御装置420は、主軸モータ制御部421及び送り軸モータ制御部422を備えている。
 主軸モータ制御部421は、指令出力部412からの出力に基づいて、主軸モータ431の回転位置のフィードバック値を用いて、一般的なフィードバック制御により主軸モータ431の回転動作を制御する。
 X軸、Y軸及びZ軸の3つの送り軸モータ制御部422は、指令出力部412からの出力に基づいて、X軸、Y軸及びZ軸の3つの送り軸モータ432の送り位置のフィードバック値を用いて、3つの送り軸モータ432の送り動作を制御する。主軸モータ制御部421と、3つの送り軸モータ制御部422との内部構成は当業者によく知られているので詳細な説明及び図示を省略する。
 主軸モータ431は、ボールエンドミル等の工具を回転させる。送り軸モータ432はX軸方向、Y軸方向及びZ軸方向の3つのモータからなる。X軸方向及びY軸方向のモータは、ボールねじ等を介して、ワークを作製するための基板が載せられたテーブルをX軸方向及びY軸方向にそれぞれ直線移動させる。Z軸方向のモータは工具又はテーブルをZ軸方向に直線移動させる。なお、3軸加工機の構成は係る構成に限定されず、例えば、工具を固定し、送り軸モータ432がテーブルをX軸方向、Y軸方向及びZ軸方向に直線移動させたり、テーブルを固定し、送り軸モータ432が工具をX軸方向、Y軸方向及びZ軸方向に直線移動させたりしてもよい。X軸方向、Y軸方向及びZ軸方向のモータはリニアモータを用いてもよい。
 以上、CNC加工システムの構成について説明した。次に、ポストプロセッサ30について図2を用いて、更に詳細に説明する。
 <ポストプロセッサ30>
 図2に示すように、ポストプロセッサ30は、CNC情報取得部301、使用可能機能判断部302、加工目標入力部303、加工指令入力部304、加工プログラム生成部305、加工シミュレーション部306、加工シミュレーション結果評価部307及び加工プログラム出力部308を備えている。ポストプロセッサ30はCNC装置410に内蔵されていてもよい。
 CNC情報取得部301は、CNC装置410と通信し、記憶部413からCNC装置410のオプション情報及びCNC装置410の仕様に関する情報の少なくとも一つを取得して使用可能機能判断部302に出力する。また、CNC情報取得部301は、記憶部413からCNC装置410のパラメータを取得して、使用可能機能判断部302及び加工プログラム生成部305の一方又は両方に出力してもよい。なお、CNC装置410のオプション情報、CNC装置410の仕様に関する情報及びCNC装置410のパラメータを総称して「CNC情報」ともいう。
 使用可能機能判断部302は、CNC情報取得部301で取得した、CNC装置410のオプション情報又はCNC装置410の仕様に関する情報に基づき、CNC装置410で使用可能なCNC機能を判断して、加工プログラム生成部305に出力する。
 CNC情報取得部301が、オプション情報として、CNC装置410で使用可能なCNC機能に関する情報を取得した場合、使用可能機能判断部302は、CNC装置410で使用可能なCNC機能の有無を判断し、CNC機能がある場合はCNC機能を取り出す。取り出されるCNC機能としては、例えば、スムージング機能及び高速加工用機能がある。
 使用可能機能判断部302は、オプション情報を用いなくとも、CNC装置410の仕様に関する情報を用いてCNC装置410で使用可能なCNC機能を判断することができる。具体的には、使用可能機能判断部302は、CNC装置410の仕様に関する情報として、例えば、CNC装置410のメーカ、型式に関する情報、及び/又はソフトウェアのバージョンに関する情報を用いて、自身が記憶するCNC装置410の機能の一覧表を参照して、スムージング機能FAと高速加工用機能が、CNC装置410で使用可能なCNC機能であることを判断することができる。
 また、使用可能機能判断部302は、CNC装置410の仕様に関する情報を用いて、自身が記憶するCNC装置410の機能の一覧表を参照してCNC装置410で使える複数の機能を特定し、CNC装置410のパラメータに含まれる、CNC装置410の複数の機能がそれぞれ有効か否かを示すNCパラメータを参照してCNC装置410で使用可能なCNC機能を判断することができる。
 具体的には、使用可能機能判断部302は、CNC装置410の仕様に関する情報として、例えば、CNC装置410のメーカ、型式に関する情報、及び/又はソフトウェアのバージョンに関する情報を用いて、自身が記憶するCNC装置410の機能の一覧表を参照して、図3に示す、スムージング機能FA、スムージング機能FB、コーナー部減速機能及び高速加工用機能を、CNC装置410で使える機能として特定する。次に、使用可能機能判断部302は、CNC装置410のパラメータに含まれる、CNC装置410の機能が有効か否かを示すNCパラメータを参照して、スムージング機能FAと高速加工用機能がCNC装置410で使用可能なCNC機能であることを判断することができる。図3では、スムージング機能FAと高速加工用機能については機能が有効であることを示すパラメータがONになっており、他の機能についてはOFFになっており、使用可能機能判断部302は、スムージング機能FAと高速加工用機能をCNC装置410で使用可能なCNC機能として選択できる。
 加工目標入力部303は、ユーザが入力した、加工を行う際の加工目標を、加工プログラム生成部305及び加工シミュレーション結果評価部307に出力する。
 加工目標は、例えば、加工に要する時間、加工精度、加工品質、これらの少なくとも2つに優先度を付けて組み合わせたもの、の少なくとも1つを含むようにしてもよい。加工に要する時間は、例えば、加工時間の最短又は加工目標時間である。加工精度は、例えば、目標形状との寸法差又は目標形状との幾何公差である。加工品質は、例えば、面粗度の許容値である。
 加工目標が複数ある場合は、必ず満たさなければならない目標と、必ずしも満たさなくても良い目標とを設定しても良い。ただし、必ずしも満たさなくて良い目標の優先度は、必ず満たさなければならない目標の優先度よりも低く設定する。
 加工精度もしくは加工品質を加工目標に含める場合には、その目標が適用される目標形状上の位置も合わせて入力してもよい。
 表1は、図4に示す、直方体上に円柱を設けたワークを作製する場合における、加工目標となる加工時間、加工精度、加工品質の各値、優先度、及び加工適用箇所を示している。
Figure JPOXMLDOC01-appb-T000001
 図4は直方体上に円筒を設けたワークを示す斜視図である。図4において、ワーク50は直方体の平面PS2上に、平面PS1と円筒面CSとを有する円筒が設けられている。
 表1では、加工目標として、加工時間、加工精度及び加工品質が設定されている。また、表1では、加工時間、加工精度及び加工品質の値としてそれぞれ、最短、円筒面CSの直径D=20±0.01mm、面粗度Ra3.2未満が設定され、優先度が加工精度、加工品質、加工時間の順で設定され、加工精度、加工品質の優先度の順位の設定が必須であることが設定されている。また、表1では、加工精度が円筒面CSに、加工品質が平面PS1、平面PS2に設定されている。
 加工目標の加工精度は、例えば、以下の情報に基づいて指定することができる。
 ・目標形状の特定の要素間の目標寸法(例えば図5の面SAと面SCとの目標距離)
 ・目標形状の特定の要素間の幾何公差(例えば図5の面SBと面SDの目標平行度)
 より具体的には、図5に示すように、面SAと面SCとの距離を目標寸法LAとして、目標寸法LAと加工後寸法の寸法差を評価する場合には、面SAおよび面SCに対応する加工後形状の面SA’および面SC’を決定する。面SA’および面SC’の決定方法としては、目標形状の面SAに対して位置と向きとが最も近い加工後形状の面を面SA’とする方法がある。
 面SC’についても同様に決定することができる。図5において、面SA’と面SC’の距離を加工後寸法LA’とし、目標寸法LAと加工後寸法LA’との差を寸法差とする。
 また、面SBと面SDと平行度を幾何公差として評価する場合には、同様に面SB’と面SD’を決定し、面SB’に対する面SD’の角度を加工後の幾何公差として算出する。
 また、加工目標の加工品質については、例えば、面粗度の許容値などで指定することができる。なお、シミュレーションにより面粗度を算出する方法は、例えば、”Simulation of Surface roughness and profile in high-speed end milling”, Ki Yong Lee, Myeong Chang Kang, Yung Ho Jeong, Deuk Woo Lee, Jeong Suk Kim, Journal of Materials Processing Technology 113 (2001) 410-415に記載されているように、当業者にとって公知であり、詳細な説明は省略する。
 加工指令入力部304は、入力された、機械に依存しない加工指令を加工プログラム生成部305に出力する。ここで、機械に依存しない加工指令の例としては、CLファイル(Cutter Locationファイル)が挙げられる。図1に示す構成では、CLファイルはメインプロセッサ20から入力される。
 加工プログラム生成部305は、加工指令に基づいて一つ以上の加工プログラムを生成する。その際に、加工プログラム生成部305は、使用可能機能判断部302で使用可能と判断した少なくとも一つの機能を使用した、又は機能を使用しない加工プログラムを生成する。上記の例では、使用可能機能判断部302により使用可能と判断される機能は、スムージング機能FAと高速加工用機能であるため、使用可能機能判断部302は、次の加工プログラム(a)~(d)を生成することができる。
 (a)機能を使用しない加工プログラム
 (b)スムージング機能FAを使用した加工プログラム
 (c)高速加工用機能を使用した加工プログラム
 (d)スムージング機能FAと高速加工用機能を使用した加工プログラム
 ただし、加工プログラム生成部305は、加工プログラム(a)~(d)の全てを作成しなくともよい。加工プログラム(a)~(d)の全てではなく、いずれか1つ以上のプログラムを作成する場合として、例えば次のような場合(A)、(B)が挙げられる。
 (A)加工プログラム生成部305が、CNC装置410の仕様に関する情報を参照可能であり、併用できない機能の組み合わせが分かる場合
 例えば、加工プログラム生成部305は、スムージング機能FAと高速加工用機能が併用できないことが分かる場合、加工プログラム(d)を生成せず、加工プログラム(a)~(c)を生成するようにしてもよい。
 (B)加工プログラム生成部305がCNC装置410の仕様に関する情報および後述の加工目標情報を参照可能であり、かつ、各CNC機能の効果が予め分かる場合
 例えば、加工プログラム生成部305は、加工の目標が「加工時間最短」のみであり、高速加工用機能の効果が加工時間の短縮であることが分かっている場合、加工プログラム(c)および(d)のみを作成するようにしてもよい。
 加工プログラム生成部305は、CNC情報取得部301で取得したCNC装置410のパラメータの値を一つ以上変更する指令を含む加工プログラムを生成してもよい。例えば、加工プログラム生成部305は、加工プログラム(a)~(d)の内の2つ以上の加工プログラムにおいて、互いにCNC装置410のパラメータの値が一つ以上異なるように変更する指令を含めることができる。
 ここで、CNC装置410のパラメータにおいて、当該パラメータの値を指令によって変更できるパラメータとしては、例えば、以下のものがある。
 ・各軸の速度、加速度、加加速度の制御に用いる時定数等のパラメータ
 ・各軸の位置の制御に用いる許容位置偏差等のパラメータ
 上記のパラメータの値を適宜設定することで、加工時に機械が以下のような特性を満たすように決めることができる。
 ・速度を重視する場合、加工速度が高速となるようなパラメータの値を設定することができる。
 ・精度を重視する場合、指令された経路からの誤差が小さくなるようなパラメータの値を設定することができる。
 ・滑らかさを重視する場合、各軸の加速度もしくは加加速度が小さくなるようなパラメータの値を設定することができる。
 以下、加工プログラム生成部305が、パラメータの値を決める具体的な方法について例を挙げて説明する。
 CNC装置410は、概ね加工プログラムに指令された工具経路、指令速度の通りに工具を動かそうとするが、実際の工具経路と、加工プログラムで指令された工具経路と、が、次の要因(a)、(b)が発生するために、必ずしも一致しない。
 (a)指令速度が速い場合、又は指令された経路のカーブが急な場合等に、指令速度で指令された経路を通るときに、カーブでの加速度が大きくなり過ぎて、例えば軸を駆動するモータの性能を超えることがある。さらに、このような場合、例えば振動が発生することがある。
 (b)一般に工具経路は折れ線で記述されるため、例えば目的の形状が滑らかな曲面であっても、指令経路は多角形となる。そのため、加工結果が滑らかな曲線になるように、あえて指令経路から外れる場合がある。
 要因(a)への対応として、加工プログラム生成部305は、上記パラメータの値を変更することで機械が(1a)、(2b)もしくはその中間的な動作をするように決めることができる。
 (1a:速度重視) 指令された経路から外れたり、振動が発生しても良いのでなるべく速度を落とさないようにパラメータの値を設定することができる。そうすることで、加工時間を短くすることが可能となる。反面、満足な寸法精度が出ないケース、また加工面がガタガタになるケースが起こり得る。
 (2a:精度重視) 速度を落としても良いので、指令経路通りに、振動も起きないように進むようにパラメータの値を設定することができる。そうすることで、寸法精度が良く加工面も綺麗に加工することが可能となる。反面、加工時間が長くなるケースが起こり得る。
 要因(b)への対応としては、加工プログラム生成部305は、上記パラメータの値を変更することで機械が(1b)、(2b)もしくはその中間的な動作をするように決めることができる。
 (1b:指令経路重視) 折れ線の角が出るように、指令経路通りに動くようにパラメータの値を設定することができる。反面、加工面がカクカクになるケースが起こり得る。
 (2b:滑らかさ重視) 工具経路が滑らかになるようにパラメータの値を設定することで、スムージングすることが可能となる。反面、寸法精度が悪くなるケースが起こり得る。
 図6は、指令経路に対して、忠実に動く場合の工具経路と、指令経路に対して、滑らかになるようにスムージングした工具経路とを示す図である。指令経路に対して、忠実に動く場合の工具経路では、カクカクの面(角張った面)になるが、寸法Lの精度はよい。一方、滑らかになるようにスムージングした工具経路では、滑らかな面になるが、寸法Lの精度はよくない。
 以上のように、機械が、上述した、速度重視、精度重視、又は滑らかさ重視の特性を満たすためには、加工プログラム生成部305は上記動作(1a)、(2a)と、上記動作(1b)、(2b)とを、表2のように組み合わせてパラメータの値を決めるようにしてもよい。
Figure JPOXMLDOC01-appb-T000002
 ここで、加工プログラム内におけるパラメータを変更する指令の記載例について簡単に説明する。
 加工プログラム内におけるパラメータの値を変更する指令については、表3に示すように、個々のパラメータに値を設定する指令と、表4に示すように、動作に関連するパラメータをまとめて予め登録した値に変更する指令と、の2種類の方法がある。
Figure JPOXMLDOC01-appb-T000003
 表3において、No.1322のパラメータは軸ごとに異なる値を設定でき、変更する軸の番号をPで指定する。Pは軸を示し、例えばP1はX軸、P2は軸、P3はZ軸を示す。
Figure JPOXMLDOC01-appb-T000004
 上記のように加工プログラム内において、パラメータの値を変更する指令を挿入する方法は、プログラムの途中で機械の動作を変更することが可能となる利点がある。従って、加工プログラムに応じて機械設定を変える場合又は、荒加工と仕上げ加工のように一連の加工中に機械設定を変更させる必要がある場合には、この方法が適している。
 ただし、機械設定を修正する場合は該当する命令を全て書き換える必要がある。特に、複数のプログラムを同一の機械設定で加工したい場合、全てのプログラムの指令を書き換える必要が生じる。
 加工シミュレーション部306は、加工プログラム生成部305で生成された各加工プログラムに基づき、加工結果をシミュレーションし、加工シミュレーション結果情報を出力する。
 加工シミュレーション結果情報は、例えば、加工後の形状に関する情報、及び/又は加工時間に関する情報を含む。
 加工プログラムに基づき、加工結果をシミュレーションする技術は、例えば、特許第5149421号に記載されるように、既知の技術であるので、詳細な説明を省略する。
 なお、加工シミュレーションにおいて、CNC装置410のパラメータの情報を利用する場合は、加工シミュレーション部306は既に説明したCNC装置410のパラメータの情報を参照するようにしてもよい。
 加工プログラム生成部305が、CNC装置410のパラメータの値を一つ以上変更する指令を含む加工プログラムを生成する場合、加工シミュレーション部306は、加工プログラム生成部305で生成された少なくとも一つの加工プログラムについて、CNC装置410のパラメータの値が異なる2つ以上の条件で加工シミュレーションを行うことができる。具体的には、加工プログラム生成部305が、各軸の速度、加速度、又は加加速度の制御に用いる時定数等のパラメータについて、異なる2つ以上の条件を設定した場合、加工シミュレーション部306はそれぞれの条件について加工シミュレーションを行う。
 こうすることで、加工シミュレーション部306は、加工シミュレーションに用いたCNC装置410のパラメータの値毎に、当該パラメータの値を適用したシミュレーション結果を紐づけて出力することができる。
 加工シミュレーション結果評価部307は、加工シミュレーション部306から出力される加工シミュレーション結果を、加工目標入力部303から出力される加工目標に基づいて評価し、採点する。
 具体的には、加工目標が「加工時間最短」であれば、加工シミュレーション結果に対して、加工時間が短い順に高い得点が与えられる。
 なお、加工の目標が、複数の目標の組み合わせで与えられた場合は、優先度の高い目標を満たすものほど高い得点が与えられる。
 図4及び表1に示した例では、まず円筒面CSの精度が優先度第1位の目標なので、円筒面CSの直径Dが20±0.01mmを満たす加工シミュレーション結果が選別される。ここで、目標を満たす結果が無かった場合は、円筒面CSの直径Dが最も目標に近い結果に最高得点が与えられ評価は終了する。
 続いて、選別された加工シミュレーション結果の中から、優先度第2位の平面PS1,PS2の面粗度Ra3.2未満を満たす結果が選別される。ここでも、目標を満たす結果が無ければ、目標に最も近い結果に最高得点が与えられ、評価は終了する。
 最後に、選別された結果の中から、加工時間の短い順に得点が与えられる。
 加工シミュレーション結果の中に、必ず満たすべき目標をすべて満たすものが無かった場合は、加工シミュレーション結果評価部は、目標を満たす加工プログラムが無いことを評価結果と合わせて出力するようにしてもよい。
 加工プログラム出力部308は、加工シミュレーション結果評価部307で最も高い得点を付けられた加工シミュレーション結果を出した加工プログラムを、加工に使用する加工プログラムとして、CNC装置410に出力する。CNC装置410は加工プログラムをDNC(直接数値制御)運転に使用する。
 また、加工シミュレーションに用いたCNC装置410のパラメータの値毎に、当該パラメータの値を適用した加工プログラムをシミュレーションした場合、加工プログラム出力部308は、加工シミュレーション結果評価部307により最も高い得点を付けられた加工シミュレーション結果に対応する、パラメータの値に紐づけられた加工プログラムに、CNC装置410のパラメータの値を、当該パラメータの値に変更する指令を挿入して、出力してもよい。
 以上説明した実施形態において、加工指令入力部304は、加工が1つ以上の加工工程の集合として記述された加工指令を入力としてもよい。加工が一つ以上の加工工程の集合として記述された加工指令の例としてはSTEP NCデータモデルに則って記載された加工指令がある。このような加工指令の詳細は、特許第6646027号、特に、段落0034及び図4に記載されている。
 加工指令入力部304に、加工が1つ以上の加工工程の集合として記述された加工指令が入力された場合、加工目標入力部303、加工指令入力部304、加工プログラム生成部305、加工シミュレーション部306、加工シミュレーション結果評価部307及び加工プログラム出力部308は次の処理を行う。
 加工指令入力部304が、加工が1つ以上の加工工程の集合として記述された加工指令を入力とした場合、加工プログラム生成部305は、この加工指令を解読し、加工工程に分解する。そして、加工プログラム生成部305は、分解された個々の加工工程につき、使用するNC機能の組み合わせが異なる1つ以上の加工プログラムを生成する。
 加工目標入力部303に入力される加工目標情報には、加工工程ごとの加工目標が記載されていてもよい。この場合、各加工工程に、その加工工程に対応する加工目標が適用される。加工目標が加工工程ごとに記載されていない場合は、全加工工程に同一の加工目標が適用される。
 加工シミュレーション部306は各工程について加工シミュレーションを行い、加工シミュレーション結果評価部307では、各加工工程について加工シミュレーション結果の評価を行う。
 加工プログラム出力部308では、加工工程ごとに最も評価の高い加工シミュレーション結果を出した加工プログラムを選択し、それらの加工プログラムを、加工指令に記載された加工工程の順序に従い結合することで、加工全体の加工プログラムを生成し、加工工程全体の加工プログラムを出力する。
 以上、ポストプロセッサ30に含まれる機能ブロックについて説明した。
 これらの機能ブロックを実現するために、ポストプロセッサ30は、CPU(Central Processing Unit)等の演算処理装置を備える。また、ポストプロセッサ30は、アプリケーションソフトウェア又はOS(Operating System)等の各種の制御用プログラムを格納したHDD(Hard Disk Drive)等の補助記憶装置又は、演算処理装置がプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶装置も備える。
 そして、ポストプロセッサ30において、演算処理装置が補助記憶装置からアプリケーションソフトウェアやOSを読み込み、読み込んだアプリケーションソフトウェア又はOSを主記憶装置に展開させながら、これらのアプリケーションソフトウェア又はOSに基づいた演算処理を行なう。また、この演算結果に基づいて、各装置が備える各種のハードウェアを制御する。これにより、本実施形態の機能ブロックは実現される。つまり、本実施形態は、ハードウェアとソフトウェアが協働することにより実現することができる。
 次に、ポストプロセッサ30の動作についてフローチャートを用いて説明する。図7はポストプロセッサ30の動作を示すフローチャートである。
 ステップS11において、CNC情報取得部301は、CNC情報を取得し、使用可能機能判断部302は、CNC情報取得部301が取得したCNC情報に基づいてCNC装置の使用可能機能を判断する。
 ステップS12において、加工プログラム生成部305は、加工指令に基づいて、使用可能機能判断部302で使用可能と判断した機能の中から機能を選択し又は機能を選択しないで加工プログラムを生成する。
 ステップS13において、加工プログラム生成部305で生成された各加工プログラムに基づき、加工結果をシミュレーションし、加工シミュレーション結果情報を出力する。加工シミュレーション結果情報は、例えば、加工後の形状に関する情報、及び/又は加工時間に関する情報を含む。
 ステップS14において、加工シミュレーション結果評価部307は、加工目標入力部303から出力される加工目標に基づき、加工シミュレーション結果を評価し、採点する。
 ステップS15において、加工シミュレーション結果評価部307は、加工シミュレーション結果が加工目標を満たすかどうかを判断する。加工シミュレーション結果の中に、加工目標を満たすものが無かった場合は、加工シミュレーション結果評価部307は、目標を満たす加工プログラムが無いことを評価結果と合わせて出力し、処理を終了する。
 ステップS16において、加工シミュレーション結果が加工目標を満たす場合は、加工プログラム出力部308は、加工シミュレーション結果評価部307で最も高い得点を付けられた加工シミュレーション結果を出した加工プログラムを、加工に使用する加工プログラムとして、CNC装置に出力し、処理を終了する。
 以上説明した第1実施態様によれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
 (第2実施形態)
 図8は本開示の第2実施形態のポストプロセッサの一構成例を示すブロック図である。図8に示すように、本実施形態のポストプロセッサ30Aは、図2に示したポストプロセッサ30に対して、CNCパラメータ情報出力部309、外部記憶装置310、目標形状情報入力部311、素材形状情報入力部312、及び工具形状情報入力部313が加えられている。図2に示したポストプロセッサ30と同一構成部材については同一符号を付して説明を省略する。
 本実施形態における、CNC加工システムの構成は、図1に示したポストプロセッサ30がポストプロセッサ30Aに置き換えられる点を除いて図1に示したCNC加工システムの構成と同じである。
 第1実施形態では、加工プログラム出力部308が、加工シミュレーション結果評価部307で最も高い得点を付けられた加工シミュレーション結果を出した加工プログラムに、CNC装置410のパラメータの値を、加工シミュレーション結果に紐づけられたCNC装置410のパラメータの値に変更する指令を挿入して、出力していた。
 本実施形態では、加工プログラムにCNC装置410のパラメータの値に変更する指令を挿入するのではなく、CNC装置410のパラメータ情報を出力するCNCパラメータ情報出力部309を設ける。CNCパラメータ情報出力部309は、加工シミュレーション結果評価部307で最も高い得点を付けられた加工シミュレーション結果を出した際に使用されたCNC装置410のパラメータの番号とパラメータの値との組からなるCNC装置410のパラメータ情報をCNC装置410に出力する。加工プログラム出力部308は加工シミュレーション結果評価部307で最も高い得点を付けられた加工シミュレーション結果を出した加工プログラムのみを出力する。
 CNCパラメータ情報出力部309によって、加工プログラムとは別にCNC装置410のパラメータ情報を出力し、これを用いて機械のパラメータを変更する方法では、加工を始める前にCNC装置410のパラメータ情報を読み込み、CNCの全パラメータを一括で変更する。表5にCNC装置410のパラメータ情報の一例を示す。
Figure JPOXMLDOC01-appb-T000005
 表5において、Aは軸番号を示し、A1はX軸、A2はY軸、A3はZ軸を示す。また、表5において、Pはパラメータの値を示す。
 CNCパラメータ情報出力部309が、加工プログラムとは別にCNC装置410のパラメータ情報を出力し、これを用いて機械のパラメータを変更する方法では、機械設定を変更する場合にCNC装置410のパラメータ情報のみを修正すれば良く、個々のプログラムを修正する必要がないという利点がある。この方法は、加工プログラムを変更せず機械設定のみ変えたい場合や、複数の加工プログラムを同じ機械設定で動作させたい場合に適している。ただし、加工前にパラメータを一括で設定するため、加工の途中で機械の設定を変えることはできない。
 CNC装置410のパラメータ情報はCNC装置410に出力されるのではなく、外部記憶装置310にファイルとして出力されても良い。また、加工プログラムはCNC装置410に出力されるのではなく、外部記憶装置310にファイルとして出力されても良い。
 加工目標入力部303から入力される加工目標に加工精度が含まれており、加工精度が、目標形状との許容誤差で指定されている場合がある。そして、加工シミュレーション結果評価部307は、加工シミュレーション部306で予測された加工後形状と目標形状との比較が必要となる場合がある。かかる場合に、目標形状情報入力部311が設けられてもよい。
 目標形状情報入力部311は、ユーザが入力した、加工後の目標形状情報を、加工シミュレーション結果評価部307に出力する。目標形状情報は、例えば、CADデータである。CADデータは、図1に示したCAD装置10から入力される。
 CADデータ以外であっても、加工後の目標形状を三次元的に表現可能ならばどのようなデータでもよい。
 CADデータ以外で、3次元形状を表現可能なデータの例としては、CSG(Constructive Solid Geometry)データ、多面体要素モデルデータ、ボクセルデータ、ポリゴンメッシュ及び点群データがある。
 CSGデータは、三次元形状を、基本的な形状の集合として表現した情報である。CSGデータは、例えば、基本形状の種類(平面、球、立方体、円筒など)と、その寸法(平面の輪郭線、球の直径、立方体の縦横高さ、円筒の直径と長さなど)と、その位置および姿勢と、重なり具合(足し合わせ、差分、共通部分など)との情報である。
 多面体要素モデルデータは、多面体の集合として表現された、目標形状の情報である。
 ボクセルデータは、立方体の集合として表現された目標形状の情報である。
 ポリゴンメッシュは、多角形の集合として表現された、目標形状の表面情報である。
 点群データは、点群で表現された、目標形状の表面情報である。
 素材形状情報入力部312は、加工シミュレーション部306のシミュレーション加工において、加工プログラムの他に加工前の素材形状の情報を必要とする場合に、ユーザが入力した加工前の素材形状の情報を加工シミュレーション部306に出力する。
 加工前の素材形状は、加工プログラムを実行する前の被削物の三次元形状に関する情報である。ブロックから加工するのであれば、加工前の素材形状は直方体となる。また、鋳物から加工するのであれば、加工前の素材形状は鋳物の形状となる。荒加工の後に仕上げ工程を行うなど、前工程で何らかの加工がなされる場合は、加工前の素材形状は、直前の工程が完了した時点での被削物の形状情報となる。
 工前の素材形状の情報のデータの形式は、例えば、目標形状情報と同じく、CADデータを用いることができるが、三次元形状を表現可能な形式であればどのような形式でもよい。
 加工シミュレーション部306は、加工プログラムに従って工具が移動した際に通過する領域を計算する。この領域は図9に示すように、加工時に工具によって削り取られる部分なので、素材形状情報入力部312から出力される加工前の素材形状から、工具の通過する領域を除いた物が加工後の形状となる。図9は、加工前の素材形状を用いて加工後の形状を求める加工シミュレーション部の動作を示す図である。
 工具形状情報入力部313は、加工シミュレーション部306のシミュレーション加工において、加工プログラムの他に加工に用いる工具の工具形状の情報を必要とする場合に、ユーザが入力した工具形状の情報を加工シミュレーション部306に出力する。
 目標形状情報、素材形状情報及び工具形状情報は、メインプロセッサ20又はCAD装置10とは別にユーザによってポストプロセッサ30Aに入力される場合と、メインプロセッサ20が出力するCLデータに目標形状情報、素材形状情報及び工具形状情報が含まれている場合とがある。
 例えば、ISO-14649により規定されているSTEP NCの規格を用いれば、メインプロセッサ20が出力するCLデータの中に上記の情報を全て含めることが可能である。このような加工指令を入力とした場合は、別途、目標形状情報、素材形状情報及び工具形状情報を入力する必要はない。
 目標形状情報、素材形状情報及び工具形状情報がCLデータに含まれず、CLデータが工具の移動経路の情報しか含んでいないような場合には、別途、目標形状情報、素材形状情報及び工具形状情報をポストプロセッサに入力する。
 本実施形態において、CNCパラメータ情報出力部309、外部記憶装置310、目標形状情報入力部311、素材形状情報入力部312、及び工具形状情報入力部313のうちから1又は2以上の構成部を選択して設けてもよい。すなわち、図8に示したポストプロセッサ30Aは、図1に示したポストプロセッサ30に、例えば、CNCパラメータ情報出力部309のみを加えた構成、CNCパラメータ情報出力部309と外部記憶装置310とを加えた構成、目標形状情報入力部311のみを加えた構成、素材形状情報入力部312又は工具形状情報入力部313を加えた構成等が可能である。
 以上、本発明の各実施形態について説明したが、ポストプロセッサ30、30Aはその機能の全部又は一部はソフトウェアで実現することができる。しかしポストプロセッサ30.30Aの機能をハードウェア、又はソフトウェアとハードウェアの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。ポストプロセッサ30、30Aがハードウェアで構成される場合、ポストプロセッサ30、30Aの各構成部の一部又は全部を、例えば、LSI(Large Scale Integrated circuit)、ASIC(Application Specific Integrated Circuit)、ゲートアレイ、FPGA(Field Programmable Gate Array)等の集積回路(IC)で構成することができる。
 ポストプロセッサ30、30Aがソフトウェアによって実現する場合、ポストプロセッサ30、30Aを動作させる、図7に示したような動作を記述した、ハードディスク装置、ROM等の第1記憶部に記憶されたポストプロセッサアプリケーションに従い、演算に必要な情報をRAM等の第2記憶部に記憶し、CPUが処理を実行することでポストプロセッサ30、30Aの動作をプログラムで実行ことができる。ポストプロセッサアプリケーションは、プログラムが記録されたコンピュータ読み取り可能な媒体からハードディスク等の第1記憶部に読み込むことができる。
 コンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。コンピュータ可読媒体は非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を含む。コンピュータ可読媒体の例は、磁気記録媒体(例えば、ハードディスクドライブ等)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
 上述した各実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
 本開示によるポストプロセッサ、加工プログラム生成方法、CNC加工システム及び加工プログラム生成用プログラムは、上述した実施形態を含め、次のような構成を有する各種各様の実施形態を取ることができる。
 (1) 機械に依存しない加工指令が入力される加工指令入力部(例えば、加工指令入力部304)と、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得するCNC情報取得部(例えば、CNC情報取得部301)と、
 加工目標に関する加工目標情報が入力される加工目標入力部(例えば、加工目標入力部303)と、
 前記CNC情報取得部で取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する、使用可能機能判断部(例えば、使用可能機能判断部302)と、
 前記加工指令に基づいて、前記使用可能機能判断部で使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する、加工プログラム生成部(例えば、加工プログラム生成部305)と、
 前記加工プログラム生成部で生成された加工プログラムに基づき加工結果をシミュレートする加工シミュレーション部(例えば、加工シミュレーション部306)と、
 前記加工目標に応じて、前記加工シミュレーション部から出力される加工シミュレーション結果を評価する加工シミュレーション結果評価部(例えば、加工シミュレーション結果評価部307)と、
 前記加工シミュレーション結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する加工プログラム出力部(例えば、加工プログラム出力部308)と、
を含む、
 ポストプロセッサ。
 このポストプロセッサによれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
 (2) 前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
 前記加工プログラム生成部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の一つ以上のパラメータの値を変更する指令を含む前記加工プログラムを生成する、
 (1)に記載のポストプロセッサ。
 このポストプロセッサによれば、プログラムの途中で機械の動作を変更することが可能となる。
 (3) 前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
 前記加工シミュレーション部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の1つ以上のパラメータが異なる複数の条件で加工シミュレーションを行い、
 前記加工プログラム出力部は、前記加工シミュレーション結果の評価に基づいて、加工に用いる加工プログラムを選択し、前記CNC装置の一つ以上のパラメータの値を変更する指令を前記加工プログラムに挿入して出力する、
 (1)に記載のポストプロセッサ。
 このポストプロセッサによれば、プログラムの途中で機械の動作を変更することが可能となる。
 (4) 前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
 前記加工シミュレーション部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の1つ以上のパラメータが異なる複数の条件で加工シミュレーションを行い、
 前記加工シミュレーション結果の評価に基づいて、前記CNC装置の1つ以上のパラメータの番号と該パラメータの値との組から成るCNCパラメータ情報を出力する、CNCパラメータ情報出力部(例えば、CNCパラメータ情報出力部309)を備える、
 (1)に記載のポストプロセッサ。
 このポストプロセッサによれば、機械設定を変更する場合にCNC装置のパラメータ情報のみを修正すれば良く、個々のプログラムを修正する必要がなくなる。
 (5) 加工後の目標形状情報が入力される目標形状情報入力部を備え、
 前記加工シミュレーション結果評価部は、前記加工シミュレーション結果と前記目標形状情報に基づいて前記加工シミュレーション結果を評価する、
 (1)から(4)のいずれかに記載のポストプロセッサ。
 (6) 前記加工指令入力部は、加工が1つ以上の加工工程の集合として記述された加工指令が入力され、
 前記加工目標入力部は、加工工程ごとに異なる加工目標が入力され、
 前記加工プログラム生成部は、加工工程ごとの加工プログラムを生成する、
 (1)から(5)のいずれかに記載のポストプロセッサ。
 (7) 前記CNC装置に内蔵されている、
 (1)から(6)のいずれかに記載のポストプロセッサ。
 (8) 加工前の素材形状の情報が入力される素材形状情報入力部、又は加工に用いる工具の工具形状の情報が入力される工具形状情報入力部を備え、
 前記加工シミュレーション部は、前記加工前の素材形状の情報又は前記工具形状の情報を用いて加工シミュレーションを行う
 (1)から(7)のいずれかに記載のポストプロセッサ。
 (9) (1)から(6)のいずれか1項に記載のポストプロセッサと、該ポストプロセッサと接続されるCNC装置を有し、該ポストプロセッサから出力された加工プログラムに基づいて加工物のCNC機械加工を行うCNC加工機械(例えば、CNC工作機械40)と、
を備えたCNC加工システム。
 このCNC加工システムによれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
 (10) 機械に依存しない加工指令が入力され、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得し、
 加工目標に関する加工目標情報が入力され、
 取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断し、
 前記加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成し、
 生成された加工プログラムに基づき加工結果を加工シミュレーションし、
 前記加工目標に応じて、加工シミュレーションの結果を評価し、
 前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する、
 ポストプロセッサの加工プログラム生成方法。
 この加工プログラム生成方法によれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
 (11) ポストプロセッサとしてのコンピュータに、
 CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得する処理と、
 取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する処理と、
 機械に依存しない加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する処理と、
 生成された加工プログラムに基づき加工結果を加工シミュレーションする処理と、
 入力された加工目標に応じて、加工シミュレーションの結果を評価する処理と、
 前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する処理と、
 を実行させる加工プログラム生成用プログラム。
 この加工プログラム生成用プログラムによれば、ポストプロセッサがCNC装置の情報を参照することにより、CNC装置の情報に基づき使用機能を選択して加工プログラムを生成することができる。また、ポストプロセッサが加工シミュレータで加工結果を予測することにより、加工目標に最適な加工プログラムを出力することができる。
 10 CAD装置
 20 メインプロセッサ
 30、30A ポストプロセッサ
 40 CNC工作機械
 301 CNC情報取得部
 302 使用可能機能判断部
 303 加工目標入力部
 304 加工指令入力部
 305 加工プログラム生成部
 306 加工シミュレーション
 307 加工シミュレーション結果評価部
 308 加工プログラム出力部
 309 CNCパラメータ情報出力部
 310 外部記憶装置
 311 目標形状情報入力部
 312 素材形状情報入力部
 313 工具形状情報入力部
 410 CNC装置
 411 プログラム解析部
 412 指令出力部
 413 記憶部
 420 モータ制御装置
 421 主軸モータ制御部
 422 送り軸モータ制御部
 431 主軸モータ
 432 送り軸モータ

Claims (11)

  1.  機械に依存しない加工指令が入力される加工指令入力部と、
     CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得するCNC情報取得部と、
     加工目標に関する加工目標情報が入力される加工目標入力部と、
     前記CNC情報取得部で取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する、使用可能機能判断部と、
     前記加工指令に基づいて、前記使用可能機能判断部で使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する、加工プログラム生成部と、
     前記加工プログラム生成部で生成された加工プログラムに基づき加工結果をシミュレートする加工シミュレーション部と、
     前記加工目標に応じて、前記加工シミュレーション部から出力される加工シミュレーション結果を評価する加工シミュレーション結果評価部と、
     前記加工シミュレーション結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する加工プログラム出力部と、
    を含む、
     ポストプロセッサ。
  2.  前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
     前記加工プログラム生成部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の一つ以上のパラメータの値を変更する指令を含む前記加工プログラムを生成する、
     請求項1に記載のポストプロセッサ。
  3.  前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
     前記加工シミュレーション部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の1つ以上のパラメータが異なる複数の条件で加工シミュレーションを行い、
     前記加工プログラム出力部は、前記加工シミュレーション結果の評価に基づいて、加工に用いる加工プログラムを選択し、前記CNC装置の一つ以上のパラメータの値を変更する指令を前記加工プログラムに挿入して出力する、
     請求項1に記載のポストプロセッサ。
  4.  前記CNC情報取得部は、前記CNC装置のパラメータ情報を取得し、
     前記加工シミュレーション部は、前記CNC装置のパラメータ情報に含まれる前記CNC装置の1つ以上のパラメータが異なる複数の条件で加工シミュレーションを行い、
     前記加工シミュレーション結果の評価に基づいて、前記CNC装置の1つ以上のパラメータの番号と該パラメータの値との組から成るCNCパラメータ情報を出力する、CNCパラメータ情報出力部を備える、
     請求項1に記載のポストプロセッサ。
  5.  加工後の目標形状情報が入力される目標形状情報入力部を備え、
     前記加工シミュレーション結果評価部は、前記加工シミュレーション結果と前記目標形状情報に基づいて前記加工シミュレーション結果を評価する、
     請求項1から4のいずれか1項に記載のポストプロセッサ。
  6.  前記加工指令入力部は、加工が1つ以上の加工工程の集合として記述された加工指令が入力され、
     前記加工目標入力部は、加工工程ごとに異なる加工目標が入力され、
     前記加工プログラム生成部は、加工工程ごとの加工プログラムを生成する、
     請求項1から5のいずれ1項に記載のポストプロセッサ。
  7.  前記CNC装置に内蔵されている、
     請求項1から6のいずれか1項に記載のポストプロセッサ。
  8.  加工前の素材形状の情報が入力される素材形状情報入力部、又は加工に用いる工具の工具形状の情報が入力される工具形状情報入力部を備え、
     前記加工シミュレーション部は、前記加工前の素材形状の情報又は前記工具形状の情報を用いて加工シミュレーションを行う
     請求項1から7のいずれか1項に記載のポストプロセッサ。
  9.  請求項1から6のいずれか1項に記載のポストプロセッサと、該ポストプロセッサと接続されるCNC装置を有し、該ポストプロセッサから出力された加工プログラムに基づいて加工物のCNC機械加工を行うCNC加工機械と、
    を備えたCNC加工システム。
  10.  機械に依存しない加工指令が入力され、
     CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得し、
     加工目標に関する加工目標情報が入力され、
     取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断し、
     前記加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成し、
     生成された加工プログラムに基づき加工結果を加工シミュレーションし、
     前記加工目標に応じて、加工シミュレーションの結果を評価し、
     前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する、
     ポストプロセッサの加工プログラム生成方法。
  11.  ポストプロセッサとしてのコンピュータに、
     CNC装置と通信し、該CNC装置のオプション情報又は該CNC装置の仕様に関する情報を取得する処理と、
     取得した、前記CNC装置のオプション情報又は前記CNC装置の仕様に関する情報に基づいて加工に使用可能な機能を判断する処理と、
     機械に依存しない加工指令に基づいて、使用可能と判断された少なくとも一つの機能を使用した、又は該機能を使用しない加工プログラムを少なくとも一つ生成する処理と、
     生成された加工プログラムに基づき加工結果を加工シミュレーションする処理と、
     入力された加工目標に応じて、加工シミュレーションの結果を評価する処理と、
     前記加工シミュレーションの結果の評価に基づいて、加工に用いる加工プログラムを選択し出力する処理と、
     を実行させる加工プログラム生成用プログラム。
PCT/JP2021/024326 2020-07-03 2021-06-28 ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム WO2022004645A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202180046462.5A CN115735167A (zh) 2020-07-03 2021-06-28 后处理器、加工程序生成方法、cnc加工系统以及加工程序生成用程序
US17/928,711 US20230236567A1 (en) 2020-07-03 2021-06-28 Post-processor, machining program generation method, cnc machining system, and program for generating machining program
DE112021003589.4T DE112021003589T5 (de) 2020-07-03 2021-06-28 Post-Prozessor, Verarbeitungsprogramm-Erzeugungsverfahren; CNC-Bearbeitungssystem, und Programm für das Erzeugen von Bearbeitungsprogramm
JP2022533987A JP7464712B2 (ja) 2020-07-03 2021-06-28 ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-115870 2020-07-03
JP2020115870 2020-07-03

Publications (1)

Publication Number Publication Date
WO2022004645A1 true WO2022004645A1 (ja) 2022-01-06

Family

ID=79315306

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/024326 WO2022004645A1 (ja) 2020-07-03 2021-06-28 ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム

Country Status (5)

Country Link
US (1) US20230236567A1 (ja)
JP (1) JP7464712B2 (ja)
CN (1) CN115735167A (ja)
DE (1) DE112021003589T5 (ja)
WO (1) WO2022004645A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7158636B1 (ja) * 2022-02-10 2022-10-21 三菱電機株式会社 加工評価装置、加工システム、および加工評価方法
WO2023229259A1 (ko) * 2022-05-25 2023-11-30 주식회사 디엔솔루션즈 공작기계 소프트 죠의 가공장치 및 가공방법

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11123657A (ja) * 1997-10-24 1999-05-11 Seiko Seiki Co Ltd 力情報を考慮したcad/cam装置及び加工装置
JP2003271215A (ja) * 2002-03-13 2003-09-26 Citizen Watch Co Ltd 数値制御工作機械の加工プログラムチェック方法およびチェック装置ならびにそれを備えた数値制御工作機械
JP2004265024A (ja) * 2003-02-28 2004-09-24 Kinichi Inagaki 加工プログラムを理解して固有のncデータ変換生成をする知的管理するcnc装置
US20050102054A1 (en) * 2003-11-12 2005-05-12 Siemens Aktiengesellschaft Method and system for simulating processing of a workpiece with a machine tool
US20090326892A1 (en) * 2008-06-26 2009-12-31 Siemens Product Lifecycle Management Software Inc. System and method for constructing virtual nc controllers for machine tool simulation
JP2019082852A (ja) * 2017-10-30 2019-05-30 ファナック株式会社 ポストプロセッサ装置、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム
JP2020071734A (ja) * 2018-10-31 2020-05-07 ファナック株式会社 数値制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6460276A (en) 1987-08-31 1989-03-07 Toshiba Corp Method of operation control for air conditioner
EP2058717B1 (de) 2007-11-12 2011-07-20 Siemens Aktiengesellschaft Verfahren und Einrichtung zum Betrieb einer Werkzeugmaschine
EP2189861B1 (de) 2008-11-24 2012-10-31 Siemens Aktiengesellschaft Verfahren zur Erstellung eines Teileprogramms
JP5149421B2 (ja) 2011-05-20 2013-02-20 ファナック株式会社 加工時間予測部および加工誤差予測部を有する数値制御装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11123657A (ja) * 1997-10-24 1999-05-11 Seiko Seiki Co Ltd 力情報を考慮したcad/cam装置及び加工装置
JP2003271215A (ja) * 2002-03-13 2003-09-26 Citizen Watch Co Ltd 数値制御工作機械の加工プログラムチェック方法およびチェック装置ならびにそれを備えた数値制御工作機械
JP2004265024A (ja) * 2003-02-28 2004-09-24 Kinichi Inagaki 加工プログラムを理解して固有のncデータ変換生成をする知的管理するcnc装置
US20050102054A1 (en) * 2003-11-12 2005-05-12 Siemens Aktiengesellschaft Method and system for simulating processing of a workpiece with a machine tool
US20090326892A1 (en) * 2008-06-26 2009-12-31 Siemens Product Lifecycle Management Software Inc. System and method for constructing virtual nc controllers for machine tool simulation
JP2019082852A (ja) * 2017-10-30 2019-05-30 ファナック株式会社 ポストプロセッサ装置、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム
JP2020071734A (ja) * 2018-10-31 2020-05-07 ファナック株式会社 数値制御装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7158636B1 (ja) * 2022-02-10 2022-10-21 三菱電機株式会社 加工評価装置、加工システム、および加工評価方法
WO2023152869A1 (ja) * 2022-02-10 2023-08-17 三菱電機株式会社 加工評価装置、加工システム、および加工評価方法
WO2023229259A1 (ko) * 2022-05-25 2023-11-30 주식회사 디엔솔루션즈 공작기계 소프트 죠의 가공장치 및 가공방법

Also Published As

Publication number Publication date
US20230236567A1 (en) 2023-07-27
CN115735167A (zh) 2023-03-03
JPWO2022004645A1 (ja) 2022-01-06
JP7464712B2 (ja) 2024-04-09
DE112021003589T5 (de) 2023-04-13

Similar Documents

Publication Publication Date Title
WO2022004645A1 (ja) ポストプロセッサ、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム
JP6033668B2 (ja) Cam装置及び製品形状加工方法
Jiang et al. Modeling and simulation of surface morphology abnormality of ‘S’test piece machined by five-axis CNC machine tool
JP6646027B2 (ja) ポストプロセッサ装置、加工プログラム生成方法、cnc加工システム及び加工プログラム生成用プログラム
JP6706518B2 (ja) 加工時間予測装置、切削加工システムおよび加工時間予測方法
CN107664985B (zh) Cad/cam-cnc集成系统
US11307559B2 (en) Generation of holding tabs for fixing a part during machining
JPH09507439A (ja) 対話形機械制御装置及び方法
Cafieri et al. Plunge milling time optimization via mixed-integer nonlinear programming
WO2020204915A1 (en) System and method for design and manufacture using multi-axis machine tools
TWI684841B (zh) 加工傾斜平面的多軸工具機的程式碼產生方法及其裝置
JP7376620B2 (ja) 支援装置
WO2021117893A1 (ja) 工具経路生成方法、工具経路生成装置および工作機械の制御装置
JP7088872B2 (ja) 評価用ワークおよび加工プログラム
RU2438849C2 (ru) Устройство для создания программ, устройство числового программного управления, способ создания программ
JP2007257182A (ja) 仮想倣い加工における干渉計算方法、工具経路生成方法、仮想スタイラス制御方法、及びフライス加工制御システム
WO2023062756A1 (ja) シミュレーション装置、及びコンピュータが読み取り可能な記録媒体
WO2014050246A1 (ja) 加工システム及び数値制御データ生成装置及び数値制御データ生成方法
JP7348036B2 (ja) プログラム解析装置
JP7473321B2 (ja) シミュレーション装置、数値制御装置、及びシミュレーション方法
JP2007286858A (ja) 面モデルの作成装置と作成方法
Baldovino et al. Optimization of machine process parameters through 2D image layout enhancing and ArtCAM post-processing for 3D machining: Support program for the productivity and competitiveness of the metals and engineering industries
JP2003305625A (ja) 加工工程決定方法及び装置
Jawanda et al. Adaptive ball drop algorithm for toolpath generation of axisymmetric triangulated parts to eliminate overcutting
JPS6364109A (ja) 工具干渉を除去した自由曲面の加工情報生成システム

Legal Events

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

Ref document number: 21833414

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022533987

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 21833414

Country of ref document: EP

Kind code of ref document: A1