DE102012206952A1 - Method and device for controlling the movement of a mobile unit in space - Google Patents

Method and device for controlling the movement of a mobile unit in space Download PDF

Info

Publication number
DE102012206952A1
DE102012206952A1 DE201210206952 DE102012206952A DE102012206952A1 DE 102012206952 A1 DE102012206952 A1 DE 102012206952A1 DE 201210206952 DE201210206952 DE 201210206952 DE 102012206952 A DE102012206952 A DE 102012206952A DE 102012206952 A1 DE102012206952 A1 DE 102012206952A1
Authority
DE
Germany
Prior art keywords
trajectory
movement
movable unit
configurations
path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE201210206952
Other languages
German (de)
Inventor
Wendelin Feiten
Merten Lipkowski
Christoph Bernhard Rösmann
Thomas Wösch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE201210206952 priority Critical patent/DE102012206952A1/en
Priority to PCT/EP2013/058135 priority patent/WO2013160195A1/en
Publication of DE102012206952A1 publication Critical patent/DE102012206952A1/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40446Graph based
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40455Proximity of obstacles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40463Shortest distance in time, or metric, time optimal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40512Real time path planning, trajectory generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

Verfahren und Vorrichtung zum Steuern einer Bewegung einer beweglichen Einheit im Raum entsprechend einer berechneten Trajektorie, wobei die Trajektorie eine Bewegungsbahn, die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der beweglichen Einheit bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben für die Bewegungsbahn aufweist, die jeweils ein Zeitintervall angeben, welches die bewegliche Einheit für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn benötigt, wobei die Trajektorie berechnet wird, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden.A method and apparatus for controlling movement of a movable unit in space according to a calculated trajectory, the trajectory including a trajectory containing a train of trajectories each indicating a position and orientation of the moveable unit as it travels in space, and time intervals indicative of the trajectory each indicating a time interval required for the movable unit to move between two adjacent path configurations of the trajectory, the trajectory being computed by simultaneously varying trajectory path configurations and time intervals to minimize a weighted sum of objective functions.

Description

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Berechnen einer Trajektorie für das Steuern einer Bewegung einer beweglichen Einheit im Raum, insbesondere ein Verfahren und eine Vorrichtung zum Berechnen einer Trajektorie und Steuern einer Bewegung eines Roboterarmes oder eines Roboterfahrzeuges im Raum. The invention relates to a method and a device for calculating a trajectory for controlling a movement of a movable unit in space, in particular a method and an apparatus for calculating a trajectory and controlling a movement of a robot arm or a robot vehicle in space.

In vielen Anwendungsfällen, beispielsweise Robotik, Automotive und Flugapplikationen, spielt die Bewegung einer Einheit entlang einer Bahn bzw. das Abfahren einer Bahn eine Rolle. Die Bahn besteht dabei aus einer Beschreibung der Folge der Gelenkstellungen bzw. der Position und Orientierung im Raum. An derartige Bahnen werden unterschiedliche Anforderungen je nach Applikation gestellt, wie Abstand zu Hindernissen oder die Möglichkeit, die Bahn schnell abzufahren. Ebenso muss eine Bahn ggf. Einschränkungen an die Beweglichkeit des Systems berücksichtigen, die aus den kinematischen Eigenschaften des Systems folgen. In many applications, such as robotics, automotive and flight applications, the movement of a unit along a train or the departure of a train plays a role. The web consists of a description of the sequence of joint positions or the position and orientation in space. On such tracks different requirements depending on the application are made, such as distance to obstacles or the ability to depart quickly. Likewise, a trajectory may need to consider constraints on the mobility of the system that result from the kinematic characteristics of the system.

In der Trajektorie müssen also neben Gelenkstellungen bzw. Position und Orientierung des Systems auch kinematische und dynamische Randbedingungen berücksichtigt werden. Gleichzeitig ist es notwendig, dass autonome Fahrzeuge, insbesondere Roboterfahrzeuge, in einer sich dynamisch verändernden Umgebung kollisionsfrei navigieren können. In vielen Anwendungsfällen ist die Modifikation einer gegebenen Bahn von Bedeutung, da die Umgebung erst im Verlauf der Bewegung nach und nach bekannt wird bzw. sich die Umgebung während der Laufzeit verändert. In the trajectory, in addition to joint positions or position and orientation of the system, kinematic and dynamic boundary conditions must also be taken into account. At the same time, it is necessary for autonomous vehicles, in particular robotic vehicles, to be able to navigate without collision in a dynamically changing environment. In many applications, modification of a given trajectory is important, as the environment becomes known little by little during the course of the motion, or the environment changes during runtime.

Die Planung bzw. die Berechnung von Trajektorien für eine bewegliche Einheit ist u.a. die Funktion einer Kollisionsfreiheit während der Bewegung sowie das Erreichen eines Ziels bzw. mehrerer Zwischenziele zu gewährleisten, das Zeitverhalten zu berücksichtigen und kinematische und dynamische Constraints zu berücksichtigen. The planning or calculation of trajectories for a mobile unit is i.a. to ensure the function of a collision-free movement during the movement as well as the achievement of a goal or several intermediate goals, to consider the time behavior and to consider kinematic and dynamic constraints.

In herkömmlichen Verfahren erfolgt die Berechnung einer Trajektorie in zwei Schritten. Zunächst wird eine Bahn unter geometrischen Aspekten generiert und anschließend erfolgt die Zuordnung von Zeiten an die berechneten Bahnpunkte zur Einhaltung von Nebenbedingungen hinsichtlich der Geschwindigkeit und Beschleunigung, um ein zeitoptimales oder beispielsweise energieoptimales Abfahren der Bahn zu gewährleisten. In conventional methods, the calculation of a trajectory takes place in two steps. First, a path is generated under geometrical aspects, and then the assignment of times to the calculated path points to comply with constraints in terms of speed and acceleration, to ensure a time-optimal or, for example, energy-optimal shutdown of the web.

Bei herkömmlichen Systemen zur Bahnberechnung bzw. Bahnplanung werden sehr häufig sogenannte "Elastic Band"-Verfahren eingesetzt. Dabei wird eine Folge von Konfigurationen dadurch festgelegt, dass zwischen je zwei aufeinanderfolgenden Konfigurationen eine anziehende Wirkung ausgeübt wird, während beispielsweise zwischen einem Hindernis und einer Roboterkonfiguration eine abstoßende Wirkung bzw. Kraft ausgeübt wird. Herkömmliche Verfahren zur Berechnung einer Bewegungsbahn einer beweglichen Einheit berücksichtigen jedoch nicht das Zeitverhalten der beweglichen Einheit. Herkömmliche "Elastic Band"-Verfahren optimieren die vorgegebene Bewegungsbahn einer beweglichen Einheit unter Berücksichtigung von Hindernissen H und der Bahnlänge. 1 zeigt eine Architektur eines Robotersystems für einen Roboter ROB und dessen Umgebung unter Verwendung eines herkömmlichen "Elastic Band"-Verfahrens zur Ermittlung bzw. Generierung einer Trajektorie T. Auf eine zuvor mittels eines Welt-Modells M global geplante Bahn B wirken innere und äußere Kräfte, die das Elastic Band EB bzw. die Bahn modifizieren. Innere Kräfte repräsentieren dabei das Hook‘sche Gesetz und ziehen das Band EB zusammen, so dass überflüssige Wegstücke der Bahn EB entfernt werden. Äußere Kräfte werden dabei durch Hindernisse H verursacht, die das Band EB von dem Hindernis H wegdrücken. Die Position P und die Geschwindigkeit V des Roboters ROB sowie die Trajektorie gehen in eine Regelung R der Bewegung des Roboters ein. Bei einer Implementierung der Bahnmodifikation BM mit dem sogenannten elastischen Band EB wird die Bewegungsbahn durch eine Folge von Punkten repräsentiert. Um jeden Punkt wird dabei ein Kreis gelegt, der seinen geometrischen Freiraum beschreibt. Die Kreise werden auch als "Bubbles" bezeichnet. Sie sind von einer Mindestgröße, die der Geometrie der beweglichen Einheit bzw. des Roboters entspricht. Innere und äußere Kräfte führen zu einer Verschiebung dieser sogenannten "Bubbles". Sobald sich zwei "Bubbles" nicht weiter berühren, wird zwischen ihnen ein neuer Bandpunkt eingefügt. Außerdem wird ein Band- bzw. Bahnpunkt entfernt, sobald dieser innerhalb des Radius des benachbarten "Bubbles" liegt. Anschließend kann mit Hilfe der "Bubble"-Mittelpunkte unter Verwendung von Splines bzw. Bézier-Kurven eine Trajektorie generiert werden, wie in 1 dargestellt. Herkömmliche "Elastic Band"-Berechnungsansätze optimieren somit eine vorgegebene Bahn unter Berücksichtigung von Hindernissen H und der Bahnlänge. In conventional systems for path calculation or path planning, very often so-called "elastic band" methods are used. Here, a sequence of configurations is determined by applying an attractive effect between every two successive configurations, while exerting a repulsive force between, for example, an obstacle and a robot configuration. However, conventional methods of calculating a moving path of a moving unit do not take into account the timing of the moving unit. Conventional "Elastic Band" methods optimize the given trajectory of a mobile unit, taking into account obstacles H and the track length. 1 1 shows an architecture of a robot system for a robot ROB and its surroundings using a conventional elastic band method for the determination or generation of a trajectory T. Inner and outer forces act on a path B previously planned by means of a world model M, which modify the Elastic Band EB or the web. Internal forces represent Hooke's law and pull the band EB together so that superfluous stretches of the path EB are removed. External forces are caused by obstacles H, which push the band EB away from the obstacle H. The position P and the velocity V of the robot ROB as well as the trajectory enter into a control R of the movement of the robot. In an implementation of the path modification BM with the so-called elastic band EB, the trajectory is represented by a sequence of points. Around each point a circle is created, which describes its geometric space. The circles are also referred to as "bubbles". They are of a minimum size which corresponds to the geometry of the mobile unit or of the robot. Internal and external forces lead to a shift of these so-called "bubbles". As soon as two bubbles stop touching, a new band point is inserted between them. In addition, a tape or track point is removed as soon as it lies within the radius of the adjacent bubble. Then, using the bubble center points, a trajectory can be generated using splines or Bézier curves, as in 1 shown. Conventional "Elastic Band" calculation approaches thus optimize a given path taking into account obstacles H and the track length.

Allerdings wird bei herkömmlichen "Elastic Band"-Ansätzen nicht die Zeitdifferenz, die ein Fahrzeug zum Abfahren einer Distanz benötigt, bei Berechnung der Trajektorie mit einbezogen. Daher wird bei derartigen herkömmlichen Verfahren keine optimale, kollisionsfreie Bahn unter Einhaltung von dynamischen Nebenbedingungen ermittelt. However, conventional "elastic band" approaches do not include the time difference needed by a vehicle to travel a distance when calculating the trajectory. Therefore, at Such conventional methods determined no optimal, collision-free path while maintaining dynamic constraints.

Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zum Steuern einer Bewegung einer beweglichen Einheit im Raum entsprechend einer optimierten Trajektorie zu schaffen. It is therefore an object of the present invention to provide a method and apparatus for controlling movement of a mobile unit in space in accordance with an optimized trajectory.

Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den unter Anspruch 1 angegebenen Merkmalen gelöst. This object is achieved by a method with the features specified in claim 1.

Die Erfindung schafft demnach ein Verfahren zum Steuern einer Bewegung einer beweglichen Einheit im Raum entsprechend einer berechneten Trajektorie,
wobei die Trajektorie eine Bewegungsbahn, die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der beweglichen Einheit bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben für die Bewegungsbahn aufweist, die jeweils ein Zeitintervall angeben, welche die bewegliche Einheit für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn benötigt,
wobei die Trajektorie berechnet wird, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden.
The invention accordingly provides a method for controlling a movement of a movable unit in space according to a calculated trajectory,
wherein the trajectory comprises a trajectory containing a sequence of trajectories each indicating a position and orientation of the movable unit as it travels in space, and trajectory time intervals indicating respectively a time interval which the traversing unit is to move between two adjacent path configurations of the trajectory needed
wherein the trajectory is calculated by simultaneously varying the path configurations of the trajectory and the time intervals to minimize a weighted sum of objective functions.

Bei dem erfindungsgemäßen Verfahren werden neben Bahnkonfigurationen entlang der Bewegungsbahn explizit Zeitintervalle zwischen je zwei benachbarten Bahnkonfigurationen als Variable für einen Zustandsvektor aufgenommen. Damit es ist möglich, Bahnpunkte bzw. Zwischenkonfigurationen der Bewegungsbahn sowie das Zeitverhalten der beweglichen Einheit gleichzeitig zu optimieren. In the method according to the invention, in addition to path configurations along the movement path, time intervals between each two adjacent path configurations are explicitly recorded as variables for a state vector. This makes it possible to simultaneously optimize track points or intermediate configurations of the movement path as well as the time behavior of the moving unit.

Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens werden die Zielfunktionen aus einer Gruppe vorgegebener Zielfunktionen selektiert oder über eine Schnittstelle eingegeben. In one possible embodiment of the method according to the invention, the target functions are selected from a group of predetermined target functions or entered via an interface.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine Abweichung zwischen den Bahnkonfigurationen der Bewegungsbahn und vorgegebenen Wegkonfigurationen an. In a further possible embodiment of the method according to the invention, an objective function indicates a deviation between the path configurations of the movement path and predetermined path configurations.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion einen Abstand zwischen den Bahnkonfigurationen der Bewegungsbahn und vorgegebenen Hindernissen im Raum an. In a further possible embodiment of the method according to the invention, a target function indicates a distance between the path configurations of the movement path and predetermined obstacles in the room.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine von der beweglichen Einheit bei seiner Bewegung entlang der Trajektorie benötigte Zeit an. In another possible embodiment of the method according to the invention, an objective function indicates a time required by the mobile unit as it moves along the trajectory.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine von der beweglichen Einheit bei seiner Bewegung entlang der Trajektorie benötigte Energie an. In another possible embodiment of the method according to the invention, an objective function indicates an energy required by the mobile unit as it travels along the trajectory.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine für die bewegliche Einheit bei seiner Bewegung entlang der Trajektorie zulässige maximale translatorische Geschwindigkeit oder Beschleunigung an. In a further possible embodiment of the method according to the invention, a target function indicates a maximum translatory speed or acceleration permissible for the movable unit during its movement along the trajectory.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine für die bewegliche Einheit bei seiner Bewegung entlang der Trajektorie zulässige maximale rotatorische Geschwindigkeit oder Beschleunigung an. In a further possible embodiment of the method according to the invention, a target function indicates a maximum rotational speed or acceleration permissible for the movable unit as it moves along the trajectory.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens gibt eine Zielfunktion eine Verletzung einer kinematischen Zwangsbedingung durch die bewegliche Einheit bei deren Bewegung entlang der Bewegungsbahn bzw. Trajektorie an. In a further possible embodiment of the method according to the invention, an objective function indicates a violation of a kinematic constraint condition by the movable unit as it moves along the trajectory or trajectory.

Bei einer weiteren möglichen Ausführungsform des erfindungsgemäßen Verfahrens erfolgt die Berechnung der Trajektorie in Echtzeit. In a further possible embodiment of the method according to the invention, the trajectory is calculated in real time.

Die Erfindung schafft ferner eine Steuervorrichtung zum Steuern einer Bewegung einer beweglichen Einheit im Raum entsprechend einer berechneten Trajektorie,
wobei die Trajektorie eine Bewegungsbahn, die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der beweglichen Einheit bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben für die Bewegungsbahn aufweist, die jeweils ein Zeitintervall angeben, welches die bewegliche Einheit bei deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn benötigt,
wobei die Trajektorie berechnet wird, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden.
The invention further provides a control device for controlling a movement of a movable unit in space according to a calculated trajectory,
wherein the trajectory includes a trajectory containing a series of trajectory configurations, each indicating a position and orientation of the movable unit as it moves in space, and Has time interval data for the trajectory, each specifying a time interval which the moving unit requires in its movement between two adjacent path configurations of the trajectory,
wherein the trajectory is calculated by simultaneously varying the path configurations of the trajectory and the time intervals to minimize a weighted sum of objective functions.

Bei einer möglichen Ausführungsform der erfindungsgemäßen Steuervorrichtung ist die bewegliche Einheit ein beweglicher Roboterarm. In one possible embodiment of the control device according to the invention, the movable unit is a movable robot arm.

Bei einer weiteren möglichen Ausführungsform der erfindungsgemäßen Steuervorrichtung ist die bewegliche Einheit ein bewegliches Roboterfahrzeug. In a further possible embodiment of the control device according to the invention, the movable unit is a mobile robotic vehicle.

Bei einer weiteren möglichen Ausführungsform der erfindungsgemäßen Steuervorrichtung weist diese eine Schnittstelle zur Eingabe von Zielfunktionen oder zur Selektion von Zielfunktionen aus einer vorgegebenen Gruppe von Zielfunktionen auf. In a further possible embodiment of the control device according to the invention, this has an interface for inputting target functions or for selecting target functions from a predetermined group of target functions.

Die Erfindung schafft ferner eine bewegliche Einheit mit einer integrierten Steuervorrichtung, wobei die Steuervorrichtung eine Bewegung der beweglichen Einheit im Raum entsprechend einer berechneten Trajektorie steuert,
wobei die Trajektorie eine Bewegungsbahn, die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der bewegliche Einheit bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben für die Bewegungsbahn aufweist, die jeweils ein Zeitintervall angeben, welches die bewegliche Einheit für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn benötigt,
wobei die Steuervorrichtung eine Berechnungseinheit aufweist, welche die Trajektorie berechnet, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden.
The invention further provides a movable unit with an integrated control device, wherein the control device controls a movement of the movable unit in space according to a calculated trajectory,
wherein the trajectory comprises a trajectory containing a series of trajectory configurations, each indicating a position and orientation of the movable unit as it travels in space, and trajectory timing, each indicative of a time interval representing the traversing unit for movement thereof between two adjacent path configurations of the trajectory needed
wherein the control device comprises a calculation unit which calculates the trajectory by simultaneously varying the path configurations of the trajectory and the time intervals to minimize a weighted sum of objective functions.

Bei einer möglichen Ausführungsform der erfindungsgemäßen beweglichen Einheit ist diese ein beweglicher Roboterarm. In one possible embodiment of the movable unit according to the invention, this is a movable robot arm.

Bei einer weiteren möglichen Ausführungsform der erfindungsgemäßen beweglichen Einheit ist die bewegliche Einheit ein bewegliches Roboterfahrzeug. In a further possible embodiment of the movable unit according to the invention, the movable unit is a mobile robotic vehicle.

Im Weiteren werden mögliche Ausführungsformen des erfindungsgemäßen Verfahrens und der erfindungsgemäßen Vorrichtung zur Steuerung einer Bewegung einer beweglichen Einheit im Raum unter Bezugnahme auf die beigefügten Figuren näher erläutert. In the following, possible embodiments of the method according to the invention and the device according to the invention for controlling a movement of a movable unit in space will be explained in more detail with reference to the attached figures.

Es zeigen: Show it:

1 ein Diagramm zur Darstellung einer Architektur zur Verwendung eines herkömmlichen "Elastic Band"-Verfahrens zur lokalen Bahnplanung; 1 a diagram illustrating an architecture for using a conventional "Elastic Band" method for local path planning;

2 ein Diagramm zur Darstellung einer Architektur in einem System, welches ein erfindungsgemäßes Verfahren zur Steuerung einer Bewegung einer beweglichen Einheit im Raum verwendet; 2 a diagram illustrating an architecture in a system, which uses a method according to the invention for controlling a movement of a movable unit in space;

3 ein Diagramm zur Darstellung einer möglichem Implementierung des erfindungsgemäßen Verfahrens zur Steuerung einer Bewegung einer beweglichen Einheit im Raum; 3 a diagram illustrating a possible implementation of the method according to the invention for controlling a movement of a movable unit in space;

4 eine Ansicht eines fahrbaren Roboters als Ausführungsbeispiel einer erfindungsgemäßen beweglichen Einheit; 4 a view of a mobile robot as an embodiment of a movable unit according to the invention;

5 eine beispielhafte Graphenstruktur für einen bei dem erfindungsgemäßen Verfahren eingesetzten Hyper-Graphen; 5 an exemplary graph structure for a hyper-graph used in the method according to the invention;

6 ein Diagramm zur Erläuterung des Funktionsweise des erfindungsgemäßen Verfahrens. 6 a diagram for explaining the operation of the method according to the invention.

2 verdeutlicht eine Architektur eines Systems, welches das erfindungsgemäße Verfahren zum Steuern einer Bewegung einer beweglichen Einheit, beispielsweise eines Roboters ROB, im Raum entsprechend einer berechneten Trajektorie T implementiert. Das erfindungsgemäße Verfahren verwendet einen sogenannten "Timed Elastic Band"(TEB)-Ansatz, bei dem neben der Position und Orientierung der beweglichen Einheit BE bei deren Bewegung im Raum auch eine Zeitdifferenz ΔT, die die bewegliche Einheit zum Abfahren einer Strecke zwischen benachbarten Bahnkonfigurationen benötigt, in den Lösungsraum mit einbezogen wird. Die Trajektorie T eines bewegten Systems bzw. einer beweglichen Einheit BE besteht aus einer Bewegungsbahn sowie aus Zeitangaben, welche angeben, welche Bahnpunkte der Bewegungsbahn B zu welchem Zeitpunkt durch die bewegliche Einheit BE angefahren werden. Die Bewegungsbahn B bzw. das TEB besteht aus einer Folge von Bahnkonfigurationen xi, welche jeweils eine Position und eine Orientierung ß der beweglichen Einheit BE bei deren Bewegung im Raum angeben. Darüber hinaus umfasst eine Trajektorie T Zeitintervallsangaben ΔT für die Bewegungsbahn B, die jeweils ein Zeitintervall ΔTi angeben, welches die bewegliche Einheit BE für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen xi, xi + 1 der Bewegungsbahn B benötigt. Die Bewegungsbahn enthält somit eine Folge von Konfigurationen. Diese Konfigurationen xi können beispielsweise die Gelenkstellungen eines mehrgelenkigen Roboters ROB, die Position und Orientierung eines Fahrzeuges in der Ebene oder beispielsweise die Position und Orientierung eines Flugzeuges im Raum sein. Wenn das betrachtete System aus mehreren einzelnen Untersystemen besteht, bei deren Zusammenspiel jedoch für die Erfüllung einer Funktion die Vermeidung von Kollisionen der Teilsysteme untereinander relevant ist, beschreibt die Konfiguration die Gesamtheit der Gelenkstellungen bzw. die Positionen und Orientierungen aller Teilsysteme des Gesamtsystems. Eine Trajektorie erhält man aus der Bewegungsbahn B einer beweglichen Einheit BE, indem zusätzlich der Zeitbedarf für das Abfahren der Bewegungsbahn durch die bewegliche Einheit BE, die Geschwindigkeiten sowie die Beschleunigung entlang der Bewegungsbahn B angegeben werden. Dabei genügt die Angabe der Zeitpunkte bzw. der Zeitintervalle ΔT zwischen den je zwei benachbarten Konfigurationen, da die Geschwindigkeit, Beschleunigung und gegebenenfalls ein Bewegungsruck durch diese Zeitintervalle ΔT impliziert sind. An eine Bewegungsbahn B bzw. eine Trajektorie T können Bedingungen gestellt werden. Beispielsweise sind mögliche Bedingungen an eine Bewegungsbahn B, dass sie zum Erreichen des jeweiligen Zieles von der jeweiligen Einheit bzw. Vorrichtung Kollisionsfrei befahren werden kann. Mögliche Bedingungen an das Zeitverhalten sind beispielsweise ein zeitoptimales Durchfahren der Bewegungsbahn B, wobei Beschleunigungs- und Geschwindigkeitsgrenzen des bewegten Systems bzw. der beweglichen Einheit BE einzuhalten sind. Über diese Bedingungen hinaus können weitere Bedingungen gestellt werden, die nur durch Betrachtung von Konfigurationen xi und Zeitintervallen ΔTi gleichzeitig erfüllt werden können, beispielsweise die Bedingung eines minimalen Energieverbrauchs der beweglichen Einheit BE bei einem möglichst raschen Durchfahren der Bewegungsbahn B. Bei dem erfindungsgemäßen Verfahren werden neben den Konfigurationen xi entlang der Bewegungsbahn B zusätzlich jeweils die Zeitintervalle zwischen je zwei benachbarten Konfigurationen als Variable in einem Zustandsvektor aufgenommen. Dabei werden bei dem erfindungsgemäßen Verfahren die Bahnpunkte bzw. Zwischenkonfigurationen und das Zeitverhalten der beweglichen Einheit BE gleichzeitig optimiert. Die Kollisionsfreiheit mit Hindernissen, insbesondere dynamischen beweglichen Hindernissen, wird beim erfindungsgemäßen Verfahren dadurch erreicht, dass die Konfigurationen entlang der Bewegungsbahn B von den Hindernissen abgestoßen werden. So werden Fehlerfunktionen als Funktionen des Abstandes einer Konfiguration von dem jeweiligen Hindernis derart angegeben, dass bei einem genügend großen Abstand ein Fehler als 0 angenommen wird, wohingegen bei einem kleiner werdenden Abstand zwischen der beweglichen Einheit BE und dem Hindernis entsprechend ein Fehler > 0 angenommen wird. Die Fehlerfunktion wird gebildet über diejenigen Variablen, die die Folge der Konfigurationen bzw. Bahnkonfigurationen der Bewegungsbahn B beschreiben. 2 illustrates an architecture of a system implementing the inventive method for controlling a movement of a movable unit, for example a robot ROB, in space according to a calculated trajectory T. The inventive method uses a so-called "Timed Elastic Band" (TEB) approach, in addition to the position and orientation of the movable unit BE in their movement in space with a time difference .DELTA.T, which requires the movable unit to travel a distance between adjacent Bahnkonfigurationen in the solution space with is included. The trajectory T of a moving system or a movable unit BE consists of a movement path and of time information which indicate which path points of the movement path B are approached by the movable unit BE at which time. The movement path B or the TEB consists of a sequence of path configurations x i , which respectively indicate a position and an orientation β of the movable unit BE as it moves in space. In addition, a trajectory T comprises time interval data ΔT for the trajectory B, each of which specifies a time interval ΔT i which the movable unit BE requires for its movement between two adjacent trajectories x i , x i + 1 of the trajectory B. The trajectory thus contains a sequence of configurations. These configurations x i can be, for example, the joint positions of a multi-jointed robot ROB, the position and orientation of a vehicle in the plane or, for example, the position and orientation of an aircraft in space. If the considered system consists of several individual subsystems, but whose interaction is relevant for the fulfillment of a function avoiding collisions between the subsystems, the configuration describes the entirety of the joint positions or the positions and orientations of all subsystems of the overall system. A trajectory is obtained from the trajectory B of a movable unit BE, by additionally specifying the time required for traversing the trajectory by the movable unit BE, the speeds and the acceleration along the trajectory B. It is sufficient to specify the time points or the time intervals ΔT between the two adjacent configurations, since the speed, acceleration and possibly a movement pressure are implied by these time intervals ΔT. Conditions can be set for a movement path B or a trajectory T. For example, possible conditions for a trajectory B are that they can be traversed without collision in order to reach the respective destination from the respective unit or device. Possible conditions for the time behavior are, for example, a time-optimal traversing of the trajectory B, wherein acceleration and speed limits of the moving system or the movable unit BE are to be observed. Of these conditions, other conditions may be found only by consideration of configurations x i and time intervals .DELTA.T i can be fulfilled simultaneously, for example the condition of a minimum power consumption of the mobile unit BE at a quickest possible passage through the path of movement B. In the inventive method In addition to the configurations x i along the trajectory B, the time intervals between each two adjacent configurations are additionally recorded as variables in a state vector. In this case, the path points or intermediate configurations and the time behavior of the movable unit BE are simultaneously optimized in the inventive method. The collision freedom with obstacles, in particular dynamic moving obstacles, is achieved in the method according to the invention in that the configurations along the movement path B are repelled by the obstacles. Thus, error functions are specified as functions of the distance of a configuration from the respective obstacle such that, if the distance is sufficiently large, an error is assumed to be 0, whereas if the distance between the mobile unit BE and the obstacle decreases, an error> 0 is assumed , The error function is formed by those variables that describe the sequence of configurations or path configurations of path B.

Bei dem erfindungsgemäßen Verfahren wird das Zeitverhalten der beweglichen Einheit BE dahingehend optimiert, dass die Summe der Zeitintervalle zwischen den Konfigurationen bzw. Bahnkonfigurationen der Bewegungsbahn B minimiert wird. Die Fehlerfunktion wird somit bei dem erfindungsgemäßen Verfahren über die Variablen gebildet, welche die Zeitintervalle zwischen den Bahnkonfigurationen beschreiben. Bei einer möglichen Ausführungsform werden Geschwindigkeitsbeschränkungen, Beschleunigungsbeschränkungen der beweglichen Einheit BE ebenso wie Beschränkungen eines Bewegungsrucks berücksichtigt, indem abhängig von benachbarten Bahnkonfigurationen und den dazwischen liegenden Zeitintervallen diskretisierte Fassungen der Geschwindigkeiten und Beschleunigungen aufgestellt werden. Die entsprechenden Fehlerfunktionen sind 0, solange diese Werte weit genug entfernt von den entsprechenden systembedingten Grenzwerten sind. Nähern sich die Werte der geplanten bzw. berechneten Trajektorie ihren Grenzwerten an, wachsen die Fehlerwerte entsprechend rasch an. Bei dem erfindungsgemäßen Verfahren wird eine Trajektorie, welche die gewählten Kriterien durch gleichzeitige Variation von Bahnkonfigurationen und Zeitintervallen optimiert, durch Minimieren einer gewichteten Summe der Zielfunktionen berechnet. In the method according to the invention, the time behavior of the movable unit BE is optimized such that the sum of the time intervals between the configurations or path configurations of the movement path B is minimized. The error function is thus formed in the inventive method on the variables that describe the time intervals between the train configurations. In one possible embodiment, speed limitations, acceleration limitations of the mobile unit BE as well as restrictions on travel pressure are taken into account by setting up discretized versions of the speeds and accelerations depending on adjacent track configurations and the intervening time intervals. The corresponding error functions are 0 as long as these values are far enough away from the corresponding system-related limit values. If the values of the planned or calculated trajectory approach their limit values, the error values grow correspondingly rapidly. In the method according to the invention, a trajectory which optimizes the selected criteria by simultaneous variation of path configurations and time intervals is calculated by minimizing a weighted sum of the objective functions.

Bei dem erfindungsgemäßen Verfahren erfolgt eine gleichzeitige Verwendung von Variablen, welche die Bahnkonfigurationen entlang der Bewegungsbahn der beweglichen Einheit BE beschreiben, und von Variablen, welche die Zeitintervalle zwischen Bahnkonfigurationen beschreiben, in Zielfunktionen. Diese Zielfunktionen optimieren sowohl den Zeitbedarf als auch gegebenenfalls einen Energiebedarf oder weitere frei wählbare Ziele für einen Planer. Weiterhin sorgen die Zielfunktionen für eine Einhaltung von notwendigen kinematischen und/oder dynamischen Nebenbedingungen. Bei dem erfindungsgemäßen Verfahren können die Ziele bzw. Zielfunktionen gleichzeitig erreicht werden, was bei einem herkömmlichen "Elastic Band"-Verfahren nicht möglich ist. In the method according to the invention, a simultaneous use of variables describing the path configurations along the trajectory of the mobile unit BE and of variables describing the time intervals between trajectory configurations takes place in objective functions. These target functions optimize both the time required and, if necessary, an energy requirement or more freely selectable goals for a planner. Furthermore, the target functions ensure compliance with the necessary kinematic and / or dynamic constraints. In the method according to the invention, the objectives or target functions can be achieved simultaneously, which is not possible with a conventional "Elastic Band" method.

Mit dem erfindungsgemäßen Verfahren zum Steuern einer Bewegung einer beweglichen Einheit BE im Raum entsprechend einer berechneten Trajektorie ist es möglich, anders als bisher eine Ideallinie aufzufinden, die durch die bewegliche Einheit BE schneller abgefahren werden kann als eine geometrisch kürzeste kollisionsfreie Bahn bzw. Verbindung. With the method according to the invention for controlling a movement of a movable unit BE in space according to a calculated trajectory, it is possible, unlike previously, to find an ideal line which can be traversed faster by the movable unit BE than a geometrically shortest collision-free path or connection.

Mit dem erfindungsgemäßen Verfahren ist es möglich, eine optimierte Trajektorie zu berechnen, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn sowie die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden. With the method according to the invention, it is possible to calculate an optimized trajectory by simultaneously varying the path configurations of the movement path and the time intervals for minimizing a weighted sum of target functions.

Ein bei dem erfindungsgemäßen Verfahren eingesetztes elastisches Band TEB kann durch eine Folge von n Konfigurationen repräsentiert werden: Q = {x1}i = 1...n n ∊ N (1) An elastic band TEB used in the method according to the invention can be represented by a sequence of n configurations: Q = {x 1 } i = 1 ... nn ∈ N (1)

Weiterhin kann jede Band- bzw. Bahnkonfiguration durch einen Zustandsvektor xi ∊ R2 × S1 in der folgenden Form beschrieben werden:

Figure 00110001
Furthermore, each band configuration may be described by a state vector x i ∈ R 2 × S 1 in the following form:
Figure 00110001

Die Vektorgrößen xi und yi des Zustandsvektors stellen die Position der beweglichen Einheit im Raum dar. Die Größe βi des Zustandsvektors stellt die Orientierung der beweglichen Einheit im Raum dar. Beispielsweise stellt der Zustandsvektor die Position und die Orientierung eines Fahrzeuges bzw. einer beweglichen Einheit im Raum dar. The vector quantities x i and y i of the state vector represent the position of the movable unit in space. The magnitude β i of the state vector represents the orientation of the mobile unit in space. For example, the state vector represents the position and orientation of a vehicle Unit in space.

Wenn τ = {ΔTi}i = 1...n – 1 (3) eine Folge von n – 1 Zeitdifferenzen zwischen zwei benachbarten Konfigurationen bzw. Bahnkonfigurationen xi und xi + 1 eines elastischen Bandes bzw. einer elastischen Bahn darstellen, lässt sich ein bei dem erfindungsgemäßen Verfahren eingesetztes "Timed Elastic Band" TEB bzw. die Trajektorie T definieren als: B = (Q, τ) (4) wobei ΔTi eine Zeitdifferenz angibt, die eine bewegliche Einheit benötigt, um von der Bahnkonfiguration xi zu der Bahnkonfiguration xi + 1 zu gelangen, wie in 6 dargestellt. If τ = {ΔT i } i = 1 ... n - 1 (3) represent a sequence of n-1 time differences between two adjacent configurations or track configurations x i and x i + 1 of an elastic band or an elastic track, a "Timed Elastic Band" TEB or the trajectory T used in the method according to the invention can be used define as: B = (Q, τ) (4) where ΔT i indicates a time difference that a moving unit takes to get from the orbit configuration x i to the orbit configuration x i + 1, as in FIG 6 shown.

Bei dem erfindungsgemäßen Verfahren ist es möglich, Randbedingungen und Anforderungen, die das elastische Band TEB bzw. die Bewegungsbahn B bzw. die Trajektorie der beweglichen Einheit BE zu erfüllen hat, als modulare Optimierungsziele zu definieren. Beispielsweise kann mit Hilfe einer Mehrzieloptimierung der Form F:B → R

Figure 00120001
eine optimierte Bewegungstrajektorie unter Minimierung einer mit γk gewichteten Summe von Fehlertermen bzw. Zielfunktionen Fk(B) berechnet werden. In the method according to the invention, it is possible to define boundary conditions and requirements which the elastic band TEB or the trajectory B or the trajectory of the movable unit BE has to fulfill as modular optimization targets. For example, with the help of a multi-objective optimization of the form F: B → R
Figure 00120001
an optimized motion trajectory can be calculated while minimizing a sum of error terms or objective functions F k (B) weighted by γ k .

Die Bewegungstrajektorie der beweglichen Einheit BE hält bei einer möglichen Ausführungsform eine oder mehrere Nebenbedingungen ein, nämlich Hindernissen auszuweichen oder einen der Fahrzeugdynamik der beweglichen Einheit BE entsprechenden Kurvenverlauf einzustellen. Einige dieser Randbedingungen stellen strikte Nebenbedingungen dar. Hierfür geeignet sind spezielle Optimierer für schwach besetzte Systeme, die die Funktionalität aufweisen, Gleichungssysteme mit Randwertproblemen zu lösen. The movement trajectory of the movable unit BE holds in one possible embodiment, one or more constraints, namely to avoid obstacles or set a vehicle dynamics of the mobile unit BE corresponding curve. Some of these constraints are strict constraints. Suitable for this are special optimizers for sparse systems that have the functionality of solving equations with boundary value problems.

Aber auch Optimierer für schwach besetzte Systeme ohne strikte Nebenbedingungen lassen sich verwenden, indem die strikte Nebenbedingung approximiert wird. But also optimizers for weakly occupied systems without strict constraints can be used by approximating the strict constraint.

Wird eine reelle Variable x aus xr ∊ R begrenzt, lautet eine mögliche zugehörige ideale Fehlerfunktion:

Figure 00130001
wobei die Fehlerfunktion nicht stetig differenzierbar ist und durch einen stückweise polynomialen Verlauf um xr approximiert werden kann:
Figure 00130002
If a real variable x is bounded by x r ε R, one possible associated ideal error function is:
Figure 00130001
where the error function is not continuously differentiable and can be approximated by a piecewise polynomial curve around x r :
Figure 00130002

Hierbei beschreibt n ∊ N eine Ordnung des polynomialen Anstieges, ε ∊ R eine Verschiebung der Funktion in der Nähe von xr und S ∊ R einen Skalierungsfaktor. Here, n ε N describes an order of the polynomial rise, ε ε R a shift of the function in the vicinity of x r and S ε R a scaling factor.

Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens ist das "Elastic Band" bzw. die zu berechnende Bewegungsbahn B derart konzipiert, dass vorgegebene Wegkonfigurationen bei der Bahnplanung abgefahren werden. Beispielsweise können Zwischenziele ohne Berücksichtigung der Orientierung berücksichtigt werden. Ein Zwischenziel Zj wird in diesem Fall durch eine Menge von Konfigurationen im R2 × S1 dargestellt:

Figure 00140001
In one possible embodiment of the method according to the invention, the "elastic band" or the trajectory B to be calculated is designed such that predetermined path configurations are traversed in the path planning. For example, intermediate goals without consideration of the orientation can be taken into account. An intermediate destination Z j is represented in this case by a set of configurations in R 2 × S 1 :
Figure 00140001

Ein Abstand dij:Q × Zj → R + / o vom Wegpunkt Zj zur Bahnkonfiguration xi ist definiert als:

Figure 00140002
A distance d ij : Q × Z j → R + / o from the waypoint Z j to the path configuration x i is defined as:
Figure 00140002

Eine resultierende Fehlerfunktion bzw. Zielfunktion Fk für eine Wegkonfiguration kann sich unter Verwendung der Gleichung (10) wie folgt berechnen lassen: Fk(dij) = dij(xi, Zj) (11) A resulting error function or target function F k for a path configuration can be calculated using equation (10) as follows: F k (d ij ) = d ij (x i , Z j ) (11)

Alternativ kann unter Vorgabe eines minimalen Abstandes rPmin zum Wegpunkt eine Fehlerfunktion bzw. Zielfunktion aufgestellt werden, welche diese Randbedingungen einhält. Hierzu wird der in Gleichung (10) angegebene Abstand als Argument einer stückweise stetig differenzierbaren Funktion eingesetzt und unter Verwendung der Fehlerfunktion eΓ(x) gemäß Gleichung (8) und einem maximal erlaubten Abstand zum Wegpunkt rPmax durch die Fehlerfunktion bzw. Zielfunktion berechnet: Fk(dij) = eΓ(dij) (12) Alternatively, with the specification of a minimum distance r Pmin to the waypoint, an error function or target function can be set up which complies with these boundary conditions. For this purpose, the distance given in equation (10) is used as an argument of a piecewise continuously differentiable function and calculated using the error function e Γ (x) according to equation (8) and a maximum allowable distance to the waypoint r Pmax by the error function or objective function: F k (d ij ) = e Γ (d ij ) (12)

Insbesondere aufgrund von Sicherheitsaspekten ist die Hinderniserkennung und somit ein kollisionsfreies Abfahren einer Trajektorie durch die bewegliche Einheit BE von Bedeutung. Ein Hindernis kann vereinfacht durch einen Punkt gegeben sein: In particular, due to safety aspects, the obstacle detection and thus a collision-free trajectory traversing by the movable unit BE is of importance. An obstacle can be simplified by a point:

Figure 00150001
Figure 00150001

In einer möglichen Ausführungsform wird ein derartiger Hindernispunkt mit einem minimalen Abstand

Figure 00150002
welcher von der beweglichen Einheit und der Größe des Hindernisses abhängig ist, angefahren. Der euklidische Abstand zwischen einem Hindernis ol und einer Bahnkonfiguration xi mit den Koordinaten xi und yi beträgt:
Figure 00150003
In one possible embodiment, such obstacle point becomes a minimum distance
Figure 00150002
which depends on the mobile unit and the size of the obstacle, approached. The Euclidean distance between an obstacle o l and a path configuration x i with the coordinates x i and y i is:
Figure 00150003

Unter Verwendung der Approximation von Randbedingungen entsprechend Gleichung (8) und dem Abstand aus Gleichung (14) und dem Parameter

Figure 00150004
lautet die Ziel- bzw. Fehlerfunktion zur Kollisionsvermeidung: Fk(dil) = eΓ(–dil) (15) Using the approximation of boundary conditions according to equation (8) and the distance from equation (14) and the parameter
Figure 00150004
is the target or error function for collision avoidance: F k (d il) = Γ e (d il) (15)

In dem erfindungsgemäßen Verfahren zum Steuern einer Bewegung einer beweglichen Einheit BE im Raum entsprechend einer berechneten Trajektorie ist es ferner möglich, Maximalgeschwindigkeiten zu berücksichtigen. Furthermore, in the method according to the invention for controlling a movement of a movable unit BE in space in accordance with a calculated trajectory, it is possible to take maximum speeds into account.

Diese Geschwindigkeiten umfassen einerseits translatorische Geschwindigkeiten der beweglichen Einheit BE sowie rotatorische Geschwindigkeiten der beweglichen Einheit BE. These speeds include, on the one hand, translatory speeds of the mobile unit BE and rotary speeds of the mobile unit BE.

Die Geschwindigkeitsbeschränkung stellt ähnlich wie die Kollisionsvermeidung eine Nebenbedingung dar, für die eine Approximation entsprechend Gleichung (8) eingesetzt werden kann. The speed limit, like collision avoidance, is a constraint for which an approximation according to equation (8) can be used.

Die mittlere Geschwindigkeit zwischen zwei Bahnkonfigurationen xi und xi + 1 ergibt sich betraglich näherungsweise über den Zusammenhang:

Figure 00160001
The average velocity between two orbit configurations x i and x i + 1 is roughly approximate to the relationship:
Figure 00160001

Unter Verwendung von Gleichung (16), dem Skalarprodukt R2 × R2 → R sowie den Konfigurationen xi und xi + 1 lässt sich somit eine mittlere Geschwindigkeit vi der beweglichen Einheit vorzeichenbehaftet angeben:

Figure 00160002
Using equation (16), the inner product R 2 × R 2 → R as well as the configurations x i and x i + 1 can thus be an average velocity v i of the movable unit signed specify:
Figure 00160002

Mit der Gleichung (8) und einer Maximalgeschwindigkeit vmax folgt eine Fehler- bzw. Zielfunktion der folgenden Form: Fk(vi) = eΓ(vi) (19) With the equation (8) and a maximum speed v max follows an error or objective function of the following form: F k (v i ) = e Γ (v i ) (19)

Weiterhin kann bei dem erfindungsgemäßen Verfahren auch eine maximale rotatorische Geschwindigkeit ωmax der beweglichen Einheit BE berücksichtigt werden. Bei der Modellierung der Winkelgeschwindigkeitsbeschränkung der beweglichen Einheit BE kann analog zur translatorischen Geschwindigkeit vorgegangen werden. Die mittlere Winkelgeschwindigkeit ωi lässt sich mit Hilfe folgender Gleichung näherungsweise berechnet:

Figure 00160003
wobei der Operator aΘβ: = a – β + k·2·π bedeutet, zur Differenz ein geeignetes Vielfaches von 2π so zu addieren, dass das Ergebnis im Intervall –]π, π] liegt. Furthermore, in the method according to the invention, a maximum rotational speed ω max of the movable unit BE can also be taken into account. In the modeling of the angular velocity limit of the movable unit BE can proceed analogously to the translational speed. The average angular velocity ω i can be calculated approximately using the following equation:
Figure 00160003
where the operator aΘβ: = a - β + k · 2 · π means to add to the difference a suitable multiple of 2π such that the result lies in the interval -] π, π].

Die Winkelgeschwindigkeit der beweglichen Einheit BE kann auf eine maximale Winkelgeschwindigkeit ωmax begrenzt sein. Für die Fehlerfunktion bzw. Zielfunktion gilt in diesem Fall gemäß Gleichung (8) und mit xr = ωmax: Fki) = eΓi) (21) The angular velocity of the movable unit BE can be limited to a maximum angular velocity ω max . For the error function or objective function, in this case according to equation (8) and with x r = ω max applies: F ki ) = e Γi ) (21)

Bei der beweglichen Einheit BE kann es sich bei einer möglichen Ausführungsform um ein Roboterfahrzeug handeln. Dabei kann das Roboterfahrzeug einen Differentialantrieb aufweisen, wobei die Bewegung des Fahrzeuges über zwei ungelenkte, parallele Räder R erfolgt, mit denen sich translatorische und rotatorische Bewegungsmanöver durchführen lassen. 4 zeigt eine Abbildung zur Darstellung eines Roboterfahrzeugs BE mit Differentialantrieb. Das Roboterfahrzeug BE ist beispielsweise ein Gebäude-Reinigungsroboter oder ein Transportroboter für die Lagerlogistik. Die dargestellte bewegliche Einheit BE bzw. das dort dargestellte Roboterfahrzeug weist eine Steuerungsvorrichtung SV zur Steuerung der Bewegung der beweglichen Einheit BE im Raum entsprechend einer berechneten Trajektorie aufweist. Diese Steuerungsvorrichtung SV kann in dem dargestellten Roboterfahrzeug BE integriert sein und die Bewegungsmanöver des Roboterfahrzeugs steuern. Diese Steuervorrichtung SV enthält eine Berechnungseinheit, beispielsweise einen Mikroprozessor oder dergleichen, welcher eine Trajektorie T für das Roboterfahrzeug berechnet. Die Trajektorie T wird berechnet, indem gleichzeitig die Bahnkonfigurationen xi der Bewegungsbahn und die Zeitintervalle ΔT zur Minimierung einer gewichteten Summe von Zielfunktionen bzw. Fehlerfunktionen Fk(B) variiert werden. In the case of the movable unit BE, one possible embodiment may be a robotic vehicle. In this case, the robot vehicle may have a differential drive, wherein the movement of the vehicle takes place via two unguided, parallel wheels R, with which translational and rotational movement maneuvers can be performed. 4 shows an illustration showing a robot vehicle BE with differential drive. The robot vehicle BE is, for example, a building cleaning robot or a transport robot for warehouse logistics. The illustrated movable unit BE or the robotic vehicle shown there has a control device SV for controlling the movement of the movable unit BE in space according to a calculated trajectory. This control device SV can be integrated in the illustrated robotic vehicle BE and control the movement maneuvers of the robotic vehicle. This control device SV contains a calculation unit, for example a microprocessor or the like, which calculates a trajectory T for the robot vehicle. The trajectory T is calculated by simultaneously varying the trajectories x i of the trajectory and the time intervals ΔT to minimize a weighted sum of objective functions F k (B).

In einer möglichen Ausführungsform werden die Zielfunktionen Fk(B) dabei über eine Schnittstelle des Roboterfahrzeuges eingegeben. Alternativ können die Zielfunktionen auch über eine Schnittstelle aus einer Gruppe vorgegebener Zielfunktionen durch einen Nutzer ausgewählt werden. Darüber hinaus kann über die Schnittstelle auch eine Gewichtung der Summe der ausgewählten Zielfunktionen durchgeführt werden. Beispielsweise wird bei einer Zielfunktion die bei einer Bewegung des Roboterfahrzeugs BE benötigte Energie minimiert, wobei eine andere Zielfunktion die von dem Roboterfahrzeug beim Durchfahren einer Strecke benötigte Zeit minimiert. Über die Nutzerschnittstelle kann ein Nutzer beispielsweise mit Hilfe der Gewichtung angeben, welcher Aspekt ihm wichtiger ist, beispielsweise, ob das Roboterfahrzeug BE schneller an seinem Ziel ankommt oder ob es möglichst energieeffizient zu dem Ziel gelangt. Bei einem Roboterfahrzeug BE mit Differentialantrieb, wie es in 4 dargestellt ist, erfolgt die Bewegung des Roboterfahrzeuges BE über zwei ungelenkte, parallele Räder R, mit denen sich translatorische und rotatorische Bewegungsmanöver durchführen lassen. Hierbei kann berücksichtigt werden, dass die Geschwindigkeit eines Rades R durch eine maximale Drehzahl beschränkt wird. In one possible embodiment, the target functions F k (B) are entered via an interface of the robot vehicle. Alternatively, the target functions can also be selected via an interface from a group of predetermined target functions by a user. In addition, a weighting of the sum of the selected target functions can also be carried out via the interface. For example, in one objective function, the energy required in moving the robotic vehicle BE is minimized, while another objective function minimizes the time required by the robotic vehicle to travel through a route. Via the user interface, for example, a user can use the weighting to indicate which aspect is more important to him, for example, whether the robot vehicle BE arrives at its destination faster or whether it reaches the destination as energy-efficiently as possible. In a robotic vehicle BE with differential drive, as in 4 is shown, the movement of the robot vehicle BE via two unguided, parallel wheels R, with which translational and rotational movement maneuvers let carry out. Here, it can be considered that the speed of a wheel R is limited by a maximum speed.

4 zeigt als bewegliche Einheit (BE) ein Roboterfahrzeug mit zwei angetriebenen Rädern und den relevanten Geschwindigkeitsvektoren. Das kinematische Modell zur Ermittlung der Radgeschwindigkeiten aus den Geschwindigkeiten v und ω im Fahrzeug-Drehpunkt beweglicher Einheit BE lautet: vωr = v + Lω (22) vωl = v – Lω (23) wobei L den euklidischen Abstand zwischen einem Radmittelpunkt eines Rades R und dem Drehpunkt des Roboterfahrzeuges BE angibt. Werden in Gleichungen (18) und Gleichung (20) in das kinematische Modell des Roboterfahrzeugs BE gemäß Gleichung (22) und (23) eingesetzt, ergeben sich die mittleren Geschwindigkeiten der Räder zwischen zwei Bahnkonfigurationen xi und xi + 1 zu: 4 shows as mobile unit (BE) a robot vehicle with two driven wheels and the relevant speed vectors. The kinematic model for determining the wheel speeds from the speeds v and ω in the vehicle pivot point of moving unit BE is: v ωr = v + Lω (22) v ωl = v - Lω (23) where L indicates the Euclidean distance between a wheel center of a wheel R and the fulcrum of the robot vehicle BE. If equations (18) and equation (20) are used in the kinematic model of the robotic vehicle BE according to equations (22) and (23), the mean velocities of the wheels between two path configurations x i and x i + 1 become:

Figure 00190001
Figure 00190001

Unter Verwendung der Fehlerfunktion für die Randbedingungen und den Gleichungen (24) und (25) lautet die Fehler- bzw. Zielfunktion für das rechte und linke Rad R des in 4 dargestellten Roboterfahrzeuges BE:

Figure 00190002
Using the marginal constraint error function and equations (24) and (25), the right and left wheel error function R is the in 4 represented robotic vehicle BE:
Figure 00190002

Die beschränkenden Größen sind in diesem Falle

Figure 00190003
und
Figure 00190004
The limiting quantities are in this case
Figure 00190003
and
Figure 00190004

Mit dem erfindungsgemäßen Verfahren zum Steuern einer Bewegung einer beweglichen Einheit BE im Raum entsprechend einer berechneten Trajektorie T bzw. Bahn B ist es ferner möglich, neben Maximalgeschwindigkeiten auch maximale Beschleunigungen bei der Ermittlung der Trajektorie T zu berücksichtigen. Die Beschleunigung umfasst einerseits translatorische Beschleunigungen und andererseits rotatorische Beschleunigungen. With the method according to the invention for controlling a movement of a movable unit BE in space in accordance with a calculated trajectory T or lane B, it is also possible to take into account not only maximum speeds but also maximum accelerations in the determination of the trajectory T. The acceleration includes on the one hand translational accelerations and on the other hand rotational accelerations.

Die mittlere translatorische Beschleunigung a ergibt sich aufgrund der Änderungen der mittleren Geschwindigkeiten vi und vi + 1 gemäß Gleichung (18) und der gemittelten Zeitdifferenz zu:

Figure 00190005
The average translational acceleration a results from the changes in the mean velocities v i and v i + 1 according to equation (18) and the averaged time difference to:
Figure 00190005

Die Fehlerfunktion bzw. Zielfunktion lautet dann analog zu den Geschwindigkeiten unter Berücksichtigung einer Maximalbeschleunigung amax wie folgt: Fk(ai) = eΓ(ai) (29) The error function or objective function is then analogous to the speeds taking into account a maximum acceleration a max as follows: F k (a i ) = e Γ (a i ) (29)

Weiterhin kann bei dem erfindungsgemäßen Verfahren eine rotatorische Beschleunigung der beweglichen Einheit BE berücksichtigt werden. Eine mittlere Winkelbeschleunigung der beweglichen Einheit erfolgt aus der Änderung der mittleren Winkelgeschwindigkeiten ωi und ωi +1:

Figure 00200001
Furthermore, in the method according to the invention, a rotational acceleration of the movable unit BE can be taken into account. An average angular acceleration of the mobile unit is obtained from the change of the mean angular velocities ω i and ω i +1:
Figure 00200001

Folglich ergibt sich mit einer maximalen Winkelbeschleunigung ω .max die folgende Fehler- bzw. Zielfunktion: Fk(ω .i) = eΓi) (31) Consequently results with a maximum angular acceleration ω. Max the following error or objective function: F k (ω .i) = Γ e (ω i) (31)

Bei einem Roboterfahrzeug BE mit Differentialantrieb, wie es beispielsweise in 4 dargestellt ist, werden die möglichen Beschleunigungen durch begrenzte Drehmomente an den einzelnen Rädern R des Fahrzeuges BE vorgegeben. Eine Differentiation der Gleichungen (24) und (25) nach der Zeit führt zu:

Figure 00200002
In a robotic vehicle BE with differential drive, such as in 4 is shown, the possible accelerations are given by limited torques on the individual wheels R of the vehicle BE. Differentiation of equations (24) and (25) over time leads to:
Figure 00200002

Demgemäß ergeben sich mit Maximalbeschleunigungen

Figure 00200003
und
Figure 00200004
die Fehler- bzw. Zielfunktionen für beide Räder R des Roboterfahrzeuges BE zu: Accordingly arise with maximum accelerations
Figure 00200003
and
Figure 00200004
the error or target functions for both wheels R of the robot vehicle BE to:

Figure 00200005
Figure 00200005

In vielen Anwendungen stehen die Fahrzeit und der kürzeste Weg der beweglichen Einheit beim Durchfahren einer Bahn bzw. Trajektorie im Vordergrund. Zur Optimierung eines "Elastic Bands" bzw. einer Bahn B ist es in vielen Anwendungen notwendig, die Gesamtfahrzeit der beweglichen Einheit BE zu minimieren und Umwege, insbesondere ungewollte Schleifen oder dergleichen, zu entfernen. Hierzu wird eine Fehler- bzw. Zielfunktion vorgesehen, welche die gesamte Fahrzeit der beweglichen Einheit entlang der Trajektorie minimiert. Diese Fehlerfunktion kann eine innere Kraft repräsentieren, die das "Elastic Band" TEB zusammenzieht. Beispielsweise lässt sich eine quadratische Fehlerfunktion unter Verwendung aller Zeitdifferenzen ΔTi wie folgt aufstellen:

Figure 00210001
In many applications, the driving time and the shortest path of the moving unit when driving through a train or trajectory in the foreground. To optimize an "elastic band" or a web B, it is necessary in many applications to minimize the total travel time of the movable unit BE and to remove detours, in particular unwanted loops or the like. For this purpose, an error or target function is provided which minimizes the total travel time of the movable unit along the trajectory. This error function can represent an internal force contracting the Elastic Band TEB. For example, a quadratic error function can be established using all the time differences ΔT i as follows:
Figure 00210001

Bei einem kausalen System werden ausschließlich positive Zeitintervalle ΔTi für aufeinanderfolgende Bahnkonfigurationen vorgesehen. Um Randbedingungen bei der Optimierung einzuhalten, können Fehlerfunktionen aufgestellt werden, die auch negative Zeitintervalle bei einem großen Fehler bewerten. In a causal system, only positive time intervals ΔT i are provided for successive path configurations. In order to comply with boundary conditions in the optimization, error functions can be set up, which also evaluate negative time intervals in the case of a large error.

Die Fehlerfunktion lautet unter Verwendung von Gleichung (8) und einem xr = 0: Fk(ΔTi) = eΓ(–ΔTi) (37) The error function is using equation (8) and one x r = 0: F k (ΔT i ) = e Γ (-ΔT i ) (37)

In vielen Anwendungsfällen, insbesondere bei Roboteranwendungen, ist es vorteilhaft, wenn sich das Roboterfahrzeug vorwärts bewegt und ausschließlich in besonderen Situationen, bei denen diese Vorwärtsbewegung nicht möglich ist, rückwärts fährt. Eine stetige Funktion, welche eine Aussage über die Fahrtrichtung des Roboterfahrzeuges bzw. der beweglichen Einheit BE liefert, lässt sich demnach ebenfalls mit einem Skalarprodukt R2 × R2 → R definieren: In many applications, especially in robotic applications, it is advantageous if the robotic vehicle moves forward and moves backwards only in special situations where this forward movement is not possible. A continuous function, which provides a statement about the direction of travel of the robot vehicle or the movable unit BE, can therefore likewise be defined with a scalar product R 2 × R 2 × R:

Figure 00220001
Figure 00220001

Nimmt die Fahrtrichtung dir einen negativen Wert an, so bewegt sich das Roboterfahrzeug BE rückwärts. Die Fehler- bzw. Zielfunktion besitzt in diesem Fall eine vergleichbare Form, wie die der positiven Zeitintervalle. Unter Verwendung von Gleichung (8) und einem xr = 0 folgt: Fk(dir) = eΓ(–dir) (39) If the direction of travel assumes a negative value, the robotic vehicle BE moves backwards. The error or target function in this case has a similar form as that of the positive time intervals. Using equation (8) and an x r = 0, it follows: F k (dir) = e Γ (-dir) (39)

Weiterhin ist es möglich vorzusehen, dass verschiedene Bahnkonfigurationen xi abhängig von der Zeit möglichst gleichmäßig verteilt werden. Bei einer möglichen Anwendung könnte zum Beispiel erwartet werden, dass innerhalb eines vorgegebenen Regeltaktes eine neue Bahnkonfiguration mit Zustandsinformationen vorliegt. Furthermore, it is possible to provide that different path configurations x i are distributed as evenly as possible over time. For example, in one possible application, it might be expected that within a given control clock there will be a new lane configuration with state information.

Die gesuchte Fehler- bzw. Zielfunktion stellt eine Abweichung der Zeitdifferenz ΔTi von einer vorgegebenen Taktdauer T eines Regeltaktes als Fehler bewertet dar. Fk(ΔTi) = (T – ΔTi)2 (40) The sought fault or target function represents a deviation of the time difference .DELTA.T i from a predetermined cycle time T of a control clock is evaluated as an error. F k (ΔT i ) = (T - ΔT i ) 2 (40)

In einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens erfolgt die Berechnung der Bahn bzw. Trajektorie in Echtzeit. 3 zeigt ein Diagramm einer echtzeitfähigen Implementierung des erfindungsgemäßen Verfahrens bzw. einer erfindungsgemäßen Steuervorrichtung. Zunächst wird in einer Initialisierungsphase INIT im Schnitt S1 unter Berücksichtigung eines gegebenen Pfades, welcher durch eine Folge von Zwischenzielen Zj repräsentiert wird, ein "Timed Elastic In one possible embodiment of the method according to the invention, the calculation of the path or trajectory takes place in real time. 3 shows a diagram of a real-time implementation of the inventive method or a control device according to the invention. First, in an initialization phase INIT in section S1, taking into account a given path, which is represented by a sequence of intermediate destinations Z j , a "Timed Elastic

Band" TEB erstellt. Das "Timed Elastic Band" lässt sich, wie in Gleichung (4) angegeben, definieren. Das TEB soll ausgehend von einer aktuellen Position und Orientierung der beweglichen Einheit BE einen Weg zum Ziel finden. Dadurch wird der Startpunkt des Bandes eindeutig festgelegt. Anschließend wird, wie in 3 dargestellt, bei jedem transformierten Zwischenziel Zj eine Bahn bzw. Bahnkonfiguration xi ∊ Q eingefügt. Die Bahnkoordinaten xi und yi entsprechen hierbei den Zwischenzielkoordinaten x, y ∊ Zj. Dabei kann der Orientierungswinkel βi derart gewählt werden, dass die Konfiguration xi auf die nachfolgende Konfiguration xi + 1 gerichtet ist. Dies entspricht einer gewünschten Reihenfolge beim Abfahren der Bahn B. Weiterhin können zwischen den Konfigurationen xi und xi + 1 Zeitdifferenzen ΔTiτ mit einem Initialwert erzeugt werden. The "Timed Elastic Band" can be defined as given in Equation (4) The TEB shall find a way to the target based on a current position and orientation of the moving unit BE, thereby becoming the starting point of the band Then, as in 3 represented, at each transformed intermediate destination Z j a path or track configuration x i ε Q inserted. The path coordinates x i and y i here correspond to the intermediate destination coordinates x, y ε Z j . In this case, the orientation angle β i can be chosen such that the configuration x i is directed to the following configuration x i + 1. This corresponds to a desired sequence when tracing the web B. Furthermore, time differences ΔT i τ can be generated with an initial value between the configurations x i and x i + 1.

Die durch das "Timed Elastic Band" TEB dargestellte Trajektorie B wird bei der Berechnung durch verschiedene Einflüsse verlängert bzw. verkürzt. Dazu zählt beispielsweise das Ausweichen vor Hindernissen H oder das Entfernen von unnötigen Umwegen auf dem Weg zum Ziel. Gleichzeitig benötigt der Roboter bzw. die bewegliche Einheit BE in einem vorgegebenen Takt Stellwerte, die aus den TEB-Zuständen berechnet werden. Daher werden während der Trajektorienmodifikation TM im Schritt S2 neue Zustände nach Bedarf eingefügt und wieder entfernt. Zur Steuerung einer Anzahl von Band- bzw. Bahnzuständen werden die Zeitdifferenzen ΔTi herangezogen, um ebenfalls die Taktvorgabe erfüllen zu können. An dieser Stelle kann mit ε1 und ε2 + ∊ R+ ein ΔTmin und ein ΔTmax vorgegeben werden: ΔTmin = T – ε1 ΔTmax = T + ε2 The trajectory B represented by the "Timed Elastic Band" TEB is lengthened or shortened in the calculation by various influences. This includes, for example, avoiding obstacles H or removing unnecessary detours on the way to the destination. At the same time, the robot or the movable unit BE needs setting values which are calculated from the TEB states at a predetermined cycle. Therefore, during the trajectory modification TM, new states are inserted and removed as needed in step S2. To control a number of band or track conditions, the time differences .DELTA.T i are used to also meet the clock specification. At this point, ε 1 and ε 2 + ε R + can be used to specify a ΔT min and a ΔT max : ΔT min = T - ε 1 ΔT max = T + ε 2

Unter Verwendung eines minimalen Zeitintervalls ΔTmin und des maximalen Zeitintervalls ΔTmax wird eine Hysterese implementiert, um ein starkes Rauschen des TEB zu vermeiden. Weiterhin werden Oszillationen zwischen dem Einfügen und Entfernen von Zuständen vermieden. Beispielsweise kann bei einem ΔTi > ΔTmax eine Konfiguration mittig zwischen xi und xi + 1 eingefügt werden, wobei ΔTi in zwei neue Zeitdifferenzen gleicher Länge zerlegt wird. Ein Zustand xi und ΔTi wird entfernt, sobald ΔTi < ΔTmin und gleichzeitig ΔTi + 1 < ΔTmin erfüllt sind. Using a minimum time interval ΔT min and the maximum time interval ΔT max , hysteresis is implemented to avoid strong noise of the TEB. Furthermore, oscillations between the insertion and removal of states are avoided. For example, at a ΔT i > ΔT max, a configuration may be inserted midway between x i and x i + 1, where ΔT i into two new time differences of equal length is decomposed. A state x i and i .DELTA.T is removed when .DELTA.T i <.DELTA.T min while .DELTA.T i + 1 <.DELTA.T min are met.

Wie in 3 dargestellt, werden in einem weiteren Schritt S3 Bahnzustände mit Zwischenzielen bzw. Hindernissen verknüpft. In diesem Schritt S3 kann eine Mappingtabelle MT erstellt werden, welche Zwischenziele und Hindernisse mit den nächstgelegenen TEB-Konfigurationen verknüpft. Hierzu werden für jedes Zwischenziel Zj und für jedes Hindernis ol Punktzu-Punkt-Abstände zu jeder TEB-Konfiguration xi berechnet und anschließend ein Minimum ermittelt. Die Hinderniskoordinaten ol können sich aus der Berechnung von Punktwolken aus Laserscannerdaten einer anschließenden Transformation in das Bahnkoordinatensystem ergeben. Bei n Bahnzuständen, m Zwischenzielen und z Hindernispunkten sind demnach n·m + m·z Abstandsberechnungen durchzuführen. As in 3 shown, track conditions are linked to intermediate goals or obstacles in a further step S3. In this step S3, a mapping table MT can be created which links intermediate destinations and obstacles with the nearest TEB configurations. For this purpose, for each intermediate destination Z j and for each obstacle o 1, point-to-point distances to each TEB configuration x i are calculated and then a minimum is determined. The obstacle coordinates o l may result from the calculation of point clouds from laser scanner data of a subsequent transformation in the path coordinate system. For n orbit states, m intermediate destinations and z obstruction points, it is therefore necessary to carry out n * m + m * z distance calculations.

Die im Schritt S3 erstellte Mappingtabelle MT kann zu einer Graphenerstellung im Schritt S4 herangezogen werden, um die Zwischenziel- und Hinderniskanten mit den zugehörigen Zuständen bzw. Knoten zu erzeugen. In einem weiteren Schritt S5 werden alle Knoten für Bahnzustände, Zwischenziele und Hindernispunkte in einem TEB-Hyper-Graphen HG eingefügt. 5 zeigt eine beispielhafte Graphenstruktur für einen Hyper-Graphen HG. Dabei können die Start – sowie Zielkonfigurationen unter Berücksichtigung der Start-End-Geschwindigkeit sowie der Start-End-Beschleunigung sowie die Zwischenziele und Hindernispunkte fixiert werden, da sie in der Regel keine Freiheitsgrade des Systems darstellen. Bei Erstellung des vollständigen Hyper-Graphen HG wird dieser optimiert. Dazu kann eine Optimierungsfunktion eines Frameworks aufgerufen werden, welche eine definierte Anzahl an Iterationen durchführt. Sobald eine optimierte Bahn bzw. ein optimiertes Band B*(Q, τ) berechnet worden ist, kann bei einer Reinitialisierung im Schritt S6 das TEB B(Q, τ) durch das optimierte Band B* ersetzt werden. In einem weiteren Schritt S7 kann die optimierte Trajektorie überprüft werden, wie in 3 dargestellt. Dabei wird überprüft, ob die berechnete Trajektorie T tatsächlich die gegebenen Anforderungen einhält. Dazu werden beispielsweise an dieser Stelle Abstände zu den Hindernissen H und Zwischenzielen berechnet und mit den Vorgaben der Randbedingungen verglichen. Fällt das Ergebnis negativ aus, kann diese Information in einer Nachricht JA/NEIN (J/N) verschickt werden, so dass ein zu optimierender Weg gesucht wird. The mapping table MT created in step S3 can be used for a graph creation in step S4 in order to generate the intermediate target and obstacle edges with the associated states or nodes. In a further step S5, all nodes for path states, intermediate destinations and obstacle points are inserted in a TEB hyper-graph HG. 5 shows an exemplary graph structure for a hyper graph HG. The start and target configurations can be fixed taking into account the start-end speed as well as the start-end acceleration as well as the intermediate goals and obstacle points, as they usually do not represent any degrees of freedom of the system. When the full hyper graph HG is created, it will be optimized. For this purpose, an optimization function of a framework can be called, which performs a defined number of iterations. Once an optimized trajectory or band B * (Q, τ) has been calculated, upon reinitialization in step S6, the TEB B (Q, τ) may be replaced by the optimized band B *. In a further step S7, the optimized trajectory can be checked, as in 3 shown. It is checked whether the calculated trajectory T actually complies with the given requirements. For this purpose, for example, distances to the obstacles H and intermediate destinations are calculated at this point and compared with the specifications of the boundary conditions. If the result is negative, this information can be sent in a message YES / NO (Y / N), so that a path to be optimized is sought.

Sobald die Trajektorie bzw. Bahn berechnet worden ist, werden auf Basis der berechneten optimierten Trajektorie bzw. auf Basis der optimierten Bahn B* Stellgrößen im Schritt S8 berechnet, wie in 3 dargestellt. Beispielsweise könnten translatorische und rotatorische Geschwindigkeiten v, ω, abgeleitet werden und ein Antrieb, insbesondere ein Motor, der beweglichen Einheit BE entsprechend im Schritt S9 angesteuert werden. Die mittleren Stellgrößen können beispielsweise in Form einer Nachricht an einen Robotertreiber weitergeleitet werden. Ergibt sich bei der Überprüfung der optimierten Trajektorie, dass bestimmte Randbedingungen nicht erfüllt sind, kann das Roboterfahrzeug BE angehalten werden. Once the trajectory or trajectory has been calculated, manipulated variables are calculated in step S8 on the basis of the calculated optimized trajectory or on the basis of the optimized trajectory B, as in FIG 3 shown. For example, translational and rotational speeds v, ω, could be derived and a drive, in particular a motor, the movable unit BE are driven in accordance with step S9. The average manipulated variables can be forwarded, for example, in the form of a message to a robot driver. If, when checking the optimized trajectory, certain constraints are not fulfilled, the robot vehicle BE can be stopped.

Das erfindungsgemäße Verfahren zur Steuerung einer Bewegung einer beweglichen Einheit BE im Raum entsprechend einer berechneten Trajektorie B lässt sich vielseitig einsetzen. Beispielsweise kann das erfindungsgemäße Verfahren zum Steuern einer Bewegung einer beweglichen Einheit BE, insbesondere von Gelenken eines mehrgelenkigen Roboters bzw. mehrgelenkigen Roboterarms, eingesetzt werden. Weiterhin kann das erfindungsgemäße Verfahren beispielsweise zum Steuern eines beweglichen Roboterfahrzeugs BE in einer Ebene eingesetzt werden. Weitere mögliche Anwendungsbeispiele sind beispielsweise die Berechnung einer Trajektorie für ein Flugzeug oder einem sonstigen Flugkörper, wobei gleichzeitig verschiedene Zielfunktionen, wie der Zeitbedarf für das Durchfliegen einer Strecke sowie der Energiebedarf, optimiert werden. Weiterhin kann das erfindungsgemäße Verfahren beispielsweise bei Kraftfahrzeugen eingesetzt werden, um beispielsweise bei einem Spurwechsel das Fahrzeug entsprechend einer berechneten Trajektorie zu steuern, wobei insbesondere Kollisionen mit anderen Fahrzeugen vermieden werden. Je nach Anwendungsfall können verschiedene Zielfunktionen stärker oder schwächer gewichtet werden. Bei dem erfindungsgemäßen Verfahren erfolgt eine Gesamtbetrachtung bei der Steuerung entsprechend einer hinsichtlich verschiedener Ziele optimierten Trajektorie B. In einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens werden in einem ersten Zahlenfeld die Bahnkonfigurationen aufgeführt, wobei eine Bahnkonfiguration xi durch mehrere Variablen beschrieben sein kann. In einem zweiten Zahlenfeld werden die Zeitintervalle zwischen je zwei Bahnkonfigurationen xi und xi + 1 angegeben. Durch die Initialisierung ist klar, welche zwei Konfigurationen aufeinander folgen und welches Zeitintervall diesem Paar von Bahnkonfigurationen zugeordnet wird. Die zu minimierende Fehlerfunktion setzt sich bei dem erfindungsgemäßen Verfahren aus einzelnen Fehlerfunktionen zusammen, wobei eine Fehlerfunktion eine Bedingung an die zu planende Trajektorie erfassen kann. Weiterhin ist es möglich, zusätzlich Fehlerfunktionen zu definieren, die das Verhalten des verwendeten Optimierungsalgorithmus günstig beeinflussen. Beispielsweise können für jedes Zeitintervall und für jeden Iterationszyklus des Optimierungsverfahrens einzelne Sollwerte formuliert werden. Zur Optimierung der Fehlerfunktionen kann ein für schwach besetzte Matrizen besonders geeignetes Verfahren eingesetzt werden. The inventive method for controlling a movement of a movable unit BE in space according to a calculated trajectory B can be used in many ways. For example, the inventive method for controlling a movement of a movable unit BE, in particular joints of a multi-jointed robot or multi-articulated robot arm, can be used. Furthermore, the method according to the invention can be used for example for controlling a mobile robotic vehicle BE in one plane. Further possible application examples are, for example, the calculation of a trajectory for an aircraft or another missile, wherein at the same time different target functions, such as the time required for flying through a route and the energy requirement, are optimized. Furthermore, the inventive method can be used for example in motor vehicles, for example, to control the vehicle according to a calculated trajectory in a lane change, in particular collisions with other vehicles are avoided. Depending on the application, different target functions can be weighted more or less. In the inventive process an overall consideration in the control corresponding to an optimized with regard to various objectives trajectory B. In one possible embodiment of the inventive method, the web configurations are listed in a first number field, whereby a sheet configuration x i may be described by a number of variables. In a second number field, the time intervals between two path configurations x i and x i + 1 are given. The initialization makes it clear which two configurations follow each other and which time interval is assigned to this pair of lane configurations. The error function to be minimized is composed of individual error functions in the method according to the invention, wherein an error function can detect a condition on the trajectory to be planned. Furthermore, it is possible to additionally define error functions that favorably influence the behavior of the optimization algorithm used. For example, individual setpoints can be formulated for each time interval and for each iteration cycle of the optimization process. To optimize the error functions, a method particularly suitable for sparse matrices can be used.

Die Steuerungsvorrichtung SV zur Ansteuerung der beweglichen Einheit BE im Raum entsprechend der berechneten Trajektorie kann in der beweglichen Einheit BE selbst integriert sein. Alternativ kann die bewegliche Einheit BE durch eine entfernte Steuervorrichtung, beispielsweise über eine Funkschnittstelle, angesteuert werden. Das erfindungsgemäße Verfahren erlaubt eine zuverlässige Trajektorienplanung unter Berücksichtigung von kinematischen und fahrdynamischen Eigenschaften einer beweglichen Einheit BE. Ferner ist es möglich, bei einer Ausführungsvariante auch Eigenschaften des Fahruntergrundes bzw. der Fahrumgebung zu berücksichtigen. Das erfindungsgemäße Verfahren zum Steuern einer Bewegung einer beweglichen Einheit BE im Raum eignet sich für die Steuerung einer beliebigen beweglichen Einheit BE, insbesondere eines Straßenfahrzeugs, eines Schienenfahrzeugs, eines Flugzeugs sowie eines Wasserfahrzeugs. Der Raum kann zweidimensional bzw. eine Ebene sein oder dreidimensional, insbesondere, wenn es sich bei der beweglichen Einheit BE um ein Flugzeug handelt. The control device SV for controlling the movable unit BE in the room according to the calculated trajectory can be integrated in the mobile unit BE itself. Alternatively, the movable unit BE can be controlled by a remote control device, for example via a radio interface. The method according to the invention allows a reliable trajectory planning taking into account kinematic and dynamic properties of a mobile unit BE. Furthermore, it is possible to take into account in one embodiment also properties of the driving surface or the driving environment. The inventive method for controlling a movement of a movable unit BE in space is suitable for the control of any mobile unit BE, in particular a road vehicle, a rail vehicle, an aircraft and a watercraft. The space can be two-dimensional or one plane or three-dimensional, in particular if the movable unit BE is an aircraft.

Claims (15)

Verfahren zum Steuern einer Bewegung einer beweglichen Einheit (BE) im Raum entsprechend einer berechneten Trajektorie, wobei die Trajektorie eine Bewegungsbahn (B), die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der beweglichen Einheit (BE) bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben für die Bewegungsbahn (B) aufweist, die jeweils ein Zeitintervall angeben, welches die bewegliche Einheit (BE) für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn (B) benötigt, wobei die Trajektorie berechnet wird, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn (B) und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden. Method for controlling a movement of a mobile unit (BE) in space according to a calculated trajectory, wherein the trajectory comprises a trajectory (B) containing a sequence of trajectory configurations each indicating a position and orientation of the mobile unit (BE) as it moves in space, and time intervals for the trajectory (B), each time interval which the mobile unit (BE) needs for its movement between two adjacent path configurations of the trajectory (B), wherein the trajectory is calculated by simultaneously varying the path configurations of the trajectory (B) and the time intervals to minimize a weighted sum of objective functions. Verfahren nach Anspruch 1, wobei die Zielfunktionen aus einer Gruppe vorgegebener Zielfunktionen selektiert werden oder über eine Schnittstelle eingegeben werden. The method of claim 1, wherein the objective functions are selected from a group of predetermined objective functions or entered via an interface. Verfahren nach Anspruch 1 oder 2, wobei eine Zielfunktion eine Abweichung zwischen den Bahnkonfigurationen der Bewegungsbahn (B) und vorgegebenen Wegkonfigurationen angibt. A method according to claim 1 or 2, wherein a target function indicates a deviation between the path configurations of the trajectory (B) and predetermined path configurations. Verfahren nach einem der vorangehenden Ansprüche 1–3, wobei eine Zielfunktion einen Abstand zwischen den Bahnkonfigurationen der Bewegungsbahn (B) und vorgegebenen Hindernissen im Raum angibt. Method according to one of the preceding claims 1-3, wherein a target function indicates a distance between the path configurations of the movement path (B) and predetermined obstacles in space. Verfahren nach einem der vorangehenden Ansprüche 1–4, wobei eine Zielfunktion eine von der beweglichen Einheit (BE) bei seiner Bewegung entlang der Trajektorie benötigte Zeit angibt. Method according to one of the preceding claims 1-4, wherein a target function indicates a time required by the mobile unit (BE) in its movement along the trajectory. Verfahren nach einem der vorangehenden Ansprüche 1–5, wobei eine Zielfunktion ein von der beweglichen Einheit (BE) bei seiner Bewegung entlang der Trajektorie benötigte Energie angibt. Method according to one of the preceding claims 1-5, wherein a target function indicates an energy required by the mobile unit (BE) as it moves along the trajectory. Verfahren nach einem der vorangehenden Ansprüche 1 bis 6, wobei eine Zielfunktion eine von der beweglichen Einheit (BE) bei seiner Bewegung entlang der Trajektorie zulässige maximale translatorische Geschwindigkeit oder Beschleunigung angibt. Method according to one of the preceding claims 1 to 6, wherein a target function indicates a maximum translatory speed or acceleration permissible by the mobile unit (BE) as it moves along the trajectory. Verfahren nach einem der vorangehenden Ansprüche 1–7, wobei eine Zielfunktion eine von der beweglichen Einheit (BE) bei seiner Bewegung entlang der Trajektorie zulässige maximale rotatorische Geschwindigkeit oder Beschleunigung angibt. Method according to one of the preceding claims 1-7, wherein an objective function indicates a maximum rotational speed or acceleration permissible by the mobile unit (BE) as it travels along the trajectory. Verfahren nach einem der vorangehenden Ansprüche 1–8, wobei eine Zielfunktion eine Verletzung einer kinematischen Zwangsbedingung der Bewegungsbahn bei der Bewegung der beweglichen Einheit (BE) entlang der Trajektorie angibt. Method according to one of the preceding claims 1-8, wherein a target function indicates a violation of a kinematic constraint condition of the trajectory in the movement of the movable unit (BE) along the trajectory. Verfahren nach einem der vorangehenden Ansprüche 1–9, wobei die Berechnung der Trajektorie in Echtzeit erfolgt. Method according to one of the preceding claims 1-9, wherein the calculation of the trajectory takes place in real time. Steuervorrichtung zum Steuern einer Bewegung einer beweglichen Einheit (BE) im Raum entsprechend einer berechneten Trajektorie, wobei die Trajektorie eine Bewegungsbahn (B), die eine Folge von Bahnkonfigurationen enthält, welche jeweils eine Position und eine Orientierung der beweglichen Einheit (BE) bei deren Bewegung im Raum angeben, sowie Zeitintervallsangaben (ΔT) für die Bewegungsbahn (B) aufweist, die jeweils ein Zeitintervall angeben, welches die bewegliche Einheit (BE) für deren Bewegung zwischen zwei benachbarten Bahnkonfigurationen der Bewegungsbahn (B) benötigt, wobei die Steuervorrichtung SV eine Berechnungsvorrichtung enthält, welche die Trajektorie berechnet, indem gleichzeitig die Bahnkonfigurationen der Bewegungsbahn (B) und die Zeitintervalle zur Minimierung einer gewichteten Summe von Zielfunktionen variiert werden. Control device for controlling a movement of a movable unit (BE) in space according to a calculated trajectory, the trajectory having a trajectory (B) containing a sequence of trajectories each indicating a position and orientation of the movable unit (BE) as it travels in space and time intervals (ΔT) for the trajectory (B) each indicate a time interval which the mobile unit (BE) requires for its movement between two adjacent path configurations of the trajectory (B), the control device SV containing a computation device which calculates the trajectory by simultaneously defining the path configurations of the trajectory (B) and the Time intervals are varied to minimize a weighted sum of objective functions. Steuervorrichtung nach Anspruch 11, wobei die bewegliche Einheit (BE) ein beweglicher Roboterarm oder ein bewegliches Roboterfahrzeug oder ein Flugzeug oder ein Straßenfahrzeug oder ein Wasserfahrzeug oder ein Schienenfahrzeug ist. Control device according to claim 11, wherein the movable unit (BE) is a movable robot arm or a mobile robotic vehicle or an aircraft or a road vehicle or a watercraft or a rail vehicle. Steuervorrichtung nach Anspruch 11 oder 12, wobei die Steuervorrichtung (SV) eine Schnittstelle zur Eingabe von Zielfunktionen oder zur Selektion von Zielfunktionen aus einer vorgegebenen Gruppe von Zielfunktionen aufweist. Control device according to claim 11 or 12, wherein the control device (SV) has an interface for inputting target functions or for selecting target functions from a predetermined group of target functions. Bewegliche Einheit (BE) mit integrierter Steuervorrichtung (SV) nach einem der vorangehenden Ansprüche 10–13. Movable unit (BE) with integrated control device (SV) according to one of the preceding claims 10-13. Bewegliche Einheit nach Anspruch 14, wobei die bewegliche Einheit (BE) ein bewegliches Roboterfahrzeug oder ein beweglicher Roboterarm oder ein Flugzeug oder ein Straßenfahrzeug oder ein Wasserfahrzeug oder ein Schienenfahrzeug ist. A movable unit according to claim 14, wherein the movable unit (BE) is a moving robot vehicle or a movable robot arm or an airplane or a road vehicle or a watercraft or a rail vehicle.
DE201210206952 2012-04-26 2012-04-26 Method and device for controlling the movement of a mobile unit in space Ceased DE102012206952A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE201210206952 DE102012206952A1 (en) 2012-04-26 2012-04-26 Method and device for controlling the movement of a mobile unit in space
PCT/EP2013/058135 WO2013160195A1 (en) 2012-04-26 2013-04-19 Method and device for controlling the motion of a movable unit in space

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201210206952 DE102012206952A1 (en) 2012-04-26 2012-04-26 Method and device for controlling the movement of a mobile unit in space

Publications (1)

Publication Number Publication Date
DE102012206952A1 true DE102012206952A1 (en) 2013-10-31

Family

ID=48430670

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201210206952 Ceased DE102012206952A1 (en) 2012-04-26 2012-04-26 Method and device for controlling the movement of a mobile unit in space

Country Status (2)

Country Link
DE (1) DE102012206952A1 (en)
WO (1) WO2013160195A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018101515A1 (en) * 2018-01-24 2019-07-25 Valeo Schalter Und Sensoren Gmbh Method for generating a driving strategy of a vehicle
US11179850B2 (en) 2019-04-24 2021-11-23 Intrinsic Innovation Llc Robot motion planning
US11526823B1 (en) 2019-12-27 2022-12-13 Intrinsic Innovation Llc Scheduling resource-constrained actions
CN117371639A (en) * 2023-12-06 2024-01-09 合肥工业大学 Torpedo tank motion optimization method, electronic equipment and readable storage medium

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR102016024151B1 (en) 2016-01-06 2021-10-13 Cnh Industrial America Llc COMPUTER-READABLE TANGIBLE NON TRANSITIONAL MEDIUM, SYSTEM AND METHOD FOR CONTROLLING AT LEAST ONE STANDALONE AGRICULTURAL VEHICLE
CN113325846B (en) * 2021-05-31 2024-02-27 西安建筑科技大学 Strip mine unmanned mine card dynamic path planning method based on improved TEB method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3210121B2 (en) * 1992-02-10 2001-09-17 本田技研工業株式会社 Obstacle avoidance route search method for moving objects
DE4408982C1 (en) * 1994-03-16 1995-05-18 Deutsche Forsch Luft Raumfahrt Autonomous navigation system for mobile robot or manipulator
US7603212B2 (en) * 2006-03-30 2009-10-13 Honeywell International, Inc. Real time planning and scheduling for a team of unmanned vehicles
EP2821876A3 (en) * 2008-09-03 2015-05-20 Murata Machinery, Ltd. Route planning method, route planning unit, and autonomous mobile device
US20100114338A1 (en) * 2008-10-31 2010-05-06 Gm Global Technology Operations, Inc. Multi-goal path planning of welding robots with automatic sequencing
JP5398489B2 (en) * 2009-11-20 2014-01-29 村田機械株式会社 Autonomous mobile object and its control method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Benjamin, Michael R.: Multi-objective autonomous vehicle navigation in the presence of cooperative and adversarial moving contacts. In OCEANS'02 MTS/IEEE. Vol. 3. IEEE, 2002. *
Gecks, Thorsten, and Dominik Henrich: Sensor-based Online Planning of Time-optimized Paths in Dynamic Environments. In Advances in Robotics Research (2009): 53-63. *
Quinlan, Sean: Real-time modification of collision-free paths. Diss. Stanford University, 1994. *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018101515A1 (en) * 2018-01-24 2019-07-25 Valeo Schalter Und Sensoren Gmbh Method for generating a driving strategy of a vehicle
US11179850B2 (en) 2019-04-24 2021-11-23 Intrinsic Innovation Llc Robot motion planning
US11833694B2 (en) 2019-04-24 2023-12-05 Intrinsic Innovation Llc Robot motion planning
US11526823B1 (en) 2019-12-27 2022-12-13 Intrinsic Innovation Llc Scheduling resource-constrained actions
CN117371639A (en) * 2023-12-06 2024-01-09 合肥工业大学 Torpedo tank motion optimization method, electronic equipment and readable storage medium
CN117371639B (en) * 2023-12-06 2024-02-27 合肥工业大学 Torpedo tank motion optimization method, electronic equipment and readable storage medium

Also Published As

Publication number Publication date
WO2013160195A1 (en) 2013-10-31

Similar Documents

Publication Publication Date Title
EP2378383B1 (en) Method for operating a holonomic/omnidirectional industrial truck
DE102018122376B3 (en) Method and device for collision-free motion planning of a manipulator
EP2255931B1 (en) Method and device for controlling a manipulator
DE102014115774B3 (en) A robotic system and method for avoiding contact between a robotic system gripping member and a dynamic environmental obstacle
DE102012206952A1 (en) Method and device for controlling the movement of a mobile unit in space
EP1366867B1 (en) Method and device for avoiding collisions between industrial robots and other objects
DE112021001104T5 (en) MOVEMENT PLANNING METHOD WITH COLLISION AVOIDANCE FOR INDUSTRIAL ROBOTS
DE102009024130B4 (en) Method for real-time capable path planning of continuous, jerk-free setpoint trajectories
EP3676680A1 (en) Movement planning for autonomous mobile robots
DE102021107453A1 (en) FAST ROBOT MOTION OPTIMIZATION WITH DISTANCE FIELD
DE102015223258A1 (en) Method for editing the surface of a three-dimensional object
DE102015103451B4 (en) Method for the time-discrete control of drivable axes and computer program product
DE102014103370B4 (en) Method and device for discrete-time control of a manipulator
EP3023205B1 (en) Method for determining a movement limit
EP3705663B1 (en) Articulated arm control for a concrete pump
DE4425924A1 (en) Autonomous mobile unit with space-saving manipulator and associated control procedure
WO2010085944A1 (en) Method for avoiding collisions of parts of a system that perform controlled motions
DE102006055917A1 (en) Method for recognition of inaccurately parameterized robot model, involves entering parameter in control device of industrial robot, and parameter of behavior depicts device moved by industrial robot
EP3227061A1 (en) Method for motion simulation of a manipulator
DE102020129369A1 (en) IMPROVED VEHICLE OPERATION
DE102020100749A1 (en) DETERMINATION OF ROUTES FOR VEHICLES
DE102022122663A1 (en) METHOD OF DYNAMIC VELOCITY CHANGE FOR A ROBOTIC SYSTEM
EP3225366B1 (en) Monitoring of the position of a kinematic
DE102016212911A1 (en) Method and device for controlling a robot movement of a robot using a second trajectory
EP3705662B1 (en) Articulated arm control for a concrete pump

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20140611