Numerical control device, learning device, inference device and numerical control method
Patent Information
- Application Number
- DE112021005641
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-06-02
- Publication Date
- 2025-04-10
- Estimated Expiration
- 2041-06-02
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
AreaThe present disclosure relates to a numerical control device for controlling vibration cutting, a learning device, an inference device, and a numerical control method.BackgroundNumerical control devices control machine tools that cut a workpiece rotated with a tool. One of the machine tools is a machine that performs vibration cutting, which is cutting with a tool that vibrates at a low frequency. When vibration cutting is properly performed, air cutting areas where cutting is not performed are generated between the movement path of the tool and a workpiece. By providing the air cutting portions, the machine tool shortens chips generated by the cutting, so that the chips can fall off the workpiece.The numerical control device of Patent Literature 1 calculates a time lag of a rear vibration position with respect to a front vibration position as a phase difference, based on a relationship between the amplitude of vibration and a tool feed speed with respect to a workpiece. The numerical control device of Patent Literature 1 calculates a movement path based on the calculated phase difference, calculates a vibration movement amount based on a reference vibration curve, and performs vibration cutting using the movement path and the vibration movement amount.Citing listPatent LiteraturePatent Literature 1: JP 5 745 710 B1OverviewTechnical ProblemIn the technique described in Patent Literature 1, when chips cannot be cut off due to occurrence of a follow-up delay of a servomotor or the like, a user of the numerical control device needs to adjust a parameter used in vibration cutting.The present disclosure has been made in view of the above, and it is an object thereof to provide a numerical control device that can continue control of vibration cutting without a user having to perform parameter adjustment.Solution of the ProblemIn order to solve the above-described problem and achieve the object, the present disclosure provides a numerical control device for machining a workpiece while performing vibration cutting, in which a tool and a workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, the numerical control device including: a parameter setting unit for setting a parameter having a relationship to a vibration condition for the vibration cutting based on an amount of the cutting load generated on the first axis or the second axis when the vibration cutting is performed; and a controller for controlling the vibration cutting using the set parameter.Advantageous Effects of the InventionThe numerical control device according to the present disclosure has an effect of being able to continue the vibration cutting control without a user making parameter setting.Brief Description of the DrawingsFIG. 1 is a diagram showing a configuration of a machining system including a numerical control device according to an embodiment. FIG. 2 is a flowchart showing a processing procedure for control processing by the numerical control device according to the embodiment. FIG. 3 is a diagram showing a configuration of a learning device included in the numerical control device according to the embodiment. FIG. 4 is a diagram for explaining an amplitude amount and an estimated air cutting amount calculated by the learning device according to the embodiment. FIG. 5 is a diagram for explaining an amplitude amount and an estimated air cutting amount calculated by the learning device according to the embodiment when the tool feed speed is low. FIG. 6 is a diagram for explaining a cutting load amount when the learning device according to the embodiment does not detect air cutting areas. FIG. 7 is a diagram for explaining a cutting load amount when the learning device according to the embodiment detects air cutting areas. FIG. 8 is a flowchart showing a processing procedure for learning processing by the learning device according to the embodiment. FIG. 9 is a diagram showing a configuration of an inference device included in the numerical control device according to the embodiment. FIG. 10 is a flowchart showing a processing procedure for inference processing by the inference device according to the embodiment. FIG. 11 is a diagram for explaining an estimated air cutting amount and a specified air cutting amount when a post-setting parameter that has been inferred by the inference device according to the embodiment is used in vibration cutting. FIG. 12 is a diagram showing an example of a hardware configuration for implementing the numerical control device according to the embodiment.DESCRIPTION OF EMBODIMENTSHereinafter, a numerical control device, a learning device, an inference device, and a numerical control method according to embodiments of the present disclosure will be described in detail with reference to the drawings.Embodiment.FIG. 1 is a diagram showing a configuration of a machining system including a numerical control device according to an embodiment. A machining system 100 includes a numerical control device 1 and a machine tool 2. the machine tool 2 is a machine that performs vibration cutting (low-frequency vibration cutting) with a tool on an object to be machined, for example, a cylindrical workpiece. The machine tool 2 includes a drive unit 3 that is a unit for moving the tool and the workpiece.The machine tool 2 rotates the workpiece with a major axis, which is the cylinder axis of the workpiece, as a rotational axis, and brings the tool into contact with the workpiece to machine the workpiece. The machine tool swings the tool in directions parallel to the rotation axis and moves the tool such that the tool is further moved in a direction parallel to the rotation axis while the workpiece is being machined.The numerical control device 1 is a computer that performs numerical control (NC) of the machine tool 2. The numerical control device 1 sets a parameter related to a vibration condition (hereinafter referred to as a parameter H 5) and a post-setting parameter H 6, which will be described below and which are used when the machine tool 2 performs vibration cutting.The numerical control device 1 includes a controller 10, an analysis unit 20, a storage unit 30, and a parameter setting unit 40.The storage unit 30 includes a parameter storage area 32 that stores the parameter H 5 and the post-setting parameter H 6 used when the machine tool 2 performs vibration cutting. An example of the parameter H 5 and the post-adjustment parameter H 6 is a vibration amplitude feed ratio. The vibration amplitude feed ratio is the ratio between the amplitude amount of tool vibration and a tool feed speed. The tool feed speed is the rate of movement of the tool in a direction parallel to the principal axis. The tool feed speed does not include speed changes due to the vibration of the tool. In the following description, the vibration amplitude feed ratio is referred to as a vibration amplitude feed ratio Q 1. The vibration amount is subject to the relationship of A3=Q1×F, where A3 is the amplitude amount of the tool vibration and F is the tool feed speed.The storage unit 30 stores a machining program 31 used when the numerical control device 1 controls the machine tool 2. The machining program 31 includes information on an air cutting amount during vibration cutting specified by a user (hereinafter referred to as an air cutting amount H 2), information on the tool feed speed F, etc. The air cutting amount is the length in the amplitude direction of the air cutting areas where no cutting is performed between the movement path of the tool and the workpiece. The specified air cutting amount H 2 is a command value of the air cutting amount when the tool cuts air with respect to the workpiece during vibration cutting. The specified air cutting amount H 2 may be stored in the storage unit 30.The analysis unit 20 reads out the machining program 31 from the storage unit 30. The analysis unit 20 analyzes the machining program 31 and sends the analysis results to the position command generation unit 11 of the controller 10. At the time of the analysis processing of the machining program 31, for example, the analysis unit 20 calculates the amplitude amount A 3 of the tool vibration based on the above-described relationship A 3=Q 1×F. The analysis unit 20 sends the analysis results including the information on the amplitude amount A 3 to the position command generation unit 11.The parameter setting unit 40 sets the parameter H 5 using artificial intelligence (AI). The parameter setting unit 40 acquires the specified air cutting amount H 2 from the analysis unit 20.The FB position H 3 is information indicating the actual position of the tool during vibration cutting. The FB position H 3 includes information on the feed axis position of the tool and information on a rotation angle of the main axis. The feed axis position of the tool is the position of the tool in the direction parallel to the main axis. During vibration cutting, the tool is moved forward in the direction parallel to the principal axis, which is the rotational axis of the workpiece, while vibrating in the direction parallel to the principal axis. The position of the tool at this time is the feed axis position of the tool. The main axis rotation angle is the rotation angle of the main axis. In vibration cutting, the workpiece vibrates (0.5+N) times per rotation (360 degrees) of the principal axis, where N is an integer. In the present embodiment, a case where N=1 will be described.The cutting load amount H 4 is the amount of the load generated when an axis for moving the tool (first axis) or an axis for moving the workpiece (second axis) is driven to perform vibration cutting on the workpiece with the tool. The vibration cutting provides air cutting areas where cutting between the movement path of the tool and the workpiece is not performed to allow chips to be cut off. In the air cutting areas, load states of the axis that moves the tool and the axis that moves the workpiece become smaller than when the tool is in contact with the workpiece. In the present embodiment, the numerical control device 1 thereby learns the periodic load states of the axes, automatically sets the parameter H 5 during vibration cutting, and performs vibration cutting control so that chips can be cut off even if a follow-up delay of a servo motor or the like occurs.For the numerical control device 1, the specified air cutting amount H 2 is set as the value input by the user. The numerical control device 1 performs vibration cutting control while setting the post-setting parameter H 6 such that an actual air cutting amount (an estimated air cutting amount H 9 described below) becomes the specified air cutting amount H 2 based on the duration during which the cutting load amount H 4 is low, and on the master axis rotational angle and the feed axis position.The parameter setting unit 40 includes a learning device 60 and an inference device 70 which will be described below. The parameter setting unit 40 uses machine learning to set a parameter suitable for the specified air cutting amount H 2 using the specified air cutting amount H 2, the parameter H 5, the FB position H 3, the cutting load amount H 4, and a combined position command H 8 described below. The parameter suitable for the specified air cutting amount H 2 is a parameter obtained by setting the parameter H 5 (hereinafter referred to as the post-setting parameter H 6). After determining the parameter H 6 using machine learning, the parameter setting unit 40 performs machine learning using the post-setting parameter H 6 instead of the parameter H 5. In this way, the parameter setting unit 40 acquires a new post-setting parameter H 6 suitable for a new specified air cutting amount H 2 by machine learning.The parameter setting unit 40 performs machine learning on the post-setting parameter H 6 based on the parameter H 5 or the post-setting parameter H 6. Next, a case where the parameter setting unit 40 performs machine learning on the post-setting parameter H 6 using the post-setting parameter H 6 will be described.The parameter setting unit 40 determines an air cutting duration based on the cutting load amount H 4 and calculates an estimated air cutting amount (the estimated air cutting amount H 9), which is an estimated value for the air cutting amount, based on the FB position H 3 and the combined position command H 8. The parameter setting unit 40 performs machine learning based on the estimated air cutting amount H 9, the specified air cutting amount H 2, and the post-setting parameter H 6. The parameter setting unit 40 determines the post-setting parameter H 6 by machine learning so that the estimated air cutting amount H 9 held for the actual air cutting amount is approximated to the specified air cutting amount H 2.During vibration cutting, the parameter setting unit 40 infers the post-setting parameter H 6 suitable for the specified air cutting amount H 2 based on the specified air cutting amount H 2 and the estimated air cutting amount H 9. The parameter setting unit 40 sends the inferred post-setting parameter H 6 to the vibration curve generating unit 12 of the controller 10.The position command generation unit 11 generates a position command (hereinafter referred to as a position command H 1) for the tool based on the results of analysis of the machining program 31.The vibration curve generation unit 12 generates a vibration curve for the tool (hereinafter referred to as a vibration curve H 7) based on the post-setting parameter H 6. The vibration curve generation unit 12 sends the vibration curve H 7 to the adder 13. the adder 13 adds the vibration curve H 7 to the position command H 1 to generate a combined position command (hereinafter referred to as the combined position command H 8) that is a position command including a vibration component of the tool. The adder 13 sends the combined position command H8 to the driving unit 3. The adder 13 sends the combined position command H8 also to the parameter setting unit 40.The drive unit 3 controls the position of the tool to correspond to the combined position command H 8. The drive unit 3 includes a servo controller, a servo motor, a spindle controller, and a spindle motor. The servo motor is a motor for moving the tool. The servo controller controls the servo motor. The spindle motor is a motor for rotating the principal axis as a rotation axis of the workpiece. The spindle controller controls the spindle motor. The drive unit 3 causes the movement of the tool and the workpiece using the servo controller, the servo motor, the spindle controller, and the spindle motor to perform vibration cutting. Control of the rotation of the workpiece may be effected by the controller 10 or other control.During vibration cutting, the machine tool detects the FB position H 3 and the cutting load amount H 4 and sends them to the parameter setting unit 40. the cutting load amount H 4 may be a load current value that is a current value corresponding to the load, or may be a value detected by a sensor. For example, when the cutting load amount H 4 is detected as a sensor value, a sensor such as a torque sensor may be provided on the machine tool 2.FIG. 2 is a flowchart showing a processing procedure for controlling processing by the numerical control device according to the embodiment. When the numerical control device 1 starts vibration cutting, the parameter setting unit 40 acquires the cutting load amount H 4 (step S 1). The parameter setting unit 40 sets the post-setting parameter H 6 based on the cutting load amount H 4 (step S 2). The controller 10 controls vibration cutting using the post-setting parameter H 6 (step S 3).Now, the learning processing and the inference processing by the numerical control device 1 will be described. The parameter setting unit 40 of the numerical control device 1 includes the learning device 60 and the inference device 70. the learning device 60 may be a device configured independently of the numerical control device 1 and disposed outside the numerical control device 1. The inference device 70 may be a device configured independently of the numerical control device 1 and arranged outside the numerical control device 1.< Phase>FIG. 3 is a diagram showing a configuration of the learning device included in the numerical control device according to the embodiment. The learning device 60 includes a data acquisition unit 61, a monitoring unit 63, and a model generation unit 62.Information in which the post-setting parameter H 6, the vibration amplitude feed ratio Q 1, the specified air cutting amount H 2, the FB position H 3, the cutting load amount H 4, and the combined position command H 8 are associated with each other.The data acquisition unit 61 transmits the FB position H 3, the cutting load amount H 4, and the combined position command H 8 to the monitoring unit 63. the data acquisition unit 61 acquires, from the monitoring unit 63, the estimated air cutting amount H 9 corresponding to the FB position H 3, the cutting load amount H 4, and the combined position command H 8.The post-setting parameter H 6, the specified air cutting amount H 2, and the estimated air cutting amount H 9 acquired by the data acquisition unit 61 are training data. The data acquisition unit 61 transmits the training data to the model generation unit 62. Until the post-setting parameter H 6 is calculated, the parameter H 5 is transmitted to the data acquisition unit 61 instead of the post-setting parameter H 6.The monitoring unit 63 acquires the FB position H 3, the cutting load amount H 4, and the combined position command H 8 from the data acquisition unit 61, monitors the vibration cutting, and estimates the estimated air cutting amount H 9. The monitoring unit 63 sends the estimated air cutting amount H 9 to the data obtaining unit 61. the data obtaining unit 61 associates the estimated air cutting amount H 9, the post-setting parameter H 6, and the specified air cutting amount H 2 with each other and sends them as training data to the model generating unit 62.Now, the amplitude amount A3 and the estimated air cutting load H9 will be described. FIG. 4 is a diagram for explaining an amplitude amount and the estimated air cutting amount calculated by the learning device according to the embodiment. In the graphs shown in FIGS. 4 and 5 described below, the horizontal axis represents the major axis rotational angle, and the vertical axis represents the feed axis position. FIGS. 4 and 5 show curves 51A, 52A, 51B, and 52B of the tool position during vibration cutting, i.e., the feed axis position as a function of the main axis rotation angle.In vibration cutting, the tool is advanced in the direction parallel to the major axis while vibrating in the directions parallel to the major axis. The curve 51A is a curve indicating the feed axis position of the tool at the first rotation of the workpiece. The curve 52A is a curve indicating the feed axis position of the tool at the second rotation of the workpiece. The regions below the curve 51A and above the curve 52A are air cutting regions A 2. When an air cutting period, which is a period of each air cutting area A 2, starts, a chip is cut off.The monitoring unit 63 calculates the curves 51A and 52A based on the FB position H 3 and the combined position command H 8. The amplitude amount A 3 in the curve 52A is the amplitude amount A 3 calculated by the analysis unit 20 based on the tool feed speed F and the vibration amplitude feed ratio Q 1.The monitoring unit 63 determines the air cutting duration of the air cutting areas A 2 based on the cutting load amount H 4. The monitoring unit 63 calculates the estimated air cutting amount H 9 based on the curves 51A and 52A during the air cutting period. In FIG. 4, the estimated air cutting amount H 9 is indicated by an air cutting amount A 1. The monitoring unit 63 calculates an air cutting amount of the largest value of the air cutting amounts at the FB positions H 3 within the air cutting period as the air cutting amount A 1 (estimated air cutting amount H 9).FIG. 5 is a diagram for explaining the amplitude amount and the estimated air cutting amount calculated by the learning device according to the embodiment when the tool feed speed is low. The curve 51B is a curve indicating the feed axis position of the tool at the first rotation of the workpiece. The curve 52B is a curve indicating the feed axis position of the tool during the second rotation of the workpiece. Areas below the curve 51B and above the curve 52B are air cutting areas B 2. In FIG. 5, the amplitude amount calculated by the observation unit 63 is indicated by an amplitude amount B 3.As shown in FIG. 5, when the tool feed speed F is small, the air cutting areas B 2 also become smaller together with the amplitude amount B 3 at which the chips fall. In this case, a cause such as the viscosity of the workpiece can prevent the chips from falling off. Even in this case, in the present embodiment, the monitoring unit 63 that determines the air cutting duration and the air cutting areas B 2 based on the cutting load amount H 4 can accurately determine whether air cutting areas B 2 in which chips fall off are generated. Accordingly, when air cutting areas B 2 where chips do not fall off are generated, the numerical control device 1 can generate the air cutting areas B 2 where chips fall off by setting the post-setting parameter H 6.The relationship between the cutting load amount H 4 and the air cutting areas will now be described. FIG. 6 is a diagram for explaining the cutting load amount when the learning device according to the embodiment does not detect air cutting areas. FIG. 7 is a diagram for explaining the cutting load amount when the learning device according to the embodiment detects air cutting areas.In the graphs shown in FIGS. 6 and 7, the horizontal axis represents the major axis rotation angle, and the vertical axis represents the feed axis position and the cutting load amount. FIGS. 6 and 7 show the feed axis position depending on the main axis rotation angle, and the cutting load amount H 4 depending on the main axis rotation angle.In FIG. 6, a curve 51C is a curve indicating the feed axis position of the tool at the first rotation of the workpiece, and the curve 52C is a curve indicating the feed axis position of the tool at the second rotation of the workpiece. In FIG. 6, a curve of the cutting load amount H 4 with respect to the curve 52C is indicated by a cutting load amount curve 53C.When there are areas below the curve 51C and above the curve 52C, these areas are air-cutting areas, but in FIG. 6, there are no air-cutting areas. Consequently, chips are not cut off. The cutting load amount curve 53C changes slowly in this case according to the curve 52C.In FIG. 7, the curve 51D is a curve indicating the feed axis position of the workpiece in the first rotation of the workpiece, and the curve 52D is a curve indicating the feed axis position of the tool in the second rotation of the workpiece. In FIG. 7, a curve of the cutting load amount H 4 with respect to the curve 52D is indicated by a cutting load amount curve 53D.Areas below the curve 51D and above the curve 52D are air cutting areas D 2. The cutting load amount curve 53D changes slowly in accordance with the curve 52D. However, during an air cutting period D 4 of each air cutting region D 2, the cutting load amount curve 53D significantly decreases because the tool does not come into contact with the workpiece.The monitoring unit 63 determines the air cutting period D 4 based on a change in the cutting load amount curve 53D. Then, the monitoring unit 63 calculates an air cutting amount D 1 during the air cutting period D 4, and sends the estimated air cutting amount H 9, which is the air cutting amount D 1, to the model generation unit 62 via the data acquisition unit 61.The model generation unit 62 mainly learns the post-setting parameter H 6 and the vibration amplitude feed ratio Q 1 based on the training data including the post-setting parameter H 6, the specified air cutting amount H 2, and the estimated air cutting amount H 9.As a learning algorithm used by the model generation unit 62, a known algorithm such as supervised learning, unsupervised learning, or reinforcement learning may be used. As an example, a case where the model generation unit 62 applies reinforcement learning to the learning algorithm will be described. In reinforcement learning, an agent in a certain environment observes a current state (environment parameter) and determines an action to be performed. The agent's action dynamically changes the environment. The agent obtains a reward in accordance with the change in the environment. The agent repeats this and learns an action strategy that obtains the greatest reward through a series of actions. As typical methods of reinforcement learning, Q-learning and TD-learning are known. For example, in Q learning, a typical update function for the action value function Q(s, a) is represented by Formula (1) below. Formula 1:In the formula (1), s t represents an environmental state at a time t, and a t represents an action at the time t. The action a t changes the state to s t+1. r t+1 represents a reward given due to the change of the state, γ represents a discount factor, and α represents a learning rate. γ is in the range of 0<γ≤1. α is in the range of 0<α≤1. The post-setting parameter H 6 is the action a t. The specified air cutting amount H 2 and the estimated air cutting amount H 9 are the state s t. The best action a t in the state s t at time t is learned.In the update function represented by the formula (1), when the action value Q of an action a of the largest Q value at time t+1is larger than the action value Q of an action a performed at time t, the action value Q is increased. Conversely, the action value Q is decreased. In the update equation represented by the formula (1), in other words, the action value function Q(s, a) is updated so that the action value Q of the action a at the time t approaches the best action value at the time t+1. Thus, the best action value in a particular environment is conveyed sequentially to the action values in the previous environments.As described above, when a learning model is generated by reinforcement learning, the model generation unit 62 includes a reward calculation unit 620 and a function update unit 621.The reward calculation unit 620 calculates a reward based on the specified air cutting amount H 2 and the estimated air cutting amount H 9. The reward calculation unit 620 calculates a reward r based on an air cutting amount difference, which is the difference between the specified air cutting amount H 2 and the estimated air cutting amount H 9.For example, the reward calculation unit 620 increases the reward r (for example, it gives a reward of "1") when the air cutting amount difference between the specified air cutting amount H 2 and the estimated air cutting amount H 9 decreases, and on the other hand, it reduces the reward r (for example, it gives a reward of "-1") when the air cutting amount difference increases.The reward calculation unit 620 may calculate a reward based on the estimated air cutting amount H 9. In this case, the data acquisition unit 61 does not need to acquire the specified air cutting amount H 2.In a case where the specified air cutting amount H 2 is not set, the reward calculation unit 620 increases the reward r (for example, gives the reward of "1") when the estimated air cutting amount H 9 decreases and is larger than zero (there are periodic load changes), and on the other hand, decreases the reward r (for example, gives the reward of "-1") when the estimated air cutting amount H 9 increases or is zero (there are no periodic load changes). In this manner, the reward calculation unit 620 changes the reward criteria depending on whether or not the specified air cutting amount H 2 is present.The function update unit 621 updates a function for determining the post-setting parameter H 6 in accordance with the reward calculated by the reward calculation unit 620, and outputs the updated function as the learned model to the learned model storage unit 80. For example, in Q learning, the function update unit 621 uses the action value function Q(s t, a t), which is represented by the formula (1), as the function for calculating the post-setting parameter H 6.The model generation unit 62 repeatedly performs the above-described learning. The learned model storage unit 80 stores the action value function Q(s t, a t), which has been updated by the function updating unit 621, i.e., the learned model. The learned model storage unit 80 may be disposed in the learning device 60 or outside the learning device 60. Further, the learned model storage unit 80 may be disposed in the numerical control device 1 or outside the numerical control device 1.Now, the processing by the learning device for learning the post-setting parameter H 6 will be described with reference to FIG. 8. FIG. 8 is a flowchart showing a processing procedure for learning processing by the learning device according to the embodiment.The data acquisition unit 61 acquires the post-setting parameter H 6, the specified air cutting amount H 2, and the estimated air cutting amount H 9 as training data (step S 110).The model generation unit 62 calculates a reward based on the specified air cutting amount H 2 and the estimated air cutting amount H 9 (step S 120). Specifically, the reward calculation unit 620 of the model generation unit 62 acquires the specified air cutting amount H 2 and the estimated air cutting amount H 9, and determines whether to increase or reduce the reward based on a predetermined reward criterion (an increase or a decrease in the air cutting amount difference).When the reward calculation unit 620 determines that the reward is increased (step S 120, an air cutting amount difference is reduced), the reward calculation unit 620 increases the reward (step S 130). That is, the reward calculation unit 620 increases the reward when a reward increase criterion due to a decrease in the air cutting amount difference is satisfied.On the other hand, when the reward calculation unit 620 determines that the reward is reduced (step S 120, the air cutting amount difference has increased), the reward calculation unit 620 reduces the reward (step S 140). That is, the reward calculation unit 620 reduces the reward when a reward reduction criterion due to an increase in the air cutting amount difference is satisfied.The function update unit 621 updates the action value function Q(s t, a t), represented by the formula (1) stored in the learning model storage unit 80, based on the reward calculated by the reward calculation unit 620 (step S 150).The learning device 60 repeatedly performs the above steps in steps S 110 to S 150 and stores the generated action value function Q(s t, a t) as the learned model in the learned model storage unit 80.<Use Phase>FIG. 9 is a diagram showing a configuration of the inference device included in the numerical control device according to the embodiment. The inference device 70 includes a data acquisition unit 71 and an inference unit 72. The data acquisition unit 71 acquires the specified air cutting amount H 2 and the estimated air cutting amount H 9.The data acquisition unit 71 acquires the specified air cutting amount H 2 from the analysis unit 20. When the data acquisition unit 71 calculates the estimated air cutting amount H 9, the inference device 70 includes a monitoring unit similar to the monitoring unit 63. the data acquisition unit 71 may calculate the estimated air cutting amount H 9 through processing such as that by the monitoring unit 63. When the data acquisition unit 71 calculates the estimated air cutting amount H 9 by processing like that by the monitoring unit 63, the data acquisition unit 71 estimates the estimated air cutting amount H 9 based on the FB position H 3, the cutting load amount H 4, and the combined position command H 8.The inference unit 72 infers the post-setting parameter H 6 using the learned model stored in the learned model storage unit 80. Specifically, by inputting the specified air cutting amount H 2 and the estimated air cutting amount H 9 obtained by the data obtaining unit 71 into the learned model, the inference unit 72 may infer the post-setting parameter H 6 suitable for the specified air cutting amount H 2 and the estimated air cutting amount H 9. The inference unit 72 sends the inferred post-setting parameter H 6 to the vibration curve generation unit 12.In the present embodiment, the inference device 70 that outputs the post-setting parameter H 6 using the learned model learned by the model generation unit 62 of the numerical control device 1 has been described. The inference device 70 may acquire a learned model from another numerical control device. In this case, the inference device 70 outputs the post-setting parameter H 6 based on the learned model obtained from the other numerical control device.Now, the processing by the inference device 70 for inferencing the post-setting parameter H 6 will be described with reference to FIG. 10. FIG. 10 is a flowchart showing a processing procedure for inference processing by the inference device according to the embodiment.The data acquisition unit 71 of the inference device 70 acquires the specified air cutting amount H 2 and the estimated air cutting amount H 9 as inference data (step S 210).The inference unit 72 inputs the specified air cutting amount H 2 and the estimated air cutting amount H 9 as the inference data to the learned model stored in the learned model storage unit 80 (step S 220) to obtain the post-setting parameter H 6 corresponding to the input information. The inference unit 72 outputs the obtained post-setting parameter H 6 to the controller 10 via the parameter setting unit 40 (step S 230).The vibration curve generation unit 12 of the controller 10 generates the vibration curve H 7 using the post-setting parameter H 6 output from the inference unit 72 (step S 240). Thus, when the specified air cutting amount H 2 is set, the numerical controller 1 sets the post-setting parameter H 6 such that the estimated air cutting amount H 9 becomes the specified air cutting amount H 2 to perform vibration cutting. When the specified air cutting amount H 2 is not set, the numerical controller 1 sets the post-setting parameter H 6 (such as the vibration amplitude feed rate ratio Q 1) such that the estimated air cutting amount H 9 becomes a minimum air cutting amount larger than zero to perform vibration cutting. The numerical control device 1 calculates, in other words, the post-setting parameter H 6 to generate a minimum air cutting amount, and controls the vibration cutting with this post-setting parameter H 6.The non-zero minimum air cutting amount is the smallest air cutting amount among air cutting amounts at which chips may fall off. The numerical control device 1 sets air cutting amounts that allow chips to fall off as preset values based on past cutting load amounts H 4 during vibration cutting.The model generation unit 62 may use deep learning as the learning algorithm to learn extraction of features. The model generation unit 62 may perform machine learning according to another known method such as a neural network, genetic programming, functional logic programming, or a support vector machine.The learning device 60 and the inference device 70 may be, for example, devices that are separate from the numerical control device 1 and connected to the numerical control device 1 via a network. Further, the learning device 60 and the inference device 70 may be included in the numerical control device 1. Further, the learning device 60 and the inference device 70 may reside on a cloud server.The model generation unit 62 may learn the post-setting parameter H 6 using training data acquired from a plurality of numerical control devices 1. The model generation unit 62 may acquire training data from a plurality of numerical control devices 1 used in the same area, or may learn the post-setting parameter H 6 using training data collected from a plurality of the numerical control devices 1 operating independently in different areas. The numerical control device 1 from which training data is collected may be added to objects or removed from objects in the center. Further, the learning device 60 that has learned the post-setting parameter H 6 on one specific numerical control device 1 may be used for another numerical control device 1, and the post-setting parameter H 6 may be learned again on the other numerical control device 1 to be updated.As described above, the numerical control device 1 of the present embodiment learns and outputs the post-setting parameter H 6 such that the estimated air cutting amount H 9 approaches and outputs the specified air cutting amount H 2 set by the user.FIG. 11 is a diagram for explaining the estimated air cutting amount and the specified air cutting amount when the post-setting parameter inferred by the inference device according to the embodiment is used in vibration cutting. In a graph shown in FIG. 11, the horizontal axis represents the major axis rotation angle, and the vertical axis represents the feed axis position. FIG. 11 shows the feed axis position as a function of the main axis rotation angle.A curve 51E is a curve indicating the feed axis position of the tool at the first rotation of the workpiece. A curve 52B is a curve indicating the feed axis position of the tool at the second rotation of the workpiece. Areas below the curve 51E and above the curve 52E are air cutting areas E 2. The estimated air cutting amount H 9 is indicated by an air cutting amount E 1 in FIG. 11.When the user sets the air cutting amount (specified air cutting amount H 2) corresponding to the air cutting amounts E 2, the numerical control device 1 sets the post-setting parameter H 6 such that the estimated air cutting amount H 9 (air cutting amount E 1) becomes equal to the specified air cutting amount H 2. Consequently, the estimated air cutting amount H 9 becomes equal to the specified air cutting amount H 2.When vibration cutting is performed, a follow-up delay of the servo motor may occur or air cutting areas may be small. In such a case, when the post-setting parameter H 6 is not set unlike the numerical control device 1 of the present embodiment, chips cannot fall off. On the other hand, even when chips do not fall off, the numerical control device 1 of the present embodiment, which sets the post-setting parameter H 6 based on the cutting load amount H 4, enables chips to fall off by setting the post-setting parameter H 6.A hardware configuration of the numerical control device 1 will now be described. FIG. 12 is a diagram showing an example of a hardware configuration for implementing the numerical control device according to the embodiment.The numerical control device 1 may be implemented by an input device 240, a processor 210, a memory 220, and an output device 230. An example of the processor 210 is a central processing unit (CPU, also called a central processor, processing unit, arithmetic unit, microprocessor, microcomputer, or digital signal processor (DSP)), or a large-integration system (LSI). Examples of the memory 220 include a random access memory (RAM) and a read only memory (ROM).The numerical control device 1 is implemented by the processor 210 that reads and executes the computer-executable machining program 31 to implement the operation of the numerical control device 1 stored in the memory 220. The machining program 31, which is a program for implementing the operation of the numerical control device 1, may be regarded as a program that causes the computer to execute the procedures or the methods in the numerical control device 1.The machining program 31 executed by the numerical control device 1 has a module configuration including the controller 10, the analysis unit 20, and the parameter setting unit 40 loaded into the main memory and generated in the main memory.The input device 240 acquires the specified air cutting amount H 2, the parameter H 5, and the machining program 31 from the user or an external device and sends them to the memory 220.The memory 220 corresponds to the storage unit 30 and the learned model storage unit 80. The memory 220 stores the learned model, the specified air cutting amount H 2, the parameter H 5, the post-setting parameter H 6, the machining program 31, etc. The learned model, the specified air cutting amount H 2, the parameter H 5, the post-setting parameter H 6, and the machining program 31 are sent to the processor 210. The memory 220 is also used as temporary memory when the processor 210 performs the various types of processing. The output device 230 sends the combined position command H 8 to the drive unit 3.The machining program 31 may be stored on a computer readable storage medium in an installable format or an executable format as a file, and provided to the computer as a program product. The machining program 31 may be provided to the numerical control device 1 via a network such as the Internet. The functions of the numerical control device 1 may be partially implemented by dedicated hardware such as a dedicated circuit and partially implemented by software or firmware. The numerical control device 1, the learning device 60, and the inference device 70 may all be implemented by another hardware configuration.According to the embodiment, as described above, the numerical control device 1 calculates the post-setting parameter H 6 used in vibration cutting based on the cutting load amount H 4 when vibration cutting is performed, and controls the vibration cutting using the post-setting parameter H 6, and thus can continue control of the vibration cutting without the user having to perform further setting of a parameter.The numerical control device 1 performs vibration cutting while performing the parameter setting so as to cut chips, and thus can prevent the vibration cutting from being continued without cutting chips.The user only needs to input a vibration cutting command to the numerical control device 1, and does not need to make further setting of parameters, so that operability is improved.Even if the tool wears due to continued operation of the machine tool 2 over a long time, which changes air cutting areas, the numerical control device 1 can control vibration cutting without the user having to perform further parameter setting.Even when the tool feed rate F changes, the numerical control device 1 can control the vibration cutting without the user having to perform further parameter setting.The configuration described in the above embodiment shows an example and may be combined with other things or may be partially omitted or modified without departing from the spirit thereof.List of reference characters1 Numerical control device; 2 Machine tool; 3 Drive unit; 10 Controller; 11 Position command generation unit; 12 Vibration curve generation unit; 13 Adder; 20 Analysis unit; 30 Storage unit; 31 Machining program; 32 Parameter storage area; 40 Parameter setting unit; 51A, 52A, 51B, 52B, 51C, 52C, 51D, 52D, 51E, 52E curve; 53C, 53D Cutting load amount curve; 60 Learning device; 61, 71 Data acquisition unit; 62 Model generation unit; 63 Monitoring unit; 70 Inference device; 72 Inference unit; 80 Learned model storage unit; 100 Machining system; 210 Processor; 220 Memory; 230 Output device; 240 Input device; 620 Reward calculation unit; 621 Function update unit; A1, D1, E1 Air cutting amount; A2, B2, D2, E2 air cutting range; A3, B3 amplitude amount; D4 air cutting period; H1 position command; H2 specified air cutting amount; H3 FB position; H4 cutting load amount; H5 parameter; H6 post-adjustment parameter; H7 vibration curve; H8 combined position command; H9 estimated air cutting amount.
Claims
A numerical control device (1) for machining a workpiece in performing vibration cutting in which a tool and the workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, the device (1) comprising: a parameter setting unit (40) for setting a parameter related to a vibration condition for vibration cutting during vibration cutting based on an amount of a cutting load (H4) generated at the first axis or the second axis and changing during vibration cutting; A controller (10) for controlling vibration cutting using the set parameter (H6), wherein when there is a difference between a specified air cutting amount (H2) which is a command value of an air cutting amount at a time when the tool cuts air with respect to the workpiece during vibration cutting and an estimated air cutting amount (H9) which is an estimated value of the air cutting amount, the parameter setting unit (40) calculates the parameter at which the estimated air cutting amount (H9) approaches the specified air cutting amount (H2).The numerical control device (1) according to claim 1, wherein an air cutting area at a time when the tool cuts air with respect to the workpiece during vibration cutting is determined based on an amount of change in the cutting load amount (H4), and wherein the estimated air cutting amount (H9) is estimated by calculating the air cutting amount in the air cutting area.A numerical control device (1) for machining a workpiece in performing vibration cutting in which a tool and the workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, the device (1) comprising: a parameter setting unit (40) for setting a parameter related to a vibration condition for vibration cutting during vibration cutting based on an amount of a cutting load (H4) generated at the first axis or the second axis and changing during vibration cutting; and a controller (10) for controlling vibration cutting using the set parameter (H6), wherein the parameter setting unit (40) calculates the parameter with which an estimated value of the air cutting amount at a time when the tool cuts air with respect to the workpiece during vibration cutting becomes a minimum air cutting amount larger than zero.The numerical control device (1) according to claim 1 or 2, wherein the parameter includes a vibration amplitude feed ratio that is a ratio between an amplitude amount of vibration of the workpiece and a feed speed of the tool in a direction parallel to the second axis.The numerical control device (1) according to claim 1, further comprising: a learning device (60) for learning the parameter, wherein the learning device (60) includes a data acquisition unit (61) for acquiring training data including the estimated air cutting amount (H9) and the parameter associated with the estimated air cutting amount (H9), and a model generation unit (62) for generating a learned model for infering the parameter from the estimated air cutting amount (H9) using the training data.The numerical control device (1) according to claim 1, further comprising: an inference device (70) for inferencing the parameter, wherein the inference device (70) includes a data acquisition unit (71) for acquiring the estimated air cutting amount (H9), and an inference unit (72) for outputting the parameter from the estimated air cutting amount (H9) acquired by the data acquisition unit (71) using a learned model for inferencing the parameter from the estimated air cutting amount (H9).A learning device (60) comprising: a data acquisition unit (61) for acquiring training data including an estimated air cutting amount (H9) that is an estimated value of an amount of air cutting of a tool with respect to a workpiece when vibration cutting is performed on the workpiece with the tool and the tool and the workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, and a parameter used in the vibration cutting and related to the estimated air cutting amount (H9); and a model generation unit (62) for generating a learned model for infering the parameter from the estimated air cutting amount (H9) using the training data.The learning device (60) according to claim 7, wherein the data acquisition unit (61) acquires the training data including the estimated air cutting amount (H9), a specified air cutting amount (H2) that is a command value of the air cutting amount, and the parameter associated with the estimated air cutting amount (H9) and the specified air cutting amount (H2), and wherein the model generation unit (62) generates the learned model for infering the parameter from the estimated air cutting amount (H9) and the specified air cutting amount (H2) using the training data.An inference device (70) comprising: a data acquisition unit (71) for acquiring an estimated air cutting amount (H9) that is an estimated value of an amount of air cutting of a tool with respect to a workpiece when vibration cutting is performed on the workpiece, the tool and the workpiece oscillating relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece; and an inference unit (72) for inferring a parameter used in the vibration cutting from the estimated air cutting amount (H9) acquired by the data acquisition unit (71) using a learned model for inferring the parameter from the estimated air cutting amount (H9), and outputting the inferred parameter.The inference device (70) according to claim 9, wherein the data acquisition unit (71) acquires the estimated air cutting amount (H9) and a specified air cutting amount (H2) which is a command value of air cutting, wherein the inference unit (72) infers the parameter from the estimated air cutting amount (H9) and the specified air cutting amount (H2) acquired by the data acquisition unit (71) using the learned model for infering the parameter from the estimated air cutting amount (H9) and the specified air cutting amount (H2), and wherein the inference unit outputs the inferred parameter.A numerical control method for machining a workpiece during performing vibration cutting in which a tool and the workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, the method comprising: a parameter setting step of setting, by a numerical control device (1), a parameter related to a vibration condition for the vibration cutting during the vibration cutting based on an amount of a cutting load (H4) generated at the first axis or the second axis and changing during the vibration cutting; A control step of controlling vibration cutting using the set parameter (H6) by the numerical control device (1), wherein in the parameter setting step, when there is a difference between a specified air cutting amount (H2) that is a command value of an air cutting amount at a time when the tool cuts air with respect to the workpiece during vibration cutting and an estimated air cutting amount (H9) that is an estimated value of the air cutting amount, the numerical control device (1) calculates the parameter at which the estimated air cutting amount (H9) approaches the specified air cutting amount (H2).A numerical control method for machining a workpiece during performing vibration cutting in which a tool and the workpiece vibrate relative to each other by driving a first axis for driving the tool or a second axis for driving the workpiece, the method comprising: a parameter setting step of setting, by a numerical control device (1), a parameter related to a vibration condition for the vibration cutting during the vibration cutting based on an amount of a cutting load (H4) generated at the first axis or the second axis and changing during the vibration cutting; and a control step of controlling vibration cutting using the set parameter (H 6) by the numerical control device (1), wherein in the parameter setting step, the numerical control device (1) calculates the parameter with which an estimated value of an air cutting amount at a time when the tool cuts air with respect to the workpiece during vibration cutting becomes larger than zero.
Citation Information
Patent Citations
Vibration cutting device and method of vibration cutting
DE102007057468A1
control device for a multi-axis machine tool
DE102016116901A1
Cutting device for vibration cutting
EP2103376B1
Numerical control device
JP5745710B1
JP000005745710B1