Machining command correction device and machining command correction method
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- FANUC LTD
- Filing Date
- 2022-10-21
- Publication Date
- 2026-07-07
Smart Images

Figure 0007886420000003 
Figure 0007886420000004 
Figure 0007886420000005
Abstract
Description
[Technical Field]
[0001] This disclosure relates to a machining command modification device and a machining command modification method for modifying machining commands that control a machine tool, and more particularly to a machining command modification device and a machining command modification method for modifying machining commands that change the orientation of a tool with respect to a workpiece. [Background technology]
[0002] Patent Document 1 describes a method and apparatus for generating a tool path when surface machining a workpiece using a machine tool having at least one rotary feed axis, while changing the tool position of the end mill relative to the workpiece. Specifically, Patent Document 1 describes setting one machining point on a multi-row tool path as the target machining point, selecting machining points within a predetermined range centered on the target machining point as points of interest, calculating the tool posture of the target machining point by averaging the tool postures at the selected points of interest, correcting the data related to the tool posture of the target machining point based on the calculated average tool posture, obtaining the shape data of the workpiece to be machined and the shape data of the ball end mill to be used, performing an interference check between the workpiece and the ball end mill based on the corrected tool posture data, and if no interference occurs between the workpiece and the ball end mill, generating a new tool path based on the corrected tool posture data. [Prior art documents] [Patent Documents]
[0003] [Patent Document 1] Special Republished Gazette No. WO2018 / 179401 [Overview of the project] [Problems that the invention aims to solve]
[0004] Patent Document 1 describes a method for checking for interference between a workpiece and a ball end mill based on modified tool orientation data, and if no interference occurs between the workpiece and the ball end mill, generating a new tool path based on the modified tool orientation data. When changing the tool position, it is desirable that the tool path after the change in tool position does not worsen compared to the tool path before the change.
[0005] Therefore, there was a need for a machining command modification device and a machining command modification method that optimize the tool position so that the tool path after the tool position change does not worsen compared to the tool path before the tool position change, and so as not to cause interference. [Means for solving the problem]
[0006] A typical first aspect of this disclosure is a machining command analysis unit that generates first machine coordinate information, which is the time-series change of the coordinates of each axis of a machine tool, based on a first machining command describing the time-series change of the position and orientation of a tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool. A tool posture correction unit that corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, An interference calculation unit calculates the interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, based on the second machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. In the absence of the aforementioned interference, a machining command generation unit generates a second machining command based on the second machine coordinate information, Equipped with, The tool posture correction unit is a machining command correction device that determines the corrected tool posture using an evaluation value that evaluates the quality of the tool path.
[0007] A typical second aspect of this disclosure is a machining command analysis unit that generates first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool. An interference calculation unit calculates the interference between the tool and the workpiece when the machine tool operates according to the first machine coordinate information, based on the first machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. A tool posture correction unit that corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, In the absence of the aforementioned interference, a machining command generation unit generates a second machining command based on the second machine coordinate information, Equipped with, The interference calculation unit calculates the range of tool positions in which no interference occurs, The tool posture correction unit is a machining command correction device that corrects the tool posture within the calculated range of tool postures and determines the corrected tool posture using an evaluation value that assesses the quality of the tool path.
[0008] A typical third aspect of this disclosure is a computer as a processing command modification device, A process for generating first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool, A process to correct the orientation of the tool based on the first machine coordinate information and generate second machine coordinate information, Based on the second machine coordinate information, the machine configuration information, the tool shape information regarding the shape of the tool used for the machining of the first machining instruction, and the workpiece shape information regarding the shape of the workpiece obtained when the first machining instruction is executed, a process of calculating the interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, When there is no such interference, a process of generating a second machining instruction based on the second machine coordinate information, A machining instruction correction method that executes the above.
Brief Description of the Drawings
[0009] [Figure 1] It is a block diagram showing the configuration of a data generation system. [Figure 2] It is a diagram showing the flow of data generation in the data generation system. [Figure 3] It is a block diagram showing the configuration of a machining instruction correction device according to the first embodiment of the present disclosure. [Figure 4] It is a diagram showing information on the type of the configuration of the machine. [Figure 5] It is a diagram for explaining the information on the position between the center of the rotating shaft and the workpiece coordinate system. [Figure 6] It is a diagram showing a state where the center position of the ball of the ball end mill is fixed and the tool posture is changed within a certain range. [Figure 7] It is a characteristic diagram showing an example of the first machine coordinate information. [Figure 8] It is a diagram showing the machine coordinates before and after changing the coordinate values of the rotating shaft at each command point in the correction section. [Figure 9] It is a characteristic diagram showing the change amount (ΔLaxis(pi)) of the axis axis. [Figure 10] It is a diagram showing an example of the information on the parameters of each height of the tool and the radius at that height. [Figure 11] It is a diagram showing CAD data as an example of the workpiece shape information. [Figure 12] It is a flowchart showing the operation of the machining instruction correction device. [Figure 13]This is a block diagram showing the configuration of a machining command modification device of a first modified example of the first embodiment of the present disclosure. [Figure 14] This is a block diagram showing the configuration of a machining command modification device for a second modified example of the first embodiment of the present disclosure. [Figure 15] This figure shows the region where the tool shape interferes with the workpiece, as calculated by the interference calculation unit. [Figure 16] (A) is an example of generating new tool shape information by increasing the tool overhang, and (B) is an example of generating new tool shape information by decreasing the diameter of the tooling portion of the tool shape information. [Figure 17] This diagram shows the state where the interference region has disappeared and interference has been eliminated. [Figure 18] This is a block diagram showing the configuration of a machining command modification device of a third modified example of the first embodiment of the present disclosure. [Figure 19] This is a block diagram showing the configuration of a machining command modification device according to a second embodiment of the present disclosure. [Figure 20] This figure shows the range of tool position changes that do not cause interference. [Modes for carrying out the invention]
[0010] Prior to describing embodiments of this disclosure, the data generation flow of a data generation system for generating data to control a machine tool will be described. The machining command modification device of this disclosure can be applied to the data generation system.
[0011] Figure 1 is a block diagram showing the configuration of the data generation system. Figure 2 is a diagram showing the data generation flow of the data generation system. As shown in Figure 1, the data generation system 10 includes a CAM device 11 and a CNC device 12. The CAM device 11 includes a main processor 111 and a post-processor 112.
[0012] Based on the shape data (CAD data) of the workpiece created by a CAD device (not shown), the main processor 111 of the CAM device 11 generates a tool path. The tool path is time-series data of the tool's position and orientation (tool axis vector), and may also include the feed rate or the method of movement from the previous position (linear movement, circular movement).
[0013] The tool path generated by the main processor 111 is a general-purpose command that is independent of the type of machine tool. Therefore, the axis configuration of the machine actually performing the machining is not taken into consideration, and the tool path generated by the CAM device 11 is not necessarily optimal for machine control.
[0014] The tool path generated by the main processor 111 is converted into a machining program tailored to the individual machine by the post-processor 112. The post-processor 112 inserts commands that can be used by the machine (spindle rotation, cutting fluid ON / OFF, etc.), but does not perform any operations that modify the tool path.
[0015] The CNC device 12 calculates time-series data of the coordinates of machine control points as viewed from the machine coordinate system (called machine coordinate information) from the machining program (this is called kinematic transformation). Based on this machine coordinate information, each motor of the machine tool is controlled. Machine control points are points used to calculate the coordinates of orthogonal axes, and are fixed on the machine, so their position does not change even when the rotation axis is moved. Machine control points are shown in Figure 2, for example.
[0016] Since the motor's position and acceleration / deceleration are calculated from the coordinates of the machine control points, if the trajectory of the machine control points is not smooth, the acceleration / deceleration of the axis will increase, leading to a decrease in machining speed or an increase in power consumption. In addition, vibrations caused by the acceleration / deceleration of the axis may also degrade the machined surface. When the tool position is modified within the CNC device 12 to smooth the machine control points, there is a possibility of interference between the tool and the workpiece, and the risk of interference increases as the amount of change in tool position increases. To avoid interference, only very small amounts of change in tool position are possible, minimizing the risk of interference. Therefore, the effect of smoothing machine operation by modifying the tool position is limited, and it is desirable to optimize the tool position within the range where no interference occurs, while checking for interference between the tool and the workpiece.
[0017] Furthermore, when changing the tool position, it is desirable to ensure that the tool path after the change in tool position does not deteriorate compared to the tool path before the change, for example, that no issues arise such as an increase in the amount of shaft movement. The embodiments and modifications of the present disclosure described below relate to a machining command modification device and a machining command modification method that optimize the tool position so that the tool path after a change in tool position does not deteriorate compared to the tool path before the change in tool position, and so as not to cause interference.
[0018] The embodiments of this disclosure will be described in detail below with reference to the drawings. (First embodiment) Figure 3 is a block diagram showing the configuration of a machining command modification device according to the first embodiment of this disclosure. As shown in Figure 3, the machining command modification device 20 includes a machining command analysis unit 21, a tool position modification unit 22, an interference calculation unit 23, and a machining command generation unit 24. The machining command modification device 20 may be mounted within the CAM device 11 or CNC device 12 shown in Figure 1, or it may be provided as a separate device from the CAM device 11 and CNC device 12.
[0019] The following describes each component of the machining command correction device. (Processing command analysis department) The machining command analysis unit 21 analyzes the first machining command P, which is the machining command before correction. A Based on the machine configuration information, a first machine coordinate information M relating to the machine coordinates of each control axis of the machine tool is obtained. A Generates the first processing command P. AIt includes data that describes the time-series changes in the position and orientation of a tool described in the workpiece coordinate system. From the position and orientation of the tool (included in the first machining command P) A described in the workpiece coordinate system, using the machine configuration information, the calculation (kinematic conversion) to obtain the coordinates of each control axis of the machine to be M A is a known technique.
[0020] The first machining command P A is, for example, information that describes time-series data of the position and orientation (tool axis direction vector) of the tool as seen in the workpiece coordinate system, and the method of movement (linear movement, circular movement, etc.) from the previous position. The first machining command P A may include information on the movement speed of the tool and the spindle rotation speed. The first machining command P A is, for example, a file of a character string described in G-code included in a machining program, or a proprietary format file of a CAM device called CL data. However, the first machining command P A may be in any format as long as it includes information such as time-series data of the position and orientation of the tool as seen in the workpiece coordinate system, and the method of movement from the previous position. For example, the first machining command P A may be binary data or the like.
[0021] For example, when the generation of machine coordinate information is executed between the main processor 111 of the CAM device 11 and the post-processor 112, the first machining command P A becomes CL data. When the generation of machine coordinate information is executed between the post-processor 112 and the CNC device 12, the first machining command P A becomes a file of G-code. When the generation of machine coordinate information is performed while the file of G-code is input to the CNC device 12 and kinematic conversion is performed within the CNC device 12, the first machining command P A becomes data in the internal format of the CNC device 12 in binary form.
[0022] Machine configuration information is information used to perform coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool. When used to generate machine coordinate information, machine configuration information is necessary to transform the tool position and orientation described in the workpiece coordinate system into coordinates of each axis of the machine (kinematic transformation). Machine configuration information is also used when performing the inverse kinematic transformation described later.
[0023] Machine configuration information includes, for example, the following information: (1) Information on the type of machine configuration Information about the type of machine configuration includes, for example, information indicating whether the machine tool is a 4-axis or 5-axis machine tool, information indicating whether the axis configuration is table rotary, spindle rotary, or a hybrid of table rotary and spindle rotary, and information indicating whether the direction of the rotation axis of the table rotary configuration is AC axis configuration or BC axis configuration. Figure 4 shows the configurations of the table-rotating type, spindle-rotating type, and hybrid type, as well as the AC axis configuration and BC axis configuration of the table-rotating type.
[0024] (2) Position information between the rotation axis center and the work coordinate system Figure 5 is a diagram illustrating the positional information between the rotation axis center and the workpiece coordinate system. Figure 5 shows the A-axis rotation center and the origin of the work coordinate system, indicating that the difference between the A-axis rotation center and the origin of the work coordinate system is dx in the X direction and dZ in the z direction.
[0025] (Tool posture correction section) The tool position correction unit 22 uses the first machine coordinate information M generated by the machining command analysis unit 21. A Based on this, the tool's orientation is corrected, and the second machine coordinate information M B This generates the following. An example of how to correct the tool position is shown below.
[0026] (A) When machining with a ball end mill In a ball end mill, the tip is spherical, so as shown in Figure 6, even if the tool orientation is changed within a certain range while the center position of the sphere of the ball end mill is fixed, the shape obtained after machining does not change. Therefore, when correcting the tool orientation, only the tool orientation is changed without changing the position of the ball center as seen in the work coordinate system. In the tool shown in Figure 6, if the orientation is changed by more than 90 degrees, the cylindrical part of the tool will come into contact with the workpiece and the shape after machining will change, but such cases can be avoided by setting an upper limit on the amount of change in tool orientation.
[0027] (B) First machine coordinate information M A This includes periods during which the tool position should not be corrected and periods during which it can be corrected. First machine coordinate information M A This may include movements that should not modify the tool posture, such as positioning movements during rapid traverse. Therefore, the tool posture modification unit 22 receives the first machine coordinate information M A From this, we extract the sections where the tool position can be corrected. An example of a corrected section is a cutting feed section consisting of a series of broken line segments. There may be multiple corrected sections. Figure 7 is a characteristic diagram showing an example of the first machine coordinate information. First machine coordinate information M A As shown in Figure 7, the system includes four rapid traverse positioning periods and three correction periods for the X, Y, Z, A, and C axes. The four rapid traverse positioning periods are periods during which the tool position should not be corrected, while the three correction periods are periods during which correction is possible.
[0028] The tool position correction unit 22 corrects the tool position for each correction section shown in Figure 7 using the following method. First, the tool position correction unit 22 calculates the evaluation value E1 of the tool path before correction for the extracted correction section using the calculation method described later. Next, the coordinate values of the rotation axis at each command point in the correction section are changed. If there is a limit on the amount of attitude change, the coordinates of the changed rotation angle are determined so that the attitude change does not exceed that limit. For example, in Figure 8, if there is a limit that the A-axis machine coordinate at time t1 must not exceed A1, the coordinates of the changed rotation axis are determined so that the A-axis coordinate at time t1 does not exceed A1. Once the coordinates of the rotation axis are determined, the coordinate values of the linear axis are determined based on the condition that "the ball center coordinate in the work coordinate system does not change". To prevent abrupt changes in tool orientation at the boundary between preceding and succeeding sections, it is desirable that the tool orientation not be changed at the first and last command points of the correction section. Furthermore, abrupt speed changes at the section boundary can be prevented by not changing the speed of each axis at the first and last points of the correction section.
[0029] The tool orientation correction unit 22 calculates an evaluation value E2 for the tool path after the tool orientation change, and if the evaluation is better than the evaluation value E1, it adopts it as the corrected machine coordinate information. It is not necessary to calculate the corrected machine coordinate information with a single change. For example, if the tool path is modified by adding a correction amount to the rotation axis coordinates and the evaluation of the modified tool path is better than the original, it is adopted. If the evaluation of the modified tool path is worse, the change is discarded, and the tool path is modified again by adding a different correction amount than before. The process of modifying the tool path by adding another correction amount to the adopted tool path is repeated, and the tool path with the best index value can be found through iterative search. The tool path correction process is a multivariable optimization problem in which the values of the variables that yield the best evaluation value are determined, using the coordinates of the rotation axis of each command point as variables. Therefore, it is acceptable to use methods commonly used in multivariable optimization problems to find the tool position that yields the best evaluation value. Examples of such methods include the steepest descent method or the Nelder-Mead method.
[0030] (Example of calculation of evaluation value) The evaluation value can be at least one of the following: drive shaft displacement, drive shaft acceleration, energy consumption, and processing time. An example of calculating the evaluation value is described below. (1) When the evaluation value is the total displacement of the axis The tool posture correction unit 22 can use the sum of the axial movement amounts as an evaluation value for the tool path. Since a smaller total movement amount is expected to result in smaller movement time and energy required, the tool posture correction unit 22 determines that a smaller evaluation value indicates a better tool path. The formula for calculating the total displacement is shown in Equation 1 (Equation 1 below).
number
[0031] (2) When the evaluation value is total acceleration The tool posture correction unit 22 can use the sum of the axial accelerations as an evaluation value for the tool path. Since a smaller acceleration is expected to mean a smaller time or energy required for acceleration or deceleration, the tool posture correction unit 22 determines that a smaller evaluation value indicates a better tool path. The formula for calculating the total acceleration is shown in Equation 2 (Equation 2 below).
number
[0032] (3) When the evaluation value is the total energy consumption The tool posture correction unit 22 predicts the machine's energy consumption through simulation and uses it as an evaluation value, determining that a smaller predicted energy consumption indicates a better tool path. Existing technologies can be used to predict the machine's energy consumption. For example, technologies described in Japanese Patent No. 4571225, Japanese Patent No. 4805329, etc., can be used.
[0033] (4) When the evaluation value is processing time The tool position correction unit 22 can use machining time as an evaluation value. Regarding the evaluation value of machining time, there is existing technology for predicting machining time from the NC program (for example, Japanese Patent No. 06871207). Second machine coordinate information M B By performing an inverse kinematic transformation, machining commands such as NC commands describing the tool position and orientation in the work coordinate system can be obtained, allowing for machining time prediction. The tool orientation correction unit 22 determines that a shorter predicted machining time indicates a better tool path.
[0034] First machine coordinate information M A The example given included periods during which the tool position should not be modified and periods during which it can be modified, but the principle is also applicable even when the period during which the tool position should not be modified is not included.
[0035] (Interference Calculation Unit) The interference calculation unit 23 receives the second machine coordinate information M B Based on machine configuration information, tool shape information, and workpiece shape information, the system calculates interference between the tool and the workpiece. First, the interference calculation unit 23 processes the machine coordinate information M B By performing an inverse kinematic transformation on each point based on mechanical condition information, the position and orientation of the tool, described in the work coordinate system, are calculated. The interference calculation unit 23 then transforms the tool shape information coordinately to achieve the calculated tool position and orientation, and calculates the interference between the coordinate-transformed tool shape and the workpiece shape. Interference calculation between shape data is a well-known technique widely used in CAM devices and the like.
[0036] The interference calculation unit 23 calculates the interference between the tool and the workpiece. If interference occurs, it terminates the process. If there is no interference, it outputs the corrected tool position to the machining command generation unit 24.
[0037] The machine configuration information is used for the inverse kinematic transformation. Examples of tool shape information include any of the following. However, if necessary for interference detection, the tool shape may include not only the tip tool but also the tooling or spindle shape. Tool shape information includes, for example, CAD data of the tool shape, information on parameters such as the height of each part of the tool and the radius at that height, and information that can represent the tool shape, such as ISO standards (ISO 13399, etc.).
[0038] Figure 10 shows an example of parameter information for each height of a tool and the radius at that height. In Figure 10, h1 to h4 represent the height, and r1 to r4 represent the radius at each height h1 to h4.
[0039] Workpiece shape information can include CAD data of the workpiece shape after machining. Figure 11 shows an example of CAD data representing workpiece shape information.
[0040] (Machining command generation part) When the interference calculation unit 23 determines that there is no interference, the machining command generation unit 24 generates a machining command P with the tool position corrected. B Generates. The processing command P to be generated. B The format may differ from the format of the input processing instruction, but it is reasonable to follow the format of the input processing instruction.
[0041] The operation of the machining command correction device 20 (machining correction method) will be explained below with reference to Figure 12. Figure 12 is a flowchart showing the operation of the machining command correction device. In step S11, the machining command analysis unit 21 analyzes the first machining command P, which is the machining command before correction. A Based on the machine configuration information, a first machine coordinate information M relating to the machine coordinates of each control axis of the machine tool is obtained.A Generates.
[0042] In step S12, the tool position correction unit 22 uses the first machine coordinate information M generated by the machining command analysis unit 21. A Based on this, the tool's orientation is corrected, and the second machine coordinate information M B Generates.
[0043] In step S13, the interference calculation unit 23 receives the second machine coordinate information M B Based on machine configuration information, tool shape information, and workpiece shape information, the system calculates interference between the tool and the workpiece.
[0044] In step S14, the interference calculation unit 23 calculates the interference between the tool and the workpiece. If interference occurs, the process ends. If there is no interference, a second machining command P with a modified tool position is issued. B The output is sent to the processing command generation unit 24, and the process proceeds to step S15.
[0045] In step S15, the machining command generation unit 24 generates a second machining command P with a modified tool position. B Generates.
[0046] As described above, this embodiment has the effect of optimizing the tool position within a range where the tool path after changing the tool position does not deteriorate compared to the tool path before changing the tool position, and interference does not occur.
[0047] (First variation) In the embodiment described above, if interference is detected in the modified tool position, no further modification of the tool position is performed. In this modified example, if interference is detected in the modified tool position, the tool position is modified to the optimal position within the range where no interference occurs.
[0048] Figure 13 is a block diagram showing the configuration of a first modified example of the first embodiment of the present disclosure of a processing command modification device. The machining command modification device 20A shown in Figure 13 is the same as the machining command modification device 20 shown in Figure 3, but with the addition of a constraint condition setting unit 25 and a modification completion determination unit 26. In the machining command modification device 20A, the operation is the same as the machining command modification device 20 except for the operation related to the constraint condition setting unit 25 and the modification completion determination unit 26, so the explanation is omitted.
[0049] The interference calculation unit 23 calculates the interference between the tool and the workpiece, and if interference occurs, outputs the corrected tool position to the constraint setting unit 25. If there is no interference, the interference calculation unit 23 outputs the corrected tool position to the correction completion determination unit 26, and the correction completion determination unit 26 outputs the corrected tool position to the machining command generation unit 24. Using the constraint setting unit 25 and the correction completion determination unit 26, there are, for example, three methods for correcting to the optimal tool position within a range where no interference occurs, as follows: (1) to (3).
[0050] (1) A method of gradually adjusting the tool position to improve the evaluation value. If interference occurs at any tool position along the tool path, the following actions (a) and (b) are performed. (a) The constraint setting unit 25 returns the tool position at the tool position to the position before interference occurred and sets a restriction (constraint) to prevent further changes in the tool position at that tool position. Changes that bring the tool position closer to the position before correction do not cause interference and are therefore permitted. The correction completion determination unit 26 sends an incomplete notification, including constraints, to the tool posture correction unit 22. The tool posture correction unit 22 attempts to correct the tool posture under the constraints, and if the evaluation value improves further, it continues the correction.
[0051] (b) The correction completion determination unit 26 determines that the tool path correction is complete if it has repeated the correction a predetermined number of times or if it has determined that the evaluation value will not improve beyond the current evaluation value even if the tool position is changed, and outputs the corrected tool position to the machining command generation unit 24. The determination that the evaluation value will not improve beyond the current evaluation value can be made by obtaining the evaluation value from the tool position correction unit 22. This method (1) is suitable when interference occurs frequently and the tool position cannot be changed significantly.
[0052] (2) A method that calculates the optimal tool path without considering interference and then reverses the process at the point where interference occurs. First, the tool position that yields the best evaluation value is calculated without considering interference. If interference is detected at the tool position on that best tool path, the following processes (a) and (b) are performed. (a) The constraint setting unit 25 calculates a tool position that is intermediate between the tool position before correction and the best tool position, where the tool does not interfere, and returns the tool position to that position. It sets a limit (constraint) to prevent further changes in the tool position at that tool position. Changes that bring it closer to the position before correction are permitted. The correction completion determination unit 26 sends an incomplete notification, including constraints, to the tool posture correction unit 22. The tool posture correction unit 22 attempts to correct the tool posture under the constraints, and if the evaluation value improves further, it continues the correction.
[0053] (b) The correction completion determination unit 26 determines that the tool posture correction is complete when it has repeated the correction a predetermined number of times or when the current evaluation value is the best tool path and no interference is detected, and outputs the corrected tool posture to the machining command generation unit 24. This method (2) is suitable when there is little interference even when the position of the tool is changed significantly.
[0054] (3) A combined method of method (1) and method (2) described above. For example, first, the optimal tool position is calculated as in method (2), and if interference is detected, the tool position at the tool position where interference occurs is returned to a position where no interference occurs. In addition, a restriction (constraint) is set to prevent further changes to the tool position at that position. After that, as in (1) above, the tool position is gradually modified to improve the evaluation value. In this case as well, the correction completion determination unit 26 determines that the tool path correction is complete if it determines that the correction will not improve beyond the current evaluation value even if the correction is repeated a predetermined number of times or if the tool position is changed.
[0055] In this modified version, in addition to the effects of the embodiment described above, there is an additional benefit in that the optimization calculation can be made more efficient when there is a mixture of areas with a lot of interference and areas with little interference in the tool path.
[0056] (Second variation) In the first modified example, when interference is detected in the tool position determined by the tool position correction unit 22, the tool position is changed to prevent interference. However, the evaluation value of the tool path may be worse for the changed tool position than for the tool position determined by the tool position correction unit. In this modified version, instead of changing the tool position to avoid interference, the tool shape is modified so that interference does not occur in the tool position determined by the tool position correction unit 22, thereby enabling the use of a well-evaluated tool position.
[0057] Figure 14 is a block diagram showing the configuration of a machining command modification device of a second modified example of the first embodiment of the present disclosure. The machining command modification device 20B shown in Figure 14 is the machining command modification device 20A shown in Figure 13, with the addition of a tool shape generation unit 27 and an avoidance method selection unit 28. In the machining command modification device 20B, the same reference numerals are used for components identical to those in the machining command modification device 20A, and their descriptions are omitted.
[0058] In this second modified example, the interference calculation unit 23 has the function of calculating not only whether or not interference occurs, but also the region on the tool shape that interferes with the workpiece. Figure 15 shows the region where the tool shape interferes with the workpiece, as calculated by the interference calculation unit.
[0059] The tool shape generation unit 27 generates new tool shape information by removing at least the interference region from the tool shape and outputs it to the avoidance method selection unit 28. The avoidance method selection unit 28 selects whether to avoid interference by changing the tool path or by changing the tool to a new tool shape. If the avoidance method selection unit 28 chooses to avoid interference by changing the tool shape, the tool shape information output by the interference calculation unit 23 is changed to the new tool shape information generated by the tool shape generation unit 27, and the optimization process continues. If the avoidance method selection unit 28 chooses to avoid interference by changing the tool path, the same operation as in the first modified example is performed using the constraint condition setting unit 25 and the modification completion determination unit 26. The tool shape generation unit 27 may be provided after the avoidance method selection unit 28, and the tool shape generation unit 27 may generate new tool shape information when the avoidance method selection unit 28 selects to avoid interference by changing the tool shape.
[0060] Methods for generating new tool shapes include generating a tool shape with a larger tool overhang based on the input tool shape information, or generating a tool shape by replacing the tooling portion of the tool shape information with a tooling shape with a smaller diameter.
[0061] Figure 16(A) shows an example of generating new tool shape information by increasing the tool overhang. Figure 16(B) shows an example of generating new tool shape information by replacing the tooling portion of the tool shape information with a tooling shape with a smaller diameter.
[0062] The selection in the avoidance method selection unit 28 may be made by the operator and instructed to the avoidance method selection unit 28, or it may be done automatically by the avoidance method selection unit 28. If the avoidance method selection unit 28 makes the selection automatically, for example, it will automatically determine whether the new tool shape is appropriate as a tool shape, and if it is appropriate, it will select interference avoidance by changing the tool shape. Figure 17 shows the state where interference is eliminated by replacing the tooling portion of the tool shape information with a tooling shape with a smaller diameter, thereby eliminating the interference area.
[0063] Whether the new tool shape information is valid as a tool shape can be determined separately. This can be done by judging based on the tool diameter and overhang length, or by calculating the stiffness using methods such as FEM.
[0064] In this modified example, in addition to the effects of the first modified example described above, it is possible to utilize a tool position that yields a better evaluation by changing the tool shape.
[0065] (Third variation) In the embodiments, the first modification, and the second modification described above, CAD data of the workpiece shape after processing is input as workpiece shape information, but there are cases where CAD data is not available. For example, while CAD data for the final shape of a product may exist, CAD data for the intermediate shapes during rough machining are not typically created. Therefore, in order to modify machining programs other than the final finishing process using the proposed method, it is necessary to create CAD data for the intermediate machining shapes for interference detection.
[0066] Machining simulation can be used as a method for creating such CAD data. In this modified example, machining simulation is performed, and the resulting shape is used as CAD data.
[0067] Figure 18 is a block diagram showing the configuration of a machining command modification device of a third modified example of the first embodiment of the present disclosure. The machining command modification device 20C shown in Figure 18 is the machining command modification device 20A shown in Figure 13 with the addition of a machining simulation unit 29. In the machining command modification device 20C, the same reference numerals are used for components identical to those in the machining command modification device 20A, and their descriptions are omitted.
[0068] In this modified example 3, the machining simulation unit 29 uses the machining command PA and tool shape information before modification to perform a machining simulation, and outputs the CAD data of the obtained shape as workpiece shape information to the interference calculation unit 23. Furthermore, this modified example is not limited to the first modified example of the machining command modification device 20A, but can also be applied to the machining command modification device 20 of this embodiment and the second modified example of the machining command modification device 20B.
[0069] In addition to the effects of the first modification described above, this modified version has the added benefit of allowing for correction of the tool position even when CAD data after machining is unavailable.
[0070] (Second embodiment) In the first embodiment and the first to third modifications, the interference calculation unit 23 calculated interference at a specific tool position corrected by the tool position correction unit 22.
[0071] In this embodiment, the interference calculation unit calculates the range of tool positions in which no interference occurs, and the tool position correction unit corrects the tool position within the calculated range. Figure 19 is a block diagram showing the configuration of a machining command modification device according to a second embodiment of the present disclosure. The machining command modification device 30 shown in Figure 19 is modified in which the tool position modification unit 22 and interference calculation unit 23 of the machining command modification device 20 shown in Figure 3 are replaced by a tool position modification unit 31 and an interference calculation unit 32. In the machining command modification device 30, the same reference numerals are used for components identical to those in the machining command modification device 20, and their descriptions are omitted.
[0072] The interference calculation unit 32 receives machine coordinate information M A Based on machine configuration information, tool shape, and workpiece shape, interference checks are performed, and the range in which no interference occurs even when the tool position is changed from the pre-correction tool position at each tool position is calculated. Figure 20 shows the range in which the tool position can be changed without interference occurring. The tool position correction unit 31 corrects the tool position by changing it only within the range where no calculated interference occurs, and outputs the corrected tool position to the machining command generation unit 24.
[0073] In this embodiment, a machining simulation unit 29 of the machining command modification device 20C of the third modified example may be added to perform a machining simulation, and the CAD data of the obtained shape may be output to the interference calculation unit 32 as workpiece shape information.
[0074] In this embodiment, in addition to the effects of the first embodiment described above, the tool position correction unit only needs to correct the tool position within a range where interference does not occur, thus reducing the amount of computation required.
[0075] In order to realize the components included in the machining command modification device in each embodiment and each modified example described above, the machining command modification device can be realized by hardware, software, or a combination thereof. Here, realization by software means that it is realized by a computer reading and executing a program.
[0076] In order to realize the components included in each embodiment and each modified example of the machining command modification device by software or a combination thereof, the machining command modification device specifically includes an arithmetic processing unit such as a CPU (Central Processing Unit). The arithmetic processing unit functions as an execution unit. The machining command modification device also includes an auxiliary storage device such as an HDD (Hard Disk Drive) that stores various control programs such as application software or an OS (Operating System), and a main memory such as RAM (Random Access Memory) for storing data temporarily required for the arithmetic processing unit to execute the program. The main memory includes at least one of a memory area or a synchronous memory area.
[0077] In the machining command modification device, the processing unit reads application software or an operating system from the auxiliary storage device, expands the read application software or OS into the main storage device, and performs calculations based on this application software or OS. Furthermore, based on the results of these calculations, it controls various hardware components of the machining command modification device. Thus, the components of each embodiment and each modified example are realized.
[0078] Each component included in the machining command modification device can be implemented by hardware, including electronic circuits. When the machining command modification device is configured as hardware, some or all of the functions of each component included in the machining command modification device can be implemented by integrated circuits (ICs) such as ASICs (Application Specific Integrated Circuits), gate arrays, FPGAs (Field Programmable Gate Arrays), and CPLDs (Complex Programmable Logic Devices).
[0079] Programs can be stored and supplied to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic storage media (e.g., hard disk drives), magneto-optical storage media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memory (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs (random access memory)). Alternatively, programs may be supplied to a computer using various types of transient computer-readable media.
[0080] The effect of at least one embodiment and at least one modification described above is that the tool path after changing the tool position does not deteriorate compared to the tool path before changing the tool position, and the tool position can be optimized within a range where no interference occurs.
[0081] The present disclosure has been described above, but is not limited to the individual embodiments and modifications described above. These embodiments and modifications can be added, replaced, modified, partially deleted, etc., in any way that does not depart from the spirit of the present disclosure, or from the spirit of the present disclosure derived from the claims and their equivalents. Furthermore, these embodiments and modifications can be implemented in combination. For example, the sequence of operations and processes in the embodiments and modifications described above are merely examples and are not limited to them.
[0082] The following additional information is disclosed regarding each of the above embodiments and modifications. (Note 1) The machining command modification device (20, 20A, 20B, 20C) includes a machining command analysis unit (21) that generates first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool. A tool posture correction unit (22) corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, An interference calculation unit (23) calculates interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, based on the second machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. In the absence of the aforementioned interference, a machining command generation unit (24) generates a second machining command based on the second machine coordinate information, Equipped with, The tool posture correction unit determines the corrected tool posture using an evaluation value that assesses the quality of the tool path.
[0083] (Note 2) The machining command modification device according to Appendix 1, wherein the evaluation value used is at least one of the drive shaft's travel, drive shaft's acceleration, energy consumption, and machining time when the tool performs machining according to the tool path.
[0084] (Note 3) When interference is detected in the interference calculation unit, a constraint setting unit (25) sets constraint conditions regarding the range of allowable tool posture changes, The system includes a modification completion determination unit (26) that determines whether the modification of the tool path under the aforementioned constraints has been completed, The machining command modification device according to Appendix 1, wherein the tool posture modification unit modifies the first machine coordinate information within the constraints of the constraint conditions to generate the second machine coordinate information.
[0085] (Note 4) The interference calculation unit calculates the interference region where the tool having the shape of the tool shape information and the workpiece interfere, When interference is detected in the interference calculation unit, there is an avoidance method selection unit (28) that selects an interference avoidance method, The system includes a tool shape generation unit (27) that generates new tool shape information by removing the interference region when interference is detected in the interference calculation unit, The avoidance method selection unit has at least two options for avoiding interference between the tool having the shape of the tool shape information and the workpiece: changing the tool path and generating new tool shape information. If the generation of new tool shape information is selected in the avoidance method selection unit, the tool posture correction unit corrects the posture of the tool using a tool having new tool shape information based on the first machine coordinate information and generates the second machine coordinate information, as described in Appendix 3 of the machining command correction device.
[0086] (Note 5) The machining command modification device described in Appendix 1, comprising a machining simulation unit (29) that generates workpiece shape information based on the first machining command and the tool shape information.
[0087] (Note 6) A machining command analysis unit (21) generates first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool. An interference calculation unit (32) calculates interference between the tool and the workpiece when the machine tool operates according to the first machine coordinate information, based on the first machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. A tool posture correction unit (31) corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, In the absence of the aforementioned interference, a machining command generation unit (24) generates a second machining command based on the second machine coordinate information, Equipped with, The interference calculation unit calculates the range of tool positions in which no interference occurs, The tool posture correction unit corrects the tool posture within the calculated range of the tool posture and determines the corrected tool posture using an evaluation value that evaluates the quality of the tool path.
[0088] (Note 7) The computer, acting as a machining command correction device (20, 20A, 20B, 20C), A process for generating first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a coordinate system based on the workpiece and a coordinate system based on the machine tool, A process to correct the orientation of the tool based on the first machine coordinate information and generate second machine coordinate information, A process for calculating the interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, based on the second machine coordinate information, the machine configuration information, the tool shape information relating to the shape of the tool used for machining according to the first machining command, and the workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed, If there is no interference, the process of generating a second machining command based on the second machine coordinate information, A method for modifying machining instructions to execute this process. [Explanation of Symbols]
[0089] 10 Data Generation System 11 CAM device 12 CNC equipment 12 20,20A,20B,20C,30 Machining command correction device 21 Machining command analysis section 22, 31 Tool posture correction section 23, 32 Interference Calculation Unit 24 Machining command generation section 25 Constraint Setting Section 26 Modification completion determination section 27 Tool shape generation section 28. Selection of avoidance method section 29 Machining Simulation Department
Claims
1. A machining command analysis unit generates first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool in the machine coordinate system, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a work coordinate system based on the workpiece and a machine coordinate system based on the machine tool. A tool posture correction unit that corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, An interference calculation unit calculates the interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, based on the second machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. In the absence of the aforementioned interference, a machining command generation unit generates a second machining command based on the second machine coordinate information, Equipped with, The tool posture correction unit determines the corrected tool posture using an evaluation value that assesses the quality of the tool path. The interference calculation unit calculates the position and orientation of the tool described in the work coordinate system by transforming the second machine coordinate information using the machine configuration information, transforms the tool shape information to match the calculated position and orientation of the tool, and calculates the interference between the tool in the coordinate-transformed tool shape information and the workpiece in the shape of the workpiece, in a machining command modification device.
2. The machining command modification device according to claim 1, wherein the evaluation value used is at least one of the amount of movement of the drive shaft, the acceleration of the drive shaft, the energy consumed, and the machining time when the tool performs machining according to the tool path.
3. When interference is detected in the interference calculation unit, a constraint setting unit sets constraint conditions regarding the range of allowable tool posture changes, The system includes a modification completion determination unit that determines whether the modification of the tool path under the aforementioned constraints has been completed, The machining command modification device according to claim 1, wherein the tool posture modification unit modifies the first machine coordinate information within the limits of the constraints of the constraint conditions to generate the second machine coordinate information.
4. The interference calculation unit calculates the interference region where the tool having the shape of the tool shape information and the workpiece interfere, When interference is detected in the interference calculation unit, an avoidance method selection unit selects an interference avoidance method, The system includes a tool shape generation unit that generates new tool shape information relating to a new tool shape obtained by removing the interference region when interference is detected in the interference calculation unit, The avoidance method selection unit has at least two options for avoiding interference between the tool having the shape of the tool shape information and the workpiece: changing the tool path and generating new tool shape information. If the generation of new tool shape information is selected in the avoidance method selection unit, the tool posture correction unit corrects the posture of the tool using a tool having new tool shape information based on the first machine coordinate information and generates the second machine coordinate information, as described in claim 3.
5. The machining command modification device according to claim 1, further comprising a machining simulation unit that generates workpiece shape information based on the first machining command and the tool shape information.
6. A machining command analysis unit generates first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool in the machine coordinate system, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a work coordinate system based on the workpiece and a machine coordinate system based on the machine tool. An interference calculation unit calculates the interference between the tool and the workpiece when the machine tool operates according to the first machine coordinate information, based on the first machine coordinate information, the machine configuration information, tool shape information relating to the shape of the tool used for machining according to the first machining command, and workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed. A tool posture correction unit that corrects the posture of the tool based on the first machine coordinate information and generates second machine coordinate information, In the absence of the aforementioned interference, a machining command generation unit generates a second machining command based on the second machine coordinate information, Equipped with, The interference calculation unit calculates the position and orientation of the tool described in the work coordinate system by transforming the first machine coordinate information using the machine configuration information, transforms the tool shape information to match the calculated position and orientation of the tool, and calculates the interference between the tool in the transformed tool shape information and the workpiece in the workpiece shape. The interference calculation unit calculates the range of tool positions in which no interference occurs, The tool posture correction unit corrects the tool posture within the calculated range of the tool posture and determines the corrected tool posture using an evaluation value that evaluates the quality of the tool path.
7. A computer as a processing command correction device, A process for generating first machine coordinate information, which is the time-series change of the coordinates of each axis of the machine tool in the machine coordinate system, based on a first machining command describing the time-series change of the position and orientation of the tool, and machine configuration information for performing coordinate transformations between a work coordinate system based on the workpiece and a machine coordinate system based on the machine tool. A process to correct the orientation of the tool based on the first machine coordinate information and generate second machine coordinate information, A process for calculating the interference between the tool and the workpiece when the machine tool operates according to the second machine coordinate information, based on the second machine coordinate information, the machine configuration information, the tool shape information relating to the shape of the tool used for machining according to the first machining command, and the workpiece shape information relating to the shape of the workpiece obtained when the first machining command is executed, If there is no interference, the process of generating a second machining command based on the second machine coordinate information, Execute, A machining command modification method comprising: in the process of calculating interference between the tool and the workpiece, the second machine coordinate information is transformed using the machine configuration information to calculate the position and orientation of the tool described in the workpiece coordinate system; the tool shape information is transformed to match the calculated position and orientation of the tool; and the interference between the tool, whose shape has been transformed, and the workpiece is calculated.