U.S. patent application number 17/260172 was filed with the patent office on 2021-10-21 for method for ascertaining a rough trajectory from a specified contour.
This patent application is currently assigned to KEBA INDUSTRIAL AUTOMATION GERMANY GMBH. The applicant listed for this patent is KEBA INDUSTRIAL AUTOMATION GERMANY GMBH. Invention is credited to Frank Martin.
Application Number | 20210325850 17/260172 |
Document ID | / |
Family ID | 1000005727591 |
Filed Date | 2021-10-21 |
United States Patent
Application |
20210325850 |
Kind Code |
A1 |
Martin; Frank |
October 21, 2021 |
Method for ascertaining a rough trajectory from a specified
contour
Abstract
The invention relates to a method for ascertaining a rough
trajectory from a specified contour for controlling a machine tool
which has at least two mutually redundant drive devices for
carrying out superimposed movements, wherein the contour is
determined by a contour function (P.sub.j, p.sub.j) which is
defined in portions by contour nodal points P.sub.0-P.sub.n+1 and
respective contour portion functions p.sub.0-p.sub.n, wherein a
respective contour portion function p.sub.j connects two adjacent
contour nodal points P.sub.j, P.sub.j+1, wherein the rough
trajectory is determined by a rough trajectory function (Q.sub.j,
q.sub.j) which is defined in portions by rough trajectory nodal
points Q.sub.0-Q.sub.n+1 and respective rough trajectory portion
functions q.sub.0-q.sub.n, wherein a respective rough trajectory
portion function q connects two adjacent rough trajectory nodal
points Q.sub.j, Q.sub.j+1, wherein, for each contour nodal point
P.sub.j, a respective assigned rough trajectory nodal point Q.sub.j
is ascertained in such a manner that a difference in the gradients
of the two adjacent rough trajectory portion functions q.sub.j-1,
q.sub.j which contain this rough trajectory nodal point Q.sub.j is
minimal and that the distance of the contour nodal point P.sub.j
from the rough trajectory nodal point Q.sub.j satisfies a specified
distance condition.
Inventors: |
Martin; Frank; (Lahnau,
DE) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
KEBA INDUSTRIAL AUTOMATION GERMANY GMBH |
Lahnau |
|
DE |
|
|
Assignee: |
KEBA INDUSTRIAL AUTOMATION GERMANY
GMBH
Lahnau
DE
|
Family ID: |
1000005727591 |
Appl. No.: |
17/260172 |
Filed: |
June 24, 2019 |
PCT Filed: |
June 24, 2019 |
PCT NO: |
PCT/EP2019/066605 |
371 Date: |
January 13, 2021 |
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
G05B 19/4103 20130101;
G05B 2219/34098 20130101; G05B 2219/34156 20130101 |
International
Class: |
G05B 19/4103 20060101
G05B019/4103 |
Foreign Application Data
Date |
Code |
Application Number |
Jul 17, 2018 |
DE |
10 2018 117 245.1 |
Claims
1.-10. (canceled)
11. A method for controlling a machine tool having at least two
mutually redundant drive devices for carrying out superimposed
movements following a contour function, the method comprising:
determining a specified contour for controlling the machine tool by
the contour function defined in portions by contour nodal points
(P.sub.0 to P.sub.n+1) and respective contour portion functions
(p.sub.0 to p.sub.n), wherein a respective contour portion function
(p.sub.j) connects two adjacent contour nodal points (P.sub.j,
P.sub.j+1); determining a rough trajectory by a rough trajectory
function (Q.sub.j, q.sub.j) which is defined in portions by rough
trajectory nodal points (Q.sub.0 to Q.sub.n+1) and respective rough
trajectory portion functions (q.sub.0 to q.sub.n), wherein a
respective rough trajectory portion function (q.sub.j) connects two
adjacent rough trajectory nodal points (Q.sub.j, Q.sub.j+1);
ascertaining, for each contour nodal point (P.sub.j), a respective
assigned rough trajectory nodal point (Q.sub.j) such that a
difference in gradients of the two adjacent rough trajectory
portion functions (q.sub.j-1, q.sub.j) which contain this rough
trajectory nodal point (Q.sub.j) is minimal and that a distance of
the contour nodal point (P.sub.j) from the rough trajectory nodal
point (Q.sub.j) satisfies a specified distance condition; and
directing movement of one of the at least two mutually redundant
drive devices based on the respective assigned rough trajectory
nodal point (Q.sub.j).
12. The method of claim 11, wherein the specified distance
condition requires that the distance between the contour nodal
point (P.sub.j) and the assigned rough trajectory nodal point
(Q.sub.j) is less than or equal to a predetermined limit value
(.DELTA.).
13. The method of claim 12, wherein the predetermined limit value
(.DELTA.) corresponds to a respective maximum displacement of one
of the drive devices.
14. The method of claim 11, wherein the contour function (P.sub.j,
p.sub.j) is defined in a plurality of dimensions and in that a
distance condition, according to which the distance between the
contour nodal point (P.sub.j) and the assigned rough trajectory
nodal point (Q.sub.j) is less than or equal to a predetermined
limit value (.DELTA.), requires that in each dimension the distance
is less than or equal to a predetermined limit value (.DELTA.).
15. The method of claim 14, wherein the predetermined limit value
(.DELTA.) of each dimension is equal for all dimensions.
16. The method of claim 11, wherein ascertaining the respective
assigned rough trajectory nodal point (Q.sub.j) for each contour
nodal point (P.sub.j) requires that the rough trajectory nodal
points (Q.sub.j) for which a sum of all squared differences between
the gradients of two in each case adjacent rough trajectory portion
functions (q.sub.j-1, q.sub.j) of the rough trajectory function
(Q.sub.j, q.sub.j) is minimal are ascertained.
17. The method of claim 16, wherein the contour function (P.sub.j,
p.sub.j) is defined in a plurality of dimensions and in that
ascertaining the rough trajectory nodal points (Q.sub.j) for which
the sum of all the squared differences between the gradients of two
in each case adjacent rough trajectory portion functions
(q.sub.j-1, q.sub.j) of the rough trajectory function (Q.sub.j,
q.sub.j) is minimal requires that coordinates of the rough
trajectory nodal points (Q.sub.j) are separately ascertained in
each dimension.
18. The method of claim 11, wherein the rough trajectory portion
functions (q.sub.0 to q.sub.n) are formed by respective linear
functions.
19. The method of claim 11, wherein the rough trajectory portion
functions (q.sub.0 to q.sub.n) are generated via a spline
interpolation of the rough trajectory nodal points (Q.sub.0 to
Q.sub.n+1).
20. The method of claim 11, wherein a first rough trajectory
portion of rough trajectory nodal points (Q.sub.0 to Q.sub.n0+1)
and respective rough trajectory portion functions (q.sub.0 to
q.sub.n0) is determined in a first iteration with regard to a
distance condition (2.DELTA.) from the starting point P.sub.0 to
P.sub.n0+1, with n0<n and k=0, and in subsequent iterations with
k>0 further rough trajectory portions of rough trajectory nodal
points (Q.sub.k to Q.sub.nk+1) and respective rough trajectory
portion functions (q.sub.k to q.sub.nk) with nk=k+1, . . . , n and
k<n are determined with regard to the distance condition
(2.DELTA.) between contour nodal points P.sub.k to P.sub.nk+1,
until nk=n, wherein at least the rough trajectory point Q.sub.k,
preferably at least the two rough trajectory points Q.sub.k-1,
Q.sub.k, are set as a starting point for a subsequent
iteration.
21. The method of claim 20, wherein, for the iterative calculation
of subsequent rough trajectory portions of the further rough
trajectory nodal points (Q.sub.k to Q.sub.nk+1) and respective
rough trajectory portion functions (q.sub.k to q.sub.nk), an index
k is shifted by 1 and thus k:=k+1 applies for a subsequent
iteration.
22. A system for controlling a machine tool, the system comprising:
the machine tool comprising at least two mutually redundant drive
devices for carrying out superimposed movements following a contour
curve; and a computer numerical control (CNC) device configured to:
determine a specified contour for controlling the machine tool by
the contour function defined in portions by contour nodal points
(P.sub.0 to P.sub.n+1) and respective contour portion functions
(p.sub.0 to p.sub.n), wherein a respective contour portion function
(p.sub.j) connects two adjacent contour nodal points (P.sub.j,
P.sub.j+1), determine a rough trajectory by a rough trajectory
function (Q.sub.j, q.sub.j) which is defined in portions by rough
trajectory nodal points (Q.sub.0 to Q.sub.n+1) and respective rough
trajectory portion functions (q.sub.0 to q.sub.n), wherein a
respective rough trajectory portion function (q.sub.j) connects two
adjacent rough trajectory nodal points (Q.sub.j, Q.sub.j+1),
ascertain, for each contour nodal point (P.sub.j), a respective
assigned rough trajectory nodal point (Q.sub.j) such that a
difference in gradients of the two adjacent rough trajectory
portion functions (q.sub.j-1, q.sub.j) which contain this rough
trajectory nodal point (Q.sub.j) is minimal and that a distance of
the contour nodal point (P.sub.j) from the rough trajectory nodal
point (Q.sub.j) satisfies a specified distance condition, and
direct movement of one of the at least two mutually redundant drive
devices based on the respective assigned rough trajectory nodal
point (Q.sub.j).
23. The system of claim 22, wherein the specified distance
condition requires that the distance between the contour nodal
point (P.sub.j) and the assigned rough trajectory nodal point
(Q.sub.j) is less than or equal to a predetermined limit value
(.DELTA.).
24. The system of claim 23, wherein the predetermined limit value
(.DELTA.) corresponds to a respective maximum displacement of one
of the drive devices.
25. The system of claim 22, wherein the contour function (P.sub.j,
p.sub.j) is defined in a plurality of dimensions and in that a
distance condition, according to which the distance between the
contour nodal point (P.sub.j) and the assigned rough trajectory
nodal point (Q.sub.j) is less than or equal to a predetermined
limit value (.DELTA.), requires that in each dimension the distance
is less than or equal to a predetermined limit value (.DELTA.) for
the dimension.
26. The system of claim 25, wherein the predetermined limit value
(.DELTA.) of each dimension is equal for all dimensions.
27. The system of claim 22, wherein ascertaining the respective
assigned rough trajectory nodal point (Q.sub.j) for each contour
nodal point (P.sub.j) requires that the rough trajectory nodal
points (Q.sub.j) for which a sum of all squared differences between
the gradients of two in each case adjacent rough trajectory portion
functions (q.sub.j-1, q.sub.j) of the rough trajectory function
(Q.sub.j, q.sub.j) is minimal are ascertained.
28. The system of claim 27, wherein the contour function (P.sub.j,
p.sub.j) is defined in a plurality of dimensions and in that
ascertaining the rough trajectory nodal points (Q.sub.j) for which
the sum of all the squared differences between the gradients of two
in each case adjacent rough trajectory portion functions
(q.sub.j-1, q.sub.j) of the rough trajectory function (Q.sub.j,
q.sub.j) is minimal requires that coordinates of the rough
trajectory nodal points (Q.sub.j) are separately ascertained in
each dimension.
29. The system of claim 22, wherein the rough trajectory portion
functions (q.sub.0 to q.sub.n) are formed by respective linear
functions.
30. The system of claim 22, wherein the rough trajectory portion
functions (q.sub.0 to q.sub.n) are generated via a spline
interpolation of the rough trajectory nodal points (Q.sub.0 to
Q.sub.n+1).
31. The system of claim 22, wherein a first rough trajectory
portion of rough trajectory nodal points (Q.sub.0 to Q.sub.n0+1)
and respective rough trajectory portion functions (q.sub.0 to
q.sub.n0) is determined in a first iteration with regard to a
distance condition (2.DELTA.) from the starting point P.sub.0 to
P.sub.n0+1, with n0<n and k=0, and in subsequent iterations with
k>0 further rough trajectory portions of rough trajectory nodal
points (Q.sub.k to Q.sub.k+1) and respective rough trajectory
portion functions (q.sub.k to q.sub.nk) with nk=k+1, . . . , n and
k<n are determined with regard to the distance condition
(2.DELTA.) between contour nodal points P.sub.k to P.sub.nk+1,
until nk=n, wherein at least the rough trajectory point Q.sub.k,
preferably at least the two rough trajectory points Q.sub.k-1,
Q.sub.k, are set as a starting point for a subsequent
iteration.
32. The system of claim 31, wherein, for the iterative calculation
of subsequent rough trajectory portions of the further rough
trajectory nodal points (Q.sub.k to Q.sub.nk+1) and respective
rough trajectory portion functions (q.sub.k to q.sub.nk), an index
k is shifted by 1 and thus k:=k+1 applies for a subsequent
iteration.
Description
[0001] The present invention relates to a method for ascertaining a
rough trajectory from a specified contour for controlling a machine
tool which has at least two mutually redundant drive devices for
carrying out superimposed movements.
BACKGROUND OF THE INVENTION
[0002] Such machine tools are used for example in milling, laser
cutting, water-jet cutting or engraving wood, metal or plastics
workpieces or as drafting machines (plotters) in order to be able
to produce workpieces or drawing lines having a specified two- or
three-dimensional contour. A stationary or also a moving, in
particular rotating, tool may be moved with the assistance of the
drive devices along the specified contour, such that once machining
is complete the workpiece has a desired final contour.
[0003] Depending on the course of the desired final contour, the
tool often has to cover relatively large distances within a short
time and is consequently also exposed to severe acceleration and/or
deceleration forces. Machine tools which have just a single drive
device for each desired direction of movement of the tool rapidly
reach their limits of performance in this respect. The speed of
machining often has to be reduced to below an acceptable level in
order to remain within the speed and/or acceleration limits of the
drive device.
[0004] This is avoided by using what are known as redundant drive
devices for each direction of movement of the machine tool. To this
end, a low-dynamic drive is provided which is capable of moving
over relatively large displacements but, due to its relatively high
mass, has only low motion dynamics. In addition, a second,
high-dynamic drive is provided which, on the one hand, can be
displaced by means of the low-dynamic drive and, on the other hand,
is capable is displacing the tool at high speed and high
acceleration or deceleration, wherein however the maximum
displacement of the high-dynamic drive device is generally
limited.
[0005] In order to be able to control such a machine tool with
redundant drive devices for a respective direction of movement, it
is conventional to divide the contour with which the workpiece is
to be machined into a rough trajectory and a fine trajectory. The
low-dynamic drive is here controlled with the rough trajectory data
while the high-dynamic drive is simultaneously controlled with the
fine trajectory data.
[0006] Dividing the contour into a rough trajectory and a fine
trajectory and corresponding control of the machine tool is in
principle known and is described for example in DE 10355614 B4 and
EP 0594699 B1. When calculating the rough trajectory, at least the
limited displacement of the high-dynamic drive must be taken into
account since the workpiece would otherwise be incorrectly
machined. Further limiting parameters are advantageously also taken
into account in calculating the trajectory. This generally results
in the rough trajectory comprising somewhat low-frequency motion
components while the fine trajectory has high-frequency motion
components. In general, the rough trajectory and the fine
trajectory are calculated such that a rough trajectory is
ascertained and then the fine trajectory is determined by
subtracting the rough trajectory from the contour.
[0007] EP 1963935 B1 describes a further method for ascertaining
for rough trajectory which is to be travelled in positionally
guided manner. An initial trajectory to be travelled is here
specified to a computer, wherein the initial trajectory is
described by an initial function such that a corresponding position
on the initial trajectory is in each case determined by inserting a
scalar trajectory parameter into the initial function, wherein the
scalar trajectory parameter is other than time and is
characteristic of a path travelled along the initial trajectory.
The computer subjects the initial trajectory to filtering with a
low-pass characteristic as a function of the scalar trajectory
parameter and in this manner ascertains a rough function, such that
a corresponding position on the rough trajectory is in each case
determined by inserting the scalar trajectory parameter into the
rough function. The low-pass characteristic here relates to the
scalar trajectory parameter. The computer ascertains the rough
function such that the distance of the rough trajectory from the
initial trajectory is always below a predetermined bound
irrespective of the value of the scalar trajectory parameter.
[0008] In other words, EP 1963935 B1 proposes a method for
calculating a rough function for travel by a low-dynamic drive
which is calculated such that an initial trajectory dependent on a
travel parameter is filtered in relation to this travel parameter.
The low-pass filtered function is checked as to whether a distance
of this function from the initial trajectory is below a
predetermined bound over the entire range of the travel parameter.
On the basis of the low-pass filtered function, further
approximations may optionally gradually be carried out in order to
ascertain the rough trajectory providing that the above-stated
bound is observed.
[0009] The doctoral thesis "Steuerung von Werkzeugmaschinen mit
redundanten Achsen" [control of machine tools with redundant axes]
by Mr. Marco Bock of the faculty of mathematics and computer
science, physics and geography at Justus Liebig University Gie en
submitted in August 2010
(http://geb.uni-giessen.de/geb/volltexte/2011/7970/pdf/BockMarco_2010_11_-
19.pdf) describes various further methods for ascertaining a rough
trajectory from a specified contour for controlling a machine
tool.
[0010] According to a first exemplary embodiment, the rough
function may be ascertained by initially ascertaining first
characteristic intermediate vectors with control points of a spline
representation of the initial trajectory. On this basis, second
characteristic intermediate vectors which contain control points
and define a second intermediate trajectory may be ascertained from
the first characteristic intermediate vectors of the spline
representation. The control points may be ascertained by weighted
or unweighted averaging of pairs of immediately successive
intermediate vectors of the first sequence. On this basis, third
intermediate vectors may be calculated in corresponding manner.
After this double determination of the intermediate trajectory, it
must then be ascertained whether a geometric distance of the
intermediate trajectory as a rough function from the initial
trajectory is below the specified bound along the trajectory
parameter. The spline vectors of the initial trajectory may to this
end be compared with the spline vectors of the intermediate
trajectory of the rough function, wherein the maximum value of
these distances provides an upper distance limit which may in turn
be compared with the bound for observance of the specified
criterion.
[0011] In a second exemplary embodiment, respective trajectory
positions on the initial trajectory may be ascertained for a
plurality of scalar values of the trajectory parameter on the basis
of a spline representation of the initial trajectory. On the basis
of these pairs of values, a first intermediate trajectory is
defined by the above-stated sampling. A second intermediate
trajectory of the rough function within the interval of the scalar
trajectory parameter may be determined by weighted or unweighted
averaging of the positions on the first intermediate trajectory.
The second intermediate trajectory may be compared with regard to
observance of the bound with the initial trajectory or with the
first sampled intermediate trajectory taking account of an
auxiliary bound.
[0012] Depending on the specified contour, it may happen that known
trajectory division methods are incapable of supplying satisfactory
results. Under certain circumstances, known methods may be highly
computationally intensive and require a correspondingly long
computing time. It is also conceivable for the machining time
arising from trajectory division not to correspond to the physical
capabilities of the machine tool and thus to be extended.
[0013] The problem addressed by the invention is therefore that of
providing a method of the initially stated kind which is improved
in comparison with known methods.
SUMMARY OF THE INVENTION
[0014] The problem is solved by a method having the features of
claim 1. Advantageous developments of the method are indicated in
the dependent claims.
[0015] A method is proposed for ascertaining a rough trajectory
from a specified contour for controlling a machine tool which has
at least two mutually redundant drive devices for carrying out
superimposed movements, wherein the contour is determined by a
contour function (P.sub.j, p.sub.j) which is defined in portions by
contour nodal points P.sub.0 to P.sub.n+1 and respective contour
portion functions p.sub.0 to p.sub.n, wherein a respective contour
portion function p.sub.j connects two adjacent contour nodal points
P.sub.j, P.sub.j+1, wherein the rough trajectory is determined by a
rough trajectory function (Q.sub.j, q.sub.j) which is defined in
portions by rough trajectory nodal points Q.sub.0 to Q.sub.n+1 and
respective rough trajectory portion functions q.sub.0 to q.sub.n,
wherein a respective rough trajectory portion function q.sub.j
connects two adjacent rough trajectory nodal points Q.sub.j,
Q.sub.j+1, wherein, for each contour nodal point P.sub.j, a
respective assigned rough trajectory nodal point Q.sub.j is
ascertained in such a manner that a difference in the gradients, in
particular a magnitude of the difference in the gradients, of the
two adjacent rough trajectory portion functions q.sub.j-1, q.sub.j
which contain this rough trajectory nodal point Q.sub.j is minimal
and that the distance of the contour nodal point P.sub.j from the
rough trajectory nodal point Q.sub.j satisfies a specified distance
condition.
[0016] The contour nodal points P.sub.j are two- or
three-dimensional sampling points (x.sub.j y.sub.j) or (x.sub.j,
y.sub.j, z.sub.j) which reproduce the specified contour for j=0 to
n+1. The two-dimensional case, which may also be transferred into
three dimensions, is considered below.
[0017] The proposed method can be carried out with little
computational effort. It yields a rough trajectory function which
is very smooth and, thanks to the minimised gradient change in the
rough trajectory nodal points, allows the low-dynamic drive device
to be driven at the highest possible speed and in particular with
low acceleration or deceleration values and little jerkiness. The
specified distance condition here provides a constraint for the
optimisation problem to be solved and ensures that the distance
between the rough trajectory and the original contour remains
within specified limits.
[0018] In contrast with the prior art, the method according to the
invention does not involve low-pass filtering by weighted or
unweighted averaging of individual values. In addition, checking as
to whether the distance of the rough trajectory from the contour is
always below a predetermined bound independently of a value of a
scalar trajectory parameter is not provided and is also not
necessary since a corresponding check is already inherently
provided by a specified distance condition which underlies the
mathematical optimisation as a constraint.
[0019] It should be noted at this point that the stated contour
which provides the basis for trajectory division according to the
invention need not necessarily be the final contour of the
workpiece to be machined. It is here optionally also possible to
take account of material removal, for example brought about by the
tool. For example, account may be taken of the diameter of the
milling head when a milling cutter is used.
[0020] Advantageously, the specified distance condition requires
that the distance between the contour nodal point P.sub.j and the
assigned rough trajectory nodal point Q.sub.j is less than or equal
to a predetermined limit value .DELTA.. This constitutes a specific
development of the constraint explained above for solving the
optimisation problem.
[0021] The predetermined limit value .DELTA. is appropriately based
on the displacement of the high-dynamic drive device.
[0022] According to an advantageous development, the contour
function (P.sub.j, p.sub.j) is defined in a plurality of
dimensions, wherein the distance condition, according to which the
distance between the contour nodal point P.sub.j and the assigned
rough trajectory nodal point Q.sub.j is less than or equal to a
predetermined limit value .DELTA., requires that, in each
dimension, the distance be less than or equal to a predetermined
limit value .DELTA. for this dimension, wherein in particular the
limit values .DELTA. are equal for all dimensions. Ascertaining the
rough trajectory nodal points may be further simplified as a
consequence since each dimension can be handled separately.
[0023] According to a further advantageous development,
ascertaining the respective assigned rough trajectory nodal point
Q.sub.j for each contour nodal point P.sub.j requires that those
rough trajectory nodal points Q.sub.j for which the sum of all the
squared differences between the gradients of two in each case
adjacent rough trajectory portion functions q.sub.j-1, q.sub.j of
the rough trajectory function (Q.sub.j, q.sub.j) is minimal are
ascertained. This optimisation provides particularly good results
in terms of a maximally smooth gradient profile of the rough
trajectory function (Q.sub.j, q.sub.j). This optimisation problem
may straightforwardly be reformulated as a matrix representation
and is then denoted a quadratic problem or quadratic program.
Suitable solution methods, in particular numerical solution methods
for such an optimisation problem are familiar to a person skilled
in the art and examples are set out below.
[0024] Advantageously, the contour function (P.sub.j, p.sub.j) is
defined in a plurality of dimensions, wherein ascertaining those
rough trajectory nodal points Q.sub.j for which the sum of all the
squared differences between the gradients of two in each case
adjacent rough trajectory portion functions q.sub.j-1, q.sub.j of
the rough trajectory function Q.sub.j, q.sub.j is minimal requires
that the coordinates of the rough trajectory nodal points Q.sub.j
are separately ascertained in each dimension. The stated sum to be
minimised is accordingly likewise considered separately for each
dimension. This consequently further reduces computational
effort.
[0025] According to an advantageous development, the rough
trajectory portion functions q.sub.0 to q.sub.n are formed by
respective linear functions. In other words, the rough trajectory
nodal points Q.sub.0 to Q.sub.n+1 are in each case connected by
straight lines. As a result, no complex interpolation steps are
required, which means that the computing time required for
generating the rough trajectory can be distinctly reduced.
[0026] Alternatively, it is however also possible to generate the
rough trajectory portion functions q.sub.0 to q.sub.n by means of a
spline interpolation of the rough trajectory nodal points Q.sub.0
to Q.sub.n+1. A still smoother course of the rough trajectory and
thus still less jerky operation of the drive devices may be
achieved as a consequence.
[0027] A rough trajectory may generally be ascertained from the
overall contour by one-off application of the method. In many
cases, however, the course of the contour only known in portions
and the further course to the end of the contour is still unknown
to the method or the number of contour points P.sub.j is too large
for rapid application of the method. It is advantageously proposed
to this end to apply the method iteratively, such that a rough
trajectory may be ascertained in portions in relation to the
contour. Accordingly, in an advantageous further development of the
method for ascertaining the rough trajectory, a first rough
trajectory portion of rough trajectory nodal points Q.sub.0 to
Q.sub.n0+1 and respective rough trajectory portion functions
q.sub.0 to q.sub.n0 may be determined from contour points P.sub.0
to P.sub.n0+1, with n0<n and k=0. The furthest distant
P.sub.n0+1 is here obtained from the distance norm
.parallel.P.sub.n0+1-P.sub.0.parallel..sub..infin.>2.DELTA..
Distance .DELTA. may be for example a maximum (unidirectional)
displacement of a drive device, preferably of the high-dynamic
drive device. Thereafter, further rough trajectory portions of
rough trajectory nodal points Q.sub.k to Q.sub.nk+1 and respective
rough trajectory portion functions q.sub.k to q.sub.nk with nk=k+1,
. . . , n and k<n may be determined in subsequent iterations
with k>0 with regard to the distance condition 2.DELTA. between
points P.sub.k and P.sub.nk+1, i.e.
.parallel.P.sub.nk+1-P.sub.k.parallel..sub..infin.>2.DELTA.. The
iterations are carried out until nk=n.
[0028] At least the rough trajectory point Q.sub.k, preferably at
least the two rough trajectory points Q.sub.k-1, Q.sub.k of the
preceding rough trajectory portion, may advantageously be set as
the starting point for a subsequent iteration, wherein contour
points P.sub.k+1, to P.sub.nk+1 are otherwise considered.
[0029] In this manner, a contour may be converted into a rough
trajectory in portions. For a first contour portion P.sub.0 to
P.sub.n0+1, the method is applied from index point 0 up to an index
point no which is defined by the distance condition that the
starting and end points P.sub.0 and P.sub.n0+1 do not exceed a
distance limit 2.DELTA.. For a subsequent rough trajectory portion,
a new starting value k<nk may be used as the starting value and,
on the basis of point P.sub.k, a point P.sub.nk maximally distant
therefrom which satisfies the distance condition 2.DELTA. may in
turn be defined. At least the rough trajectory point Q.sub.k, in
particular the two points Q.sub.k-1, Q.sub.k of the preceding rough
trajectory portion, is/are used as the starting point for the
subsequent iteration. Jumps on transition from one rough trajectory
portion to the next may consequently be avoided and the gradient in
the transitional zone minimised.
[0030] The preceding method involves building up the rough
trajectory in portions. It has proven advantageous for iterative
calculation of rough trajectory portion functions of the further
rough trajectory portion(s) of the index k to be shifted by one
index value and thus k:=k+1 applies for a subsequent iteration. The
window of the rough trajectory portion to be calculated is
consequently shifted just by the distance of a contour point
P.sub.j. Rough trajectory points Q.sub.0 to Q.sub.n0+1 are thus
initially calculated, wherein according to the distance condition
the index value n0 with
.parallel.P.sub.n0+1-P.sub.0.parallel..sub..infin.>2.DELTA. is
obtained, i.e. the smallest possible index value n0 is found, such
that the contour point P.sub.n0+1 is at a distance from the
starting point P.sub.0 which is just larger than 2.DELTA.. In the
next iteration, rough trajectory points Q.sub.1 to Q.sub.n1 etc.
are ascertained, wherein the index value n1 is in turn obtained
from the distance condition
.parallel.P.sub.n1+1-P.sub.1.parallel..sub..infin.>2.DELTA..
Q.sub.0 and Q.sub.1 of the first rough trajectory portion are here
advantageously used as starting values for the second iteration
instead of points P.sub.0 and P.sub.1. Thus, just one or more
further contour points P.sub.j of the original course of the
contour are newly added for the next rough trajectory portion and
the first point or points Q.sub.0 and Q.sub.1 of the preceding
iteration are included. The previously calculated rough trajectory
points Q.sub.k-1 and Q.sub.k thus define the starting points of the
rough trajectory portion of the subsequent iteration and the method
is continued until nk=n. Shifting each further rough trajectory
portion by 1 has proven to be optimal for the determination of the
rough trajectory function.
DRAWINGS
[0031] Further advantages are revealed by the drawings and the
associated description of the drawings. The drawings show exemplary
embodiments of the invention. The drawings, description and claims
contain numerous features in combination. A person skilled in the
art will expediently also consider these features individually and
combine them into meaningful further combinations.
[0032] In the figures:
[0033] FIGS. 1-4 show schematic diagrams of a specified contour and
an associated rough trajectory ascertained by means of the method
according to the invention.
[0034] The method according to the invention is described below by
way of example on the basis of a trajectory division of a
two-dimensional contour which is defined in an (X, Y) plane,
wherein generalisation to other dimensions is, of course, possible.
Trajectory division proceeds for example for a machine tool which
has two redundant drive devices for each direction of movement. The
contour may be described, for example, by first, third or fifth
order splines, as is conventional for the operation CNC machine
tools. Other contour descriptions may, however, also be
available.
[0035] The starting point is a contour which is defined at least by
contour nodal points P.sub.j=(x.sub.j.sup.0, y.sub.j.sup.0), j=0, .
. . , n+1 in a plane (X, Y).
[0036] A length s.sub.j between two adjacent contour nodal points
P.sub.j, P.sub.j+1 is defined by:
s.sub.j=.parallel.P.sub.j+1-P.sub.j.parallel..sub.2= {square root
over
((x.sub.j+1.sup.0-x.sub.j.sup.0).sup.2+(y.sub.j+1.sup.0-y.sub.j.sup.0).su-
p.2)},j=0, . . . ,n
[0037] For simplification, it is assumed that two adjacent contour
nodal points P.sub.j, P.sub.j+1 are connected by straight lines
with gradients:
d .times. x j 0 = x j + 1 0 - x j 0 s j , j = 0 , , n ##EQU00001##
d .times. y j 0 = y j + 1 0 - y j 0 s j , j = 0 , , n
##EQU00001.2##
[0038] This contour is now divided by a rough trajectory function
(Q.sub.j, q.sub.j) for controlling a low-dynamic drive device,
which function is defined by rough trajectory nodal points
Q.sub.j=(x.sub.j, x.sub.y), j=0, . . . , n+1 and rough trajectory
portion functions connecting the rough trajectory nodal points
Q.sub.j.quadrature..sub..quadrature., .quadrature.=0, . . . ,
.quadrature., having a smooth course and therefore a high advance
speed with low acceleration and deceleration values and little
jerkiness. Achieving this means that the difference in gradient of
two adjacent rough trajectory portion functions q.sub.j-1, q.sub.j,
or more precisely the absolute value of the difference in the
gradients |dx.sub.j-dx.sub.j-1| or |dy.sub.j-dy.sub.j-1|, in a
rough trajectory nodal point Q.sub.j must be small in order to
obtain the desired gentle transitions.
[0039] Since a respective drive device is assigned to each
dimension x, y, the dimensions x, y may be mutually independently
considered. The calculation steps are described below solely on the
basis of the x component. The y and optionally z components are
ascertained in corresponding manner.
[0040] The condition, according to which the change in gradient
between two adjacent rough trajectory portion functions q.sub.j-1,
q.sub.j should be small, may be equivalently expressed for example
in that a function
f .function. ( x ) = 1 2 .times. j = 1 n .times. ( dx j - d .times.
x j - 1 ) 2 ##EQU00002##
should be minimised. This corresponds to a least squares method.
After a number of transformations, the function f(x) may be
expressed as
f(x)=1/2x.sup.TQx,
wherein Q is a sparsely populated, symmetrical and positive
semidefinite band matrix which accommodates reciprocal items of
length information si and x denotes a vector x=(x.sub.0, . . . ,
x.sub.n+1).sup.T of the individual components.
[0041] As a constraint for solving this optimisation problem, the
rough trajectory nodal points Q.sub.j, j=0, . . . , n+1 must be
situated within a specified window with edge length .DELTA. around
a respective associated contour nodal point P.sub.j. This may be
expressed by the condition
.parallel.Q.sub.j-P.sub.j|.sub..infin..ltoreq..DELTA. or by the
conditions:
|x.sub.j-x.sub.j.sup.0|.ltoreq..DELTA.,j=0, . . . ,n+1,
|y.sub.j-y.sub.j.sup.0|.ltoreq..DELTA.,j=0, . . . ,n+1,
wherein .DELTA. as a rule correlates with the displacement limits
of the high-dynamic fine drive. On travelling along the contour,
the drive devices should start at contour nodal point P.sub.0 and
finish at contour nodal point P.sub.n+1. The problem thus consists
in locating points xi.sub.j j=0, . . . , n+1 which minimise the
function f(x) below the stated constraints. This problem may be
written as
f(x)=1/2x.sup.TQx.fwdarw.min
x.sub.0=x.sub.0.sup.0
x.sub.j.sup.0-.DELTA..ltoreq.x.sub.j.ltoreq.x.sub.j.sup.0+.DELTA.
x.sub.n+1=x.sub.n+1.sup.0
which is known as a quadratic optimisation problem or quadratic
program.
[0042] Numerous rapid methods for solving this optimisation problem
are known to a person skilled in the art. Numerical methods such as
gradient methods, active set methods, inner point methods or the
class of Krylov subspace methods, in particular conjugate gradient
methods, may be mentioned by way of example.
[0043] Once the rough trajectory nodal points Q.sub.0, Q.sub.j+1
have been ascertained in this manner, the rough trajectory portion
functions q.sub.0 to q.sub.j may be determined by connecting
adjacent rough trajectory nodal points Q.sub.j, Q.sub.j+1 with
straight lines (corresponding to a first order spline
interpolation) or by third or higher order spline
interpolation.
[0044] FIGS. 1 to 3 in each case show exemplary contour functions
(P.sub.j, p.sub.j) with starting points P.sub.0 and end points
P.sub.n+1 together with the rough trajectory functions (Q.sub.j,
q.sub.j) ascertained by the method according to the invention as
well as the associated starting points Q.sub.0 and end points
Q.sub.n+1.
[0045] FIG. 4 shows an example of a rough trajectory determination
similar to FIG. 1. On the basis of the contour functions (P.sub.j,
p.sub.j) represented by a continuous line, all the contour
functions up to index n may be transformed into a rough trajectory
(Q.sub.j, q.sub.j) shown in dashed lines by individual application
of the method. This is already depicted in FIG. 1.
[0046] On iterative application of the method, the contour function
may be subdivided into subportions k to n.sub.k with n.sub.k=k+1, .
. . , n and k<n, wherein the respective highest index value
n.sub.k satisfies a distance condition 2.DELTA.. The size of the
respective rough contour portion may be selected such it
corresponds to an entire movement space of the high-dynamic drive.
Starting from a starting point P.sub.k for defining n.sub.k for the
set of contour points to be considered of the respective rough
contour portion, the following therefore applies:
.parallel.P.sub.nk-P.sub.k.parallel..infin.>2.DELTA.
For the first iteration, contour points P.sub.0 to P.sub.n0+1 are
considered, i.e. k=0 and the index value n0 which just corresponds
to the distance condition with distance 2.DELTA. from point P.sub.0
to point P.sub.n0 is sought. Initial rough trajectory points
Q.sub.0 to Q.sub.n0+1 are determined therefrom by applying the
method.
[0047] For each further iteration, k:=k+1 is set and the maximum
index n.sub.k with nk=k+1, . . . , n is in turn sought, wherein the
subsequent rough trajectory portion is displaced by an index value
distance of 1, i.e. k:=k+1 is calculated. Rough trajectory points
from 1 to n1 are accordingly determined for the second iteration
and points j to nj for subsequent iterations j, wherein the rough
points Q.sub.k-1, Q.sub.k of the preceding rough contour portion
are in each case used as the starting point(s) of each rough
contour portion, and otherwise contour points P.sub.k+1 to
P.sub.k+1 are considered. The first rough point(s) of the
previously calculated rough contour portion are thus introduced,
remaining unchanged, into each subsequent rough contour portion,
wherein the index window in each case shifts by an index value
k:=k+1. Ultimately, in each subsequent iteration, since the index
value k is increased by 1, only one further rough trajectory point
is added until nk=n. The method may be applied at most n-times.
Because at least the first, preferably the first two, rough
trajectory points, or a plurality of first rough trajectory points
of the preceding portion is/are used as starting points for the
subsequent portion, it is possible to ensure that, on transition
from one rough contour portion to the next, the rough trajectory
gradient in the transitional zone is minimised.
[0048] The rough trajectory curve obtained from the iterative
method with rough trajectory points Q.sub.j is shown in dash-dotted
lines and compared with rough trajectory points Q.sub.j obtained by
just one-off application of the method to all points P.sub.0 to
P.sub.n+1, see FIG. 1. It is clear that an improved approximation
to the starting contour may be achieved, wherein an increased
number of iterations is required on a reduced number of contour
points.
* * * * *
References