Method for ascertaining a rough trajectory from a specified contour
11402821 · 2022-08-02
Assignee
Inventors
Cpc classification
G05B2219/34098
PHYSICS
G05B2219/42209
PHYSICS
International classification
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.
Claims
1. 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 (P0 to Pn+1) and respective contour portion functions (p0 to pn), wherein a respective contour portion function (pj) connects two adjacent contour nodal points (Pj, Pj+1) of the contour nodal points (P0 to Pn+1); determining a rough trajectory by a rough trajectory function (Qj, qj) which is defined in portions by rough trajectory nodal points (Q0 to Qn+1) and respective rough trajectory portion functions (q0 to qn), wherein a respective rough trajectory portion function (qj) connects two adjacent rough trajectory nodal points (Qj, Qj+1) of the rough trajectory nodal points (Q0 to Qn+1); ascertaining, for each of the contour nodal points (Pj), a respective assigned rough trajectory nodal point (Qj) of the rough trajectory nodal points (Q0 to Qn+1) such that a difference in gradients of the two adjacent rough trajectory portion functions (qj−1, qj) which contain the respective assigned rough trajectory nodal point (Qj) is minimal and that a distance of the contour nodal point (Pj) from the respective assigned rough trajectory nodal point (Qj) satisfies a specified distance condition; and directing the movement of one of the at least two mutually redundant drive devices based on the respective assigned rough trajectory nodal point (Qj).
2. The method of claim 1, 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 (Δ).
3. The method of claim 2, wherein the predetermined limit value (Δ) corresponds to a respective maximum displacement of one of the drive devices.
4. The method of claim 3, wherein the contour function (P.sub.j, p.sub.j) is defined in a plurality of dimensions such that according to a distance condition, 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 (Δ), where the distance condition requires that in each of the dimensions the distance is less than or equal to the predetermined limit value (Δ).
5. The method of claim 4, wherein the predetermined limit value (Δ) of each of the dimensions is equal for all the dimensions.
6. The method of claim 5, wherein the ascertaining the respective assigned rough trajectory nodal point (Q.sub.j) for each of the contour nodal points (P.sub.j) requires that the respective assigned rough trajectory nodal points (Q.sub.j) for which a sum of all squared differences between the gradients of the two 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.
7. The method of claim 6, wherein the contour function (P.sub.j, p.sub.j) is defined in a plurality of dimensions such that the ascertaining the respective assigned rough trajectory nodal points (Q.sub.j) for which the sum of all the squared differences between the gradients of the two adjacent rough trajectory portion functions (q.sub.j−1, q.sub.j) of the rough trajectory function (Q.sub.j, q.sub.j) is the minimal requires that coordinates of the respective assigned rough trajectory nodal points (Q.sub.j) are separately ascertained in each of the dimensions.
8. The method of claim 7, wherein the rough trajectory portion functions (q.sub.0 to q.sub.n) are formed by respective linear functions.
9. The method of claim 8, 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).
10. The method of claim 9, 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Δ) 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Δ) 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.
11. The method of claim 10, 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.
12. 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) of the contour nodal points (P.sub.0 to P.sub.n+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) of the rough trajectory nodal points (Q.sub.0 to Q.sub.n+1), ascertain, for each of the contour nodal points (P.sub.j), a respective assigned rough trajectory nodal point (Q.sub.j) of the rough trajectory nodal points (Q.sub.0 to Q.sub.n+1) such that a difference in gradients of the two adjacent rough trajectory portion functions (q.sub.j−1, q.sub.j) which contain the respective assigned rough trajectory nodal point (Q.sub.j) is minimal and that a distance of the contour nodal point (P.sub.j) from the respective assigned rough trajectory nodal point (Q.sub.j) satisfies a specified distance condition, and direct the movement of one of the at least two mutually redundant drive devices based on the respective assigned rough trajectory nodal point (Q.sub.j).
13. The system of claim 12, 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 (Δ).
14. The system of claim 13, wherein the predetermined limit value (Δ) corresponds to a respective maximum displacement of one of the drive devices.
15. The system of claim 12, wherein the contour function (P.sub.j, p.sub.j) is defined in a plurality of dimensions such that according to a distance condition, 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 (Δ), where the distance condition requires that in each of the dimensions the distance is less than or equal to the predetermined limit value (Δ) for the dimension.
16. The system of claim 15, wherein the predetermined limit value (Δ) of each of the dimensions is equal for all the dimensions.
17. The system of claim 12, wherein the ascertaining the respective assigned rough trajectory nodal point (Q.sub.j) for each of the contour nodal points (P.sub.j) requires that the respective assigned rough trajectory nodal points (Q.sub.j) for which a sum of all squared differences between the gradients of the two 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.
18. The system of claim 17, wherein the contour function (P.sub.j, p.sub.j) is defined in a plurality of dimensions such that the ascertaining the respective assigned rough trajectory nodal points (Q.sub.j) for which the sum of all the squared differences between the gradients of the two adjacent rough trajectory portion functions (q.sub.j−1, q.sub.j) of the rough trajectory function (Q.sub.j, q.sub.j) is the minimal requires that coordinates of the respective assigned rough trajectory nodal points (Q.sub.j) are separately ascertained in each of the dimensions.
19. The system of claim 12, wherein the rough trajectory portion functions (q.sub.0 to q.sub.n) are formed by respective linear functions.
20. The system of claim 12, 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).
21. The system of claim 12, 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Δ) 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Δ) 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.
22. The system of claim 21, 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
DRAWINGS
(1) 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.
(2) In the figures:
(3)
(4) 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.
(5) 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).
(6) A length s.sub.j between two adjacent contour nodal points P.sub.j, P.sub.j+1 is defined by:
s.sub.j=∥P.sub.j+1−P.sub.j∥.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).sup.2)},j=0, . . . ,n
(7) 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:
(8)
(9) 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□.sub.□, □=0, . . . , □, 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.
(10) 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.
(11) 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
(12)
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)=½x.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.
(13) 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 Δ around a respective associated contour nodal point P.sub.j. This may be expressed by the condition ∥Q.sub.j−P.sub.j|.sub.∞≤Δ or by the conditions:
|x.sub.j−x.sub.j.sup.0|≤Δ,j=0, . . . ,n+1,
|y.sub.j−y.sub.j.sup.0|≤Δ,j=0, . . . ,n+1,
wherein Δ 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)=½x.sup.TQx.fwdarw.min
x.sub.0=x.sub.0.sup.0
x.sub.j.sup.0−Δ≤x.sub.j≤x.sub.j.sup.0+Δ
x.sub.n+1=x.sub.n+1.sup.0
which is known as a quadratic optimisation problem or quadratic program.
(14) 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.
(15) 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.
(16)
(17)
(18) 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Δ. 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:
∥P.sub.nk−P.sub.k∥∞>2Δ
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Δ 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.
(19) 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.
(20) The rough trajectory curve obtained from the iterative method with rough trajectory points