NUMERICAL CONTROL DEVICE, CNC MACHINE TOOL, NUMERICAL CONTROL METHOD AND NUMERICAL CONTROL PROGRAM
Patent Information
- Application Number
- DE102018218201
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2017-10-30
- Filing Date
- 2018-10-24
- Publication Date
- 2025-04-10
- Estimated Expiration
- 2038-10-24
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND OF THE INVENTIONField of the InventionThe present invention relates to a numerical controller, a CNC machine tool, a numerical control method, and a program for numerical control.Prior ArtAccurate machining of a characteristic shape such as an edge or smooth surface is important during machining and particularly during punching. Therefore, a desired machining system needs to perform a machining process corresponding to a characteristic shape such as an edge or a smooth surface by integrating information on this characteristic shape into, for example, CL (Cutter Location) data or NC (Numerical Control) data. However, with a conventional G code in a machining program, it is difficult to determine from a tool path whether a workpiece has a smoothly curved surface or an edge.For example, Patent Documents 1 and 2 disclose machining program generators that generate a machining program in consideration of the shape of a workpiece. Patent Document 1 describes an NC data generator that generates numerical data for use in machining a shape added to a burr portion. Specifically, the NC data generator includes: an extraction device that extracts a graphic element having the burr portion from previously prepared shape data indicating a workpiece and extracts annotation data added to the burr portion in the extracted graphic element; an interpretation device that interprets a shape added to the burr portion based on the extracted annotation data; and a numerical data generation device that generates numerical data defining a tool path for the burr portion based on a result of the interpretation by the interpretation device.Patent Document 2 describes a machining control device that allows machining even by a less skilled operator and prevents repetition of similar errors. Specifically, the machining control device permits machining under an appropriate machining condition by searching for a machining case corresponding to a characteristic of a shape to be machined and setting a machining condition based on the searched machining case.Patent Document 1: JP 2001-125 618 APatent Document 2: JP 2004-284 002 ASUMMARY OF THE INVENTIONThe invention described in Patent Document 1 contemplates reading a corner R, etc., indicated as an annotation in a drawing, and adding, for example, a chamfer. Thus, Patent Document 1 does not provide performing a machining process corresponding to a characteristic shape such as an edge or a smooth surface by integrating this characteristic shape into CL data or NC data. The machining control device described in Patent Document 2 provides searching for a previous machining case corresponding to a characteristic of a shape to be machined, and setting a machining condition based on the searched machining case. Thus, Patent Document 2 does not provide performing a machining process corresponding to a characteristic shape such as an edge or a smooth surface by integrating this characteristic shape into CL data or NC data.The present invention aims to provide a numerical controller, a CNC machine tool, a numerical control method, and a numerical control program for reading information on a characteristic shape such as an edge or a smooth surface, for example, in a machining program for calculating a control command suitable for a machining process of the characteristic shape by integrating the information on the characteristic shape into the machining program. (1) A numerical controller according to the present invention is a numerical controller (for example, the numerical controller 310 described below) that controls a motor for driving at least one axis based on a machining program including information on a characteristic shape. The numerical controller includes:a characteristic shape reading unit (for example, characteristic shape reading unit 311 described later) for reading information on a characteristic shape to be machined from a machining program including information on a characteristic shape,a section setting unit (for example, the section setting unit 312) for setting one or more set sections on a tool path in accordance with the characteristic shape information; anda motion parameter changing unit (for example, motion parameter changing unit 313 described below) for changing at least one parameter used for controlling the at least one axis outside the set portion and inside the set portion.(2) In the numerical controller of (1), the parameter may include at least one of the following parameter sets (A), (B), and (C): (A) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a feed axis, (B) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a spindle, and (C) an allowable error amount between a command path and an actual path. (3) In the numerical controller of (1) or (2), the characteristic shape information may include at least one of the following information sets (a), (b), (c), and (d): (a) information on an edge position on the contour of a workpiece, (b) information on a corner to be smoothed on the contour of a workpiece, (c) information on a portion where a tool contacts an edge of a workpiece on a tool path, and (d) information on a portion where a tool path is a smooth curve on the tool path. (4) In the numerical controller of (1) to (3), the parameter may include a feed speed of a feed axis and a spindle speed, and the movement parameter changing unit may change the spindle speed in synchronization with the change in the feed speed of the feed axis. (5) In the numerical controller of (1) to (4), the machining program may include information on the geometry of a workpiece or a tool path and information on the machining content, the information being described in a format corresponding to a data model having a hierarchical structure. (6) A CNC machine tool according to the present invention (for example, the CNC machine tool 30 described below) may include the numerical controller (for example, the numerical controller 310 described below) of (1) to (5). (7) A numerical control method according to the present invention is implemented by a numerical controller that controls a motor for driving at least one axis based on a machining program including information on a characteristic shape. The numerical control method includes: reading information on a characteristic shape to be machined from a machining program including information on a characteristic shape,setting one or more set portions on a tool path in accordance with the characteristic shape information; andchanging at least one parameter used for controlling the at least one axis outside the set portion and inside the set portion.(8) A program for numerical control according to the present invention causes a computer serving as a numerical controller that controls a motor for driving at least one axis based on a machining program including information on a characteristic shape to perform:a process for reading information on a characteristic shape to be processed from a machining program including information on a characteristic shape,a process for setting one or more set portions on a tool path in accordance with the characteristic shape information; anda process for changing at least one parameter used for controlling the at least one axis outside the set portion and inside the set portion.The present invention may provide: a numerical controller, a CNC machine tool, a numerical control method, and a computer readable information storage medium for reading information on a characteristic shape such as an edge or a smooth surface, for example, in a machining program for calculating a control command suitable for a machining process of the characteristic shape by integrating the information on the characteristic shape into the machining program.BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 is a block diagram showing an exemplary configuration of a CNC machine tool according to an embodiment of the present invention. FIG. 2 is a block diagram showing the configuration of a computer as a numerical controller. FIG. 3 is a configuration view showing an example of a data model based on ISO 14649. FIG. 4 is an exemplary view showing an example of using information on an edge position as characteristic portion information. FIG. 5 is an explanatory view showing an example of using information on an edge portion as characteristic portion information. FIG. 6 is an explanatory view showing an example of using information on a corner to be smoothed on the contour of a machining surface as characteristic portion information. FIG. 7 is an explanatory view showing an example of using information on a smoothing section as characteristic section information. FIG. 8 shows characteristics of a relationship between a command speed and an actual speed determined by changing a feed speed. FIG. 9 shows a path radius r and a path error Δr. Fig. 10 shows the density of cutting tracks at a constant feed speed and a constant spindle speed. Fig. 11 shows the density of cutting tracks at a lower feed speed and a constant spindle speed. FIG. 12 shows the density of cutting tracks with changes in feed speed and spindle speed. FIG. 13 is a flowchart showing the movement of the numerical controller.DETAILED DESCRIPTION OF THE INVENTIONHereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing an exemplary configuration of a CNC machine tool according to an embodiment of the present invention. As shown in FIG. 1, a computerized numerical control (CNC) machine tool 30 includes a numerical controller 310, a servo controller 320, a spindle motor 330, and a feed axis motor 340.The CNC machine tool 30 is, for example, a 3-axis machine tool. In FIG. 1, only the spindle motor 330 and the feed axis motor 340 are shown as units of the 3-axis tool machine for machining. The spindle motor 330 rotates a tool such as a ball mill. The feed axis motor 340 includes three motors: an X-axis direction motor, a Y-axis direction motor, and a Z-axis direction motor. The X-axis direction motor and the Y-axis direction motor linearly move a table in the X-axis direction and the Y-axis direction, for example, by a ball screw, respectively, and a substrate for forming a workpiece is placed on the table. The motor for the Z-axis direction linearly moves the tool or the table in the Z-axis direction. However, the 3-axis machine tool is not limited to the configuration described above. The 3-axis machine tool may be configured to move the table linearly in the X-axis direction, the Y-axis direction, and the Z-axis direction while the tool is fixed, or may be configured to move the tool linearly in the X-axis direction, the Y-axis direction, and the Z-axis direction while the table is fixed. The CNC machine tool 30 is not limited to a 3-axis machine tool, and may also be, for example, a 5-axis machine tool.The numerical controller 310 includes a characteristic shape reading unit 311, a section setting unit 312, a motion parameter changing unit 313, and a command output unit 314. The configuration and the movement of the numerical controller 310 will be described in detail later.A machining program for input to the numerical controller 310 is generated by, for example, a CAM device 20 using CAM software based on a shape of a workpiece generated by a CAD device 10. The CAM device 20 sets the movement of a tool or a machine tool such that a geometry is obtained based on CAD data, converts the set movement to CL (cutter location) data, and generates a machining program based on the resultant CL data. The CAD device 10 and the CAM device 20 can be integrated and configured in a computer. The corresponding configurations of the CAD device 10 and the CAM device 20 are well known to those skilled in the art and will therefore not be described in greater detail herein.A spindle motor servo control unit 321 controls the spindle motor 330 based on a control command from the command output unit 314. Three feed axis motor servo control units 322 for the X axis, the Y axis, and the Z axis control respective ones of the feed axis motors 340 for the X axis, the Y axis, and the Z axis based on control commands from the command output unit 314. The spindle motor servo control unit 321 and the three feed axis motor servo control units 322 each include a position control unit and a speed control unit for forming a position control loop and a speed control loop, a motor operational amplifier for operating a spindle motor or a feed axis motor based on a torque command value, an operation panel for accepting an operation from a user, etc.The spindle motor servo control unit 321 calculates a repulsion compensation value using a position feedback signal from a position detector such as an encoder connected to the spindle motor 330 and a position command output from the numerical controller 310, and compensates the position command. The three feed axis motor servo control units 322 each calculate a repulsion compensation value using a position feedback signal from a position detector such as an encoder coupled to a corresponding one of the three feed axis motors 340 and a position command output from the numerical controller 310, and compensates the position command. The internal configuration of the spindle motor servo control unit 321 and the three feed axis motor servo control units 322 are well known to those skilled in the art and therefore will not be described in greater detail here and are also not shown in the drawings.The above-mentioned CNC machine tool may include the CAD device 10 or the CAM device 20. The numerical controller 310 may include the servo controller 320.< Controller 310>An example of the configuration of the numerical controller 310 will be described below. FIG. 2 shows the hardware configuration of the numerical controller 310. As shown in FIG. 2, a computer 300 constituting the numerical controller 310 includes at least a CPU 301, an input / output unit 302, a first storage unit 303, a second storage unit 304, and a display unit 305. The CPU 301, the input / output unit 302, the first storage unit 303, the second storage unit 304, and the display unit 305 are connected to each other via a bus.The CPU 301 is configured using, for example, a microprocessor including a CPU, a RAM, a ROM, an I / O unit, etc. The CPU 301 executes a program read out from the first storage unit 303, such as a hard disk drive or a ROM. For execution of the program, the CPU 301 receives a machining program via, for example, the input / output unit 302, reads information from the first storage unit 303 or the second storage unit 304, such as a RAM, and writes information resulting from the operation into the first storage unit 303 or the second storage unit 304. The CPU 301 sends and receives signals to and from the display unit 305 and the input / output unit 302, and displays the contents of the processing on the display unit 305.The CPU 301 executes programs constituting numerical control software (these programs are also collectively referred to as "numerical control application"), thereby causing the computer 300 to function as the numerical controller 310. Specifically, as shown in FIG. 1, the CPU 301 causes the computer 300 to function as the numerical controller 310 including the characteristic shape reading unit 311, the section setting unit 312, the motion parameter changing unit 313, and the command output unit 314. The CPU 301 executes a program for causing the computer 300 to follow predetermined procedures (hereinafter also collectively referred to as "numerical control procedure"). A function belonging to the CPU 301 will be described below from the perspective of the numerical controller 310. A function belonging to the CPU 301 will not be described here from the perspective of the numerical control procedure (method) to be followed by the numerical controller 310, because it is easy to replace "unit" with "procedure". Before describing the individual functional units of the numerical controller 310, a machining program for input to the numerical controller 310 will be described first.< Program>In one case, a machining program to be input to the numerical controller 310 is provided with the shape of a machining surface. In another case, a machining program to be input to the numerical controller 310 is provided with a tool path resulting from the setting of a tool shape corresponding to the shape of a machining surface. When a machining program is provided with the shape of a machining surface, the numerical controller 310 generates a tool path by tool shape compensation. When a machining program is provided with the shape of a machining surface, the machining program includes the following pieces of information of information Inf1A to Inf5A:(Inf1A) Information on the shape of a machining surface,(Inf2A) information on a characteristic shape on a machining surface,(Inf3A) information on a tool used for machining,(Inf4A) information on a machining condition, and(Inf5A) Information on the order of processing.When a machining program is provided with a tool path resulting from the setting of a tool shape corresponding to the shape of a machining surface, the machining program includes the following pieces of information Inf1B to Inf5B:(Inf1B) information on a tool path,(Inf2B) information on a characteristic shape of a tool path,(Inf3B) information on a tool used for machining,(Inf4B) information on a machining condition, and(Inf5B) Information on the order of processing.The information Inf1A (=form information on the shape of a machining surface) includes, for example, information on the contour shape of a workpiece. The information Inf2A (=displays of a characteristic shape on a machining surface) includes characteristic point information that describes a characteristic of a point constituting the shape of a machining surface. The characteristic point information includes, for example, information on an edge position on the contour of a workpiece or information on a corner to be smoothed on the contour of a workpiece. The information on the corner to be smoothed is, for example, a start point and an end point of a smoothing portion, the position of the corner, or the angle of the corner on the contour of the workpiece. The information Inf3A (= information on a tool used for machining) includes, for example, information on the type, dimensions, etc. of a tool. The information Inf 4A (= information on a machining condition) includes, for example, information on the feed speed on a machining surface, the spindle speed on the machining surface, or the use of a cutting fluid. The information Inf5A (= information on the order of processing) includes information on the order in which the processing steps are performed, and so on.The information Inf1B (= information on a tool path) includes, for example, information on a tool path, etc. resulting from the setting of a tool shape corresponding to the contour shape of a workpiece. The information Inf2B (=displays on a characteristic shape on a tool path) includes characteristic portion information that describes a characteristic in a specific portion on a tool path. The characteristic portion information includes, for example, information on an edge portion in which a tool contacts an edge of a workpiece on a tool path or information on a smoothing portion in which a tool path is a smooth curve on the tool path. The information Inf3B (= information on a tool used for machining) includes, for example, information on the type, dimensions, etc. of a tool. The information Inf4B (= information on a machining condition) includes information on the feed speed on a tool path, the spindle speed on the tool path, or the use of a cutting fluid. The information Inf 5B (=operation order information) includes operation order information in which the processing steps are performed, etc. The information Inf 2A, the information Inf 4A, the information Inf 2B, and the information Inf 4B are particularly important for the processing by the numerical controller 310.A data model for the machining program including the above-mentioned pieces of information has a hierarchical structure such as ISO 14649. However, the structure is not limited to ISO 14649 as long as the hierarchical structure of the data model for the machining program has a format with which the required information can be appropriately described.FIG. 3 is a configuration view showing the hierarchical structure of a data model based on ISO 14649. The information Inf2A (=identifies about a characteristic shape on a machining surface) and the information Inf2B (=identifies about a characteristic shape on a tool path) are not included in the hierarchical structure of the data model based on ISO 14649. Therefore, the information Inf2A (= information on a characteristic shape on a machining surface) can be set as, for example, "geometry" (or as structure data subordinate to "geometry") in this hierarchical structure of the data model. Further, the Inf2B (= information on a characteristic shape on a tool path) may be preliminarily set as a "characteristic shape" corresponding to structure data subordinate to "tool path" in this hierarchical structure of the data model.With reference to the hierarchical structure of the data model of FIG. 5, the information Inf1A (= information on the shape of a machining surface) may be described in "geometry", and the information Inf1B (= information on a tool path) may be described in "tool path". The information Inf 2A (=identifies about a characteristic shape on a machining surface) or the information Inf 2B (=identifies about a characteristic shape on a tool path) may be described in "characteristic shape", the information Inf 3A or the information Inf 3B (=identifies about a tool used for machining) may be described in "used tool", the information Inf 4A or the information Inf 4B (=identifies about a machining condition) may be described in "machining condition", and the information Inf 5A or the information Inf 5B (=identifies about the order of machining) may be described in "step list". In this way, the machining program including the pieces of information from the information Inf1A to Inf5A or the pieces of information from the information Inf1B to Inf5B can be described as information having a structure defined based on the data model. For example, the pieces of information from the information Inf1A to the information Inf5A or the pieces of information from the information Inf1B to the information Inf5B may be inserted into the machining program as comments in the form of information in a tagged text (such as XML).That is, the information in the machining program for input to the numerical controller 310 is as described above.The functional units of the numerical controller 310 will be described below.The characteristic shape reading unit 311 reads out a machining program generated by the CAM device 20, for example, and includes pieces of information from the information Inf 1A to the information Inf 5A or pieces of information from the information Inf 1B to the information Inf 5B. Subsequently, the characteristic shape reading unit 311 acquires all information Inf 2A (=displays of a characteristic shape on a machining surface) or all information Inf 2B (=displays of a characteristic shape on a tool path) in the machining program in each machining step.For example, when the characteristic shape reading unit 311 determines that the information Inf2 An edge position is on a geometry, the characteristic shape reading unit 311 obtains this edge position, obtains the contour shape of a machining surface from the information Inf1A, and obtains information on a machining condition from the information Inf4A, such as a feed speed for cutting the machining surface or a spindle speed for cutting the machining surface. For example, when the characteristic shape reading unit 311 determines that the information Inf2 A corner to be smoothed is on a geometry, the characteristic shape reading unit 311 obtains information about the corner to be smoothed, obtains the contour shape of a machining surface from the information Inf1A, and obtains information about a machining condition from the information Inf4A, such as the feed speed for cutting the machining surface or the spindle speed for cutting the machining surface.For example, when the characteristic shape reading unit 311 determines that the information Inf2Bis an edge portion on a tool path, the characteristic shape reading unit 311 obtains information on the edge portion (a start point of the edge portion and an end point of the edge portion, etc.). Further, the characteristic shape reading unit 311 obtains a tool path from the information Inf 1B resulting from the setting of a tool shape corresponding to the shape of a machining surface, and obtains information on a machining condition from the information Inf 4B such as the feed speed on a tool path including this edge portion or the spindle speed on the tool path. For example, when the characteristic shape reading unit 311 determines that the information Inf2B a smoothing portion in which a tool path is a smooth curve is on the tool path, the characteristic shape reading unit 311 obtains information from the information Inf1B a tool path provided as a continuous straight line in this smoothing portion and information from the information Inf2B a smoothing portion on the tool path in which a shape is smoothed. The smoothing portion information may include information on a start point and an end point of the smoothing portion, and a change rate of the tool direction (the degree to which the moving direction of a tool changes during a movement of the tool over a constant distance) allowable in the smoothing portion. Further, the characteristic shape reading unit 311 acquires information on a machining condition from the information Inf 4B such as the feed speed on a tool path including this smoothing portion or the spindle speed on the tool path.The section setting unit 312 sets a constant section on a tool path based on the information Inf2A (=identifies about a characteristic shape on a machining surface) or the information Inf2B (=identifies about a characteristic shape on a tool path) acquired by the characteristic shape reading unit 311.Specifically, when the information Inf 2A acquired by the characteristic shape reading unit 311 is to an edge position on a geometry, the section setting unit 312 generates a tool path by a tool offset based on the shape of a machining surface in the information Inf 1A and the tool information in the information Inf 3A. During the generation of the tool path, the portion setting unit 312 sets a portion where a tool contacts an edge position as an edge portion. The tool information may be registered in advance at the numerical controller 310. The section setting unit 312 automatically sets a low-speed section on the tool path including the edge section. For example, as shown in FIG. 4, the low-speed portion is set larger than the edge portion. The processing related to the setting of the low speed section will be described in detail later.When the information acquired by the characteristic shape reading unit 311 is Inf2B to an edge portion in which a tool contacts an edge of a workpiece on a tool path, the portion setting unit 312 automatically sets a low-speed portion on the tool path including the edge portion. For example, as shown in FIG. 5, a start point and an end point of the low-speed portion are set such that the low-speed portion becomes larger than the edge portion. The range of the low-speed portion may be determined in advance or may be calculated in response to a machining condition. The processing related to the setting of the low speed section will be described in detail later.When the information Inf 2A acquired by the characteristic shape reading unit 311 is to a corner to be smoothed on the contour of a machining surface, the section setting unit 312 generates a tool path by a tool offset based on the shape of a machining surface in the information Inf 1A and the tool information in the information Inf 3A. During the generation of the tool path, the section setting unit 312 sets a section including the corner as a smoothing section using information on the corner (such as the position of the corner) as shown in FIG. 6. The tool information may be registered in advance at the numerical controller 310. The processing related to the setting of the smoothing section will be described in detail later.When the section setting unit 312 recognizes that the information Inf2B acquired by the characteristic shape reading unit 311 is a smoothing section, the section setting unit 312 sets a smoothing section on a tool path based on the smoothing section information. Specifically, the section setting unit 312 sets a smoothing section on a tool path based on the given smoothing section information. The smoothing section set by the section setting unit 312 is a section set on a tool path based on the above-mentioned smoothing section information. For example, the start point and the end point of FIG. 7 match corresponding points in the smoothing section information. The section setting unit 312 generates a new tool path closest to a tool path represented by a broken line while setting a change rate of a tool direction to a value not larger than that allowed in the smoothing section. The section setting unit 312 may generate a tool path having a large continuity (generally referred to as G2 or G3 continuity) by further setting an allowable change rate of a moving direction.As described above, the section setting unit 312 sets a constant section on a tool path based on the information Inf2A (=identifies about a characteristic shape on a machining surface) or the information Inf2B (=identifies about a characteristic shape on a tool path) in a machining program (NC data). The movement parameter changing unit 313 sets a parameter to be used for controlling the movement in the constant portion on the tool path set by the portion setting unit 312, generates a part of the control data, and replaces control data input from the machining program (NC data) with the generated part. The processing related to generating a portion of the control data for use in controlling movement in a section is described in detail below.The motion parameter changing unit 313 may set a parameter that belongs to the control data and is to be used for controlling motion outside a set portion, generate a part of the control data including the parameter, and replace the control data input from the machining program (NC data) with the generated part. For example, when the set portion is an edge portion, the motion parameter changing unit 313 calculates a speed command in the control data for setting a feed speed again to a feed speed F 1 outside the portion after passing through a low-speed portion. For example, when the set portion is a smoothing portion, the motion parameter changing unit 313 may calculate a speed command in the control data for switching to a first machining mode after passing through the smoothing portion. The parameters for an area inside a constant section and an area outside the constant section generated by the motion parameter changing unit 313 are parameters in one, two or more of the following parameter sets (1), (2), and (3): (1) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a feed axis, (2) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a spindle, and (3) an allowable error amount between a command path and an actual path. The control data thus generated is output to the command output unit 314.The command output unit 314 outputs a control command based on the control data generated by the motion parameter changing unit 313 to the spindle motor servo control unit 321 in the servo controller 320 and the three feed axis motor servo control units 322 for the X axis, the Y axis, and the Z axis in the servo controller 320. In this way, the servo controller 320 can perform machining processing in, for example, an edge portion and / or a smoothing portion.[First Example of Using Characteristic Point Information: Information on Edge Position]Hereinafter, an example of characteristic point information will be explained by describing processing related to an edge position by the section setting unit 312 in detail with reference to FIG. 4. In this example of use, a machining program includes the information Inf 1A describing the contour shape (geometry) of a machining surface, the information Inf 2A describing information on an edge position on a contour, and the information Inf 4A describing information on machining conditions such as the feed speed on a tool path for cutting the machining surface, the spindle speed on the tool path, and so on. The section setting unit 312 generates a tool path by a tool offset based on the contour shape of the machining surface and tool information. During the generation of the tool path, the portion setting unit 312 sets a portion where a tool contacts an edge position as an edge portion. The tool information may be registered in advance at the numerical controller 310 or may be incorporated in the machining program. The section setting unit 312 automatically sets a low-speed section on the tool path including the edge section. As shown in FIG. 4, the section setting unit 312 determines the low-speed section larger than the edge section. The processing for setting the low speed section and the processing by the movement parameter changing unit 313 are the same as those in a second use example described below, and will be described in detail for the second use example.[Second Example of Using Characteristic Portion Information: Information on Edge Portion]Hereinafter, an example of the characteristic portion information will be explained by describing processing related to an edge portion by the portion setting unit 312 and the movement parameter changing unit 313 in detail with reference to FIG. 5. In this use example, the machining program includes the information Inf 2B describing information on an edge portion and the information Inf 4B describing information on machining conditions such as the feed speed on a tool path having the edge portion included therein and the spindle speed on the tool path, etc.The section setting unit 312 automatically sets a low-speed section on the tool path including the edge section. As shown in FIG. 5, the section setting unit 312 sets a start point and an end point of the low-speed section such that the low-speed section becomes larger than the edge section. When the machining program includes the information Inf2B describing information on an edge portion, a range of a low-speed portion may be previously determined.In the following, it will be explained why the low speed portion is set larger than the edge portion. In general, in a machine tool, when a speed command changes steeply, a load is applied to a motor, which may cause the motor to rattle. Therefore, in this machine tool, a change in a speed command in a machining program is controlled such that an actual feed speed changes smoother (smoother) than a speed in the speed command. That is, the speed command is calculated such that a feed speed F 2 suitable for edge processing in the edge portion is set by starting a speed reduction just before the edge portion to finish deceleration before entering the edge portion and starting acceleration after passing through the edge portion.FIG. 8 shows exemplary characteristics of a relationship determined by changing a command speed in a speed command between a change in the speed command described in a machining program and an actually controlled speed change so as to become smoother (smoother) than the change in the command speed in a machine tool. A solid line shows the change in the command speed described in the machining program (NC data). A broken line shows the actual speed change controlled to be smoother (smoother) than the change in the command speed in the machine tool. In this example, it is assumed that T is a time constant, and an actual speed of a tool at a given time t corresponds to the average of a command speed at the time (t-time constant T) and a command speed at the time (t+time constant T) as shown in FIG. 8. Thus, by giving a command immediately before a start point of an edge portion to set a feed speed in the edge portion to F 2, the tool actually enters the edge portion while deceleration of the tool is not yet completed. And as for the end point of the edge portion, a command is given such that an acceleration at the end point of the edge portion actually accelerates the tool before the tool exits the edge portion. In order to avoid the occurrence of such a situation, the section setting unit 312 sets a point before the start point of the edge section, which is away from the start point of the edge section by a distance corresponding to the time constant T (almost F 2×T), as a start point of a low-speed section. Further, the section setting unit 312 sets a point before the end point of the edge section, which is away from the end point of the edge section by F 2×T, as an end point of the low-speed section. In order to calculate the feed speed F 2 in the edge portion on a demand basis, the portion setting unit 312 calculates a value F 2×T also on a demand basis. When the feed speed F 2 in the edge portion is a predetermined value, F 2×T may be previously provided in the information Inf 4A or Inf 4B (= information on a machining condition).The motion parameter changing unit 313 compares the commanded feed speed F 1 on a tool path with the appropriate feed speed F 2 for edge machining. When the feed speed F 1 is higher than the feed speed F 2, the movement parameter changing unit 313 describes a speed command in control data such that a feed speed F 3 in the low speed section is not greater than F 2. The feed speed F 2 may have a predetermined value or a value calculated based on a tool diameter or an edge angle.FIG. 9 shows a path radius r and a path error Δr. The path radius r coincides with a tool diameter. The path error (a difference between a command path and an actual path) Δr is the magnitude of an edge sag allowed for an edge. An acceleration / deceleration time constant T of an engine is a value depending on a setting of the engine. As a curve in a tool path becomes steeper and the allowable command becomes smaller, the feed speed needs to be lower. The feed speed F 2 at which corner crossing is not larger than allowable is determined by, for example, calculating a value satisfying a relationship in Equation 1. As is apparent from Equation 1, the feed speed F2 needs to be lower with a smaller tool diameter and smaller permissible corner passes. The feed speed F 2 can be registered in advance by determining R: path radius Δr: path error T: acceleration / deceleration time constant of the machine based on an expectedly used tool having the smallest diameter and the smallest permissible corner sag during machining by a machine tool having this toolAs described above, the motion parameter changing unit 313 describes a speed command in control data to restore a feed speed to the feed speed F1after passing through a low speed section.As described above, information on an edge position on a geometry is integrated into the information Inf2A (=identical shape information on a machining surface) in a machining program for input to the numerical controller 310, or information on a characteristic shape such as an edge portion is integrated into the information Inf2B (=identical shape information on a tool path) in the machining program. Further, information on a machining condition such as a feed speed for cutting a machining surface or a spindle speed for cutting the machining surface is integrated into the information Inf4A (= information on a machining condition) in the machining program, or information on a machining condition such as a feed speed on a tool path including this edge portion or a spindle speed on the tool path is integrated into the information Inf4B (= information on a machining condition) in the machining program. In this way, the numerical controller 310 may generate control data used for performing a machining process at the above-mentioned edge position or in the above-mentioned edge portion, and may control a machine tool by following a control command based on the generated control data. This achieves machining of a shape that cannot be easily machined by a conventional G code.[Third Example of Using Characteristic Point Information: Information on a Corner to be Smoothed]Hereinafter, an example of characteristic point information will be explained by describing processing related to a corner to be smoothed by the section setting unit 312 in detail with reference to FIG. 6. In this example of use, a machining program includes the information Inf1A on a geometry, the information Inf2A on a start point and an end point of a smoothing portion, the position of a corner, the angle of the corner, etc. on the contour of a workpiece, and the information Inf4A describing information on machining conditions such as a feed speed for cutting a machining surface, a spindle speed for cutting the machining surface, etc. The section setting unit 312 generates a tool path by a tool offset based on the information Inf 1A on the geometry, the information in the information Inf 2A on the start point and the end point of the smoothing section, the corner position and the corner angle on the contour of the workpiece, and the tool information in the information Inf 3A. Then, as shown in FIG. 6, the section setting unit 312 sets a section including the corner as a smoothing section. The tool information may be registered in advance at the numerical controller 310. The processing by the movement parameter changing unit 313 to be performed after this setting of the smoothing portion on the tool path is the same as that in a fourth use example described below, and will be described in detail for the fourth use example.[Fourth Example of Using Characteristic Portion Information: Information on Smoothing Portion]An example of characteristic portion information will be explained below, and processing related to a smoothing portion by the portion setting unit 312 and the motion parameter changing unit 313 will be described in detail with reference to FIG. 7. In this example of use, a machining program includes the information Inf2B describing information on a smoothing section.The section setting unit 312 sets a smoothing section on a tool path based on given smoothing section information. As described above, the smoothing portion information is information described in a machining program, and includes information on a start point and an end point of the smoothing portion and an allowable change rate of a tool direction (an allowable change degree of a moving direction of a tool while the tool moves a constant distance) in the smoothing portion. The section setting unit 312 sets the smoothing section as a section set on a tool path based on the smoothing section information. The start point and the end point of FIG. 7 match corresponding points described in the smoothing section information. The section setting unit 312 generates a new tool path in close proximity to a tool path represented by a broken line, thereby setting a change rate of a tool direction to a value not larger than that allowed in the smoothing section. The section setting unit 312 may generate a tool path having a large continuity (generally referred to as G 2 or G 3 continuity) by further setting an allowable change rate of a moving direction.The motion parameter changing unit 313 replaces an input tool path with a tool path along which line segments in the smoothing section are smoothly connected, so that the amount of change in a motion direction for a motion distance of a tool set by the section setting unit 312 is not larger than allowable. The allowable value may be set in advance or may be described in the smoothing section information.The motion parameter changing unit 313 may increase the smoothness of a curve by setting a speed, an allowable acceleration, an allowable jerk, a time constant related to control of acceleration / deceleration, etc. in a smoothing section. Many CNC machine tools generally have a function of selecting a movement mode of a tool between a first machining mode in true correspondence with a command and a second machining mode having a priority for smoothness. A CNC machine tool can also select the first machining mode or the second machining mode in different phases depending on the degree of smoothing of a tool path. The first machining mode is a machining mode in which, when a tool path in a machining program is represented by a broken line, the tool path is smoothed and machining smoothly proceeds. The maximum allowable acceleration / deceleration of a motor is different in each of the first machining mode and the second machining mode. An engine is operated more faithfully to a command at a higher allowable acceleration / deceleration. The first machining mode or the second machining mode is generally selected before machining. Here, when information on a smoothing section is described in the information Inf2B (= information on a characteristic shape on a tool path), the information on the smoothing section may be specified, for example, such that a mode is automatically switched between inside and outside the smoothing section such that the machining proceeds outside the smoothing section in the first machining mode in faithfully correspondence with a command and the machining proceeds inside the smoothing section in the second machining mode with a priority for smoothing. In this case, as for a parameter for a machining program, a maximum allowable acceleration / deceleration for a motor needs to be switched between inside and outside the smoothing portion. The information on the smoothing section may also be specified such that the first machining mode or the second machining mode is changed in response to a degree of smoothing in the smoothing section. As described above, information on a corner to be smoothed on the contour of a workpiece is integrated into the information Inf2A (=identical shape information on a machining surface) in a machining program for input to the numerical controller 310, or smoothing portion information is integrated into the information Inf2B (=identical shape information on a tool path) in the machining program. In this manner, the numerical controller 310 can generate control data used for performing a machining process in this smoothing section, and control a machine tool by following a control command based on the generated control data. This achieves machining of a mold that cannot be easily machined by a conventional G code.[Fifth Example of Use in Control of Spindle Speed In Synchronism with Feed Speed]An example of use in controlling the spindle speed in synchronization with the feed speed will be described below. This use example can be applied to the above-described first to fourth use examples. When the movement parameter changing unit 313 changes a feed speed, the movement parameter changing unit 313 preferably changes the spindle rotation speed together with the feed speed. For example, as shown in FIG. 10, when the feed speed and the spindle speed are at constant values, cutting tracks are left with a constant density. A cutting track is understood here to mean a path of a tool blade left behind on a machining surface. On the other hand, when the feed speed becomes smaller while the spindle speed is maintained at the constant value, the density of the cutting tracks changes as shown in Fig. 11 to change the characteristics and appearance of the machining surface. Thus, for example, in order to change the feed speed to F 2 (<F 1) in preparation for a process such as a process in an edge portion along which the feed speed F 1 and the spindle speed S 1 are specified, the movement parameter changing unit 313 preferably changes the spindle rotation speed to a speed S 2 (<S 1) different from the speed S 1 where necessary. In this case, when the movement parameter changing unit 313 sets the spindle speed S 2 to satisfy S 2=S 1×(F 2 / F 1), the density of the cutting tracks can be maintained at a constant value to achieve a uniform machining area as shown in FIG. 12.The configuration of the numerical controller 310 is as described above. The movement of the numerical controller 310 will be described below. FIG. 13 is a flowchart showing the movement of the numerical controller 310.In step S 101, the characteristic shape reading unit 311 reads a machining program (NC data) including characteristic shape information generated by the CAM device 20, for example.In step S 102, the characteristic shape reading unit 311 determines whether the machining program includes characteristic shape information. For example, the characteristic shape reading unit 311 determines the presence of characteristic shape information with reference to the process path of FIG. 3. When the machining program does not contain characteristic shape information, the flow proceeds to step S 106.In step S 103, the characteristic shape reading unit 311 recognizes the characteristic shape information in the machining program. The characteristic shape information may be information on an edge position on the contour of a workpiece, information on a corner to be smoothed on the contour of a workpiece, information on an edge portion in which a tool contacts an edge of a workpiece on a tool path, or information on a smoothing portion in which a tool path is a smooth curve on the tool path. The characteristic shape reading unit 311 determines which of these pieces of information corresponds to the characteristic shape information.In step S 104, the section setting unit 312 sets a constant section on a tool path based on the characteristic shape information determined in the characteristic shape reading unit 311 in step S 103. In step S 105, the motion parameter changing unit 313 generates parameters and generates a part to be used for controlling motion inside the set portion and a part to be used for controlling motion outside the set portion. Then, the flow proceeds to step S102. The generated parameters are, for example, parameters in one, two or more of the following parameter sets (1), (2), and (3): (1) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a feed axis, (2) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a spindle, and (3) an allowable error amount between a command path and an actual path. Then, the flow proceeds to step S102. When the characteristic shape reading unit 311 determines in step S 102 that the machining program does not include characteristic shape information, the flow proceeds to step S 106.In step S 106, the command output unit 314 outputs a control command based on control data generated by the motion parameter changing unit 313 to the servo controller 320.Hereinabove, an embodiment of the present invention has been described, wherein the function of the numerical controller 310 may be fully or partially realized by software. However, the function of the numerical controller 310 may be realized by hardware or a combination of software and hardware. A realization by software is understood to mean a realization by reading and executing a program by a computer. The numerical controller 310 may be configured by, for example, hardware by configuring some or all of the characteristic shape reading unit 311, the section setting unit 312, the motion parameter changing unit 313, and the command output unit 314 of the numerical controller 310 using an integrated circuit (IC) such as a large scale integrated circuit (LSI), an application specific integrated circuit (ASIC), a gate array, or a field programmable gate array (FPGA).In a configuration of the numerical controller 310 by software, a program for numerical control describing movement such as that shown in FIG. 13 for execution by a computer serving as the numerical controller 310 of FIG. 2 is stored in the first storage unit 303, which is, for example, a hard disk drive or a ROM. The CPU stores information necessary for execution in the second storage unit 304, which is, for example, a RAM, and performs processing by following the numerical control program, to thereby realize the movement of the numerical controller 310 according to a program. The program for numerical control may be read from a computer readable information storage medium storing the program to the first storage unit 303, which is, for example, a hard disk. The computer readable information storage medium includes various types of tangible storage media. The computer readable information storage medium may be a non-transitory computer readable information storage medium. Examples of a computer readable information storage medium include a magnetic storage medium (for example, a flexible disk or a hard disk drive), a magneto-optical storage medium (for example, a magneto-optical disk), a CD-ROM, a CD-R, a CD-R / W, and a semiconductor memory (for example, a mask ROM, a programmable ROM (PROM), an erasable PROM (EPROM), a flash ROM, or a RAM).LIST OF REFERENCE NUMERALS10 CAD device 20 CAM device 30 CNC machine tool 310 numerical controller 311 characteristic shape reading unit 312 section setting unit 313 motion parameter changing unit 314 command output unit 320 servo controller 330 spindle motor 340 feed axis motor
Claims
A numerical controller (310) that controls a motor for driving at least one axis based on a machining program including information on a characteristic shape, comprising: a characteristic shape reading unit (311) for reading information on a characteristic shape to be machined from a machining program including information on a characteristic shape; a section setting unit (312) for setting one or more set sections on a tool path in accordance with the information on the characteristic shape; and a motion parameter changing unit (313) for changing at least one parameter used for controlling the at least one axis outside the set section and inside the set section, wherein the information on the characteristic form to be edited is inserted into the editing program as comments in the form of tagged text.The numerical controller according to claim 1, wherein the parameter includes at least one of the following parameter sets (A), (B), and (C): (A) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a feed axis, (B) a command speed, an allowable acceleration, an allowable jerk, and a time constant related to acceleration / deceleration control for a spindle, and (C) an allowable error amount between a command path and an actual path.The numerical controller according to claim 1 or 2, wherein the characteristic shape information includes at least one of the following information sets (a), (b), (c), and (d): (a) information on an edge position on the contour of a workpiece, (b) information on a corner to be smoothed on the contour of a workpiece, (c) information on a portion where a tool contacts an edge of a workpiece on a tool path, and (d) information on a portion where a tool path is a smooth curve on the tool path.The numerical controller according to any one of claims 1 to 3, wherein the parameter includes a feed speed of a feed axis and a spindle speed, and the movement parameter changing unit changes the spindle speed in synchronization with the change in the feed speed of the feed axis.The numerical controller according to any one of claims 1 to 4, wherein the machining program includes information on the geometry of a workpiece or a tool path and information on the machining content, the information being described in a format corresponding to a data model having a hierarchical structure.A CNC machine tool (30) including the numerical controller (310) according to any one of claims 1 to 5.A numerical control method implemented by a numerical controller that controls a motor for driving at least one axis based on a machining program including information on a characteristic shape, comprising: reading information on a characteristic shape to be machined from a machining program including information on a characteristic shape; setting one or more set portions on a tool path corresponding to the information on the characteristic shape; and changing at least one parameter used for controlling the at least one axis outside the set portion and inside the set portion, wherein the information on the characteristic shape to be machined is inserted into the machining program as comments in the form of tagged text.A program for numerical control that causes a computer serving as a numerical controller that controls a motor for driving at least one axis based on a machining program containing information on a characteristic shape to perform: a process of reading information on a characteristic shape to be processed from a machining program containing information on a characteristic shape, a process of setting one or more set portions on a tool path corresponding to the information on the characteristic shape, and a process of changing at least one parameter used for controlling the at least one axis outside the set portion and inside the set portion, wherein the information on the characteristic form to be edited is inserted into the editing program as comments in the form of tagged text.
Citation Information
Patent Citations
Methods for optimizing the productivity of a machining process on a CNC machine
DE112015004939T5
Real-time numerical control tool path adaptation using force feedback
EP2871547A1