-
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur rechnergestützten Bewegungsplanung eines Roboters.
-
Die Bewegungsplanung eines Roboters hat zum Ziel, eine Trajektorie der Roboterbewegung zwischen einer Start- und einer Zielposition derart zu ermitteln, dass entlang der Trajektorie keine Kollisionen des Roboters mit Objekten im Umfeld des Roboters auftreten. Zur Ermittlung der Kollisionsfreiheit einer Trajektorie wird in Planungsverfahren (im Folgenden auch als Bewegungsplaner bezeichnet) die Geometrie des Roboters in einem ortsfesten Koordinatensystem für eine Vielzahl von Roboterpositionen bestimmt und mit gespeicherten Positionen von Objekten im Umfeld des Roboters verglichen.
-
Aus dem Stand der Technik sind verschiedene Planungsverfahren bekannt, welche für unterschiedliche Kinematiken der Roboterbewegung und Umgebungen, in denen die Roboterbewegung durchgeführt wird, Vor- und Nachteile aufweisen. Beispiele solcher Bewegungsplaner sind regelbasierte Bewegungsplaner, Bewegungsplaner basierend auf der Potentialfeldmethode oder probabilistische Planer.
-
Ein regelbasierter Planer plant eine Trajektorie basierend auf Regelsätzen, wobei ein Regelsatz festlegt, wie ein Roboter aufeinander folgend seine Position verändern soll. Es werden dabei während der Planung verschiedene Regelsätze ausprobiert, bis eine Trajektorie gefunden wird, welche kollisionsfrei ist. Bei der Bewegungsplanung nach der Potentialfeldmethode werden um Objekte im Umfeld des Roboters abstoßende Potentialfelder definiert, welche sicherstellen, dass Teile des Roboters nicht mit den Objekten in Berührung kommen. Bei probabilistischen Planern erfolgt die Planung der Trajektorie basierend auf einer zufälligen Auswahl von Zwischenpositionen für die zu planende Bewegungstrajektorie und deren Überprüfung auf Kollisionsfreiheit, wobei das Verfahren beendet wird, wenn ein kollisionsfreier Weg zwischen Start- und Zielposition der Trajektorie gefunden ist.
-
Bei der herkömmlichen Bewegungsplanung wird vorab das gemäß der Aufgabenstellung am besten geeignete Planungsverfahren, beispielsweise manuell durch einen Benutzer, ausgewählt. Die Parameter des ausgewählten Verfahrens werden dann für die gesamte Planungsaufgabe verwendet. Durch den Einsatz eines einzelnen Bewegungsplaners kann jedoch nicht sichergestellt werden, dass das Planungsverfahren bei der gesamten Planung der Trajektorie auch immer das am besten geeignete ist.
-
Die Druckschrift
US 6,229,552 B1 beschreibt einen Bewegungsplaner zur Ermittlung von kollisionsfreien Trajektorien der Bewegung eines Roboters, wobei der Roboter im Rahmen seiner Bewegung ein Objekt greift und manipuliert.
-
In dem Dokument
DE 695 15 464 T2 ist ein Verfahren zur Planung von Roboterbewegungen offenbart, welches einen Grobbewegungsplan und einen Feinbewegungsplan des Roboters erzeugt.
-
Die Druckschrift
DE 102 00 534 A1 beschreibt ein Verfahren zum kollisionsfreien Bewegen wenigstens zweier gegeneinander bewegbarer Gegenstände, wobei es sich bei den Gegenständen insbesondere um Teile einer medizinischen Untersuchungs- und/oder Behandlungseinrichtung handelt.
-
In der Druckschrift
WO 2006/022827 A2 ist ein Verfahren zur Planung der Bewegung eines Fahrzeugs unter Berücksichtigung von probabilistischem Wissen über die Fahrzeugbewegung und die Bewegung von Hindernissen offenbart.
-
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren und eine Vorrichtung zur rechnergestützten Bewegungsplanung eines Roboters zu schaffen, welche flexibel eine kollisionsfreie Trajektorie zwischen einer Startposition und einer Zielposition planen.
-
Diese Aufgabe wird durch das Verfahren gemäß dem unabhängigen Patentanspruch 1 oder die Vorrichtung gemäß dem unabhängigen Patentanspruch 12 gelöst. Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den abhängigen Ansprüchen definiert.
-
In dem erfindungsgemäßen Verfahren werden eine Mehrzahl von zumindest teilweise verschiedenen Bewegungsplanern und eine Konfiguration bereitgestellt, wobei durch die Konfiguration spezifiziert wird, unter welchen Bedingungen die jeweiligen Bewegungsplaner bei der Planung der Trajektorie eingesetzt werden. Die Trajektorie wird dabei basierend auf der Konfiguration durch einen oder mehrere Bewegungsplaner aus der Mehrzahl von Bewegungsplanern bestimmt. Hier und im Folgenden sind unter verschiedenen Bewegungsplanern solche Planer zu verstehen, welche sich in der Art des verwendeten Planungsverfahrens und/oder in de Parametern des Planungsverfahrens unterscheiden. Parameter eines Planers sind bei einem regelbasierten Planer beispielsweise die verwendeten Regelsätze.
-
Erfindungsgemäß sind die Bewegungsplaner der Mehrzahl von Bewegungsplanern in einer hierarchischen Baumstruktur aus Knoten umfassend zumindest einen Elternknoten und einen Kindknoten angeordnet, wobei jeder Bewegungsplaner einen Knoten darstellt und der oder die Kindknoten eines Elternknotens die Bewegungsplaner spezifizieren, welche von dem Bewegungsplaner des Elternknotens zur Planung zumindest eines Teils der Trajektorie beauftragt werden. Auf diese Weise kann ein Bewegungsplaner nicht nur die Planung einer Trajektorie durchführen, sondern auch festlegen, für welche Trajektorienteile hierarchisch untergeordnete Bewegungsplaner verwendet werden sollen.
-
Das erfindungsgemäße Verfahren beruht auf der Erkenntnis, dass bei einer Bewegungsplanung nicht nur ein einzelner Bewegungsplaner, sondern auch mehrere unterschiedliche Bewegungsplaner eingesetzt werden können. Durch eine entsprechende Konfiguration der Bewegungsplaner, welche die Bedingungen festlegt, unter denen die jeweiligen Bewegungsplaner verwendet werden, kann erfindungsgemäß eine flexible, an spezifische Gegebenheiten angepasste Bewegungsplanung bereitgestellt werden.
-
In einer bevorzugten Ausführungsform der Erfindung stellen ein oder mehrere Bewegungsplaner der Mehrzahl von bereitgestellten Bewegungsplanern Teilabschnittsplaner dar, welche jeweils zur Planung eines vorbestimmten Teilabschnitts der Trajektorie eingesetzt werden. Somit kann eine geeignete Anpassung an unterschiedliche räumliche Gegebenheiten im Umfeld des Roboters erfolgen. Ein vorbestimmter Teilabschnitt der Trajektorie ist dabei durch eine entsprechende Anfangs- und Endposition dieses Teilabschnitts spezifiziert, zwischen denen die Bewegung zu planen ist.
-
In einer weiteren, bevorzugten Ausführungsform der Erfindung spezifiziert zumindest ein Teilabschnittsplaner zumindest einen weiteren Teilabschnittsplaner, der zur Planung eines anderen als des vorbestimmten Teilabschnitts eingesetzt wird. Auf diese Weise kann eine feingranulare Unterteilung der Bewegungsplanung für beliebige Teilabschnitte der zu planenden Trajektorie erreicht werden.
-
In einer weiteren Ausgestaltung des erfindungsgemäßen Verfahrens wird im Falle, dass ein Bewegungsplaner die Trajektorie oder einen vorbestimmten Teilabschnitt der Trajektorie nicht planen kann, ein alternativer Bewegungsplaner zum Planen der Trajektorie oder des vorbestimmten Teilabschnitts der Trajektorie eingesetzt. Auf diese Weise wird sichergestellt, dass im Regelfall immer eine Trajektorie gefunden wird. Bei der Bewegungsplanung gemäß dem Stand der Technik, bei der nur ein einzelnes Planungsverfahren eingesetzt wird, kommt es hingegen öfters zu einer Fehlerausgabe dahingehend, dass keine Trajektorie geplant werden kann.
-
Die soeben beschriebene Variante des erfindungsgemäßen Verfahrens lässt sich sehr gut mit einer hierarchischen Baumstruktur von Bewegungsplanern kombinieren. Dabei stellen in der hierarchischen Baumstruktur die Kindknoten, welche zu dem gleichen Elternknoten gehören, alternative Planer dar, wobei im Falle, dass ein Kindknoten die Trajektorie oder einen vorbestimmten Teilabschnitt der Trajektorie nicht planen kann, ein anderer, zum gleichen Elternknoten gehöriger Kindknoten zur Planung der Trajektorie oder des vorbestimmten Teilabschnitts der Trajektorie eingesetzt wird.
-
Wie bereits oben erwähnt, können sich die zumindest teilweise verschiedenen Bewegungsplaner in der Art der Bewegungsplanung bzw. durch Parameter in der Bewegungsplanung unterscheiden. Die Bewegungsplaner selbst sind dabei beliebige Bewegungsplaner, z. B. probabilistische Bewegungsplaner und/oder regelbasierte Bewegungsplaner und/oder Bewegungsplaner basierend auf der Potentialfeldmethode. Beispielsweise kann ein an der Startposition beginnendes Anfangsstück und/oder ein an der Zielposition endendes Endstück der Trajektorie mit einem Bewegungsplaner basierend auf der Potentialfeldmethode geplant werden. Demgegenüber kann der Rest der Trajektorie ohne Anfangs- bzw. Endstück durch einen oder mehrere andere Bewegungsplaner, wie z. B. einen probabilistischen und/oder regelbasierten Bewegungsplaner geplant werden.
-
In einer besonders bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens kann die Konfiguration der Mehrzahl von Bewegungsplanern auf einfache Weise verändert werden. Dies geschieht dadurch, dass die Konfiguration durch eine Konfigurationsdatei in einem Speicher bereitgestellt wird, so dass durch Einlesen einer anderen Konfigurationsdatei in den Speicher auch eine andere Konfiguration der Bewegungsplanung in dem rechnergestützten Verfahren verwendet werden kann. Die einzelnen Bewegungsplaner selbst können dabei fest in einem Speicher zur Verwendung im erfindungsgemäßen Verfahren hinterlegt sein. Gegebenenfalls besteht jedoch auch die Möglichkeit, dass die Bewegungsplaner durch eine entsprechende Datei bereitgestellt werden.
-
Das erfindungsgemäße Verfahren kann zur Planung der Bewegung von beliebigen robotischen Systemen eingesetzt werden. In einer bevorzugten Variante wird mit dem Verfahren die Bewegung einer robotischen medizinischen Vorrichtung, insbesondere einer bildgebenden medizinischen Vorrichtung, geplant. Beispielsweise kann die Bewegung einer medizinischen Röntgeneinrichtung in der Form eines C-Bogens geplant werden, um hierdurch Kollisionen mit Objekten in der Umgebung des C-Bogens, z. B. mit dem zu röntgenden Patienten, zu vermeiden.
-
Neben dem oben beschriebenen Verfahren umfasst die Erfindung ferner eine Vorrichtung zur rechnergestützten Bewegungsplanung eines Roboters, welche im Betrieb eine kollisionsfreie Trajektorie zwischen einer Startposition und einer Zielposition plant. Die Vorrichtung beinhaltet dabei ein Mittel zur Bereitstellung einer Mehrzahl von zumindest teilweise verschiedenen Bewegungsplanern und einer Konfiguration, wobei durch die Konfiguration spezifiziert wird, unter welchen Bedingungen die jeweiligen Bewegungsplaner bei der Planung der Trajektorie eingesetzt werden. Das Mittel zur Bereitstellung kann z. B. ein entsprechender Speicher sein. Die Vorrichtung umfasst ferner ein Mittel zur Bestimmung der Trajektorie basierend auf der Konfiguration durch einen oder mehrere Bewegungsplaner aus einer Mehrzahl von Bewegungsplanern.
-
Die erfindungsgemäße Vorrichtung ist vorzugsweise derart ausgestaltet, dass jede Variante des erfindungsgemäßen Verfahrens mit dieser Vorrichtung durchführbar ist.
-
Die Erfindung betrifft darüber hinaus einen Roboter, insbesondere eine robotische medizinische Vorrichtung, umfassend die oben beschriebene erfindungsgemäße Vorrichtung zur rechnergestützten Bewegungsplanung.
-
Ausführungsbeispiele der Erfindung werden nachfolgend anhand der beigefügten 1 beschrieben. Diese Figur zeigt in schematischer Darstellung eine Bewegungsplanung mit einer Vielzahl von Planern basierend auf einer hierarchischen Baumstruktur gemäß einer Ausführungsform des erfindungsgemäßen Verfahrens.
-
1 zeigt in schematischer Darstellung eine Baumstruktur aus verschiedenen Bewegungsplanern, welche durch einzelne Knoten in der Baumstruktur wiedergegeben sind. Das Verfahren geht dabei von einer zu planenden Trajektorie der Bewegung eines Roboters zwischen einer festgelegten Startposition und Zielposition aus, welche in einem ortsfesten, sich nicht mit dem Roboter bewegenden Koordinatensystem liegen. Die Start- bzw. Zielposition wird beispielsweise für den sog. Tool-Center-Point des Roboters spezifiziert. Der Tool-Center-Point stellt dabei das letzte Element der kinematischen Kette des Roboters dar. Im Unterschied zu bekannten Bewegungsplanungsverfahren werden anstatt eines einzelnen Bewegungsplaners nunmehr eine Vielzahl von Bewegungsplanern eingesetzt, wobei durch die Baumstruktur gemäß 1 spezifiziert wird, unter welchen Bedingungen welcher der Planer zum Einsatz kommt.
-
Gemäß der Ausführungsform der 1 werden an einen übergeordneten Planer A zunächst die Start- und Zielposition der zu planenden Trajektorie übergeben. Dieser Planer stellt den Wurzelknoten der Baumstruktur dar und liegt in der (nullten) Hierarchieebene H0. Für diesen Planer A ist ein vorbestimmter Teil der zu planenden Trajektorie spezifiziert, wobei dieser Teil durch zwei Zwischenpositionen definiert ist, welche jeweilige Start- und Zielpositionen eines Teilabschnitts der Trajektorie darstellen. Je nach betrachteter Gesamttrajektorie kann auch der durch den Planer A zu planende Teilabschnitt in Abhängigkeit von der Start- und Zielposition der Gesamttrajektorie variieren. Gegebenenfalls kann unter bestimmten Bedingungen auch die Gesamttrajektorie durch den Bewegungsplaner A geplant werden, so dass die im Folgenden noch näher beschriebenen Bewegungsplaner in tieferen Hierarchieebenen überhaupt nicht zum Einsatz kommen.
-
Nachfolgend wird ein Beispiel einer Bewegungsplanung betrachtet, bei dem der Bewegungsplaner A nur einen Teilabschnitt der Trajektorie plant und die verbleibende Trajektorie an Bewegungsplaner in der tiefer liegende Hierarchieebene H1 übergibt. In der Hierarchieebene H1 befinden sich die Bewegungsplaner B1, B2, C1 und C2. Die Bewegungsplaner B1 und B2 bzw. C1 und C2 sind dabei Bewegungsplaner der gleichen Art, welche sich jedoch in ihren Parametern unterscheiden. Beispielsweise können die Bewegungsplaner B1 und B2 probabilistische Planer sein, wohingegen die Bewegungsplaner C1 und C2 regelbasierte Planer sind.
-
In der Hierarchieebene H1 beginnt zunächst der Bewegungsplaner B1 mit der Planung des Teils der Trajektorie, welcher nicht vom Planer A geplant wurde. Kann mit dem Planungsverfahren des Planers B1 keine entsprechende Trajektorie geplant werden, wird die Planung mit dem Planer B2 versucht. Scheitert auch dieser Planer, erfolgt die Planung mit dem Planer C1 und bei Scheitern mit dem Planer C1 anschließend mit dem Planer C2. In der Hierarchieebene H1 befinden sich somit alternative Bewegungsplaner, welche den gleichen Teil der Trajektorie planen und alternativ verwendet werden, wenn ein Bewegungsplaner keine kollisionsfreie Trajektorie finden kann. Die Bewegungsplanung gemäß 1 kann dabei derart ausgestaltet sein, dass auch die Reihenfolge variiert wird, in der die Bewegungsplaner nacheinander getestet werden. Es kann somit beispielsweise auch mit einer Bewegungsplanung durch den Bewegungsplaner C2 angefangen werden, wobei die anderen Bewegungsplaner sukzessive verwendet werden, falls der Bewegungsplaner C2 scheitert.
-
In der Ausführungsform der 1 planen die Bewegungsplaner B1 und C2 alle restlichen Teilstücke der Trajektorie, welche nicht durch den Bewegungsplaner A geplant wurden. Demgegenüber planen die Bewegungsplaner B2 und C1 nicht den gesamten Rest der Trajektorie, sondern nur einen Teil dieses Rests und übergeben weitere, noch nicht geplante Teile der Trajektorie als Liste von Start- und Zielpositionen an Bewegungsplaner einer weiter darunter liegenden Hierarchieebene H2. Die Bewegungsplaner D1 und D2, welche Kindknoten des Planers B2 sind, stellen wiederum alternative Bewegungsplaner dar, d. h. wenn der Bewegungsplaner B1 einen ihm zugewiesenen Teilabschnitt der Gesamttrajektorie nicht planen kann, springt der Planer D2 ein und umgekehrt.
-
Der Planer D2 plant dabei den gesamten Rest der Trajektorie, der noch nicht durch den Bewegungsplaner A bzw. B2 geplant wurde. Demgegenüber plant der Bewegungsplaner D1 wiederum nur einen Teil der Trajektorie, welche noch nicht von A und B2 geplant wurde, und führt eine weitere Unterbeauftragung für den restlichen Teil der Trajektorie durch. Die Unterbeauftragung erfolgt dabei an einen weiteren Planer F in der dritten Hierarchieebene H3. Die einzelnen, sich vom Knoten B2 verzweigenden Planer sind vorzugsweise Planer, welche die gleiche Art der Bewegungsplanung wie B2 durchführen, sich jedoch in ihren Parametern unterscheiden. Gegebenenfalls ist es jedoch auch möglich, für die einzelnen Planer, welche sich vom Knoten B2 aus verzweigen, unterschiedliche Planer einzusetzen.
-
Wird eine Bewegungsplanung durch den Bewegungsplaner C1 durchgeführt, plant dieser wiederum nur einen Teil der Trajektorie, welche nicht durch den Planer A geplant wurde, und übergibt die restlichen, noch nicht geplanten Teile der Trajektorie an den Bewegungsplaner E der Hierarchieebene H2. Demgegenüber führt der Bewegungsplaner C2 die Gesamtplanung des Trajektorienteils durch, der noch nicht vom Planer A geplant wurde.
-
Der soeben beschriebene hierarchische Baum von Bewegungsplanern kann auf beliebige Weise erweitert bzw. verkürzt werden. Insbesondere können noch weitere Hierarchieebenen je nach Anwendungsfall hinzugefügt werden bzw. die Hierarchieebenen selbst durch Hinzufügung von Knoten erweitert werden. Der hierarchische Baum wird bei der Bewegungsplanung dabei solange durchlaufen, bis eine gültige kollisionsfreie Trajektorie gefunden wurde oder alle Bewegungsplaner in der Baumstruktur durchlaufen sind und keine vollständige Trajektorie ermittelt werden kann. In diesem Fall erfolgt eine Fehlermeldung durch das Planungsverfahren.
-
In einer besonders bevorzugten Ausführungsform wird der entsprechend verwendete Hierarchiebaum als Konfigurationsdatei in einem Speicher einer Recheneinheit abgelegt, welche die Planung gemäß dem Konfigurationsbaum durchführt. Auf diese Weise wird es ermöglicht, dass je nach Anwendungsfall die Baumstruktur durch Einlesen unterschiedlicher Konfigurationsbäume entsprechend variiert werden kann. Es ist nicht mehr erforderlich, die Bewegungsplanung unveränderbar im System zu hinterlegen.
-
Das soeben beschriebene erfindungsgemäße Verfahren weist eine Reihe von Vorteilen auf. Insbesondere können verschiedene Teile der zu planenden Trajektorie von verschiedenen Planungsverfahren bestimmt werden. Ebenso können für jedes Trajektorienteilstück unterschiedliche Parameter für die Bewegungsplaner verwendet werden. Dadurch können die Stärken verschiedener Verfahren vereint werden. Die benötigte Berechnungszeit für einen Bewegungsplan wird dadurch verkürzt. Die Geometrie der Trajektorie und damit das Verhalten bei der Ausführung der Trajektorie kann ferner besser auf Vorgaben und Gegebenheiten angepasst werden. Durch die konfigurierbare Baumstruktur, welche beispielsweise durch das Einlesen einer Konfigurationsdatei geschaffen wird, können sehr flexible spezialisierte Planer für unterschiedlichste Aufgaben erstellt werden. Das Gesamtsystem des Planers bleibt hingegen generisch.