Control device, industrial machine, and control method

The control device for industrial machines addresses machining error correction by using imaging and sensor data to adjust tool length and machining parameters, enhancing the accuracy of workpiece processing.

JP7705783B2Active Publication Date: 2025-07-10KOMATSU LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021177961
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-29
Publication Date
2025-07-10
Estimated Expiration
2041-10-29

AI Technical Summary

Technical Problem

Existing industrial machines face challenges in correcting machining errors during the processing of workpieces, which affect the accuracy of the final product.

Method used

A control device for industrial machines that includes a jig and spindle system, utilizing a relative displacement specifying unit, position determination unit, displacement correction unit, contact determination unit, and tool data correction unit to adjust tool length and machining parameters based on imaging and sensor data to correct machining errors.

Benefits of technology

The control device effectively corrects machining errors by accurately determining tool contact with the workpiece and adjusting tool data, improving the precision of the machining process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007705783000005
    Figure 0007705783000005
  • Figure 0007705783000006
    Figure 0007705783000006
  • Figure 0007705783000007
    Figure 0007705783000007
Patent Text Reader

Abstract

To correct machining errors while machining a workpiece.SOLUTION: A relative displacement identifying unit identifies a relative displacement between a jig and a tool on the basis of measured values of displacements of the jig and the tool. A position determining unit determines whether or not the jig and the tool are located at a jig calibration point and a tool calibration point, respectively, on the basis of the measured values of displacements of the jig and the tool. When it is determined that the jig and the tool are located at the jig calibration point and the tool calibration point, respectively, a displacement correcting unit corrects the measured values of displacements of the jig and the tool on the basis of a picked-up image of the jig calibration point and a picked-up image of the tool calibration point. A contact determining unit determines whether or not the tool touches a workpiece on the basis of a measured value relating to deflection of a main shaft. A tool data correcting unit corrects tool length data on the basis of the relative displacement when it is determined that the tool has come into contact with the workpiece. A control unit generates a control command for controlling the jig or the tool on the basis of the relative displacement, a shape of the workpiece, and the tool length data representing length of the tool.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a control device, an industrial machine, and a control method.

Background Art

[0002] Patent Document 1 discloses a technique of using a tool of an industrial machine as a shape measurement probe. Specifically, Patent Document 1 discloses a technique of applying vibration to a tool and determining that the tool has come into contact with an object when a force sensor attached to the tool detects the vibration.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In order to improve the machining accuracy of a workpiece by a machine such as an industrial machine, it is desirable to correct machining errors while machining the workpiece. An object of the present disclosure is to provide a control device, an industrial machine, and a control method capable of correcting machining errors while machining a workpiece.

Means for Solving the Problems

[0005] According to a first aspect of the present invention, a control device is a control device for a machine including a jig that supports a workpiece and a spindle that includes a tool for machining the workpiece, the control device including: a relative displacement specifying unit that specifies a relative displacement between the jig and the tool based on measured values of displacements of the jig and the tool; a position determination unit that determines whether or not the jig and the tool are respectively positioned at a jig calibration point and a tool calibration point based on the measured values of the displacements of the jig and the tool; a displacement correction unit that corrects the measured values of the displacements of the jig and the tool based on a captured image of the jig calibration point and a captured image of the tool calibration point captured by an imaging device supported by a support unit that does not contact the machine when it is determined that the jig and the tool are respectively positioned at the jig calibration point and the tool calibration point; a contact determination unit that determines whether or not the tool has contacted the workpiece based on a measured value related to deflection of the spindle; a tool data correction unit that corrects tool data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; and a control unit that generates a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool data.

[0006] According to a second aspect of the present invention, a control device is a control device for a machine including a jig that supports a workpiece and a spindle that includes a tool for machining the workpiece and a head that supports the tool, the control device including: a relative displacement specifying unit that specifies a relative displacement between the jig and the tool based on measured values of displacements of the jig and the tool; a contact determination unit that determines whether or not the tool has contacted the workpiece based on a measured value related to deflection of the spindle; a tool data correction unit that corrects tool length data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; and a control unit that generates a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool length data, wherein the head is provided with a hinge member that connects a tip end portion and a base end portion of the head, and a strain sensor provided so as to straddle a rotation axis of the hinge member, and the contact determination unit determines whether or not the tool has contacted the workpiece based on a measured value of the strain sensor.

Advantages of the Invention

[0007] According to the above aspect, the control device can correct the machining error while machining the workpiece.

Brief Description of the Drawings

[0008]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Modes for Carrying Out the Invention

[0009] 〈First Embodiment〉 《Configuration of Machining Center 1》 Hereinafter, embodiments will be described in detail with reference to the drawings. FIG. 1 is a perspective view showing the appearance of a machining center 1 according to a first embodiment. The machining center 1 includes a machine body 20, an imaging device 30, and a control panel 40.

[0010] The machine body 20 includes a housing 10 that forms an outer shell. The housing 10 is configured to cover the machine body 20 in order to prevent chips and coolant from splashing generated by the machining of the workpiece by the machine body 20. A door 10D is provided on the front surface of the housing 10. A window 10W is provided on the side surface of the housing 10.

[0011] The imaging device 30 includes a gantry 31, a top plate 32, a head camera 33, and a table camera 34. The gantry 31 is installed on the floor surface. The gantry 31 and the housing 10 do not contact each other, and a space is provided between the gantry 31 and the housing 10. A top plate 32 is provided at the upper end of the gantry 31. The gantry 31 supports the top plate 32. The top plate 32 is preferably made of a material that is less likely to cause thermal expansion. Examples of materials that are less likely to cause thermal expansion include ceramics. The top plate 32 is provided with holes for attaching the head camera 33 and the table camera 34. The top plate 32 is provided so as not to contact the housing 10. Thereby, the gantry 31 and the top plate 32 can maintain the positions of the head camera 33 and the table camera 34 even if the machine body 20 vibrates due to the operation of the machine body 20.

[0012] FIG. 2 is a perspective view showing the configuration inside the housing 10 of the machine body 20 according to the first embodiment. The machine body 20 includes a base 21, a column 22, and a table 23 inside the housing 10. The column 22 and the table 23 are provided on the upper surface of the base 21.

[0013] Column 22 is provided so as to be movable in the X-axis direction set parallel to the upper surface of the base 21. An X-axis motor 22M and an X-axis encoder 22E are provided on the base 21. The X-axis motor 22M is an actuator for moving the column 22 along the X-axis. The rotation of the X-axis motor 22M is converted into linear motion by a ball screw mechanism (not shown). The X-axis encoder 22E measures the amount of movement of the column 22.

[0014] A slider 24 is attached to the column 22. The slider 24 is arranged on the side of the column 22 on the table 23 side and is provided so as to be movable in the Y-axis direction orthogonal to both the X-axis and the Z-axis. A Y-axis motor 24M and a Y-axis encoder 24E are provided on the column 22. The Y-axis motor 24M is an actuator for moving the slider 24 along the Y-axis. The rotation of the Y-axis motor 24M is converted into linear motion by a ball screw mechanism (not shown). The Y-axis encoder 24E measures the amount of movement of the slider 24.

[0015] A spindle head 25 is attached to the surface of the slider 24 on the table 23 side. A head tab 25X with a predetermined mark drawn on its side surface is fixedly provided on the upper surface of the spindle head 25. The mark of the head tab 25X is drawn on the surface of the head tab 25X that faces the window 10W. For example, an X mark is drawn on the head tab 25X as shown in FIG. 3. The mark of the head tab 25X is not limited to the X mark, and any mark that can identify the center position and angle may be used. The spindle head 25 supports a spindle 26 so as to be rotatable about a rotation axis parallel to the Z-axis. Note that the spindle head 25 itself does not rotate. A tool A is attached to the spindle 26. Examples of the tool A include a milling cutter. A spindle motor 26M for rotating the spindle 26 is provided on the spindle 26. The tool A is attached to the spindle 26 by the user and can be replaced. Alternatively, the tool A may be automatically replaced by the function of the machining center 1. Hereinafter, the entire portion extending in the Z-axis direction that is moved by the slider 24 and includes the spindle head 25, the spindle 26, and the tool A is also referred to as the spindle.

[0016] FIG. 3 is a schematic view showing the configuration of the spindle head 25 according to the first embodiment. FIG. 3 is a view of the spindle head 25 as seen from the window 10W side. Four elastic hinges 25H are attached to the spindle head 25. The elastic hinge 25H is a strip-shaped member made of an elastic material and has notches extending in the width direction on the front or back surface at both ends and the central portion in the long side direction. The elastic hinge 25H functions as a hinge by bending with the notch as a fulcrum. The elastic hinge 25H is attached to the side surface of the spindle head 25 so that the long side direction is along the axial direction of the spindle head 25. Both ends in the long side direction of the elastic hinge 25H are fixed to the spindle head 25. Thereby, the folding angle of the central portion of the elastic hinge 25H changes according to the deflection or compression of the spindle head 25. The elastic hinge 25H is made of the same material as the spindle head 25 or a material having the same linear expansion coefficient as the spindle head 25. The four elastic hinges 25H are attached to the upper surface, the lower surface, and both side surfaces of the spindle head 25. In other embodiments, the spindle head 25 may include three or more elastic hinges 25H. By providing three or more elastic hinges 25H, it is possible to specify at least the strain in the X-axis direction and the Y-axis direction of the spindle head 25.

[0017] A strain sensor 25S is attached to the surface without notches in the central portion of each elastic hinge 25H. The strain sensor 25S outputs a measured value corresponding to the folding angle of the central portion of the elastic hinge 25H. Since the folding angle of the central portion of the elastic hinge 25H changes according to the deflection or compression of the spindle head 25, it can be said that the strain sensor 25S measures a quantity related to the deflection of the spindle head 25. From the magnitude of the strain of the elastic hinges 25H attached to both side surfaces of the spindle head 25, the deflection of the spindle head 25 in the left-right direction is obtained. Also, from the magnitude of the strain of the elastic hinges 25H attached to the upper and lower surfaces of the spindle head 25, the deflection of the spindle head 25 in the up-down direction is obtained.

[0018] In addition, a torque sensor 26T for measuring the torque of the spindle motor 26M is provided on the spindle head 25. In other embodiments, the machine body 20 may not be provided with the torque sensor 26T. In this case, the control panel 40 can identify the torque of the spindle motor 26M based on the torque command or current command to the spindle motor 26M.

[0019] As shown in FIG. 2, the table 23 is provided on the upper surface of the base 21 so as to be movable in the Z-axis direction parallel to the upper surface and orthogonal to the X-axis. A work table 27 is attached to the upper part of the table 23. The work table 27 is a jig that supports the work W, which is an object to be processed. On the upper surface of the work table 27, a table tab 27X with a predetermined mark drawn on its side surface is fixedly provided. The mark of the table tab 27X is drawn on the surface of the table tab 27X that faces the window 10W. The mark of the table tab 27X is represented by, for example, an X mark. The mark of the table tab 27X is not limited to an X mark, and any mark that can identify the center position and angle may be used. The table tab 27X is provided in a portion of the table 23 where the work W is not installed. The base 21 is provided with a Z-axis motor 23M and a Z-axis encoder 23E. The Z-axis motor 23M is an actuator for moving the table 23 along the Z-axis. The rotation of the Z-axis motor 23M is converted into linear motion by a ball screw mechanism (not shown). The Z-axis encoder 23E measures the movement amount of the table 23.

[0020] As shown in FIG. 2, the head camera 33 of the imaging device 30 is provided such that the optical axis passes through the center of the head tab 25X of the spindle head 25 through the window 10W when the column 22 and the slider 24 are located at predetermined calibration points. The calibration point where the column 22 should be located is also referred to as the column calibration point. The calibration point where the slider 24 should be located is also referred to as the slider calibration point. When the column 22 is located at the column calibration point and the slider 24 is located at the slider calibration point, the spindle head 25 is located at the tool calibration point. The table camera 34 is provided such that when the table 23 is positioned at a calibration point determined in advance, the optical axis passes through the center of the table tab 27X of the worktable 27 via the window 10W. The calibration point at which the table 23 should be positioned is also referred to as the table calibration point. When the table 23 is positioned at the table calibration point, the worktable 27 is positioned at the jig calibration point.

[0021] Inside the housing 10, near the window 10W, a headlight 11, a table light 12, and four air nozzles 13 are provided. The headlight 11 irradiates light onto the head tab 25X. The table light 12 irradiates light onto the table tab 27X. Each of the air nozzles 13 jets air toward the front portion of the head camera 33 in the window 10W, the front portion of the table camera 34 in the window 10W, the head tab 25X, and the table tab 27X. Thereby, coolant and chips that block the optical axes of the head camera 33 and the table camera 34 can be removed, and coolant and chips adhering to the head tab 25X and the table tab 27X can be removed. Note that the number of air nozzles 13 according to other embodiments is not limited to four. For example, the machining center 1 according to other embodiments may include five or more air nozzles 13 to remove obstacles on the optical axis of the camera. Further, the machining center 1 according to other embodiments may not include any or all of the four air nozzles 13.

[0022] 《Configuration of the control panel 40》 FIG. 4 is a schematic block diagram showing the configuration of the control panel 40 according to the first embodiment. The control panel 40 controls various actuators of the machine body 20 based on the measurement data of the machine body 20. The control panel 40 is provided on an operation panel operated by an operator as shown in FIG. 1, for example. The control panel 40 includes a data acquisition unit 41, a shape memory unit 42, a parameter memory unit 43, a position determination unit 44, a displacement correction unit 45, a relative displacement identification unit 46, a rigidity calculation unit 47, a contact determination unit 48, a tool data correction unit 49, a cutting depth determination unit 50, a model generation unit 51, an error identification unit 52, a control unit 53, a finished shape generation unit 54, and a display control unit 55.

[0023] The data acquisition unit 41 acquires measurement data from various sensors of the machine body 20. Specifically, the data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, the Z-axis encoder 23E, the Y-axis encoder 24E, the strain sensor 25S, and the torque sensor 26T. The data acquisition unit 41 also acquires image data from the head camera 33 and the table camera 34. The data acquisition unit 41 acquires the deflection of the spindle head 25 in the left-right direction, which is obtained from the magnitude of the strain of the elastic hinges 25H attached to both side surfaces of the spindle head 25. Further, the data acquisition unit 41 acquires the deflection of the spindle head 25 in the up-down direction, which is obtained from the magnitude of the strain of the elastic hinges 25H attached to the upper and lower surfaces of the spindle head 25. Note that the magnitude of the deflection may be acquired by the calculation of the data acquisition unit 41, or may be acquired from a circuit that processes signals output by a plurality of strain sensors 25S.

[0024] The shape memory unit 42 stores target shape data, which is three-dimensional data representing the target shape of the workpiece W, initial shape data, which is three-dimensional data representing the initial shape of the workpiece W, and processed shape data, which is three-dimensional data representing the shape of the workpiece W after processing. The target shape data and the initial shape data are input in advance by the user of the machine body 20. The initial value of the processed shape data is the same as the initial shape data.

[0025] The parameter storage unit 43 stores parameters used for controlling the machine body 20 by the control unit 53. Specifically, the parameter storage unit 43 stores relative displacement offsets, tool data, and state models. The relative displacement offset is a correction value for the relative displacement between the spindle head 25 and the worktable 27 obtained from the measurement data of the encoder. The relative displacement may include not only the amount of translational movement but also the rotation angle. The relative displacement may be represented by the Y-axis component and the Z-axis component of the distance between the center point of the head tab 25X and the center point of the table tab 27X. The rotation angle may be represented by the angle formed by a straight line extending from the center point of the head tab 25X to a feature point of the head tab 25X (for example, the protruding portion in the upper right of the X mark) and a straight line extending from the center point of the table tab 27X to a feature point of the table tab 27X. The tool data is data representing the shape of tool A including the length of tool A (tool length) attached to the spindle 26. The tool data may include the diameter of tool A. The state model is a function for predicting machining errors caused by the state of the machine body 20 during machining of the work W. Examples of the state of the machine body 20 during machining include spindle deflection and the like.

[0026] Based on the measurement data of the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E acquired by the data acquisition unit 41, the position determination unit 44 determines whether or not the spindle head 25 and the worktable 27 are located at a predetermined calibration point computationally. Even if it is determined computationally that the spindle head 25 and the worktable 27 are exactly located at the calibration point, the positions of the spindle head 25 and the worktable 27 may not actually coincide with the calibration point due to measurement errors of the encoder or the like. Even in this case, the spindle head 25 and the worktable 27 are at least located near the calibration point. The vicinity refers to the range within the imaging ranges of the head camera 33 and the table camera 34 where the head tab 25X and the table tab 27X are respectively located.

[0027] The displacement correction unit 45 moves the spindle head 25 and the work table 27 to the calibration points based on the image data of the head camera 33 and the table camera 34. The displacement correction unit 45 updates the relative displacement offset stored in the parameter storage unit 43 based on the values of the X-axis encoder 22E, Z-axis encoder 23E, and Y-axis encoder 24E when the spindle head 25 and the work table 27 are located at the calibration points.

[0028] The relative displacement specifying unit 46 specifies the relative displacement between the spindle head 25 and the work table 27 based on the measurement data of the X-axis encoder 22E, Z-axis encoder 23E, and Y-axis encoder 24E, and the relative displacement offset stored in the parameter storage unit 43. For example, the relative displacement specifying unit 46 specifies the position of the spindle head 25 when the reference is the central point of the upper surface of the work table 27.

[0029] The rigidity calculation unit 47 calculates the rigidity of the spindle based on the measurement data of the strain sensor 25S and the torque sensor 26T. Specifically, the rigidity K is calculated according to the following formula (1).

[0030]

Equation

[0031] The contact determination unit 48 determines whether the tool A has come into contact with the workpiece W based on the value of the rigidity calculated by the rigidity calculation unit 47. When the tool A is not in contact with the workpiece W, the deflection ε of the spindle is theoretically zero, so the value of the rigidity calculated by Equation (1) diverges. On the other hand, when the tool A comes into contact with the workpiece W, the deflection ε of the spindle becomes non-zero, so the value of the rigidity calculated by Equation (1) converges. Therefore, the contact determination unit 48 determines that the tool A has come into contact with the workpiece W when the value of the rigidity calculated by the rigidity calculation unit 47 converges from a divergent state.

[0032] The tool data correction unit 49 specifies the tool length based on the relative displacement between the spindle head 25 and the worktable 27 when it is determined that the tool A has come into contact with the workpiece W and the initial shape data stored in the shape memory unit 42. Specifically, the tool data correction unit 49 specifies the tool length according to the following procedure. The tool data correction unit 49 obtains the height (value of the Z axis) of the point where the workpiece W faces the tool A based on the values of the X-axis and Y-axis components among the relative displacements between the spindle head 25 and the worktable 27. The tool length is specified by subtracting the height of the point where the workpiece W faces the tool A from the value of the Z-axis component among the relative displacements between the spindle head 25 and the worktable 27.

[0033] The depth of cut determination unit 50 calculates the depth of cut of the workpiece W based on the relative displacement between the spindle head 25 and the worktable 27 specified by the relative displacement specifying unit 46 and the target shape data stored in the shape memory unit 42. For example, the depth of cut is calculated using the difference between the tool length or tool diameter of the tool to be used and that of a reference tool having a predetermined tool length or tool diameter. In calculating the depth of cut, either one or both of the tool length and tool diameter of the tool may be used depending on the type of the tool.

[0034] The model generation unit 51 updates the state model stored in the parameter storage unit 43 based on the depth of cut calculated by the depth of cut determination unit 50 and the measurement data of the strain sensor 25S. The state model includes a deflection model that takes the depth of cut as an input and outputs the deflection of the spindle. The state model will be described later.

[0035] The error identification unit 52 uses the state model stored in the parameter storage unit 43 to convert the magnitude of the spindle deflection into the displacement amount of the position of the tool A, that is, the remaining cutting amount. That is, the error identification unit 52 identifies the machining error caused by the deflection.

[0036] The control unit 53 corrects the cutting amount determined by the cutting amount determination unit 50 so as to cancel the error calculated by the error identification unit 52, and generates a control signal for each actuator based on the tool length stored in the parameter storage unit 43.

[0037] The finished shape generation unit 54 generates three-dimensional data indicating the shape of the workpiece W to be machined based on the measurement data of the X-axis encoder 22E, the Z-axis encoder 23E, the Y-axis encoder 24E, and the strain sensor 25S.

[0038] The display control unit 55 outputs the generated three-dimensional data to a display or the like.

[0039] 《State Model》 FIG. 5 is a diagram showing an example of the locus of the tool A in the cutting direction (the locus of the cutting depth) according to the first embodiment. The cutting direction refers to the axial direction of the tool A and the direction orthogonal to the direction in which the tool A moves relative to the workpiece W. When the control unit 53 moves the tool A according to the cutting amount (target cutting amount) generated by the cutting amount determination unit 50, as shown in FIG. 5, due to the deflection of the spindle, a deviation occurs between the actual locus of the tool A and the locus of the tool A according to the target cutting amount. Specifically, due to the deflection of the spindle, the displacement of the actual cutting amount lags behind the target cutting amount, and the actual cutting amount does not reach the target cutting amount, resulting in remaining cutting. The deflection model representing the locus of the tool A in the cutting direction is expressed by the following equation (2).

[0040]

Equation

[0041] In Equation (2), s is the Laplace operator. r0(s) is a function representing the locus of the cutting depth when it is assumed that there is no deflection of the main axis. The cutting depth is the magnitude of the component of the cutting amount in the cutting direction. p1 is a time constant representing the delay in the displacement of tool A. p2 is a coefficient representing the ratio of the compression amount of the main axis to r0(s). p3 is a conversion coefficient that converts the magnitude of the deflection of the main axis into the correction amount of the position of tool A, that is, the amount of remaining stock. ε x (s) is a function representing the change in the deflection of the main axis in the cutting direction.

[0042] FIG. 6 is a diagram showing an example of the locus of tool A in the feed direction according to the first embodiment. The feed direction refers to the direction in which tool A moves relative to workpiece W. When the control unit 53 moves tool A according to the target cutting amount, as shown in FIG. 6, due to the deflection of the main axis, a deviation occurs between the actual locus of tool A and the locus of tool A according to the target cutting amount. Specifically, when the blade of tool A presses workpiece W by downcut, the main axis deflects forward in the feed direction and is displaced in the feed direction. Note that no remaining stock is generated at the time of detachment of tool A in the feed direction. The deflection model representing the locus of the main axis in the feed direction is expressed by the following Equation (3). ε y (s) is a function representing the change in the deflection of the main axis in the feed direction.

[0043]

Equation

[0044] Hereinafter, a method for calculating the coefficients of the deflection model by the model generation unit 51 will be described. Equation (4) can be obtained by transforming Equation (2).

[0045]

Equation

[0046] The model generation unit 51 substitutes, into Equation (4), the deflection ε obtained by the data acquisition unit 41 from the measured values of the strain sensor 25S xBy inputting the cutting depth r0 calculated by the cutting depth determination unit 50, the problem of identifying the time constant p1 and the gain {(1 - p2) / p3} is solved. As a result, the cutting depth determination unit 50 can calculate the time constant p1 and the gain {(1 - p2) / p3}. The model generation unit 51 substitutes, into Equation (3), the deflection ε obtained by the data acquisition unit 41 from the measured value of the strain sensor 25S y By inputting the differential of the cutting depth y0 in the feed direction (i.e., the feed rate) calculated by the cutting depth determination unit 50 and the identified time constant p1, the coefficient p3 can be calculated.

[0047] 《Operation of the control panel 40》 FIG. 7 is a flowchart showing the calibration operation of the control panel 40 according to the first embodiment. In the example shown in FIG. 1, the table tab 27X is provided at a position that does not interfere with the workpiece W, and the head tab 25X is provided at a portion different from the attachment position of the tool A. As a result, the control panel 40 can perform calibration in a state where the tool A and the workpiece W are installed, that is, immediately before machining.

[0048] When the machine body 20 is started, the data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E (step S1). The position determination unit 44 determines, based on the measurement data acquired in step S1, whether the spindle head 25 and the worktable 27 are located near a predetermined calibration point (step S2). That is, the position determination unit 44 determines whether the values of the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E indicate the position of the calibration point. When the spindle head 25 and the worktable 27 are not located near a predetermined calibration point (step S2: NO), the control unit 53 controls the X-axis motor 22M, the Z-axis motor 23M, and the Y-axis motor 24M based on the measurement data acquired in step S1 so that the spindle head 25 and the worktable 27 are located at the predetermined calibration point (step S3). Thereafter, the control panel 40 returns the process to step S1.

[0049] When the spindle head 25 and the work table 27 are located near a predetermined calibration point (step S2: YES), the control unit 53 causes the headlight 11 and the table light 12 to emit light, and also starts the injection of air from the air nozzle 13 (step S4). The data acquisition unit 41 acquires image data from the head camera 33 and the table camera 34 (step S5). The displacement correction unit 45 determines whether the marks of the head tab 25X and the table tab 27X shown in the image data acquired in step S5 are shown at a predetermined position (for example, the center of the image) in the image data with a predetermined size (step S6). That is, the displacement correction unit 45 stores in advance the shapes of the head tab 25X and the table tab 27X when the spindle head 25 and the work table 27 are located at the calibration point, and determines whether the head tab 25X and the table tab 27X shown in the image data match the shapes. When the head tab 25X or the table tab 27X is not shown at the predetermined position and with the predetermined size (step S6: NO), the control unit 53 controls the X-axis motor 22M, the Z-axis motor 23M, and the Y-axis motor 24M so that the shape error becomes smaller (step S7). Then, the control panel 40 returns the process to step S5.

[0050] When the other party, the head tab 25X, and the table tab 27X appear at a predetermined position and with a predetermined size (step S6: YES), the data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E (step S8). The displacement correction unit 45 calculates the difference between the values of the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E set as the positions of the calibration points and the measurement data acquired in step S8 as a relative displacement offset, and stores it in the parameter storage unit 43 (step S9). Then, the control unit 53 causes the headlight 11 and the table light 12 to emit light, and also ends the air injection from the air nozzle 13 (step S10). As a result, the control panel 40 can perform the calibration of the relative displacement between the spindle head 25 and the worktable 27 at high speed. In the machining center 1 according to another embodiment, the headlight 11 and the table light 12 may be constantly emitting light, or the air nozzle 13 may be constantly injecting air. That is, the control panel 40 according to another embodiment does not have to execute the processes of step S4 and step S10.

[0051] FIG. 8 is a flowchart showing the machining operation by the control panel 40 according to the first embodiment. When the calibration of the machine body 20 is completed, the control panel 40 starts machining the workpiece W. Before starting the machining, the operator stores the initial shape data and the target shape data in the shape memory unit 42.

[0052] When the control panel 40 starts processing, the data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, the Z-axis encoder 23E, and the Y-axis encoder 24E (step S21). The relative displacement specifying unit 46 specifies the relative displacement between the spindle head 25 and the worktable 27 based on the acquired measurement data and the relative displacement offset stored in the parameter storage unit 43 (step S22). The control unit 53 determines the machining start point of the workpiece W based on the target shape data, and controls the X-axis motor 22M and the Y-axis motor 24M so that the tool A faces the machining start point of the workpiece W based on the relative displacement specified in step S22 (step S23).

[0053] Next, the control unit 53 controls the Z-axis motor 23M so that the tool A approaches the workpiece W by a predetermined amount (step S24). The data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, the Z-axis encoder 23E, the Y-axis encoder 24E, the strain sensor 25S, and the torque sensor 26T (step S25). The relative displacement specifying unit 46 specifies the relative displacement between the spindle head 25 and the worktable 27 (step S26). The rigidity calculation unit 47 calculates the rigidity of the spindle based on the measurement data of the strain sensor 25S and the torque sensor 26T acquired in step S25 (step S27). The contact determination unit 48 determines whether the value of the rigidity calculated in step S27 is divergent (step S28).

[0054] If the value of the rigidity is divergent (step S28: YES), the control panel 40 returns the process to step S24. On the other hand, if the value of the rigidity is not divergent (step S28: NO), the tool data correction unit 49 specifies the tool length based on the relative displacement calculated in step S26 and the initial shape data stored in the shape storage unit 42 (step S29), and updates the tool data stored in the parameter storage unit 43.

[0055] Next, the depth of cut determination unit 50 calculates the depth of cut of the workpiece W based on the relative displacement between the spindle head 25 and the worktable 27 identified by the relative displacement identification unit 46 and the target shape data stored in the shape memory unit 42 (step S30). The data acquisition unit 41 acquires measurement data from the X-axis encoder 22E, Z-axis encoder 23E, Y-axis encoder 24E, and strain sensor 25S (step S31). The model generation unit 51 generates a state model based on the depth of cut calculated in step S30 and the measurement data of the strain sensor 25S (step S32). That is, the model generation unit 51 generates a state model so as to output a time constant p1 representing the delay of displacement due to deflection, a conversion coefficient p3 for converting the magnitude of the spindle deflection into the correction amount of the position of the tool A, that is, the amount of remaining material, and the ratio to the depth of cut. The error identification unit 52 uses the state model stored in the parameter memory unit 43 to convert the magnitude of the spindle deflection into the deviation amount of the position of the tool A, that is, the amount of remaining material. That is, the machining error caused by deflection is identified (step S33). From this, the difference between the indicated cutting amount and the actual cutting amount, that is, the machining error, can be known.

[0056] The control unit 53 corrects the depth of cut based on the depth of cut calculated in step S30 and the error calculated in step S33, and controls each actuator based on the tool length stored in the parameter memory unit 43 (step S34). The finished shape generation unit 54 updates the machining shape data based on the measurement data acquired in step S31 (step S35).

[0057] The control unit 53 determines whether the machining of the workpiece W is completed (step S36). If the machining of the workpiece W is not completed (step S36: NO), the control panel 40 returns the process to step S30. On the other hand, if the machining of the workpiece W is completed (step S36: YES), the display control unit 55 calculates the difference between the processed shape data stored in the shape memory unit 42 and the target shape data (step S37). The display control unit 55 maps a color corresponding to the difference calculated in step S37 onto the surface of the processed shape data and generates a display image by rendering the processed shape data (step S38). FIG. 9 is a diagram showing an example of the display image according to the first embodiment. Specifically, as shown in FIG. 9, the display control unit 55 generates a display image including a color map that represents the difference between the distance from the reference point of the workpiece W to the surface of the processed shape data and the distance from the reference point to the surface of the target shape data by color. The display control unit 55 outputs the display image to the display (step S39). The color corresponding to the difference may be, for example, a color map in which a portion with insufficient cutting is represented by red and a portion with excessive cutting is represented by blue, and is represented by a gradation of the magnitude of the difference. The reference point according to the example shown in FIG. 9 is an axial point extending in the Z-axis direction passing through the center of the workpiece W. According to the example shown in FIG. 9, it can be seen that a step occurs at the machining start point of the workpiece W.

[0058] On the other hand, the reference point according to another embodiment may be a point on a plane obtained by offsetting the XY plane in the Z-axis direction, or may be a point on the rotation axis of the worktable 27. The reference point may be switchable, for example, by an operation of the user. Thereby, the control panel 40 can correct the machining error while machining the workpiece W, and further make the operator visually recognize the difference between the finished product and the target shape.

[0059] 《Function and Effect》 As described above, the control panel 40 according to the first embodiment corrects the tool length data based on the measured values related to the relative displacement between the spindle head 25 and the worktable 27 and the deflection of the tool. That is, when machining the workpiece W, the control panel 40 can detect the contact between the workpiece W and the tool A and correct the tool length data based on this. Thereby, the control panel 40 can correct the machining error due to the tool length while machining the workpiece W.

[0060] The head camera 33 and the table camera 34 according to the first embodiment are supported by an independent gantry 31 without contacting the housing 10 and the machine body 20. Thereby, even if the machine body 20 vibrates during operation, it is possible to prevent displacement of the head camera 33 and the table camera 34. Thereby, it is possible to prevent a decrease in the correction accuracy of the relative displacement of the spindle head 25 and the worktable 27 based on the images captured by the head camera 33 and the table camera 34.

[0061] When performing machining control according to NC (Numerical Control) data generated from the target shape data without correcting the relative displacement, due to the influence of displacement caused by heat, gravity, etc., the error in the position of the tool appears as a machining error as it is. Also, the relative displacement of the head camera 33 and the table camera 34 is fixed by the top plate 32. Therefore, by correcting the relative displacement of the spindle head 25 and the worktable 27 using the images captured by the head camera 33 and the table camera 34 as a reference, the machining error can be reduced. The control panel 40 according to the first embodiment corrects the relative displacement by driving the actuator so that the head tab 25X and the table tab 27X appear in a predetermined shape in the captured image. Also, the control panel 40 can correct not only the relative translation amount but also the rotation angle, that is, the deviation in the relative posture, by correcting the relative displacement of the spindle head 25 and the worktable 27 using the image.

[0062] The control panel 40 according to the first embodiment calculates the rigidity based on the torque of the tool A and the deflection of the spindle, and determines the contact between the tool A and the workpiece W based on the calculated value. FIG. 10 is a graph showing the relationship between the measured values of torque and deflection and the calculated value of rigidity. As shown in FIG. 10, a delay occurs until a significant change occurs in the measured values of the spindle torque and the spindle deflection after the workpiece W and the tool A come into contact. For example, in the example shown in FIG. 10, the workpiece W and the tool A are in contact at time T0. The measured values of the spindle torque and the spindle deflection change due to the contact between the workpiece W and the tool A, and reach a steady state after a time t1 has elapsed since the contact between the workpiece W and the tool A. That is, a delay of time t1 occurs from the contact between the workpiece W and the tool A until the measured values of the spindle torque and the spindle deflection change significantly. On the other hand, the calculated value of rigidity converges after a time t2 has elapsed since the contact between the workpiece W and the tool A. As shown in FIG. 10, it can be seen that the time t2 is significantly shorter than the time t1. Specifically, the time t2 is about one-fifth of the time t1. From this, it can be seen that the calculated value of rigidity has high sensitivity to the contact between the workpiece W and the tool A. Therefore, the control panel 40 according to the first embodiment can perform the contact determination without delay by using the calculated value of rigidity.

[0063] Further, the control panel 40 according to the first embodiment calculates the deflection of the spindle based on the measured value of the strain sensor 25S provided on the notch fulcrum of the elastic hinge 25H. At the notch fulcrum of the elastic hinge 25H, the stress due to the deflection of the spindle head 25 between the two fixed portions of the elastic hinge 25H is concentrated. Thereby, the elastic hinge 25H can convert a small displacement of the spindle head 25 into a large strain at the notch fulcrum. Thereby, the sensitivity of the strain sensor 25S can be significantly improved. For example, when the length between the notches at both ends of the elastic hinge 25H is 150 mm, the magnitude of the strain generated at the notch fulcrum at the center of the elastic hinge 25H is about 25 times the strain generated in the spindle head 25 itself. Further, by providing the elastic hinge 25H and the strain sensor 25S on the spindle head 25, the strain of the tool A can be measured even when the machining center 1 performs automatic tool change of the tool A.

[0064] The control panel 40 according to the first embodiment generates a state model for calculating the state of the machine body 20 based on the measured values and the cutting amount of the machine body 20, and identifies the machining error from the measured value of the strain sensor 25S based on the state model. Thereby, the control panel 40 can correct the machining error while machining the workpiece W. Note that the tip of the tool A cannot be observed by a camera or the like due to the presence of sparks, chips, and coolant during the machining of the workpiece W. However, according to the control panel 40 according to the present embodiment, the state of the tip of the tool A can be recognized regardless of the presence or absence of these. FIG. 11 is a diagram showing an example of side machining of the workpiece W. According to FIG. 11, the machine body 20 machines the side surface of the workpiece W along the Y axis by the tool A. At this time, the spindle deflects in the X-axis direction due to contact with the side surface of the workpiece W. FIG. 12 is a diagram showing the measurement result of the machining shape of the workpiece by side machining. As shown in FIG. 12, it can be seen that the sum of the machining error specified from the state model and the encoder locus during side machining almost coincides with the machining shape measured using a three-dimensional measuring machine after side machining. That is, according to the present embodiment, the control panel 40 can present the machining error with high accuracy without measuring the machining error in a subsequent process.

[0065] <Other Embodiments> As described above, one embodiment has been described in detail with reference to the drawings. However, the specific configuration is not limited to the above, and various design changes and the like are possible. That is, in other embodiments, the order of the above-described processes may be appropriately changed. Also, some processes may be executed in parallel.

[0066] The control panel 40 according to the above-described embodiment may be configured by a single computer, or the configuration of the control panel 40 may be divided and arranged in a plurality of computers, and the plurality of computers may function as the control panel 40 by cooperating with each other. At this time, some of the computers constituting the control panel 40 may be mounted inside the machining center 1, and other computers may be provided outside the machining center 1.

[0067] The control panel 40 according to the above-described embodiment controls the machining center 1, but is not limited thereto. For example, the control panel 40 according to other embodiments may control other machine tools such as a grinding machine, a milling machine, a lathe, and a boring machine.

[0068] The control panel 40 according to the above-described embodiment detects the deflection of the spindle by the deflection of the spindle head 25 detected by the strain sensor 25S provided on the elastic hinge 25H, but is not limited thereto. For example, the control panel 40 according to other embodiments may detect the deflection of the spindle by an acceleration sensor attached to the spindle 26 or a displacement sensor that measures the displacement of the tool attachment portion of the spindle 26. Note that the deflection of the spindle includes the deviation from the axis of the machining point at the tip of the spindle. Note that while the deflection of the spindle appears as the displacement of the tool attachment portion of the spindle 26, the magnitude of the displacement is small, and it may be difficult to detect by a displacement sensor. On the other hand, by measuring the deflection by the combination of the elastic hinge 25H and the strain sensor 25S as in the first embodiment, a large measured value can be obtained. On the other hand, regarding the presence or absence of contact between the tool A and the workpiece W, it can be easily detected even with a small measured value by a displacement sensor by performing the rigidity identification calculation.

[0069] In the above-described embodiment, the head camera 33 is provided on the side of the spindle head 25. However, the present invention is not limited to this. In other embodiments, the head camera 33 may be attached to the ceiling of the housing 10 and located directly above the spindle head 25. Also, in the above-described embodiment, the table camera 34 is provided on the side of the table 23. However, the present invention is not limited to this. In other embodiments, the table camera 34 may be attached to the ceiling of the housing 10 and located directly above the table 23. In this case, similar to the first embodiment, the head camera 33 and the table camera 34 are preferably fixed with jigs made of materials that are less likely to cause thermal expansion. Examples of materials that are less likely to cause thermal expansion include ceramics. Also, in other embodiments, a plurality of head cameras 33 and table cameras 34 may be provided, and the control panel 40 may perform calibration based on the images captured by each camera.

[0070] 〈Computer Configuration〉 FIG. 13 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. The computer 100 includes a processor 101, a main memory 102, a storage 103, and an interface 104. The above-described control panel 40 is implemented in the computer 100. And the operations of the above-described respective processing units are stored in the storage 103 in the form of a program. The processor 101 reads the program from the storage 103, expands it in the main memory 102, and executes the above processing according to the program. Also, the processor 101 secures a storage area corresponding to each of the above-described storage units in the main memory 102 according to the program. Examples of the processor 101 include a CPU (Central Processing Unit), a GPU (Graphic Processing Unit), and a microprocessor.

[0071] The program may be for realizing a part of the functions to be exerted by the computer 100. For example, the program may exert functions by combination with other programs already stored in the storage or combination with other programs implemented in other devices. In other embodiments, in addition to or instead of the above configuration, the computer 100 may include a custom LSI (Large Scale Integrated Circuit) such as a PLD (Programmable Logic Device). Examples of PLDs include PAL (Programmable Array Logic), GAL (Generic Array Logic), CPLD (Complex Programmable Logic Device), and FPGA (Field Programmable Gate Array). In this case, part or all of the functions realized by the processor 101 may be realized by the integrated circuit. Such an integrated circuit is also included as an example of a processor.

[0072] Examples of the storage 103 include a magnetic disk, a magneto-optical disk, an optical disk, a semiconductor memory, etc. The storage 103 may be an internal medium directly connected to the bus of the computer 100, or may be an external medium connected to the computer 100 via the interface 104 or a communication line. Also, when this program is distributed to the computer 100 via a communication line, the computer 100 that has received the distribution may expand the program in the main memory 102 and execute the above processing. In at least one embodiment, the storage 103 is a non-transitory tangible storage medium.

[0073] Also, the program may be for realizing a part of the functions described above. Further, the program may be a so-called difference file (difference program) that realizes the functions described above in combination with other programs already stored in the storage 103.

Explanation of Reference Numerals

[0074] 1... Machining center 10... Housing 10D... Door 10W... Window 11... Headlight 12... Table light 13... Air nozzle 20... Machine body 21... Base 22... Column 22E... X-axis encoder 22M... X-axis motor 23... Table 23E... Z-axis encoder 23M... Z-axis motor 24... Slide 24E... Y-axis encoder 24M... Y-axis motor 25... Spindle head 25S... Strain sensor 25H... Elastic hinge 25X... Head tab 26... Spindle 26M... Spindle motor 27... Worktable 27X... Table tab 30... Imaging device 31... Mount 32... Top plate 33... Head camera 34... Table camera 40... Control panel 41... Data acquisition unit 42... Shape memory unit 43... Parameter memory unit 44... Position determination unit 45... Displacement correction unit 46... Relative displacement identification unit 47... Rigidity calculation unit 48... Contact determination unit 49... Tool data correction unit 50... Depth of cut determination unit 51... Model generation unit 52... Error identification unit 53... Control unit 54... Finished shape generation unit 55... Display control unit 26T... Torque sensor A... Tool W... Workpiece

Claims

1. A control device for a machine including a jig for supporting a workpiece and a spindle including a tool for machining the workpiece, a relative displacement specifying unit that specifies a relative displacement between the jig and the tool based on measured values of displacements of the jig and the tool; a position determination unit that determines whether the jig and the tool are located at a jig calibration point and a tool calibration point, respectively, based on measured values of displacements of the jig and the tool; a displacement correction unit that corrects the measured values of displacements of the jig and the tool based on a captured image of the jig calibration point and a captured image of the tool calibration point captured by a camera supported by a support portion that does not contact the machine when it is determined that the jig and the tool are located at the jig calibration point and the tool calibration point, respectively; a contact determination unit that determines whether the tool has contacted the workpiece based on a measured value related to deflection of the spindle; a tool data correction unit that corrects tool data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; a control unit that generates a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool data; A control device comprising the above.

2. A control device for a machine including a jig for supporting a workpiece, a tool for machining the workpiece, and a spindle including a head for supporting the tool, a relative displacement specifying unit that specifies a relative displacement between the jig and the tool based on measured values of displacements of the jig and the tool; a contact determination unit that determines whether the tool has contacted the workpiece based on a measured value related to deflection of the spindle; a tool data correction unit that corrects tool data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; a control unit that generates a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool data; Comprising, In the head, a hinge member connecting a tip end portion and a base end portion of the head; a strain sensor provided so as to straddle a rotation axis of the hinge member is provided, The contact determination unit determines whether the tool has contacted the workpiece based on a measured value of the strain sensor. A control device.

3. The hinge member is made of a material having a linear expansion coefficient the same as that of the head. The control device according to Claim 2.

4. The tool data indicates the diameter of the tool in addition to the length of the tool. The control device according to any one of claims 1 to 3.

5. A model generation unit that generates a state model for calculating the state of the machine based on the measurement value related to the machine and the control command; An error identification unit that identifies a machining error by inputting the measurement value related to the machine into the state model; Comprising: The state model is a model for obtaining the position of the tool based on the control command and the measurement value related to the deflection of the spindle, The model generation unit: Based on the deflection of the spindle in the cutting direction, obtain a time constant representing the delay of the displacement due to the deflection, Generate the state model by obtaining a conversion coefficient that converts the magnitude of the deflection into a correction amount of the position of the tool based on the deflection of the spindle in the feed direction and the time constant. The control device according to any one of claims 1 to 4.

6. A finished shape generation unit that generates three-dimensional data representing the shape of the workpiece machined by the control command based on the machining error; A map generation unit that generates a color map representing, by color, the difference between the distance from the reference point of the workpiece to the surface of the three-dimensional data and the distance from the reference point to the surface of the target shape of the workpiece. Comprising: The control unit generates the control command based on target data representing the target shape. The control device according to claim 5.

7. A jig for supporting a workpiece; A tool for machining the workpiece; The control device according to any one of claims 1 to 6. An industrial machine comprising:

8. A control method for a machine including a jig for supporting a workpiece and a spindle including a tool for machining the workpiece, comprising: Identifying the relative displacement between the jig and the tool based on the measured values of the displacements of the jig and the tool; Determining whether the jig and the tool are respectively located at the jig calibration point and the tool calibration point based on the measured values of the displacements of the jig and the tool; When it is determined that the jig and the tool are respectively located at the jig calibration point and the tool calibration point, correcting the measured values of the displacements of the jig and the tool based on the captured images of the jig calibration point and the tool calibration point captured by a camera supported by a support portion that does not contact the machine; Determining whether the tool has contacted the workpiece based on the measured value related to the deflection of the spindle; correcting tool data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; generating a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool data; A control method comprising the steps of:

9. A control method for a machine, comprising: a jig for supporting a workpiece; a tool for machining the workpiece; and a spindle including a head for supporting the tool, the head having a hinge member connecting a tip end portion and a base end portion of the head, and a strain sensor provided so as to straddle a rotation axis of the hinge member, identifying a relative displacement between the jig and the tool based on measured values of displacements of the jig and the tool; determining whether or not the tool has contacted the workpiece based on a measured value of the strain sensor; correcting tool data indicating the length of the tool based on the relative displacement when it is determined that the tool has contacted the workpiece; generating a control command for controlling the jig or the tool based on the relative displacement, the shape of the workpiece, and the tool data; A control method comprising the steps of:

Citation Information

Patent Citations

  • Device implemented for working unitary with measurement

    JP2006159299A

  • Machine tool

    JP2017087416A

  • Work-piece processing method and work-piece processing machine

    JP2020184321A