Coordinate value calculating device and computer-readable storage medium
The coordinate value calculation device optimizes simulation speed and reproduction by dynamically adjusting the number of point sequence data based on machining patterns and operator settings, effectively balancing accuracy and speed in numerical control simulations.
Patent Information
- Application Number
- PCT/JP2024/015146
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-16
- Publication Date
- 2025-10-23
AI Technical Summary
Existing simulation methods in numerical control devices require a high number of coordinate values to maintain image reproduction, leading to increased calculation time, and there is a trade-off between simulation reproduction and calculation speed, with existing thinning methods not improving speed effectively.
A coordinate value calculation device that includes a unit to analyze machining programs, determine required accuracy, and select a calculation method that balances reproducibility with speed by adjusting the number of point sequence data based on machining patterns, operator settings, and machining methods.
The device efficiently calculates point sequence data with the required accuracy while optimizing calculation speed, addressing the trade-off between simulation reproduction and speed by selecting appropriate calculation methods.
Smart Images

Figure JP2024015146_23102025_PF_FP_ABST
Abstract
Description
Coordinate value calculation device and computer-readable storage medium
[0001] The present disclosure relates to a coordinate value calculation device and a computer-readable storage medium.
[0002] A numerical control device analyzes a machining program, calculates the coordinate values of the tool path, and controls the machine tool. In a simulation, the machining program is analyzed, the coordinate values of the tool path are calculated by simulating the calculations of the numerical control device, and the tool path is reproduced in an image. The degree of reproduction of the image depends on the number of coordinate values of the tool path. In other words, calculating the same number of coordinate values as the numerical control device increases the degree of reproduction of the image. However, increasing the degree of reproduction increases the time required to calculate the coordinate values.
[0003] The level of reproduction required for a simulation varies depending on the machining content and machining pattern. For example, in the case of a simulation of machined surface quality, a low level of reproduction is acceptable for speed-prioritized parts, but a high level of reproduction is required for shape-prioritized parts. The required level of reproduction also varies depending on the situation in which the simulation is performed. In other words, there are situations in which speed is prioritized, and situations in which high level of reproduction is prioritized.
[0004] There is a trade-off between the degree of simulation reproduction and the speed at which coordinate values are calculated. To maintain the required accuracy, there are simulation devices that adjust the amount of data (number of coordinate values) used in the simulation depending on the tool movement status and the display mode of the simulation. For example, see Patent Document 1.
[0005] Japanese Patent Application Laid-Open No. 2021-56835
[0006] In existing simulations, the same number of coordinate values (point sequence data) as the numerical control device is calculated, and some of the calculated coordinate values are thinned out to reduce the load on generating a simulation image. However, this method does not improve the calculation speed of the point sequence data.
[0007] In the field of simulation, it is desired to increase the speed of calculating point sequence data while maintaining the reproducibility required for simulation images.
[0008] A coordinate value calculation device according to one aspect of the present disclosure includes a coordinate value calculation unit that analyzes a machining program and calculates point sequence data of a tool trajectory for a simulation, an accuracy determination unit that determines the required accuracy of the point sequence data required for the simulation, and a calculation method selection unit that refers to candidate information linking a calculation method for the point sequence data with a reproducibility of the calculated coordinate values, and selects a calculation method for calculating the point sequence data with a reproducibility that satisfies the required accuracy.
[0009] 1 is a block diagram of a coordinate value calculation device according to a first embodiment; FIG. 2 is a table showing the relationship between commands and machining patterns; FIG. 3 is a diagram showing changes in machining patterns in a machining program; FIG. 4 is a diagram showing changes in required accuracy over time; FIG. 5 is a diagram showing the relationship between a machining method and required accuracy; FIG. 6 is a table showing the relationship between a machining pattern and required accuracy; FIG. 7 is a table showing the relationship between operator settings and required accuracy; FIG. 8 is a table showing the priority of elements used to determine required accuracy; FIG. 9 is a diagram showing the relationship between required accuracy and the number of point sequence data; FIG. 10 is a table explaining candidate information; FIG. 11 is a conceptual diagram explaining the operation of a coordinate value calculation device; FIG. 12 is a block diagram of a coordinate value calculation device according to a second embodiment; FIG. 13 is a diagram showing a method for calculating reproducibility; FIG. 14 is a diagram explaining an example of a calculation method; FIG. 15 is a diagram explaining candidate information according to a third embodiment; FIG. 16 is a hardware configuration diagram of a coordinate value calculation device;
[0010] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In the following description, components having the same or similar functions will be denoted by the same reference numerals. Duplicate descriptions of these components may be omitted.
[0011] In the present application, "based on XX" means "based on at least XX" and includes cases where the coordinate value is based on another element in addition to XX. [First Embodiment] A coordinate value calculation device 100 according to a first embodiment will be described below. The coordinate value calculation device 100 calculates point sequence data of a tool used in a simulation.
[0012] 1 is a block diagram of a coordinate value calculation device 100 according to the first embodiment. The coordinate value calculation device 100 includes a coordinate value calculation unit 1, a coordinate value output unit 2, an accuracy determination unit 3, and a calculation method selection unit 4.
[0013] The coordinate value calculation unit 1 acquires a machining program and calculates coordinate values (point sequence data) of the tool trajectory in accordance with the machining program. Types of calculation methods will be described in this embodiment. The coordinate value output unit 2 outputs the calculated point sequence data to an external device (e.g., a simulation device) or a storage device (described later). The output destination is not particularly limited, but may be a memory such as a RAM 113 or non-volatile memory 114 (described later), or an external device 120 connected via interfaces 115, 118, and 119.
[0014] The accuracy determination unit 3 determines the accuracy required in the simulation (called the required accuracy). The required accuracy can be determined based on the machining pattern, operator settings, machining method, etc. First, a method for determining the required accuracy from the machining pattern will be explained. Machining patterns include standard, speed priority, and shape priority. The accuracy determination unit 3 determines the machining pattern from the command. Figure 2 shows the relationship between the command and the machining pattern. The command "G08.1P" can specify the machining pattern based on the numerical value after "P". In the example of Figure 2, "G08.1P0" is standard, "G08.1P1" is speed priority, and "G08.1P2" is shape priority.
[0015] An example of a machining program is shown in Figure 3. In the machining program in Figure 3, "G08.1P1" is commanded in the block on the first line, making the machining pattern "speed priority," and "G08.1P0" is commanded in the latter half, making the machining pattern "standard."
[0016] In this way, the required accuracy of the machining program changes for each block that is executed. Figure 4 shows the changes in the required accuracy. In Figure 4, the vertical axis represents the required accuracy, and the horizontal axis represents time. In Figure 4, the required accuracy for "Block 1" and "Block 2" is "low (time priority)," while the required accuracy for "Block 3" is "high (accuracy priority)."
[0017] A method for determining the required accuracy from the operator settings will be described below. The operator settings are acquired, for example, from the simulation device (for example, parameter N in FIG. 7). The simulation device has a function for accepting the simulation accuracy settings from the operator. Settings include "accuracy priority" and "time priority." With this function, "time priority" can be set when the machining time is long or when you only want to check the tool movement, and "accuracy priority" can be set when you want to check the tool movement or the machined surface in detail.
[0018] The accuracy determination unit 3 determines the accuracy of the simulation (such as "priority on accuracy" or "priority on time") based on the parameter values.
[0019] Next, we will explain how to determine the required accuracy from the machining method. Figure 5 shows the relationship between machining method and required accuracy. Even with the same machining program, the required accuracy differs between rough machining and finish machining. The required accuracy for rough machining is low, while the required accuracy for finish machining is high. The accuracy determination unit 3 determines whether the command for each block is rough machining or finish machining based on the command and tool. Rough machining commands include "G71: outer diameter rough cutting cycle" and "G74: end face rough cutting cycle." Finish machining commands include "G70: finishing cycle" and "G72: finishing cycle." These commands are just examples, and the notation of commands varies depending on the manufacturer. The accuracy determination unit 3 may also determine the machining accuracy from the type of tool used. The type of tool can be determined from the M code.
[0020] The accuracy determination unit 3 quantifies the machining accuracy obtained by the above-described method and converts the required accuracy into a numerical value. In this embodiment, the accuracy determination unit 3 quantifies the required accuracy using a table. The quantification method is not limited to using a table. For example, the distance between point sequence data may be used as the required accuracy as in the third embodiment. FIG. 6 is a table linking machining patterns with required accuracy. In this table, the machining pattern "standard" is linked to the required accuracy of "50%," the machining pattern "speed priority" is linked to the required accuracy of "50%,," and the machining pattern "shape priority" is linked to the required accuracy of "100%." FIG. 7 is a table linking the parameter N (simulation accuracy) with the required accuracy. In this table, the parameter N "0 (accuracy priority)" is linked to the required accuracy of "100%," and the parameter N "1 (time priority)" is linked to the required accuracy of "50%." The required accuracy of a machining method can also be quantified in a similar manner.
[0021] In the above-described method, there are multiple factors for determining the required accuracy (processing pattern, operator settings, processing method, etc.). Each factor may produce different results. Therefore, priorities may be set for the factors. Figure 8 shows an example of setting priorities. In the example of Figure 8, operator settings take priority over processing patterns and processing methods, and processing patterns take priority over processing methods. If the priority of operator settings is set high, even if the required accuracy of the processing pattern is high, the required accuracy will be low if the operator has set time priority.
[0022] The required accuracy in the first embodiment refers to the ratio of the number of point sequence data required for simulation to the number of point sequence data for actual machining. The required accuracy will be explained with reference to Fig. 9. If the same number of coordinate values as the actual machining point sequence data are required, the required accuracy is 100%. If half the number of coordinate values as the actual point sequence data are required, the required accuracy is 50%.
[0023] The calculation method selection unit 4 selects a calculation method for the point sequence data. The candidate information is information about candidate calculation methods. The candidate information will be described with reference to FIG. 10 . The candidate information associates the calculation method, the reproducibility, and the calculation speed of the point sequence data. The reproducibility means the degree to which the number of point sequence data in actual machining can be reproduced by each calculation method. In other words, it means the ratio of the number of reproduced data when the number of point sequence data in actual machining is set to 100. The calculation speed is a ranking of calculation speed (fastest first).
[0024] The calculation methods include at least a method of calculating the same number of point sequence data as the actual machining (corresponding to calculation method a), and a method of calculating only the start and end points of the block (corresponding to calculation method b). When generating commands for four points per block, the reproducibility of the calculation method that calculates only the start and end points is 50%. The order of calculation speed is "1" for calculation method b and "2" for calculation method a. In other words, calculation method a has a reproducibility of 100% but a slow calculation speed, while calculation method b has a reproducibility of 50% but a fast calculation speed.
[0025] The calculation method selection unit 4 searches for a calculation method that calculates point sequence data with a reproducibility that satisfies the required accuracy. If there are multiple calculation methods that satisfy the required accuracy, the calculation method selection unit selects the calculation method with the fastest calculation speed. For example, assume that the required accuracy of a simulation at a certain point in time is 50%. Since the reproducibility of both calculation methods a and b exceeds 50%, they satisfy the required accuracy. In this case, the calculation method selection unit selects the calculation method with the fastest calculation speed, i.e., calculation method b.
[0026] 11 is a conceptual diagram illustrating the operation of the coordinate value calculation device 100 of the first embodiment. The accuracy determination unit 3 acquires data that serves as a reference for determining the required accuracy of a simulation. The data that serves as the reference for the required accuracy includes the processing pattern, operator settings, and processing method. The processing pattern and processing method change depending on block commands. The operator settings also change. The calculation method selection unit 4 refers to candidate information in response to changes in the environment and selects a calculation method that satisfies the required accuracy and has a fast calculation speed.
[0027] [Second embodiment] Fig. 12 is a block diagram of a coordinate value calculation device 100 of the second embodiment. The coordinate value calculation device 100 of the second embodiment includes a reproducibility determination unit 5. The reproducibility calculated here is the distance between point sequence data. The shorter the distance between point sequence data, the higher the reproducibility. The reproducibility is determined by the coordinate value calculation method, position command, and speed command. The reproducibility determination unit 5 determines the block length from the position command for each block of the machining program and the machining pattern from the speed command value. The block length is the length of the line segment connecting the start point and end point of the block.
[0028] The reproducibility determination unit 5 determines the reproducibility based on the speed command, interpolation period, block length, etc. The reproducibility is the distance between coordinate points. The reproducibility calculation methods will be explained below using calculation method a (a method of calculating point sequence data of the same number as that in actual machining) and calculation method b (a method of calculating only the start point and the end point) as examples.
[0029] 13 shows the formula for calculating the reproducibility and the calculation speed of the point sequence data. The reproducibility of calculation method a is "F*T" where F is the speed command (mm / ms) and T is the interpolation period (ms). In other words, the reproducibility of calculation method a is the movement amount (movement distance) per interpolation period. The reproducibility of calculation method b is the block length "L". The block length is the movement amount (movement distance) of one block. The method for calculating the block length is an existing technology, so its explanation will be omitted.
[0030] 14 shows the reproducibility when "block length = 10" and "speed command = 1000". The reproducibility of calculation method a is "0.016 (= 1000 * 1) mm" when the interpolation period T is "1 ms". The reproducibility of calculation method b is "block length 10 mm".
[0031] In the coordinate value calculation device 100 of the second embodiment, the required accuracy and reproducibility are expressed by distance. The accuracy determination unit 3 outputs the required accuracy as the distance of the point sequence data. The candidate information is composed of the calculation method, the reproducibility (the distance of the point sequence data), and the calculation speed of the point sequence data.
[0032] The calculation method selection unit 4 compares the required accuracy (distance of the point sequence data) with the reproducibility (distance of the point sequence data), and selects a calculation method with a fast calculation speed from among calculation methods that calculate point sequence data with a reproducibility that satisfies the required accuracy. According to the second embodiment, the required accuracy and reproducibility are expressed as distances rather than as ratios.
[0033] [Third Embodiment] In the third embodiment, a calculation method will be described. FIG. 15 illustrates four calculation methods, calculation method 1 to calculation method 4. Calculation method 1 calculates the end points of a block. Calculation method 2 divides the distance between the end points by a speed command. Calculation method 3 takes into account the acceleration and deceleration of the motor. Calculation method 4 takes into account a simulation value of feedback from the motor. Calculation method 4 corresponds to the calculation method of an actual numerical control device. Therefore, the reproducibility is "100%" or close to "100%".
[0034] The reproducibility increases in the order of calculation method 1 to calculation method 4. FIG. 16 shows candidate information including calculation methods 1 to 3. The reproducibility of calculation method 1, calculation method 2, and calculation method 3 are "40%, 70%, and 90%, respectively. The calculation speed is fastest in order of calculation method 1, calculation method 2, and calculation method 3.
[0035] The reproducibility can be measured by testing the calculation method in advance using a test program. Similarly, the calculation speed can be measured. Candidate information can be created from the reproducibility and calculation speed measured in advance.
[0036] According to the third embodiment, calculation methods with different degrees of reproducibility can be prepared by taking into consideration acceleration / deceleration, feedback from simulation, etc. Furthermore, by using a test program to try out the calculation methods in advance, candidate information such as the degree of reproducibility and calculation speed can be obtained.
[0037] The hardware configuration of the coordinate value calculation device 100 to which the present disclosure is applied will be described below. Fig. 17 is a hardware configuration diagram of the coordinate value calculation device 100. As shown in Fig. 17, the coordinate value calculation device 100 includes a CPU 111 that controls the entire coordinate value calculation device 100, a ROM 112 that records programs and data, and a RAM 113 for temporarily expanding data. The CPU 111 reads out a system program recorded in the ROM 112 via a bus and calculates a threshold value in accordance with the system program.
[0038] The nonvolatile memory 114 is backed up by, for example, a battery (not shown), and the stored state is maintained even when the power supply of the coordinate value calculation apparatus 100 is turned off. The nonvolatile memory 114 stores various data such as programs read from the external device 120 via the interfaces 115, 118, and 119 and operation inputs input via the input device 20. The nonvolatile memory 114 may store programs and data for executing the coordinate value calculation apparatus 100 of this embodiment.
[0039] The interface 115 is an interface for connecting the coordinate value calculation apparatus 100 to an external device 120 such as an adapter. Programs, various parameters, etc. are loaded from the external device 120. The interface 118 is an interface for connecting the coordinate value calculation apparatus 100 to a display device 30 such as a liquid crystal display. The display device 30 displays various data loaded into memory, data obtained as a result of executing programs, etc. The interface 119 is an interface for connecting the coordinate value calculation apparatus 100 to an input device 20 such as a keyboard or pointing device. The input device 20 passes commands, data, etc. based on operations by an operator to the CPU 111 via the interface 119.
[0040] Although the present disclosure has been described in detail, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial deletions, etc. are possible in these embodiments without departing from the gist of the present disclosure or the gist of the present disclosure derived from the claims and their equivalents. Furthermore, these embodiments can also be implemented in combination. For example, in the above-described embodiments, the order of each operation and the order of each process are shown as examples and are not limited to these.
[0041] The following supplementary notes are further disclosed regarding the above-described embodiment and modified examples. (Supplementary Note 1) The coordinate value calculation device (100) includes a coordinate value calculation unit (1) that analyzes a machining program and calculates point sequence data of a tool trajectory for a simulation, an accuracy determination unit (3) that determines the required accuracy of the point sequence data required for the simulation, and a calculation method selection unit (4) that references candidate information linking point sequence data calculation methods with simulation reproducibility and selects a calculation method for calculating point sequence data with a reproducibility that satisfies the required accuracy. (Supplementary Note 2) The candidate information includes information regarding the order of calculation speeds of point sequence data calculation methods, and the calculation method selection unit (4) selects a calculation method with a high calculation speed for the point sequence data from among the calculation methods for calculating point sequence data with a reproducibility that satisfies the required accuracy. (Supplementary Note 3) The calculation methods include a calculation method that calculates only the start point and end point of a block. (Supplementary Note 4) The accuracy determination unit (3) determines a machining pattern based on commands in a machining program and determines the required accuracy based on the machining pattern. (Supplementary Note 5) The accuracy determination unit (3) determines the required accuracy based on the accuracy setting of the simulation. (Supplementary Note 6) The accuracy determination unit (3) determines the machining method based on commands in the machining program, and determines the required accuracy based on the machining method. (Supplementary Note 7) The required accuracy and reproducibility are the ratio of the number of point sequence data calculated by each calculation method. (Supplementary Note 8) The required accuracy and reproducibility are the distance between point sequence data. (Supplementary Note 9) The coordinate value calculation device (100) includes a reproducibility determination unit (5) that determines the reproducibility of the calculation method based on position commands and speed commands in the machining program. (Supplementary Note 10) The computer-readable storage medium (112, 113, 114) stores instructions to cause one or more processors (111) to execute processes of analyzing a machining program, calculating point sequence data of a tool trajectory for a simulation, determining the required accuracy of the point sequence data required in the simulation, referring to candidate information linking the calculation method of the point sequence data with the reproducibility of the simulation, and selecting a calculation method for calculating the point sequence data with a reproducibility that satisfies the required accuracy.
[0042] REFERENCE SIGNS LIST 100 Coordinate value calculation device 1 Coordinate value calculation unit 2 Coordinate value output unit 3 Accuracy determination unit 4 Calculation method selection unit 5 Reproducibility determination unit 111 CPU 112 ROM 113 RAM 114 Non-volatile memory
Claims
1. A coordinate value calculation device comprising: a coordinate value calculation unit that analyzes a machining program and calculates point sequence data of a tool trajectory for a simulation; an accuracy determination unit that determines the required accuracy of the point sequence data required in the simulation; and a calculation method selection unit that references candidate information that links point sequence data calculation methods with simulation reproducibility, and selects a calculation method for calculating point sequence data with a reproducibility that satisfies the required accuracy.
2. The coordinate value calculation device according to claim 1, wherein the candidate information includes information regarding the order of calculation speeds of the point sequence data calculation methods, and the calculation method selection unit selects a calculation method with a fast calculation speed for the point sequence data from among the calculation methods that calculate the point sequence data with a reproducibility that satisfies the required accuracy.
3. The coordinate value calculation device according to claim 1, wherein said calculation method includes a calculation method for calculating only the start point and end point of a block.
4. The coordinate value calculation device according to claim 1, wherein said accuracy determination unit determines a machining pattern based on commands in a machining program, and determines the required accuracy based on the machining pattern.
5. The coordinate value calculation device according to claim 1, wherein the accuracy determination unit determines the required accuracy based on a setting of the accuracy of the simulation.
6. The coordinate value calculation device according to claim 1, wherein said accuracy determination unit determines the machining method based on commands in a machining program, and determines the required accuracy based on the machining method.
7. The coordinate value calculation device according to claim 1, wherein the required accuracy and reproducibility are the ratios of the number of point sequence data calculated by each calculation method.
8. The coordinate value calculation device according to claim 1, wherein the required accuracy and reproducibility are distances between point sequence data.
9. The coordinate value calculation device according to claim 1, further comprising a reproducibility determination unit for determining the reproducibility of the calculation method based on the position command and the speed command of the machining program.
10. A computer-readable storage medium storing instructions to cause one or more processors to execute the following process: analyze a machining program, calculate point sequence data of a tool trajectory for simulation, determine the required accuracy of the point sequence data required in said simulation, refer to candidate information linking point sequence data calculation methods with simulation reproducibility, and select a calculation method for calculating point sequence data with a reproducibility that satisfies the required accuracy.
Citation Information
Patent Citations
Simulation device
JP2021056835A
NC data creation support device, NC data creation support method, and NC data creation support program
JP2022111397A
Machine tool system, information processor and machine tool
JP2022159936A
Analysis device, analysis program, processing system, and processing machine
JP2024040099A