Dimension Estimation Device and Computer-Readable Storage Medium
The dimensional estimation device addresses the increased workload for operators by automatically calculating and estimating workpiece dimensions from machining programs, thereby improving operational efficiency.
Patent Information
- Application Number
- JP2023559325
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-11
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2041-11-11
AI Technical Summary
Operators face increased workload when performing machining simulation, as they need to manually confirm and input the dimensions of the workpiece into the simulation device before machining.
A dimensional estimation device that calculates the maximum and minimum values of coordinate values in a cutting path based on a machining program and estimates the dimensions of the workpiece before machining, thereby reducing operator workload.
The device efficiently presents the workpiece dimensions to the operator, enhancing working efficiency and reducing the need for manual input and verification.
Smart Images

Figure 0007684423000001 
Figure 0007684423000002 
Figure 0007684423000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a dimensional estimation device and a computer-readable storage medium.
Background Art
[0002] Conventionally, machining simulation has been performed before machining a workpiece (Patent Document 1). By performing machining simulation, an operator can confirm whether a machining program operates normally.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, when machining simulation is performed, an operator needs to confirm the dimensions of a workpiece to be machined in a work instruction or the like in advance, and further input the dimensions of the workpiece into a machining simulation device. Such work increases the load on the operator.
[0005] An object of the present disclosure is to provide a dimensional estimation device capable of reducing the load on an operator.
Means for Solving the Problems
[0006] The dimensional estimation device includes a calculation unit that calculates at least one of a maximum value and a minimum value of coordinate values indicating positions included in a cutting path based on a machining program, and an estimation unit that estimates the dimensions of a workpiece before machining based on at least one of the maximum value and the minimum value calculated by the calculation unit.
[0007] A computer-readable storage medium stores instructions for causing a computer to calculate at least one of a maximum value and a minimum value of coordinate values indicating positions included in a cutting path based on a machining program, and estimate dimensions of a workpiece before machining based on at least one of the calculated maximum value and minimum value.
Advantages of the Invention
[0008] According to one aspect of the present disclosure, it becomes possible to present the dimensions of the workpiece before machining to the operator and improve the working efficiency of the operator.
Brief Description of the Drawings
[0009]
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 13A
Figure 13B
Figure 14
Embodiment for Carrying Out the Invention
[0010] Hereinafter, a machining surface estimation device according to an embodiment of the present disclosure will be described with reference to the drawings. Note that not all combinations of the features described in the following embodiments are necessarily required to solve the problems. Also, there may be cases where more detailed explanations than necessary are omitted. Further, the following descriptions of the embodiments and the drawings are provided for those skilled in the art to fully understand the present disclosure and are not intended to limit the scope of the claims.
[0011] The dimension estimation device is a device that executes dimension estimation processing. The dimension estimation processing is a process of estimating the dimensions of the workpiece before machining based on the machining program. The dimensions estimated in the dimension estimation processing may be the dimensions of a part of the workpiece. The dimensions estimated in the dimension estimation processing are, for example, the length of the workpiece in the Z-axis direction. The dimensions estimated in the dimension estimation processing may further include the lengths of the workpiece in the X-axis direction and the Y-axis direction.
[0012] The dimension estimation device is implemented, for example, in a numerical control device that controls a machine tool. The dimension estimation device may be implemented in a server or a PC (Personal Computer) that is wired or wirelessly connected to the numerical control device. Hereinafter, an embodiment in which the dimension estimation device is implemented in the numerical control device will be described.
[0013] FIG. 1 is a block diagram showing an example of the hardware configuration of a machine tool including a numerical control device. The machine tool 1 is, for example, a lathe, a machining center, a drilling center, and a composite machining machine.
[0014] The machine tool 1 includes a numerical control device 2, an input / output device 3, a servo amplifier 4, a servo motor 5, a spindle amplifier 6, a spindle motor 7, and auxiliary equipment 8.
[0015] The numerical control device 2 is a device that controls the entire machine tool 1. The numerical control device 2 includes a hardware processor 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a non-volatile memory 205.
[0016] The hardware processor 201 is a processor that controls the entire numerical control device 2 according to a system program. The hardware processor 201 reads out a system program and the like stored in the ROM 203 via the bus 202, and performs various processes based on the system program. The hardware processor 201 controls the servo motor 5 and the spindle motor 7 based on a machining program. Further, the hardware processor 201 executes a dimensional estimation process based on a dimensional estimation program. The hardware processor 201 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
[0017] The hardware processor 201 performs, for example, analysis of a machining program and output of control commands for the servo motor 5 and the spindle motor 7 at each control cycle.
[0018] The bus 202 is a communication path that connects each piece of hardware in the numerical control device 2 to each other. Each piece of hardware in the numerical control device 2 exchanges data via the bus 202.
[0019] The ROM 203 is a storage device that stores a system program and the like for controlling the entire numerical control device 2. The ROM 203 may store a dimensional estimation program. The ROM 203 is a computer-readable storage medium.
[0020] RAM 204 is a storage device that temporarily stores various data. RAM 204 functions as a working area for the hardware processor 201 to process various data.
[0021] The non-volatile memory 205 is a storage device that retains data even when the power of the machine tool 1 is turned off and power is not supplied to the numerical control device 2. The non-volatile memory 205 stores, for example, machining programs and various parameters. The non-volatile memory 205 is a computer-readable storage medium. The non-volatile memory 205 is composed of, for example, a memory backed up by a battery or an SSD (Solid State Drive).
[0022] The numerical control device 2 further includes an interface 206, an axis control circuit 207, a spindle control circuit 208, a PLC (Programmable Logic Controller) 209, and an I / O unit 210.
[0023] The interface 206 connects the bus 202 and the input / output device 3. The interface 206 sends various data processed by the hardware processor 201, for example, to the input / output device 3.
[0024] The input / output device 3 is a device that receives various data via the interface 206 and displays various data. The input / output device 3 also receives input of various data and sends the various data via the interface 206 to, for example, the hardware processor 201.
[0025] The input / output device 3 is, for example, a touch panel. When the input / output device 3 is a touch panel, the input / output device 3 is, for example, a capacitive touch panel. Note that the touch panel is not limited to the capacitive method and may be a touch panel of other methods. The input / output device 3 is installed on an operation panel (not shown) in which the numerical control device 2 is housed.
[0026] The axis control circuit 207 is a circuit that controls the servo motor 5. The axis control circuit 207 receives a control command from the hardware processor 201 and outputs various commands for driving the servo motor 5 to the servo amplifier 4. The axis control circuit 207, for example, sends a torque command for controlling the torque of the servo motor 5 to the servo amplifier 4.
[0027] The servo amplifier 4 receives a command from the axis control circuit 207 and supplies current to the servo motor 5.
[0028] The servo motor 5 is driven by receiving the supply of current from the servo amplifier 4. The servo motor 5 is connected to, for example, a ball screw that drives a tool post. When the servo motor 5 is driven, the structures of the machine tool 1 such as the tool post move in each axial direction. The servo motor 5 incorporates an encoder (not shown) that detects the position of the control axis and the feed rate. The position feedback information and the speed feedback information indicating the position of the control axis and the feed rate of the control axis detected by the encoder are fed back to the axis control circuit 207. Thereby, the axis control circuit 207 performs feedback control of the control axis.
[0029] The spindle control circuit 208 is a circuit for controlling the spindle motor 7. The spindle control circuit 208 receives a control command from the hardware processor 201 and outputs a command for driving the spindle motor 7 to the spindle amplifier 6. The spindle control circuit 208, for example, sends a spindle speed command for controlling the rotational speed of the spindle motor 7 to the spindle amplifier 6.
[0030] The spindle amplifier 6 receives a command from the spindle control circuit 208 and supplies current to the spindle motor 7.
[0031] The spindle motor 7 is driven by receiving the supply of current from the spindle amplifier 6. The spindle motor 7 is connected to the main spindle and rotates the main spindle.
[0032] The PLC 209 is a device that executes a ladder program to control the auxiliary device 8. The PLC 209 sends commands to the auxiliary device 8 via the I / O unit 210.
[0033] The I / O unit 210 is an interface that connects the PLC 209 and the auxiliary device 8. The I / O unit 210 sends the commands received from the PLC 209 to the auxiliary device 8.
[0034] The auxiliary device 8 is installed in the machine tool 1 and is a device that performs auxiliary operations in the machine tool 1. The auxiliary device 8 operates based on the commands received from the I / O unit 210. The auxiliary device 8 may be a device installed around the machine tool 1. The auxiliary device 8 is, for example, a tool changer, a coolant injection device, or an opening / closing door drive device.
[0035] Next, the functions of the dimension estimation device will be described.
[0036] FIG. 2 is a block diagram showing an example of the functions of the dimension estimation device implemented in the numerical control device 2. The dimension estimation device 20 includes a storage unit 21, an interpretation unit 22, a calculation unit 23, an estimation unit 24, and a display unit 25. In the dimension estimation device 20, dimension estimation processing is executed by these units.
[0037] The storage unit 21 is realized, for example, by storing various data used in the dimension estimation processing in the RAM 204 or the non-volatile memory 205. The interpretation unit 22, the calculation unit 23, the estimation unit 24, and the display unit 25 are realized, for example, by the hardware processor 201 performing arithmetic processing using the system program stored in the ROM 203, the program for dimension estimation, and various data stored in the non-volatile memory 205.
[0038] The storage unit 21 stores various data used in the dimension estimation processing. The storage unit 21 stores, for example, a machining program and tool shape data.
[0039] The machining program is a program for machining a workpiece to be machined. In the machining program, for example, commands for operating each axis of the machine tool are specified using G-codes, F-codes, M-codes, T-codes, and S-codes.
[0040] The tool shape data includes data indicating the tool type, tool position correction data, tool diameter correction data, tool length correction data, and nose R data. The tool shape data may be three-dimensional model data indicating the shape of the tool. The tool shape data is used, for example, in machining simulations.
[0041] The interpretation unit 22 reads the machining program stored in the storage unit 21 and interprets the machining program. The interpretation unit 22 interprets the meanings of commands such as G-codes, F-codes, M-codes, T-codes, and S-codes specified in the machining program.
[0042] Figure 3 is a diagram showing an example of a machining program interpreted by the interpretation unit 22. In the line with sequence number N1, "G99G96S50;" is described. "G99" is a code for specifying per-revolution feed control. "G96" is a code for specifying constant surface speed control. "S50" is a code for specifying the surface speed.
[0043] In the line with sequence number N2, "G00X100.0Z100.0;" is described. "G00" is a code for commanding positioning. "X100.0" and "Z100.0" are, for example, coordinate values in the workpiece coordinate system. These coordinate values are the coordinate values of the starting point of the fixed cycle.
[0044] In the line with sequence number N3, "G71U20.0R5.0;" is described. "G71" is a code for specifying a rough machining fixed cycle. "U" is a code for specifying the depth of cut. "R" is a code for specifying the retract amount.
[0045] In the line with sequence number N4, "G71P100Q200;" is described. "P" is a code for specifying the first sequence number where the finished shape is defined in a fixed cycle. "Q" is a code for specifying the last sequence number where the finished shape is defined. That is, the finished shape of the workpiece is specified in the lines from sequence number N100 to sequence number N200.
[0046] In the line with sequence number N100, "G00X40.0Z100.0;" is described. In the line with sequence number N101, "G01Z80.0F0.2;" is described. Also, in the line with sequence number N200, "X100.0Z50.0;" is described. That is, in these lines, it is specified that the finished shape of the workpiece is a shape formed by connecting the coordinates (40.0, 100.0), (40.0, 80.0), and (100.0, 50.0) in order. "F" is a code for specifying the feed amount in the per-revolution feed control.
[0047] In the line with sequence number N201, "G00X500.0Z500.0;" is described. This command is a command to move the tool to the tool change position.
[0048] The calculation unit 23 calculates at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path based on the machining program. The coordinate values of the positions included in the cutting path may include a first coordinate value indicating the position in the first axis direction and a second coordinate value indicating the position in the second axis direction. For example, the coordinate values indicating the cutting path include the coordinate values indicating the position in the X-axis direction and the coordinate values indicating the position in the Z-axis direction. Therefore, the calculation unit 23 calculates at least one of the maximum value and the minimum value of the coordinate values in the X-axis direction and at least one of the maximum value and the minimum value of the coordinate values in the Z-axis direction among the coordinate values of the positions included in the cutting path.
[0049] Further, the calculation unit 23 draws a cutting path on a virtual surface or in a virtual space based on the machining program, and calculates at least one of the maximum value and the minimum value of the coordinate values indicating the cutting path based on the cutting path drawn on the virtual surface or in the virtual space. Here, the cutting path is the path along which the tool moves by cutting feed. Therefore, the cutting path does not include the path along which the tool moves at rapid feed by the positioning command "G00".
[0050] FIG. 4 is a diagram showing an example of the cutting path drawn by the calculation unit 23. FIG. 4 shows the cutting path drawn by the calculation unit 23 based on the machining program shown in FIG. 3.
[0051] Based on the positioning command described in the line with sequence number N2, the calculation unit 23 positions the tool at the positions of X100.0 and Z100.0. Further, based on the command specifying the rough machining fixed cycle described in the lines with sequence numbers N3 to N200, the calculation unit 23 draws the cutting path on a virtual plane.
[0052] Specifically, the calculation unit 23 draws a rapid feed path for moving the tool from the positions of X100.0 and Z100.0 to the positions of X80.0 and Z100.0 at rapid feed. The calculation unit 23 draws the rapid feed path, for example, with a solid line.
[0053] Next, the calculation unit 23 draws a cutting path for moving the tool from the positions of X80.0 and Z100.0 to the positions of X80.0 and Z60.0 at cutting feed. The calculation unit 23 draws the cutting path, for example, with a dotted line.
[0054] Next, the calculation unit 23 draws a cutting path for moving the tool from the positions of X80.0 and Z60.0 to the positions of X100.0 and Z50.0 at cutting feed. Next, the calculation unit 23 draws a rapid feed path from the positions of X100.0 and Z50.0 to the positions of X100.0 and Z100.0.
[0055] Next, the calculation unit 23 draws a rapid feed path from the positions of X100.0 and Z100.0 to the positions of X60.0 and Z100.0. Next, the calculation unit 23 draws a cutting path from the positions of X60.0 and Z100.0 to the positions of X60.0 and Z70.0. Next, the calculation unit 23 draws a cutting path from the positions of X60.0 and Z70.0 to the positions of X80.0 and Z60.0. Next, the calculation unit 23 draws a rapid feed path from the positions of X80.0 and Z60.0 to the positions of X80.0 and Z100.0.
[0056] Next, the calculation unit 23 draws a rapid feed path from the positions of X80.0 and Z100.0 to the positions of X40.0 and Z100.0. Next, the calculation unit 23 draws a cutting path from the positions of X40.0 and Z100.0 to the positions of X40.0 and Z80.0. Next, the calculation unit 23 draws a cutting path from the positions of X40.0 and Z80.0 to the positions of X60.0 and Z70.0. Next, the calculation unit 23 draws a rapid feed path from the positions of X60.0 and Z70.0 to the positions of X60.0 and Z100.0.
[0057] Next, the calculation unit 23 draws a rapid feed path from the positions of X60.0 and Z100.0 to the positions of X100.0 and Z100.0. Finally, the calculation unit 23 draws a rapid feed path from the positions of X100.0 and Z100.0 to the positions of X500.0 and Z500.0. Here, the calculation unit 23 does not draw a path related to the retraction operation of the tool, but the calculation unit 23 may draw a path related to the retraction operation.
[0058] Among the coordinate values indicating the positions included in the cutting path drawn by the calculation unit 23, the maximum value of the coordinate values in the X-axis direction is 100.0, and the maximum value of the coordinate values in the Z-axis direction is 100.0. Therefore, the calculation unit 23 calculates both the maximum value of the coordinate values in the X-axis direction and the maximum value of the coordinate values in the Z-axis direction among the coordinate values indicating the positions included in the cutting path to be 100.0.
[0059] The estimation unit 24 estimates the dimensions of the workpiece before machining based on at least either the maximum value or the minimum value of the coordinate values indicating the cutting path calculated by the calculation unit 23. That is, the estimation unit 24 may estimate the dimensions of the workpiece before machining based on the maximum value without using the minimum value. For example, when one end of the workpiece is set at the position of 0.0 in the Z-axis direction, the estimation unit 24 estimates the length of the workpiece based on the maximum value without using the minimum value of the coordinate values in the Z-axis direction.
[0060] For example, when a turning program is executed, if both the maximum value of the coordinate values in the X-axis direction and the maximum value of the coordinate values in the Z-axis direction calculated by the calculation unit 23 are 100.0, the estimation unit 24 may estimate that the dimensions of the workpiece before machining are a diameter of 100.0 [mm] and a length of 100.0 [mm]. In this case, the estimation unit 24 estimates the length of the workpiece on the premise that one end of the workpiece is at the position of Z0.0. When the workpiece is turned over its entire length, the estimation unit 24 may estimate the length of the workpiece based on the difference between the maximum value and the minimum value in the Z-axis direction.
[0061] The dimension estimation device 20 may be configured such that one end or one surface of the workpiece can be set to the position of 0.0 in any of the axial directions of the X-axis, Y-axis, and Z-axis in a predetermined parameter. Thereby, the estimation unit 24 can determine whether to estimate the dimensions of the workpiece based on the maximum value and the minimum value of the coordinate values indicating the cutting path or to estimate the dimensions of the workpiece based only on the maximum value.
[0062] The display unit 25 displays the dimensions of the workpiece estimated by the estimation unit 24. The display unit 25 displays the dimensions of the workpiece on the display screen of the input / output device 3, for example.
[0063] When the estimation unit 24 estimates that the dimension of the diameter is 100.0 [mm] and the length in the axial direction is 100.0 [mm], for example, the display unit 25 displays on the display screen that the dimensions of the workpiece before machining are a diameter of 100.0 [mm] and a length of 100.0 [mm].
[0064] FIG. 5 is a diagram showing an image of a workpiece composed of dimensions estimated by the estimation unit 24. The display unit 25 displays, for example, an image of a cylindrical workpiece with a diameter of 100.0 [mm] and a length of 100.0 [mm] on the display screen. Instead of the image of the workpiece, the display unit 25 may display numerical values indicating the diameter and length of the workpiece on the display screen.
[0065] Note that the calculation unit 23 may directly calculate at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path from the coordinate values included in the cutting command specified in the machining program without drawing the cutting path. The cutting command is, for example, a linear interpolation command G01, an arc interpolation command G02, or G03.
[0066] In the machining program shown in FIG. 3, X100.0 is the maximum value of the coordinate values in the X-axis direction included in the cutting command, and Z100.0 is the maximum value of the coordinate values in the Z-axis direction. Therefore, the calculation unit 23 sets both the maximum value of the coordinate values in the X-axis direction and the maximum value of the coordinate values in the Z-axis direction to 100.0 based on the machining program. and calculate it.
[0067] The estimation unit 24 estimates the dimensions of the workpiece before machining based on at least one of the maximum value and the minimum value of the coordinate values indicating the cutting path calculated by the calculation unit 23.
[0068] For example, when both the maximum value of the coordinate values in the X-axis direction and the maximum value of the coordinate values in the Z-axis direction calculated by the calculation unit 23 based on the turning program are 100.0, the estimation unit 24 estimates that the dimensions of the workpiece before machining are a diameter of 100.0 [mm] and a length of 100.0 [mm].
[0069] The display unit 25 displays the dimensions of the workpiece estimated by the estimation unit 24. The display unit 25 displays the dimensions of the workpiece on the display screen of the input / output device 3, for example.
[0070] When the estimation unit 24 estimates that the diameter is 100.0 [mm] and the length is 100.0 [mm], the display unit 25 displays on the display screen that the dimensions of the workpiece before processing are a diameter of 100.0 [mm] and a length of 100.0 [mm].
[0071] Next, the flow of the dimension estimation process executed by the dimension estimation device 20 will be described.
[0072] FIG. 6 is a diagram showing an example of the flow of the dimension estimation process. In the dimension estimation process, first, the storage unit 21 stores the machining program (step S1). The storage unit 21 stores, for example, a machining program received from an external device such as a server.
[0073] Next, the interpretation unit 22 reads the machining program from the storage unit 21 and interprets the machining program (step S2).
[0074] Next, the calculation unit 23 calculates at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path based on the machining program (step S3).
[0075] Next, the estimation unit 24 estimates the dimensions of the workpiece before processing based on at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path calculated by the calculation unit 23 (step S4).
[0076] Next, the display unit 25 displays the dimensions of the workpiece before processing estimated by the estimation unit 24 (step S5), and the process ends.
[0077] As described above, the dimensional estimation device 20 includes a calculation unit 23 that calculates at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path based on the machining program, and an estimation unit 24 that estimates the dimensions of the workpiece before machining based on at least one of the maximum value and the minimum value calculated by the calculation unit 23. The dimensional estimation device 20 further includes a display unit 25 that displays the dimensions of the workpiece estimated by the estimation unit 24. Therefore, the dimensional estimation device 20 can present the dimensions of the workpiece before machining to the operator.
[0078] As a result, when the operator performs the setup work before machining, even without checking the work instruction sheet or the like, the operator can grasp the dimensions of the workpiece to be installed on the machine tool 1.
[0079] Further, the calculation unit 23 draws the cutting path on a virtual plane or in a virtual space, and calculates at least one of the maximum value and the minimum value of the coordinate values based on the cutting path drawn on the virtual plane or in the virtual space. Therefore, even when the cutting path is specified using incremental commands in the machining program, the dimensional estimation device 20 can estimate the dimensions of the workpiece before machining. Note that an incremental command is a command that specifies the amount of movement from the coordinate value of the current position to the coordinate value of the destination.
[0080] Further, the coordinate values indicating the positions included in the cutting path include a first coordinate value indicating the position in the first axis direction and a second coordinate value indicating the position in the second axis direction. Therefore, the dimensions of the workpiece in two axis directions before machining can be estimated.
[0081] In the above-described embodiment, the coordinate values indicating the positions included in the cutting path include a first coordinate value indicating the position in the first axial direction and a second coordinate value indicating the position in the second axial direction. However, the coordinate values do not necessarily have to include the first coordinate value and the second coordinate value. For example, in the case where drilling is performed at a drilling center and the coordinate value in the Z-axis direction of the lower surface of the workpiece is set to "0", the calculation unit 23 may calculate only the position of the cutting start point, that is, only the maximum value of the coordinate value in the Z-axis direction. Thereby, the dimension estimation device 20 can estimate the thickness of the workpiece before processing.
[0082] In the above-described embodiment, an example in which the dimension estimation device 20 estimates the dimensions of the workpiece before processing based on the turning program has been described. However, the processing program may be a milling program.
[0083] FIG. 7 is a diagram showing an example of a cutting path drawn by the calculation unit 23 based on a milling program. The shape of the cutting path shown in FIG. 7 is a circle of different sizes centered on a predetermined axis parallel to the Z-axis at a predetermined position in the Z-axis direction. The calculation unit 23 calculates the maximum value Xmax and the minimum value Xmin of the coordinate values in the X-axis direction, the maximum value Ymax and the minimum value Ymin in the Y-axis direction, and the maximum value Zmax in the Z-axis direction.
[0084] The estimation unit 24 estimates the dimensions of the workpiece before processing based on the maximum value Xmax and the minimum value Xmin of the coordinate values in the X-axis direction, the maximum value Ymax and the minimum value Ymin of the coordinate values in the Y-axis direction, and the maximum value Zmax of the coordinate values in the Z-axis direction calculated by the calculation unit 23. Specifically, the estimation unit 24 calculates (Xmax - Xmin) as the dimension in the depth direction, (Ymax - Ymin) as the dimension in the width direction, and Zmax as the dimension in the height direction.
[0085] FIG. 8 is a diagram showing an image of a workpiece composed of the dimensions estimated by the estimation unit 24. The estimation unit 24 estimates, for example, a rectangular parallelepiped with (Xmax - Xmin) as the length in the depth direction, (Ymax - Ymin) as the width, and Zmax as the height as the workpiece.
[0086] FIG. 9 is a diagram showing another example of a cutting path drawn by the calculation unit 23 based on a milling program. The cutting path shown in FIG. 9 includes a path extending in the Z-axis direction, a path extending on a plane parallel to the XY plane, and a path connecting these two paths with an arc. In this case, the calculation unit 23 calculates the maximum value Xmax and the minimum value Xmin of the coordinate values in the X-axis direction, the maximum value Ymax and the minimum value Ymin in the Y-axis direction, and the maximum value Zmax and the minimum value Zmin in the Z-axis direction.
[0087] The estimation unit 24 estimates the dimensions of the workpiece before processing based on (Xmax - Xmin), (Ymax - Ymin), and (Zmax - Zmin).
[0088] FIG. 10 is a diagram showing an image of a workpiece composed of the dimensions estimated by the estimation unit 24. The estimation unit 24 uses (Xmax - Xmin) as the length in the depth direction, (Ymax - Ymin) as the width, and (Zmax - Zmin) as the height do and estimates a rectangular parallelepiped as the workpiece.
[0089] In the above-described embodiment, when the processing program is a turning program, the estimation unit 24 estimates that the shape of the workpiece before processing is a cylindrical shape. Also, when the processing program is a milling program, the estimation unit 24 estimates that the shape of the workpiece before processing is a rectangular parallelepiped shape. However, the dimension estimation device 20 may further include a reception unit that receives shape information indicating the shape of the workpiece.
[0090] FIG. 11 is a block diagram showing an example of the functions of the dimension estimation device 20 including a reception unit. Here, functions different from those of the dimension estimation device 20 described with reference to FIG. 2 will be described, and descriptions of the same functions as those of the dimension estimation device 20 in FIG. 2 will be omitted.
[0091] The reception unit 26 receives shape information indicating the shape of the workpiece. The shape information is, for example, information indicating a cylindrical shape, a cylindrical shape, a rectangular parallelepiped shape, a cubic shape, or a conical shape.
[0092] For example, the reception unit 26 may display a pull-down menu on the display screen of the input / output device 3 so that one piece of shape information is selected from a plurality of types of shapes. The reception unit 26 receives the selected shape information.
[0093] The estimation unit 24 estimates the dimensions and shape of the workpiece before processing based on the shape information received by the reception unit 26. Further, the display unit 25 displays the workpiece before processing based on the shape information received by the reception unit 26.
[0094] The dimension estimation device 20 may further include a reflection unit that reflects the dimensions of the workpiece before processing estimated by the estimation unit 24 in the processing program.
[0095] FIG. 12 is a block diagram showing an example of the functions of the dimension estimation device 20 including the reflection unit. Here, functions different from those of the dimension estimation device 20 described with reference to FIG. 2 are described, and descriptions of the same functions as those of the dimension estimation device 20 in FIG. 2 are omitted.
[0096] The reflection unit 27 reflects the dimensions of the workpiece before processing estimated by the estimation unit 24 in the processing program. In other words, the reflection unit 27 writes information indicating the dimensions of the workpiece before processing estimated by the estimation unit 24 into the processing program stored in the storage unit 21.
[0097] FIG. 13A is a diagram showing an example of a machining program before the dimensions of the workpiece are reflected. FIG. 13B is a diagram showing an example of a machining program after the dimensions of the workpiece are reflected. The reflection unit 27 writes a command "G19ααBxxDyyHzz;" between the line where G49 and G80 specified in the machining program are described and the line where G90 is described. Here, "αα" is a numerical value specifying the shape of the workpiece. For example, when "αα" is "02", the workpiece shape is a rectangular parallelepiped. Also, "xx" indicates, for example, the dimension of the workpiece in the X-axis direction, "yy" indicates the dimension of the workpiece in the Y-axis direction, and "zz" indicates the dimension of the workpiece in the Z-axis direction.
[0098] The dimension estimation device 20 may further include a machining simulation unit that executes a machining simulation based on the dimensions of the workpiece before machining estimated by the estimation unit 24.
[0099] FIG. 14 is a block diagram showing an example of the functions of the dimension estimation device 20 including a machining simulation unit. Here, functions different from those of each part of the dimension estimation device 20 described with reference to FIG. 2 will be described.
[0100] The machining simulation unit 28 executes a machining simulation based on the dimensions of the workpiece before machining estimated by the estimation unit 24. The machining simulation unit 28 displays an image of the workpiece before machining based on the dimensions of the workpiece before machining estimated by the estimation unit 24. Further, the machining simulation unit 28 executes a machining simulation of the workpiece based on the machining program stored in the storage unit 21.
[0101] The machining simulation unit 28 may execute a machining simulation using the shape information indicating the shape of the workpiece received by the reception unit 26. Also, the machining simulation unit 28 may execute a machining simulation based on the machining program in which the dimensions of the workpiece before machining are written by the reflection unit 27.
[0102] In the above-described embodiment, the estimation unit 24 estimates the dimensions of the workpiece before processing based on at least one of the maximum value and the minimum value calculated by the calculation unit 23. However, the estimation unit 24 may further estimate the dimensions of the workpiece before processing based on the depth of cut.
[0103] For example, when cutting the upper surface of a rectangular parallelepiped-shaped workpiece with a milling cutter, the milling cutter is positioned, for example, at a position where it has cut into the upper surface of the workpiece before processing by a predetermined depth of cut, and cutting is started. In this case, if the estimation unit 24 estimates the dimensions of the workpiece before processing based on the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path, the estimated dimensions may be smaller than the actual dimensions of the workpiece before processing.
[0104] Therefore, the estimation unit 24 estimates, as the dimensions of the actual workpiece before processing, a value obtained by adding the depth of cut to the dimensions estimated based on the maximum value and the minimum value of the coordinate values. Thereby, the dimensions of the workpiece before processing can be accurately estimated.
[0105] Note that the present disclosure is not limited to the above-described embodiment, and can be appropriately modified without departing from the gist thereof. In the present disclosure, any component of the embodiment can be modified or any component of the embodiment can be omitted.
Description of Reference Numerals
[0106] 1 Machine tool 2 Numerical control device 20 Dimension estimation device 21 Storage unit 22 Interpretation unit 23 Calculation unit 24 Estimation unit 25 Display unit 26 Reception unit 27 Reflection unit 28 Machining simulation unit 201 Hardware processor 202 Bus 203 ROM 204 RAM 205 Non-volatile memory 206 Interface 207 Axis control circuit 208 Spindle control circuit 209 PLC 210 I / O unit 3 Input / output device 4 Servo amplifier 5 Servo motor 6 Spindle amplifier 7 Spindle motor 8 Auxiliary equipment
Claims
1. A calculating unit that calculates at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path based on a machining program; An estimating unit that estimates the dimensions of the workpiece before machining based on at least one of the maximum value and the minimum value calculated by the calculating unit; A dimensional estimation device comprising the above.
2. The calculating unit draws the cutting path on a virtual plane or in a virtual space, and calculates at least one of the maximum value and the minimum value of the coordinate values based on the cutting path drawn on the virtual plane or in the virtual space. The dimensional estimation device according to Claim 1.
3. The coordinate values include a first coordinate value indicating a position in a first axial direction and a second coordinate value indicating a position in a second axial direction. The dimensional estimation device according to Claim 1 or 2.
4. The dimensional estimation device according to any one of Claims 1 to 3, further comprising a display unit that displays the dimensions of the workpiece before machining estimated by the estimating unit.
5. The dimensional estimation device according to any one of Claims 1 to 4, further comprising a reception unit that receives shape information indicating the shape of the workpiece.
6. The dimensional estimation device according to any one of Claims 1 to 5, further comprising a reflection unit that reflects the dimensions of the workpiece before machining estimated by the estimating unit in the machining program.
7. The dimensional estimation device according to any one of Claims 1 to 6, further comprising a machining simulation unit that executes a machining simulation based on the dimensions of the workpiece before machining estimated by the estimating unit.
8. The estimating unit further estimates the dimensions of the workpiece before machining based on the depth of cut. The dimensional estimation device according to any one of Claims 1 to 7.
9. Calculating at least one of the maximum value and the minimum value of the coordinate values indicating the positions included in the cutting path based on a machining program; Estimating the dimensions of the workpiece before machining based on at least one of the calculated maximum value and minimum value; A computer-readable storage medium storing instructions for causing a computer to execute the above.
Citation Information
Patent Citations
Copying control method / Device for machining / Assembling device
JP1994138930A
Work simulation plotting system
JP1995281724A
Numerical control simulation device
JP2001125613A
Control device for numerically-controlled machine tool
JP2007310594A
Methods for estimating error propagation
JP2019530082A