1. Field of the Invention
The present invention relates to a method for calculating reference variables for interpolating moving single axes of a precision machine, a precision machine based on a given 3D tool path, an ultraprecision or precision machine and a component produced with this precision machine or with such a method.
In particular, the invention relates to a method for generating and processing reference variables of interpolating single axes for a production machine for path guidance of a tool in order to achieve accuracy and productivity increases over the prior art.
This invention has already been published in DE 10 2017 008 748.2 and reference is made to this publication in its full extent. The present invention describes the method described in this priority documents in a manner clearly delimited with respect to the prior art.
2. Description of the Related Art
Production machines are continuously improved in order to achieve ever higher accuracies on the components to be manufactured. In addition to increasing accuracy, improving productivity is also of interest, which can be achieved through automation and faster machining speeds.
Influences on the accuracy of a production machine are manifold. Roughly speaking, the mechanics and control technology of the production machine can be named as the main influencing factors. The accuracy of a component which is manufactured on the machine is furthermore influenced by the process. These include, among others, the tool used, the set process parameters and environmental influences.
Accuracy considerations (characterization, optimization) in the mechanics include the rigidity at the tool center point, the precision of the individual axes of the production machine and in particular a machine tool (linear, rotary), for example, with aspects of degree, concentricity, angular errors (pitching, rolling, yawing), the precision of the position of the individual axes relative to each other (e.g., squareness, parallelism) and the thermal behavior of the mechanics (thermal symmetry, displacements of the tool center point, etc.). The invention relates in particular to increases in accuracy which go beyond mechanical increases in accuracy.
In order to guide a tool as accurately as possible along a path on a production machine, in addition to the mechanical accuracy of the machine, the control, including the target data preparation and processing, is of decisive influence. Influences can lead to accuracy reduction at all points in the chain from CAD (design process, definition of part geometry) via the CAD/CAM step (tool path generation for the tool for generating the part geometry) up to the CNC (break down of the tool path into single-axis motion instructions) and the position and velocity control loop (control of individual axes). The individual steps are explained in the following.
CAD (Computer Aided Design) programs are used to design components with surfaces to be manufactured. CAD programs use different mathematical approaches to describe surfaces (1), depending on the complexity of the surface (symmetric, free-formed, continuous, structured) and the accuracy to be realized.
CAD/CAM (CAM: Computer Aided Manufacturing) programs are used to calculate machining paths for defined tools for the production of the 3D component surface (from CAD). Thus, for example, a given milling tool 4 is repeatedly guided over a material blank 6 with a respective infeed 7 between the individual grid steps via a meandering grid 5 in order to generate a surface 8 on the component. The design of this tool path has a significant influence on the accuracy of the component. Obvious parameters are the depth of the infeed 9, the distance between the path sections 10 and the programmed tool velocity 11 along the path 12. All of these parameters have a major influence on the process control during the chip removal on the machine tool.
The distance 13 between interpolation points 14 and 15 (only numbered by example) for describing the path 12 and the interpolation between the interpolation points 13, 14—e.g., linear interpolation (see
As a result of a CAD/CAM calculation step, a G-code program is generated, which describes the tool paths for a component to be manufactured as a function of the process control and the machine tool used (post-processor). Approaches are known from the prior art, which also consider machine dynamic aspects in the path generation (e.g., NC Profiler, Aixpath). However, these considerations are disassociated from the actual CNC kernel, which calculates the interpolation and velocity control as part of the NC.
The CNC (Computer Numerical Control) controller gets a G-code program as a specification. This is a description of a spatial 3D path based on any number of interpolation points (block transition points) as well as the desired speeds between them. On the basis of this, the CNC calculates the movement profiles (reference variables) of the available interpolating individual axes 20, 21 and 22, taking into account the maximum permissible axis dynamics (acceleration, jerk, etc.) (see
As a result of the targeted interpolating movement of the individual axes, the tool is to be exactly guided on the spatial 3D path (18) in the example of the polynomial interpolation shown in
In addition to the purely geometric view of the surface in the CAD or CAD/CAM process step, spatially and temporally synchronized movements of the individual axes are determined in the CNC computing cycle. Thus, for individual axes, the necessary position (s) profiles 30 (position [m]), velocity (v) profiles 31 (velocity [m/s]), acceleration (a) profiles 32 (acceleration [m/s2]) and jerk profiles (j) 33 (in [m/s3], jerk=derivative of the acceleration) over time 35 taking into account the real performance of the machine tool (e.g., maximum accelerations, jerks) is calculated (see
In the simplest sense, the individual points along the path are approached one after another in such a way that at each point a complete stop of the tool is achieved (velocity=0). A corresponding velocity profile for an interpolating axis with the respective deviation 34 of the position (position error [m]) is shown in
In order to avoid the boundary condition v=0 at interpolation points, a so-called predictive velocity control (look-ahead) is implemented in the prior art. The look-ahead function analyzes several, usually between 100-1,000 blocks, in advance, in order to be able to react to changes in direction and velocity at an early stage. The look-ahead function takes into account the dynamic properties of the machine. Thus, a complete stop at the interpolation point can be safely bypassed. The default for the calculation is to traverse the path with the smallest possible deviation from the target velocity specified in the G-code with the available individual axes without exceeding a specified geometric deviation from the set path (error). For the sake of safety, the look-ahead ensures that the machine can stop completely at any time within the look-ahead block sequence. This can lead to a reduction of the velocity, in particular at high resolution and low interpolation point distance. The programmed set path for eight blocks is shown in
It is characteristic of all state of the art CNC kernels that the path specified by a G-code (or spline) is not analyzed holistically, but executed point by point. In order to anticipate the future and to be able to plan velocities, accelerations and jerks as well as any necessary safety interventions (emergency stop), a fixed parameterized look-ahead is used, which works with a static number of blocks.
Unlike CNC or CAD/CAM steps, the CNC calculation cycles (i.e., interpolation, predictive velocity control) always run on the control computer of the individual machine in real time parallel to the machining. Thus, there are binding time limitations that limit the calculation time for a target value according to Formula 1. An increase in precision due to longer calculation times, as is possible in the CAD/CAM process step, does not work according to the current state of the art.
This results in an optimization task for the increase in accuracy during the CNC calculation cycles, which consists of the coordination of the following three variables:
For 1: the higher the number of interpolation points along the path that can be chosen, the smaller the local deviations from the ideal tool path or the ideal component geometry turn out (
For 2: In addition to the number of interpolation points themselves, the complexity of the calculation steps from point to point influences the computing time. There are serious differences in the arithmetic operations between two points depending on whether there is linear or by polynomial or spline interpolation. Thus, in polynomials of higher order, velocities, accelerations and jerks can be calculated cleanly by local derivatives, but the computation time for such operations is significantly higher in comparison to the mathematical limitation of dynamic values in non-continuous linear interpolation. This means that one can choose a mathematically better interpolation algorithm between interpolation points, which leads to better path behavior, but this leads to a reduction of the convertible interpolation points or to a significant reduction of the processing speed for a given computing power.
For 3: the performance of the computer can positively influence the compromise between the number of calculated interpolation points, depending on the complexity of the mathematical approach used. Common iPCs in machine control systems (Heidenhain, Siemens, Bosch, Fanuc) are capable of calculating approx. 500-1,000 interpolation points per second with polynomial-based interpolation. With this approach, good surface roughness values, especially in the case of micro-structured geometries, are countered by a poorer shape retention. If the mathematically simpler linear block interpolation between the interpolation points is selected, depending on the number of interpolating axes, even up to 3,000 interpolation points per second can be calculated (Beckhoff). The increase in resolution thus achieved is usually countered by a worse surface roughness resulting from noisy acceleration and jerk profiles. This noise occurs as a result of the non-continuous transitions caused by the linear interpolation at the individual interpolation points. In addition, the state-of-the-art software architecture of CNC kernels does not permit the use of multiple kernels of an iPC for the computation. The performance of the computer is correspondingly related to the efficiency of a single kernel.
The target data derived from the CNC for axis points (Formula 1, right) are then forwarded to the position and velocity controller of the individual axes. This control can be localized on the control computer (central) (e.g., Delta Tau Control, PMAC) or run decentrally on the respective servo amplifier of the single axis.
Central approaches are often followed for high-precision and ultra-precision applications (e.g., Moore Nanotech, USA). The power amplifier for the motor current is then designed as a pure special low-noise linear amplifier (see HIFI amplifier). Particularly good surface roughness can be achieved by this approach, as is required in diamond turning. In the central approach, however, the position and velocity control loops on the control computer (iPc) run at maximum clock rates of 2,000 to 3,000 Hz. The geometric accuracy of this architecture is limited due to the limited number of interpolation points, especially in micro-structured surfaces.
Alternatively, the decentralized approach can use digital power amplifiers for the drives. In addition to the usual manufacturers with clock frequencies of 8-32 kHz, there are now also high-performance systems with position and current controller clock rates of up to 100 kHz. Such controllers are operated in the corresponding servo amplifiers on FPGA (Field Programmable Gate Array). With regard to the achievable control quality (contouring error of the single axis, difference between target and actual position value), such servo amplifiers allow extreme improvements compared to central approaches (factor 50 higher number of controlled points along the tool path).
An obviously limiting factor in the context of a high interpolation point density with mathematically advantageous (polynomial-based) computational approaches, according to the current state of the art, is the CNC, which calculates on iPCs the calculation of the interpolating single axis profiles on the basis of a G-code (3D path description).
It is therefore the object of the present invention to increase the precision and the productivity of production machines by a novel type of reference variable generation with respect to the state of the art.
This object is achieved with a method having the features according to one aspect of the invention, an ultraprecision or precision machine having the features according to another aspect of the invention and a component having the features according to a further aspect of the invention. The method enables an optimal path velocity to be calculated for a predefined component quality. That is, the process can be optimized in relation to the process speed and/or the component quality. Advantageous further developments of the invention are discussed below. In particular, in certain embodiments, the streaming can be done by the control computer of the machine tool or by an external computer. Further embodiments will become apparent from the description and the figures.
Other objects and features of the invention will become apparent from the following detailed description considered in connection with the accompanying drawings. It is to be understood, however, that the drawings are designed as an illustration only and not as a definition of the limits of the invention.
In the drawings,
In the prior art DE10343809A1 describes the online readout of a table for determining set position values for n subsequent axes as a function of a reference value of a control axis. Alternatively to the set position values of the subsequent axes, functions can be called up. However, it is not described how the creation of the set position values comes about. This therefore obviously does not involve an offline calculation rule for the analytic and/or numeric synchronization of axes taking into account velocity, acceleration, and jerk profiles in order to fabricate particularly good surfaces under economic conditions, as described in the present application. The new method is explicitly aimed at avoiding such so-called look-up tables.
The descriptions from DE10343809A1 are known, inter alia, for the prior art for fast tool systems in diamond turning and can be found in the paper published in 1985 “Design and testing of a fast tool servo for diamond turning” by S. R. Patterson and E. B. Magrad. Here, in addition to the readout of a set value table as a function of a control value, interpolation routines are also described which must be performed for such velocity-related non-synchronized values. The person skilled in the art talks in this case of a master-slave control architecture. Further extensive descriptions have been published under Manfred. Weck, RWTH Aachen as part of the Forschungsgesellschaft Ul-trapräzisionstechnik.
The aim of DE10 2008 018 962 B2 is the improved synchronization of several robots in cooperation with additional equipment. In addition to pure movement sequences, further robot-relevant functions can be synchronized by means of the described approach.
This previously known patent describes a modification of this control architecture insofar as via a so-called movement driver, the interpolation routines can be predefined by externally pure set position values which have a higher geometrical quality and which have been created in advance for the movement sequences of here a press and a second robot. The values are “Cartesian/axis-specific positions in a fixed cycle”. As a result of the inadequate basic accuracy of CAD data or the inadequate accuracy in the interpretation and processing of CAD data by conventional robot software, the approach is appropriate for applications to robots.
The main idea of the method now claimed is the offline interpolation to increase the viable support point densities and optimize velocity, acceleration and jerk profiles for an improved surface quality in metal cutting machines.
The textbook WECK, Manfred, BRECHER, Christian Machine tools—Fabrication system Vol. 4 describes in detail the prior art with conventional axis interpolation inside the CNC. The introductory description of the velocity profiles provides a complete stop with renewed acceleration at setpoints. For the continuous movement along a path with the most uniform possible velocity guidance, forward-looking path guidance (look-ahead) is described which acts in the interpolation cycle and during the machining online. Using the look-ahead, taking into account static specifications of respectively maximum position (startup movement) and maximum negative (braking process) axial velocities, axial accelerations and axial jerks, the reference variable profiles of the individual axes are calculated iteratively in an optimizing manner. A typical look-ahead comprises the simultaneous optimization over about 200 points. In addition to path panning, the textbook describes the importance of look-ahead for safety-relevant aspects in the sense of a possible emergency braking when limiting situations arise.
The procedure described in the filed patent for analytic and/or numeric calculation of reference variables without static specification in advance for the actual machining (offline) is in no way mentioned.
The procedure now described is not an optimization step during the CAD/CAM routine, but rather the actual functionality of the CNC. The calculated data are preferably no longer pushed through another CNC kernel, but flow directly to the position controller of the single axis.
Using the look-ahead in a conventional CNC control, a velocity planning for the guidance of the tool is carried out in such a way a following of the path is realized as quickly as possible, taking into account the specified target speed, without violating the contour (geometry).
Acceleration and jerk are calculated as a result of the velocity planning. If there are overshoots of predefined limit values during acceleration or jerk, the velocity is reduced at the respective points until the permissible limit values are fallen below.
As a result, the limit values of velocity, acceleration or jerk are never exceeded across the entire path. However, it may be that the course of the acceleration and the jerk is very uneven or noisy. This leads to dynamic unwanted excitations in the machine, which lead to a deterioration of the surface quality.
This makes it possible, if necessary (there may be many reasons for a higher frequency excitation, e.g., surface structure, limit movement cases of the axes, chipping of special materials) for velocity, acceleration and jerk to optionally introduce new smoothing functions that not only locally control and reduce a limit value (and thereby lead to high-frequency excitation), but achieve a continuous smoothing and thus a calming of the tool guide over a sub-segment of the path. Such a smoothing function results in influencing or reducing the velocity in the respective area.
In practice, the method can be described in three steps:
1. Calculating all reference variables with temporal reference (velocity, acceleration, jerk) for the individual axes on the basis of a starting velocity.
2. Adjusting these calculated reference variables locally along the entire 3D path such that predefined maximum values for velocity, acceleration, jerk are not exceeded. 3. Smoothing the adjusted reference variable profiles for velocity, acceleration, and jerk along parts according to a given requirement, such as short machining time (smooth, maximized velocity), or good surface roughness (smoothing the acceleration profile of the axes for smooth behavior). In this case, the smoothing of any desired reference variable profile (e.g., acceleration) always has an influence on all other profiles (e.g., jerk, velocity).
This makes it possible to increase the machining velocity significantly and to increase the quality of the machining by an increased number of interpolation points per second. This is needed for precision machines and especially for high-precision machine tools to be able to produce, for example, structures for head-up displays significantly faster.
A novel feature with respect to the prior art is the possibility of making a continuous adjustment of the spindle velocity up to a maximum value with the method without there being any influence on surface quality.
Number | Date | Country | Kind |
---|---|---|---|
10 2017 008 748.2 | Sep 2017 | DE | national |
This application is a continuation of U.S. patent application Ser. No. 15/903,207 filed on Feb. 23, 2018 and Applicant claims priority under 35 U.S.C. § 119 of German Application No. 10 2017 008 748.2 filed on Sep. 19, 2017, the disclosures of which are incorporated by reference.
Number | Date | Country | |
---|---|---|---|
Parent | 15903207 | Feb 2018 | US |
Child | 16135073 | US |