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 PDFInfo
- 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
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40446—Graph based
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40455—Proximity of obstacles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40463—Shortest distance in time, or metric, time optimal
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40512—Real 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.
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
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:
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:
Weiterhin kann jede Band- bzw. Bahnkonfiguration durch einen Zustandsvektor xi ∊ R2 × S1 in der folgenden Form beschrieben werden: Furthermore, each band configuration may be described by a state vector x i ∈ R 2 × S 1 in the following form:
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
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 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 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: wobei die Fehlerfunktion nicht stetig differenzierbar ist und durch einen stückweise polynomialen Verlauf um xr approximiert werden kann: If a real variable x is bounded by x r ε R, one possible associated ideal error function is: where the error function is not continuously differentiable and can be approximated by a piecewise polynomial curve around x r :
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: 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 :
Ein Abstand
Eine resultierende Fehlerfunktion bzw. Zielfunktion Fk für eine Wegkonfiguration kann sich unter Verwendung der Gleichung (10) wie folgt berechnen lassen:
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:
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:
In einer möglichen Ausführungsform wird ein derartiger Hindernispunkt mit einem minimalen Abstandwelcher 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: In one possible embodiment, such obstacle point becomes a minimum distance 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:
Unter Verwendung der Approximation von Randbedingungen entsprechend Gleichung (8) und dem Abstand aus Gleichung (14) und dem Parameterlautet die Ziel- bzw. Fehlerfunktion zur Kollisionsvermeidung:
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: The average velocity between two orbit configurations x i and x i + 1 is roughly approximate to the relationship:
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: 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:
Mit der Gleichung (8) und einer Maximalgeschwindigkeit vmax folgt eine Fehler- bzw. Zielfunktion der folgenden Form:
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: 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: 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:
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.
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
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
Die beschränkenden Größen sind in diesem Falleund The limiting quantities are in this case and
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: 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:
Die Fehlerfunktion bzw. Zielfunktion lautet dann analog zu den Geschwindigkeiten unter Berücksichtigung einer Maximalbeschleunigung amax wie folgt:
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: 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:
Folglich ergibt sich mit einer maximalen Winkelbeschleunigung
Bei einem Roboterfahrzeug BE mit Differentialantrieb, wie es beispielsweise in
Demgemäß ergeben sich mit Maximalbeschleunigungenund die Fehler- bzw. Zielfunktionen für beide Räder R des Roboterfahrzeuges BE zu: Accordingly arise with maximum accelerations and the error or target functions for both wheels R of the robot vehicle BE to:
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: 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:
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:
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:
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:
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.
In einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens erfolgt die Berechnung der Bahn bzw. Trajektorie in Echtzeit.
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
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:
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
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.
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
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)
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)
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)
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)
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 |
-
2012
- 2012-04-26 DE DE201210206952 patent/DE102012206952A1/en not_active Ceased
-
2013
- 2013-04-19 WO PCT/EP2013/058135 patent/WO2013160195A1/en active Application Filing
Non-Patent Citations (3)
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)
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 |