Machining program correction device, machining system, and machining method
Patent Information
- Application Number
- JP2024538779
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-03-29
- Publication Date
- 2026-03-05
- Estimated Expiration
- 2044-03-29
AI Technical Summary
Existing machining programs for free-form surfaces in numerical control machining often result in surface quality deterioration due to errors in tool path calculations, leading to scratches and uneven surfaces, and require time, cost, and effort to obtain three-dimensional model data for improvement.
A machining program correction device that corrects tool paths by generating polygonal meshes, associating surrounding meshes with command points, and calculating evaluation values to optimize command points, allowing for high-quality machining without relying on three-dimensional model data.
Improves machined surface quality by correcting tool paths to align adjacent tool paths, reducing irregularities and maintaining accuracy, thus enhancing machining efficiency and reducing the need for time, cost, and effort associated with obtaining three-dimensional model data.
Smart Images

Figure 00000019_0000 
Figure 00000019_0001 
Figure 00000019_0002
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a machining program correction device, a machining system, and a machining method for correcting a machining program. [Background technology]
[0002] Machining by a numerically controlled (NC) machine tool uses a numerically controlled machining program in which movement commands for moving a workpiece or a tool along a preset path are described. Hereinafter, the numerically controlled machine tool will be simply referred to as a machine tool, and the numerically controlled machining program will be simply referred to as a machining program.
[0003] In machining free-form surfaces, most machining programs are generated by approximating curved tool paths with minute line segments using CAM (Computer Aided Manufacturing) functions. When a tool path is expressed with continuous minute line segments, if there is an error in the calculations of the CAM function, the shape of the tool path may change due to the influence of the error. If the shape of the tool path changes, the shapes of adjacent tool paths in the direction perpendicular to the tool path movement direction may become misaligned, causing scratches or streaks on the machined surface, which may result in a deterioration in the quality of the machined surface.
[0004] Patent Document 1 discloses a design enhancement method including the steps of acquiring 3D measurement data of a measured object, converting the acquired 3D measurement data of the measured object into measurement mesh data composed of a plurality of polygons, extracting a fillet portion having a shape change from the converted measurement mesh data, and replacing the fillet portion of the measurement mesh data with closed region mesh data corresponding to the fillet portion in 3D model data showing the shape of the measured object. In one example, the design enhancement method described in Patent Document 1 is applied to a first die, which is a measured object, to generate machining data, and machining is performed using this machining data to produce a second die in which deterioration of the quality of the machined surface due to unevenness in the shape of the tool path is improved. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] JP 2017-138704 A Summary of the Invention [Problem to be solved by the invention]
[0006] However, the high design method described in Patent Document 1 refers to three-dimensional model data of the object to be measured in order to improve the quality of the machined surface. For this reason, it is necessary to take time, cost, and effort to acquire three-dimensional model data in advance. This includes the time, cost, and effort to manufacture the object to be measured, since the object to be measured is the first mold. In addition, in one example, when three-dimensional model data cannot be acquired at a production site, the high design method described in Patent Document 1 cannot generate a processing program that enables high-quality processing. In other words, the high design method described in Patent Document 1 has a problem in that it is not possible to improve the quality of the machined surface unless three-dimensional model data of the object to be measured, which requires time, cost, and effort, is referenced.
[0007] The present disclosure has been made in consideration of the above, and has an object to provide a machining program correction device that can improve the quality of a machined surface without referring to three-dimensional model data. [Means for solving the problem]
[0008] In order to solve the above-mentioned problems and achieve the object, a machining program correction device according to the present disclosure corrects a machining program used in machining by a machine tool by correcting a tool path, which is a path along which a tool of the machine tool moves, and includes a mesh generation unit, a peripheral mesh extraction unit, and a command point correction unit. The mesh generation unit generates a polygonal mesh based on a plurality of command points indicating the position of the tool on the tool path. The peripheral mesh extraction unit associates one or more polygonal meshes existing within a determined range from the command point with each of the plurality of command points as peripheral meshes. The command point correction unit corrects each of the plurality of command points based on the associated peripheral meshes. Effect of the Invention
[0009] The machining program correction device according to the present disclosure provides an effect of improving the quality of the machined surface without referring to three-dimensional model data. [Brief description of the drawings]
[0010] [Figure 1] FIG. 1 is a diagram showing a machining program correction device according to a first embodiment and a machining system connected to the machining program correction device; [Diagram 2] FIG. 1 is a diagram showing an example of a functional configuration of a machining program correction device according to a first embodiment; [Diagram 3] FIG. 1 is a diagram showing an example of a tool path corrected by the machining program correcting device according to the first embodiment; [Figure 4] FIG. 1 is a diagram showing an example of a tool path corrected by the machining program correcting device according to the first embodiment; [Diagram 5]1 is a flowchart showing an example of an operation procedure of the machining program correction device according to the first embodiment. [Figure 6] FIG. 1 is a diagram showing an example of a polygonal mesh generated by a mesh generating unit of the machining program modifying device according to the first embodiment; [Figure 7] FIG. 1 is a diagram showing an example of a polygonal mesh generated by a mesh generating unit of the machining program modifying device according to the first embodiment; [Figure 8] FIG. 1 is a diagram for explaining extraction of peripheral meshes by a peripheral mesh extraction unit of the machining program modifying device according to the first embodiment; [Figure 9] FIG. 11 is a diagram for explaining a first example of calculation of an evaluation value at a target command point by an evaluation value calculation unit of the machining program correction device according to the first embodiment; [Figure 10] FIG. 11 is a diagram for explaining a second example of calculation of an evaluation value at a target command point by the evaluation value calculation unit of the machining program correction device according to the first embodiment; [Figure 11] FIG. 13 is a diagram showing an example in which a peripheral mesh of a target command point is projected in an optimal projection direction in which the total value of the projection area is minimized by the evaluation value calculation unit of the machining program correction device according to the first embodiment; [Figure 12] FIG. 13 is a diagram showing an example in which one of the sides of a peripheral mesh of a target command point is projected in an optimal projection direction by the evaluation value calculation unit of the machining program correction device according to the first embodiment; [Figure 13] FIG. 11 is a diagram for explaining calculation of a correction amount using an evaluation value of a first example by a command point correction unit of the machining program correction device according to the first embodiment; [Figure 14] FIG. 11 is a diagram for explaining calculation of a correction amount using an evaluation value of a second example by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 15] FIG. 11 is a diagram for explaining calculation of a correction amount using an evaluation value at a target command point in a second example by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 16] FIG. 13 is a diagram showing an example in which a target command point is corrected on a correction plane by a command point correction unit of the machining program correction device according to the first embodiment; [Figure 17] FIG. 13 is a diagram showing an example in which a command point of interest is corrected to fall within a determined distance by a command point correction unit of the machining program correction device according to the first embodiment; [Figure 18] An enlarged view of the correction position of the target command point in Figure 17. [Figure 19] FIG. 13 is a diagram showing an example of a result of correction using a first example evaluation value by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 20] FIG. 13 is a diagram showing an example of a result of correction using a first example evaluation value by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 21] FIG. 13 is a diagram showing an example of a result of correction using an evaluation value of a second example by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 22] FIG. 13 is a diagram showing an example of a result of correction using an evaluation value of a second example by the command point correction unit of the machining program correction device according to the first embodiment; [Figure 23] FIG. 13 is a diagram showing an example of a configuration of a processing system according to a second embodiment. [Figure 24] 11 is a flowchart showing an example of a procedure of a processing method according to a second embodiment. [Diagram 25] FIG. 1 is a block diagram showing an example of a hardware configuration for implementing a machining program correction device according to the first and second embodiments. [Figure 26] 1 is a flowchart showing an example of an operation procedure when the machining program correction device according to the first and second embodiments simulates machining. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A machining program modifying device, a machining system, and a machining method according to embodiments of the present disclosure will be described below in detail with reference to the drawings.
[0012] In the following embodiments, when a character indicates a vector, it is written as "character (vector)". Furthermore, a character represented by a symbol above it in a mathematical formula is written as "character (symbol above)" in the text. In one example, a character with a "^" above it in a mathematical formula is written as "character ^" in the text.
[0013] Embodiment 1 1 is a diagram showing a machining program correction device according to a first embodiment and a machining system connected to the machining program correction device. An example of the machining system 1 is a numerically controlled machining system. The machining system 1 is a system that machines a workpiece 8 by controlling a machine tool 7, which is a controlled device. The machine tool 7 machines the workpiece 8 with a tool 72 while moving the tool 72 relative to the workpiece 8.
[0014] The machining system 1 includes a CAM device 3 which is a machining program generating device, a numerical control device 5 which controls a machine tool 7, and the machine tool 7. The CAM device 3 is a computer system in which CAM software is installed. The CAM device 3 generates a machining program 4 for machining using a tool 72 based on a Computer Aided Design (CAD) model 2. In other words, the CAM device 3 generates the machining program 4 for machining a workpiece 8 using the machine tool 7. The CAD model 2 is shape data which specifies a target shape.
[0015] The numerical control device 5 generates a control signal 6 by executing the machining program 4. The numerical control device 5 sends the generated control signal 6 to a drive unit 71 of the machine tool 7. The machine tool 7 has a drive unit 71 and a tool 72. The drive unit 71 has a motor that drives the tool 72, and a servo amplifier that controls the motor in accordance with the control signal 6. The motor and the servo amplifier are not shown in the figure. The tool 72 is a member that performs machining on the workpiece 8 in contact or without contact. The machine tool 7 drives the tool 72 in accordance with the control signal 6 to machine the workpiece 8.
[0016] The machining program modification device 10 is connected to each of the CAM device 3 and the numerical control device 5 via a communication line. This allows the machining program modification device 10 to communicate with each of the CAM device 3 and the numerical control device 5. The communication via the communication line may be either wired communication or wireless communication. The machining program modification device 10 acquires the machining program 4 generated by the CAM device 3 and modifies the machining program 4. The machining program modification device 10 sends the modified machining program 4 to the numerical control device 5. The numerical control device 5 controls the machine tool 7 based on the modified machining program 4.
[0017] Next, the configuration of the machining program correction device 10 will be described. The machining program correction device 10 is a device that corrects the machining program 4 used in machining by the machine tool 7 by correcting the tool path. The tool path is a path along which the tool 72 is moved by the machine tool 7, and is a path along which the tool 72 is moved relative to the workpiece 8. In the first embodiment, the machining program correction device 10 generates a polygonal mesh based on a plurality of command points indicating the position of the tool 72 on the tool path, and for each of the plurality of command points, one or more polygonal meshes existing in a peripheral area that is a range determined from the command point are associated with each of the plurality of command points as peripheral meshes, and performs correction based on the peripheral mesh associated with each of the plurality of command points. When correcting each of the plurality of command points based on the peripheral mesh, the machining program correction device 10 may calculate an evaluation value for each of the plurality of command points, generate an evaluation model indicating the relationship between the evaluation value and the position of the command point, and correct the position of each of the plurality of command points so that the evaluation value for each of the plurality of command points is minimum or maximum based on the evaluation model. The machining program correction device 10 that performs such processing will be described below.
[0018] 2 is a diagram showing an example of a functional configuration of the machining program modifying device according to embodiment 1. The machining program modifying device 10 has a mesh generating unit 11, a surrounding mesh extracting unit 12, an evaluation value calculating unit 13, and a command point correcting unit 14.
[0019] The mesh generation unit 11 generates a polygonal mesh based on a plurality of command points indicating the position of the tool 72 on the tool path. Specifically, the mesh generation unit 11 obtains a tool path and a plurality of command points arranged on the tool path by analyzing the machining program 4. Each command point indicates the position of the tool 72 of the machine tool 7. The mesh generation unit 11 generates mesh information that expresses, with shell elements, the machined surface formed by the machine tool 7 by passing through the tool path. The mesh generation unit 11 outputs the tool path data and the generated mesh information to the surrounding mesh extraction unit 12.
[0020] The surrounding mesh extraction unit 12 associates one or more surrounding polygonal meshes with each of the multiple command points as surrounding meshes. Specifically, when one command point on a tool path obtained from the machining program 4 is set as a command point of interest, the surrounding mesh extraction unit 12 extracts a surrounding mesh at the command point of interest from the mesh information. The surrounding mesh extraction unit 12 outputs the tool path data and the surrounding mesh of the command point of interest to the evaluation value calculation unit 13.
[0021] The evaluation value calculation unit 13 calculates an evaluation value for each of the multiple command points of the tool path based on the tool path data and the peripheral meshes of each of the multiple command points. The evaluation value is a value used to extract an optimal correction amount from multiple correction amount candidates when the command point correction unit 14 calculates the correction amount of the target command point. The evaluation value calculation unit 13 outputs the tool path data and the evaluation value of the target command point to the command point correction unit 14.
[0022] The command point correction unit 14 corrects the command points based on the surrounding meshes for each of the multiple command points. Specifically, the command point correction unit 14 corrects the target tool path by correcting the command points of the target tool path based on the evaluation value. The command point correction unit 14 generates a corrected machining program 4C by correcting the target tool path. The corrected machining program 4C is the machining program 4 corrected by the correction of the target tool path. The machining program correction device 10 sends the corrected machining program 4C to the numerical control device 5.
[0023] 3 and 4 are diagrams showing an example of a tool path corrected by the machining program correction device according to the first embodiment. In these diagrams, a tool path 21 is drawn in an orthogonal coordinate system formed by an x-axis, a y-axis, and a z-axis that are orthogonal to each other. FIG. 3 shows an example of the tool path 21 for machining a target shape. FIG. 4 is an enlarged view of a part of the example of the tool path 21 shown in FIG. 3. In the example of the tool path 21 shown in FIG. 3 and FIG. 4, there is a portion where the trajectories of adjacent tool paths 21 are not aligned. The machine tool 7 moves a tool 72 sequentially in each of the multiple tool paths 21.
[0024] In Fig. 3 and Fig. 4, a plurality of command points 22 of the tool path 21 are indicated by black dots. The CAM device 3 generates a machining program 4 that approximates a curve along a free-form surface with infinitesimal line segments. A line segment LS between the command points 22 represents an infinitesimal line segment. Each tool path 21 is expressed by continuous infinitesimal line segments. Fig. 4 shows a state in which a tool path 21a among the plurality of tool paths 21 has a portion that is not aligned with other tool paths 21. Note that Fig. 3 and Fig. 4 are an example of data generated from the machining program 4 by the mesh generation unit 11, and are different from three-dimensional model data prepared in advance for a workpiece 8 that has already been machined.
[0025] Next, an operation of the machining program modifying device 10 will be described. Fig. 5 is a flowchart showing an example of an operation procedure of the machining program modifying device according to the first embodiment. The machining program modifying device 10 generates a polygonal mesh for a plurality of command points 22 on the tool path 21 (step S1). The mesh generation will be described later in detail.
[0026] Next, the machining program modifying device 10 designates one of the multiple command points 22 of the tool path 21 as a target command point (step S2). After that, the machining program modifying device 10 extracts a peripheral mesh at the target command point based on the polygon mesh information (step S3). Next, the machining program modifying device 10 calculates an evaluation value at the target command point based on the peripheral mesh information (step S4). In addition, the machining program modifying device 10 calculates a correction amount at the target command point based on the evaluation value, and corrects the target command point based on the correction amount (step S5). After that, the machining program modifying device 10 judges whether the target command point is the final command point 22 on the tool path 21 (step S6). If the target command point is not the final command point 22 on the tool path 21 (No in step S6), the machining program modifying device 10 designates one of the multiple command points 22 of the tool path 21 that has not been designated as the target command point (step S7), and the process returns to step S3. Moreover, if the command point of interest is the final command point 22 on the tool path 21 (Yes in step S6), the processing ends. Through the above procedure, the machining program modifying device 10 generates the modified machining program 4C.
[0027] Next, the operation of the mesh generating unit 11 will be described. Figs. 6 and 7 are diagrams showing an example of a polygonal mesh generated by the mesh generating unit of the machining program modifying device according to the first embodiment. The mesh generating unit 11 generates mesh information expressing the machined surface formed by the machine tool 7 by passing through the tool path 21 with shell elements. The mesh may be triangular shell elements, or shell elements of a polygon having four or more sides. Fig. 6 is an example in which a mesh is generated by triangular shell elements for the tool path 21 shown in Fig. 3.
[0028] The mesh generation unit 11 generates mesh information including vertices V, sides E connecting the vertices V with lines, and information on faces F of a closed region surrounded by the sides E. The vertices V of the mesh are command points 22 on the tool path 21. The sides E of the mesh may be straight lines or curved lines. The faces F of the mesh may be flat surfaces or curved surfaces. The triangular meshes in Figs. 6 and 7 are examples in which the vertices V of the mesh are command points 22 on the tool path 21, the sides E of the mesh are represented by straight lines, and the faces F of the mesh are represented by flat surfaces.
[0029] The mesh generation unit 11 generates a polygonal mesh such that, for each command point 22, at least one of the meshes including the command point 22 at its vertex V includes the immediately preceding and immediately succeeding command points 22. That is, the mesh generation unit 11 generates a polygonal mesh such that two command points 22 immediately preceding and immediately succeeding the command point 22 in the movement of the tool 72 are included at its vertex V. FIG. 7 is an enlarged view of a part of the mesh generation result shown in FIG. 6. Referring to FIG. 7, when one of the command points 22 on the tool path 21a is focused on, there are a plurality of meshes having the focused command point 22F, which is the focused command point 22, at its vertex V, and it can be confirmed that, among the plurality of meshes, there are two meshes having the command point 22A immediately preceding the focused command point 22F and the command point 22B immediately succeeding the focused command point 22F at their vertices V.
[0030] Furthermore, referring to FIG. 6 and FIG. 7, it can be seen that the orientation of the mesh faces F varies in a location where the trajectories of adjacent tool paths 21a are not aligned.
[0031] The mesh generation by the mesh generation unit 11 may be performed by Delaunay triangulation, or may be performed by the Zippered Polygon method or the Marching Cubes method, for example.
[0032] The mesh may be any quantity that represents a machining surface for machining a target shape, and is not limited to the one described in embodiment 1. Hereinafter, an example will be described in which a mesh is generated using triangular shell elements.
[0033] Next, the operation of the peripheral mesh extraction unit 12 will be described. FIG. 8 is a diagram for explaining the extraction of peripheral meshes by the peripheral mesh extraction unit of the machining program correction device according to the first embodiment. When one command point 22 on the tool path 21 obtained from the machining program 4 is set as a target command point 22F, the peripheral mesh extraction unit 12 extracts peripheral meshes 23 at the target command point 22F from the mesh information generated by the mesh generation unit 11. The peripheral mesh extraction unit 12 extracts all meshes having the target command point 22F as a vertex as peripheral meshes 23 at the target command point 22F. FIG. 8 is an example in which peripheral meshes 23 at the target command point 22F are extracted by the peripheral mesh extraction unit 12. As shown in FIG. 8, it can be seen that six peripheral meshes 23 can be extracted at the target command point 22F. In FIG. 8, the peripheral meshes 23 are hatched. The same applies to FIG. 9 and subsequent figures. Further, here, all meshes having the target command point 22F as a vertex are extracted as the peripheral meshes 23, but one mesh or multiple meshes having the target command point 22F as a vertex may be extracted as the peripheral meshes 23.
[0034] Next, the operation of the evaluation value calculation unit 13 will be described. The evaluation value calculation unit 13 calculates an evaluation value used when selecting one correction amount from a plurality of correction amounts for each of the target command points 22F. Here, a first example in which an evaluation value based on the area of a mesh is used as the evaluation value of the target command point 22F, and a second example in which an evaluation value based on the projected area of the mesh are used will be described.
[0035] (First example: When using an evaluation value based on the mesh area) 9 is a diagram for explaining a first example of calculation of an evaluation value at a target command point by the evaluation value calculation unit of the machining program correction device according to the first embodiment. The evaluation value calculation unit 13 calculates an evaluation value for each of the multiple command points 22 based on the area of one peripheral mesh 23 or the entire area of the multiple peripheral meshes 23. In this example, the evaluation value calculation unit 13 calculates the area for all of the target command point 22F (six peripheral meshes 23 in the example of FIG. 9) and calculates an evaluation value based on the sum of the areas of the individual peripheral meshes 23 thus calculated. Specifically, the evaluation value calculation unit 13 calculates an evaluation value for the position p of the target command point 22F based on the area of one peripheral mesh 23 or the entire area of the multiple peripheral meshes 23. i (vector) of the normal vector s of the jth surrounding mesh 23j of all m surrounding meshes 23 ij (Vector) is calculated as follows:
[0036]
number
[0037] In this case, p j1 (vector),p j2 (vector) is the position p of the target command point 22F i (vector) represents the coordinates of two vertices other than the target command point 22F of the j-th surrounding mesh 23j. ij Length of (vector) ||s ij (vector)∥ represents the area of the j-th surrounding mesh 23j. Then, the evaluation value calculation unit 13 calculates the sum of squares of the areas of the surrounding meshes 23 of the target command point 22F as an evaluation value f i,1It is calculated as in the following formula (2): where m is the total number of the peripheral meshes 23 of the command point of interest 22F, and j is an integer between 1 and m. Also, the superscript T means transposition.
[0038]
number
[0039] (Second example: When using an evaluation value based on the mesh's projected area) FIG. 10 is a diagram for explaining a second example of calculation of an evaluation value at a target command point by the evaluation value calculation unit of the machining program correction device according to the first embodiment. The evaluation value calculation unit 13 determines a projection plane PP for the peripheral mesh 23 at each of the multiple command points 22, and calculates an evaluation value of the command point 22 corresponding to the peripheral mesh 23 based on the projection area of the peripheral mesh 23 onto the determined projection plane PP. In this example, the evaluation value calculation unit 13 calculates an evaluation value based on the projection area of the peripheral mesh 23 at the target command point 22F projected in one direction. FIG. 10 is an example in which the evaluation value calculation unit 13 calculates the total value of the projection area of the peripheral mesh 23 at the target command point 22F projected in one direction as the evaluation value. The plane in FIG. 10 represents the projection plane PP. The evaluation value calculation unit 13 calculates the projection direction at the target command point 22F as h i (vector), the sum of squares of the projected areas of all the surfaces of the surrounding meshes 23 of the target command point 22F (in the example of FIG. 10, six surfaces) projected in the projection direction is the evaluation value f i,2 The evaluation value f is calculated as follows: i,2 is the projection direction h i (vector), so h i (vector) function form f i,2 (h i 10, the projection direction is perpendicular to the projection plane PP.
[0040]
number
[0041] Here, the evaluation value f that minimizes the projection area of the mesh is i,2 We will obtain such an evaluation value f i,2 Using the evaluation value f i,2 The correction amount of the target command point 22F calculated so as to minimize the projection area of the mesh is the one that minimizes the projection area of the mesh. In this case, the evaluation value calculation unit 13 calculates the evaluation value f i,2 However, there are an infinite number of projection directions in the xyz space, and even if the direction in which the projected area is small is selected, there are many projection directions to be calculated. Therefore, the evaluation value calculation unit 13 calculates the evaluation value f of the projected area when projected in a direction parallel to the sides constituting the peripheral mesh 23 of the target command point 22F. i,2 In the following, (A) the evaluation value f i,2 (B) the direction in which the evaluation value f i,2 We will explain the case where one of the sides for which is the smallest is set as the projection direction, and the case where .
[0042] (A) Evaluation value f in all directions i,2 If the direction where is the smallest is taken as the projection direction, The evaluation value calculation unit 13 calculates, as the optimal projection plane, a projection plane PP in which the projection area of one peripheral mesh 23 or the entire peripheral meshes 23 is the smallest for each of the multiple command points 22. In this example, the evaluation value calculation unit 13 calculates, as the optimal projection direction, a projection direction in which the total value of the projection area of the peripheral mesh 23 projected in one direction at the target command point 22F is the smallest. FIG. 11 is a diagram showing an example in which the evaluation value calculation unit of the machining program correction device according to the first embodiment projects the peripheral mesh of the target command point in the optimal projection direction in which the total value of the projection area is the smallest. The vector h in FIG. i (vector) represents the optimal projection direction, and the optimal projection direction h i The plane perpendicular to the vector represents the projection plane PP. The evaluation value calculation unit 13 calculates the optimal projection direction h i(Vector) is calculated as shown in the following formula (4).
[0043]
number
[0044] Here, h i (vector) is the evaluation value f i,2 The vector with length 1 that minimizes 3 represents a set of real numbers in the xyz space, and x (vector) represents a position vector in the xyz space.
[0045] (B) Evaluation value f of the edges of the surrounding mesh 23 i,2 If we take one of the edges for which is the smallest as the projection direction, The evaluation value calculation unit 13 calculates a plane perpendicular to a direction parallel to one of the sides of one of the peripheral meshes 23 or the entire peripheral meshes 23 for each of the multiple command points 22 as the optimal projection plane. In this example, the evaluation value calculation unit 13 calculates one of the sides of the peripheral meshes 23 at the target command point 22F in the optimal projection direction h i Specifically, the evaluation value calculation unit 13 calculates the total value of the projected areas obtained by projecting the faces of the surrounding mesh 23 onto each of the sides of the surrounding mesh 23 as the optimal projection direction h i FIG. 12 is a diagram showing an example in which one of the sides of the peripheral mesh of the target command point is projected in the optimal projection direction by the evaluation value calculation unit of the machining program correction device according to the first embodiment. The vector h i (vector) represents the optimal projection direction, and is in the same direction as one of the sides of the surrounding mesh 23. The evaluation value calculation unit 13 calculates the optimal projection direction h i (vector) is calculated as follows: j (vector) represents the j-th vertex coordinates of the surrounding mesh 23 other than the target command point 22F.
[0046]
number
[0047] Here, h i (vector) is the evaluation value f i,2 is an edge vector of the surrounding mesh 23 having a length of 1 such that
[0048] Optimal projection direction h in (A) or (B) i After calculating the vector, the evaluation value calculation unit 13 calculates an evaluation value f based on the projected area of one surrounding mesh 23 or the entire surrounding meshes 23 for each of the plurality of command points 22 onto the optimal projection plane. i,2 In this example, the evaluation value calculation unit 13 calculates the optimal projection direction h i The evaluation value f is calculated based on the projected area of the vector i,2 (h i Specifically, the evaluation value calculation unit 13 calculates the optimal projection direction h i The sum of the squares of the projected area projected onto (vector) is the evaluation value f i,2 (h i (vector)).
[0049] Next, the operation of the command point correction unit 14 will be described. The command point correction unit 14 calculates the correction amount of the command point of interest 22F based on the evaluation value at the command point of interest 22F, and corrects the command point of interest 22F. Here, a case will be described in which the command point correction unit 14 calculates the correction amount so that the evaluation value at the command point of interest 22F is minimum or maximum, and corrects the command point of interest 22F using this correction amount. The correction amount is the magnitude and direction of the movement amount of the position coordinate before and after correction. The command point correction unit 14 generates an evaluation model that indicates the relationship between the evaluation value and the position of the command point 22, i.e., the coordinate, and corrects each of the multiple command points 22, i.e., the position of the command point of interest 22F, so that the evaluation value of the command point of interest 22F is minimum or maximum based on the evaluation model for each of the multiple command points 22, i.e., the command point of interest 22F. The evaluation model may be, for example, a linear minimum problem without constraints, or may be treated as a constrained or nonlinear problem.
[0050] Position p of the target command point 22F i Position p' of the target command point 22Fa after correction of (vector) i (vector), and the normal vector s of the surrounding mesh 23 ij (Vector) is the correction amount d i These can be expressed as functions of (vector) as shown in the following equations (6) and (7), respectively.
[0051]
number
[0052]
number
[0053] Correction amount d i The calculation of (vector) differs between the first example, which uses an evaluation value based on the area of the mesh, and the second example, which uses an evaluation value based on the projected area of the mesh. In the following, the correction amount d i The calculation of (vector) will be explained step by step.
[0054] (First example: Evaluation value f based on the area of the mesh i,1 (When using An evaluation value f based on the area of the surrounding mesh 23 at the target command point 22F i,1 In the first example, the evaluation value f of the target command point 22F is i,1 The correction amount d i It is calculated as a function of (vector) using the following equation (8).
[0055]
number
[0056] The command point correction unit 14 calculates the evaluation value f i,1 When correcting the target command point 22F based on the evaluation value f i,1 The correction amount d that minimizes the sum of squares of the area of the surrounding mesh 23 is i (vector) and calculate the correction amount d i (vector) to correct the target command point 22F. Note that the evaluation value f i,1 The normal vector s of the j-th surrounding mesh 23j of the surrounding mesh 23 in the formula for calculating ij (vector) is the position p' of the corrected target command point 22Fa as shown in equation (7). i (vector). In other words, the formula (8) is the evaluation value f i,1 and the position of the command point 22. i,1 When correcting the target command point 22F based on the evaluation value f i,1 The correction amount d is calculated as shown in the following equation (9) so that i Calculate (vector).
[0057]
number
[0058] 13 is a diagram for explaining calculation of a correction amount using an evaluation value of the first example by the command point correction unit of the machining program correction device according to the first embodiment. The command point correction unit 14 calculates a correction amount using an evaluation value f of the first example based on the area of the peripheral mesh 23 of the target command point 22F of the first example. i,1 The command point correction unit 14 calculates the correction amount based on the evaluation value f i,1 The correction amount d calculated so that i (vector), the position p of the target command point 22F i (vector) is corrected. As a result, the position p i (vector) is the position p' of the target command point 22Fa after correction i (vector). The surrounding mesh 23 also becomes a surrounding mesh 23C after correction, with the corrected target command point 22Fa as a vertex. As a result of this correction, the evaluation value f i,1 It can be seen that the sum of squares of the mesh area is smaller than that in FIG.
[0059] (Second example: Evaluation value f based on the projected area of the mesh i,2 (When using In addition, an evaluation value f based on the projected area of the surrounding mesh 23 at the target command point 22F is i,2 In the second example using the evaluation value f of the target command point 22F, the command point correction unit 14 i,2 The correction amount d i (vector), and the projection direction h i It is calculated as a function of (vector) using the following equation (10).
[0060]
number
[0061] The evaluation value f of equation (10) i,2 The normal vector s of the j-th surrounding mesh 23j of the surrounding mesh 23 in the formula for calculating ij(vector) is the position p' of the corrected target command point 22Fa as shown in equation (7). i (vector). In other words, the formula (10) is the evaluation value f i,2 and the position of the command point 22. The command point correction unit 14 calculates the evaluation value f i,2 Now, the evaluation value f at the target command point 22F is i,2 The correction amount d is minimized. i (Vector) is calculated as shown in the following equation (11).
[0062]
number
[0063] 14 is a diagram for explaining calculation of a correction amount using an evaluation value of a second example by the command point correction unit of the machining program correction device according to the first embodiment. The command point correction unit 14 calculates a peripheral mesh 23 of a target command point 22F according to the second example in an optimal projection direction h i Based on the projected area projected onto (vector), that is, the evaluation value f of the target command point 22F in the second example i,2 The command point correction unit 14 calculates the correction amount based on the evaluation value f i,2 The correction amount d calculated so that i (vector), and the position p of the target command point 22F as shown in FIG. i (vector) is corrected. As a result, the position p i (vector) is the position p' of the target command point 22Fa after correction i (vector). The surrounding mesh 23 also becomes a surrounding mesh 23C after correction, with the corrected target command point 22Fa as a vertex. As a result of this correction, the evaluation value f i,2 It can be seen that the sum of squares of the projected area of the mesh is smaller than that in FIG.
[0064] In the second example, one of the edges of the surrounding mesh 23 at the target command point 22F is projected in the optimal projection direction h i (vector), the optimal projection direction h i (vector) can be fixed to the direction of the edge before correction, or the optimal projection direction h i (vector) may be updated. In the second example, the optimal projection direction h i When updating the vector in accordance with the direction of the side that changes due to the correction, the command point correction unit 14 updates the optimal projection direction h i (vector) is the correction amount d i It is calculated as a function of (vector) using the following equation (12).
[0065]
number
[0066] At this time, the command point correction unit 14 calculates the evaluation value f i,2 , and the correction amount d i (vector) are calculated as in the following equations (13) and (14). Note that equation (13) is the same as equation (10) in that it is possible to calculate the evaluation value f i,2 and the position of the command point 22.
[0067]
number
[0068]
number
[0069] 15 is a diagram for explaining calculation of a correction amount using an evaluation value at a target command point in the second example by the command point correction unit of the machining program correction device according to the first embodiment. i15, the command point correction unit 14 updates the evaluation value f of the target command point 22F in the second example according to the direction of the side that changes due to the correction. i,2 The surrounding mesh 23 is projected in the optimal direction h i The correction amount is calculated based on the projected area of the target command point 22F projected onto the vector. i (vector) is corrected by the calculated correction amount, and the position p' of the target command point 22Fa after correction is i (vector). The surrounding mesh 23 also becomes a corrected surrounding mesh 23C having the corrected target command point 22Fa as a vertex. The optimal projection direction h i The optimal projection direction h is the direction of the edge of the corrected surrounding mesh 23C corresponding to the edge that became (vector). i (vector) is updated as shown in FIG. 15. This update results in the evaluation value f i,2 It can be seen that the sum of squares of the projected area of the mesh is reduced by the correction.
[0070] In the above, the evaluation value f based on the area of the mesh in the first example by the command point correction unit 14 is i,1 , or the evaluation value f based on the projected area of the mesh in the second example i,2 In the above, the calculation of the correction amount of the focus command point 22F based on the above has been described. When calculating the correction amount, the command point correction unit 14 may set a constraint on the area in which the corrected focus command point 22F exists. The constraints include a constraint to correct the focus command point 22F so that it exists on a correction plane that is a specified plane, and a constraint to correct the distance of the corrected focus command point 22F from the focus command point 22F to within a range of a determined correction distance. Note that this is just an example, and other constraints may be set.
[0071] In calculating the correction amount based on the evaluation value, the command point correction unit 14 may correct the command point 22 under the restriction that the command point 22 and the command points 22 immediately before and immediately after the command point 22 are included in one plane for each of the multiple command points 22. Fig. 16 is a diagram showing an example in which a command point of interest is corrected on a correction plane by the command point correction unit of the machining program correction device according to the first embodiment. In Fig. 16, the command point correction unit 14 may calculate a plane passing through the command point of interest 22F, the command point 22A immediately before the command point of interest 22F, and the command point 22B immediately after the command point of interest 22F as a correction plane CP, and may correct the command point of interest 22F to move on the correction plane CP.
[0072] However, when the target command point 22F, the command point 22A immediately before the target command point 22F, and the command point 22B immediately after the target command point 22F are on the same straight line, the correction plane CP cannot be uniquely determined. Therefore, when these three points are on the same straight line, a plane passing through any one of the x-axis, y-axis, and z-axis and a straight line passing through the three points may be calculated as the correction plane CP, or the correction plane CP may be calculated by enlarging the command points 22 until the correction plane CP can be calculated, such as the command point 22C two points before the target command point 22F or the command point 22D two points after the target command point 22F.
[0073] The plane in FIG. 16 represents the correction plane CP, and the vector is the correction amount d i (vector). The command point correction unit 14 calculates the correction amount d i (Vector) is calculated as shown in the following equation (15).
[0074]
number
[0075] where v i1 ^(vector),v i2 ^(vector) is a basis vector with length 1 on the correction plane CP, and u i1 ,u i2 is each basis vector v for adjusting the correction amount.i1 ^(vector),v i2 ^ is a real coefficient for (vector). Such a correction amount d i By correcting the command point of interest 22F with (vector), the command point of interest 22Fa after correction is present on the correction plane CP. In other words, the command point of interest 22F can be corrected within the correction plane CP, which is a plane passing through the command points 22 on the tool path 21a in the range shown in FIG.
[0076] Furthermore, in calculating the correction amount based on the evaluation value, the command point correction unit 14 may perform correction for each of the multiple command points 22 within a range in which the correction amount falls within a determined distance. In other words, the command point correction unit 14 may perform correction so that the target command point 22F falls within a determined distance. In one example, the command point correction unit 14 calculates a correction amount d for the target command point 22F within a correction distance r, which is a determined distance. i (Vector) is calculated as shown in the following equation (16).
[0077]
number
[0078] Fig. 17 is a diagram showing an example in which a command point of interest is corrected to fall within a determined distance by the command point correction unit of the machining program correction device according to the first embodiment. Fig. 18 is a diagram showing an enlarged view of the vicinity of the corrected position of the command point of interest in Fig. 17. When there is no restriction on the correction, the command point of interest 22F moves to a command point of interest 22Fa after the correction by the correction, but when there is a restriction, that is, when the command point of interest is corrected to fall within a restriction sphere 24 of the correction distance r, the command point of interest moves to a command point of interest 22Fb after the correction by the correction. By setting a restriction in this way, excessive correction can be suppressed.
[0079] The command point correction unit 14 sequentially performs correction on the command points 22 on the tool path 21, and may end by correcting all the command points 22 once, or may repeat the correction multiple times. When performing correction multiple times, the correction distance from the position immediately before correction may be corrected to fall within a determined distance, or may be limited to a distance based on the position when no correction is performed.
[0080] The command point correction unit 14 may perform correction for all command points 22 on the tool path 21, or may select only specific command points 22 as correction targets and correct only the correction targets. The correction targets may be selected based on the evaluation value of each command point 22, or may be selected based on the machining shape. By correcting only specific command points 22, the processing speed can be increased.
[0081] Here, an example of the correction result when the evaluation values of the first and second examples are used will be shown.
[0082] (First example: When using an evaluation value based on the mesh area) 19 and 20 are diagrams showing an example of a result of correction using the evaluation value of the first example by the command point correction unit of the machining program correction device according to the first embodiment. FIG. 19 is an example of a tool path 21C in which the command point 22 is corrected by the command point correction unit 14. FIG. 20 is an enlarged view of a part of the tool paths 21, 21C in FIG. 19. In FIG. 19 and FIG. 20, the solid line indicates the corrected tool path 21C, and the dotted line indicates the tool path 21 of the machining program 4 shown in FIG. 3 and FIG. 4. It can be confirmed that the misalignment of the trajectories of the adjacent tool paths 21C can be suppressed by the correction, as shown in FIG. 19 and FIG. 20, compared with the tool path 21 before correction in FIG. 3 and FIG. 4.
[0083] (Second example: When using an evaluation value based on the mesh's projected area) 21 and 22 are diagrams showing an example of a result of correction using the evaluation value of the second example by the command point correction unit of the machining program correction device according to the first embodiment. FIG. 21 is an example of a tool path 21C in which a command point 22 is corrected by the command point correction unit 14. FIG. 22 is an enlarged view of a part of the tool paths 21 and 21C in FIG. 21. In FIGS. 21 and 22, the solid line indicates the corrected tool path 21C, and the dotted line indicates the tool path 21 of the machining program 4 shown in FIGS. 3 and 4. It can be confirmed that the misalignment of the trajectories of the adjacent tool paths 21C can be suppressed by the correction as shown in FIGS. 21 and 22, compared with the tool path 21 before correction in FIGS. 3 and 4. In addition, it can be seen that the trajectory error caused by the inward rotation of the tool path 21C is suppressed compared with the correction results in FIGS. 19 and 20, and the accuracy can be maintained while suppressing the misalignment of the trajectories.
[0084] In the above description, an example was shown in which the command point correction unit 14 calculates the correction amount with which the evaluation value becomes minimum. This is because an evaluation value calculated based on the area of the surrounding mesh 23 or the projected area of the surrounding mesh 23 is used. In the first embodiment, any evaluation value can be used as long as it indicates the degree of unevenness occurring in the shapes of the tool paths 21 adjacent to each other in a direction perpendicular to the traveling direction of the tool paths 21. When using an evaluation value in which the degree of unevenness in the shapes of the adjacent tool paths 21 decreases as the value becomes higher, that is, the shapes of the adjacent tool paths 21 become uniform, the command point correction unit 14 calculates the correction amount with which the evaluation value becomes maximum.
[0085] In the above description, the machining program modifying device 10 acquires the data of the tool path 21 from the machining program 4 provided by the machining system 1 to generate the modified machining program 4C. However, the machining program modifying device 10 may be provided with the data of the tool path 21 from the machining system 1 and generate the modified machining program 4C based on the provided data of the tool path 21.
[0086] The machining program 4 used in the machining program modification device 10 of embodiment 1 may be intended for machining in three orthogonal axes, or may be intended for machining in four or more axes including a rotary axis.
[0087] In the machining program modifying device 10 according to the first embodiment, the mesh generating unit 11 obtains the tool path 21 and a plurality of command points 22 arranged on the tool path 21 by analyzing the machining program 4, and generates a polygonal mesh for the obtained command points 22. However, this is not limited to this, and the mesh generating unit 11 may obtain the tool path 21 and a plurality of command points 22 arranged on the tool path 21 by analyzing the machining program 4, and then may additionally interpolate the command point 22 on the tool path 21, and generate a polygonal mesh for the obtained command point 22 and the interpolated command point 22. In other words, the interpolated command point 22 is also set as the command point 22 indicating the position of the tool 72.
[0088] According to the first embodiment, the machining program correction device 10 includes a mesh generation unit 11 that generates a polygonal mesh based on a command point 22 indicating the position of the tool 72, a peripheral mesh extraction unit 12 that associates one or more polygonal meshes around the command point 22 as peripheral meshes 23 with each of the command points 22, and a command point correction unit 14 that corrects the command point 22 based on the peripheral mesh 23 for each of the command points 22. This has the effect of providing a corrected machining program 4C that can perform high-quality machining without using three-dimensional model data indicating the shape of the workpiece 8 as in Patent Document 1. In addition, unlike Patent Document 1, it is not necessary to previously manufacture a workpiece that is the basis of the workpiece 8 before forming the workpiece 8, so that the user does not need to spend time, money, and effort to manufacture the original workpiece, and also does not need to spend time, money, and effort to obtain three-dimensional model data of the original workpiece. In other words, it is possible to shorten the time required for manufacturing the workpiece 8 compared to the conventional method. Furthermore, it is possible to reduce machining defects that occur at an actual machining site, and to reduce the time, cost and effort required to manufacture a workpiece, thereby improving the user's work efficiency.
[0089] Furthermore, the machining program correction device 10 according to the first embodiment obtains a correction amount for the command point of interest 22F based on an evaluation value calculated from the surrounding mesh 23 for the point of interest on the tool path 21, and corrects the tool path 21. The machining program correction device 10 is capable of performing correction to minimize or maximize the evaluation value of the command point of interest 22F. Therefore, the machining program correction device 10 can reduce the irregularity of the tool path 21. As described above, the machining program correction device 10 has an effect of being able to provide a corrected machining program 4C that can improve the quality of the machined surface. In other words, it has an effect of being able to provide a corrected machining program 4C that can perform high-quality machining while maintaining accuracy, without using three-dimensional model data showing the shape of the workpiece 8 as in Patent Document 1.
[0090] Embodiment 2 FIG. 23 is a diagram showing an example of the configuration of a machining system according to the second embodiment. The machining system 1A includes a CAM device 3, a machining program correction device 10, a numerical control device 5, and a machine tool 7. In the second embodiment, the same components as those in the first embodiment are given the same reference numerals, and the configuration different from the first embodiment will be mainly described. In the first embodiment, the machining program correction device 10 exists outside the machining system 1 and is connected to the machining system 1 by a communication line, but in the second embodiment, the machining program correction device 10 is built into the machining system 1A. Therefore, the machining program correction device 10 acquires the machining program 4 from the CAM device 3 and outputs the corrected machining program 4C to the numerical control device 5.
[0091] FIG. 24 is a flow chart showing an example of the procedure of the machining method according to the second embodiment. This machining method is executed by the machining system 1A shown in FIG. 23. First, a machining program generating step is performed in which the CAM device 3, which is a machining program generating device, generates a machining program 4 for machining a workpiece 8 using a machine tool 7 (step S21). Next, a machining program correcting step is performed in which the machining program correcting device 10 corrects the machining program 4 (step S22). After that, a control step is performed in which the numerical control device 5 controls the machine tool 7 based on the corrected machining program 4C, which is the corrected machining program 4 (step S23). Then, a machining step is performed in which the machine tool 7 drives the tool 72 according to an instruction from the numerical control device 5 to machine the workpiece 8 (step S24). This ends the machining method.
[0092] The machining system 1A is equipped with the machining program correction device 10 according to the first embodiment, and thereby has the effect of improving the quality of the machined surface by using a modified machining program 4C capable of high-quality machining while maintaining accuracy, without using three-dimensional model data indicating the shape of the workpiece 8 as in Patent Document 1.
[0093] Instead of having the machining program correction device 10, the machining system 1A may realize the machining program correction method similar to that of the first embodiment by using a CAM device 3 having the function of the machining program correction device 10 or a numerical control device 5 having the function of the machining program correction device 10. In this case, the machining system 1A can also improve the quality of the machined surface. In addition, in the numerical control device 5 having the function of the machining program correction device 10, it is not always necessary to generate the corrected machining program 4C, and it may be performed together with the process of analyzing the machining program 4 in the numerical control device 5.
[0094] Next, a description will be given of hardware for realizing the machining program modifying device 10 according to the first and second embodiments. Fig. 25 is a block diagram showing an example of a configuration of hardware for realizing the machining program modifying device according to the first and second embodiments.
[0095] The main part of the machining program modifying device 10 is realized by a processing circuit 61 having a processor 63 and a memory 64. The main parts of the machining program modifying device 10 are a mesh generating unit 11, a surrounding mesh extracting unit 12, an evaluation value calculating unit 13, and a command point correcting unit 14.
[0096] The input unit 62 is a circuit that receives an input signal for the machining program modification device 10 from the outside. The input unit 62 receives the machining program 4. The output unit 65 is a circuit that outputs a signal generated by the machining program modification device 10 to the outside. The output unit 65 outputs the modified machining program 4C. The display unit 66 is a display that displays information.
[0097] The processor 63 is a central processing unit (CPU). The processor 63 may be an arithmetic unit, a microprocessor, a microcomputer, or a digital signal processor (DSP). The memory 64 is, for example, a non-volatile or volatile memory such as a random access memory (RAM), a read only memory (ROM), a flash memory, an erasable programmable read only memory (EPROM), or an electrically erasable programmable read only memory (EEPROM (registered trademark)).
[0098] The processor 63 executes a machining program correction program, which is a computer program. The machining program correction program is a program in which processes for operating as each part constituting the main part of the machining program correction device 10 are described. The machining program correction program is stored in advance in the memory 64. The processor 63 reads out and executes the machining program correction program stored in the memory 64, thereby operating as each part constituting the main part of the machining program correction device 10.
[0099] The machining program modification program is assumed to be stored in advance in the memory 64, but is not limited to this. The machining program modification program may be provided to a user of the machining program modification device 10 in a state in which it is written in a storage medium that can be read by a computer system, and may be installed in the memory 64 by the user. The storage medium may be a portable storage medium such as a flexible disk, or a flash memory such as a semiconductor memory. The machining program modification program may be installed in the memory 64 from another computer or a server device via a communication network.
[0100] The machining program modifying device 10 corrects the tool path 21 in real time when the machine tool 7 is machining, and generates a modified machining program 4C. The machining program modifying device 10 may correct the tool path 21 when not machining, and may generate the modified machining program 4C when not machining. The machining program modifying device 10 may test machining performance by simulating machining by the machine tool 7 based on the corrected tool path 21.
[0101] 26 is a flowchart showing an example of an operation procedure when the machining program modifying device according to the first and second embodiments simulates machining. First, the machining program modifying device 10 generates a model of a machined product by simulating machining in the processor 63 (step S41). In one example, the machining program modifying device 10 performs a simulation of machining using the modified machining program 4C. Next, the machining program modifying device 10 stores the generated model in the memory 64 (step S42).
[0102] Thereafter, the machining program modifying device 10 generates an image of the processed product by rendering the model in the processor 63 (step S43). Then, the machining program modifying device 10 displays the image on the display unit 66 (step S44). With the above, the machining program modifying device 10 ends the operation according to the procedure shown in Fig. 26. By comparing the displayed image with the CAD model 2, the user can verify the corrected tool path 21 before performing actual machining.
[0103] The configurations shown in the above embodiments are merely examples, and may be combined with other known technologies, or the embodiments may be combined with each other. Also, parts of the configurations may be omitted or modified without departing from the spirit of the invention. [Explanation of symbols]
[0104] 1,1A Machining system, 2 CAD model, 3 CAM device, 4 Machining program, 4C Modified machining program, 5 Numerical control device, 6 Control signal, 7 Machine tool, 8 Workpiece, 10 Machining program modification device, 11 Mesh generation unit, 12 Surrounding mesh extraction unit, 13 Evaluation value calculation unit, 14 Command point correction unit, 21,21a,21C Tool path, 22 Command point, 22A Command point immediately before the command point of interest 22F, 22B Command point immediately after the command point of interest 22F, 22C Command point two points before the command point of interest 22F, 22D Command point two points after the command point of interest 22F, 22F Command point of interest, 22Fa,22Fb Corrected command point of interest, 23 Surrounding mesh, 23C Corrected surrounding mesh, 23j jth surrounding mesh, 24 Constraint sphere, 61 Processing circuit, 62 Input section, 63 processor, 64 memory, 65 output section, 66 display section, 71 drive section, 72 tool, CP correction plane, E mesh edge, F mesh face, LS line segment, PP projection plane, V mesh vertex.
Claims
1. A machining program correction device that corrects a machining program used for machining by a machine tool by correcting a tool path, which is a path along which a tool of the machine tool moves, comprising: a mesh generation unit that generates a polygonal mesh based on a plurality of command points that indicate the position of the tool on the tool path; a peripheral mesh extraction unit that associates, with each of the plurality of command points, one or more polygonal meshes that exist within a predetermined range from the command point as peripheral meshes; a command point correction unit that corrects each of the plurality of command points based on the associated surrounding mesh; A machining program correction device comprising:
2. further comprising an evaluation value calculation unit that calculates an evaluation value for each of the plurality of command points; The evaluation value calculation unit determining a projection plane for the surrounding mesh at each of the plurality of command points; 2. The machining program modifying device according to claim 1, wherein the evaluation value of each of the plurality of command points corresponding to the peripheral mesh is calculated based on the determined projected area of the peripheral mesh onto the projection plane.
3. The evaluation value calculation unit calculating a projection plane in which the projection area of one of the peripheral meshes or all of the peripheral meshes is smallest for each of the plurality of command points as an optimal projection plane; 3. The machining program modifying device according to claim 2, wherein the evaluation value is calculated based on the projected area of one of the peripheral meshes or all of the peripheral meshes projected onto the optimal projection plane for each of the plurality of command points.
4. The evaluation value calculation unit For each of the plurality of command points, a plane perpendicular to a direction parallel to one of the edges of one of the surrounding meshes or all of the plurality of surrounding meshes is calculated as an optimal projection plane; 3. The machining program modifying device according to claim 2, wherein the evaluation value is calculated based on the projected area of one of the peripheral meshes or all of the peripheral meshes projected onto the optimal projection plane for each of the plurality of command points.
5. 2. The machining program modifying device according to claim 1, further comprising an evaluation value calculation unit that calculates an evaluation value for each of the plurality of command points based on the area of one of the surrounding meshes or the entire area of the plurality of surrounding meshes.
6. The command point correction unit generating an evaluation model indicating a relationship between the evaluation value and the position of the command point; 3. The machining program correcting device according to claim 2, wherein the positions of the plurality of command points are corrected so that the evaluation value for each of the plurality of command points becomes minimum or maximum based on the evaluation model.
7. 2. The machining program correction device according to claim 1, wherein the command point correction unit corrects the position of each of the plurality of command points under the restriction that the command point and the command points immediately before and immediately after the command point are included in one plane.
8. 2. The machining program correcting device according to claim 1, wherein the command point correcting unit corrects the positions of the plurality of command points within a range in which a correction amount falls within a predetermined distance.
9. 2. The machining program modifying device according to claim 1, wherein the mesh generating unit generates the polygonal mesh so that the polygonal mesh includes, as vertices, two command points immediately before and immediately after the command point in the movement of the tool.
10. a machine tool that drives a tool to machine a workpiece; a machining program generation device that generates a machining program for machining the workpiece using the machine tool; a machining program modifying device according to any one of claims 1 to 9, which modifies the machining program; a numerical control device that controls the machine tool based on the modified machining program; A processing system comprising:
11. A machining method in a machining system including a machine tool that drives a tool to machine a workpiece, a machining program generating device, the machining program correcting device according to any one of claims 1 to 9, and a numerical control device, comprising: a machining program generation step in which the machining program generation device generates a machining program for machining the workpiece using the machine tool; a machining program correcting step in which the machining program correcting device corrects the machining program; a control step in which the numerical control device controls the machine tool based on the modified machining program; a machining step in which the machine tool drives the tool in accordance with instructions from the numerical control device to machine the workpiece; A processing method comprising: