TRAJECTORY PLANNING WITH FLEXIBLE REPLANNING FUNCTIONALITY - CHANGED END POINT

20230168681 · 2023-06-01

Assignee

Inventors

Cpc classification

International classification

Abstract

An improved method for controlling a lifting device, which moves a load along a first movement direction and along a second movement direction within a specified working area of the lifting device from a starting point to an end point. Individual movements are planned for the first movement direction and for the second movement direction, by which the load is moved further along the movement directions and brought to a newly specified end point.

Claims

1. A method for controlling a lifting device which moves a load along a first movement direction and along a second movement direction within a specified working area of the lifting device in accordance with a specified trajectory from a starting point to an end point, wherein at a command time point during the movement of the load, the end point is changed to a new end point, wherein, taking into account specified kinematic constraints of the lifting device, an individual movement is planned for the first movement direction and for the second movement direction respectively, which individual movement determines the further movement of the load along the respective movement direction from the command time point onwards, wherein the individual movements each end in a projection of the new end point onto the respective movement direction, and wherein the planned individual movements are executed in accordance with a specified movement sequence in order to move the load further along the first movement direction and further along the second movement direction in accordance with a replanning trajectory resulting from the movement sequence of the planned individual movements.

2. The method according to claim 1, wherein the individual movements planned for the first movement direction and for the second movement direction are planned as individual movements that are independent of one another.

3. The method according to claim 1, wherein the planned individual movements each comprise a position profile that can be continuously differentiated at least four times in time.

4. The method according to claim 3, wherein the position profiles for generating the temporally at least four times continuous differentiability are filtered by a filter with a specifiable time constant.

5. The method according to claim 4, wherein the time constant of the filter is selected as a function of the geometry of the lifting device in order to comply with the specified kinematic constraints of the lifting device in a combined execution of the individual movements.

6. The method according to claim 1, wherein, in the case of an obstacle located between the position taken on by the load at the command time point and the new end point, a further individual movement is planned for the second movement direction which in combination with the individual movement planned along the first movement direction moves the load around the obstacle, and wherein the second individual movement is executed in accordance with the specified movement sequence before the individual movement already planned for the second movement direction.

7. The method according to claim 1, wherein the movement sequence is specified such that individual movements along the first movement direction and individual movements along the second movement direction are started alternately.

8. The method according to claim 1, wherein the movement sequence is specified such that an individual movement along the first movement direction and an individual movement along the second movement direction are executed overlapping in time.

9. The method according to claim 1, wherein, before the execution of at least one planned individual movement, it is checked whether the expected replanning trajectory leads to a collision of the load with an obstacle specified in the working area.

10. The method according to claim 9, wherein, in order to check whether the expected replanning trajectory leads to a collision of the load with an obstacle specified in the working area, projections of a keypoint derived from the specified obstacle onto the movement directions are determined, wherein a collision time is determined at which the load reaches the projection onto the first movement direction with the individual movement planned for the first movement direction, and a collision time is determined at which the load reaches the projection onto the second movement direction with the individual movement planned for the second movement direction, and wherein the determined collision times are compared with one another.

11. The method according to claim 9, wherein, in order to check whether the expected replanning trajectory leads to a collision of the load with an obstacle specified in the working area, a projection of a keypoint derived from the specified obstacle onto one of the movement directions is determined, wherein a collision time is determined at which the load reaches the determined projection with the individual movement planned for this movement direction, wherein a position of the load on the other movement direction take on by the load at the determined collision time is determined, and wherein the determined position is compared with a projection of the keypoint onto the movement direction for which the position of the load was determined.

12. The method according to claim 10, wherein the collision times are determined using a root finding method.

13. The method according to claim 10, wherein, in the event of a determined collision with an obstacle, the at least one individual movement is not executed, and wherein instead a specified braking operation is performed for at least the duration of a specified minimum braking time along that movement direction for which the at least one individual movement that was not executed had been planned.

14. The method according to claim 13, wherein instead of the at least one individual movement which has not been executed, a new individual movement is planned for the corresponding movement direction, wherein it is checked whether the replanning trajectory resulting from the newly planned individual movement leads to a collision of the load with an obstacle specified in the working area, and wherein the new individual movement is executed if no collision is detected, or wherein the specified braking operation is continued for at least one further minimum braking time and a replanning of an individual movement and a check of the replanning trajectory resulting from the replanned individual movement are performed again if a new collision with an obstacle is detected.

15. The method according to claim 1, wherein the position of the load is measured and is used for planning and/or executing the individual movements.

16. The method according to claim 1, wherein the load is additionally moved along a third movement direction by the lifting device, wherein the load is moved within a specified 3D working space in accordance with a three-dimensional trajectory and wherein, for replanning the trajectory, at least one individual movement is also planned for the third movement direction and is executed in accordance with a specified movement sequence in addition to the individual movements planned for the first movement direction and for the second movement direction.

17. A lifting device for moving a load from a starting point to an end point in accordance with a specified trajectory within a specified working area of the lifting device, wherein a load receiving element is provided in the lifting device for receiving the load which is connected by at least one retaining element to a running element, wherein the running element is movable along a first movement direction by a running element drive and the load receiving element is movable along a second movement direction by a lifting drive, wherein a computing unit is provided in the lifting device, which computing unit is designed to read in at a command time point during the movement of the load (8) a new end point specified in the working area for replanning the trajectory, wherein the computing unit is further configured to plan, taking into account specified kinematic constraints of the lifting device, an individual movement for the first movement direction and for the second movement direction respectively which define the further movement of the load along the respective direction of movement from the command time point onwards, wherein the individual movements each end in a projection of the new end point onto the respective direction of movement, and wherein the computing unit is configured to control the running element drive and the lifting drive of the lifting device in order to execute the planned individual movements in accordance with a specified movement sequence and thus to move the load further along the first movement direction and further along the second movement direction in accordance with a replanning trajectory resulting from the movement sequence of the planned individual movements.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

[0028] In the following, the present invention is described in greater detail with reference to FIGS. 1 to 6, which, by way of example, show advantageous embodiments of the invention in a schematic and non-limiting manner. The drawings show:

[0029] FIG. 1 a schematic representation of a container crane with a trajectory within a working area of the container crane.

[0030] FIG. 2A a possible sequence of the method according to the invention when a modified end point is specified,

[0031] FIG. 2B an individual movement in X-direction.

[0032] FIG. 2C an individual movement in Y-direction,

[0033] FIG. 3A a time-optimal individual movement for one movement direction,

[0034] FIG. 3B a block diagram for filtering the position, velocity and acceleration profiles belonging to an individual movement,

[0035] FIG. 4 a trajectory and a replanning trajectory within a working area with a prohibition zone,

[0036] FIG. 5A individual movements in the X-direction when performing a braking operation according to the invention,

[0037] FIG. 5B individual movements in the Y-direction when performing a braking operation according to the invention,

[0038] FIG. 5C resulting trajectories when performing a braking operation according to the invention,

[0039] FIG. 6 a replanning trajectory for collision avoidance in the presence of two obstacles.

DETAILED DESCRIPTION

[0040] The particulars shown herein are by way of example and for purposes of illustrative discussion of the embodiments of the present invention only and are presented in the cause of providing what is believed to be the most useful and readily understood description of the principles and conceptual aspects of the present invention. In this regard, no attempt is made to show structural details of the present invention in more detail than is necessary for the fundamental understanding of the present invention, the description taken with the drawings making apparent to those skilled in the art how the several forms of the present invention may be embodied in practice.

[0041] FIG. 1 shows a lifting device 1 in the form of a schematic container crane 2, as used for loading and unloading ships in a harbor. Typically, a container crane 2 has a supporting structure 3 that is either fixed or movable on the ground. In the case of a movable arrangement, the supporting structure 3 can, for example, be arranged to move in the Z direction on rails. This degree of freedom in the Z direction means that the container crane 2 can be used flexibly in terms of location. To move the supporting structure 3 in the Z direction, for example, a suitable displacement device can be arranged on the lifting device, e.g., driven wheels, a cable pull, a gear drive or similar. The supporting structure 3 has a boom 4 that is fixedly connected to the supporting structure 3 at a certain height yr.

[0042] A running element 5 is usually arranged on this boom 4, which is movable in the longitudinal direction of the boom 4, i.e., in the X-direction in the example shown. Accordingly, a running element 5 can be mounted in guides by rollers. A running element drive, not shown, is provided for the running element 5 in order to move the running element 5 in the X-direction. The running element drive can be provided on the running element 5 itself, but can also be arranged on the boom 4 or on the supporting structure 3. The running element 5 is usually connected by retaining elements 6 to a load receiving element 7 for receiving a load 8. In the case of a container crane 2, the load 8 is typically a container 9, in most cases an ISO container 20, 40 or 45 feet long, 8 feet wide and 8 feet, 6 inches high.

[0043] The retaining elements 6 are usually in the form of ropes, wherein in most cases four retaining elements 6 are arranged on the running element 5, but more or fewer retaining elements 6 can also be provided, in the simplest case also only a single retaining element 6. To accommodate a load 8, such as a container 9, the distance between the running element 5 and the load receiving element 7 can be adjusted by a lifting drive (not shown), thus in the Y-direction in FIG. 1. If the retaining elements 6 are ropes, the lifting height is usually adjusted by one or more rope winches. The area in which a lifting device 1 can move a load 8 is referred to in the present context as the working area 15. Depending on the size and design of the lifting device 1, the working area 15 may vary.

[0044] In the situation shown in FIG. 1, the objective is to move load 8 from starting point A to end point E. When loading a ship, the starting point A may be, for example, a position of a container 9 on land, such as on a truck trailer, a rail car, or a storage yard, and the end position E may be, for example, a specified position of the container 9 on a ship. In an advantageous manner, the working area 15 can here be defined in a plane or also in the entire movement space and it can be checked whether a specified starting point A as well as a specified end point E lie within the working area 15 and whether accordingly a continuous movement of the load 8 from the starting point A to the end point E is possible.

[0045] In order to move a load 8 along a trajectory T from the starting point A to the end point E, the lifting device 1 has a crane controller 16 with a computing unit 12, for example in the form of an electronic control unit in the form of suitable hardware and/or software, by which the movement of the load 8 along the respective movement direction X, Y. Z can be controlled. If a starting point A and/or end point E is defined manually by a user, for example, the starting point A and/or end point E can be transmitted to the computing unit 12, for example, via a suitable interface. A starting point A and/or an end point E can also be determined in the computing unit 12. Possible implementations of a computing unit 12 include microprocessor-based hardware, microcontrollers, and integrated circuits (ASIC. FPGA). The crane controller 16 communicates with the drives provided for this purpose, such as a running element drive or a winch, in order to control and/or regulate the movement of the load 8, and is typically designed to be able to detect the current position of the running element 5, the position of the load receiving element 7 and, if necessary, the position of the supporting structure 3.

[0046] In this sense, in the situation shown in FIG. 1, the coordinates of the central point P.sub.Z, which is located on the upper side of the load receiving element 7 facing the boom 4, can be detected in the X-Y plane E.sub.XY using the coordinates x.sub.L and y.sub.L of the load receiving element 7, but it is also possible to detect the coordinates x.sub.T and y.sub.T of the running element 5 in both the X- and Y-directions. The central point P.sub.Z can be used to describe the position of the load 8 and can therefore also be understood as the load position. Furthermore, the position y.sub.T of the running element in the Y-direction is often determined by the design height of the supporting structure 3 or the boom 4 and is therefore constant. The coordinates are related to a given coordinate system. When the load 8 moves in the Z direction, that is, when the supporting structure 3 of the lifting device 1 moves in the Z direction, the position z.sub.L of the load receiving element 7 and the position z.sub.T of the running element 5 would also be detected in the Z direction.

[0047] From a trajectory T along which the load 8 is moved, a rapid transfer of the load 8 from the starting point A to the end point E is usually required. As explained at the beginning, during such a transfer it may become necessary for several reasons to adapt a given trajectory T during the movement of the load 8 to changing circumstances in the area of the lifting device 1, i.e., to replan the trajectory T. This problem is solved by the method according to the invention. How the method according to the invention can be used to replan a trajectory T taking into account a changed end point E.sub.n is specifically shown in FIGS. 2A-2C.

[0048] Here, three situations are plotted along the time axis t, which can occur during the application of the method according to the invention during the movement of a load 8 by a lifting device 1 along a first and along a second movement direction, in this case along the movement directions X and Y. In the situation shown in FIG. 2A, the movement of the load 8 starts at the starting point A at the time t.sub.A. The position of the load 8 is thereby equated to the previously mentioned central point P.sub.Z and accordingly also designated as P.sub.Z. At time point t.sub.A, the load 8 starts to move along the specified trajectory T shown in dashed lines in FIG. 2A, wherein the position P.sub.Z of the load 8 and the starting point A initially overlap.

[0049] At time point t.sub.K, hereinafter also referred to as command time point t.sub.K, a new end point E.sub.n is now specified to which load 8 is to be transferred instead of the previous end point E. The command time point t.sub.K can be specified by an operator, such as a crane operator, and can therefore be selected as freely as possible. However, the command time point t.sub.K can also be generated internally in the computing unit 12. Also, several successive command time points t.sub.K for a repeated change of an end point E are conceivable. At command time point t.sub.K, the load 8 is at position P.sub.z(t.sub.K). According to the invention, the replanning of the movement of the load 8 is started immediately after the new end point E.sub.n has been specified. This is done according to the previous explanations by projections of the position P.sub.z(t.sub.K) taken on by the load 8 at the command time point t.sub.K and of the new end point E.sub.n onto the movement directions X, Y. The projections of the position P.sub.z(t.sub.K) taken on by the load 8 at the command time point t.sub.K and of the new end point E.sub.n onto the X-axis are called P.sub.Z′ and E.sub.n′, the projections onto the Y-axis are called P.sub.Z″ and E.sub.n″.

[0050] According to the invention, the projections P.sub.Z′, E.sub.n′ or P.sub.Z″, E.sub.n″ are considered separately. For each of the separated pairs of projections, an individual movement TE is planned to connect the respective projections P.sub.Z′, E.sub.n′ or P.sub.Z″, E.sub.n″ along the corresponding movement directions X, Y. An individual movement TE preferably defines a profile of position, velocity and acceleration along the respective movement direction. In this manner, for example, the projection P.sub.Z′ of the load position P.sub.Z is connected to the projection E.sub.n′ of the end point E.sub.n along the movement direction X. In this way, for each of the movement directions X, Y initially one individual movement TE results.

[0051] After planning them, the planned individual movements are executed according to a specified sequence, hereinafter referred to as “movement sequence”, to move the load 8 along the first movement direction X and along the second movement direction Y. Thus, a replanning trajectory TU results from the planned individual movements TE. The replanning trajectory TU is shown by the solid line in FIG. 2.

[0052] By separating the new overall movement to be planned into a plurality of individual movements TE to be planned instead, the (re-)plannning task to be solved is significantly simplified compared to methods known from the prior art. Thus, the complex problem of planning at least one two-dimensional movement is reduced to planning several only one-dimensional movements.

[0053] Especially this circumstance proves to be advantageous in the practical implementation, since the planning of one-dimensional movements is a well-known problem in control and automation engineering, which has already been solved in various ways. In the concrete planning of the individual TE movements, a plurality of known approaches can thus be used. If, for example, a time-optimal transfer of the load 8 to the new end point E.sub.n is to be ensured, the bang-bang controller approach, which is sufficiently known from control engineering literature, can be used, for example, using maximum accelerations along the movement directions X, Y that can be realized by the given drives of the lifting device 1.

[0054] Individual movements TE, as may occur in the method according to the invention, are shown in FIGS. 2B and 2C. Corresponding to the individual movement TE.sub.X shown in FIG. 213, in which the position profile s.sub.x connects the projection P.sub.z′(t.sub.k) with the projection E.sub.n′, the planning of an individual movement TE with regard to the temporal position profile s.sub.x thereof can be performed, for example, by specifying a sigmoid-like profile, which, however, is to be understood merely as an example. Other position profiles can also be used at this point. FIG. 2C shows a corresponding individual movement TE.sub.Y along the Y-direction, by which the projections P.sub.z″(t.sub.k) and E.sub.n″ are connected to the Y-direction.

[0055] In FIG. 3A, the planning of an individual movement TE is explained in more detail using a time-optimal individual movement to connect the projections P.sub.Z′ and E.sub.n′. In addition to the position profile s.sub.X, the associated velocity profile v.sub.x and the associated acceleration profile a.sub.X along the X-axis are also shown. In this context, a time-optimized individual movement means the fastest possible transfer of the load 8 to the new end point E.sub.n within the given dynamic limitations of the lifting device 1. The most significant dynamic limitations are kinematic constraints of the drives of the lifting device 1, such as a maximum realizable acceleration of the drives or a maximum force that can be realized by the drives. These kinematic constraints result in limitations for the accelerations of the load 8 that can be realized along the respective movement directions X, Y. The maximum possible positive acceleration of load 8 is referred to as a.sup.+.sub.max, and the maximum possible negative acceleration of load 8 is referred to as a.sup.−.sub.max. In this sense, the fastest possible individual movement TE along the X-axis is achieved using the maximum possible positive accelerations a.sup.+.sub.max and the maximum possible negative accelerations a-Mo along the X-axis.

[0056] In the example shown in FIG. 3A, the displayed position, velocity and acceleration profile can be mathematically represented as

[00001] a x ( t ) = a max + ( σ ( t - t k ) - σ ( t - T a 1 ) ) + a max - ( o ( t - T a 2 ) - σ ( t - t E ) ) v x ( t ) = v x 0 + a max + ( σ ( t - t k ) - σ ( t - T a 1 ) ) .Math. ( t - t k ) + a max + .Math. σ ( t - T a 1 ) .Math. ( T a 1 - t k ) + a max - ( σ ( t - T a 2 ) - σ ( t - t E ) ) .Math. ( t - T a 2 ) + a max - ( σ ( t - t E ) ) .Math. ( t - T a 2 ) s x ( t ) = P Z ( t k ) + v x 0 t + a max + ( σ ( t - t k ) - σ ( t - T a 1 ) ) .Math. ( t - t k ) 2 2 + α max + .Math. σ ( t - T a 1 ) .Math. ( T a 1 - t k ) .Math. ( t - T a 1 ) + a max - ( σ ( t - T a 2 ) - σ ( t - t E ) ) .Math. ( t - T a 2 ) 2 2 + a max - ( σ ( t - t E ) ) .Math. ( T a 2 - t E ) .Math. ( t - t E )

[0057] Here σ(x) stands for the sigma function well known from mathematics, which takes on the value one for arguments greater than or equal to zero (x≥0), and is equal to zero otherwise, v.sub.x0 here stands for the initial velocity at the beginning of the individual movement. Accordingly, the planning of individual movements TE, on the basis of which a position profile s.sub.x, a velocity profile v.sub.x and an acceleration profile a.sub.x are determined, can be performed by defining functions as shown above, for example by specifying time points T.sub.a1 and T.sub.a2. In an advantageous manner, boundary conditions can also be specified for this purpose, such as s.sub.x(t.sub.E)=E′, v.sub.x(t.sub.E)=v.sub.tE. In particular, the velocity v.sub.tE can be chosen equal to zero, but also different from zero.

[0058] According to the above explanations, for planning a time-optimal individual movement TE, acceleration phases with maximum positive acceleration a.sup.+.sub.max, with maximum negative acceleration a.sup.−.sub.max, as well as with vanishing acceleration, i.e., an acceleration a.sub.x=0, must be specified. In the procedure shown in FIG. 3A, this is done by specifying time points T.sub.a1 and T.sub.a2, which limit the time of the acceleration phases mentioned. The velocity profiles v.sub.x and position profiles s.sub.x associated with the acceleration profile a.sub.x adjust themselves according to the specified acceleration profiles. The widths of the acceleration phases limited by the time points T.sub.a1 and T.sub.a2 with accelerations different from zero are usually specified in such a manner that the resulting velocities do not exceed specified limits v.sup.+.sub.max, v.sup.−.sub.max. It should be noted that for the acceleration of the load 8 along the movement directions X, Y, lower (constant) values than the maximum accelerations that are possible due to the kinematic constraints of the drives can also be specified.

[0059] Kinematic and/or geometric limit values can, for example, be stored in the computing unit 12 or specified to the computing unit 12. Further kinematic limit values are preferably a maximum speed v.sub.Tmax and/or a maximum acceleration a.sub.Tmax of the running element 5, or a maximum speed v.sub.Hmax and a maximum acceleration a.sub.Hmax of the lift drive in Y-direction. A geometric limitation can be given, for example, by a maximum deflection angle Θ.sub.XYmax of the load receiving element 7 in the plane E.sub.XY. In the case of a third movement direction of the lifting device in the Z direction, a maximum speed v.sub.Smax and a maximum acceleration a.sub.Smax of the supporting structure 3 can additionally be specified as kinematic limit values and a maximum deflection angle Θ.sub.ZYmax of the load receiving element 7 in the plane E.sub.ZY can be specified as a geometric limit value. However, in addition to planning time-optimal individual movements TE, other approaches to planning individual movements TE can also be used.

[0060] In many cases, it proves advantageous in this context to design the individual movements TE.sub.x, TE.sub.y (and possibly TE.sub.z) along the axes X, Y (and possibly Z) completely independently of one another. This means that there is no relationship between the planned individual movements TE.sub.x, TE.sub.y (or TE.sub.z) on the respective axes, which could be expressed mathematically, for example, and which, in the case of a change in the position P.sub.z of the load 8 along a first movement direction, for example the X-axis, would cause a change in the position P.sub.z of the load 8 also along a second movement direction, for example the Y-axis.

[0061] In other cases, again, a deliberate linking of individual movements TE may be advantageous or even necessary, for example if certain areas of the working area 15 of the lifting device 1 must be avoided, e.g., due to an obstacle 11 located there. In such cases, usually the coordinate of one movement direction may take on only certain values depending on the coordinate of another movement direction. In order to prevent the load 8 from entering a prohibited area in the working area 15, such dependencies must be taken into account and the individual movements must therefore be designed to be interdependent.

[0062] The planned individual movements TE are subsequently executed as mentioned either simultaneously or offset in time to one another in order to bring the load 8 to the new end point E.sub.n. Staggering planned individual movements TE may be necessary, particularly in the case of prohibited areas V.sub.i or obstacles 11 described above. For example, it may be necessary to delay the start of a lowering movement in the Y-direction in order to drive around an obstacle 11. An individual movement TE.sub.Y planned in the Y-direction would therefore only be started with a time delay after the individual movement planned in the X-direction has already been started. The specification of which individual movement TE is to be executed first and which individual movement TE is to be executed later, if necessary, is expressed in the context of the present invention by a so-called movement sequence, which can be specified, for example, to the crane controller 16 or to the computing unit 12 provided in the crane controller 16 via a suitable interface. A movement sequence can thus be stored in the computing unit 12. A movement sequence thus defines the order in which the planned individual TE movements are to be executed. For example, a movement sequence might be: “First horizontal movement in X-direction, only then vertical movement in Y-direction.” A movement sequence can also be in the form of a table in which TE start times are assigned to the planned individual movements at which they are started. A movement sequence can also comprise time intervals that define waiting times that must at least be provided between the start times of successive individual movements TE.

[0063] A central problem in the manipulation of loads 8 by lifting devices 1, which in many cases can either be solved, but usually at least greatly reduced, by suitable trajectory planning, is the problem of load swing. In particular, rapid movement operations of lifting devices can often excite undesirable swinging and/or swaying movements of transported loads 8 or of load receiving elements. Swinging of loads 8 can in turn delay handling and manipulation procedures, since loads such as containers often cannot be placed at all in such cases, or at least not with sufficient precision, and it is necessary to wait until a given swinging has subsided again. In FIG. 1, the possibility of forming swinging and/or pendulum movements is shown by a double arrow in the X-Y plane E.sub.XY.

[0064] In the present context, it is shown that so-called flat trajectories, i.e., trajectories which can be continuously differentiated a sufficient number of times depending on the concrete design of the lifting device, are effective against (load) swinging and/or pendulum movements. This approach is based on the fact that a lifting device 1 as shown in FIG. 1 is a “flat system” in the control engineering sense. Flat systems are known to have a so-called flat output.

[0065] Flat outputs and their derivatives allow, in the case of a flat system such as the lifting device 1 under consideration, the representation (also “parameterization”) of the internal state or system variables of the flat system. The internal state or system variables of a flat system can thus be represented as functions of the flat outputs and their derivatives, which, of course, the person skilled in the art of control engineering knows about. For the suppression of swinging of a load 8 transported by a lifting device 1, the fact that (in an ideal consideration) a control system constructed with the aid of a flat output cannot excite any swinging or pendulum movements of the load is of importance at this point.

[0066] In the case of the lifting device 1 considered here, the position profiles of the load 8 along the movement directions X, Y represent flat outputs of the system “lifting apparatus” 1. Here it is shown that for the suppression of swinging and/or pendulum movements it is sufficient to specify the position profiles s.sub.x(t), s.sub.y(t) determined by the planned individual movements TE as four times continuously time-differentiable position profiles s.sub.x(t), s.sub.y(t). In this manner, swinging and/or pendulum movements can be suppressed without having to rely on measurements of the load position P.sub.Z. It should be mentioned at this point that the use of trajectories that can be continuously differentiated even more often can ensure even smoother movement profiles that are even gentler on the drives.

[0067] To ensure that the position profiles s.sub.x(t), s.sub.y(t) defined by the specified individual movements TE are actually fourfold continuously differentiable, the position profiles s.sub.x(t), s.sub.y(t) can be filtered before they are executed. However, the described fourfold differentiability can also be achieved in a manner other than filtering, for example by polynomial approaches for the specified position, velocity and/or acceleration profiles. The filtering of individual movements TE, which are available as scalar progressions, is much easier than the filtering of multidimensional profiles. This is another reason why the use of individual movements TE represents a significant advantage in the control of lifting devices 1.

[0068] The described approach for generating flat trajectories by a suitable filtering or polynomial approach can also be used in a particularly advantageous manner to comply with the kinematic constraints for the lifting device drives mentioned further above as well as the geometric limitation of the deflection angle of the load. For example, the partial movements of the load 8 are related to the movement of the running element 5 via the known pendulum equations:

[00002] x T = x L + x .Math. L ( y T - y L ) y .Math. L + g v T = x ˙ L - - y . L x .Math. L - ( y T - y L ) x ... L y .Math. L + g - ( y T - y L ) x .Math. L y .Math. L ( y .Math. L + g ) 2 a T = x .Math. L - y .Math. L x .Math. L + 2 y ˙ L x ... L - ( y T - y L ) x L ( 4 ) y .Math. L + g + 2 y ˙ L x .Math. L y ... L - 2 ( y T - y L ) x ... L y ... L - ( y T - y L ) x .Math. L y L ( 4 ) ( y .Math. L + g ) 2 + 2 ( y T - y L ) x .Math. L y ... L 2 ( y .Math. L + g ) 3

[0069] The variables x.sub.T, v.sub.T, a.sub.T here stand for the movements of the running element 5, x.sub.L and y.sub.L on the other hand for the coordinates of the load 8, whose corresponding derivatives are noted as {dot over (x)}.sub.L, {umlaut over (x)}.sub.L, custom-character, x.sub.L.sup.(4) and so on. According to the above, the given equations represent a flat parameterization of the state variables x.sub.T, v.sub.T, a.sub.T as a function of the flat outputs x.sub.L, y.sub.L. The given relationship makes it clear that specifications regarding the profiles of the coordination x.sub.L and y.sub.L have a direct effect on the movement of the running element 5.

[0070] To implement the described filtering to generate flat trajectories, for example, a suitable filter F can be used, such as a moving-average filter (MA filter). A schematic representation of such filtering is shown in FIG. 3B. In this context, FIG. 3B shows a general filter F that takes position profiles s, velocity profiles v, and acceleration profiles a, and outputs filtered position profiles {tilde over (s)}, velocity profiles {tilde over (v)}, and acceleration profiles ã. The filter F can be designed to also output time derivatives of the mentioned variables, particularly of incoming acceleration profiles. The filter F can be designed as a single-input system, and only one of the mentioned variables position s, velocity v and acceleration a can be recorded and filtered and output again. However, the filter F can also be designed as a multiple-input system and process several variables simultaneously. In a known manner, the filter F may be implemented in the control unit 12.

[0071] The filter time τ.sub.filt of a filter F implemented as an MA filter can be selected here in a particularly advantageous manner as a function of the geometry of the lifting device 1 and the pendulum equations. By selecting larger time constants, the previously planned individual movements can be filtered even more strongly and, for example, even more conservative progressions can be specified for the running element 5. By multiple filtering, individual movements TE can be generated in an extremely advantageous manner, by which kinematic constraints specified for the drives of the lifting device 1 are taken into account, such as speed, acceleration, jerk limitations.

[0072] FIG. 1 also shows the most relevant case in practice, where an obstacle 11 is located between the starting point A and the end point E. An obstacle 11 in this case can be another ship, a stack of containers 9 or any other obstacle 11. The obstacle 11 leads to the fact that no direct connection between the starting point A and the end point E, i.e., no trajectory T in the form of a straight line is possible. As will be shown in detail below, obstacles 11 can in many cases be taken into account in an advantageous manner by so-called prohibition zones V.sub.i, which enclose the obstacles 11 and which the load 8 must avoid during its movement, for example in order to avoid a collision or to ensure sufficient safety distance (the index i≥1 refers here to the number of prohibition zones V.sub.i). Accordingly, a prohibition zone V.sub.i may also be noticeably larger than an obstacle 11 encompassed by it. In an advantageous manner, a trajectory T can be designed according to the profile shown in FIG. 1 by the dashed line, i.e., substantially have a sufficiently smooth profile between starting point A and end point E, and bypass the prohibition zone V accordingly.

[0073] Depending on the field of application of the lifting device 1, various obstacles 11 may be arranged between the starting point A and the end point E. The number, type and design of the obstacles 11 plays only a subordinate role for the invention; for example, only a single obstacle 11 could be arranged, or several obstacles 11 of different sizes could be arranged, or there could be no obstacle 11 at all.

[0074] The prohibition zones V.sub.i, as well as the starting point A and the end point E, can either be defined manually by a user, e.g., via a suitable interface in the computing unit 12, or determined automatically by the computing unit 12. For this purpose, for example, a suitable laser scanning method can be used, which, for example, scans a working area 15 of the lifting device 1 and, in doing so, detects and measures obstacles 11 and transmits the determined data to the computing unit 12. Such methods are known in the prior art.

[0075] To define the prohibition zones V.sub.i, for example, an envelope of an obstacle 11 in the shape of a rectangle can be used, which completely includes the obstacle 11, as shown in FIG. 4. Here, the height H.sub.R1 of the rectangle corresponds at least to the maximum extension of the obstacle 11 in Y-direction and the width W.sub.R1 of the rectangle corresponds at least to the maximum extension of the obstacle 11 in X-direction. This is only to be understood by way of example; of course, other geometric definitions of prohibition zone V.sub.1 are also conceivable. In general, for example, a single prohibition zone V.sub.1 may enclose multiple obstacles 11. However, a finer definition of multiple prohibition zones V.sub.j may be applied, e.g., based on the specific outlines of the obstacles 11.

[0076] In the case of an obstacle 11 located between the position P.sub.Z taken on by the load 8 at the command time point t.sub.k and the new end point E.sub.n, a second individual movement TE.sub.Y2 can be planned in an advantageous manner for the second movement direction Y to move the load 8 around the obstacle 11. In the situation shown in FIG. 4, this second individual movement TE.sub.Y2 provides for a lifting operation that first raises the load 8 to the point where a collision with the obstacle 11 can be ruled out.

[0077] In a situation such as that shown in FIG. 4, the sequence in which the planned individual movements TE are executed is of decisive importance. As can be seen directly from FIG. 4, starting from the command time point t.sub.k, a lowering movement in the Y-direction by the individual movement TE.sub.Y may only be executed when a collision with the obstacle 11 can be ruled out. According to the invention, a so-called movement sequence is specified for this purpose, which determines sequence in which the specified individual movements TE are to be executed and the time points at which these individual movements TE are started.

[0078] A first possibility in this respect is to execute the planned individual movements TE at intervals from one another, i.e., to wait after executing an individual movement TE and only continue with the next individual movement TE corresponding to the movement sequence after a specified waiting time.

[0079] Specifically, a movement sequence can specify, for example, that in the situation shown in FIG. 4, first a lifting movement TE.sub.Y2 is executed in the Y-direction as an individual movement (“Hoist Up”), then the vertical individual movement TE.sub.x is executed in the X-direction (“Move Trolley”), and only then the individual movement TE.sub.Y1 is executed in the Y-direction as a lowering movement (“Hoist Down”). The waiting time between these individual movements TE.sub.X, TE.sub.Y, TE.sub.Y2 can be predefined or determined depending on the situation. For example, it is possible to wait until the individual movement TE.sub.Y2 is completed, and only after its completion to start the next individual movement TE.sub.X, either along the same movement direction X, Y or along a different movement direction X, Y. In this manner, however, time is lost due to the waiting times to be provided between the various individual movements TE.sub.X, TE.sub.Y, TE.sub.Y2. In an advantageous manner, the planned individual movements TE can also be executed overlapping in time for this reason.

[0080] Overlapping in time means here that, for example, an individual movement in the Y-direction is already started before an individual movement in the X-direction is completely finished. Such an overlap of individual movements TE can also be recorded in a movement sequence within the scope of the present invention.

[0081] In the course of determining the movement sequence in which the planned individual movements are to be executed, it is often particularly advantageous to additionally check whether a collision of the load 8 with a prohibition zone V.sub.i may occur in the profile of the resulting replanning trajectory TU.

[0082] How to proceed in this respect is shown in FIGS. 5A-5C. FIG. 5A and FIG. 5B show on the one hand acceleration, velocity and position profiles (a.sub.x, v.sub.x, s.sub.x and a.sub.y v.sub.y, s.sub.y) for the movement directions X and Y, as they can be used for replanning the movement of a load 8 according to the invention. In the situation shown, the load 8 is located to the left of an obstacle 11 at the command time point t.sub.K, as can be seen in FIG. 5C. Accordingly, the individual movements TE.sub.Y1, TE.sub.Y2 planned in the Y-direction can be adopted without restriction. Purely by a movement in Y-direction, starting from the position P.sub.z(t.sub.k), no collision can be caused.

[0083] In the X-direction, however, it can be seen that the individual movement TE.sub.Xa would lead to a collision with the obstacle 11. The individual movement TE.sub.Xa planned at the beginning (after replanning of the old, “a”) is shown in FIG. 5A by the dash-dotted progressions s.sub.xa, v.sub.xa and a.sub.xa. In combination with the lifting movement TE.sub.Y2 planned for the Y-direction, the first replanning trajectory TU.sub.a shown in FIG. 5C would result, which, however, would cause a collision with the prohibition zone V at the collision time t.sub.1X. For this reason, the individual movement TE.sub.Xa initially planned for the X-direction is not executed and instead a braking operation is performed for a specified duration T.sub.St. The braking operation corresponds to the phase with negative acceleration provided at the beginning in FIG. 5A. Based on this, a new individual movement TE.sub.Xn is planned in the X-direction, and is executed instead of the previously planned, old individual movement TE.sub.xa at the end of the braking operation.

[0084] In a particularly elegant manner, a check as to whether a collision with an obstacle is to be expected can be performed in the following manner: Before the execution of at least one planned individual movement TE, so-called collision times t.sub.iX, t.sub.iY are determined and compared with one another. The collision times t.sub.iX, t.sub.iY are to be understood as the respective time points at which the load 8 would reach a projection S.sub.i′ or S.sub.i″ of a keypoint S.sub.i derived from a prohibition zone V.sub.i placed around an obstacle 11 on the respective movement direction X, Y by the respective planned individual movements TE.sub.X, TE.sub.Y.

[0085] Preferably, such keypoints S.sub.i are, for example, the illustrated corner points of prohibition zones V.sub.i. In order to check whether an expected replanning trajectory TU would lead to a collision of the load 8 with an obstacle 11 specified in the working area 15, it can be checked in the situation shown in FIG. 5C whether the corresponding collision time t.sub.1X for the individual movement TE.sub.Xa along the X-axis lies before the corresponding collision time t.sub.1Y for the individual movement TE.sub.Y2 along the Y-axis, i.e. t.sub.iX<t.sub.iY applies (specifically transferred to FIG. 5C, the inequality would be t.sub.1X<t.sub.1Y). In this case, a collision can be concluded in the situation shown in FIG. 5C. The corresponding collision times t.sub.ix, t.sub.iy are shown in FIGS. 5A and SB.

[0086] In the procedure described, particular attention must be paid to the Y-coordinate of the load position P.sub.Z, i.e., the projection P.sub.Z″ of the load position P.sub.Z on the Y-axis. It must be taken into account whether the Y-coordinate P.sub.Z″ of the load position P.sub.Z at the beginning of an individual movement TE.sub.Y in the Y-direction is larger or smaller than the projection S.sub.i″ of the next keypoint S.sub.i in the Y-direction onto the Y-axis. In many practically relevant cases, the load position P.sub.Z at the beginning of a newly planned individual movement TE is given by the load position P.sub.Z at command time point t.sub.k, i.e., P.sub.Z(t.sub.k). If the projection S.sub.i″ of the keypoint S, closest in Y-direction to the Y-axis is smaller than the projection P.sub.Z″ of the load position P.sub.Z to the Y-axis, the condition for a collision is fulfilled exactly if vice versa t.sub.iY<t.sub.iX applies.

[0087] Individual movements TE.sub.X, TE.sub.y are often not available in analytical form. In an advantageous manner, numerical root finding methods can also be used in such cases to determine the collision times t.sub.iX, t.sub.iY, such as the well-known bisection method or Newton's method.

[0088] In practical implementation, it is often advantageous to combine both analytical and numerical methods in order to determine the collision times t.sub.iX, t.sub.iY. Such a case is described below. The acceleration profiles a.sub.x and a.sub.y are initially specified as piecewise constant as described. For these piecewise constant acceleration profiles a.sub.x and a.sub.y, the corresponding position profiles s.sub.x and s.sub.y can easily be calculated analytically. For the resulting analytical descriptions of the position profiles s.sub.x(t) and s.sub.y(t), the collision times t.sub.iX, t.sub.iY can be calculated with little effort, e.g., by determining the zeros t.sub.x0, t.sub.y0 of the functions f.sub.x(t)=s.sub.x(t)−S.sub.i′, f.sub.y(t)=s.sub.y(t)−S.sub.i″. For these zeros t.sub.x0, t.sub.y0, accordingly f.sub.x(t.sub.x0)=f.sub.y(t.sub.y0)=0 is valid by definition. Of course, the formulas f.sub.x(t) and f.sub.y(t) can also take into account the height and width of the load 8, which are usually given by the height H.sub.7 of the load receiving element 7 plus the height H.sub.9 of a container 9 in the Y-direction, as well as half the width B.sub.7 of the load receiving element 7 (typically corresponding to half the width B.sub.9 of the container 9). Depending on whether the load 8 approaches the next keypoint S.sub.i from the left, right, top or bottom, the function f.sub.x(t), for example, can be increased or decreased by half the width B.sub.9.

[0089] If the individual movements TE.sub.X, TE.sub.Y are filtered, for example by an MA filter described at the beginning, the position profiles s.sub.x(t) and s.sub.y(t) in particular are filtered to form filtered position profiles {tilde over (s)}.sub.x(t) and {tilde over (s)}.sub.y(t). For such filtered position profiles {tilde over (s)}.sub.x(t) and {tilde over (s)}.sub.y(t), the property of an MA filter can now be utilized, according to which the zeros t.sub.x0, t.sub.y determined from the function f.sub.x(t) shown above can be shifted by filtering by a maximum of the filter time τ.sub.filt of the MA filter used for filtering. Accordingly, for the case of twofold filtering, a time interval of length 2.Math.τ.sub.filt can be placed around the previously determined zeros t.sub.x0, t.sub.y0, with the zeros t.sub.x0, t.sub.y0 at the beginning of the interval at the left interval boundary. In such a time interval, a bisection procedure can now be used to search for zeros of the functions {tilde over (ƒ)}.sub.x(t)={tilde over (s)}.sub.x(t)−S′.sub.i and {tilde over (ƒ)}.sub.y(t)={tilde over (s)}.sub.y(t)−S″.sub.i. These zeros then correspond to the sought collision times t.sub.iX, t.sub.iY for the filtered position profiles {tilde over (s)}.sub.x(t) and {tilde over (s)}.sub.y(t).

[0090] Besides the described comparison of two collision times t.sub.iX, t.sub.iY, another approach for collision checking can be mentioned. Thus, initially only the collision time t.sub.iy can be calculated, which indicates when a projection of a given keypoint S.sub.i″ onto the Y-axis is reached along the Y-axis by a planned individual movement TE.sub.Y in Y-direction. This collision time ty can also be used to determine the position s.sub.x(t.sub.iy), which describes the position on the X-axis specified by the planned individual movement TE, in the X-direction at the collision time t.sub.iy.

[0091] The check whether a collision with an obstacle 11 is to be expected due to planned individual movements TE can then be performed by comparing the position s.sub.x(t.sub.iy) with the projection Si′ of the keypoint Si on the X-axis. In the specific case shown in FIG. 5A-SC, for example, a collision can be concluded if one of the conditions s.sub.x(t.sub.1y)>S.sub.1′ or s.sub.x(t.sub.2y)<S.sub.2′ is fulfilled. Compared to the procedure described above, computing time can be saved because only one collision time t.sub.iy has to be determined. This approach is indicated in FIG. 5A by the points s.sub.xa(t.sub.1y) and s.sub.xn(t.sub.1y). While s.sub.xa(t.sub.1y) is above the projection S.sub.1′ (which would lead to a collision), s.sub.xn(t.sub.1y) is below the projection S.sub.1′, with the desired effect of collision avoidance.

[0092] On the other hand, to check for a collision, it is also possible to first determine the collision time t.sub.ix, to use this collision time t.sub.ix to determine the corresponding position on the Y-axis s.sub.y(t.sub.ix), and to compare the corresponding position on the Y-axis s.sub.y(t.sub.ix) with a projection Si″ of a keypoint Si on the Y-axis. In this sense, in the case shown in FIG. 5A-5C, a condition to be met for a collision would be s.sub.y(t.sub.1x)<S.sub.1″ (not shown).

[0093] Specifically, in order to check for a possible collision of the load 8 with an obstacle 11, prior to the execution of at least one individual movement TE, in the case shown the individual movement TE.sub.X, a check as described above, a so-called “verification step”, is performed. In the verification step, the expected replanning trajectory TU in the working area 15 determined by the at least one planned individual movement TE.sub.X is determined.

[0094] If one of the above-mentioned advance calculations shows that a collision is to be expected, the individual movement TE causing the collision is not performed and instead a specified braking operation is performed along the movement direction X, Y for which the at least one non-performed individual movement TE is planned, in FIG. 5C the movement direction X. The braking operation is performed for at least the duration of a specified minimum braking time T.sub.St. After the minimum braking time T.sub.St, at least one individual movement TE that has not been executed is replanned to a new individual movement TE in a replanning step in an advantageous manner. In a further checking step with the at least one new individual movement TE, it can be checked again whether the replanning trajectory TU to be expected on the basis of the new individual movement TE leads to a collision. If no collision is detected, the newly planned individual movement TE can be executed. If, however, a collision of the load 8 with an obstacle 11 is predicted again in the preceding verification step, a specified braking operation can advantageously be performed again for at least one further minimum braking time T.sub.St. After that, a replanning step and a review step following this replanning step can be performed again.

[0095] The load 8 can also be brought to a complete standstill by repeatedly performing the braking operation described above. Further planning of individual movements TE then occurs starting from the standstill of the load 8. The possibility of using the method according to the invention to plan corresponding individual movements TE starting from the standstill of the load 8 and thus a trajectory resulting from these individual movements TE opens up the option of also planning fundamentally new trajectories T for the movement of a load 8 using the method according to the invention. If the load 8 is at standstill at the start of a movement operation and no trajectory is yet known for its movement from the starting point A to the end point E, the standstill at the starting point A can be assumed/specified as the end of a repeatedly executed braking operation and a trajectory for transferring the load 8 from standstill at the starting point A to the end point E can be planned by applying the method according to the invention.

[0096] Similar to the previously described determination of the collision times t.sub.ix, t.sub.iy, a time interval can also be specified for a braking operation in which the load 8 can be brought to a complete standstill. Specifically, the limits t.sub.k (command time point) and t.sub.k+T.sub.TE can be specified for this time interval, where T.sub.TE describes the duration of a planned individual movement TE. Within this time interval, the load 8 comes to a standstill when a braking operation is repeatedly executed, wherein the specific time point can be determined as before by a bisection method.

[0097] Although the present invention has so far been described in terms of a trajectory T in the X-Y plane E.sub.XY, it is also possible to extend it to a three-dimensional trajectory T in space. The basic method for replanning even three-dimensional trajectories T on the basis of preferably independent individual movements remains unchanged. If the load 8 is additionally moved along a third movement direction Z by the lifting device 1, at least one individual movement TE.sub.Z is also planned for the third movement direction Z in order to replan the trajectory T in accordance with the method according to the invention, which is executed in accordance with a specified movement sequence in addition to the individual movements TE.sub.X, TE.sub.Y planned for the first movement direction X and for the second movement direction Y.

[0098] For the application of the present invention in the planning of three-dimensional trajectories, it is in many cases advantageous to specify a 3D working area for constraining the movement of the load 8 instead of a two-dimensional working area 15. In contrast to a purely two-dimensional consideration, however, it may also be necessary in the 3D case to take into account the extent of an obstacle 11 as well as the extent of a load 8 in the Z direction. This may be necessary, for example, in assembly halls where obstacles 11 arranged on the walls project into the space of the assembly hall. In such cases, situations may arise in which an obstacle 11 can also be avoided by suitable lowering movements, but this can also be implemented by the method according to the invention.

[0099] Such a case is shown in FIG. 6, where, as in the previous examples, new individual movements TE.sub.X1, TE.sub.X2, TE.sub.Y1, TE.sub.Y2, TE.sub.Y3 are planned at command time point tk, starting from position P.sub.z(t.sub.k). The important case is shown that several individual movements TE.sub.X1, TE.sub.X2 are also planned in the X-direction, which is equally possible within the scope of the present invention. In FIG. 6, for example, the obstacle 11a is avoided by a lifting movement TE.sub.Y3 and the obstacle 11b is avoided by a lowering movement TE.sub.Y2. The final transfer to the end point E is performed by a final lifting movement TE.sub.Y1.

[0100] In many practical applications, it can be advantageous in this context to use optical measuring systems to detect the load position P.sub.Z or also obstacles 11, as described for example in EP 3 653 562 A1. Optical measuring systems include suitable camera systems in particular, but also laser scanners. For the purpose of monitoring obstacles 11 that change with respect to their position in the working area 15, a camera can be mounted/installed directly on the trolley of a lifting device 1. Specifically, an optical detection of obstacles can in many cases provide information about how high and at which spatial positions obstacles 11 to be avoided are located. If a change in the position of an obstacle 11 is detected, a new prohibition zone V can be derived from it and the replanning of a trajectory for the movement of a load can be performed as described. In addition to camera and/or laser scanning systems, other approaches to detecting obstacles 11 are also conceivable. In many cases, automation or logistics systems implemented in software also provide information about obstacles to be considered.

[0101] A further application for which the method of trajectory planning according to the invention is particularly suitable are so-called bulk material cranes. Due to the fact that in an advantageous embodiment of the method according to the invention quadruple differentiable flat trajectories can be planned, undesired load swinging can be excluded by principle. In the case of bulk material cranes, this feature is of particular importance, as it reliably prevents possible losses of transported bulk material. In addition, by preventing the swinging, the mechanical stress on crane structure and the danger posed by swinging loads to personnel can also be effectively reduced. In manner, a position measuring unit, which is usually required for bulk material cranes to suppress load swinging, can be dispensed with.

[0102] In the case of bulk material cranes, there is also a further advantageous application of the method according to the invention. Thus, for unloading bulk material, an unloading area can be defined in which bulk material is to be unloaded from a gripper. Using the method according to the invention, an unloading operation can then be performed as follows: First, a trajectory T is planned from the starting point A, where the gripper has been filled, to a specified end point E in the unloading area where the gripper is to be emptied. Then, during the movement of the gripper from the starting point A to the end point E.sub.n, the replanning functionality according to the invention is used to reverse the load movement in the unloading area (reversal point). This can be achieved by specifying a new end point E.sub.n, preferably located in the vicinity of the starting point A. This prevents the gripper, i.e., the load 8, from coming to a standstill during the entire unloading process and allows the unloading of the gripper to take place vertically above the unloading area during the movement. This saves time during the entire movement sequence that would otherwise be needed to stop the gripper at the original end point E and accelerate again in the opposite direction.

[0103] It is noted that the foregoing examples have been provided merely for the purpose of explanation and are in no way to be construed as limiting of the present invention. While the present invention has been described with reference to an exemplary embodiment, it is understood that the words which have been used herein are words of description and illustration, rather than words of limitation. Changes may be made, within the purview of the appended claims, as presently stated and as amended, without departing from the scope and spirit of the present invention in its aspects. Although the present invention has been described herein with reference to particular means, materials and embodiments, the present invention is not intended to be limited to the particulars disclosed herein; rather, the present invention extends to all functionally equivalent structures, methods and uses, such as are within the scope of the appended claims.