Device and method for apportioning a movement of a machine element along a drive axis of a machine tool or production machine

A device and method for apportioning a movement of a machine element driven by at least two drives for movement along a drive axis of a machine tool or production machine are described. A low-pass filter filters predetermined desired drive axis values to generate filtered desired drive axis values, with a first controller receiving the filtered desired drive axis values as control input value for controlling a first of the at least two drives. A delay unit with a constant group delay time temporally delays the desired drive axis values and generates delayed desired drive axis values, whereafter a subtracter determines a difference between the filtered desired drive axis values and the delayed desired drive axis values. A second controller receives the determined difference and provides, based on the determined difference, a second control input value for controlling a second of the at least two drives. With these features according to the invention, a movement of a machine element along a drive axis of a machine tool or production machine can be optimally apportioned between two or more drives.

CROSS-REFERENCES TO RELATED APPLICATIONS

BACKGROUND OF THE INVENTION

The present invention relates to a device and a method for apportioning a movement of a machine element, in particular of a machine element that can be moved by two or more drives along a drive axis of a machine tool or production machine.

Nothing in the following discussion of the state of the art is to be construed as an admission of prior art.

Conventional machine tools and production machines are frequently equipped with a so-called redundant kinematic drives, which use at least two separate drives to move a machine element, for example a tool clamping device of the machine or a tool, along a drive axis.

FIG. 1shows schematically a machine element driven along a single drive axis X to illustrate the principle of a redundant kinematic drive. As seen inFIG. 1, a first drive has two linear motors3and4that can guide a beam5along two vertical support columns1and2oriented parallel to the drive axis X. A second support column6is secured to the beam5and guides a second drive, for example a linear motor7, which also moves parallel to the drive axis X. The movement directions of the individual drives3,4,7are indicated by arrows. Machine elements, which in the depicted embodiments are represented by a machine clamping device8and a tool9, are attached to the drive7. It will be understood that the machine ofFIG. 1can include additional drive axes, which are not essential for an understanding of the invention and have been omitted fromFIG. 1for sake of clarity.

If the tool9is to be moved along the drive axis X to a predetermined desired position value, then a decision has to be made how to apportion the required movement among the drives3,4, and7. The first drive3,4has to move a large mass due to the size of the linear motors3and4and is therefore unable to move fast, whereas the second drive7needs to move only small masses (i.e., the machine clamping device8and the tool9) and can therefore move dynamically along the drive axis X. Accordingly, a dynamic, i.e., a high-frequency, movement of the machine element should be executed by the second drive system7, whereas a less dynamic, i.e., a low-frequency movement should be performed by the first drive3,4. It will be understood that other types of direct drives or indirect drives can also be used instead of the linear motors3,4depicted inFIG. 1.

FIG. 2shows a conventional control system for apportioning the movement of a machine port along a drive axis of a machine tool or production machine. A controller23of the machine includes a computer10that computes a number of desired drive axis values xsollfor controlling the movement of the machine element. The desired drive axis values xsollcan be determined from operating parameters set by an operator. It will be understood that the controller23can include other functions and procedures, which are not important for an understanding of the invention and have been omitted fromFIG. 2for the sake of clarity.

The so determined desired drive axis values xsollare then divided into a low-frequency component and a high frequency component, whereby the low-frequency component is determined by filtering the desired drive axis values xsollwith a low-pass filter11, generating filtered desired drive axis values xsollgat the output of the low-pass filter11, which describe the low-frequency component of the movement. The high-frequency component of the tool movement is then determined by subtracting the filtered desired drive axis values xsollgfrom the desired drive axis values xsollwith a subtracter18, generating a difference value xsollΔat the output of the subtracter18. The filtered desired drive axis values xsollgare supplied as control input variables to a first controller19, which generates output signals for controlling a converter24that supplies power to a first drive21representing the linear motors3and4shown inFIG. 1. The first drive21generates actual drive axis values xist1, which are fed back to the first controller19.

Likewise, the difference xsollΔis supplied as control input variable to a second controller20, which controls a converter25that supplies power a second drive22representing the linear motor7shown inFIG. 1. The second drive22generates actual drive axis values xist2, which are fed back to the second controller20.

The low-pass filter11depicted inFIG. 2is typically implemented in modern devices that apportion a movement between drives, as, for example, a Tschebyscheff filter, a Bessel filter, a Butterworth filter, or as an elliptical filter. These conventional low-pass filters disadvantageously do not have a constant group delay time, so that the phase response does not fall or rise linearly with the frequency.FIG. 6shows the amplification V and the non-linear phase response of an exemplary elliptical filter.

Due to the non-constant phase delay time of these filters, the filtered desired drive axis values xsollg, unlike the desired drive axis values xsoll, have different temporal delays. In conventional control systems, where the desired drive axis values xsollare not delayed before being subtracted from the filtered desired drive axis values xsollgin the subtracter18, the resulting difference xsollΔstill has a relatively large contribution from the low-frequency component of the movement. It should be noted that delaying the desired drive axis values xsollbefore subtraction would likely not be advantageous, because the temporal delays of the desired drive axis values xsollin the filter can vary.

FIG. 3shows corresponding signals for an exemplary low-frequency sinusoidal movement with a superimposed sinusoidal movement at a higher frequency. Unlike the desired drive axis values xsoll, the filtered desired drive axis values xsollginclude only low-frequency components. The difference xsollΔincludes low-frequency components of the movement in addition to the high-frequency component, which significantly increases the amplitude of the difference xsollΔ. Consequently, in practical applications, the travel range of the dynamically configured second drive has to be oversized, which increases its cost.

It would therefore be desirable to provide a device and a method for optimally apportioning the movement of a machine element that is driven by multiple drives along a drive axis of a machine tool or production machine.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, a device for apportioning a movement of a machine element driven by at least two drives for movement along a drive axis of a machine tool or production machine includes a low-pass filter that filters predetermined desired drive axis values to generate filtered desired drive axis values, a first controller receiving the filtered desired drive axis values as control input value for controlling a first of the at least two drives, and a delay unit with a constant group delay time, wherein the delay unit temporally delays the desired drive axis values to generate delayed desired drive axis values. The device further includes a subtracter that determines a difference between the filtered desired drive axis values and the delayed desired drive axis values, and a second controller that receiving the determined difference and provides, based on the determined difference, a second control input value for controlling a second of the at least two drives.

According to another aspect of the invention, a method for apportioning a movement of a machine element driven by at least two drives for movement along a drive axis of a machine tool or production machine includes the steps of filtering predetermined desired values with a low-pass filter that has a constant group delay time, and generating filtered desired drive axis values; and furthermore transmitting the filtered desired drive axis values to a first controller as a control input value for controlling a first of the at least two drives, and temporally delaying the desired drive axis values with a delay time that is identical to the group delay time. The method further includes the steps of

determining a difference between the filtered desired drive axis values and the delayed desired drive axis values, and transmitting the determined difference to a second controller as a control input value for controlling a second of the at least two drives.

Machine tools in the context of the present invention can also include, for example, uniaxial or multi-axis lathes, milling machines, as well as drilling or grinding machines. Machine tools can further include processing centers, linear and rotary transfer machines, laser machines, rolling machines and/or gear cutters. These machines have in common that the material is machined along several axes. Production machines in the context of the present invention can include textile, paper, plastic, wood, glass, ceramic or stone processing machines, as well as machines used for forming, packaging, printing, conveying, lifting, pumping, transporting. Furthermore, fans, blowers, wind turbines, lifting gear, cranes, robots, production and assembly lines are also included under the term production machines in the context of the present invention.

By dividing the programmed movement into a low-frequency component and a high frequency component, a controller for redundant kinematic drives can be implemented in a very simple manner. In addition, significant cost savings can be achieved because the travel range of the dynamic drive does not have to be oversized.

According to an advantageous embodiment of the invention, the duration of the temporal delay of the desired drive axis values xsollcan be identical to the group delay time τ, which effectively suppresses the low-frequency components of the tool movement.

According to another advantageous embodiment of the invention, the low-pass filter can be a finite impulse response filter, because the filter coefficients of such filter can be readily determined using conventional filter computation programs.

According to yet another advantageous embodiment of the invention, the device can be an integral component of a controller of the machine tool or production machine, because most conventional machine tools or production machines already include controllers, in particular numerical controllers. Advantageously, the device of the invention can be integrated in the controller in the form of software, which obviates the need to install additional hardware.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Turning now to the drawing, and in particular toFIG. 4, there is shown in form of a schematic block diagram an exemplary embodiments of a device according to the invention for apportioning a movement of a machine element along a drive axis of a machine tool or production machine. Unlike the prior art device depicted inFIG. 2which has a conventional the low-pass filter11, the device according to the invention includes a low-pass filter30with a constant group delay time and an additional time delay unit12. In all other aspects, the components depicted inFIG. 4are identical to the components ofFIG. 2and operate in the same manner, so that for a detailed description of these components, reference is made to the description ofFIG. 2.

The group delay time for the low-pass filter30is:τ⁡(ω)=ⅆφⅆω=constant(1)
whereinφ: phase,ω: angular frequency (ω=2π*f),f: frequency.

A low-pass filter with a constant group delay time can be implemented, for example, as a so-called Finite Impulse Response Filter. The desired drive axis values xsollare filtered by a Finite Impulse Response Filter according to the following relationship:
xsollg(n)=a1·xsoll(n)+a2·xsoll(n−1)+a3·xsoll(n−2) . . . +aN·xsoll(n−N)  (2)
whereinn: index of the sample value,N: order of the filter,a1. . . aN: filter coefficients.

The frequency response is determined by the order N of the filter and by the coefficients a1. . . aN. A Finite Impulse Response Filter of this type has a constant group delay time ofτ⁡(ω)=N·T2(3)
over the entire frequency range, wherein T is the sampling time for the discrete desired drive axis values xsoll. Each frequency experiences the same delay time in the filter of the invention, which is important for the present invention since machine element movements typically include a mix of frequencies.

The high-frequency component of the movement is determined according to the invention by delaying the desired drive axis values xsollwith a delay unit12, thereby generating at the output of the delay unit12delayed desired drive axis values xsollv. The filtered delayed desired drive axis values xsollgare subsequently subtracted from the delayed desired drive axis values xsollvin a subtracter18, which supplies at its output a difference signal xsollΔrepresenting the high-frequency component of the movement of the machine element.

The delay unit12, which has a delay time that is identical to or approximately equal to the group the day time τ, provides a temporal, frequency-independent match between the delayed desired drive axis values xsollvand the filtered delayed desired drive axis values xsollg.

FIG. 7shows the magnitude of the frequency response V and the phase response of an exemplary discrete Finite Impulse Response Filter with a filter order of N=40 and the following filter coefficients:a1=0.00348930500945a2=0.00376099295965a3=0.00452892751529a4=0.00578316044301a5=0.00750053605294a6=0.00964517847694a7=0.01216933655896a8=0.01501456554826a9=0.01811321493599a10=0.02139018275496a11=0.02476488874243a12=0.02815341218819a13=0.03147073525612a14=0.03463302923279a15=0.03755991962809a16=0.0401766638225a17=0.04241619761799a18=0.04422093935736a19=0.04554438928788a20=0.04635238984863a21=0.04662406440566a22=0.04635238984863a23=0.04554438928788a24=0.04422093935736a25=0.04241619761799a26=0.04017666638225a27=0.03755991962809a28=0.03463302923279a29=0.03147073525612a30=0.02815341218819a31=0.02476488874243a32=0.02139018275496a33=0.01811321493599a34=0.01501456554826a35=0.01216933655896a36=0.00964517847694a37=0.00750053605294a38=0.00578316044301a39=0.00452892751529a40=0.00376099295965a41=0.00348930500945

The filter coefficients can be easily determined from a predetermined characteristic curve of the frequency response V by using commercially available programs for filter computations, for example “MATLAB” distributed by the Company “THE MATHWORKS”. The Finite Impulse Response Filter has a linearly rising or trailing phase response due to the constant group delay time τ.

Other types of filters can be used as a low-pass filter instead of a Finite Impulse Response Filter, provided this filter has a constant group delay time τ.

FIG. 5shows the response of the system when the movement is apportioned according to the invention. As can be seen, the low-frequency and high-frequency components of the movement of the machine element are almost optimally divided, with the amplitude of the difference xsollΔinFIG. 5significantly reduced in comparison to the amplitude of the difference xsollΔobtained with the prior art system ofFIG. 3. The computation ofFIG. 5is based on a filter order of N=400 and a sampling time T of one millisecond.