Method for machining a workpiece in a machine tool with optimized machining time
10558193 · 2020-02-11
Assignee
Inventors
Cpc classification
G05B19/40937
PHYSICS
G05B2219/36068
PHYSICS
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
G05B2219/36252
PHYSICS
G05B2219/36289
PHYSICS
G05B2219/49365
PHYSICS
International classification
Abstract
To optimize an automatically optimized machining time for machining a workpiece in a machine tool, an original parts program is loaded into a machine tool controller. The machining of the workpiece using the original parts program is simulated, where a motion path generated by the original parts program in the machine tool is determined. The motion path is classified into at least one area of potential optimization in which there is no workpiece contact. The at least one area of potential optimization is assigned a tolerance space. An optimized motion path is determined within the tolerance space. The machining of the workpiece using the modified parts program is simulated. The optimized motion path is displayed and marked. Once a user has approved the modification in the parts program, machining of the workpiece takes place using the modified parts program.
Claims
1. A method for machining a workpiece in a numerically controlled machine tool with an optimized machining time, comprising: connecting the numerically controlled machine tool to a machine tool controller; loading an original parts program into the machine tool controller; determining an original motion path generated in the machine tool controller by the original parts program; simulating machining of the workpiece using the original parts program; classifying the motion path into at least one area of a potential optimization with no workpiece contact; assigning to the at least one area of the potential optimization a tolerance space having a first tolerance sub-space with a geometric extent defined by geometry values of the machine tool and the workpiece in which the motion path is unobstructed, and a second tolerance sub-space having a geometric extent defined by dynamic values of the machine tool, wherein at least one of the dynamic values comprises a machine speed; determining an optimized tolerance space as the tolerance space having the smaller geometric extent of the first and second tolerance sub-space; determining an optimized motion path within the optimized tolerance space having a movement time along the optimized motion path between entering the optimized tolerance space and exiting the optimized tolerance space that is less than a movement time along the motion path in the original parts program; simulating machining of the workpiece using a modified parts program that incorporates the optimized motion path; displaying and marking the optimized motion path; approving by a user the modified parts program; and machining of the workpiece with the optimized machining time using the modified parts program.
2. The method of claim 1, further comprising storing the modified parts program for machining at least one other workpiece.
3. The method of claim 1, further comprising: limiting the speed to a value less than a highest permissible speed of the machine tool.
4. The method of claim 1, wherein at least one of the dynamic values further comprises an acceleration and/or jerk along the motion path.
5. The method of claim 4, further comprising limiting the acceleration and/or the jerk to a value less than a highest permissible acceleration and/or jerk of the machine toot.
6. The method of claim 1, further comprising displaying the at least one area of the potential optimization together with a section of the original parts program which predefines a path movement in the at least one area of the potential optimization.
7. The method of claim 1, wherein the classifying of the at least one area of the potential optimization is limited to steps of the parts program involving rapid-traverse tool movements.
8. The method of claim 1, wherein the classifying of the at least one area of the potential optimization includes instructions for auxiliary functions in the parts program.
9. The method of claim 1, wherein the modified parts program comprises polynomial, spline or NURBS (non-uniform rational B-splines) blocks.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Other features and advantages of the present invention will be more readily apparent upon reading the following description of currently preferred exemplified embodiments of the invention with reference to the accompanying drawings, in which:
(2)
(3)
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
(4) Throughout the figures, same or corresponding elements may generally be indicated by same reference numerals. These depicted embodiments are to be understood as illustrative of the invention and not as limiting in any way. It should also be understood that the figures are not necessarily to scale and that the embodiments are sometimes illustrated by graphic symbols, phantom lines, diagrammatic representations and fragmentary views. In certain instances, details which are not necessary for an understanding of the present invention or which render other details difficult to perceive may have been omitted.
(5) A numerically controlled machine tool firstly includes the machine tool itself with which a workpiece is machined more or less automatically using cutting tools to produce the desired finished part.
(6) The machine tool is connected to a machine tool controller in which the specifications of the machine tool are stored. These include machine data such as general machine data, channel-specific machine data, axis-specific machine data, driving machine data, etc. and setting data which can be set by the user.
(7) The automatic machining of the workpiece is predefined by a parts program or NC program which specifies the desired shape of the workpiece to be produced and the technology to be used.
(8) The core function of the machine tool controller is to generate setpoint values or reference variables for the individual movement axes of the machine tool from the specifications of the parts program, taking into account the dynamic conditions of the machine tool itself which are stored as machine data in the controller.
(9) The machine tool controller contains a movement calculation program having operations for calculating geometry elements. For machining the workpiece, the machine tool controller is given instructions by means of the parts program for calculating the geometry at interpolation points according to functions or path elements (point-to-point, straight line, circle) with information concerning axis speed and other specifications, such as the control of auxiliary functions, for example (e.g. M8 command: coolant ON), etc. The geometry commands or movement commands are interpreted or processed in the controller and given to the machine tool for execution.
(10) To generate the setpoint values for a desired relative movement between tool and workpiece, a plurality of steps have to be carried out for each motion axis of the machine tool. Motion curves or motion paths are calculated from the program information. From these, reference variables for the displacement-time movement in the coordinates or axes is generated. Finally the movement is controlled in the coordinates or axes in the machine tool.
(11) In addition to the above mentioned displacement control, the core area of a machine tool controller includes other functions such as, for example, tool handling, monitoring and correction calculations, auxiliary function outputs, handling of exceptional situations and alarms, enabling and stopping of movements, override, superimposition of speeds and accelerations, superimposition of movements at movement transitions and real or even virtual movements/axes as well as simulation operating modes.
(12) For machining of the workpiece, the parts program (NC program) is transferred to the machine tool controller where it is executed. When the parts program is initiated on another occasion for identical machining, the machine tool controller normally has no prior knowledge about the earlier execution, i.e. the machine tool controller always calculates all the operations/loops, etc. in the same way as when the parts program executes them for the first time.
(13) The known functionality of the machine tool controller is now extended to optimizing the machining time of a workpiece.
(14) Turning now to the drawing and in particular to
(15) In a first process step 2, an original parts program is loaded into the machine tool controller. In a simulation step 4, machining of the workplace using the parts program is simulated taking machine-specific date 6 of the machine tool into account. In the simulation step 4, no actions such as e.g. movements or tool changes, etc. take place in the machine tool. However, the simulation of the parts program on the machine tool controller takes place under relevant actual conditions of the given machine tool.
(16) The result of the simulation step 4 is a motion path 8 in the machine tool specifying at least the location s(t) of a tool or toolholder at each point in time t.
(17) In a subsequent analysis step 10, the motion path 8 is classified into areas in which the parts program may be modified, and into areas in which it must remain unchanged. In the first exemplary embodiment, the areas of the motion path 8 where there is no tool contact are classified as areas of potential optimization 14.
(18) In process step 16, the areas of potential optimization 14 are represented on the NC control panel graphically or in text format. In addition, the associated NC program blocks are given via the program editor.
(19) For each area of the motion path 8, the parts program block which generates that area of the motion path 8 is known in the machine tool controller. The blocks in the parts program which may be changed in order to optimize the machining time are therefore identified in the machine tool controller.
(20) In process step 18, the at least one area of potential optimization 14 is linked to a tolerance space 20 orin other wordsthe area of potential optimization 14 is assigned a tolerance space 20. The tolerance space 20 specifies a spatial region around the areas of potential optimization 14 of the motion path 8 in which the course of the motion path can be freely determined. The method for optimizing the machining time can be applied if at least one area of potential optimization 14 exists. Complex workpiece machining processes have a plurality of areas of potential optimization 14. The individual optimization areas 14 are in this case separated from one another by movements involving workpiece contact.
(21) The tolerance space 20 is created from a first tolerance sub-space 20.1 which is predefined by geometry values of the machine tool. The tolerance sub-space 20.1 is typically defined by allowing the retraction space in which the transfer movements take place, i.e. movements without workpiece contact, to be farther from the workpiece in order to obtain a larger manipulation range. For example, the first tolerance sub-space 20.1 can be defined by a space which has a particular minimum distance from the contour of the workpiece and which extends away from the contour of the workpiece. The tolerance sub-space 20.1 can also be defined as a tolerance tube around the motion path 8. In principle, separate limits for the tolerance sub-space 20.1 can be set for each axis, so that, for example, the motion path can deviate from the motion path 8 according to the original parts program by 5 mm in the x-direction and by 20 mm in the y-direction. These numerical values are obviously merely by way of example.
(22) A second tolerance sub-space 20.2 is calculated for each axis on the basis of dynamics data of the controlled machine tool, e.g. maximum acceleration and maximum speed for each axis. This second tolerance sub-space 20.2 created from the dynamics data of the machine tool is determined by the distance required by an axis at maximum acceleration to achieve the maximum speed. The minimum of the tolerances from the first tolerance sub-space 20.1 and the second tolerance sub-space 20.2 is then found. The result is the (resulting) tolerance space 20.
(23) In a next process step 21, optimization of the machining time takes place. Here an optimized motion path is determined which allows the tool or toolholder to be moved in a shortest possible time. The optimization 21 takes place taking into account the spatial conditions or the geometry in which the tool or toolholder can move, and the dynamics of the actual machine tool as predefined by the first and/or second tolerance sub-space 20.1/20.2.
(24) In process step 21, an optimum smoothing length in the motion path is first determined for optimization. For smoothing, individual positions predefined by the NC program are approached only approximately and the movement is not decelerated at these approximately approached positions. In the tolerance space 20, motion control is produced which utilizes the tolerances. It should be noted that the movement does not work and/or smooth individual corners in the motion path 8, but the movement is generated freely and optimally within the tolerance space 20. If the tolerance space 20 is defined by the second tolerance sub-space 20.2, motion control is optimum in respect of machining time, as the movements of the axis can be overlayed with maximum dynamics. If a number of tolerances in the tolerance space 20 are determined from the first tolerance sub-space 20.1, motion control is optimum subject to the secondary condition that geometric boundary conditions must be met.
(25) As already described above, the first tolerance sub-space 20.1 has been predefined in advance by the user, either via a global tolerance or via different axis tolerances or via the geometric space in the machine. The optimization 21 therefore attempts to maintain both the minimum of the first tolerance sub-space 20.1 and the minimum of the second tolerance sub-space 20.2.
(26) The motion path changes are incorporated in the parts program by corresponding modifications. For example, the modification can consist of automatically changing particular geometry elements in the corresponding blocks in the parts program.
(27) In general, the changed blocks are replaced by polynomial, spline or so-called NURBS blocks (NURBS=non-uniform rational B-splines). This results in a geometrically described parts program which can be run on this type of machine in a time-optimized manner. Blocks which must not be changed can be marked in the parts program using the G9 command from the G-code, for example.
(28) Using the modified parts program 22, in a subsequent simulation (process step 24) the motion paths modified according to the optimization 21 are simulated in the machine tool. In process step 26, the changed areas in the motion paths are shown marked on the NC control panel.
(29) Following approval 28 by the machine operator, the actual machining of the workpiece using the machining-time-optimized parts program takes place in process step 30. In addition, in process step 32, the machining-time-optimized parts program is stored in the machine tool controller for machining further similar workpieces.
(30) To reduce the work involved in determining the optimization areas, the above stated criteria can be applied only to areas involving parts program steps with which rapid-traverse tool movements are predefined.
(31) The block diagram in
(32) Also in the case of the second variant, in process step 2 an original parts program for machining a workpiece in a numerically controlled machine tool is loaded into the machine tool controller. In process step 4, machining of the workpiece using the original parts program is simulated. At each point in time t, a motion path 8 is determined which, in addition to the distance s(t), also gives at least the speed v(t). In addition, at each point time t, the acceleration a(t) and/or the jerk r(t) can also be determined.
(33) Only the areas of the motion path 8 where there is no workpiece contact may be changed. The areas without workpiece contact are once again generally areas of potential optimization. In the second variant, in process step 10A, motion path areas in which the actual speed v(t) is less than the maximum possible machine speed are identified for classification. In addition, areas having high acceleration values a(t) are identified. High acceleration values mean sudden speed changes. In particular, strong deceleration immediately followed by strong acceleration indicates optimization potential. Jerks r(t) along the motion path can also be evaluated. In process step 10A, the motion dynamics are therefore analyzed. The areas of the motion path in which overshooting or undershooting of limit values is analyzed are classified or identified as areas of potential optimization. The limit values which determine the area of potential optimization in the event of an overshoot or undershoot can be predefined by a machine operator or even by the parts program in a process step 12. In this way at least one area of potential optimization 14 is identified.
(34) The subsequent process steps correspond to the already described process steps of the first variant. In a process step 18, the area or areas of potential optimization 14 are linked to a tolerance space 20. In process step 21, the time-optimized motion path is determined using the tolerance space 20. The subsequent process steps 22, 24, 26, 28, 30 are run through sequentially in a similar manner to the first variant.
(35) In general, after optimization, the motion path 8 becomes rounder in the area of potential optimization 14. For example, the originally e.g. angular course of the motion path is modified by arcs or spline functions. This produces smaller speed changes while simultaneously reducing the throughput time for the motion path in this area. Only the passage points of the motion path 8 to the tolerance space 20 are fixed and therefore predefined as fixed points for a correspondingly optimized course of the motion path.
(36) While the invention has been illustrated and described in connection with currently preferred embodiments shown and described in detail, it is not intended to be limited to the details shown since various modifications and structural changes may be made without departing in any way from the spirit and scope of the present invention. The embodiments were chosen and described in order to explain the principles of the invention and practical application to thereby enable a person skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated.
(37) What is claimed as new and desired to be protected by Letters Patent is set forth in the appended claims and includes equivalents of the elements recited therein: