Processing program correction device, processing program correction method, and processing system
By calculating the characteristic quantities of the toolpath and extracting similar points for correction, the problem of machining surface quality caused by inconsistent toolpaths was solved, resulting in improved machining surface quality and reduced workload.
Patent Information
- Application Number
- CN202180092193.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-02-17
- Publication Date
- 2026-01-02
- Estimated Expiration
- 2041-02-17
AI Technical Summary
In CNC machining of freeform surfaces, scratches or streaks appear on the machined surface due to inconsistent tool path shapes. Existing technologies are unable to effectively improve the quality of the machined surface, and the workload for operators is also heavy.
By calculating the feature quantities on the toolpath, similar points are extracted and corrected to generate a modified machining program, thereby reducing inconsistencies and errors between toolpaths.
It improves the quality of the machined surface, reduces the error of the tool path relative to the machined surface, and reduces the workload of the operator.
Smart Images

Figure CN116802573B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to a machining program correction device, a machining program correction method, and a machining system that correct a machining program. BACKGROUND
[0002] In machining by a numerical control working machine, a numerical control machining program in which a movement command for moving a workpiece or a tool in a path set in advance is described is used. Hereinafter, the numerical control working machine will be simply referred to as a "working machine". The numerical control machining program will be simply referred to as a "machining program".
[0003] In machining of a free-form surface, the machining program is mostly generated by approximating a tool path constituted by a curve with minute line segments by a CAM (Computer Aided Manufacturing) function. In a case where the tool path is expressed by continuous minute line segments, when there is an error in the operation of the CAM function, sometimes the shape of the tool path changes due to the influence of the error. In a case where the shape of the tool path changes, adjacent tool paths to each other in a direction perpendicular to the advancing direction of the tool path become inconsistent in the shape of the tool path, and thus sometimes the quality of the machined surface is reduced due to the occurrence of a scratch or a streak mark on the machined surface.
[0004] As a technique for improving the reduction in the quality of the machined surface caused by the inconsistency in the shape of the tool path, in Patent Literature 1, a technique is proposed in which the command points of the tool path are corrected by smoothing processing for a plurality of tool paths respectively. The machining program correction device disclosed in Patent Literature 1 smoothes each tool path in a direction perpendicular to the advancing direction of the tool path, and thereby reduces the inconsistency in the shape of the tool path in adjacent tool paths to each other.
[0005] Patent Literature 1: Japanese Patent Application Publication No. 2020-67863 SUMMARY
[0006] According to the prior art related to Patent Document 1, in a case where there is unevenness at a position adjacent to a tool path among a machined surface, an error of the tool path with respect to the machined surface is sometimes generated by smoothing. In order to prevent the error of the tool path generated by correction, an operator who performs the work of correcting the machining program sometimes sets a site where correction is not needed in advance. Alternatively, the machining program correction device can add a process of monitoring the curvature or the like of the machined surface and setting not to perform correction in a case where it is determined that correction is not needed. Setting the site where correction is not needed by the operator makes the work burden of the operator large and is difficult to achieve. In addition, in a case where the machining program correction device determines whether or not correction is needed and does not perform correction in a case where it is determined that correction is not needed, the inconsistency of the shape of the tool path in the adjacent tool paths is sometimes further deteriorated. As described above, according to the prior art, there is a problem that it is difficult to improve the quality of the machined surface.
[0007] The present application has been made in view of the above circumstances, and has an object to obtain a machining program correction device capable of improving the quality of a machined surface.
[0008] In order to solve the above problem and achieve the object, a machining program correction device according to the present application corrects a tool path in which a tool is moved by a working machine, thereby correcting a machining program for performing machining by the working machine. The machining program correction device according to the present application has: a first characteristic amount calculation section that calculates a first characteristic amount that represents a characteristic of a command point on the tool path, with respect to the command point that represents a position of the tool in a control cycle of the working machine; a similar point calculation section that extracts an object path to be corrected and an adjacent path adjacent to the object path, from a plurality of tool paths arranged in a direction different from a traveling direction of the tool path, and calculates a similar point that is a command point similar to a command point of the object path, from a plurality of command points of the adjacent path, on the basis of the first characteristic amount of the command point of the object path and the first characteristic amount of the command point of the adjacent path; and a correction section that corrects the object path on the basis of the similar point.
[0009] Effects of the Invention
[0010] The machining program correction device according to the present application has an effect that the quality of a machined surface can be improved. BRIEF DESCRIPTION OF DRAWINGS
[0011] Figure 1 is a view that shows a machining program correction device according to Embodiment 1 and a machining system connected to the machining program correction device.
[0012] Figure 2 is a view that shows a functional structure of the machining program correction device according to Embodiment 1.
[0013] Figure 3 is a diagram showing an example of a tool path corrected by the machining program correction device according to Embodiment 1.
[0014] Figure 4 is a flowchart showing a sequence of actions of the machining program correction device according to Embodiment 1.
[0015] Figure 5 is a diagram for explaining a first characteristic amount calculated by the first characteristic amount calculation section of the machining program correction device according to Embodiment 1.
[0016] Figure 6 is a diagram for explaining extraction of an object path and a neighboring path performed by the similar point calculation section of the machining program correction device according to Embodiment 1.
[0017] Figure 7 is a diagram for explaining a method of calculating a similar point by the similar point calculation section of the machining program correction device according to Embodiment 1.
[0018] Figure 8 is a diagram showing an example of a similar point calculated by the similar point calculation section of the machining program correction device according to Embodiment 1.
[0019] Figure 9 is a flowchart showing a sequence of actions of the similar point calculation section constituting the machining program correction device according to Embodiment 1.
[0020] Figure 10 is a diagram for explaining creation of a similar point route performed by the correction section of the machining program correction device according to Embodiment 1.
[0021] Figure 11 is a flowchart showing a sequence of actions when the correction section of the machining program correction device according to Embodiment 1 creates a similar point route.
[0022] Figure 12 is a diagram for explaining correction of a tool path performed by the correction section of the machining program correction device according to Embodiment 1.
[0023] Figure 13 is a diagram showing a functional structure of the machining program correction device according to Embodiment 2.
[0024] Figure 14 is a diagram showing an example of a tool path corrected by the machining program correction device according to Embodiment 2.
[0025] Figure 15 is a diagram for explaining a second characteristic amount calculated by the second characteristic amount calculation section of the machining program correction device according to Embodiment 2.
[0026] Figure 16 is a diagram for explaining a method of classifying tool paths into a plurality of clusters by the clustering section of the processing program correction device according to Embodiment 2.
[0027] Figure 17 is a diagram showing an example of a result of classification by the clustering section of the processing program correction device according to Embodiment 2.
[0028] Figure 18 is a flowchart showing a sequence of actions of the similar point calculation section constituting the processing program correction device according to Embodiment 2.
[0029] Figure 19 is a flowchart showing a sequence of actions when creating a similar point route by the correction section of the processing program correction device according to Embodiment 2.
[0030] Figure 20 is a diagram showing a processing system according to Embodiment 3.
[0031] Figure 21 is a diagram showing a structure example of hardware of the processing program correction device according to Embodiment 1 or 2.
[0032] Figure 22 is a flowchart showing a sequence of actions in a case where the processing program correction device according to Embodiment 1 or 2 simulates processing. DETAILED DESCRIPTION
[0033] Hereinafter, the processing program correction device, the processing program correction method, and the processing system according to the embodiments will be described in detail based on the drawings.
[0034] Embodiment 1.
[0035] Figure 1 is a diagram showing a processing program correction device 11 according to Embodiment 1 and a processing system 1 connected to the processing program correction device 11. The processing system 1 is a system that processes a workpiece 10 by controlling a machine tool 7 as a controlled device. The machine tool 7 processes the workpiece 10 by relatively moving a tool 9 with respect to the workpiece 10.
[0036] The processing system 1 has a CAM device 3 as a processing program generation device, and a numerical control device 5 that controls the working machine 7. The CAM device 3 is a computer system in which CAM software is installed. The CAM device 3 generates a processing program 4 for processing by using a tool 9, based on a Computer Aided Design (CAD) model 2. The CAD model 2 is shape data that specifies a target shape.
[0037] The numerical control device 5 generates a control signal 6 by executing the processing program 4. The numerical control device 5 transmits the generated control signal 6 to a driving section 8 of the working machine 7. The driving section 8 has a motor that drives the tool 9, and a servo amplifier that controls the motor in accordance with the control signal 6. The motor and the servo amplifier are omitted from the drawing. The working machine 7 drives the tool 9 in accordance with the control signal 6, thereby processing a workpiece 10.
[0038] The processing program correction device 11 is connected to the CAM device 3 and the numerical control device 5 so as to be able to communicate with each of the CAM device 3 and the numerical control device 5. The communication can be any of wired communication and wireless communication. The processing program correction device 11 acquires the processing program 4 generated by the CAM device 3, and corrects the processing program 4. The processing program correction device 11 transmits the corrected processing program 4 to the numerical control device 5. The numerical control device 5 controls the working machine 7 based on the corrected processing program 4.
[0039] Next, the structure of the processing program correction device 11 will be described. Figure 2 is a diagram that shows the functional structure of the processing program correction device 11 according to Embodiment 1. The processing program correction device 11 corrects the processing program 4 by correcting a tool path. The tool path is a path in which the tool 9 is moved by the working machine 7, and is a path in which the tool 9 is moved with respect to the workpiece 10.
[0040] The processing program correction device 11 has a first characteristic amount calculation section 12, a similar point calculation section 13, and a correction section 14. The first characteristic amount calculation section 12 obtains a tool path and a plurality of command points arranged on the tool path, by analysis of the processing program 4. Each command point indicates a position of the tool 9 in a control period of the working machine 7. The first characteristic amount calculation section 12 obtains a first characteristic amount that indicates a characteristic of the command points on the tool path, with respect to each of the plurality of command points. The first characteristic amount calculation section 12 outputs data of the tool path and a calculation result of the first characteristic amount to the similar point calculation section 13.
[0041] The similar point calculating section 13 extracts the object path to be corrected and the adjacent path adjacent to the object path from among the plurality of tool path pairs arranged in a direction different from the advancing direction of the tool path. The similar point calculating section 13 finds the similar point, which is the command point similar to the command point of the object path, from among the plurality of command points of the adjacent path, based on the first characteristic quantity of the command point of the object path and the first characteristic quantity of the command point of the adjacent path. The similar point calculating section 13 outputs the data of the tool path and the data of the similar point to the correction section 14.
[0042] The correction section 14 corrects the command point of the object path based on the similar point, thereby correcting the object path. The correction section 14 generates the corrected machining program 15 by correcting the object path. The corrected machining program 15 is the machining program 4 corrected by the correction of the object path. The machining program correction device 11 transmits the corrected machining program 15 to the numerical control device 5.
[0043] Figure 3 is a diagram showing an example of the tool path corrected by the machining program correction device 11 according to Embodiment 1. In Figure 3 , an example of the target shape 20 and an example of the plurality of tool paths 21 for machining the target shape 20 are shown. The x-axis, the y-axis, and the z-axis are three axes perpendicular to each other. In Figure 3 , the portion of the target shape 20 with the diagonal hatched portion is a machined surface on which machining is performed by the working machine 7. The target shape 20 includes a machined surface PS that is a free-form surface. The plurality of tool paths 21 are arranged in a direction different from the advancing direction of the tool path 21 in the machined surface of the target shape 20. Figure 3 The three tool paths 21 shown are arranged in a direction perpendicular to the advancing direction of the tool path 21. In Figure 3 , each tool path 21 is indicated by a broken line. The working machine 7 moves the tool 9 sequentially in the plurality of tool paths 21.
[0044] In Figure 3 , the plurality of command points 22 of each tool path 21 are indicated by black dots. The CAM device 3 generates the machining program 4 that approximates the curve along the free-form surface by minute line segments. The line segments between the command points 22 indicate the minute line segments. Each tool path 21 is represented by consecutive minute line segments.
[0045] Next, the operation of the machining program correction device 11 will be described. Figure 4 is a flowchart showing the operation sequence of the machining program correction device 11 according to Embodiment 1. In step S1, the machining program correction device 11 calculates the first characteristic quantity with respect to the plurality of command points 22 on the tool path 21, respectively. The details of the first characteristic quantity are described later.
[0046] In step S2, the machining program correction device 11 extracts the object path and adjacent paths from multiple toolpaths 21. In step S3, the machining program correction device 11 calculates similar points of the object command point based on the first feature value of the object command point and the first feature value of the command points of the adjacent paths. The object command point is the command point of the object path. In step S4, the machining program correction device 11 corrects the object command point based on the similar points. Through the above sequence, the machining program correction device 11 generates a corrected machining program 15.
[0047] Next, the operation of the first feature quantity calculation unit 12 will be explained. Figure 5 This is a diagram illustrating the first feature quantity calculated by the first feature quantity calculation unit 12 of the machining program correction device 11 according to Embodiment 1. The first feature quantity is, for example, the coordinates of the command point 22. The first feature quantity calculation unit 12 calculates the coordinates of the first feature quantity based on the following formula (1). The first feature quantity calculation unit 12 calculates the coordinates of each command point 22 on each of the plurality of toolpaths 21. Furthermore, the command point number is a number assigned to each command point 22 sequentially from the starting point 23 of each toolpath 21. The starting point 23 is the 0th command point 22.
[0048] Formula 1
[0049]
[0050] i: Command point number
[0051] N: Number of command points in the toolpath - 1
[0052] p i : A matrix representing the coordinates of the i-th command point in the toolpath.
[0053] P: A matrix representing the coordinates of each command point in the toolpath.
[0054] The first characteristic quantity could be, for example, the amount of movement on the toolpath 21 at command point 22. Figure 5 As illustrated, the movement 24i of the i-th command point 22i is the movement of the tool 9 between command point 22i and the (i-1)-th command point 22(i-1). The first feature calculation unit 12 calculates the movement for each command point 22 on the toolpath 21 based on the following equation (2). The first feature calculation unit 12 calculates the vector representing the movement. Alternatively, the first feature calculation unit 12 can calculate the length of a small line segment. The length of the small line segment represents the magnitude of the movement.
[0055]
Formula 2
[0056]
[0057] Δp i The amount of movement on the toolpath at the i-th instruction point.
[0058] ΔP: A matrix representing the movement at each command point in the toolpath.
[0059] l i The length of the tiny line segment between the i-th instruction point and the (i-1)-th instruction point.
[0060] The first characteristic quantity can be the cumulative length of the toolpath 21 at command point 22. For example... Figure 5 As illustrated, the cumulative length 25i of the i-th command point 22i is the length obtained by accumulating the amount of movement between command points 22 from the starting point 23 to the command point 22i, and can be said to be the length of the toolpath 21 up to the command point 22i. The first feature calculation unit 12 calculates the cumulative length for each command point 22 on the toolpath 21 based on the following equation (3).
[0061]
Formula 3
[0062]
[0063] ll i The cumulative length of the toolpath at the i-th instruction point.
[0064] ll: Cumulative length vector of the toolpath
[0065] p G The coordinates of the centroid of the toolpath command point
[0066] d x The width of the toolpath movement along the x-axis.
[0067] d y Toolpath y Width of movement in the axial direction
[0068] d z The width of the toolpath in the z-axis direction.
[0069] The first characteristic quantity can be a normalized coordinate, a normalized displacement, or a normalized cumulative length. The first characteristic quantity calculation unit 12 calculates the normalized coordinate by dividing the average or maximum value of the coordinate values by the coordinate values. The first characteristic quantity calculation unit 12 calculates the normalized coordinate based on the following equation (4).
[0070] Formula 4
[0071]
[0072] normalized coordinate of the i-th command point in the tool path
[0073] matrix representing normalized coordinates of each command point in the tool path
[0074] The first feature quantity calculating section 12 calculates a normalized movement amount by dividing the average or maximum value of the movement amount, or the like, by the movement amount. The first feature quantity calculating section 12 calculates the normalized movement amount on the basis of the following formula (5).
[0075] [Formula 5]
[0076]
[0077] normalized movement amount on the tool path up to the i-th command point
[0078] matrix representing normalized movement amounts at each command point of the tool path
[0079] The first feature quantity calculating section 12 calculates a normalized cumulative length by dividing the average or maximum value of the cumulative length, or the like, by the cumulative length. The first feature quantity calculating section 12 calculates the normalized cumulative length on the basis of the following formula (6).
[0080] [Formula 6]
[0081]
[0082] normalized cumulative length of the tool path up to the i-th command point
[0083] normalized cumulative length vector of the tool path
[0084] The first feature quantity can be multi-dimensional information including at least two of the normalized coordinate, the normalized movement amount, and the normalized cumulative length. The first feature quantity calculating section 12 calculates the first feature quantity as multi-dimensional information, for example, on the basis of the following formula (7).
[0085] [Formula 7]
[0086]
[0087] f i : first feature quantity vector of the i-th command point
[0088] δ, ε, ∈: weighting coefficients of the first feature quantity
[0089] F: matrix of the first feature quantity of each command point of the tool path
[0090] Further, the first feature quantity is a quantity indicating a feature of the command point 22 on the tool path 21, and is not limited to the description in Embodiment 1.
[0091] Next, the operation of the similar point calculation section 13 will be described. Figure 6 is a diagram for describing extraction of the object path and the adjacent path by the similar point calculation section 13 of the machining program correction device 11 according to Embodiment 1. The similar point calculation section 13 extracts the object path 26 from the plurality of tool paths 21. In addition, the similar point calculation section 13 extracts the adjacent path 27 adjacent to the object path 26. In Figure 6 Examples of the object path 26 and the adjacent path 27 are shown in FIG. 26. The similar point calculation section 13 extracts the plurality of tool paths 21 as the object path 26 in turn.
[0092] The similar point calculation section 13 acquires the data of the first feature quantity of each command point 22 in the object path 26 and the data of the first feature quantity of each command point 22 in the adjacent path 27 from the first feature quantity calculation section 12. The similar point calculation section 13 finds a correspondence relation between each command point 22 of the object path 26 and each command point 22 of the adjacent path 27 in which a cumulative distance error between the data of the first feature quantity of the object path 26 and the data of the first feature quantity of the adjacent path 27 becomes the smallest. The cumulative distance error is obtained by accumulating distance errors indicating differences between the first feature quantity of the command point 22 in the object path 26 and the first feature quantity of the command point 22 in the adjacent path 27 with respect to each command point 22 of the object path 26. The similar point calculation section 13 calculates the command point 22 of the adjacent path 27 associated with the command point 22 of the object path 26 in the correspondence relation in which the cumulative distance error becomes the smallest as the similar point.
[0093] Here, an example of a method of calculating the similar point will be described. In this example, the similar point calculation section 13 regards the data of the first feature quantity of the object path 26 and the data of the first feature quantity of the adjacent path 27 as time series information, and calculates the similar point by the dynamic time warping method. The method of calculating the similar point by the similar point calculation section 13 is not limited to the description in Embodiment 1.
[0094] Figure 7 is a diagram for describing a method of calculating the similar point by the similar point calculation section 13 of the machining program correction device 11 according to Embodiment 1. Figure 7 The horizontal axis of the graph shown indicates the command point 22 of the object path 26. Figure 7The vertical axis of the graph shown indicates the command points 22 of the adjacent path 27. Here, the value of the number of the command point +1 indicates each command point 22.
[0095] In Figure 7 the command point 22 of "p" in the subject path 26 and the command point 22 of "q" in the adjacent path 27 are associated with each other. This association is expressed as (p, q). In Figure 7 In the graph shown, the point 31 indicates the association of (p, q). The point 32 indicates the association of (1, 1) of each of the start points of the subject path 26 and the adjacent path 27. The point 33 indicates the association of (N, M) of each of the end points of the subject path 26 and the adjacent path 27.
[0096] The point 34 indicates the association of (p, q+1) of the command point 22 of "p" in the subject path 26 and the command point 22 of "q+1" in the adjacent path 27. The point 35 indicates the association of (p+1, q+1) of the command point 22 of "p+1" in the subject path 26 and the command point 22 of "q+1" in the adjacent path 27. The point 36 indicates the association of (p+1, q) of the command point 22 of "p+1" in the subject path 26 and the command point 22 of "q" in the adjacent path 27. In Figure 7 In the graph shown, as options for the route from the point 31 toward the point 33, there are the route from the point 31 to the point 34 in the upward direction, the route from the point 31 to the point 35 in the right oblique upward direction, and the route from the point 31 to the point 36 in the right direction.
[0097] The similar point calculating section 13, with respect to the case where the route in the upward direction from the point 31 is selected, calculates the distance error of the command point 22 of "p" in the subject path 26 and the command point 22 of "q+1" in the adjacent path 27, and adds the calculated distance error to the cumulative distance error up to the point 31 from the point 32. The similar point calculating section 13, with respect to the case where the route in the right oblique upward direction from the point 31 is selected, calculates the distance error of the command point 22 of "p+1" in the subject path 26 and the command point 22 of "q+1" in the adjacent path 27, and adds the calculated distance error to the cumulative distance error up to the point 31 from the point 32. The similar point calculating section 13, with respect to the case where the route in the right direction from the point 31 is selected, calculates the distance error of the command point 22 of "p+1" in the subject path 26 and the command point 22 of "q" in the adjacent path 27, and adds the calculated distance error to the cumulative distance error up to the point 31 from the point 32.
[0098] The similar point calculating section 13 performs the calculation as described above with respect to each of the associations from the point 32 to the point 33, and thereby calculates the route from the point 32 to the point 33 in which the cumulative distance error becomes the smallest. Figure 7The dotted line shown indicates an example of the calculation result of the route in which the cumulative distance error becomes the smallest. This route indicates the correspondence relation in which the cumulative distance error between each command point 22 of the subject path 26 and each command point 22 of the adjacent path 27 becomes the smallest. The similar point calculation section 13 calculates the command point 22 of the adjacent path 27 associated with each command point 22 of the subject path 26 as a similar point in the correspondence relation in which the cumulative distance error becomes the smallest.
[0099] In Figure 7 In the example shown, the command point 22 of "q" and the command point 22 of "q+1" among the command points 22 of the adjacent path 27 are each a similar point of the command point 22 of "p". The similar point calculation section 13 sets one of the command point 22 of "q" and the command point 22 of "q+1" having a smaller distance error from the command point 22 of "p" as a similar point. As described above, the similar point calculation section 13 sets one command point 22 in which the distance error becomes the smallest among a plurality of command points 22 calculated as similar points with respect to one command point 22 in the subject path 26 as a similar point in a case where the plurality of command points 22 are calculated as similar points.
[0100] Figure 8 is a diagram indicating an example of a similar point calculated by the similar point calculation section 13 of the processing program correction device 11 involved in Embodiment 1. In Figure 8 , the white points on the adjacent path 27 indicate similar points 41 corresponding to any one of the plurality of command points 22 on the subject path 26. The black points on the adjacent path 27 indicate command points 22 on the adjacent path 27 that do not conform to the similar points 41. The straight line 42 connecting the command point 22 on the subject path 26 and the similar point 41 on the adjacent path 27 indicates the correspondence of the command point 22 on the subject path 26 and the similar point 41 on the adjacent path 27. The association of the command point 22 on the subject path 26 and the similar point 41 on the adjacent path 27 indicates the association of the portions having similar features to each other among the tool paths 21 adjacent to each other. As described above, the similar point calculation section 13 associates the portions having similar features to each other among the tool paths 21 adjacent to each other.
[0101] The similar point calculation section 13 specifies a subject command point 40 from the plurality of command points 22 on the subject path 26, and calculates a similar point 41 corresponding to the subject command point 40. The similar point calculation section 13 sequentially specifies each command point 22 on the subject path 26 as the subject command point 40, and calculates a similar point 41 corresponding to each command point 22 on the subject path 26.
[0102] Figure 9is a flowchart showing the order of actions of the similar point calculating section 13 that constitutes the machining program correcting device 11 according to Embodiment 1. In step Sll, the similar point calculating section 13 reads in the data of the object path 26 from the first characteristic quantity calculating section 12, thereby extracting the object path 26. In step S12, the similar point calculating section 13 reads in the data of the adjacent path 27 from the first characteristic quantity calculating section 12, thereby extracting the adjacent path 27.
[0103] In step S13, the similar point calculating section 13 specifies one of the plurality of command points 22 of the object path 26 as an object command point 40. In step S14, the similar point calculating section 13 calculates the similar point 41 of the object command point 40.
[0104] In step S15, the similar point calculating section 13 determines whether the object command point 40 is the final command point 22 in the object path 26. In the case where the object command point 40 is not the final command point 22 in the object path 26 (step S15, No), in step S16, the similar point calculating section 13 specifies the next command point 22 of the object command point 40 as the object command point 40. The similar point calculating section 13 performs the actions involved in the order from step S14 with respect to the specified object command point 40.
[0105] On the other hand, in the case where the object command point 40 is the final command point 22 in the object path 26 (step S15, Yes), the similar point calculating section 13 determines in step S17 whether the object path 26 is the final tool path 21 among the plurality of tool paths 21. In the case where the object path 26 is not the final tool path 21 (step S17, No), the similar point calculating section 13 reads in the data of the next object path 26 from the first characteristic quantity calculating section 12 in step S18, thereby extracting the next object path 26. The similar point calculating section 13 performs the actions involved in the order from step S12 with respect to the next object path 26.
[0106] On the other hand, in the case where the object path 26 is the final tool path 21 (step S17, Yes), the similar point calculating section 13 ends the actions involved in the order shown in FIG. 6. As described above, the similar point calculating section 13 calculates the similar point 41 with respect to each command point 22 of each of the plurality of tool paths 21. Figure 9
[0107] Next, the actions of the correcting section 14 will be described. The correcting section 14 calculates the similar point 41 for each group of the tool paths 21 adjacent to each other among the plurality of tool paths 21, thereby creating a similar point route connecting the plurality of similar points 41 calculated to each other. The correcting section 14 corrects the command points 22 of the object path 26 based on the similar point route calculated.
[0108] The correction section 14 adjusts the positions of the object command points 40 of the object path 26 based on the created similar point line, thereby correcting the object path 26. The correction section 14 adjusts the positions of the object command points 40, thereby correcting the object path 26 in a manner to reduce the inconsistency of the object path 26 with respect to the adjacent path 27. The inconsistency refers to a state in which the shape of the tool path 21 is different. Alternatively, the inconsistency refers to a state in which the difference in the shape of the tool path 21 increases to an extent exceeding the allowable range in processing.
[0109] Here, in the similar point line composed of the L command points 22, three consecutive command points 22 are set as the kth command point 22, the (k+1)th command point 22, and the (k+2)th command point 22. K is an arbitrary integer from 1 to L-2, and is set to L≥3. The size of the inconsistency from the kth command point 22 to the (k+2)th command point 22 is represented by, for example, the distance between the straight line passing through the kth command point 22 and the (k+2)th command point 22 and the (k+1)th command point 22.
[0110] Figure 10 is a view for explaining the creation of the similar point line 43 by the correction section 14 of the processing program correction device 11 related to Embodiment 1. In Figure 10 one similar point line 43 passing through the object command points 40 on the object path 26 is shown in Figure 10 The five tool paths 21 shown are set as a part of the plurality of tool paths 21 arranged in the processing surface. The similar point line 43 spans the entirety of the plurality of tool paths 21. In Figure 10 the portion of the similar point line 43 spanning the five tool paths 21 is shown in
[0111] The similar point calculation section 13 sequentially switches the tool path 21 extracted as the object path 26, thereby calculating the similar point 41 corresponding to the object command point 40 on the object path 26 with respect to the plurality of tool paths 21, respectively. The command points 22 having the relationship of the object command point 40 and the similar point 41 are connected to each other by a straight line 42 as shown in Figure 8 The straight lines 42 are connected to each other across the entirety of the plurality of tool paths 21, thereby creating the similar point line 43. The correction section 14 creates the similar point line 43 with respect to each command point 22 of the object path 26 in which the similar point 41 is calculated.
[0112] Figure 11is a flowchart showing a sequence of actions when the similar point route 43 is created by the correction section 14 of the processing program correction device 11 according to Embodiment 1. In step S21, the correction section 14 acquires data of the object path 26 from the similar point calculation section 13, thereby extracting the object path 26. In step S22, the correction section 14 specifies the object command point 40 from among the plurality of command points 22 of the object path 26.
[0113] The correction section 14 acquires data of the similar point 41 corresponding to the object command point 40 from the similar point calculation section 13. In step S23, the correction section 14 appends the similar point 41 of the object command point 40 to the similar point route 43. The correction section 14, in a case where the initial tool path 21 among the plurality of tool paths 21 is the object path 26, holds the straight line 42 connecting the object command point 40 and the similar point 41 as the initial similar point route 43. The correction section 14, each time the tool path 21 extracted as the object path 26 is exchanged, appends the similar point 41 to the held similar point route 43. The correction section 14 extends the similar point route 43 by appending the similar point 41 to the similar point route 43.
[0114] In step S24, the correction section 14 determines whether the similar point 41 appended to the similar point route 43 is the command point 22 of the final tool path 21 among the plurality of tool paths 21. In a case where the similar point 41 is not the command point 22 of the final tool path 21 (step S24, No), in step S25, the correction section 14 specifies the similar point 41 as the next object command point 40. The correction section 14, with respect to the next object command point 40, performs the actions involved in the sequence from step S23.
[0115] On the other hand, in a case where the similar point 41 is the command point 22 of the final tool path 21 (step S24, Yes), in step S26, the correction section 14 determines whether the object command point 40 is the final command point 22 in the object path 26. In a case where the object command point 40 is not the final command point 22 in the object path 26 (step S26, No), in step S27, the correction section 14 specifies the next command point 22 of the object command point 40 as the object command point 40. The correction section 14, with respect to the next object command point 40, performs the actions involved in the sequence from step S23.
[0116] On the other hand, if object command point 40 is the final command point 22 in object path 26 (step S26, Yes), in step S28, the correction unit 14 determines whether object path 26 is the final tool path 21 among multiple tool paths 21. If object path 26 is not the final tool path 21 (step S28, No), in step S29, the correction unit 14 reads the data of the next object path 26 from the similarity point calculation unit 13, thereby extracting the next object path 26. The correction unit 14 performs the operations involved in the sequence from step S22 regarding the next object path 26.
[0117] On the other hand, if object path 26 is the final toolpath 21 (step S28, Yes), the correction unit 14 ends. Figure 11 The sequence of actions shown. As described above, the correction unit 14 creates similar point routes 43 at the respective command points 22 of multiple toolpaths 21.
[0118] Figure 12 This is a diagram illustrating an example of tool path 21 correction performed by the correction unit 14 of the machining program correction device 11 according to Embodiment 1. Figure 12 Arrow 47 indicates the inconsistent size of object path 26 relative to its adjacent path 27. Figure 12 In the example shown, the correction unit 14 generates a smoothed route 44 by smoothing a similar point route 43 that passes through the object command point 40, and replaces the command point 22 of the object path 26 from the object command point 40 with a correction point 45 on the smoothed route 44. That is, the correction unit 14 moves the command point 22 on the smoothed route 44, thereby adjusting the position of the command point 22. Figure 12 The smoothed path 44 shown is a curve. The correction unit 14 smooths the similar point path 43, for example, using a B-Spline curve or a NURBS (Non-Uniform Rational B-Spline) curve. Alternatively, the smoothed path 44 can also be a straight line. The correction unit 14 adjusts the position of the instruction point 22 of the object path 26 based on the smoothed path 44, thereby reducing the inconsistency between the object path 26 and adjacent paths 27.
[0119] Further, the correction section 14 obtains a plane 46 that passes through the object command point 40 and two command points 22 adjacent to the object command point 40 in the object path 26, and the correction point 45 can be set as a position on the plane 46. The two command points 22 are a command point 22 adjacent to the object command point 40 in the advancing direction of the tool 9 and a command point 22 adjacent to the object command point 40 in the opposite direction of the advancing direction of the tool 9. That is, the correction section 14 can obtain a plane 46 that passes through command points 22 continuous on the object path 26, and adjust the position of the object command point 40 on the plane 46. Thus, the correction section 14 can reduce the deviation of the position of the correction point 45 from the plane 46 that passes through the object path 26.
[0120] The processing program correction device 11 according to Embodiment 1 generates the corrected processing program 15 from the data of the tool path 21 provided from the processing system 1. The processing program correction device 11 can be provided with the data of the tool path 21 from the processing system 1, and generate the corrected processing program 15 based on the provided data of the tool path 21.
[0121] According to Embodiment 1, the processing program correction device 11 obtains the similar point 41 corresponding to the command point 22 of the object path 26 based on the first characteristic amount of the command point 22 of the object path 26 and the first characteristic amount of the command point 22 of the adjacent path 27, and corrects the object path 26 based on the similar point 41. The processing program correction device 11 uses the similar point 41 obtained based on the first characteristic amount for the correction of the object path 26, and thus can perform the correction that takes into account the correspondence of portions having similar characteristics in the tool paths 21 adjacent to each other. Therefore, the processing program correction device 11 can reduce the inconsistency of the object path 26 with respect to the adjacent path 27. Further, the processing program correction device 11 can reduce the case where an error of the tool path 21 with respect to the processing surface is generated by the correction. Thus, the processing program correction device 11 achieves the effect of being able to improve the quality of the processing surface.
[0122] Embodiment 2.
[0123] Figure 13 is a diagram showing the functional structure of the processing program correction device 11A according to Embodiment 2. In the processing program correction device 11A, the second characteristic amount calculation section 51 and the clustering section 52 are added to the same structure as the processing program correction device 11 shown in Figure 2
[0124] The second feature quantity calculating section 51 obtains the tool path 21 by analyzing the machining program 4, and obtains a second feature quantity that represents a feature of the tool path 21. The clustering section 52 divides the tool path group used for machining the workpiece 10 into a plurality of clusters based on the second feature quantity. The first feature quantity calculating section 12, the similar point calculating section 13, and the correction section 14 perform the same processing as in Embodiment 1 with respect to the plurality of tool paths 21 for each cluster. That is, the first feature quantity calculating section 12 calculates the first feature quantity of each command point 22 in the tool path 21 with respect to the plurality of tool paths 21 of each cluster, respectively. The similar point calculating section 13 extracts the similar points 41 with respect to the object path 26 and the adjacent path 27 for each cluster. The correction section 14 corrects the object path 26 for each cluster.
[0125] Figure 14 is a diagram that represents an example of the tool path 21 that is corrected by the machining program correction device 11A according to Embodiment 2. In Figure 14 , an example of the target shape 20A and an example of the tool path group used for machining the target shape 20A are shown. The hatched surface with diagonal lines in the target shape 20A is a machined surface on which machining is performed by the machine tool 7. The target shape 20A includes two machined surfaces PS1, PS2 that are free-form surfaces. The machined surface PS1 and the machined surface PS2 are located at positions separated from each other in the target shape 20A. In Figure 14 , the tool paths 21 that constitute the tool path group, i.e., six tool paths 21-1, 21-2, 21-3, 21-4, 21-5, 21-6 are shown.
[0126] Next, the operation of the second feature quantity calculating section 51 will be described. Figure 15 is a diagram for explaining the second feature quantity that is calculated by the second feature quantity calculating section 51 of the machining program correction device 11A according to Embodiment 2. The second feature quantity calculating section 51 calculates the second feature quantity of each tool path 21 included in the tool path group.
[0127] The second feature quantity is, for example, the coordinates of the center of gravity position 53 of the tool path 21, the principal component 54 of the tool path 21, the principal component vector of the tool path 21, or the tool path length 55. The principal component 54 is an approximate straight line of each command point 22 on the tool path 21. The tool path length 55 is the length from the start point 23 to the end point 25 of the tool path 21.
[0128] The 2nd feature quantity can be a normalized coordinate of the center-of-gravity position 53. The 2nd feature quantity calculation section 51 calculates the normalized coordinate by dividing the average or maximum value of the coordinate values, and the like. Similarly, the 2nd feature quantity calculation section 51 can calculate the normalized principal component 54, the normalized principal component vector, or the normalized tool path length 55 as the 2nd feature quantity. The 2nd feature quantity can be multi-dimensional information including at least two of the normalized coordinate, the normalized principal component 54, the normalized principal component vector, and the normalized tool path length 55. Further, the 2nd feature quantity is a quantity that represents a feature of the tool path 21, and is not limited to the description in Embodiment 2.
[0129] Next, the operation of the clustering section 52 will be described. Figure 16 is a diagram for explaining a method of classifying tool path groups into a plurality of clusters by the clustering section 52 of the processing program correction device 11A related to Embodiment 2. The clustering section 52 acquires data of each tool path 21 constituting a tool path group and the 2nd feature quantity of each tool path 21 from the 2nd feature quantity calculation section 51. The clustering section 52 classifies the tool path group into a plurality of clusters based on the acquired 2nd feature quantity. At the time of classification by the clustering section 52, for example, a method such as the k-means method or the DBSCAN (Density-Based Spatial Clustering of Applications with Noise) method can be applied.
[0130] Here, the clustering section 52 acquires the coordinate of the center-of-gravity position 53, the principal component 54, the principal component vector, and each data of the tool path length 55 as data of the 2nd feature quantity. In this case, 16 of the center-of-gravity position coordinate (x), the center-of-gravity position coordinate (y), the center-of-gravity position coordinate (z), the principal component (x), the principal component (y), the principal component (z), the 1st principal component vector (x), the 1st principal component vector (y), the 1st principal component vector (z), the 2nd principal component vector (x), the 2nd principal component vector (y), the 2nd principal component vector (z), the 3rd principal component vector (x), the 3rd principal component vector (y), the 3rd principal component vector (z), and the tool path length 55 are components of the 2nd feature quantity. (x) indicates a component in the x-axis direction, (y) indicates a component in the y-axis direction, and (z) indicates a component in the z-axis direction. The 1st principal component vector, the 2nd principal component vector, and the 3rd principal component vector are acquired, for example, by principal component analysis of the command point data on the tool path 21. The clustering section 52 compares the 2nd feature quantity of each tool path 21 in 16 dimensions, thereby classifying each tool path 21.
[0131] The clustering section 52 plots points representing the second characteristic quantity of each tool path 21 on a graph, and demarcates regions of clustering on the graph in such a manner that points close in distance on the graph are in the same region representing a range of clustering. Figure 16 An example of a plot of results of plotting in the case where the components of the second characteristic quantity are three. Figure 16 The three axes of the graph shown represent the components of the second characteristic quantity, i.e., the first component, the second component, and the third component. Furthermore, the number of components of the second characteristic quantity is not limited to three, but is arbitrary. As described above, the clustering section 52 clusters in such a manner that tool paths 21 having second characteristic quantities close to each other are assigned to the same cluster.
[0132] In Figure 16 , the point 56-1 represents the second characteristic quantity of the tool path 21-1. The point 56-2 represents the second characteristic quantity of the tool path 21-2. The point 56-3 represents the second characteristic quantity of the tool path 21-3. The point 56-4 represents the second characteristic quantity of the tool path 21-4. The point 56-5 represents the second characteristic quantity of the tool path 21-5. The point 56-6 represents the second characteristic quantity of the tool path 21-6. In addition, in the example shown in Figure 16 , the three points 56-1, 56-2, and 56-3 are included in the region 57-1 representing the first cluster, and the three points 56-4, 56-5, and 56-6 are included in the region 57-2 representing the second cluster. Thus, the clustering section 52 classifies the three tool paths 21-1, 21-2, and 21-3 as the first cluster, and classifies the three tool paths 21-4, 21-5, and 21-6 as the second cluster.
[0133] Figure 17 is a graph representing an example of the results of classification by the clustering section 52 of the processing program modification device 11A involved in Embodiment 2. The tool paths 21-1, 21-2, and 21-3 classified as the first cluster 58-1 are tool paths 21 in the processing surface PS1. The tool paths 21-4, 21-5, and 21-6 classified as the second cluster 58-2 are tool paths 21 in the processing surface PS2. As described above, the clustering section 52 classifies each tool path 21 of a group of tool paths in the workpiece 10 into a cluster of tool paths 21 having common characteristics.
[0134] The first characteristic quantity calculation section 12 acquires data of each tool path 21 for each cluster from the clustering section 52. The first characteristic quantity calculation section 12 calculates the first characteristic quantity of each command point 22 in the tool path 21 with respect to the plurality of tool paths 21 of each cluster.
[0135] Figure 18is a flowchart showing the order of actions of the similar point calculating section 13 constituting the machining program correcting device 11A according to Embodiment 2. In step S31, the similar point calculating section 13 acquires the data of the plurality of tool paths 21 of the object cluster from the first feature quantity calculating section 12, thereby extracting the plurality of tool paths 21 of the object cluster. The object cluster is a cluster in which the correction of the tool path 21 is performed.
[0136] In step S32, the similar point calculating section 13 extracts the object path 26 from the plurality of tool paths 21 of the object cluster. In step S33, the similar point calculating section 13 extracts the adjacent path 27 from the plurality of tool paths 21 of the object cluster.
[0137] In step S34, the similar point calculating section 13 specifies one of the plurality of command points 22 of the object path 26 as the object command point 40. In step S35, the similar point calculating section 13 calculates the similar point 41 of the object command point 40.
[0138] In step S36, the similar point calculating section 13 determines whether the object command point 40 is the final command point 22 in the object path 26. In the case where the object command point 40 is not the final command point 22 in the object path 26 (step S36, No), in step S37, the similar point calculating section 13 specifies the next command point 22 of the object command point 40 as the object command point 40. The similar point calculating section 13 performs the actions involved in the order from step S35 with respect to the specified object command point 40.
[0139] On the other hand, in the case where the object command point 40 is the final command point 22 in the object path 26 (step S36, Yes), the similar point calculating section 13 determines whether the object path 26 is the final tool path 21 in the object cluster in step S38. In the case where the object path 26 is not the final tool path 21 in the object cluster (step S38, No), the similar point calculating section 13 extracts the next object path 26 from the plurality of tool paths 21 of the object cluster in step S39. The similar point calculating section 13 performs the actions involved in the order from step S33 with respect to the next object path 26.
[0140] On the other hand, in a case where the object path 26 is the final tool path 21 in the object cluster (step S38, Yes), in step S40, the similar point calculating section 13 determines whether the object cluster is the final cluster in the workpiece 10. In a case where the object cluster is not the final cluster (step S40, No), in step S41, the similar point calculating section 13 acquires data of the plurality of tool paths 21 of the next object cluster from the first characteristic quantity calculating section 12, thereby extracting the plurality of tool paths 21 of the next object cluster. The similar point calculating section 13 performs the actions involved in the sequence from step S32 onward with respect to the next object cluster.
[0141] On the other hand, in a case where the object cluster is the final cluster in the workpiece 10 (step S40, Yes), the similar point calculating section 13 ends the actions involved in the sequence shown in FIG. 7. As described above, the similar point calculating section 13 extracts the object path 26 and the adjacent path 27 for each cluster, and calculates the similar point 41. The similar point calculating section 13 calculates the similar point 41 for each command point 22 with respect to the plurality of tool paths 21 of each cluster, respectively. Figure 18
[0142] Figure 19 is a flowchart showing a sequence of actions performed by the correction section 14 of the processing program correction device 11A involved in the creation of the similar point route 43 according to Embodiment 2. In step S51, the correction section 14 acquires data of the plurality of tool paths 21 of the object cluster from the similar point calculating section 13, thereby extracting the plurality of tool paths 21 of the object cluster.
[0143] In step S52, the correction section 14 extracts the object path 26 from the plurality of tool paths 21 of the object cluster. In step S53, the correction section 14 specifies the object command point 40 from among the plurality of command points 22 of the object path 26.
[0144] The correction section 14 acquires data of the similar point 41 corresponding to the object command point 40 from the similar point calculating section 13. In step S54, the correction section 14 appends the similar point 41 of the object command point 40 to the similar point route 43.
[0145] In step S55, the correction section 14 determines whether the similar point 41 appended in the similar point route 43 is a command point 22 of the final tool path 21 in the object cluster. In a case where the similar point 41 is not a command point 22 of the final tool path 21 of the object cluster (step S55, No), in step S56, the correction section 14 specifies the similar point 41 as the next object command point 40. The correction section 14 performs the actions involved in the sequence from step S54 onward with respect to the next object command point 40.
[0146] On the other hand, in a case where the similar point 41 is the final command point 22 of the tool path 21 in the object cluster (step S55, Yes), in step S57, the correction section 14 determines whether the object command point 40 is the final command point 22 in the object path 26. In a case where the object command point 40 is not the final command point 22 in the object path 26 (step S57, No), in step S58, the correction section 14 specifies the next command point 22 of the object command point 40 as the object command point 40. The correction section 14 performs the actions involved in the sequence from step S54 with respect to the next object command point 40.
[0147] On the other hand, in a case where the object command point 40 is the final command point 22 in the object path 26 (step S57, Yes), in step S59, the correction section 14 determines whether the object path 26 is the final tool path 21 in the object cluster. In a case where the object path 26 is not the final tool path 21 (step S59, No), in step S60, the correction section 14 extracts the next object path 26 from the plurality of tool paths 21 of the object cluster. The correction section 14 performs the actions involved in the sequence from step S53 with respect to the next object path 26.
[0148] On the other hand, in a case where the object path 26 is the final tool path 21 in the object cluster (step S59, Yes), in step S61, the correction section 14 determines whether the object cluster is the final cluster in the workpiece 10. In a case where the object cluster is not the final cluster (step S61, No), in step S62, the correction section 14 acquires data of the plurality of tool paths 21 of the next object cluster from the similar point calculation section 13, thereby extracting the plurality of tool paths 21 of the next object cluster. The correction section 14 performs the actions involved in the sequence from step S52 with respect to the next object cluster.
[0149] On the other hand, in a case where the object cluster is the final cluster in the workpiece 10 (step S61, Yes), the correction section 14 ends the actions involved in the sequence illustrated in FIG. 6. As described above, the correction section 14 corrects the object path 26 for each cluster. Figure 19 The correction section 14 corrects the object path 26 for each cluster. The correction section 14 performs the actions involved in the sequence illustrated in FIG. 6 with respect to the object path 26 of the object cluster.
[0150] According to Embodiment 2, the machining program correction device 11A classifies the tool paths 21 of the workpiece 10 into a plurality of clusters based on the second feature quantity, and corrects the object path 26 for each cluster. The machining program correction device 11A can perform correction that reduces inconsistency between a plurality of tool paths 21 that have a common feature in common. Thus, the machining program correction device 11A achieves an effect that can improve the quality of a machined surface.
[0151] Embodiment 3.
[0152] Figure 20 is a view showing a machining system 1B to which Embodiment 3 is applied. The machining system 1B has the CAM device 3, the machining program correction device 11, the numerical control device 5, and the working machine 7. In Embodiment 3, the same reference numerals are assigned to the same structural elements as those of Embodiment 1 or 2, and mainly the structures different from Embodiment 1 or 2 are described.
[0153] The machining system 1B has the machining program correction device 11 of Embodiment 1, and thereby has the effect that the quality of the machined surface can be improved. Further, the machining system 1B can also have the machining program correction device 11A of Embodiment 2.
[0154] The machining system 1B can also have the same machining program correction method as Embodiment 1 or 2 by the CAM device 3 or the numerical control device 5 instead of having the structures of the machining program correction devices 11, 11A. In this case, the machining system 1B can also improve the quality of the machined surface.
[0155] Next, the hardware of the machining program correction devices 11, 11A that realize Embodiment 1 or 2 is described. Figure 21 is a view showing a structural example of the hardware of the machining program correction devices 11, 11A that realize Embodiment 1 or 2.
[0156] The main parts of the machining program correction devices 11, 11A are realized by a processing circuit 61 having a processor 63 and a memory 64. The main parts of the machining program correction device 11 are the 1st feature quantity calculation section 12, the similar point calculation section 13, and the correction section 14. The main parts of the machining program correction device 11A are the 2nd feature quantity calculation section 51, the clustering section 52, the 1st feature quantity calculation section 12, the similar point calculation section 13, and the correction section 14.
[0157] The input section 62 is a circuit that receives an input signal for the machining program correction devices 11, 11A from the outside. The input section 62 receives the machining program 4. The output section 65 is a circuit that outputs a signal generated by the machining program correction devices 11, 11A to the outside. The output section 65 outputs the corrected machining program 15. The display section 66 is a display that displays information.
[0158] The processor 63 is a CPU (Central Processing Unit). The processor 63 can be an arithmetic device, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor). The memory 64 is, for example, a nonvolatile or volatile memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory), or the like.
[0159] The processor 63 executes a machining program correction program. The machining program correction program is a program in which processing for causing each part constituting the essential part of the machining program correction device 11, 11A to act is described. The machining program correction program is stored in the memory 64 in advance. The processor 63 executes the machining program correction program stored in the memory 64 by reading out, thereby causing each part constituting the essential part of the machining program correction device 11, 11A to act.
[0160] The machining program correction program is stored in the memory 64 in advance, but is not limited thereto. The machining program correction program can be provided to the user of the machining program correction device 11, 11A in a state of being written to a storage medium readable by a computer system, and installed to the memory 64 by the user. The storage medium can be a portable storage medium such as a floppy disk or a flash memory as a semiconductor memory. The machining program correction program can be installed to the memory 64 from another computer or a server device via a communication network.
[0161] The machining program correction device 11, 11A corrects the tool path 21 in real time while the work machine 7 is machining, and generates the corrected machining program 15. The machining program correction device 11, 11A can correct the tool path 21 other than during machining, and can generate the corrected machining program 15 other than during machining. The machining program correction device 11, 11A can simulate machining performed by the work machine 7 based on the corrected tool path 21, thereby testing machining performance.
[0162] Figure 22 is a flowchart showing an operation sequence in a case where the machining program correction device 11, 11A involved in Embodiments 1 or 2 simulates machining. In step S71, the machining program correction device 11, 11A generates a model of a machined product by simulation of machining in the processor 63. In step S72, the machining program correction device 11, 11A stores the generated model in the memory 64.
[0163] In step S73, the machining program correction device 11, 11A generates an image of the machined product by rendering of the model in the processor 63. In step S74, the machining program correction device 11, 11A displays the image by the display section 66. Thus, the machining program correction device 11, 11A ends the process in the present embodiment. Figure 22 The user compares the displayed image with the CAD model 2, whereby the corrected tool path 21 can be verified before actual machining.
[0164] The structures shown in the above embodiments show one example of the gist of the present application. The structures of the embodiments can be combined with other known techniques. The structures of the embodiments can be appropriately combined with each other. Part of the structures of the embodiments can be omitted or changed without departing from the gist of the present application.
[0165] Explanation of Reference Numerals
[0166] 1, 1B machining system, 2 CAD model, 3 CAM device, 4 machining program, 5 numerical control device, 6 control signal, 7 working machine, 8 drive section, 9 tool, 10 machined product, 11, 11A machining program correction device, 12 first feature quantity calculation section, 13 similar point calculation section, 14 correction section, 15 corrected machining program, 20, 20A target shape, 21, 21-1, 21-2, 21-3, 21-4, 21-5, 21-6 tool path, 22, 22i, 22(i-1) command point, 23 start point, 24i movement amount, 25 end point, 26 object path, 27 adjacent path, 31, 32, 33, 34, 35, 36, 56-1, 56-2, 56-3, 56-4, 56-5, 56-6 point, 40 object command point, 41 similar point, 42 straight line, 43 similar point route, 44 smoothed route, 45 correction point, 46 plane, 47 arrow, 51 second feature quantity calculation section, 52 clustering section, 53 barycentric position, 54 principal component, 55 tool path length, 57-1, 57-2 region, 58-1 first cluster, 58-2 second cluster, 61 processing circuit, 62 input section, 63 processor, 64 memory, 65 output section, 66 display section, PS, PS1, PS2 machined surface.
Claims
1. A machining program correction device that corrects a tool path in which a tool is moved by a working machine, thereby correcting a machining program for performing machining by the working machine, the machining program correction device characterized by having: a first feature quantity calculation section that calculates a first feature quantity that represents a feature of an instruction point that represents a position of the tool in a control cycle of the working machine; a similar point calculation section that extracts an object path that is a target of correction and a neighboring path that is adjacent to the object path from a plurality of the tool paths that are arranged in a direction different from a traveling direction of the tool path, and calculates a similar point that is a similar instruction point to the instruction point of the object path from a plurality of the instruction points of the neighboring path based on the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path; and a correction section that corrects the object path based on the similar point, the similar point calculation section calculates a correlation of the instruction point of the object path and the instruction point of the neighboring path in which a distance error that represents a difference between the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path becomes minimum, thereby calculating the similar point.
2. The machining program correction device according to claim 1, characterized in that the correction section calculates the similar point with respect to the instruction point in each of a plurality of the tool paths, thereby creating a similar point line that connects a plurality of the similar points calculated to each other, adjusts a position of the instruction point of the object path based on the similar point line, thereby correcting the object path.
3. The machining program correction device according to claim 2, characterized in that the correction section smoothes the similar point line, and moves the instruction point of the object path on the smoothed similar point line, thereby adjusting the position of the instruction point.
4. The machining program correction device according to claim 2, characterized in that the correction section calculates a plane that passes through the instruction points that are continuous in the object path, and adjusts the position of the instruction point on the plane.
5. The machining program correction device according to any one of claims 1 to 4, characterized in that the first feature quantity includes at least one of information of coordinates of the instruction point, a movement amount of the tool at the instruction point, and a length of the tool path until the instruction point, further characterized by having: a second feature quantity calculation section that calculates a second feature quantity that represents a feature of the tool path; and a clustering section that classifies a group of tool paths for machining a workpiece into a plurality of clusters based on the second feature quantity, the similar point calculation section extracts the object path and the neighboring path for each of the clusters, thereby calculating the similar point, the correction section corrects the object path for each of the clusters.
6. The machining program correction device according to any one of claims 1 to 5, characterized in that the first feature quantity calculation section calculates the first feature quantity based on a plurality of the instruction points of the tool path.
7. The machining program correction device according to any one of claims 1 to 5, characterized in that the first feature quantity calculation section calculates the first feature quantity based on a plurality of the instruction points of the tool path, and the similar point calculation section calculates the similar point based on the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path.
8. The machining program correction device according to any one of claims 1 to 5, characterized in that the first feature quantity calculation section calculates the first feature quantity based on a plurality of the instruction points of the tool path, and the similar point calculation section calculates the similar point based on the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path.
9. The machining program correction device according to any one of claims 1 to 5, characterized in that the first feature quantity calculation section calculates the first feature quantity based on a plurality of the instruction points of the tool path, and the similar point calculation section calculates the similar point based on the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path.
10. The machining program correction device according to any one of claims 1 to 5, characterized in that the first feature quantity calculation section calculates the first feature quantity based on a plurality of the instruction points of the tool path, and the similar point calculation section calculates the similar point based on the first feature quantity of the instruction point of the object path and the first feature quantity of the instruction point of the neighboring path.
6. The process program revision apparatus according to any one of claims 1 to 5, characterized by 7. The machining program correction device according to claim 6, characterized in that the second characteristic quantity includes at least one of information among a coordinate of a center of gravity position of the tool path, an approximate straight line, i.e., a principal component, of a plurality of the command points on the tool path, and a tool path length.
8. A machining program correction method of correcting a tool path in which a tool moves with respect to a work, thereby correcting, by a machining program correction device, a machining program for performing machining using the tool, the machining program correction method being characterized by comprising the steps of: calculating a first characteristic quantity that represents a characteristic of a command point on the tool path, with respect to the command point that represents a position of the tool in a control cycle; extracting an object path to be corrected and a neighboring path adjacent to the object path, from a plurality of the tool paths arranged in a direction different from a traveling direction of the tool path; calculating, from a plurality of the command points of the neighboring path, a similar command point, i.e., a similar point, to the command point of the object path, based on the first characteristic quantity of the command point of the object path and the first characteristic quantity of the command point of the neighboring path; and correcting the command point of the object path based on the similar point, thereby correcting the object path, calculating a correlation of the command point of the object path and the command point of the neighboring path at which a distance error that represents a difference between the first characteristic quantity of the command point of the object path and the first characteristic quantity of the command point of the neighboring path becomes minimum, thereby calculating the similar point.
9. A processing system characterized by, having: a machining program generation device that generates a machining program; the machining program correction device according to any one of claims 1 to 7 that corrects the generated machining program; and a numerical control device that controls a controlled device based on the corrected machining program.
Citation Information
Patent Citations
Tool path plane calculating method, tool path plane calculating program and recording medium recording tool path plane calculating program
JP2003256012A
Program correction device
JP2020067863A