Numerical control device, machining system, numerical control method, and machining method

CN117957088BActive Publication Date: 2026-09-22MITSUBISHI ELECTRIC CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202180102184.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-30
Publication Date
2026-09-22
Estimated Expiration
2041-09-30

AI Technical Summary

Technical Problem

在这里,即使按照在数控程序中记述的指令对工作机械进行控制,有时由于各种要因而无法按照指令进行加工,会产生加工误差

Benefits of technology

[0009]根据本发明,具有下述效果,即,能够高精度地减小工作机械的加工误差。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117957088B_ABST
    Figure CN117957088B_ABST
Patent Text Reader

Abstract

The numerical control device (3) is characterized by having: an instruction generating section (31) that generates a movement instruction, i.e., a basic movement instruction, based on a numerical control program (4), and generates a movement instruction, i.e., a corrected movement instruction, that is corrected from the basic movement instruction; a coupled simulation section (33) that calculates process information that indicates a result obtained by simulating machining of a workpiece (W) by a tool (23) using the basic movement instruction and the corrected movement instruction, respectively, applied to a work machine (2), based on an effect of a process (M) of machining the workpiece (W) by the tool (23) on vibration generated in an action of the work machine (2) and an action of a drive system (20); and a process evaluation section (34) that evaluates a size of a machining error when the machining is performed using a plurality of movement instructions, respectively, based on a plurality of the process information, and selects the movement instruction applied to the work machine (2) from the basic movement instruction and the corrected movement instruction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to CNC devices, machining systems, CNC methods, and machining techniques for controlling machine tools. Background Technology

[0002] A machine tool is a machining device capable of performing removal operations, which involves applying force or energy to the workpiece using a cutting tool, thereby removing unwanted portions from the workpiece. The machine tool has a spindle drive system that rotates the cutting tool or the workpiece, and a feed drive system that changes the relative position of the cutting tool and the workpiece. A CNC device drives the spindle drive system and the feed drive system according to operating instructions generated based on a CNC program, thereby machining the workpiece. However, even when the machine tool is controlled according to the instructions described in the CNC program, machining errors may occur due to various factors that prevent it from performing the machining operations as instructed.

[0003] Patent Document 1 discloses a technique that calculates the displacement of the tool caused by the cutting resistance applied to the tool during machining, thereby reproducing the characteristics of the machined surface. In the method described in Patent Document 1, by pre-storing parameters representing the dynamic characteristics of the tool, the displacement of the tool center when the cutting resistance is generated, corresponding to the cutting thickness calculated by simulation, is regarded as the machining error.

[0004] Patent Document 1: Japanese Patent Application Publication No. 2013-132733 Summary of the Invention

[0005] However, the existing technology described above suffers from the problem of not being able to reduce machining errors with high precision. In the technology described in Patent Document 1, the deflection of the cutting tool is predicted, and the displacement of the tool center is considered as the machining error. However, in reality, during the operation of a machine tool, the machining process, the operation of the drive system, and the mechanical dynamics of the components that vibrate during the machine tool's operation all interact with each other. Here, the machining process refers to the series of processes in which the cutting edge of the tool penetrates the workpiece to generate chips and forms a machined surface. Mechanical dynamics refers to the dynamic characteristics of the components that vibrate when vibrations are transmitted from vibration sources inside and outside the machine tool. Therefore, the method described in Patent Document 1 cannot accurately evaluate machining errors and cannot reduce them with high precision.

[0006] The present invention is proposed in view of the above circumstances, and its purpose is to obtain a CNC device that can reduce the machining error of working machinery with high precision.

[0007] To address the aforementioned issues and achieve the objective, the CNC device of the present invention controls a machine tool having a drive system by assigning operation commands to the machine tool. This drive system includes a spindle drive system that drives a spindle used for machining a workpiece or a spindle that rotates the workpiece, and a feed drive system that drives a feed axis that changes the relative position of the workpiece and the tool. The CNC device is characterized by having: an instruction generation unit that generates operation commands (basic operation commands) based on a CNC program, and generates modified operation commands (corrected operation commands) that are modified from the basic operation commands; a coupling simulation unit that calculates process information based on the influence of the drive system's operation and the dynamics of components vibrating during the machine tool's operation on the machining process of the workpiece using the tool, the process information representing the result of simulating machining when both basic and modified operation commands are assigned to the machine tool; and a process evaluation unit that evaluates the magnitude of machining errors when multiple operation commands are used based on multiple process information, and selects the operation command assigned to the machine tool from the basic and modified operation commands.

[0008] The effects of the invention

[0009] According to the present invention, the following effect is achieved: the machining error of the working machine can be reduced with high precision. Attached Figure Description

[0010] Figure 1 This is a diagram showing the functional structure of the processing system involved in Implementation Method 1.

[0011] Figure 2 It means Figure 1 A diagram showing an example of the physical structure of a machine tool.

[0012] Figure 3 It is a graph showing the time waveforms of the spindle rotation speed and feed rate in the basic operation commands.

[0013] Figure 4 It means to use Figure 3 The diagram shows the cutting tool and the workpiece during machining, based on the spindle rotation speed and feed rate.

[0014] Figure 5 It is a graph showing the time waveforms of the spindle rotation speed and feed rate in the modified operation command.

[0015] Figure 6 It means to use Figure 5 The diagram shows the cutting tool and the workpiece during machining, based on the spindle rotation speed and feed rate.

[0016] Figure 7 It means Figure 1 The diagram shows the relationship between the spindle drive system, mechanical dynamics, and machining process.

[0017] Figure 8 It is Figure 7 The diagram shows the physical quantities along with the physical structure of the working machine.

[0018] Figure 9 It means Figure 1 The diagram shows the relationship between the feed drive system, mechanical dynamics, and machining process.

[0019] Figure 10 It is Figure 9 The diagram shows the physical quantities along with the physical structure of the working machine.

[0020] Figure 11 It is used for Figure 1 The diagram illustrates an example of a spindle drive control model.

[0021] Figure 12 It is used for Figure 1 The diagram illustrates an example of a feed drive control model.

[0022] Figure 13 It is used for Figure 1 The flowchart illustrates the operation of the numerical control device shown.

[0023] Figure 14 This is a diagram showing the functional structure of the processing system involved in Implementation Method 2.

[0024] Figure 15 It is used for Figure 14 The flowchart illustrates the operation of the numerical control device shown.

[0025] Figure 16 It means and Figure 14 A diagram showing an example of the structure of a learning device related to a numerical control device.

[0026] Figure 17 It is used for Figure 16 The flowchart illustrates the learning process of the learning device shown.

[0027] Figure 18 It means and Figure 14 A diagram showing an example of the structure of the inference device related to the numerical control device.

[0028] Figure 19 It is used for Figure 18 The flowchart illustrates the operation of the inference device shown.

[0029] Figure 20 This is a diagram showing the structure of the processing system involved in Embodiment 3.

[0030] Figure 21 This is a diagram showing dedicated hardware for implementing the functions of the numerical control device, learning device, and inference device involved in embodiments 1 to 3.

[0031] Figure 22 This is a diagram showing the structure of the control circuit used to implement the functions of the numerical control device, learning device, and inference device involved in embodiments 1 to 3. Detailed Implementation

[0032] The numerical control device, machining system, numerical control method, and machining method according to embodiments of the present invention will now be described in detail with reference to the accompanying drawings. Furthermore, in the following description, multiple structural elements having the same function are sometimes distinguished by adding a hyphen and a number after a common number. When it is not necessary to distinguish multiple structural elements having the same function individually, only the common number is marked.

[0033] Implementation method 1.

[0034] Figure 1 This is a diagram illustrating the functional structure of the machining system 1 according to Embodiment 1. The machining system 1 includes a machine tool 2 and a numerical control device 3. The numerical control device 3 assigns operating instructions generated based on instructions described in the numerical control program 4 to the machine tool 2, thereby controlling the machine tool 2.

[0035] The machine tool 2 has a spindle drive system 21, one or more feed drive systems 22, a cutting tool 23 for machining the workpiece W, and a worktable 24 for holding the workpiece W.

[0036] The spindle drive system 21 includes a spindle motor 211 and a spindle drive mechanism 212 driven by the spindle motor 211. A tool 23 is connected to the spindle drive system 21, and the spindle drive system 21 enables the tool 23 to rotate. An encoder (not shown) is included in either the spindle motor 211 or the spindle drive mechanism 212 to represent angle information of the spindle drive system 21.

[0037] The feed drive system 22 includes a servo motor 221 and a feed drive mechanism 222 driven by the servo motor 221. The feed drive system 22 is capable of changing the relative position of the tool 23 and the workpiece W. An encoder (not shown) representing the position information of the feed drive system 22 is included in the servo motor 221 and the feed drive mechanism 222. A worktable 24 or tool 23 is connected to the feed drive system 22 to hold the workpiece W. By moving the worktable 24 or tool 23, the feed drive system 22 can change the relative position of the tool 23 and the workpiece W. Furthermore, in... Figure 1 In the example shown, the machine tool 2 is configured with a feed drive system 22-1 that moves the cutting tool 23 and a feed drive system 22-2 that moves the worktable 24. Both the cutting tool 23 and the worktable 24 can be moved, but only the cutting tool 23 or only the worktable 24 can be moved. The goal is to change the relative position of the workpiece W held by the cutting tool 23 and the worktable 24. The feed drive system 22 changes the relative position of the cutting tool 23 and the workpiece W, thereby allowing the cutting tool 23 to cut the workpiece W along the machining path.

[0038] The spindle drive system 21 and feed drive system 22 are connected to the CNC device 3, and control the spindle motor 211 and servo motor 221 through operation commands given by the CNC device 3. Hereinafter, when referring specifically to the spindle drive system 21 and feed drive system 22, they will be referred to as drive system 20. Furthermore, the series of processes in which the cutting edge of the tool 23 penetrates into the workpiece W to generate chips and forms a machined surface is called machining process M.

[0039] Figure 2 It means Figure 1 The diagram shows an example of the physical structure of the machine tool 2. The worktable 24 is a horizontal table on which the workpiece W is placed. The spindle drive mechanism 212 is configured such that the cutting tool 23 is positioned above the workpiece W held by the worktable 24. The spindle motor 211 is arranged adjacent to the spindle drive mechanism 212. The spindle of the spindle drive system 21, which includes the spindle motor 211 and the spindle drive mechanism 212, is perpendicular to the horizontal plane of the worktable 24, and the spindle drive system 21 rotates the cutting tool 23 around the spindle.

[0040] The feed drive mechanism 222-1 of the feed drive system 22-1 that moves the tool 23 is connected to the tool 23 via a component that includes a spindle drive mechanism 212 on which the tool 23 is mounted. The servo motor 221-1 of the feed drive system 22-1 is arranged adjacent to the feed drive mechanism 222-1. The feed axis of the feed drive system 22-1 is parallel to the spindle, and the feed drive system 22-1 moves the tool 23 up and down along the feed axis.

[0041] The feed drive mechanism 222-2 of the feed drive system 22-2 that moves the worktable 24 is connected to the worktable 24. The servo motor 221-2 of the feed drive system 22-2 is arranged adjacent to the feed drive mechanism 222-2. The feed axis of the feed drive system 22-2 is in the horizontal plane of the worktable 24, and the feed drive system 22-2 moves the worktable 24 in the horizontal direction. Furthermore, only one feed drive system 22 that moves the worktable 24 has been described here, but the machine tool 2 may also have a feed drive system 22 that is perpendicular to the feed axis of the feed drive system 22-2 and has a feed axis in the horizontal plane of the worktable 24.

[0042] Furthermore, the physical structure shown here is an example used to simplify the explanation; the physical structure of machine 2 is not limited to... Figure 2 The example shown. For example, the feed drive system 22 of the machine tool 2 can be one or more or more than three. The direction of the spindle and feed axis is also an example. In addition, the table-shaped worktable 24 is an example of a mechanism for holding the workpiece W. Any structure that can hold the workpiece W and control its relative position with respect to the tool 23 is acceptable.

[0043] Return to Figure 1 The numerical control device 3 has an instruction generation unit 31, a storage unit 32, a coupling simulation unit 33, a process evaluation unit 34, and a drive control unit 35.

[0044] The CNC program 4 contains multiple instructions that direct the movement of the spindle and feed axes of the machine tool 2. For example, the instructions in the CNC program 4 specify the path of the tool 23 by its relative position to the workpiece W. The instructions specifying the path of the tool 23 include multiple position instructions specifying positions along the path. Furthermore, the CNC program 4 also includes spindle speed instructions indicating the spindle's rotational speed at the positions indicated by each position instruction, and feed speed instructions indicating the movement speed of the feed axes. The CNC program 4 can be provided to the CNC device 3 from outside the CNC device 3, or it can be stored internally within the CNC device 3.

[0045] The instruction generation unit 31 parses the instructions recorded in the CNC program 4 and generates continuous operation instructions for controlling the machine tool 2. The instruction generation unit 31 generates basic operation instructions and modified operation instructions. The basic operation instructions are those that are executed directly by the machine tool 2 without modifying the instructions recorded in the CNC program 4. The modified operation instructions are those that modify the basic operation instructions. The instruction generation unit 31 can generate one or more modified operation instructions. A modified operation instruction can be configured to change at least one of the following: the path of relative movement of the tool 23 to the workpiece W is the same as the basic operation instruction; and the feed rate of the feed axis and the cutting thickness of the workpiece W are modified. The feed rate is the feed per unit operation, for example, the feed rate of each cutting edge of the tool 23. In this case, in the modified operation command, at least one of the spindle speed command and feed rate command at the instant when each of the multiple cutting edges of the tool 23 feeds toward the workpiece W is different for each cutting edge. The spindle speed command and feed rate command at each moment are modulated in accordance with the angles of each of the multiple cutting edges of the tool 23 and the relative position between the tool 23 and the workpiece W. The command generation unit 31 can generate a modified operation command as a modified operation command, corresponding to at least one of the spindle speed command and feed rate command at each moment of the basic operation command, set internally or externally to the feed amount of each cutting edge of the tool 23 or the cutting thickness of the workpiece W. The command generation unit 31 outputs the generated basic operation command and modified operation command to the coupling simulation unit 33 and the drive control unit 35, respectively.

[0046] Figure 3 This is a graph showing the time waveforms of the spindle rotation speed and feed rate for the basic operation command. Here, for simplicity, positions P1 and P2 are specified in CNC program 4, and the case where a constant spindle rotation speed and feed rate are specified for the command trajectory between positions P1 and P2 will be explained. Figure 3 The spindle rotation speed and feed rate relative to the command trajectory between positions P1 and P2 are shown. The basic operation command is an operation command used to directly cause the machine tool 2 to execute without modifying the command described in CNC program 4. Therefore, as described in CNC program 4, the spindle rotation speed and feed rate specified by the basic operation command for the command trajectory between positions P1 and P2 are each constant.

[0047] Figure 4 It means to use Figure 3The diagram shows the tool 23 and the workpiece W during machining at the spindle rotation speed and feed rate. The tool 23 rotates in the rotational direction R1 and moves from position P1 to position P2. If it comes into contact with the workpiece W, the cutting edge of the tool 23 cuts the workpiece W. In the basic operation command, the spindle rotation speed and feed rate are both constant, therefore the feed amount c per cutting edge is constant. In this case, the cutting area A1 of each cutting edge is also constant.

[0048] Figure 5 This is a graph showing the time waveforms of the spindle rotation speed and feed rate as indicated by the corrected operation command. Here, it remains... Figure 3 and Figure 4 The basic operating instructions described in the instructions remain unchanged, and the spindle speed and feed rate are varied in a sinusoidal shape based on the constant value recorded in CNC program 4.

[0049] Figure 6 It means to use Figure 5 The diagram shows the tool 23 and the workpiece W during machining, based on the spindle rotation speed and feed rate. The tool 23 rotates in the rotational direction R1 while moving from position P1 to position P2. If it comes into contact with the workpiece W, the cutting edge of the tool 23 cuts the workpiece W. In the corrective operation command, the spindle rotation speed and feed rate are constantly changing. Therefore, the feed amount c of each cutting edge changes over time, and as a result, the cutting area A1 of each cutting edge also changes for each cutting edge.

[0050] exist Figure 5 In the example, the instruction generation unit 31 generates a correction operation instruction by varying the spindle rotation speed and feed speed in a sinusoidal pattern, based on the feed amount c per blade of the basic operation instruction or the cutting thickness of the workpiece W. However, the variation pattern used is not limited to a sinusoidal pattern; various variation patterns, including triangular wave shapes and random wave shapes, can also be used. The instruction generation unit 31 can also generate a correction operation instruction by superimposing a predetermined profile variation on at least one of the spindle rotation speed and feed speed of the basic operation instruction. The instruction generation unit 31 can pre-store information representing the profile variation superimposed on the basic operation instruction. Furthermore, here, the case where the instruction generation unit 31 generates one correction operation instruction based on one basic operation instruction has been described, but the instruction generation unit 31 can also generate multiple correction operation instructions based on one basic operation instruction.

[0051] Return to Figure 1The storage unit 32 stores the machining process model 321, the dynamics model 322, the spindle drive control model 323, the feed drive control model 324, and the machining condition information 325. The storage unit 32 can output the stored information to the coupled simulation unit 33. The machining condition information 325 includes, for example, tool shape information and the feed rate when using the tool 23. The tool shape information includes the number of cutting edges, tool diameter, and torsion angle of the tool 23. Details regarding the machining process model 321, the dynamics model 322, the spindle drive control model 323, and the feed drive control model 324 will be described later.

[0052] The cutting process performed by the machine tool 2 is a physical phenomenon in which the machining process M and mechanical dynamics influence each other. Therefore, in order to manage or control the machining state, it is preferable to perform an analysis that combines both the machining process and mechanical dynamics. Here, the machining process refers to the series of processes in which the tip of the cutting tool 23 penetrates into the workpiece W to generate chips and forms a machined surface. Mechanical dynamics refers to the dynamic movement of components that vibrate due to vibration sources inside and outside the machine tool 2. Here, the term "component" refers to the components constituting the machine tool 2, and may also include the cutting tool 23 and the workpiece W.

[0053] The drive system 20 is controlled by the CNC device 3, thereby moving the tool 23 along a predetermined path relative to the workpiece W while it rotates. During the cutting of the workpiece W by the tool 23, a cutting force F is generated between the tool 23 and the workpiece W. c The interference force F passes through the component. d Transmitted to the feed drive system 22 as disturbance torque T d This is transmitted to the spindle drive system 21. Due to the interference force F applied to the feed drive system 22... d Therefore, when the position of the feed drive system 22 is based on the position of the tool 23 when it is not cutting the workpiece W, the position is related to the interference force F. d The amplitude and frequency of the vibration change accordingly. Similarly, if a disturbance torque T is applied to the spindle drive system 21... d The rotation angle of the spindle drive system 21 will vary relative to the rotation angle of the tool 23 when it is not cutting the workpiece W.

[0054] The above relationships are illustrated using the accompanying diagram. Figure 7 It means Figure 1 The diagram shows the relationship between the spindle drive system 21, mechanical dynamics, and machining process M. Figure 8 It is Figure 7The diagram shows the physical quantities along with the physical structure of the machine tool 2. If the CNC device 3 assigns an operation command to the spindle drive system 21, the spindle motor 211 drives the spindle drive mechanism 212, causing the components of the machine tool 2, including the tool 23, to rotate and process the workpiece W. Here, if the spindle drive system 21 is controlled as the spindle drive system angle θ1 based on the operation command, the actual angle of the tool 23 is affected by the tool-side mechanical dynamics MD1 and becomes the tool angle θ2. The tool 23 penetrates into the workpiece W, performing a series of machining processes M that simultaneously generate chips and form a machined surface. The cutting torque T generated at this time... c The component is affected by the mechanical dynamics MD1 of the tool side, which acts as a disturbance torque T. d Feedback is sent to the spindle drive system 21. The working machine 2 outputs the feedback signal to the CNC device 3. When subjected to disturbance torque T d When the state of the spindle drive system 21 is different from the operation command, the CNC device 3 changes the operation command based on the feedback signal transmitted from the spindle drive system 21.

[0055] Figure 9 It means Figure 1 The diagram shows the relationship between the feed drive system 22-2, mechanical dynamics, and machining process M. Figure 10 It is Figure 9 The diagram shows the physical quantities along with the physical structure of the working machine 2. If the CNC device 3 assigns an operation command to the feed drive system 22-2, the workpiece W is machined via the relative motion between the tool 23 and the workpiece W. At this time, the servo motor 221-2 of the feed drive system 22-2 drives the feed drive mechanism 222-2 based on the operation command, resulting in a drive system displacement r1 on the worktable 24. The actual displacement generated in the workpiece W is influenced by the workpiece-side mechanical dynamics MD2 at the time the drive system displacement r1 is generated, becoming a component displacement r2. The cutting force F generated at this time... c The interference force F passes through the component. d Feedback is given to the feed drive system 22-2. When subjected to disturbance force F... d When the state of the feed drive system 22-2 is different from the operation command, the CNC device 3 changes the operation command based on the feedback signal transmitted from the feed drive system 22-2.

[0056] Furthermore, for the purposes of the above explanation, Figures 7 to 10 The spindle drive system 21 and the feed drive system 22 are described separately, but the transmission of displacement and force during machining occurs simultaneously in the spindle drive system 21 and the feed drive system 22.

[0057] As described above, in machining, the system that constitutes the machining process M, mechanical dynamics, and drive system 20 is coupled together. The CNC device 3 participates in the machining process M via the drive system 20 and mechanical dynamics. Furthermore, during the cutting process between the tool 23 and the workpiece W, a cutting force F is generated. c The machining point disappears as chips are generated, making it impossible to install sensors to directly detect the cutting force F. c Therefore, in order to accurately evaluate the cutting process involving the movement of the tool 23 and the workpiece W, it is necessary to simulate the operation of the spindle drive system 21 and the feed drive system 22, in addition to the machining process M and mechanical dynamics.

[0058] Next, specific examples of the machining process model 321, dynamics model 322, spindle drive control model 323, and feed drive control model 324 stored in the storage unit 32 will be described. These models are used in the simulation performed by the coupled simulation unit 33, which will be described later.

[0059] Machining process model 321 represents the machining characteristics between the cutting tool 23 and the workpiece W. More specifically, machining process model 321 is the cutting force F generated corresponding to the positional relationship between the cutting tool 23 and the workpiece W. c A mathematical model is used to represent this. The following formula (1) is the cutting force F during the contact between the cutting tip of the tool 23 and the workpiece W. c An example of a formula for expression. Formula (1) uses the relative cutting resistance K. c Edge force coefficient K e The minute thickness Δa of the cross-section of tool 23, the removal thickness h of the workpiece W, and the rotation angle of tool 23. The minute cutting force ΔF of each section of tool 23 is expressed at time t. c The total cutting force F generated by the feed of tool 23. c It is possible to use the small cutting force ΔF shown in equation (1) c The calculation is performed by adding the forces along the axial direction of the tool 23. The removal thickness h of the workpiece W is the distance between the previous machining surface and the current machining surface in the radial direction of the tool 23. Equation (1) shows that the cutting force F can be reduced by the sum of a force proportional to the removal thickness h and a certain amount of force called the edge force. c Perform the calculation.

[0060] Formula 1

[0061]

[0062] The cutting thickness h can be expressed by the following formula (2). The cutting thickness h is expressed by a component representing the nominal cutting thickness determined by the feed rate c of the tool 23 for each cutting edge, a component representing the vibration of the relative relationship between the tool 23 and the workpiece W, and a component representing the increase or decrease in cutting thickness caused by the difference in the rotation radius of each cutting edge when the tool 23 has multiple cutting edges. The component representing the vibration of the relative relationship between the tool 23 and the workpiece W is the radial component u of the tool 23, which is the relative displacement between the tool 23 and the workpiece W at the instant of cutting the workpiece surface. r The tool radius component w is the relative displacement between the tool 23 transferred to the pre-processing surface and the workpiece W. r The difference is represented by the component that causes the increase or decrease in the cut thickness due to the difference in the rotation radius of each cutting edge, expressed by the rotation radius correction amount Δe of the cutting edge of tool 23.

[0063] Formula 2

[0064]

[0065] Equation (1) is an example of machining process model 321, but machining process model 321 is not limited to the example above. For example, it could also be a voxel representing the shape of the tool 23 and the shape of the workpiece W, applied to the cutting force F. c The model used for calculation.

[0066] Dynamic model 322 represents the dynamic characteristics of a component that vibrates during the operation of the machine tool 2. Specifically, dynamic model 322 is a mathematical model of the dynamic displacement of a component when a dynamic force is applied to it. For example, a cutting force F is applied to the workpiece W connected to the drive system 20. c The action of the processing object W can be represented by the following formula (3).

[0067]

Formula 3

[0068]

[0069] Equation (3) is an example of an equation representing the vibration of the workpiece W. The cutting force F generated between the tool 23 and the workpiece W... c It is expressed using the relative displacement u between the cutting tool 23 and the workpiece W, the relative displacement v of the drive system 20, the equivalent mass m of the workpiece W, the equivalent viscosity coefficient C of the workpiece W, and the equivalent spring constant K of the workpiece W. Equation (3) represents the cutting force F. c The object being processed, W, acts as the interfering force, F. d And the mechanical dynamics transmitted to the drive system 20.

[0070] Furthermore, the dynamic model 322 is not limited to formula (3). For example, it could be a model that represents the shape of the workpiece W using voxels and uses FEM (Finite Element Method) analysis to calculate the displacement of the component during vibration. Furthermore, while the dynamic model 322 described here only represents the vibration of the workpiece W, it could also represent the vibration of the tool 23 or other components instead of the workpiece W. Alternatively, the dynamic model 322 could represent the vibration of both the tool 23 and the workpiece W.

[0071] The spindle drive control model 323 is a mathematical model representing the spindle drive system 21 of the machine tool 2 and the spindle drive controller that controls the spindle drive system 21 within the drive control unit 35 of the CNC device 3. Figure 11 It is used for Figure 1 The diagram illustrates an example of a spindle drive control model 323. The spindle drive control model 323, when given a spindle rotation angle command, operates under the influence of the cutting torque T. c The resulting disturbance torque T d This is a mathematical model of the spindle drive system 21 under conditions where the position and speed of the spindle drive system 21 are controlled by the position controller and speed controller of the spindle drive controller. This mathematical model is further illustrated when a spindle rotation angle command θ is input to the controller. r Then, the actual rotation angle θ of the spindle is output. Here, K pp1 K vp1 K vi1 These are the control gains, specifically the proportional gain K used for position control. pp1 The proportional gain K used for speed control vp1 Integral gain K used for speed control vi1 P1(s) is the torque-to-position transfer function of the entire spindle drive system 21, where s is a complex number. P1(s) can be determined based on the actual response of the spindle drive system 21 using known system determination methods. Furthermore, while the spindle drive system 21 is modeled here as a single-inertial system, it can also be modeled as a multi-inertial system. Additionally, a feedforward controller can be added to the spindle drive controller.

[0072] The feed drive control model 324 is a mathematical model representing the feed drive system 22 of the machine tool 2 and the feed drive controller located in the drive control unit 35 of the CNC device 3. Figure 12 It is used for Figure 1The diagram illustrates an example of the feed drive control model 324. The feed drive control model 324 is based on the position command given to the feed drive system, under the influence of the cutting force F. c The resulting disturbance force F d This is a mathematical model of the feed drive system 22 under the condition that the position and speed are controlled by the position controller and speed controller of the feed drive controller when the data is transmitted to the spindle drive system 21. This mathematical model is established when a feed drive system position command x is input. r Then, the actual position x of the feed drive system is output. Here, K pp2 K vp2 K vi2 These are the control gains, specifically the proportional gain K used for position control. pp2 The proportional gain K used for speed control vp2 Integral gain K used for speed control vi2 P2(s) is the force-to-position transfer function of the entire feed drive system 22, where s is a complex number. P2(s) can be determined based on the actual response of the feed drive system 22 using known system determination methods. Furthermore, while the feed drive system 22 is modeled here as a single-inertial system, it can also be modeled as a multi-inertial system. Additionally, a feedforward controller can be added to the feed drive controller.

[0073] The coupled simulation unit 33 simulates the machining process when multiple operation commands output by the command generation unit 31 are each assigned to the machine tool 2, and calculates process information representing the simulation results. The process information includes parameters that allow for comparison of machining errors, such as the cutting thickness of the workpiece W and the cutting force F. c Interference force F d And so on. Here, the cutting thickness of the workpiece W is, for example, the cutting thickness of the workpiece W per edge of the tool 23. The coupling simulation unit 33 can simulate the machining performed by the machine tool 2 based on the influence of the operation of the drive system 20, which includes the spindle drive system 21 and the feed drive system 22, and the dynamics of the components that vibrate during the operation of the machine tool 2 on the machining process M. The coupling simulation unit 33 performs simulation based on the number of operation commands generated by the command generation unit 31, and generates process information representing the simulation results based on the number of operation commands. The coupling simulation unit 33 outputs the generated multiple process information to the process evaluation unit 34.

[0074] The coupling simulation unit 33 assigns operation commands output by the command generation unit 31 to the machining process model 321, dynamics model 322, spindle drive control model 323, and feed drive control model 324 based on specified machining conditions, thereby simulating the machining performed by the machine tool 2 and calculating process information representing the simulation results. At this time, the coupling simulation unit 33 can use the machining process model 321, dynamics model 322, spindle drive control model 323, feed drive control model 324, and machining condition information 325 stored in the storage unit 32. When using the machining condition information 325 stored in the storage unit 32, the specified machining conditions become the machining conditions shown in the machining condition information 325.

[0075] The coupled simulation unit 33 performs simulations of the machining process M between the tool 23 and the workpiece W, the mechanical dynamics of the components of the machine tool 2, the actions of the spindle drive system 21, and the actions of the feed drive system 22. In the coupled simulation unit 33, based on... Figures 7 to 10 The relationships shown refer to the coupled model formed by combining the machining process model 321, the dynamics model 322, the spindle drive control model 323, and the feed drive control model 324. Under the machining conditions described in the machining condition information 325, the relationships are as follows: drive signals when basic operation commands and modified operation commands are assigned, spindle drive system angle θ1, drive system displacement r1, tool angle θ2, feed system component displacement r2, workpiece cutting thickness h, and cutting torque T. c Cutting force F c Interference torque T d Interference force F d Simulations are performed on the feedback signal, and coupled simulations are performed to calculate these timing and frequency component information.

[0076] Based on multiple process information output by the coupling simulation unit 33, the process evaluation unit 34 evaluates the magnitude of machining errors when multiple operation commands are used respectively, and selects the operation command assigned to the machine tool 2 from the basic operation command and the modified operation command generated by the command generation unit 31. The process evaluation unit 34 outputs the command selection signal indicating the selected operation command to the drive control unit 35.

[0077] The following is an example of the evaluation method in the process evaluation unit 34. The process evaluation unit 34 can evaluate the magnitude of the machining error based on the time variation of the cutting thickness h of the workpiece W. The smaller the increase in the cutting thickness h of the workpiece W, the smaller the machining error is evaluated by the process evaluation unit 34. The process evaluation unit 34 can select the operation command that minimizes the increase in cutting thickness h as the operation command given to the machine tool 2. Cutting thickness h represents the vibration between the tool 23 and the workpiece W. If a vibration called chatter occurs between the tool 23 and the workpiece W, the amplitude increases over time, leading to a deterioration of the machining error. Therefore, by evaluating the time variation of the cutting thickness h, the process evaluation unit 34 can select the operation command that minimizes the vibration between the tool 23 and the workpiece W. The operation command that minimizes the vibration between the tool 23 and the workpiece W can minimize the machining error caused by the vibration between the tool 23 and the workpiece W.

[0078] In addition, the process evaluation unit 34 can evaluate the interference force F during the execution of each operation command. d Or the disturbance torque T d The maximum amplitude is used to evaluate the magnitude of the machining error. If the disturbance force F d Or the disturbance torque T d The smaller the maximum amplitude, the smaller the processing error evaluated by the process evaluation unit 34. The process evaluation unit 34 can select the operation command that minimizes the maximum amplitude and assign it as the operation command to the machine tool 2. Disturbance force F d Or the disturbance torque T d The smaller the maximum amplitude, the more the disturbance force F d Or the disturbance torque T d The vibration caused by this becomes smaller. Therefore, by adjusting the disturbance force F... d Or the disturbance torque T d The maximum amplitude is selected as the minimum operating command, thereby minimizing the machining error caused by the vibration of the drive system 20.

[0079] Furthermore, the process evaluation unit 34 can compare the time waveform of the process information calculated by the coupled simulation unit 33 with a preset target contour, and evaluate the magnitude of the machining error based on the deviation from the target contour. The target contour is a contour where the machining error is less than or equal to the allowable value, for example, preset within the process evaluation unit 34. The smaller the deviation from the target contour, the smaller the machining error is evaluated by the process evaluation unit 34. The process evaluation unit 34 can also evaluate the deviation from the target contour based on loss functions such as squared error, or based on machine learning methods such as pattern matching. The process evaluation unit 34 selects the operation command that minimizes the deviation from the target contour, thereby minimizing the machining error.

[0080] The process evaluation unit 34 can use any one of the above-mentioned evaluation methods to evaluate the magnitude of the processing error, or it can combine the above-mentioned evaluation methods.

[0081] The drive control unit 35 controls the drive system 20 of the machine tool 2 based on the operation command indicated by the command selection signal output by the process evaluation unit 34 among multiple operation commands generated by the command generation unit 31. The drive control unit 35 internally includes a spindle drive controller for controlling the spindle drive system 21 and a feed drive controller for controlling the feed drive system 22. The spindle drive controller monitors the signals from the encoder of the spindle drive system 21 and outputs commands to the spindle motor 211 such that the position and speed of the spindle drive system 21 are equal to the values ​​specified by the operation command. The feed drive controller monitors the signals from the encoder of the feed drive system 22 and outputs commands to the servo motor 221 such that the position and speed of the feed drive system 22 are equal to the values ​​specified by the operation command.

[0082] Figure 13 It is used for Figure 1 The flowchart illustrates the operation of the CNC device 3. When the machining system 1 starts operating, the instruction generation unit 31 of the CNC device 3 reads the CNC program 4, parses the read CNC program 4, and generates basic operation instructions and modified operation instructions (step S101) for the machine tool 2 to execute the instructions described in the CNC program 4. If the instruction generation unit 31 generates one basic operation instruction and one or more modified operation instructions of the same type, it outputs the generated operation instructions to the coupling simulation unit 33.

[0083] The coupled simulation unit 33 performs coupled simulation for each operation command output by the command generation unit 31, and calculates multiple process information (step S102). The coupled simulation unit 33 outputs the calculated process information to the process evaluation unit 34.

[0084] The process evaluation unit 34 compares and evaluates multiple process information, evaluates the magnitude of machining error when each operation command is used, and selects the operation command assigned to the machine tool 2 from the basic operation command and the modified operation command (step S103). The process evaluation unit 34 outputs an instruction selection signal indicating the selected operation command to the drive control unit 35.

[0085] The drive control unit 35 controls the operation of the machine tool 2 using the selected operation command based on the command selection signal output by the process evaluation unit 34 (step S104). The command generation unit 31 determines whether the reading of all commands recorded in the CNC program 4 has been completed (step S105). If the reading is not completed (step S105: No), the command generation unit 31 repeats the process from step S101. If the reading is completed (step S105: Yes), the machining system 1 stops operating.

[0086] As described above, in the machining system 1 of Embodiment 1, the CNC device 3 calculates process information based on the influence of the operation of the drive system 20 and the dynamics of the components that vibrate during the operation of the machine tool 2 on the machining process of the workpiece W processed by the tool 23. This process information represents the result obtained by simulating machining when basic operation commands generated based on the CNC program and modified operation commands after modifying the basic operation commands are assigned to the machine tool 2. The operation commands assigned to the machine tool 2 are selected based on the evaluation results of the process information. Therefore, even when machining errors occur due to the mutual influence of the machining process, the operation of the drive system 20, and the mechanical dynamics of the components that vibrate during the operation of the machine tool 2, the CNC device 3 can reduce machining errors.

[0087] The coupled simulation unit 33 calculates process information when operation commands are given under specified machining conditions, for the machining process model 321 representing the machining characteristics between the tool 23 and the workpiece W, the dynamic model 322 representing the dynamic characteristics of the components vibrating during the operation of the machine tool 2, the spindle drive control model 323 representing the spindle drive system 21 and the spindle drive controller that controls the spindle drive system 21, and the feed drive control model 324 representing the feed drive system 22 and the feed drive controller that controls the feed drive system 22. By using coupled simulation with mathematical models, the influence of operation commands on the machining process M via the drive system 20 and mechanical dynamics can be accurately evaluated.

[0088] In Embodiment 1, a storage unit 32 is provided in the CNC device 3 to store the machining process model 321, the dynamic model 322, the spindle drive control model 323, the feed drive control model 324, and the machining condition information 325 representing the machining conditions. However, the storage unit 32 may also be provided outside the CNC device 3.

[0089] The instruction generation unit 31 can generate a modified operation instruction that changes the feed rate per bit or the cutting thickness h of the workpiece W relative to the tool 23 moving relative to the workpiece W, while maintaining the same path as the basic operation instruction. For example, the instruction generation unit 31 can set a modified operation instruction as a command that changes at least one of the spindle speed and feed rate of the basic operation instruction relative to the feed rate per bit or the cutting thickness h of the workpiece W. Specifically, the instruction generation unit 31 can generate a modified operation instruction by superimposing a predetermined profile variation on at least one of the spindle speed and feed rate of the basic operation instruction. By generating a modified operation instruction in this manner, the shape of the workpiece W is not altered, and operation instructions that reduce machining errors can be generated.

[0090] Furthermore, the storage unit 32 can also store different models and machining conditions corresponding to the machining operations described in the CNC program 4. The coupling simulation unit 33 can perform simulations using different models and machining conditions corresponding to the machining operations. Additionally, in Embodiment 1, the machine tool 2 is assumed to have one spindle drive system 21 and one or more feed drive systems 22, but the machine tool 2 may also have multiple spindle drive systems 21. Even when the machine tool 2 has multiple spindle drive systems 21, the same operation can be performed. Figure 13 The actions shown are sufficient.

[0091] Furthermore, in Embodiment 1, a machine tool 2, such as a machining center, with a tool 23 connected to the spindle drive system 21 and rotating thereon was described. However, the machine tool 2 could also be configured as an NC (Numerically Controlled) lathe, with a workpiece W connected to the spindle drive system 21 and rotating thereon. In this case, the feed per cutting edge is referred to as the feed per revolution of the spindle. As a result, the instruction generation unit 31 does not change the path specified by the CNC program 4, and can select the operation instruction that reduces machining errors from multiple operation instructions.

[0092] Implementation method 2.

[0093] Figure 14This is a diagram illustrating the functional structure of the machining system 1a according to Embodiment 2. Functional structures having the same functions as in Embodiment 1 are labeled with the same reference numerals as in Embodiment 1, and repeated descriptions are omitted. The following mainly describes the differences from Embodiment 1. The difference between machining system 1a and machining system 1 is that operating instructions are generated based on simulation results.

[0094] The machining system 1a includes a machine tool 2 and a numerical control device 3a. Like the numerical control device 3, the numerical control device 3a controls the machine tool 2 based on instructions described in the numerical control program 4. The numerical control device 3a includes an instruction generation unit 31a, a storage unit 32a, a coupled simulation unit 33a, a process evaluation unit 34, and a drive control unit 35.

[0095] When generating a modified operation command, the instruction generation unit 31a can use the process information output by the coupling simulation unit 33a. The instruction generation unit 31a can set the operation command after modifying the basic operation command based on the process information as the modified operation command. At this time, the instruction generation unit 31a can use the machining process model 321, dynamic model 322, spindle drive control model 323, feed drive control model 324 and machining condition information 325 stored in the storage unit 32a. Specifically, the instruction generation unit 31a adds the amplitude or phase of the dynamic vibration component superimposed on the cutting thickness of the machining object W contained in the process information to the basic operation command, thereby generating the modified operation command. The dynamic vibration component is equivalent to the second term on the right side of the above formula (2). The instruction generation unit 31a uses a band-stop filter that attenuates the amplitude of a dynamic vibration component superimposed on the cutting thickness of the workpiece W, or a phase compensation filter that compensates for the phase delay of the vibration component based on the timing of cutting by the cutting tip of the tool 23, and can add the variation of the amplitude or phase of the vibration component to the basic operation command.

[0096] Similar to storage unit 32, storage unit 32a stores the machining process model 321, dynamics model 322, spindle drive control model 323, feed drive control model 324, and machining condition information 325, and outputs the stored information to coupled simulation unit 33a. Storage unit 32a can further output the information stored in instruction generation unit 31a.

[0097] Similar to the coupling simulation unit 33, the coupling simulation unit 33a calculates process information, which represents the result of simulating machining when basic operation commands and modified operation commands are each assigned to the machine tool 2. The coupling simulation unit 33a outputs the calculated process information to the process evaluation unit 34 and also to the command generation unit 31a.

[0098] Figure 15 It is used for Figure 14 The flowchart illustrates the operation of the CNC device 3a. When the machining system 1a starts operating, the instruction generation unit 31a of the CNC device 3a reads the CNC program 4, parses the read CNC program 4, and generates basic operation instructions (step S201) to cause the machine tool 2 to execute the instructions described in the CNC program 4. The instruction generation unit 31a outputs the generated basic operation instructions to the coupling simulation unit 33a.

[0099] The coupled simulation unit 33a generates process information by performing coupled simulation when the basic operation command output by the command generation unit 31a is executed by the machine tool 2 (step S202). The coupled simulation unit 33a outputs the generated process information to the process evaluation unit 34 and the command generation unit 31a respectively.

[0100] The instruction generation unit 31a modifies the basic operation instruction based on the process information output by the result obtained in step S202, and generates a modified operation instruction (step S203). The instruction generation unit 31a outputs the generated modified operation instruction to the coupled simulation unit 33a.

[0101] The coupled simulation unit 33a generates process information by performing coupled simulation when the modified operation command output by the command generation unit 31a of the machine tool 2 is executed (step S204). The coupled simulation unit 33a outputs the generated process information to the process evaluation unit 34 and the command generation unit 31a respectively.

[0102] The process evaluation unit 34 compares and evaluates multiple process information, evaluates the magnitude of machining error when using each operation command, and selects the operation command assigned to the machine tool 2 from the basic operation command and the modified operation command (step S205). The process evaluation unit 34 outputs an instruction selection signal indicating the selected operation command to the drive control unit 35.

[0103] The drive control unit 35 controls the operation of the machine tool 2 using the selected operation command based on the command selection signal output by the process evaluation unit 34 (step S206). The command generation unit 31a determines whether the reading of all commands recorded in the CNC program 4 has been completed (step S207). If the reading is not completed (step S207: No), the command generation unit 31a repeats the process from step S201. If the reading is completed (step S207: Yes), the machining system 1a stops operating.

[0104] Furthermore, in the above example, the instruction generation unit 31a generates a modified operation instruction based on process information representing the simulation results when a basic operation instruction is assigned to the machine tool 2. However, it can also generate a further modified operation instruction based on process information representing the simulation results when a modified operation instruction is assigned to the machine tool 2. In this case, a method can be used whereby the amplitude or phase of the vibration component of the cutting thickness of the workpiece W is used as an evaluation value, and a machine learning method is employed to explore modified operation instructions that can reduce the vibration of the cutting thickness of the workpiece W.

[0105] Figure 16 It means and Figure 14 The diagram shows an example of the structure of the learning device 50 associated with the CNC device 3a. The learning device 50 can, for example, be set in... Figure 14 The numerical control device 3a shown may also be an information processing device different from the numerical control device 3a. The learning device 50 has a learning data acquisition unit 51 and a model generation unit 52.

[0106] The learning data acquisition unit 51 acquires the operation command generated by the command generation unit 31a and the corresponding process information, that is, the process information representing the simulation result when the operation command is given to the machine tool 2, and uses it as learning data. The learning data acquisition unit 51 can output the acquired learning data to the model generation unit 52. In addition, the learning data acquisition unit 51 can acquire all the process information or a portion of the process information. For example, the learning data acquisition unit 51 can acquire parameters representing the magnitude of machining errors from the process information and use them as learning data. For example, the learning data acquisition unit 51 can acquire the cutting thickness of the workpiece W, or the amplitude or phase of the vibration component of the cutting thickness of the workpiece W, and use it as learning data.

[0107] The model generation unit 52 learns new corrective operation commands based on learning data, which includes the operation commands and process information representing the simulation results when the operation commands are assigned to the machine 2. That is, the model generation unit 52 generates a trained model for inferring new corrective operation commands based on the process information of the CNC device 3a. The model generation unit 52 outputs the generated trained model to the trained model storage unit 53.

[0108] The learning algorithm used by the model generation unit 52 can employ known algorithms such as teacher-led learning, teacherless learning, and reinforcement learning. As an example, we will explain the application of reinforcement learning. In reinforcement learning, the agent, or intelligent agent, observes the parameters of the environment representing the current state and decides on the action to be taken. The environment changes dynamically through the agent's actions, and the agent is rewarded accordingly. The agent repeats this action, learning the action strategy that yields the highest reward after a series of actions. As representative methods of reinforcement learning, Q-learning and TD-learning are known. For example, in the case of Q-learning, the general update formula for the action value function Q(s, a) is expressed by the following formula (4).

[0109] Formula 4

[0110]

[0111] In equation (4), s t a represents the state of the environment at time t. t Indicates the action at time t. Through action a t The state changes to s t+1 r t+1 The value represents the reward resulting from changes in its state, γ represents the discount rate, and α represents the learning coefficient. Furthermore, γ takes values ​​within the range of 0 < γ ≤ 1, and α takes values ​​within the range of 0 < α ≤ 1. The modified operation instruction becomes action a. t Process information becomes state s t The best action a for 50 pairs of states at time t in the learning device. t To learn.

[0112] The update formula, expressed by equation (4), states that if the action value Q of action a with the highest Q value at time t+1 is greater than the action value Q of action a executed at time t, then the action value Q is increased; conversely, the action value Q is decreased. In other words, the action value function Q(S, a) is updated in a way that makes the action value Q of action a at time t approach the best action value at time t+1. Thus, the best action value Q in a given environment is continuously propagated to the action values ​​Q in previous environments.

[0113] As shown above, when a trained model is generated through reinforcement learning, the model generation unit 52 has a reward calculation unit 54 and a function update unit 55.

[0114] The reward calculation unit 54 calculates the reward based on the operation command and process information. The reward calculation unit 54 calculates the reward r based on a reward reference D that includes a reward increase reference D1 and a reward decrease reference D2. For example, the reward reference D is determined based on the magnitude of the machining error shown in the process information. As a parameter representing the magnitude of the machining error, for example, the amplitude of the vibration component of the cut-off thickness of the workpiece W is used. For example, the reward increase reference D1 can be set to a value where the amplitude of the vibration component of the cut-off thickness of the workpiece W is less than a threshold, and the reward decrease reference D2 can be set to a value where the amplitude of the vibration component of the cut-off thickness of the workpiece W is greater than or equal to the threshold. When the reward increase reference D1 is satisfied, the reward calculation unit 54 increases the reward r by, for example, by assigning a reward of "+1", and decreases the reward r by, for example, by assigning a reward of "-1" when the reward decrease reference D2 is satisfied. The reward calculation unit 54 outputs the calculated reward r to the function update unit 55. Furthermore, as another example, in addition to the amplitude of the vibration component representing the cutting thickness, the phase of the vibration component representing the cutting thickness of the workpiece W can also be used as a parameter to indicate the magnitude of the machining error. Here, the phase of the vibration component representing the cutting thickness is the phase of the vibration superimposed on the chip shape at the instant the cutting tip of the tool 23 begins to cut the workpiece W. In this case, the feedback increase reference D1 can be set to a value within a predetermined range for the phase of the vibration component representing the cutting thickness of the workpiece W, and the feedback decrease reference D2 can be set to a value outside the aforementioned range for the phase of the vibration component representing the cutting thickness of the workpiece W.

[0115] The function update unit 55 updates the function used to determine the corrected operation command according to the reward r calculated by the reward calculation unit 54, and outputs it to the trained model storage unit 53. For example, in the case of Q-learning, the action value function Q(s) expressed by formula (4) is updated. t a t This is used as a function to calculate the modified operation instructions.

[0116] Repeat the above learning process. The trained model storage unit 53 stores the action value function Q(s) updated by the function update unit 55. t a t That is, storing the trained model.

[0117] Next, use Figure 17 The processing of learning by the learning device 50 is explained. Figure 17 It is used for Figure 16 The flowchart illustrates the learning process of the learning device 50 shown.

[0118] The learning data acquisition unit 51 acquires the operation command generated by the command generation unit 31a and the process information indicating the simulation results when the operation command is assigned to the machine 2, and uses it as learning data (step S301).

[0119] The model generation unit 52 calculates the reward r based on the operation instructions and process information contained in the learning data acquired by the learning data acquisition unit 51 (step S302). Specifically, the reward calculation unit 54 acquires the operation instructions and process information, and determines whether to increase or decrease the reward r based on a predetermined reward benchmark D (step S303).

[0120] If the reward calculation unit 54 determines that the reward r should be increased (step S303: increase), it increases the reward r (step S304). If the reward calculation unit 54 determines that the reward r should be decreased (step S303: decrease), it decreases the reward r (step S305).

[0121] The function update unit 55 updates the action value function Q(s) stored in the trained model storage unit 53 based on the reward r calculated by the reward calculation unit 54. t a t Update (step S306).

[0122] The learning device 50 repeats the above steps S301 to S306, generating the action value function Q(s). t a t Store it as a trained model.

[0123] In addition, Figure 16 The trained model storage unit 53 is located outside the learning device 50, but the learning device 50 may also have the trained model storage unit 53 internally. Furthermore, when the learning device 50 is located within the CNC device 3a, the trained model storage unit 53 may be located in the same storage device as the storage unit 32a, or it may be located in a different storage device.

[0124] Figure 18 It means and Figure 14 This diagram shows an example of the structure of the inference device 60 associated with the numerical control device 3a. The inference device 60 has a data acquisition unit 61 and an inference unit 62. The inference device 60 can be provided in the numerical control device 3a, or it can be an information processing device different from the numerical control device 3a. For example, the inference device 60 can be provided in the instruction generation unit 31a of the numerical control device 3a.

[0125] The data acquisition unit 61 acquires the process information output by the coupled simulation unit 33a. The data acquisition unit 61 outputs the acquired data to the inference unit 62.

[0126] The inference unit 62 uses the trained model stored in the trained model storage unit 53 to infer new corrective operation instructions based on the process information obtained by the data acquisition unit 61. That is, the inference unit 62 inputs the process information output by the data acquisition unit 61 into the trained model, thereby enabling it to infer corrective operation instructions suitable for the process information.

[0127] Furthermore, in the above, the inference device 60 outputs corrective operation commands using a trained model obtained from machine learning based on data obtained from the CNC device 3a. However, it can also obtain trained models from other CNC devices 3a and output corrective operation commands based on those trained models.

[0128] Figure 19 It is used for Figure 18 The flowchart illustrates the operation of the inference device 60. The data acquisition unit 61 of the inference device 60 acquires process information as data for inference (step S401) and outputs the acquired data to the inference unit 62.

[0129] The inference unit 62 inputs the inference data, i.e., process information, obtained in step S401 into the trained model stored in the trained model storage unit 53 (step S402). The inference unit 62 outputs the result obtained by inputting the process information into the trained model, i.e., the corrected operation command (step S403). In addition, the command generation unit 31a of the numerical control device 3a obtains the corrected operation command output by the inference unit 62 and outputs the obtained corrected operation command to the coupled simulation unit 33a.

[0130] Furthermore, while the inference unit 62 is described above as using reinforcement learning as a learning algorithm, the learning algorithm used by the inference unit 62 is not limited to reinforcement learning. In addition to reinforcement learning, the inference unit 62 can also use teacher-assisted learning, teacherless learning, or semi-teacher-assisted learning as learning algorithms.

[0131] In addition, the learning algorithm used by the model generation unit 52 can also use deep learning, which learns by extracting the feature quantity itself, and can perform machine learning according to other well-known methods such as neural networks, genetic programming, inductive reasoning programming, support vector machines, etc.

[0132] Furthermore, the learning device 50 and the inference device 60 can each be connected to the CNC device 3a via a network, and are separate devices from the CNC device 3a. Alternatively, the learning device 50 and the inference device 60 can each be built into the CNC device 3a. Moreover, the learning device 50 and the inference device 60 can each reside on a cloud server.

[0133] Furthermore, the model generation unit 52 can learn correction operation commands using learning data obtained from multiple CNC devices 3a. Additionally, the model generation unit 52 can obtain learning data from multiple CNC devices 3a used in the same area, or it can learn correction operation commands using learning data collected from multiple CNC devices 3a operating independently in different areas. Moreover, the CNC device 3a that collects learning data can be added to or removed from the object midway through the process. Furthermore, the learning device 50, after learning correction operation commands for a certain CNC device 3a, can be applied to other CNC devices 3a, and the correction operation commands can be updated by relearning them from those other CNC devices 3a.

[0134] As described above, the CNC device 3a according to Embodiment 2 generates basic operation commands generated according to the CNC program 4 and modified operation commands after correcting the basic operation commands based on usage process information. It selects operation commands assigned to the machine tool 2 based on the evaluation results of each operation command. The command generation unit 31a generates new modified operation commands based on the simulation results executed by the coupled simulation unit 33a, thus enabling the generation of modified operation commands based on the characteristics of the drive system 20, mechanical dynamics, and machining process M. Therefore, the CNC device 3a can efficiently reduce machining errors.

[0135] Furthermore, the CNC device 3a can generate further corrective operation commands based on the corrective operation commands. In this case, the learning device 50 can be used to learn the corrective operation commands based on learning data including the corrective operation commands and process information through machine learning. The CNC device 3a can use the corrective operation commands output by the inference device 60, which infers the corrective operation commands using the learning results of the learning device 50, i.e., the trained model. By using machine learning, the CNC device 3a can generate corrective operation commands exploratoryly, so the machining system 1a does not need to prepare rules for correcting the operation commands in advance, and can generate corrective operation commands that can reduce machining errors.

[0136] Implementation method 3.

[0137] Figure 20 This is a diagram showing the structure of the processing system 1b according to Embodiment 3. Furthermore, structural elements having the same functions as in Embodiment 1 are labeled with the same reference numerals as in Embodiment 1, and repeated descriptions are omitted. Hereinafter, the parts that differ from Embodiments 1 and 2 will be mainly described.

[0138] The machining system 1b includes a machine tool 2b and a numerical control device 3b. The machine tool 2b includes a spindle drive system 21, a feed drive system 22, a cutting tool 23, a worktable 24, and a sensor 25.

[0139] Sensor 25 detects the vibration of components that vibrate during the operation of the machine tool 2b. Sensor 25 may be, for example, an acceleration sensor or a force sensor. Alternatively, sensor 25 may be an encoder pre-installed within the drive system 20 for feedback control of the drive system 20. Sensor 25 is connected to the CNC device 3b, and the signal acquired by sensor 25, i.e., the sensor signal, is output to the CNC device 3b.

[0140] The numerical control device 3b includes an instruction generation unit 31b, a storage unit 32, a coupling simulation unit 33, a process evaluation unit 34, and a drive control unit 35. The difference between the numerical control device 3b and embodiments 1 and 2 is that it generates operation instructions based on sensor signals output by sensor 25.

[0141] The instruction generation unit 31b generates basic operation instructions in the same manner as the instruction generation unit 31 in Embodiment 1. Furthermore, the instruction generation unit 31b modifies the basic operation instructions based on the sensor signal output by the sensor 25, thereby generating modified operation instructions. Specifically, the instruction generation unit 31b determines the feed amount per blade or the cutting thickness of the workpiece W when generating modified operation instructions based on the sensor signal. For example, by learning in advance the time waveform of the sensor signal or the feed amount per blade or the cutting thickness of the workpiece W corresponding to its spectrum, the instruction generation unit 31b determines the feed amount per blade or the cutting thickness of the workpiece W using machine learning methods such as pattern matching when the sensor signal is input. Alternatively, a correspondence table between the amplitude of the sensor signal and the feed amount per blade or the cutting thickness of the workpiece W can be pre-recorded internally, and the instruction generation unit 31b determines the feed amount per blade or the cutting thickness of the workpiece W based on this correspondence table.

[0142] The operation of the CNC device 3b, besides using sensor signals when generating corrective operating commands, is also related to... Figure 13 The CNC device 3 shown operates in the same way, so detailed explanations are omitted here.

[0143] Furthermore, in the above description, the command generation unit 31b is configured to generate a modified operation command by modifying the basic operation command using sensor signals. However, the modification of the operation command can also be performed sequentially. That is, the command generation unit 31b can use the sensor signals detected when the modified operation command generated using sensor signals is given to the machine tool 2b to further generate a modified operation command. In this case, the amplitude or phase of the vibration component of the sensor signal can be used as an evaluation value, and machine learning methods such as reinforcement learning can be used to explore a modified operation command that reduces the vibration of the sensor signal.

[0144] In the case of using machine learning, for example, it is possible to use Figure 16 The training device 50 shown is used to obtain a trained model. Figure 18 The inference device 60 shown obtains corrected operation commands from the trained model. In this case, the "process information" obtained by the learning data acquisition unit 51 and the data acquisition unit 61 in the description of Embodiment 2 above will be referred to as "sensor signals," thereby omitting the description of the method for generating the corrected operation commands used by the CNC device 3b according to Embodiment 3. In this case, the operation commands obtained by the learning data acquisition unit 51 are operation commands corresponding to the sensor signals; specifically, they are operation commands assigned to the machine tool 2b when the sensor signals are acquired.

[0145] As described above, regarding the CNC device 3b according to Embodiment 3, the machine tool 2b has a sensor 25, and the command generation unit 31b of the CNC device 3b can generate corrective operation commands based on the sensor signals. Therefore, the command generation unit 31b can correct the operation commands in accordance with the actual vibration state occurring in the machine tool 2b, and can efficiently generate operation commands that reduce machining errors.

[0146] Furthermore, by using machine learning to exploratoryly generate corrective operation instructions, the machining system 1b can generate corrective operation instructions that reduce machining errors without pre-preparing correction rules for operation instructions.

[0147] Next, the hardware structure of the numerical control devices 3, 3a, 3b, the learning device 50, and the inference device 60 involved in embodiments 1 to 3 will be described. The instruction generation units 31, 31a, 31b, the coupled simulation unit 33, 33a, the process evaluation unit 34, and the drive control unit 35 of the numerical control devices 3, 3a, and 3b; the learning data acquisition unit 51 and the model generation unit 52 of the learning device 50; and the data acquisition unit 61 and the inference unit 62 of the inference device 60 are implemented by processing circuits. These processing circuits can be implemented using dedicated hardware or control circuits using a CPU (Central Processing Unit).

[0148] When the aforementioned processing circuits are implemented using dedicated hardware, they are implemented through... Figure 21 The processing circuit 90 shown is used for this purpose. Figure 21This is a diagram illustrating the dedicated hardware used to implement the functions of the numerical control devices 3, 3a, 3b, learning device 50, and inference device 60 involved in embodiments 1 to 3. The processing circuit 90 is a single circuit, a composite circuit, a programmable processor, a parallel-programmable processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination thereof.

[0149] When the above processing circuit is implemented using the CPU's control circuit, the control circuit is, for example, Figure 22 The control circuit 91 of the structure shown. Figure 22 This is a diagram illustrating the structure of the control circuit 91 used to implement the functions of the numerical control devices 3, 3a, 3b, learning device 50, and inference device 60 involved in embodiments 1 to 3. Figure 22 As shown, the control circuit 91 has a processor 92 and a memory 93. The processor 92 is a CPU, also known as an arithmetic unit, microprocessor, microcomputer, DSP (Digital Signal Processor), etc. The memory 93 is, for example, a non-volatile or volatile semiconductor memory such as RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable ROM), EEPROM (Electrically EPROM), disk, floppy disk, optical disk, compact disk, mini disk, DVD (Digital Versatile Disk), etc.

[0150] When the aforementioned processing circuit is implemented by the control circuit 91, it is achieved by the processor 92 reading and executing the program stored in the memory 93 corresponding to the processing of each structural element. Furthermore, the memory 93 is also used as temporary storage for each process executed by the processor 92.

[0151] Furthermore, the program executed by the processor 92 can be provided by storing it in a storage medium or by providing it via a communication path. Additionally, the functions of the numerical control devices 3, 3a, 3b, the learning device 50, and the inference device 60 involved in embodiments 1 to 3 can be used... Figure 21 The processing circuit 90 shown or Figure 22 It can be implemented by any of the control circuits 91 shown, or the processing circuit 90 and the control circuit 91 can be used in combination.

[0152] The structure shown in the above embodiments is an example, and it can also be combined with other known technologies, and the embodiments can be combined with each other. Without departing from the spirit of the subject, some parts of the structure can be omitted or changed.

[0153] Explanation of the label

[0154] 1. Machining systems (1a, 1b); 2. Machine tools (2b); 3. CNC devices (3a, 3b); 4. CNC program; 20. Drive system; 21. Spindle drive system; 22. Feed drive systems (22-1, 22-2); 23. Cutting tool; 24. Worktable; 25. Sensor; 31. Instruction generation unit (31a, 31b); 32. Storage unit (32a); 33. Coupled simulation unit (33a); 34. Process evaluation unit; 35. Drive control unit; 50. Learning device; 51. Data acquisition unit for learning; 52. Model generation unit; 53. Storage unit for trained models; 54. Reward calculation. 55 Function Update Unit, 60 Inference Device, 61 Data Acquisition Unit, 62 Inference Unit, 90 Processing Circuit, 91 Control Circuit, 92 Processor, 93 Memory, 211 Spindle Motor, 212 Spindle Drive Mechanism, 221, 221-1, 221-2 Servo Motors, 222, 222-1, 222-2 Feed Drive Mechanisms, 321 Machining Process Model, 322 Dynamic Model, 323 Spindle Drive Control Model, 324 Feed Drive Control Model, 325 Machining Condition Information, A1 Cutting Area per Edge, c Feed Rate, F c Cutting force, F d Interference force, M machining process, MD1 tool-side mechanical dynamics, MD2 workpiece-side mechanical dynamics, P1 and P2 positions, R1 rotation direction, r1 drive system displacement, r2 component displacement, T c Cutting torque, T d Disturbance torque, W for the workpiece, θ1 for the spindle drive system angle, and θ2 for the tool angle.

Claims

1. A numerical control device that controls a machine tool by assigning operating commands to the machine tool having a drive system, the drive system comprising a spindle drive system for driving a tool used to machine an object or a spindle rotating the object, and a feed drive system for driving a feed axis that changes the relative position of the tool and the object. The CNC device is characterized by having: The instruction generation unit generates the operation instructions, i.e., basic operation instructions, based on the CNC program, and generates the operation instructions, i.e., modified operation instructions, after modifying the basic operation instructions. A coupled simulation unit calculates process information by including the influence of the operation of the drive system and the dynamics of the components that vibrate during the operation of the working machine on the machining process of the workpiece via the cutting tool. This process information represents the result of simulating machining under conditions where basic operation commands and modified operation commands are each assigned to the working machine. The process evaluation department evaluates the process information when multiple operation commands are used, and based on the evaluation results, selects the operation command assigned to the machine from the basic operation command and the modified operation command. The instruction generation unit has an inference device that uses a trained model generated by machine learning to infer new corrected operation instructions based on the process information to infer the corrected operation instructions from the process information output by the coupled simulation unit.

2. The CNC device according to claim 1, characterized in that, The coupled simulation unit calculates the process information when the operation command is given, based on the specified machining conditions. This is achieved by using a mathematical model representing the machining characteristics between the tool and the workpiece (machining process model), a mathematical model representing the dynamic characteristics of the component (dynamic model), a mathematical model representing the spindle drive system and the spindle drive controller that controls the spindle drive system (spindle drive control model), and a mathematical model representing the feed drive system and the feed drive controller that controls the feed drive system (feed drive control model).

3. The CNC device according to claim 2, characterized in that, It also includes a storage unit that stores the machining process model, the dynamics model, the spindle drive control model, the feed drive control model, and machining condition information representing the machining conditions. The coupled simulation unit uses the machining process model, the dynamics model, the spindle drive control model, the feed drive control model, and the machining condition information stored in the storage unit to calculate the process information.

4. The CNC device according to any one of claims 1 to 3, characterized in that, The instruction generation unit generates an instruction that is the same as the basic operation instruction in terms of the relative path of the tool movement with respect to the workpiece, and modifies at least one of the feed amount of the feed axis and the cutting thickness of the workpiece, as the modified operation instruction.

5. The CNC device according to claim 4, characterized in that, The instruction generation unit sets the modified operation instruction as the operation instruction after changing at least one of the spindle rotation speed and feed speed of the basic operation instruction in accordance with the feed amount or the cutting thickness of the workpiece.

6. The CNC device according to claim 1, characterized in that, The instruction generation unit generates the modified operation instruction by superimposing a predetermined profile variation on at least one of the spindle rotation speed and feed speed of the basic operation instruction.

7. The CNC device according to claim 1, characterized in that, The instruction generation unit also generates the corrected operation instruction based on the process information when the corrected operation instruction is given to the machine.

8. The numerical control device according to claim 6 or 7, characterized in that, It also has: The learning data acquisition unit acquires learning data including the process information and the operation instructions corresponding to the process information; as well as The model generation unit uses the learning data to generate a trained model for inferring new corrective operation instructions based on the process information.

9. A processing system, characterized in that, have: A machine tool having a drive system comprising a spindle drive system for driving a tool used to machine an object or a spindle for rotating the object, and a feed drive system for driving a feed axis that changes the relative position of the tool and the object, the machine tool machining the object based on operating instructions generated by a numerical control program; as well as A numerical control device controls the machine by issuing operating commands to it. The numerical control device has: The instruction generation unit generates the operation instructions, i.e., basic operation instructions, based on the CNC program, and generates operation instructions, i.e., modified operation instructions, after modifying the basic operation instructions. The coupling simulation unit includes a process information calculation that includes the influence of the operation of the drive system and the dynamics of the components that vibrate in the operation of the working machine on the machining process of the workpiece by the cutting tool. This process information represents the result obtained by simulating the machining process when the basic operation command and the modified operation command are respectively assigned to the working machine. as well as The process evaluation department evaluates the process information when multiple operation commands are used, and based on the evaluation results, selects the operation command assigned to the machine from the basic operation command and the modified operation command. The instruction generation unit has an inference device that uses a trained model generated by machine learning to infer new corrected operation instructions based on the process information to infer the corrected operation instructions from the process information output by the coupled simulation unit.

10. A numerical control method executed by a numerical control device, which controls the machine tool by assigning operating commands to the machine tool having a drive system, the drive system comprising a spindle drive system for driving a tool used to machine an object or a spindle rotating the object, and a feed drive system for driving a feed axis that changes the relative position of the tool and the object. The CNC method is characterized by including the following steps: The operation instructions, namely the basic operation instructions, are generated based on the numerical control program. The process information is calculated by including the influence of the dynamics of the components that vibrate in the action of the drive system and the action of the working machine on the machining process of the workpiece by the cutting tool. This process information represents the result of simulating the machining process when the basic operating instructions are given to the working machine. Using a machine learning-trained model to infer the modified operation instruction (i.e., the operation instruction after the basic operation instruction has been modified) based on the process information, the modified operation instruction is inferred from the calculated process information. The process information is calculated by including the influence of the dynamics of the components that vibrate in the action of the drive system and the action of the working machine on the machining process of the workpiece by the cutting tool. This process information represents the result of simulating the machining process when the corrective operation command is given to the working machine. as well as The process information when multiple operation commands are used is evaluated, and based on the evaluation results, the operation command assigned to the working machine is selected from the basic operation command and the modified operation command.

11. A machining method comprising machining an object by giving operating commands to a working machine having a drive system, the drive system comprising a spindle drive system for driving a tool used to machine the object or a spindle rotating the object, and a feed drive system for driving a feed axis that changes the relative position of the tool and the object. The processing method is characterized by including the following steps: The operation instructions, namely the basic operation instructions, are generated based on the numerical control program. The process information is calculated by including the influence of the dynamics of the components that vibrate in the action of the drive system and the action of the working machine on the machining process of the workpiece by the cutting tool. This process information represents the result of simulating the machining process when the basic operating instructions are given to the working machine. as well as Using a machine learning-trained model to infer the modified operation instruction (i.e., the operation instruction after the basic operation instruction has been modified) based on the process information, the modified operation instruction is inferred from the calculated process information. The process information is calculated by including the influence of the dynamics of the components that vibrate in the action of the drive system and the action of the working machine on the machining process of the workpiece by the cutting tool. This process information represents the result of simulating the machining process when the corrective operation command is given to the working machine. The process information when multiple operation commands are used is evaluated, and based on the evaluation results, the operation command assigned to the working machine is selected from the basic operation command and the modified operation command. The selected operating instructions are assigned to the working machine; and The drive system is activated according to the operation command, thereby using the cutting tool to process the workpiece.

Citation Information

Patent Citations

  • Device and method for calculating machined surface property, and device and method for determining machining condition

    JP2013132733A

  • Numerical control device, machining system, numerical control method, and machining method

    CN118019614A

  • NC servo simulator

    JP1991095605A

  • Grinding method for workpiece and machining device

    JP2009006447A

  • Gear processing device and gear processing method

    JP2016093882A