-
HINTERGRUND
-
Gebiet
-
Die vorliegende Offenlegung betrifft das Gebiet der Bewegungssteuerung von Industrierobotern und spezieller eine Steuereinheit einer Zustandsmaschine zur dynamischen Planung einer Roboterstrecke, wo Objektsensoren Arbeitsraumdaten an die Zustandsmaschine streamen und die Zustandsmaschine Zustände und Übergänge festlegt, wobei die Zustände das Nachverfolgen der aktuellen Strecke, das Ändern der Geschwindigkeit und das Neugestalten einer neuen Strecke einschließen.
-
Erörterung des Stands der Technik
-
Es ist die Verwendung von Industrierobotern zur wiederholten Durchführung eines breiten Bereichs von Herstellungs- und Montagevorgängen bekannt. In einigen Arbeitsraumumgebungen des Roboters ist es möglich, dass ein Mensch oder ein Fahrzeug wie etwa ein Gabelstapler das Bewegungsfeld des Roboters durchquert. Kollisionen zwischen dem Roboter und einem Menschen, Fahrzeug oder anderen Hindernis müssen unbedingt vermieden werden.
-
Frühere Verfahren zur Steuerung des Roboters schließen in Anwendungen wie denjenigen, die oben erörtert sind, typischerweise den Einsatz vorbestimmter „Sicherheitszonen““ ein. Ein Typ von Sicherheitszonen definiert eine Fläche, in der eine Bedienperson verbleiben muss, wobei der Roboter entsprechend programmiert ist, um die Sicherheitszone jederzeit zu vermeiden. Ein anderer Typ von Sicherheitszonen nutzt Sensoren zum Detektieren der Anwesenheit einer Person oder eines anderen Objekts innerhalb der Sicherheitszone, und falls ein solches Hindernis vorhanden ist, verhindert wird, dass der Roboter in die Sicherheitszone eintritt, was normalerweise bedeutet, dass der Roboter anhalten muss. Ein noch anderer Typ von Sicherheitszonen definiert eine Zone für zulässigen Betrieb durch den Roboter, wobei verhindert werden muss, dass Menschen und andere Objekte den Arbeitsbereich des Roboters, typischerweise durch die Nutzung von Sicherheitszonen oder anderen technischen Sperren, betreten.
-
Obwohl die oben erörterten Verfahren normalerweise wirksam sind, um Kollisionen zwischen einem Roboter und irgendeinem Typ von Hindernissen zu verhindern, beruhen sie auf vorher festgelegten Sicherheitszonen mit gekennzeichneten Räumen, in denen der Roboter arbeiten oder nicht arbeiten kann und die Verfahren mit Hindernissen nicht fertig werden können, die sich zu beliebigen Zeitpunkten, an beliebige Orte, mit beliebigen Geschwindigkeiten usw. in den betrieblichen Arbeitsraum bewegen können. Darüber hinaus schränken Sicherheitstechniken in der Zone die Mobilität des Roboters ein.
-
Eine Zustandsmaschine ist ein mathematisches Berechnungsmodell. Es ist eine abstrakte Maschine, die sich zu jedem gegebenen Zeitpunkt in exakt einem einer endlichen Anzahl von Zuständen als Reaktion auf bestimmte äußere Eingaben befinden kann. Es ist bekannt, Zustandsmaschinen zur Vermeidung von Kollisionen in Anwendungen wie autonomen Straßenfahrzeugen, mobilen Robotern und unbemannten Luftfahrzeugen zu nutzen. Jedoch wurden bei diesen und anderen Anwendungen nicht die Zustände und Übergänge berücksichtigt, die notwendig sind, um sich nahtlos an Hindernisse anzupassen, die sich in die Strecke eines Gelenkroboters hinein und aus dieser heraus bewegen.
-
Angesichts der oben beschriebenen Umstände besteht Bedarf an einer verbesserten Robotersteuereinheit, die eine Zustandsmaschine zur dynamischen Streckenplanung verwendet.
-
ZUSAMMENFASSUNG
-
Der technischen Lehre der vorliegenden Offenlegung entsprechend, wird eine Zustandsmaschinen-Steuereinheit zur dynamischen Planung einer Roboterstrecke offengelegt. Ein Industrieroboter, wie etwa ein mehrarmiger Gelenkroboter, arbeitet in einem Arbeitsraum nach einem bestimmten Programm. Ein Sensor oder eine Kamera überwacht den Arbeitsraum und erfasst jedes Objekt wie etwa einen Menschen, einen Gabelstapler oder einen mobilen Roboter, die sich dem Arbeitsraum nähern oder in diesen eintreten. Der Sensor liefert der Zustandsmaschinen-Steuereinheit eine Eingabe, die folgende Zustände umfasst: Nachverfolgen der aktuellen Strecke, Ändern der Geschwindigkeit und Neugestalten der Strecke. Wenn sich ein Objekt dem Arbeitsraum nähert oder in diesen eintritt, legt die Zustandsmaschine fest, ob ein Übergang in den Geschwindigkeitsänderungszustand notwendig ist. Nachdem die Geschwindigkeit des Roboters im Geschwindigkeitsänderungszustand verringert ist, kann die Zustandsmaschine die ursprüngliche Strecke und Geschwindigkeit wieder aufnehmen, wenn das Objekt den Arbeitsraum geräumt hat, die Geschwindigkeit ferner auf Null verringern, falls es notwendig ist, eine Kollision zu vermeiden, oder in den Neugestaltungszustand der Strecke übergehen, um eine neue Strecke an die Zielposition zu berechnen, welche das Objekt im Arbeitsraum vermeidet.
-
Zusätzliche Merkmale der gegenwärtig offengelegten Vorrichtungen und Verfahren erschließen sich aus der folgenden Beschreibung und den angefügten Ansprüchen, wenn sie in Verbindung mit den begleitenden Zeichnungen betrachtet wird.
-
Figurenliste
-
- 1 ist eine Darstellung eines Systems mit einem Industrieroboter, der in einem Arbeitsraum arbeitet, einschließlich eines Sensors und der Steuereinheit einer Zustandsmaschine, die dynamisch die Roboterstrecke plant basierend auf gefühlten Objekten, die sich dem Arbeitsraum nähern oder in diesen eintreten, gemäß einer Ausführungsform der vorliegenden Offenlegung;
- 2 ist eine Tabelle von Ereignissen und entsprechenden Aktionen, welche die grundlegenden Arbeitseigenschaften der Steuereinheit der Zustandsmaschine von 1 gemäß einer Ausführungsform der vorliegenden Offenlegung beschreiben;
- 3 ist ein Zustandsdiagramm, das Zustände und Übergänge der Steuereinheit der Zustandsmaschine von 1 entsprechend einer Ausführungsform der vorliegenden Offenlegung veranschaulicht; und
- 4 ist ein Ablaufdiagramm eines Verfahrens zur dynamischen Planung einer Roboterstrecke, um Kollisionen mit Objekten im Arbeitsraum des Roboters zu vermeiden, entsprechend einer Ausführungsform der vorliegenden Offenlegung.
-
AUSFÜHRLICHE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Die folgende Erörterung der Ausführungsformen der auf die Steuereinheit einer Zustandsmaschine gerichteten Offenlegung zur dynamischen Planung einer Roboterstrecke ist lediglich beispielhafter Natur und ist keineswegs beabsichtigt, die offengelegten Vorrichtungen und Verfahren oder ihre Anwendungen oder Einsätze zu beschränken.
-
Es ist bekannt, Industrieroboter für vielfältige Arbeitsprozesse der Herstellung, Montage und Materialbewegung zu nutzen. Einige Typen von Roboteroperationen wie beispielsweise diese, bei denen ein Roboter verwendet wird, um Gegenstände auf Paletten in einem Lager zu packen oder zu entpacken, werden in offenen Räumen durchgeführt, wo eine Person, ein Gabelstapler oder ein autonomer Roboter in den Arbeitsraum eintreten könnten. Bei Anwendungen wie dieser ist es unpraktisch, eine Sicherheitszone zu definieren, in welcher der Roboter sicher ohne Kollisionsrisiko mit einem Objekt arbeiten kann, weil der Arbeitsraum Bereiche enthält, die gelegentlichen Zugang erfordern und deshalb nicht umzäunt werden können, um alle Menschen und Fahrzeuge auszuschließen. Bei diesen Anwendungen, wo eine Programmierung des Roboters, außerhalb einer Sicherheitszone zu bleiben, eine Option ist, und wo Menschen oder andere Objekte zufällig im Arbeitsraum erscheinen können, wird ein verbessertes Verfahren zur dynamischen Planung der Roboterstrecke benötigt, um Kollisionen mit Objekten zu vermeiden.
-
1 ist eine Darstellung eines Systems 100 mit einem Industrieroboter, der in einem Arbeitsraum arbeitet, das einen Sensor und eine Zustandsmaschinen-Steuereinheit umfasst, die die Roboterstrecke dynamisch planen auf der Basis von gefühlten Objekten, die sich dem Arbeitsraum nähern oder in diesen eintreten, nach einer Ausführungsform der vorliegenden Offenlegung. Die Steuereinheit der Zustandsmaschine im System 100 stellt eine schnelle und zuverlässige dynamische Streckenplanung bereit, um Kollision des Roboters mit einem beliebigen Objekt oder Hindernis, das im Arbeitsraum erscheinen kann, zu vermeiden.
-
Eine Zustandsmaschine oder ein endlicher Automat oder einfach eine Zustandsmaschine ist ein mathematisches Berechnungsmodell. Es ist eine abstrakte Maschine, die in genau einem einer endlichen Anzahl von Zuständen zu jedem gegebenen Zeitpunkt existieren kann. Die Zustandsmaschine kann von einem Zustand in einen anderen wechseln als Reaktion auf gewisse externe Eingaben und/oder wenn ein Zustand erfüllt ist, wobei der Wechsel von einem Zustand in einen anderen Übergang genannt wird. Eine Zustandsmaschine ist durch eine Liste ihrer Zustände, ihres Anfangszustands und der Bedingungen für jeden Übergang definiert.
-
Das System 100 enthält einen Roboter 110, der in einem Arbeitsraum 120 arbeitet. Zu Erörterungszwecken wird betrachtet, dass der Roboter 110 in einem offenen Bereich eines Lagergebäudes arbeitet, ein Programm abarbeitet, bei dem er Gegenstände von einem ankommenden Transportband aufgreift und jeden Gegenstand zum Versand auf eine Palette legt. Natürlich ist dies nur ein Beispiel, wobei der Roboter 110 jede Art von Arbeitsgängen durchführen könnte. Der Roboters 110 schließt ein Werkzeug 112 (wie etwa einen Greifer) ein, und das normale Programm beinhaltet das Bewegen des Werkzeugs 112 längs einer ursprünglichen Strecke 114 zu einem Ziel oder einem Bestimmungsort 122.
-
Es ist möglich, dass ein Objekt 130, welches eine Person, ein Gabelstapler oder irgendein beliebiges anderes Objekt sein könnte, sich durch den Arbeitsraum 120 bewegen kann. Berücksichtigt wird, dass sich das Objekt 130 längs einer Objektstrecke 132 bewegt, die durch eine Gefahrenzone 124 im Arbeitsraum 120 verläuft. Die Gefahrenzone 124 ist allgemein als der Bereich definiert, zwischen dem der Roboter 110 und das Werkzeug 112 sich befinden und wo sie laufen. Wenn die Objektstrecke 132 durch die Gefahrenzone 124 verläuft, ist es wünschenswert, eine neue Strecke 116 zu berechnen, anstatt den Roboter 110 nur zu unterbrechen und zu warten. Die Gefahrenzone 124 ist in 1 in zwei Dimensionen dargestellt, könnte aber auch in drei Dimensionen berechnet werden, wobei es in einigen Anwendungen vorteilhaft sein kann, eine neue Strecke zu berechnen, die über das Objekt 130 läuft.
-
Es sind ein oder mehrere Sensoren 140 mit einem Sichtfeld vorgesehen, das den Arbeitsraum 120 erfasst. Die Sensoren 140 können eins oder mehrere von einer Kamera, einem Radarsensor, einem LiDAR-Sensor, einem Ultraschallsensor, einem Infrarotsensor oder anderen Sensoren der Objekterfassung einschließen. Die Sensoren 140 sind imstande, mindestens das Vorhandensein und die Örtlichkeit des Objekts 130 und optional die allgemeine Größe des Objekts 130 und die Geschwindigkeit des Objekts zu bestimmen. Die Sensoren 140 können einem Modul 142 Daten liefern, die Ursprungsdaten der Sensoren (z. B. Kamerabilder, LiDAR-Punktdaten usw.) in Objektdaten umwandeln, die durch eine Robotersteuereinheit 150 verwendbar sind. Die Robotersteuereinheit 150 ist eine Steuereinheit der Zustandsmaschine, die eine Bewegung des Roboters 110 in einer Weise steuert, die nachstehend ausführlich erörtert wird.
-
2 ist eine Tabelle 200 von Ereignissen und entsprechenden Aktionen, die die grundlegenden Funktionseigenschaften der Steuereinheit 150 der Zustandsmaschine von 1 gemäß einer Ausführungsform der vorliegenden Offenlegung beschreiben. Die Tabelle 200 beschreibt die durch die Steuereinheit 150 beim Steuern des Roboters 110 eingesetzten allgemeinen Strategien. Verständlich wird, dass der Roboter 110 ein vorbestimmtes Programm abarbeitet, wie etwa das Aufgreifen und Anordnen von Gegenständen. Wenn vom Sensor 140 keine Objekte detektiert werden, stellt die Steuereinheit 150 Bewegungsbefehle für den Roboter 110 nach dem vorbestimmten Programm bereit.
-
Beim Kästchen 210 verlangsamt die Steuereinheit 150 die Bewegung des Roboters beim Kästchen 212, wenn detektiert wird, dass sich das Objekt 130 der Gefahrenzone 124 annähert. Eine Verlangsamung des Roboters 110 erlaubt es, den Roboter 110 gegebenenfalls zu einem späteren Zeitpunkt zu stoppen, ohne übermäßige Bremskräfte und Momente zu verursachen. Beim Kästchen 220, wenn das Objekt 130 die ursprüngliche Strecke 114 blockiert, d.h., das Objekt 130 die Gefahrenzone 124 einnimmt, verlangsamt die Steuereinheit 150 die Bewegung des Roboters 110 auf Null (Stopp) beim Kästchen 222. Beim Kästchen 224 beginnt dann die Steuereinheit 150 eine neue Strecke zu planen, welche das Objekt 130 und die Gefahrenzone 124 vermeidet.
-
Beim Kästchen 230, wenn das Objekt 130 immer noch die ursprüngliche Strecke 114 blockiert und die neue Strecke 116 bereit ist (was bedeutet, dass die neue Strecke 116 und die entsprechenden verbundenen Bewegungsbefehle berechnet wurden), liefert die Steuereinheit 150 Befehle, die den Roboter 110 veranlassen, die neue Strecke 116 beim Kästchen 232 zu verfolgen. Indem die neue Strecke 116 verwendet wird, kann der Roboter 110 dennoch weiterarbeiten, auch wenn sich das Objekt 130 in der Gefahrenzone 124 und/oder längs der ursprünglichen Strecke 114 befindet. Beim Kästchen 240 stellt die Steuereinheit 150, wenn das Objekt 130 die Gefahrenzone 124 verlassen hat und die ursprüngliche Strecke 114 frei ist, Befehle bereit, die den Roboter 110 veranlassen, das Verfolgen der ursprünglichen Strecke 114 beim Kästchen 242 fortzusetzen.
-
3 ist ein Zustandsdiagramm, das die Zustände und Übergänge der Steuereinheit 150 der Zustandsmaschine von 1 nach einer Ausführungsform der vorliegenden Offenlegung veranschaulicht. Die Steuereinheit 150 nimmt Objektdaten von dem Modul 142, wie zuvor erörtert, auf. Die Objektdaten von dem Modul 142 schließen zumindest den Ort des Objektes 130 ein, der im Arbeitsraum 120 detektiert ist, und können außerdem die Größe und Form des Objekts 130 und/oder die Geschwindigkeit des Objekts 130 einschließen. Verschiedene Typen und Kombinationen der Sensoren 140 sind imstande, verschiedene Typen von Objektdaten zur Verfügung zu stellen.
-
Die Steuereinheit 150 ist als eine Zustandsmaschine gestaltet, die einen Initialisierungszustand 310 und drei andere Funktionszustände - einen Streckenverfolgungszustand 320, einen Geschwindigkeitsänderungszustand 330 und einen Streckenneugestaltungszustand 340 aufweist. Die Objektdaten von dem Modul 142 werden der Steuereinheit 150 der Zustandsmaschine bereitgestellt und sind verfügbar, um bei Berechnungen in jedem der Zustände 320, 330 und 340, wie durch gestrichelte Pfeile 144 dargestellt, verwendet zu werden. Auf der Basis des Zustands beliebiger Objekte im Arbeitsraum 120 wird die Steuereinheit 150 der Zustandsmaschine die geeignete Aktion für den Roboter 110 festlegen. Es soll verständlich werden, dass die Steuereinheit 150 der Zustandsmaschine einen Prozessor und Speicher enthält und einen Algorithmus der Zustandsmaschine mit Rechenschritten bei einer regelmäßigen zeitlichen Taktfrequenz abarbeitet, wobei in jedem zeitlichen Schritt neue Objektdaten bereitgestellt und neue Zustandsberechnungen durchgeführt werden.
-
Der Initialisierungszustand 310 ist ein Zustand, der bei Inbetriebnahme der Steuereinheit 150 und immer dann eingegeben wird, wenn die Steuereinheit 150 beginnt, ihr Programm abzuarbeiten wie etwa nach Beenden eines vorhergehenden Funktionslaufs. Der Initialisierungszustand 310 besitzt einen Übergang 312 zurück auf sich selbst, wie es im Fachmann von Zustandsmaschinen verständlich wäre. Der Übergang 312 wird verwendet, wenn die Steuereinheit 150 vorbereitet (Hochfahren, Kommunikation mit dem Roboter 110 und dem Sensor 140 prüfen usw.) und noch nicht bereit ist, eine Bewegung des Roboters 110 zu beginnen. Wenn das System bereit ist, geht die Steuereinheit 150 vom Initialisierungszustand 310 durch einen Übergang 314 zum Streckenverfolgungszustand 320 über. Die Steuereinheit 150 verbleibt im Streckenverfolgungszustand 320, arbeitet das vorgegebene Programm (wie den Arbeitsgang Gegenstände aufgreifen und anordnen) ab und wechselt auf sich zurück durch einen Übergang 322, solange kein Objekt in den Arbeitsraum 120 eintritt.
-
Wenn ein Objekt in den Arbeitsraum 120 eintritt, was die Notwendigkeit einer verringerten Robotergeschwindigkeit anzeigt, wechselt die Steuereinheit 150 durch einen Übergang 324 in den Geschwindigkeitsänderungszustand 330. Im Geschwindigkeitsänderungszustand 330 kann die Steuereinheit selbst zurück in den Geschwindigkeitsänderungszustand 330 durch einen Übergang 332 wechseln, was vorgenommen werden würde, wenn Berechnungen weiterlaufen und noch nicht zum Übergang in einen der anderen Zustände aufgefordert wurde. Aus dem Geschwindigkeitsänderungszustand 330 wird, wenn festgelegt ist, die geeignete Aktion auf der aktuellen Strecke mit der verringerten Geschwindigkeit fortzusetzen, ein Übergang 334 in den Streckenverfolgungszustand 320 vorgenommen.
-
Aus dem Geschwindigkeitsänderungszustand 330 kann es notwendig sein, eine neue Strecke neu zu gestalten. Wenn die Geschwindigkeit auf Null verringert wurde und/oder das Objekt 130 in der Gefahrenzone 124 sich befindet und dort möglicherweise gestoppt wird, wird zum Beispiel festgelegt, dass die geeignete Aktion einen Übergang 336 in den Streckenneugestaltungszustand 340 vornimmt. Es kann ein selbstständiger Übergang 342 vorgenommen werden, um in dem Streckenneugestaltungszustand 340 zu verbleiben, während Berechnungen vorgenommen werden. Wenn eine neue Strecke bereit ist (vollständig berechnet) oder wenn das Objekt 130 die Gefahrenzone 124 verlassen hat, wird ein Übergang 344 in den Streckenverfolgungszustand 320 vorgenommen. Wenn auf diese Weise in den Streckenverfolgungszustand 320 zurückgekehrt wird, weist die Steuereinheit 150 den Roboter 110 an, die ursprüngliche Strecke zu verfolgen, falls das Objekt 130 die Gefahrenzone 124 verlassen hat, oder weist den Roboter 110 an, sonst die neue Strecke zu verfolgen.
-
4 ist ein Ablaufdiagramm 400 eines Verfahrens zur dynamischen Planung einer Roboterstrecke nach einer Ausführungsform der vorliegenden Offenlegung, um Kollisionen mit Objekten im Arbeitsraum des Roboters zu vermeiden. Das Ablaufdiagramm 400 ist als eine Sammlung der Zustände von der oben erörterten Steuereinheit 150 der Zustandsmaschine zusammen mit den Entscheidungen und Aktionen dargestellt, die den Zuständen und ihren entsprechenden Übergängen zugeordnet sind. Das Verfahren des Ablaufdiagramms 400 ist in der Steuereinheit 150 der Zustandsmaschine programmiert.
-
Das Verfahren beginnt im Zustand 310, bei dem die Steuereinheit 150 initialisiert wird. Nachdem die Steuereinheit 150 initialisiert ist und bereit ist zu laufen, wird beim Kästchen 412 entsprechend dem vorgegebenen Programm des Roboters eine ursprüngliche Strecke ausgewählt. Das Verfahren wechselt dann in den Streckenverfolgungszustand 320. Im Streckenverfolgungszustand 320 lässt die Steuereinheit den Roboter durch sein Programm laufen (wie ein Arbeitsgang zum Aufgreifen und Anordnen). Bei der Entscheidungsraute 422, die ein Teil der Programmierung des Streckenverfolgungszustands 220 ist, wird festgelegt, ob auf der Basis von Objektdaten des Arbeitsraums von dem Modul 142 eine Geschwindigkeitsänderung benötigt wird. Falls zuvor kein Objekt im Arbeitsraum 120 vorhanden war und gegenwärtig kein Objekt im Arbeitsraum 120 vorhanden ist, wird dann bei der Entscheidungsraute 422 keine Geschwindigkeitsänderung benötigt und der Prozess wird sich zur Entscheidungsraute 424 bewegen.
-
Bei der Entscheidungsraute 424 wird festgelegt, ob die Aufgabe des Roboters abgeschlossen ist. Wenn zum Beispiel keine Gegenstände auf dem ankommenden Transportband mehr eintreffen und alle Gegenstände auf dem Transportband zu Versandpaletten bewegt wurden, dann ist die Aufgabe abgeschlossen. Wenn die Aufgabe abgeschlossen ist, endet der Prozess beim Endpunkt 426. Wenn die Aufgabe nicht abgeschlossen ist, verbleibt der Prozess im Streckenverfolgungszustand 320 und prüft erneut, um zu bestimmen, falls eine Geschwindigkeitsänderung im nächsten zeitlichen Schritt benötigt wird.
-
Falls an der Entscheidungsraute 422 ein der Gefahrenzone 124 sich näherndes Objekt im Arbeitsraum 120 detektiert wird, dann wird eine Geschwindigkeitsänderung (Verringerung) benötigt und es tritt ein Übergang in den Geschwindigkeitsänderungszustand 330 auf. Im Geschwindigkeitsänderungszustand 330 wird zuerst eine Geschwindigkeitsänderung auf der Basis der Objektdaten angewandt. Zum Beispiel könnte eine 50-prozentige Geschwindigkeitsverringerung bei einer Erfassung angewandt werden, dass sich das Objekt 130 der Gefahrenzone 124 nähert, jedoch eigentlich noch frei ist. Nachdem die Geschwindigkeitsänderung angewandt wurde, jedoch noch im Zustand 330 ist, wird festgelegt, ob an der Entscheidungsraute 432 außerdem noch eine Streckenänderung benötigt wird. Wenn an der Entscheidungsraute 432 keine Streckenänderung benötigt wird, dann tritt ein Übergang zurück in den Streckenverfolgungszustand 320 auf, und das Roboterprogramm läuft weiter auf der ausgewählten Strecke mit der verringerten Geschwindigkeit ab. Der Prozess kann im Streckenverfolgungszustand 320 mit der verringerten Geschwindigkeit mehrere zeitliche Schritte lang ablaufen, bevor festgelegt wird, dass eine weitere Geschwindigkeitsänderung benötigt wird.
-
Falls an der Entscheidungsraute 432 nach jeder Geschwindigkeitsänderung festgelegt wird, dass außerdem eine Streckenänderung benötigt wird, dann tritt ein Übergang in den Streckenneugestaltungszustand 340 auf. Im Streckenneugestaltungszustand 340 wird die Planung einer neuen Strecke initialisiert, die auf den Objektdaten des Arbeitsraums basiert. Wenn zum Beispiel das Objekt 130 in die Gefahrenzone 124 eingetreten ist und angehalten hat, kann eine Strecke dann wie etwa die neue Strecke 116 von 1 berechnet werden. Die Planung der neuen Strecke im Streckenneugestaltungszustand 340 kann mit einer von mehreren Möglichkeiten vorgenommen werden. Zum Beispiel können Streckenpunkte auf einer Route vom aktuellen Ort des Werkzeugs 112 zum Ort des Ziels 122 ermittelt werden, während das Objekt 130 basierend auf dessen Ort und Bewegung vermieden wird. Sobald die Streckenpunkte ermittelt sind, kann dann eine Streckenplanungsroutine verwendet werden, um die neue Strecke zusammen mit den Verbindungspunkten vollständig zu definieren, die erforderlich sind, um zu veranlassen, dass sich das Werkzeug 112 entlang der neuen Strecke bewegt, wie es an sich bekannt ist. Das Streckenplanungsverfahren zum Berechnen einer neuen Strecke auf der Basis der Objektdaten und des Ortes des Werkzeugs 112 relativ zu dem Ziel 122 kann eine Routine der Optimierungsplanung oder Probensuchverfahren sein, ist aber nicht darauf beschränkt. Es kann auch eine gespeicherte wechselnde Strecke ausgewählt werden, wobei die gespeicherte Strecke eine neu geplante, wechselnde oder eine wechselnde Strecke ist, die zuvor in einem ähnlichen Plan berechnet und verwendet wurde.
-
Nachdem die Planung einer neuen Strecke im Streckenneugestaltungszustand 340 initialisiert ist, bewegt sich der Prozess noch im Streckenneugestaltungszustand 340 weiter, um zu bestimmen, ob das Objekt 130 den Arbeitsraum 120 an der Entscheidungsraute 442 verlassen hat. Falls das Objekt 130 den Arbeitsraum 120 verlassen hat, schreitet der Prozess anschließend zurück, um die ursprüngliche Strecke im Kästchen 412 auszuwählen und wechselt zur Verfolgungstrecke 320 zurück. Wenn das Objekt 130 den Arbeitsraum 120 an der Entscheidungsraute 442 nicht verlassen hat, bewegt sich der Prozess zur Entscheidungsraute 444, an der bestimmt wird, ob die neue Strecke vollständig berechnet und zur Verwendung bereit ist. Die Entscheidungsrauten 442 und 444 befinden sich noch im Streckenneugestaltungszustand 340 und sind Teil der Logik, die genutzt wird, um zu bestimmen, wann aus dem Streckenneugestaltungszustand 340 überzugehen ist.
-
Falls die neue Strecke noch nicht vollständig berechnet und zur Verwendung bereit ist, dann verbleibt der Prozess im Streckenneugestaltungszustand 340. Wenn bei der Entscheidungsraute 444 die neue Strecke zur Verwendung bereit ist, dann wird die neue Strecke im Kästchen 446 ausgewählt und es findet ein Übergang in den Streckenverfolgungszustand 320 statt. Die Steuereinheit 150 arbeitet dann das Roboterprogramm ab, indem die neue Strecke im Streckenverfolgungszustand 320 verwendet wird, bis die Aufgabe abgeschlossen ist oder ein Übergang in den Geschwindigkeitsänderungszustand 330 auftritt.
-
Indem das Verfahren des Ablaufdiagramms 400 genutzt wird, kann die Steuereinheit 150 der Zustandsmaschine sich an jede Situation anpassen, die Ankunft oder Abgang eines Objekts im Arbeitsraum 120 einschließt. Eine weitere beispielhafte Situation ist gegeben, wenn eine neue Strecke ausgewählt wurde (wie oben erörtert), die neue Strecke im Streckenverfolgungszustand 320 verwendet wird und das Objekt den Arbeitsraum 120 verlässt. In diesem Fall macht es an der Entscheidungsraute 422 eine Geschwindigkeitserhöhung erforderlich, tritt ein Übergang in den Geschwindigkeitsänderungszustand 330 auf und es wird an der Entscheidungsraute 432 bestimmt, dass eine Streckenänderung zur ursprünglichen Strecke zurück geeignet ist. Das System wird in den Streckenneugestaltungszustand 340 übergehen und die ursprüngliche Strecke durch die Entscheidungsraute 442 und das Kästchen 412 erneut auswählen. Auf diese Weise wird die Geschwindigkeit kleiner und größer, und eine Auswahl von zeitweiligen neuen Strecken oder der ursprünglichen Strecke können in der Steuereinheit 150 der Zustandsmaschine nahtlos gehandhabt werden.
-
Im Ablaufdiagramm 400 können andere Entscheidungsrauten und Aktionskästchen hinzugefügt werden oder es können Schritte umorganisiert werden, ohne den grundlegenden Entwurf der Zustandsmaschine mit ihren drei hauptsächlichen Funktionszuständen der Streckenverfolgung, Geschwindigkeitsänderung und Streckenneugestaltung zu ändern.
-
In der vorangegangenen Erörterung sind durchweg verschiedene Computer und Steuereinheiten beschrieben und einbezogen. Es soll verständlich werden, dass die Softwareanwendungen und Module dieser Computer und Steuereinheiten an einem oder mehreren Rechengeräten ausgeführt werden, die einen Prozessor und ein Speichermodul aufweisen. Insbesondere schließt dies einen Prozessor im Objekterfassungsmodul 142 und einen Prozessor in der oben erörterten Robotersteuereinheit 150 der Zustandsmaschine ein. Speziell ist der Prozessor in der Steuereinheit 150 ausgelegt, um das Steuerungsverfahren der Zustandsmaschine zur dynamischen Streckenplanung in der oben erörterten Art und Weise zu verwenden.
-
Wie es oben beschrieben ist, verbessern die erörterten Verfahren für die Steuereinheit einer Zustandsmaschine zur dynamischen Streckenplanung von Robotern die Geschwindigkeit und Zuverlässigkeit der Roboterstreckenplanung zur Kollisionsvermeidung, wenn Objekte mit zufälligen Größen, Bahnen oder Geschwindigkeiten jederzeit in den Arbeitsraum des Roboters eintreten können.
-
Während oben eine Anzahl beispielhafter Aspekte und Ausführungsformen der Steuereinheit der Zustandsmaschine zur dynamischen Streckenplanung erörtert wurde, wird der Fachmann Modifizierungen, Umsetzungen, Ergänzungen und Unterkombinationen davon erkennen. Es ist daher beabsichtigt, dass die folgenden angefügten Ansprüche und danach eingeführte Ansprüche so auszulegen sind, dass sie alle diese Modifizierungen, Umsetzungen, Ergänzungen und Unterkombinationen einschließen, wie sie in ihrem wahren Geist und Geltungsbereich sind.