Controlling stability of mobile manipulators by selecting of one or more stabilization adjustment methods
The method for controlling mobile manipulators addresses stability issues by calculating and adjusting ZMP trajectories within the support polygon, using various stabilization techniques, ensuring stable operation in constrained spaces.
Patent Information
- Application Number
- PCT/EP2023/081087
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-08
- Publication Date
- 2025-05-15
AI Technical Summary
Mobile manipulators face challenges in maintaining stability, especially when operating in constrained spaces with high dynamic forces, which can lead to instability and tipping over.
A method for controlling mobile manipulators that involves determining the current and desired movement trajectories, calculating the Zero-Momentum Point (ZMP) trajectories, and adjusting the manipulator's configuration to ensure the ZMP remains within the support polygon, using various stabilization methods such as adjusting the center of mass, using external stabilizing devices, and dynamic arm movements.
This approach ensures the mobile manipulator remains stable and prevents tipping over during movement, even in constrained environments, by effectively managing the ZMP within the support polygon.
Smart Images

Figure EP2023081087_15052025_PF_FP_ABST
Abstract
Description
[0001] Our reference: A18790WO / CGSControlling stability of mobile manipulators by selecting of one or morestabilization adjustment methods1. FIELD OF THE INVENTIONThe invention relates to a method for controlling a mobile manipulator, a mobile manipulator, a computer program product, and a computer-readable medium.2. BACKGROUNDIn recent years, automation industry is focusing more and more on automating applications in industries with limited space. These applications often consist of combinations of transportation tasks in laboratory environments and pick & place tasks on different workplaces. A robot type, which is proposed to answer these needs, is the mobile manipulator. It combines a mobile base with an attached manipulator. Due to limited space inlaboratory environments, the requirements on the size of these robots are increasing.Especially the footprint size of the robot is in the focus for optimization. Common manipulators often comprise a heavy and large base, which may be disadvantageous whenthe robots should operate in constrained spaces. In addition to the size of the robot, theoverall time the robot needs to execute tasks has to be constantly decreased. This need leads to higher acceleration of the mobile base while navigating and while executing pick andplace tasks. A challenge that arises from these requirements, is to ensure that the robotstays stable and, for instance, does not tip over. Problems at the stability may occur withhigher dynamic forces which therefore increases the challenge to ensure the stability of therobot. Thus, there is a need for sophisticated approaches to prevent an instability of amobile manipulator.3. SUMMARY OF THE INVENTIONThe object is achieved by the present invention according to the independent claims.Preferred embodiments of the invention are provided in the dependent claims, the description and the accompanying figures. The present invention relates to a method for controlling a mobile manipulator comprising a manipulator base and at least one manipulator arm. The method comprises the step of determining a current configuration of the mobilemanipulator including a manipulator arm configuration and a manipulator base configuration. The method comprises the step of determining a desired movement trajectory of the mobile manipulator. The method comprises the step of determining a current zero-movement points, ZMP,trajectory, comprising the location of one or more current ZMP of the mobile manipulator,based on the current configuration of the mobile manipulator and the desired movement trajectory. The method comprises the step of determining a desired ZMP trajectory of the mobile manipulator, wherein each ZMP is located within a support polygon of the manipulator base. The method comprises the step of adjusting the mobile manipulator such that the current ZMP trajectory corresponds to the desired ZMP trajectory. In the method according to the present invention, the step of adjusting the mobile manipulator comprises the step of selecting a stabilization method out of a group of stabilization methods and adjust the mobile manipulator based on the selected stabilization method. Further, the step of adjusting the mobile manipulator comprises the step ofdetermining if the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory. Further, when the real ZMP trajectory of the mobile manipulator corresponds to thedesired ZMP trajectory, the method further comprises the step of executing a movementtrajectory of the mobile manipulator. Accordingly, a flexible method for stabilizing mobile manipulators using a selected one out of a group of stabilization methods, which may ensure that the mobile manipulatorstays stable and does not tip over, may be provided.The control of the external standardizing device may be performed by respective control means of the mobile manipulator. The control means may be arranged at the mobilemanipulator or at least partially outside and remote to the mobile manipulator. The controlmeans may comprise suitable computing and controlling means for controlling any elements of the mobile manipulator, for instance an orientation or extension of the manipulator arm and / or a propelling speed, acceleration or a steering of, for instance, wheels of the mobile manipulator. The control means may comprise respective sensors or detectors to determine a position, movement or acceleration of respective elements of the mobile manipulator, such as of the manipulator arm, of the manipulator base and further elements provided with the mobile manipulator. The determination of any configuration of the mobile manipulator and / or the determination or prediction of any parameters, such as the current configuration of the mobile manipulator, the desired movement trajectory, the determination of the ZMP, the current or desired ZMP trajectory and so forth, may be performed by respective computational means, which may or may not be part of control means of the mobile manipulator. The mobile manipulator may comprise one or more tools arranged at the distal end of the manipulator arm to perform respective manipulating actions, such as for instancepicking and lifting an item and transporting and placing said item at a different position.The mobile manipulator may be any kind of movable robot. “Mobile” or “movable” manipulators in this context may be understood such that the manipulator may assume different positions or locations on the ground. The position of the mobile manipulator may be accordingly changed. For instance, the mobile manipulator may move itself or is moved by respective means from a starting point to an end point via a predetermined distinct travel path. The manipulator arm may be any type of mechanical arm. The manipulator arm maycomprise multiple elements linked with each other and the mobile base to form a kinematic chain. The links of such a manipulator arm may be connected by respective joints allowing, for instance, a rotational motion or a linear translational displacement. However, it will be understood that the manipulator arm may also comprise only one stiff element linked to the manipulator base. The manipulator arm may be programmable for allowing to execute respective movements for performing different tasks. Also more than one manipulator arm may be provided. The manipulator base may essentially define the core body of the mobile manipulator,at which the manipulator arm is attached. The manipulator base may house respectivepropelling or controlling means such as the power supply, one or more motors and / or computing devices, which may be enclosed by a housing to protect the mobile manipulatorelements arranged inside from negative impacts, such as dust and moisture. Themanipulator base may define the support polygon. The support polygon may be a surface area upon which the mobile manipulator is supported or carried on the ground. The supportpolygon may comprise three, four or more edges or may have a circular, oval or of any othertwo-dimensional shape. The current configuration of the mobile manipulator may include information about the extension and / or the weight of the respective parts of the mobile manipulator. For instance,the current configuration may include information about a center of mass of each componentand / or the whole mobile manipulator. The center of mass of the mobile manipulator may comprise the masses and dimensions of the whole mobile manipulator or may only comprise masses and dimensions of individual parts. This may be, for instance, the largest parts or parts, which have the largest impact on the position of the center of mass of the mobile manipulator. The manipulator arm configuration may include an extension or orientation of the manipulator arm with respect to the manipulator base, e.g., an angle of rotation or an extension of the manipulator arm and information about the weight or item the manipulator arm carries. The manipulator base configuration may include information about the manipulator bases’ weight or the dimensions of the manipulator base, such as, for instance, the dimension of a lower base surface of the manipulator base, which may form the support polygon. Any suitable parameter concerning the center of mass of the mobile manipulator may be included. The location at which the manipulator arm is attached to the manipulator base may be fixed or may vary. The manipulator arm may be provided at any desired side of the manipulator base, for instance at a top side, a front or back side, or at one of the lateral sides of the mobile manipulator. The manipulator arm configuration may include a distinct position and / or orientation of the manipulator arm in space, such as an arm stance. The manipulator arm configuration may comprise an information about the rotational position of the manipulator arm or an extension of the manipulator arm, e.g., an extension beyond the manipulator base. The manipulator base configuration may accordingly comprise a spatial extension and a weight or weight distribution of the manipulator base. The desired movement trajectory may be a trajectory or path the mobile manipulator may take on a ground. Thus, the desired movement trajectory may be provided in anessentially horizontal two-dimensional plane. The mobile manipulator may move on theground along the desired movement trajectory from a start position to an intermediate or end- position. The desired movement trajectory may be based on one or more tasks the mobile manipulator should perform, e.g. to pick up in item at a first position and to place said item at a second position. Or the desired movement trajectory may be based on movement of the manipulator arm performing a certain task to pick up an item at a first position and to place said item the same position. The movement trajectory may comprise one or more straight movements or curved movements, or any other arbitrary geometrical movement, for instance a movement on the ground between the start position and the end-position. The desiredmovement trajectory may comprise intermediate positions, at which the mobile manipulatormay change its direction of motion. For instance, the mobile manipulator may pick up an item at a start position and move along the desired movement trajectory towards an end positionto drop said item at this end position. The mobile manipulator may accordingly continue to athird point with or without picking up the same or a different item and / or may return to its start position. A ZMP may be understood as a point at which reaction forces of a contact between mobile manipulator and the ground do not produce any moment in the horizontal direction, i.e., in a direction of a plane in which the mobile manipulator moves. This may be a direction in a plane essentially perpendicular to a direction of gravity. In a common notation, a plane in which the mobile manipulator moves, may extend in a x-y-direction and the direction of gravity is in a z-direction. The ZMP may be considered as the point where the sum of horizontal moments Mx, and My is zero. In other words, the ZMP may be defined as the reference point in the contact plane between robot and ground, for which the horizontal components of the contact moment vanish. The ZMP of the mobile manipulator may depend on the manipulator arm configuration, the manipulator base configuration, e.g. the extension of the support polygon, and the desired movement trajectory. One or more ZMP may be determined or predicted for the mobile manipulator. A determination may also be understoodas a prediction in the current disclosure. Any ZMP may depend on a configuration of themobile base and the manipulator arm including, for instance, a weight and spatial extension of said components and their respective arrangement with respect to each other. Based on the current configuration of the mobile manipulator, a current ZMP trajectory may be determined or predicted. The current ZMP trajectory may correspond to one or more predicted ZMP locations of the mobile manipulator when the mobile manipulatorwould move along the desired movement trajectory. The mobile manipulator may beconsidered stable when its predicted current ZMP are located within the support polygon. If the one or more predicted current ZMP of the mobile manipulator are arranged in the supportpolygon, the mobile manipulator may be stable such that no tipping over may occur duringthe movement along the desired movement trajectory. Thus, in the method of the present invention, the mobile manipulator may be preferably configured such that its ZMP are located in the support polygon, thus allowing for a stable movement or standstill. Accordingly, knowing the desired movement trajectory of the mobile manipulator and considering the mobile manipulators’ configuration, e.g., based on the arm configuration, a desired ZMP trajectory may be determined or predicted, which may allow for a stable movement of the mobile manipulator when moving along the desired movement trajectory ora stable reaching out of the manipulator arm and picking and placing of a weight. If themobile manipulator would move along the desired movement trajectory, and its ZMP correspond or are sufficiently close to the desired ZMP trajectory, stable movement of the mobile manipulator may be achieved. Thus, the mobile manipulator may be accordingly adjusted such that the current ZMP trajectory may correspond or may be close to the desired ZMP trajectory to achieve a stable movement of the mobile manipulator. This adjustment may be performed before or during the movement of the mobile manipulator. For different sections of the movement trajectory, different adjustments of the mobile manipulator may be provided to obtain stable configuration. The adjustment may be similarly performed when the mobile manipulator is standing still and moving just the manipulator arm. For instance, if a ZMP would lie outside or is too far away from the desired ZMP trajectory, a mobile manipulator might accordingly become unstable during movement of the manipulator base and / or manipulator arm. The selection of the respective stabilization methods may be performed manually or automatically and may consider constraints or limits of the respective method and / or the mobile manipulator. For instance, the mobile manipulator may have a distinct configurationfor which a selected stabilization method may be suited best. As an example, the mobilemanipulator may allow an omnidirectional movement including a translational and rotational movement of the manipulator base. Thus, in case one of the stabilization methods considersthis particular configuration of the mobile manipulator, it may be accordingly selected fromthe group of stabilization methods. In another example, the mobile manipulator should move through corridor and the respective stabilization method may accordingly be suitable to take this constraint into account. In other words, a stabilization method may be selected, which suits best to stabilize the mobile manipulator considering, for instance, the configuration ofthe mobile manipulator, the tasks of the mobile manipulator to be executed and / or theenvironment of the mobile manipulator. The group of stabilization methods may each comprise respective predefined controls for the manipulator, which may be stored, forinstance at respective digital storage means of the mobile manipulator. The group ofstabilization methods may comprise two or more stabilization methods. In a preferred embodiment, when the real ZMP trajectory of the mobile manipulator does not correspond to the desired ZMP trajectory, the method further comprises the steps of: selecting a different stabilization method out of the group of stabilization methods and adjust the mobile manipulator based on the selected different stabilization method, determining if the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory, and when the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory, the method further comprises the step of: executing a movement trajectory of the mobile manipulator, wherein the method preferably includes the step of: repeating the steps for adjusting the mobile manipulator based on one or more different stabilization methods of the group of stabilization methods until the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory. Thus, a particular flexible method for stabilizing the mobile manipulator may beobtained. Different approaches to stabilize the mobile manipulator may be accordinglyconsidered, and respective stabilization methods may be combined by subsequentlyselecting the respective stabilization methods. This may be particularly helpful, if onestabilization method has, for instance, reached its limits, such that no further stabilization canbe obtained by said stabilization method. Then, another stabilization method may be selected and executed to further stabilize the mobile manipulator. In a preferred embodiment, the stabilization methods are hierarchically ordered, and the selection of the stabilization method is performed according to the hierarchical order. The hierarchical order may be based on one or more preference criteria, wherein thestabilization method which has the highest preference may be accordingly selected first. Thepreference criteria may, for instance, depend on the configuration of the mobile manipulator,the tasks of the mobile manipulator to be executed and / or the environment of the mobilemanipulator. For instance, if the mobile manipulator may have a limited energy supply,respective energy-saving stabilization methods may be selected over energy consuming stabilization methods. Or, in another example, a stabilization method may be consideredhaving the highest hierarchical order because it may provide the best stabilization for themobile manipulator, which may have a certain weight or dimensions. The mobile manipulatormay comprise accordingly means to determine a suitable hierarchical order. The hierarchicalorder may be a fixed order or may be an order that could be dynamically changed.In another embodiment, the selection of the stabilization method out of the group of stabilization methods may be performed according to a mixed integer optimization problem, which may be solvable for one option out of the finite set of options using an overall cost function. In a preferred embodiment, the step of adjusting the mobile manipulator is based on afirst stabilization method comprising the step of adjusting a center of mass of the mobile manipulator including an adjustment of the manipulator arm configuration. Accordingly, an improved method for stabilizing mobile manipulators during the movement along a distinct path may be provided, which may ensure that the mobilemanipulator stays stable and does not tip over during the movement. The manipulator armconfiguration may be essentially fixed or predetermined during the movement along certainsections of the desired movement trajectory. A suitable adjustment of the mobilemanipulator, e.g. regarding the manipulator arm, may be determined and performed. The manipulator arm may be, for instance, adjusted in its orientation or position from a first position to a second position, such that a center of mass, and accordingly the ZMP of the mobile manipulator, may be shifted towards a more central position of the mobile manipulator, thus providing an increased stability. The mobile manipulator may be accordingly adjusted such that it might be no longer unstable when it would move along the desired movement trajectory. In some examples, the adjustment of the mobile manipulator may include an adjustment of the manipulator arm, e.g. a certain rotation of the arm, to shift the center of mass. Or the adjustment of the mobile manipulator may include an adjustment of an extension or reach of the manipulator arm with respect to the manipulator base to avoid a tipping over of the mobile manipulator. Further adjustments may consider the addition, removal or change of position of weight associated with the mobile manipulator. In one example of the first stabilization method, the method may comprise the stepsof determining critical points along the desired movement trajectory at which the mobile manipulator becomes instable, and may adjust the center of mass of the mobile manipulator to counteract the determined instability such that the mobile manipulator no longer becomes instable at the critical points. Thus, an efficient and reliable method for providing a stable movement of the mobile manipulator may be achieved, which may be adapted to any desired movement of the mobile manipulator. Critical points may include points or locations along the movement trajectory, at which the center of mass may change due to, for instance, picking-up additional weight or changing a stance of the mobile manipulator arm or may be points at which the mobile manipulator accelerates, breaks, or performs a change of direction. The adjustment of the center of mass may be accordingly sufficient to achieve stability of the mobile manipulator along at least parts of, preferably along the whole, movement trajectory, in particular at the critical points. The determination or prediction of critical points may also include also not only single points but also sections of the path or movement trajectory of the mobile manipulator for which the center of mass may be properly adjusted to allow a stable movement. In one example of the first stabilization method, the manipulator base may compriseone or more contact elements configured to contact a ground upon which the mobile manipulator is movable, wherein the contact elements may preferably comprise one or more wheels. Thus, a stable stand on the ground of the manipulator base during movement or standstill may be achieved. The manipulator base may comprise at least three contact elements. However, also a different number of contact elements may be provided. The support polygon may be accordingly defined by an area spanned between the contact elements contacting the ground. The ZMP may be accordingly adjusted to be located essentially in this contact area to allow a stable movement or stand of the mobile manipulator. Providing wheels may allow that the mobile manipulator could be easily steered along the ground in one or more desired directions. One or more of the wheels may be actively steerable by respective controls and propelling means of the mobile manipulator or may rotate passively. The present invention may not be limited to wheels but may also comprise any type of steerable or non-steerable elements that may allow a movement of the mobile manipulator on the ground. In one example of the first stabilization method, the step of determining the desiredmovement trajectory of the mobile manipulator may include a determination of a movement path of the mobile manipulator and / or a determination of an acceleration of the mobile manipulator. Thus, one or more of the movement paths or the acceleration of the mobile manipulator may be considered for the adjustment of the mobile manipulator. The acceleration may be defined and known in advance over the whole path, which may facilitate the adjustment of the mobile manipulator to obtain stability. However, also different parameters may be considered in advanced, such as the velocity, for instance the maximum velocity, of the mobile manipulator, which may be considered known in advance. Each of the parameters may be, for instance, considered being fixed to a certain value, such as a minimum or maximum value. In one example of the first stabilization method, the step of adjusting the center ofmass of the mobile manipulator may include an adjustment of the configuration of the manipulator arm to one or more manipulator arm configurations, wherein the manipulator arm may be preferably moved from one manipulator arm configuration to another manipulator arm configuration to adjust the center of mass of the mobile manipulator. Thus, the center of mass of the mobile manipulator may be easily adjusted in stability, for instance, without the employment of further additional weights. The adjustment may include an iterative movement of the manipulator arm to one or more different positions. The adjustment may include to move the manipulator arm to one or more fixed arm configurations. For the adjustment, the movement trajectory or path of the mobile manipulator and the acceleration along said path may be known. A respective fixed armconfiguration, which may be a pre-defined arm configuration for the whole path or for one ormore sections of the path, may be considered for the determination or calculation of the ZMP of the mobile manipulator. The adjustment of the center of mass may be performed during a movement of the mobile manipulator or may be performed at a standstill of the mobile manipulator, for instance before the mobile manipulator starts to move or between two critical points. The movement of the arm may be preferably a slow movement to avoid dynamicforce influences. The adjustment of the manipulator arm may be performed when the mobilemanipulator is in a stable resting position, for instance before it begins to move along the movement trajectory. In a preferred embodiment, the step of adjusting the mobile manipulator is based on asecond stabilization method comprising the step of adjusting a center of mass of the mobile manipulator, wherein the mobile manipulator comprises one or more variable mass elements, and wherein the step of adjusting the center of mass of the mobile manipulator includes an adjustment of the variable mass elements. Thus, the mobile manipulator could be adjusted in addition or alternatively to the adjustment of the arm configuration of the mobile manipulator, which may increase the flexibility, and which may extend the limits of the stabilizing adjustment. The variable mass elements may be positioned at different distinct positions the mobile manipulator to influence and adjust the center of mass of the mobile manipulator. The variable mass element maycomprise a fixed weight or may have a variable weight, which may be adapted. The variablemass element may be a single mass element or may comprise multiple mass elements, which may be individually adjustable. Further, also a plurality of different weights may be provided dependent on the need for adjustment of the mobile manipulator. The mass elements may be provided at any suitable position at the mobile manipulator, e.g. at an outer side of a housing, for instance at the top side or inside a housing the mobile manipulator. Themass elements may be adjusted manually by a user or automatically to one or morepositions. The mass elements may be suitably adapted to the weight or dimensions of the mobile manipulator, for instance in a way that a proper stabilization of the mobile manipulator could be achieved while avoiding unnecessary weight. In one example of the second stabilization method, the variable mass elements mayinclude one or more external mass elements that are removably arrangeable at the mobile manipulator and the step of adjusting the center of mass of the mobile manipulator mayinclude adding or removing the external variable mass elements to the mobile manipulator.Additionally or alternatively, the variable mass elements may include one or more internal mass elements that are non-removably arrangeable at different positions at the mobilemanipulator and the step of adjusting the center of mass of the mobile manipulator mayinclude varying the positions of the internal variable mass elements. Thus, a particularprecise and efficient adjustment of the center of mass may be achieved. An external mass element may be understood as a mass element that is notimmediately associated with respect to the mobile manipulator but can be added or removed, as desired. As an example, a tool or grip arranged at a distal end of the manipulator arm, e.g.at a tool center point, may grip a weight to adjust the center of mass of the mobilemanipulator. If the manipulator picks up a certain weight during his tasks, said additional weight may be accordingly considered for the adjustment of the center of mass. External mass elements may include any type of additional weights or masses, that could be conveniently added or removed manually or automatically with respect to the mobile manipulator. Contrary to this, internal mass elements may be understood as mass elements which may be more or less immediately associated with the mobile manipulator. This may include mass elements which may be fixedly or movably arranged or mounted inside or outside of a housing of the mobile manipulator. The internal mass elements may be, for instance,arranged on respective rails arranged at the mobile manipulator to allow a simple anddefined positioning of said weights. The movement of internal and external mass elements may be accordingly sensed and controlled by respective sensing and control means of the mobile manipulator. The positioning of the internal and external mass elements may be performed along any desired direction. The movement of the variable mass elements may be performed by moving the mass elements along one or more pre-defined movement trajectories with respect to the mobile manipulator. Also a combination of external and internal mass elements may be provided and the adjustment of the center of mass of the mobile manipulator may be accordingly performed based on an individual or joint adjustment of the external and internal mass elements. In a preferred embodiment, the step of adjusting the mobile manipulator is based on a third stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function: , and / or based on the following second control function: , wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory;“t” is a time; are joint states of acceleration, velocity and position of themanipulator arm; and “e” is a deviation of the real ZMP trajectory from the desired ZMPtrajectory. Thus, a flexible method for stabilizing mobile manipulators using dynamic arm movements during the movement of the mobile manipulator along a distinct path, which ensures that the mobile manipulator stays stable and does not tip over during the movement, may be provided. Consequently, a control strategy based on the ZMP criteria could be formulated. The desired ZMP trajectory may be based on the current motions of the mobile base and / or the current motions of the mobile arm. The desired ZMP trajectory may be required to respect the ZMP criteria and may have to lie inside the support polygon. Its exactlocation inside the polygon may be not restricted and may be used to optimize for furthercriteria, for instance regarding energy optimality. Using the desired ZMP trajectory as reference trajectory, a control problem may be set up. Herein, input variables, such as theacceleration of joints of the manipulator ^^̈ may be used. Thus, a control function ^ may beused to minimize the deviation of the real or current ZMP trajectory from the desired ZMP trajectory. This approach may allow for dynamic arm motions to achieve that the current ZMP trajectory corresponds to the desired ZMP trajectory. Asuitable adjustment of the mobile manipulator, e.g. regarding the manipulator arm,may be determined and performed. The manipulator arm may be, for instance, adjusted in its orientation or position from a first position to a second position, such that a center of mass, and accordingly the ZMP of the mobile manipulator, may be shifted towards a more central position of the mobile manipulator, thus providing an increased stability. The mobile manipulator may be accordingly adjusted such that it might be no longer unstable when it would move along the desired movement trajectory. The control means and controlling means may comprise respective computing means suitable to control a dynamic movement of the manipulator arm based on the respective input parameters. The manipulator arm adjustment may be performed dynamically during the movement of the mobile manipulator. The manipulator arm configuration may include a dynamic movement of the manipulator arm.In one example of the third stabilization method, the method may further comprise thestep of using “^^ , ^^̇, ^^̈” as input variables for the first control function, wherein “^^, ^^̇, ^^̈”are the initial states of position, velocity and acceleration of the mobile manipulator. The initial states may be accordingly determined by respective suitable detection or sensing means, which may be, for instance, associated with control means of the mobile manipulator. Said detection means may be the same means or different means as the detection means for determining the respective states of acceleration, velocity and position of the manipulator arm. In one example of the third stabilization method, the method further may comprise the step of using the first control function to adjust one or more of the position, velocity and acceleration of the manipulator arm to adjust the mobile manipulator such that the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory. Thus, any of the position, the velocity and / or the acceleration of the manipulator armor combinations thereof may be adjusted, which may accordingly enable a flexible stabilityadjustment of the mobile manipulator. In one example of the third stabilization method, the method may further comprise the step of obtaining from the first control function, the joint accelerations of the manipulator arm “^^̈” as an output, and executing a movement trajectory of the mobile manipulator based on that output. However, also different outputs may be obtained, such as the state of velocity “^^̇” ofthe manipulator arm or the state of position “^^” of the manipulator arm and an execution ofthe movement trajectory of the mobile manipulator may be based on that different output. In one example of the third stabilization method, after executing a movement trajectory of the mobile manipulator based on that output, the method further may comprisethe step of using the joint states of position and velocity “^^ , ^^̇” as an input for the firstcontrol function. Also different inputs may be used as an input for the first control function, such as thestate of acceleration “^^̈”of the manipulator arm. In other words, a selected one ofi.e. the joint states of acceleration, velocity and position of the manipulator arm, may be obtained as an output from the first control function and the other ones of “^^̈,^^̇,^^,” may be used as an input for the first control function. Thus, a dynamic re-adjustment of the executed trajectory, e.g. during movement of the mobile manipulator, may be achieved. The second control function, which may also be referred to as planning function, may be employed, which may improve the control of the mobile manipulator further. Based on the motion of the mobile base, a reference trajectory of the ZMP may be defined over the whole path. With the joint accelerations as input variables, an optimization problem could be formulated, which may be solved in advance. Thus, a movement of the mobile manipulator may be pre-set or planned before the mobile manipulator executes a movement along the trajectory. In one example of the third stabilization method, the method further may comprise the step of obtaining from the second control function, the desired state of the manipulator arm“(^^̈, ^^̇, ^^)des(t)” as an output.In one example of the third stabilization method, the output of the second controlfunction may be used as an input to adjust the mobile manipulator such that the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory, or the output of the second control function may be used as an input for the first control function. In other words, the result or output of the second control function may be used as standalone input or as a feed forward term for the first control function to improve the mobile manipulator control strategies disclosed herein. In a preferred embodiment, when the step of adjusting the mobile manipulator is based on the third stabilization method, the mobile manipulator comprises one or more variable mass elements, wherein the step of adjusting a center of mass of the mobile manipulator includes an adjustment of the variable mass elements, wherein the method further comprises the step of using a discrete mass parameter “mextra” as an input variable forthe first control function and / or the second control function.Thus, the additional mass may be considered in the planning and / or control of the manipulator, which may increase the influence on the manipulator motions. Thus, the mobile manipulator could be adjusted in addition or alternatively to the dynamic adjustment of the arm configuration by the additional masses, which may increase the flexibility, and which may extend the limits of the stabilizing adjustment. In a preferred embodiment, the step of adjusting the mobile manipulator is based on a fourth stabilization method comprising a dynamic movement, which is controlled based on the following first control function: , and / or, which is controlled based on the following second control function: , wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory;“t” is a time; “^, ^̇, ^”̈ are the joint states of position, velocity and acceleration of the mobilemanipulator, and “e” is a deviation of the real ZMP trajectory from the desired ZMP trajectory;and wherein the mobile manipulator comprises a tool center point, TCP, wherein the TCP is controlled to execute a TCP-trajectory according to the following function: , wherein χTCP(t) is the TCP-trajectory, and wherein the TCP-trajectory is used to determine the desired ZMP trajectory “ZMPdes(t)”. Thus, an additional option for properly controlling and stabilizing a mobile manipulator movement may be provided by considering the movement of the TCP. The path of the TCP may be given since the manipulator may pick or place an object. Thus, a respective first and / or second control function may be employed, using another constraint, namely the path of the TCP instead of or in addition to, for instance, the trajectories of the mobile base. In a preferred embodiment, the step of adjusting the mobile manipulator is based on a fifth stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function: , and / or based on the following second control function: , wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory;“t” is a time; are joint states of acceleration, velocity and position of themanipulator arm; “^^^ , ^^̇^ ,^^̈^” are a rotational position, rotational velocity and rotationalacceleration of the manipulator base, and “e” is a deviation of the real ZMP trajectory fromthe desired ZMP trajectory. The fifth stabilization method generally corresponds to the third stabilization methodwith the difference that, in addition to the joint states of acceleration, velocity and position ofthe manipulator arm a rotational position, rotational velocity and rotationalacceleration “^^^ , ^^̇^,^^̈^” of the manipulator base are considered for controlling the mobilemanipulator. Thus, any of the above noted aspects concerning any of the states ofacceleration, velocity and position of the manipulator arm likewise apply to“^^^ , ^^̇^,^^̈^”.For instance, similar to the example explained above with respect to “^^̈” of the thirdstabilization method, in one example of the fifth stabilization method, the method maycomprise the step of obtaining from the first control function, the joint rotational accelerationsof the manipulator base “^^̈^” as an output, and may execute a movement trajectory of themobile manipulator based on that output. Or, similar to the example explained above withrespect to “^^ , ^^̇” of the third stabilization method, in one example of the fifth stabilizationmethod, after executing a movement trajectory of the mobile manipulator based on that output, the method may further comprise the step of using the joint states of rotationalposition and velocity “^^^ , ^^̇^” of the manipulator base as an input for the first controlfunction. This correspondence applies likewise to any one of the examples and detailsexplained with respect to the third stabilization method. Thus, the mobile manipulator may be adjusted in addition or alternatively to the adjustment of the arm configuration of the mobile manipulator and / or the rotation of the manipulator base, which may increase the flexibility, and which may extend the limits of the stabilizing adjustment. Accordingly, the control means and controlling means may additionally comprise respective computing means suitable to control a rotation of the manipulator base based onthe respective input parameters. The manipulator arm adjustment and the rotation of themanipulator base may be performed dynamically during the movement of the mobile manipulator. A rotation of the manipulator base may be achieved by that the mobile manipulator is an omnidirectional movable mobile manipulator that allows an omnidirectional movement of the manipulator base. Thus, the mobile manipulator may be allowed to perform a transversal movement and a rotational movement at the same time. In a preferred embodiment, the step of adjusting the mobile manipulator is based on a sixth stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function: , and / or based on the following second control function: , wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory;“t” is a time; “^, ^̇, ^”̈ are the joint states of position, velocity and acceleration of the mobilemanipulator, and “e” is a deviation of the real ZMP trajectory from the desired ZMP trajectory,and wherein, when the movement of the mobile manipulator is delimited by a corridor, the first control function and / or the second control function comprise an additional constraint: , wherein “^^ , ^^̇, ^^̈” are the degrees of freedom of the position, the velocity and theacceleration of the manipulator base and “corridor” is a constraint value defined by the dimensions of the corridor the mobile manipulator is moving through. Thus, the motion of the mobile manipulator may be suitably controllable if a respective corridor should be considered for the movement of the mobile manipulator. A corridor may be understood as an area on the ground, which is delimited by certain boundaries, which the mobile manipulator should not pass. Thus, the desired movement trajectory may be necessarily located within said corridor and the mobile base may be accordingly controlled to follow the desired movement trajectory within the corridor. In other words, the movement of the mobile manipulator may be restricted in that only a certain positioning, velocity and / or acceleration of the manipulator base may be allowed. Thecorridor may delimit the movement of the manipulator on one or more sides, e.g. at twoopposing sides with a longitudinal path in between. The limitations may be achieved by respective real blocking means, such as walls. However, the corridor may also be defined virtually, such that no real blocking means are provided but that the mobile manipulator should not cross respective boundary lines or borders of the corridor. This may be useful, for instance, if a mobile manipulator works in a logistic or industrial side, wherein it should beonly allowed to move along certain paths or streets. The corridor may have any desiredshape e.g. in form of a longitudinal path, which may be straight or curved or have any other arbitrary shape. In a preferred embodiment, the step of adjusting the mobile manipulator is based on a seventh stabilization method, wherein the mobile manipulator further comprises at least one external stabilizing device and wherein the step of adjusting the mobile manipulator comprises the step of supporting of the mobile manipulator by the external stabilizing device. Accordingly, a flexible method for stabilizing mobile manipulators using an external stabilization device, which ensures that the mobile manipulator may stay stable and does not tip over, may be provided. The control of the external standardizing device may be performed by respective control means of the mobile manipulator. The control means may comprise respective computing means adapted to control a movement of the external stabilizing device based on respective input parameters such that on that the current ZMP trajectory may correspond to the desired ZMP trajectory. The manipulator arm may, for instance, be able to reach out as far as possible to have a maximum working range. Depending on the weight of the manipulator arm and / or the weight of an object arranged at a tool center point, TCP, at the distal end of the manipulator arm and its motions, the mobile manipulator may become instable and may accordingly tip over. In such a condition, the current ZMP trajectory of the mobile manipulator lies outside the support polygon. The control method of the present invention may be particularly useful for stabilizing mobile manipulators performing a stationary pick and place task. An external stabilizing device may be an element, which may allow to increase thesize of the support polygon by making contact with the environment of the mobilemanipulator. The external stabilizing device may comprise multiple elements linked with each other and the mobile base to form a kinematic chain. The external stabilizing device may be in form of a telescopic arm attached to the mobile manipulator. The links of the external stabilizing device may be connected by respective joints allowing for instance a rotational motion or a linear translational displacement. However, it will be understood that the external stabilizing device may also comprise only one stiff element linked to the manipulator base. The external stabilizing device may be programmable for allowing to execute respective movements. Also more than one external stabilizing device may be provided. The manipulator base may essentially define the core body of the mobile manipulator, at which additionally the external stabilizing device may be attached. Further additionally, the location at which the manipulator arm and / or the external stabilizing device is attached to the manipulator base may be fixed or may vary. The manipulator arm and / or the external stabilizing device may be provided at any desired side of the manipulator base, for instance at a top side, a front or back side, or at one of the lateral sides of the mobile manipulator. When the mobile manipulator is stabilized by the external stabilizing device, thesupport polygon may be additionally defined by one or more contact points of the externalstabilizing device, wherein the ZMP are adjusted to be located within the support polygon of the mobile manipulator. The support polygon may be accordingly defined by an area spanned between the contact elements contacting the ground and, when the mobile manipulator is stabilized by the external stabilizing device, also by the contact point of the external stabilizing device. The contact point may be the point, at which the external stabilizing device contacts one or more supporting surfaces in the environment of the mobile manipulator, e.g., a table, a wall, or any other support element. This contact may accordingly stabilize the mobile manipulator. Accordingly, to achieve a stable condition of the mobile manipulator, the support polygonmay be enlarged compared to the condition without the use of the external stabilizing device.The ZMP may be accordingly adjusted to be located in the support polygon to allow a stable movement or stand of the mobile manipulator during operation. In one example of the seventh stabilization method, the external stabilizing device may comprise at least one telescopic support arm, which may be activated or deactivated based on the following steps: determining the ZMP of the mobile manipulator during movement of the manipulator arm, deactivating the telescopic support arm when the ZMP of the mobile manipulator is determined to be located in the support polygon, and activating the telescopic support arm when the ZMP of the mobile manipulator is determined to be located outside of the support polygon. Thus, a flexible support method for the mobile manipulator may be provided, which may allow for a stabilization of the mobile manipulator on demand. An activation or deactivation may include an expansion or retraction of the telescopic support arm. The telescopic support arm may comprise a plurality of interconnected telescopic support arm elements, which may be moved with respect to each other in a telescopic arm like manner. The movement of the telescopic support arm elements may thus be essentially along an extension axis. The telescopic arm may be hinged at a proximal side to the manipulator base and may provide a contact with an environmental support surface at a distal side. The extension and movement of the telescopic support arm may be accordingly determined by respective sensor means and control means of the mobile manipulator, including respective motors for activating and / or deactivating the telescopic support arm. In one example of the seventh stabilization method, the external stabilizing devicemay comprise at least one support wheel, wherein the support wheel, which can be activated or deactivated, wherein the support wheel, when activated, may contact the ground and may increase the support polygon of the mobile manipulator. Thus, an additional or alternative option for stabilization may be provided. The support wheel may be similar to the propelling or driving wheels, which may move the mobile over the ground. However, the support wheel may also be configured in a completelydifferent manner. The support wheel may be actively steered or may be passively rotatable.The support wheel may be linked to the mobile manipulator base via a support wheel axle. The support wheel axle may be formed sufficiently stable to allow a stable support of the mobile manipulator and may be formed by a single stiff element or by multiple interconnectedelements, which may, for instance, operate in a telescopic arm like manner. Also more thanone support wheel may be provided. In one example of the seventh stabilization method, the control of the mobile manipulator may include the steps of: controlling the mobile manipulator in accordance with one or more stabilization methods for adjusting the mobile manipulator during the movement,and controlling the telescopic support arm and / or controlling the support wheels.Thus, a combined approach for stabilizing the mobile manipulator may be provided. The further stabilization control methods may be based on the step of adjusting the center of mass of the mobile manipulator including an adjustment of the manipulator arm configuration and / or adjusting of variable mass elements of the mobile manipulator. One or more of the above noted stabilization control approaches may be applied, and, for instance in case the above noted approaches do not sufficiently provide a stable movement of the mobile manipulator, the telescopic support arm and / or the support wheels may be accordingly controlled to further stabilize the mobile manipulator. In one example of the seventh stabilization method, the support wheel may beactivated to extend from the manipulator base to contact the ground and to increase the support polygon of the mobile manipulator. Thus, a flexible adjustment of the support polygon may be provided allowing for a respective control of the mobile manipulator to achieve stable movement. An activation may include an extension movement of the support wheel away from the manipulator base to increase the support surface or support polygon of the mobile manipulator. An activation may include an expansion of the support wheel axle, such that the contact of the support wheel with the ground may be suitably spaced apart from the manipulator base. Likewise, when it may be determined that no additional support is needed, the support wheel may be accordingly retracted again. The activation may include that the distance of the support wheel to the manipulator base, which is needed to stabilize the mobile manipulator, is determined and the support wheel may be accordingly controlled to extend to this distance and contact the ground. In one example of the seventh stabilization method, the mobile manipulator may comprise a plurality of support wheels, and a selected one of the plurality of support wheels may be selected based on the following steps: applying one or more of the stabilization methods, determining if the real ZMP trajectory of the mobile manipulator corresponds to the desired ZMP trajectory considering the selected stabilization method, and, when the real ZMP trajectory of the mobile manipulator does not correspond to the desired ZMP trajectory, the method further may comprise the steps of: determining at least one support wheel suitable to increase the support polygon such that the real ZMP trajectory of the mobilemanipulator corresponds to the desired ZMP trajectory, and activate the selected supportwheel from the plurality of the support wheels. Thus, a customized support of the mobile manipulator may be provided, which may use distinct support wheels from a plurality of support wheels. Accordingly, support wheels,which may not be suitable or less suitable than the selected support wheel, may be notactivated. This may prevent an undue extension of the footprint of the mobile manipulator. The selection of a selected one of the support wheels may be based on spatial constraints of the environment of the mobile manipulator. Or the selection may be based on one or more optimization criteria, such as the requirement to increase the support polygon only until stable movement of the mobile manipulator is achieved. Also more than one support wheel may be determined and activated. In one example of the seventh stabilization method, the activation of the support wheel may include the step of determining and setting a distinct distance the support wheel extends from the manipulator base. Hence, an unnecessary spacing of the support wheels may be prevented while a stable movement of the mobile manipulator may be achieved. The respective distance to be set may be determined and set by respective determination and control means of the mobile manipulator. This may include the determination of the extent of instability of the movable mobile manipulator based on the current and desired ZMP trajectories. The control means may additionally comprise suitable computing and controlling means for controlling any elements of the mobile manipulator, for instance an activation or deactivation of one or more external stabilizing devices. The control means may comprise respective sensors or detectors to determine a current position or movement of the respective elements. Any one of the above examples, aspects and details explained with respect to acertain stabilization method may be provided additionally or alternatively to any other one ofthe stabilization methods noted above.Further, it is noted that the above explanations regarding certain elements or advantages described with respect to the method of controlling a mobile manipulator of the present disclosure accordingly apply to the mobile manipulator described herein. Thus, a mobile manipulator, which is particularly stable during the movement may be provided. The invention further relates to a mobile manipulator, comprising a manipulator base, at least one manipulator arm, and a control means adapted to control the mobile manipulator in accordance with the method of the present disclosure. Thus, a mobile manipulator may be provided, wherein the mobile manipulator may be accordingly controllable to achieve an increased stability. It is noted that the above explanations regarding certain elements or advantages described with respect to the method of controlling a mobile manipulator of the present disclosure accordingly apply to the mobile manipulator described herein. Thus, a mobile manipulator, which is particularly stable during the movement or at standstill may be provided. In a preferred embodiment, the mobile manipulator is an autonomous mobile manipulation robot, preferably comprising more than two steerable wheels. Thus, a flexible and reliably stabilizable autonomous mobile manipulation robot is provided. This may include any type of manipulation robot, such as a mobile manipulator which may be movable over the ground. The movement of the robot along the ground and the movement of the arm may be fully or semi-automatically controlled. At least more than two steerable wheels may allow for a particular well controlled movement over the ground. The wheels may be jointly or independently propellable or steerable. The mobile manipulation robot may be an industrial robot, a logistic robot, a medical robot, a laboratory robot or any other kind of robot, working in a respective industrial, logistic, medical or laboratory environment, that may use one or more manipulation arms arranged on a movable manipulator base to execute the desired tasks. The invention further relates to a computer-program product comprising instructions, which, when executed by a computer, cause the computer to carry out and / or control any of the methods of the present disclosure. The features of the system according to the present invention may be implemented by respective suitable digital or computational means, which can include, for instance, one or more computers, apps and / or networks. The method may be at least partly computer-implemented, and may be implemented in software or in hardware, or in software and hardware. Further, the method may be carried out by computer program instructions running on means that provide data processing functions. The data processing means may be a suitable computing means, such as an electronic control module etc., which may also be a distributed computer system. The data processing means or the computer, respectively, may comprise one or more of a processor, a memory, a data interface, or the like. The invention further relates to a computer-readable medium comprising instructions which, when executed by a computer, cause the computer to carry out and / or control any of the methods of the present disclosure. Any of the computer, the computer-program product and / or the computer-readable medium may be at least part of the mobile manipulator or may be arranged remotely to the mobile manipulator. The features and advantages outlined above in the context of the system and the method similarly apply to the computer program product and the computer-readable medium described herein. Likewise, any features and advantages noted with regard to the method of to the present invention apply accordingly to the mobile manipulator of the present invention and vice versa. A computer program may be stored / distributed on a suitable medium such as an optical storage medium or a solid-state medium, supplied together with or as part of otherhardware, but may also be distributed in other forms, such as via the Internet or other wiredor wireless telecommunication systems. Further features, examples, and advantages will become apparent from the following detailed description of preferred embodiments and the accompanying figures.4. BRIEF DESCRIPTION OF THE DRAWINGSFor a better understanding of the present invention, and to illustrate its practicality, figures are provided in the following and reference is made thereto. It should be understood that the figures represent only exemplary embodiments and thus in no way limit the scope of the claimed invention. Identical or like-acting elements are indicated throughout by the same reference signs. Any reference signs in the claims should not be construed as limiting the scope of the claims. In the accompanying drawings, Figure 1 schematically illustrates a mobile manipulator according oneembodiment of the present invention in different configurations;Figure 2 is a flowchart illustrating a method for controlling a mobile manipulator according to the present invention; Figure 3 is a flowchart illustrating a method for controlling a mobile manipulator according to the present invention; Figure 4 is a flowchart illustrating a method for controlling a mobile manipulatoraccording to the present invention; Figure 5 is a flowchart illustrating a method for controlling a mobile manipulator according to the present invention; Figure 6 is a flowchart illustrating a method for controlling a mobile manipulator according to the present invention; Figure 7 is a flowchart illustrating a method for controlling a mobile manipulatoraccording to the present invention; Figure 8 is a flowchart illustrating a method for controlling a mobile manipulatoraccording to the present invention; Figure 9 is a flowchart illustrating a method for controlling a mobile manipulatoraccording to the present invention; Figure 10 schematically illustrates a mobile manipulator according to oneembodiment of the present invention; Figure 11 schematically illustrates a mobile manipulator according to oneembodiment of the present invention in different configurations.5. DESCRIPTION OF EMBODIMENTSFigure 1 depicts a mobile manipulator 1 according to the present invention. Themobile manipulator 1 comprises a manipulator base 3 and a manipulator arm 5 attached at the top side of mobile base 3. It will be understood that in different embodiments, also morethan one manipulator arm 5 may be provided and that the position of the one or moremanipulator arms 5 may vary, e.g. the manipulator arm 5 may be provided at the front or back side or at a lateral side of the of the mobile manipulator 1. The mobile manipulator arm 5 is formed as a movable arm comprising multiple arm elements which are linked together to allow a flexible movement and extension or retraction of the arm. However, it will be understood that in different environments also a stiff manipulator arm may be provided consisting for instance only of a single stiff arm element movably attached to the manipulator base 3. The manipulator arm 5 is hinged at a proximal end of the manipulator arm 5 with the mobile phase 3 and comprises a tool center point, TCP, 15 at the distal end of the manipulator arm. In the depicted embodiment, the TCP 15 is formed as a gripper to allow a grip of an external item or load. The manipulator base 3 comprises contact elements 9 in form of wheels to contact the floor 11. Thus, the mobile manipulator 1 may be moved along the floor 11. During movement of the mobile manipulator 1, the manipulator arm 5 is essentially in a fixed condition. However, along the movement trajectory, different fixed arm positions may be provided. For instance, when the mobile manipulator 1 moves along a certain movement trajectory comprising multiple tracks, a distinct arm position may be assumed, as shown in the left sub-figure A), at a first movement path section. A differentdistinct arm position, as shown in the right sub-figure B), may be accordingly provided at asecond first movement path section. In sub-figure A), the mobile manipulator 1 moves towards the left side, as depicted by arrow 50. In sub-figure B), the mobile manipulator onemoves towards the right side, as depicted by arrow 50. The mobile manipulator 1 may bemoved along a predefined movement trajectory. The mobile manipulator 1 further comprises a mass element 13, arranged at the top surface of the manipulator base 3. However, in different embodiments of the present invention, no additional mass elements are provided. As shown, the mass element 13 can be located at different positions with respect to the manipulator base 3. For instance, as shown in the sub-figure A), the mass element 13 is arranged at the right side of the manipulator base 3, close to the proximal side of the manipulator arm 5 at which it is attached to the manipulator base 3. It will be understood that in different embodiments also more than onemass element 13 may be provided and that the position of the one or more mass elements13 may vary. Further, as shown in the sub-figure B), the mass element 13 is arranged at the left side of the manipulator base 3, spaced from the proximal side of the manipulator arm 5 to counteract a shift of the center of mass by the depicted manipulator arm configuration. As shown in the sub-figures A) and B), the movable arm manipulator arm 5 may have different orientations with respect to the manipulator base 3. The orientations of the manipulator arm 5 may be set and controlled by the control means 7 of the mobile manipulator. In the depicted embodiment, the control means 7 is arranged at the mobile manipulator 1. However, it will be understood that in different embodiments, the control means 7 can also be arranged at least partially outside of or remote from the mobile manipulator 1. The control means 7 may comprise suitable sensing, computing and controlling means for controlling the elements of the mobile manipulator 1, forinstance an orientation of the manipulator arm 5 or a propelling speed, acceleration anddirection of the wheels. Dependent on the configuration of the manipulator arm 5, the center of mass of the mobile manipulator 1 changes. For instance, due to the manipulator arm configuration, the center of mass of the mobile manipulator 1 of the sub-figure B) is shifted more to the right compared to the center of mass of the manipulator 1 of the sub-figure A) because the manipulator arm 5 in sub-figure B) extends further beyond and away from the manipulator base 3 compared to the configuration of the sub-figure A). As noted above, this is counteracted by the positioning of the mass element 13. In a different embodiment, a center of mass may be shifted by changing only a manipulator arm configuration, e.g. a position of the manipulator arm 5. When the center of mass is shifted too far, the mobile manipulator 1 may be in an unstable condition such that a tipping of the mobile manipulator 1 may occur. This may be counteracted, for instance, by controlling the orientation of the manipulator arm 5 to one or more proper positions. Thus, when the mobile manipulator 1 moves along the predefined movement trajectory, for instance along different distinct paths of an industrial, scientific or medical site, the manipulator arm 5 may be controlled according to the present invention to assume different configurations to maintain stable condition during movement. This may include to set a first arm configuration at a first travel path or section and to set a different a second configuration at a second travel path or section. Further, a computer-program product 200 and a computer-readable medium 300 are shown, each comprising instructions, which, when executed by a computer 100, cause thecomputer 100 to carry out and / or control the method of any embodiments of the presentinvention, in particular the method as illustrated in Figures 2 and 3. In the depicted embodiment, the computer 100, the computer-program product 200 and the computer- readable medium 300 are depicted as external elements. However, it will be understood that in different embodiments, any of the computer 100, the computer-program product 200 and the computer-readable medium 300 may be at least partly integrated in the mobile manipulator 1. Figure 2 depicts a flowchart illustrating a method for controlling a mobile manipulator1 according to an embodiment of the present invention. In step S1a of the depictedembodiment, a desired movement trajectory of the mobile base 3 or the mobile manipulator 1is determined. In step S2a of the depicted embodiment, based on the desired movementtrajectory, the desired ZMP trajectory of the mobile base 3 or the mobile manipulator 1 is chosen or determined. As shown in step S3a, optimization criteria may be introduced to improve the overall performance of the mobile manipulator 1. Such optimization criteria may be any suitable criteria for optimizing a mobile manipulator action such as, for instance, therequirement to employ the lowest possible acceleration or the highest possible speed or toreduce the power consumption of the mobile manipulator 1. In step S4a, which is explained in greater detail further below, the ZMP trajectory is used as input for the definition of the motion of the mobile manipulator 1 to exploit the redundant degrees of freedom. The free degrees of freedom can be accordingly used to keep the current ZMP trajectory of the mobile manipulator 1 on the desired ZMP trajectory of the mobile manipulator 1. Figure 3 depicts a flowchart illustrating a method for controlling a mobile manipulator1 according to an embodiment of the present invention. As depicted, the steps S1a to S3acorrespond to the steps S1a to S3a of Figure 2, wherein the output of steps S1a to S3a forman input for the following steps. In figure 3 denoted as “approach”, the step S4a of figure 2 isexplained in greater detail. Herein, the output of step S2a is used as an input for step S5a,wherein in step S5a the current or real ZMP trajectory of the mobile manipulator 1 isdetermined or predicted. Based on that determination, it is determined or predicted in step S6a, whether the current ZMP trajectory is a stable trajectory which corresponds or is close to the desired ZMP trajectory of the mobile base. If the answer is “yes”, the trajectory isexecuted in step S7a. If the answer is “no”, points of the desired movement trajectory of the mobile manipulator 1 for which the ZMP do not correspond to the desired that ZMP trajectory are determined or predicted in step S8a. In step S9a, the end effector and / or a manipulator arm and / or additional masses may then be accordingly adjusted or moved such that their changed position counteracts the criticality regarding a tipping or instable movement of the mobile manipulator 1 at the defined points. Thus, the center of mass of the mobile manipulator 1 is accordingly adjusted by the respective movement of the manipulator arm 5 to avoid an unstable condition of the mobile manipulator 1 at the calculated critical points. Subsequently, in step S10a, it is determined or predicted whether the limits of a movement of the manipulator arm or the additional masses are reached. The answer is “no”, the method returns to step S5a, wherein the current ZMP trajectory of the mobile manipulator 1 is determined or predicted based on the adjusted setting. If the answer is “yes”, further additional masses may be added to the mobile manipulator to overcome an instability. Then, the method returns to step S5a, wherein the current ZMP trajectory of the mobile manipulator 1 is determined or predicted based on the adjusted setting. Figure 4 depicts a flowchart illustrating a method for controlling a mobile manipulator1 according to an embodiment of the present invention. As depicted, the steps S1b to S3bcorrespond to the steps S1a to S3a of Figure 2, wherein the output of steps S1b to S3b forman input (S5b) for the following steps. In figure 4, denoted as “approach” (cf. S8b), oneembodiment of the step S4a of figure 2 is explained in greater detail. Herein, the output ofstep S2b is used as an input for step S6b, wherein in step S6b the current or real ZMPtrajectory of the mobile manipulator 1 is determined or predicted. A dynamic manipulator arm movement may be accordingly provided, which is controlled by the following first control function: ,wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory; “t” is atime; are joint states of acceleration, velocity and position of the manipulator arm;and “e” is a deviation of the real ZMP trajectory from the desired ZMP trajectory.From the first control function described in step S6b, the joint accelerations of the manipulator arm 5 “^^̈” may be obtained as an output. Based on that output a movement trajectory of the mobile manipulator 1 is executed in step S7b. After executing the movement trajectory of the mobile manipulator 1 based on that output, the remaining states of positionand velocity “^^ , ^^̇”are used as an input for the first control function of step S6b. In adifferent embodiment, different outputs may be obtained, such as the state of velocity “^^̇” ofthe manipulator arm 5 or the state of position “^^” of the manipulator arm 5 and an executionof the movement trajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as an input for the first control functionof step S6b, such as the state of acceleration “^^̈”of the manipulator arm. As depicted, “^^,^^̇, ^^̈”, which are the initial states of position, velocity and acceleration of the mobilemanipulator 1 are used as further input variables for the first control function of step S6b.In figure 5, another embodiment for controlling a mobile manipulator 1 is depicted.Herein, the steps S1b to S3b correspond to the steps S1a to S3a of figure 2 and steps S1bto S3b of figure 4, and the output of steps S1b to S3b forms an input (cf. S5b denoted as“input”) for the following steps. In figure 5, denoted as “approach” (cf. S10b), oneembodiment of the step S4a of figure 2 is explained in greater detail. Herein, the output ofstep S2b is used as an input for step S9b, wherein in step S9b, the current or real ZMPtrajectory of the mobile manipulator 1 is determined or predicted. A dynamic manipulator armmovement may be accordingly provided, which is controlled by the following second control function of step S9b, which may be also referred to as planning function: , From the second control function of step S9b, the desired state of the manipulatorarm 5 “(^^̈, ^^̇, ^^)des(t)” can be obtained as an output. As depicted, “^^, ^^̇, ^^̈”, which arethe initial states of position, velocity and acceleration of the mobile manipulator 1 are used asfurther input variables for the second control function S9b. Furthermore, a discrete mass parameter “mextra” can be used as an input variable for the second control function of step S9b. In a different embodiment, no discrete mass parameter “mextra” is used as an input variable for the second control function of step S9b. The output of the second control functionof step S9b may optionally also be used as an input for a subsequent control approach (cf.S13b, denoted as “control (optional)”). Herein, the first control function of step S11b basicallycorresponds to the first control function of step S6b of figure 4. As depicted, “^^, ^^̇, ^^̈”,which are the initial states of position, velocity and acceleration of the mobile manipulator 1are used as further input variables for the first control function of step S11b. Furthermore, a discrete mass parameter “mextra” can be used as an input variable for the first control function of step S11b. In a different embodiment, no discrete mass parameter “mextra” is used as an input variable for the first control function of step S11b. Similar to the control approach of figure 4 (cf. S8b), from the first control functiondescribed in step S11b, the joint accelerations of the manipulator arm 5 “^^̈” may be obtained as an output. Based on that output a movement trajectory of the mobile manipulator 1 is executed in step S12b. After executing the movement trajectory of the mobilemanipulator 1 based on that output, the remaining states of position and velocity “^^ , ^^̇”areused as an input for the first control function of step S11b. In a different embodiment,different outputs may be obtained, such as the state of velocity “^^̇” of the manipulator arm 5or the state of position “^^ ” of the manipulator arm 5 and an execution of the movementtrajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as an input for the first control function of step S11b, suchas the state of acceleration “^^̈”of the manipulator arm 5.The control approach depicted in figure 6 basically corresponds to the controlapproach depicted in figure 5 with the difference that for the input (cf. S14b), the trajectory ofa TCP is used (cf. S15b) for the determination or choice of the desired ZMP trajectory(S16b). In figure 6, denoted as “approach” (cf. S17b), one embodiment of the step S4b offigure 2 is explained in greater detail. Herein, the output of step S16b is used as an input forstep S18b, wherein in step S18b the current or real ZMP trajectory of the mobile manipulator1 is determined or predicted. Contrary to the previous approach of figure 5, not only the movement of the manipulator arm is considered but the movement of the whole manipulator, including a movement of the manipulator arm 5 and the manipulator base 3. Thus, a movement may be accordingly provided, which is controlled by the following second control function of step S18b, which may be also referred to as planning function: , Different to the second control function of step S9b of figure 5, the TCP is controlledto execute a TCP-trajectory, according to the following function: ,wherein “^, ^̇, ^”̈ are the joint states of position, velocity and acceleration of the mobilemanipulator 1, and wherein χTCP(t) is the TCP-trajectory, and wherein the TCP-trajectory is used to determine the desired ZMP trajectory “ZMPdes(t)”. From the second control function of step S18b, the desired state of the mobilemanipulator 1 “(^̈, ^,̇ ^)des(t)” can be obtained as an output. As depicted, “^^, ^^̇, ^^̈”, whichare the initial states of position, velocity and acceleration of the mobile manipulator 1 areused as further input variables for the second control function S18b. In a different embodiment, a discrete mass parameter “mextra” may be additionally used as an inputvariable for the second control function of step S18b (cf. Fig. 5). The output of the secondcontrol function of step S18b may optionally also be used as an input for a subsequentcontrol approach (cf. S19b, denoted as “control (optional)”), wherein in step S20b the currentor real ZMP trajectory of the mobile manipulator 1 is determined or predicted. Herein, a dynamic manipulator movement may be provided, which is controlled by the following first control function: ,wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory; “t” is atime; “^, ^,̇ ^̈” are the joint states of position, velocity and acceleration of the mobilemanipulator 1 and “e” is a deviation of the real ZMP trajectory from the desired ZMPtrajectory. Herein, the first control function of step S20b basically corresponds to the first controlfunction of step S6b of figure 4 and S11b of figure 5 with the difference that, the TCP iscontrolled to execute a TCP-trajectory, according to the following function: . As depicted, “^^, ^^̇, ^^̈”, which are the initial states of position, velocity andacceleration of the mobile manipulator 1 are used as further input variables for the firstcontrol function of step S20b. In a different embodiment, a discrete mass parameter “mextra”may be additionally used as an input variable for the first control function of step S20b (cf.Fig.5).Similar to the control approaches of figure 4 (cf. S8b) and figure 5 (cf. S13b), fromthe first control function described in step S20b, the joint accelerations of the mobilemanipulator 1 “^"̈ may be obtained as an output. Based on that output a movement trajectoryof the mobile manipulator 1 is executed in step S21b. After executing the movement trajectory of the mobile manipulator 1 based on that output, the remaining states of positionand velocity “^, ^”̇ of the mobile manipulator 1 are used as an input for the first controlfunction of step S20b. In a different embodiment, different outputs may be obtained, such asthe state of velocity “^”̇ of the mobile manipulator 1 or the state of position “^" of the mobilemanipulator 1 and an execution of the movement trajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as an inputfor the first control function of step S20b, such as the state of acceleration ”^̈” of the mobilemanipulator 1. Figure 7 depicts a flowchart illustrating a method for controlling a mobile manipulator1 according to an embodiment of the present invention. As depicted, the steps S1c to S3ccorrespond to the steps S1a to S3a of Figure 2, wherein the output of steps S1c to S3c forman input (S5c) for the following steps. In figure 7, denoted as “approach” (cf. S8c), oneembodiment of the step S4a of figure 2 is explained in greater detail. Herein, the output ofstep S2c is used as an input for step S6c, wherein in step S6c the current or real ZMPtrajectory of the mobile manipulator 1 is determined or predicted. A dynamic manipulator arm movement may be accordingly provided, which is controlled by the following first control function: ,wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory; “t” is atime; “^^̈,^^̇,^^ ,” are joint states of acceleration, velocity and position of the manipulator arm5; “^^^ , ^^̇^ ,^^̈^” are a rotational position, rotational velocity and rotational acceleration of themanipulator base 3, and “e” is a deviation of the real ZMP trajectory from the desired ZMPtrajectory. From the first control function described in step S6c, the joint accelerations of themanipulator arm 5 “^^̈” and / or the rotational acceleration “^^̈^” may be obtained as anoutput. Based on that output, a movement trajectory of the mobile manipulator 1 is executed in step S7c. After executing the movement trajectory of the mobile manipulator 1 based onthat output, the remaining states of position and velocity “^^ , ^^̇” and / or the rotationalposition and velocity “^^^ , ^^̇^” of the manipulator base 3 are used as an input for the firstcontrol function of step S6c. In a different embodiment, different outputs may be obtained,such as the state of velocity “^^̇” of the manipulator arm 5 or the state of position “^^” of themanipulator arm 5 and an execution of the movement trajectory of the mobile manipulator 1 may be based on that different output. Likewise, in a different embodiment, different outputsmay be obtained, such as the rotational velocity “^^̇^” of the manipulator base 3 or therotational position “^^^” of the manipulator base 3 and an execution of the movementtrajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as an input for the first control function of step S6c, such asthe state of acceleration “^^̈”of the manipulator arm 5 and / or the rotational acceleration“^^̈^”of the manipulator base 3. As depicted, “^^, ^^̇, ^^̈”, which are the initial states ofposition, velocity and acceleration of the mobile manipulator 1 are used as further inputvariables for the first control function of step S6c. In figure 8, another embodiment for controlling a mobile manipulator 1 is depicted.Herein, the steps S1c to S3c correspond to the steps S1a to S3a of figure 2 and the stepsS1c to S3c of 7, and the output of steps S1c to S3c forms an input (cf. S5c denoted as“input”) for the following steps. In figure 8, denoted as “approach” (cf. S10c), oneembodiment of the step S4a of figure 2 is explained in greater detail. Herein, the output ofstep S2c is used as an input for step S9c, wherein in step S9c, the current or real ZMPtrajectory of the mobile manipulator 1 is determined or predicted. A dynamic manipulator armmovement and / or a rotational movement of the manipulator base 3 may be accordinglyprovided, which is controlled by the following second control function of step S9c, which may be also referred to as planning function: . From the second control function of step S9c, the desired state of the manipulator arm 5“(^^̈, ^^̇, ^^,^^̈^,^^̇^ ,^^^ ) des(t)” can be obtained as an output. As depicted, “^^, ^^̇, ^^̈”, whichare the initial states of position, velocity and acceleration of the mobile manipulator 1 are used as further input variables for the second control function S9c. Furthermore, a discrete mass parameter “mextra” can be used as an input variable for the second control function of step S9c. In a different embodiment, no discrete mass parameter “mextra” is used as an input variable for the second control function of step S9c. The output of the second control functionof step S9c may optionally also be used as an input for a subsequent control approach (cf.S13c, denoted as “control (optional)”). Herein, the first control function of step S11c basicallycorresponds to the first control function of step S6c of figure 7. As depicted, “^^, ^^̇, ^^̈”,which are the initial states of position, velocity and acceleration of the mobile manipulator 1are used as further input variables for the first control function of step S11c. Furthermore, adiscrete mass parameter “mextra” can be used as an input variable for the first control functionof step S11c. In a different embodiment, no discrete mass parameter “mextra” is used as aninput variable for the first control function of step S11c. Similar to the control approach of figure 7 (cf. S8c), from the first control functiondescribed in step S11c, the joint accelerations of the manipulator arm 5 “^^̈” and / or therotational acceleration “^^̈^”of the manipulator base 3 may be obtained as an output. Basedon that output a movement trajectory of the mobile manipulator 1 is executed in step S12c. After executing the movement trajectory of the mobile manipulator 1 based on that output,the remaining states of position and velocity “^^ , ^^̇” and / or the rotational position andvelocity “^^^ , ^^̇^” are used as an input for the first control function of step S11c. In adifferent embodiment, different outputs may be obtained, such as the state of velocity “^^̇” ofthe manipulator arm 5 or the state of position “^^” of the manipulator arm 5 and an executionof the movement trajectory of the mobile manipulator 1 may be based on that differentoutput. Likewise, in a different embodiment, different outputs may be obtained, such as therotational velocity “^^̇^” of the manipulator base 3 or the rotational position “^^^” of themanipulator base 3 and an execution of the movement trajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as aninput for the first control function of step S11c, such as the state of acceleration “^^̈”of themanipulator arm 5 and / or the rotational acceleration “^^̈^”of the manipulator base 3.The control approach depicted in figure 9 basically corresponds to the controlapproach depicted in figure 8 with the difference that in figure 9 the movement is restrictedby spatial constraint such as a corridor. In figure 9, denoted as “approach” (cf. S17c), oneembodiment of the step S4a of figure 2 is explained in greater detail. Herein, the output ofstep S16c is used as an input for step S18c, wherein in step S18c the current or real ZMPtrajectory of the mobile manipulator 1 is determined or predicted. Contrary to the previous approach of figure 8, not only the movement of the manipulator arm is considered but the movement of the whole manipulator, including a movement of the manipulator arm 5 and the manipulator base 3. Thus, a movement may be accordingly provided, which is controlled by the following second control function of step S18c, which may be also referred to as planning function: ,Different to the second control function of step S9c of figure 8, when the movement of themobile manipulator is delimited by a corridor, the second control function comprise an additional constraint: ,wherein “^^ , ^^̇, ^^̈” are the degrees of freedom of the position, the velocity and theacceleration of the manipulator base 3 and “corridor” is a constraint value defined by the dimensions of the corridor the mobile manipulator 1 is moving through. From the second control function of step S18c, the desired state of the mobilemanipulator 1 “(^̈, ^,̇ ^)des(t)” can be obtained as an output. As depicted, “^^, ^^̇, ^^̈”, whichare the initial states of position, velocity and acceleration of the mobile manipulator 1 areused as further input variables for the second control function S18c. In a different embodiment, a discrete mass parameter “mextra” may be additionally used as an inputvariable for the second control function of step S18c (cf. Fig. 8). The output of the secondcontrol function of step S18c may optionally also be used as an input for a subsequentcontrol approach (cf. S19c, denoted as “control (optional)”), wherein in step S20c the currentor real ZMP trajectory of the mobile manipulator 1 is determined or predicted. Herein, a dynamic manipulator movement could be provided, which is controlled by the following first control function: ,wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMP trajectory; “t” is atime; “^, ^,̇ ^̈” are the joint states of position, velocity and acceleration of the mobilemanipulator 1 and “e” is a deviation of the real ZMP trajectory from the desired ZMPtrajectory.Herein, the first control function of step S20c basically corresponds to the first controlfunction of step S6c of figure 7 and S11c of figure 8 with the difference that, when themovement of the mobile manipulator 1 is delimited by a corridor, the first control function comprise the additional constraint: . As depicted, “^^, ^^̇, ^^̈”, which are the initial states of position, velocity andacceleration of the mobile manipulator 1 are used as further input variables for the firstcontrol function of step S20c. In a different embodiment, a discrete mass parameter “mextra”may be additionally used as an input variable for the first control function of step S20c (cf.Fig.8). Similar to the control approaches of figure 7 (cf. S8c) and figure 8 (cf. S13c), from thefirst control function described in step S20c, the joint accelerations of the mobile manipulator1 “^̈" may be obtained as an output. Based on that output a movement trajectory of themobile manipulator 1 is executed in step S21c. After executing the movement trajectory of the mobile manipulator 1 based on that output, the remaining states of position and velocity“^, ^”̇ of the mobile manipulator 1 are used as an input for the first control function of stepS20c. In a different embodiment, different outputs may be obtained, such as the state ofvelocity “^”̇ of the mobile manipulator 1 or the state of position “^" of the mobile manipulator 1and an execution of the movement trajectory of the mobile manipulator 1 may be based on that different output. Accordingly, also different inputs may be used as an input for the firstcontrol function of step S20c, such as the state of acceleration ”^̈” of the mobile manipulator1. Figure 10 depicts a mobile manipulator 1 according to the present invention. Themobile manipulator 1 comprises a manipulator base 3 and a manipulator arm 5 attached at the top side of mobile base 3. It will be understood that in different embodiments, also more than one manipulator arm 5 may be provided and that the position of the one or more manipulator arms 5 may vary, e.g. the manipulator arm 5 may be provided at the front or back side or at a lateral side of the of the mobile manipulator 1. The mobile manipulator arm 5 is formed as a movable arm comprising multiple arm elements which are linked together to allow a flexible movement and an extension or retraction of the arm. However, it will be understood that in different environments also a stiff manipulator arm may be provided consisting, for instance, only of a single stiff arm element movably attached to the manipulator base 3. The manipulator arm 5 is hinged at a proximal end of the manipulator arm 5 with the mobile phase 3 and comprises a TCP 15 at the distal end of the manipulator arm 5. In the depicted embodiment, the TCP 15 is formed as a gripper to allow a grip and lift of an external mass element or load 13. The manipulator base 3 comprises contact elements 9 in form of wheels to contact the floor 11. Thus, the mobile manipulator 1 may be moved along the floor 11 along a predefined movement trajectory. The mobile manipulator 1 further comprises an external stabilizing device in form of a telescopic arm 17. In the depicted configuration, the telescopic arm 17 extends from the front side of the manipulator base 3 and contacts a wall of a support platform, upon which the mass element 13 is arranged. Accordingly, when the mobile manipulator arm 5 picks up the mass element 13, the mobile manipulator 1 is stabilized by the telescopic arm 17 and therefore does not tip over. The orientations of the manipulator arm 5 and / or the telescopic arm 17 may be set and controlled by the control means 7 of the mobile manipulator 1. In the depicted embodiment, the control means 7 is arranged at the mobile manipulator 1. However, it will be understood that in different embodiments, the control means 7 can also be arranged at least partially outside of or remote to the mobile manipulator 1. The control means 7 may comprise suitable sensing, computing and controlling means for controlling the elements of the mobile manipulator 1. This may include, for instance, the control of an orientation of the manipulator arm 5 and / or the telescopic arm 17 or a propelling speed, acceleration and direction of movement of the wheels. Dependent on the configuration of the manipulator arm 5 and / or the telescopic arm 17, the center of mass of the mobile manipulator 1 changes. For instance, in the depicted embodiment, due to the manipulator arm configuration, the center of mass of the mobile manipulator 1 is shifted to the right because the manipulator arm 5 extends beyond and away from the manipulator base 3. As noted above, this can be counteracted by the contact of the telescopic arm 17, which accordingly increases the support surface of the mobile manipulator 1. Further, a computer-program product 200 and a computer-readable medium 300 are shown, each comprising instructions, which, when executed by a computer 100, cause the computer 100 to carry out and / or control the method of any embodiments of the present invention, in particular the method as illustrated in Figure 2. In the depicted embodiment, the computer 100, the computer-program product 200 and the computer-readable medium 300are depicted as external elements. However, it will be understood that in different embodiments, any of the computer 100, the computer-program product 200 and the computer-readable medium 300 may be at least partly integrated in the mobile manipulator 1. Figure 11 depicts a different embodiment of the mobile manipulator 1. In thisembodiment, the same elements of the mobile manipulator 1 as described for theembodiment of figure 10 are provided and it is accordingly referred thereto, with thedifference that, instead of the telescopic arm 17, additional support wheels 19 are provided. When the mobile manipulator 1 becomes unstable, for instance due to a shift of the center of mass caused by a respective extension of the manipulator arm 5 to the right beyond the manipulator base 3, the support wheels 19 may be activated. Thus, the support polygon of the mobile manipulator 1 could be increased and the mobile manipulator one could be accordingly stabilized. In the sub-figure A), the support wheels 19 comprise one degree of freedom, namely the extension of the wheels away from the manipulator base 3. Thus, a respective distance of the support wheels 19 to the mobile manipulator 1 can be defined. In the sub-figure B), the support wheels 19 comprise two degrees of freedom, namely the extension of the wheels away from the manipulator base 3 and a height of the support wheels 19 with respect to the ground 11. Thus, the support wheels 19 may be accordingly adjusted in two dimensions. It will be understood that the method according to the present invention is not limited to the above noted order of method steps. Quite to the contrary, the method steps may be also provided in a different order and one or more of the above noted method steps may be removed or further method steps may be added, as desired.
[0002] LIST OF REFERENCE SIGNS1 mobile manipulator3 manipulator base5 manipulator arm7 control means9 contact elements11 ground13 mass elements15 tool center point17 telescopic arm19 support wheel50 movement of mobile base100 computer200 computer program product300 computer readable mediumS1 to S21 method steps
Claims
CLAIMS 1. A method for controlling a mobile manipulator (1) comprising a manipulator base(3) and at least one manipulator arm (5), the method comprising the steps of: Determining a current configuration of the mobile manipulator (1) including a manipulator arm configuration and a manipulator base configuration, Determining a desired movement trajectory of the mobile manipulator (1), Determining a current zero-movement points, ZMP, trajectory, comprising thelocation of one or more current ZMP of the mobile manipulator (1), based on thecurrent configuration of the mobile manipulator (1) and the desired movement trajectory, Determining a desired ZMP trajectory of the mobile manipulator (1), wherein each ZMP is located within a support polygon of the manipulator base (3), Adjusting the mobile manipulator (1) such that the current ZMP trajectory corresponds to the desired ZMP trajectory, wherein the step of adjusting the mobile manipulator (1) comprises the following steps: Selecting a stabilization method out of a group of stabilization methods and adjust the mobile manipulator (1) based on the selected stabilization method, Determining if the real ZMP trajectory of the mobile manipulator (1) corresponds to the desired ZMP trajectory, and when the real ZMP trajectory of the mobile manipulator (1) corresponds to the desired ZMP trajectory, the method further comprises the step of: Executing a movement trajectory of the mobile manipulator (1).
2. The method according to the preceding claim,wherein, when the real ZMP trajectory of the mobile manipulator (1) does not correspond to the desired ZMP trajectory, the method further comprises the steps of: Selecting a different stabilization method out of the group of stabilization methods and adjust the mobile manipulator (1) based on the selected different stabilization method, Determining if the real ZMP trajectory of the mobile manipulator (1) corresponds to the desired ZMP trajectory, andwhen the real ZMP trajectory of the mobile manipulator (1) corresponds to the desired ZMP trajectory, the method further comprises the step of: Executing a movement trajectory of the mobile manipulator (1), wherein the method preferably includes the step of: Repeating the steps for adjusting the mobile manipulator (1) based on one or more different stabilization methods of the group of stabilization methods until the real ZMP trajectory of the mobile manipulator (1) corresponds to the desired ZMP trajectory.
3. The method according to one of the preceding claims,wherein the stabilization methods are hierarchically ordered, and wherein the selection of the stabilization method is performed according to the hierarchical order.
4. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a first stabilization method comprising the step of adjusting a center of mass of the mobile manipulator (1) including an adjustment of the manipulator arm configuration.
5. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a second stabilization method comprising the step of adjusting a center of mass of the mobile manipulator (1), wherein the mobile manipulator (1) comprises one or more variable mass elements (13), and wherein the step of adjusting the center of mass of the mobile manipulator (1) includes an adjustment of the variable mass elements (13).
6. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a third stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function:, and / or based on the following second control function:, wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMPtrajectory; “t” is a time; “^^̈,^^̇,^^ ,” are joint states of acceleration, velocity andposition of the manipulator arm (5); and “e” is a deviation of the real ZMPtrajectory from the desired ZMP trajectory.
7. The method according to the preceding claim,wherein, when the step of adjusting the mobile manipulator (1) is based on the third stabilization method, the mobile manipulator (1) comprises one or more variable mass elements (13), and wherein the step of adjusting a center of mass of the mobile manipulator (1) includes an adjustment of the variable mass elements (13), wherein the method further comprises the step of using a discrete mass parameter “mextra” as an input variable for the first control function and / or the second control function.
8. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a fourth stabilization method comprising the step of adjusting the mobile manipulator (1) comprises a dynamic movement, which is controlled based on the following first control function:, and / or, which is controlled based on the following second control function:, wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMPtrajectory; “t” is a time; “^, ^̇, ^”̈ are the joint states of position, velocity andacceleration of the mobile manipulator (1), and “e” is a deviation of the real ZMPtrajectory from the desired ZMP trajectory; and wherein the mobile manipulator (1) comprises a tool center point (15), TCP, wherein the TCP (15) is controlled to execute a TCP-trajectory according to the following function: , wherein χTCP(t) is the TCP-trajectory, and wherein the TCP-trajectory is used to determine the desired ZMP trajectory “ZMPdes(t)”.
9. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a fifth stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function: , and / or based on the following second control function:, wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMPtrajectory; “t” is a time; “^^̈,^^̇,^^ ,” are joint states of acceleration, velocity andposition of the manipulator arm (5); “^^^ , ^^̇^,^^̈^” are a rotational position,rotational velocity and rotational acceleration of the manipulator base (3), and “e” is a deviation of the real ZMP trajectory from the desired ZMP trajectory.
10. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a sixth stabilization method comprising a dynamic manipulator arm movement, which is controlled based on the following first control function:,and / or based on the following second control function:, wherein “ZMPdes(t)” is the desired ZMP trajectory; “ZMPreal” is the real ZMPtrajectory; “t” is a time; “^, ^̇, ^”̈ are the joint states of position, velocity andacceleration of the mobile manipulator (1), and “e” is a deviation of the real ZMPtrajectory from the desired ZMP trajectory, and wherein, when the movement of the mobile manipulator (1) is delimited by a corridor, the first control function and / or the second control function comprise an additional constraint:, wherein “^^ , ^^̇, ^^̈” are the degrees of freedom of the position, the velocityand the acceleration of the manipulator base (3) and “corridor” is a constraint value defined by the dimensions of the corridor the mobile manipulator (1) is moving through.
11. The method according to one of the preceding claims,wherein the step of adjusting the mobile manipulator (1) is based on a seventh stabilization method, wherein the mobile manipulator (1) further comprises at least one external stabilizing device and wherein the step of adjusting the mobile manipulator (1) comprises the step of supporting of the mobile manipulator (1) by the external stabilizing device.
12. A mobile manipulator (1), comprising:a manipulator base (3) and at least one manipulator arm (5), and a control means (7) adapted to control the mobile manipulator (1) in accordance with the method of one of the preceding claims 1 to 11.
13. The mobile manipulator (1) according to the preceding claim,wherein the mobile manipulator (1) is an industrial autonomous mobile manipulation robot, preferably comprising more than two steerable wheels.
14. A computer-program product (200) comprising instructions, which, when executedby a computer (100), cause the computer (100) to carry out and / or control the method of any of claims 1 to 11.
15. A computer-readable medium (300) comprising instructions which, whenexecuted by a computer (100), cause the computer (100) to carry out and / or control the method of any of claims 1 to 11.
Citation Information
Patent Citations
Multi-body controller and robot
CN113631324A
Robotic Cart
US20220126438A1