-
Die Erfindung betrifft ein Verfahren zur Bestimmung der Position eines rechteckigen Behälters auf einer Unterlage.
-
Aus ‚D. Holz et at.: Active Recognition and Manipulation for Mobile Robot Bin Picking. In: Gearing up and accelerating cross-fertilization ... - Technology transfer experiments ECHORD project. Vol. 94 Springer Tracts Adv. Robotics, pp. 133 - 153, 2014‘ ist ein Verfahren zur Bestimmung der Position eines rechteckigen Behälters auf einer Unterlage mit vorgegebener Erstreckung in einer Ebene mit Hilfe einer Recheneinheit bekannt, bei dem die ermittelte Position einer Entnahmeeinrichtung übermittelt wird, durch die Teile aus dem rechteckigen Behälter mit gerade verlaufenden Behälterwänden entnommen werden können. Hierbei ist zur Durchführung des Verfahrens mindestens ein erster Lichtlaufzeit-Scanner erforderlich, der mit der Recheneinheit in Verbindung steht und der derart im Bereich der Unterlage angeordnet ist, dass er in der Lage ist, den gesamten Bereich der Erstreckung der Unterlage in der Ebene zu erfassen.
-
Das Verfahren umfasst im Einzelnen die folgenden Verfahrensschritte, die durch den Lichtlaufzeit-Scanner und/oder die Recheneinheit ausgeführt werden:
- - Scannen der Unterlage über den gesamten Bereich der Unterlage, um einen im Scanbereich befindlichen Behälter zu lokalisieren;
- - Ermittlung von Koordinaten der Punkte, die sich aus dem Schnittpunkt des Laserstrahls des Lichtlaufzeit-Scanners mit Behälterwänden ergeben;
- - Zuordnung der Koordinaten von einer Mehrzahl der Punkte zur Bildung von Punktreihen, die der Form der Behälterwände folgen;
- - Bestimmung der Verdrehung des Gebildes der Punktreihen in Bezug auf das durch die Position des Lichtlaufzeit-Scanners vorgegebene Koordinatensystem unter Verwendung einer Ausgleichsrechenmethode.
-
Aus der Druckschrift, Z. He, Y. Wang, H. Yu: Feature-to-Feature based Laser Scan Matching in Polar Coordinates with Application to Pallet Recognition. In: Procedia Engineering 15 (2011) 4800-4804' ist bekannt ,bei der Laserscanauswertung mit Polarkoordinaten zu arbeiten. Im Einzelnen befasst sich diese Literaturstelle mit einer neuen Methode zur Palettenerkennung, die mit Polarkoordinaten arbeitet und somit die Transformation von Polarkoordinaten in karthesische Koordinaten entfällt.
-
In Fertigungsstätten ist es häufig so, dass Behälter mit bestimmten technischen Teilen, also Werkstücken wie zum Beispiel Kurbelwellen angeliefert werden, wobei zum Beispiel die Kurbelwellen durch eine Entnahmeeinrichtung, zum Beispiel einen Entnahmeroboter, aus dem Behälter entnommen werden, und an eine Bearbeitungseinrichtung, wie eine CNC-Maschine, übergeben werden. Die Behälter, die die Werkstücke aufnehmen, werden in einer bestimmten Position relativ zur Entnahmeeinrichtung, sprich dem Entnahmeroboter, auf einer Unterlage abgesetzt. Die Unterlage kann der Boden der Halle sein, sie kann aber auch beispielsweise die Oberseite eines Arbeitstisches sein. Das Abstellen des Behälters auf der Unterlage, durch zum Beispiel einen Gabelstapler, erfolgt in einer vorbestimmten Ausrichtung des Behälters auf der Unterlage. Insofern kann eine Markierung auf der Unterlage vorgesehen sein, innerhalb derer sich der Behälter befinden muss. Die Markierung kann auch beispielsweise durch einen U-förmig umlaufenden Rammschutz gebildet werden, der dem Gabelstaplerfahrer das Einfahren des Behälters etwas erleichtert. In jedem Fall ist es so, dass die genaue Positionierung des Behälters auf der Unterlage für den Gabelstaplerfahrer eine diffizile Aufgabe darstellt. Die Position des Behälters auf der Unterlage ist dem Entnahmeroboter bekannt.
-
Um nun allerdings den Entnahmeroboter in die Lage zu versetzen, zur Entnahme sämtlicher Teile aus dem Behälter in jede Ecke des Behälters zu gelangen, so ist die Kenntnis über die Größe der Öffnung des Behälters in X- und in Y-Richtung erforderlich. Hierzu ist ein Kamerasystem vorgesehen, das von oben auf die Unterlage, auf der der Behälter steht, ausrichtet ist.
-
Nun ist es so, dass die in dem Behälter befindlichen Teile, zum Beispiel die bereits zuvor erwähnten Kurbelwellen, gegen Rost geschützt werden müssen. Dies geschieht üblicherweise mit einer sogenannten Korrosionsschutzfolie aus Kunststoff. Diese Korrosionsschutzfolie aus Kunststoff muss geöffnet werden, damit die Oberseite des Behälters freiliegt, und die Oberseite des Behälters somit für den Entnahmeroboter zugänglich ist. Hierbei wird so vorgegangen, dass die Korrosionsschutzfolie den Rand des Behälters umbördelt. Die von oben auf den Behälter ausgerichtete Kamera ist aufgrund der Reflektionen durch die Korrosionsschutzfolie allerdings nicht mehr in der Lage, einen genauen Verlauf des oberen Behälterrandes zu ermitteln. Das hat zur Folge, dass die Gefahr besteht, dass der Entnahmeroboter in Kollision mit der Behälterwand gelangt, und hierbei Schaden nimmt.
-
Das heißt, es bestehen zwei Problemfelder, das eine Problemfeld besteht darin, dass der Behälter mit relativ hoher Genauigkeit eine bestimmte Position einnehmen muss. Das andere Problemfeld liegt darin, dass durch das Kamerasystem die Behälteröffnung in X- und Y-Richtung dann nicht genau detektiert werden kann, wenn der Rand des Behälters durch die bereits zuvor erwähnte Korrosionsschutzfolie ummantelt oder umbördelt ist.
-
Der Erfindung liegt nun zunächst die Aufgabe zugrunde, dafür zu sorgen, dass das mit relativ großem Aufwand verbundene Einsetzen des Behälters in seine Entnahmeposition wesentlich vereinfacht werden kann. Insofern ist Ziel der Erfindung, dafür zu sorgen, dass der Behälter auf einer Fläche in quasi jeder beliebigen Position abgesetzt werden kann, um die Grundlage für den Entnahmeroboter zu schaffen, die entsprechenden Teile aus dem Behälter zu entnehmen.
-
Das erfindungsgemäße Verfahren zur Bestimmung der Position eines rechteckigen Behälters auf einer Unterlage mit vorgegebener Erstreckung in einer Ebene mit Hilfe einer Recheneinheit zeichnet sich dadurch aus, dass die ermittelte Position einer Entnahmeeinrichtung übermittelt wird, durch die Teile aus dem rechteckigen Behälter mit gerade verlaufenden Behälterwänden entnehmbar sind, wobei zur Durchführung des Verfahrens mindestens ein erster Lichtlaufzeit-Scanner eingesetzt wird, der mit der Recheneinheit in Verbindung steht, und der derart im Bereich der Unterlage angeordnet ist, dass er in der Lage ist, den gesamten Bereich der Erstreckung der Unterlage in der Ebene zu erfassen, wobei das Verfahren folgende Verfahrensschritte umfasst, die durch den Scanner und/oder die Recheneinheit ausgeführt werden:
- 1. Scannen der Unterlage über den gesamten Bereich der Unterlage, um einen im Scanbereich befindlichen Behälter zu lokalisieren;
- 2. Ermittlung der Polarkoordinaten der Punkte, die sich aus dem Schnittpunkt des Laserstrahls des Lichtlaufzeit-Scanners mit zwei Behälterwänden ergeben;
- 3. Ermittlung des Punktes mit dem geringsten Abstand des Behälters zum ersten Scanner (Eckpunkt);
- 4. Zuordnung der Polarkoordinaten von einer Mehrzahl von Punkten jeweils zu beiden Seiten des Punktes mit dem geringsten Abstand zu dem ersten Lichtlaufzeit-Scanner (Eckpunkt) zu jeweils einer Punktreihe, die der Form der Behälterwand folgt;
- 5. Erstellung von zwei sich schneidenden Funktionsgerade durch die Recheneinheit anhand der Punktreihen zu beiden Seiten des Punktes mit dem geringsten Abstand zum ersten Lichtlaufzeit-Scanner (Eckpunkt) unter Verwendung einer Ausgleichsrechenmethode;
- 6. Bestimmung des Schnittpunktes der mindestens zwei Funktionsgeraden;
- 7. Bestimmung der Verdrehung des Gebildes aus den beiden sich schneidenden Funktionsgeraden in Bezug auf das durch die Position des Lichtlaufzeit-Scanners vorgegebenen Koordinatensystems unter Verwendung einer Ausgleichsrechenmethode.
-
Betrachtet man nunmehr die einzelnen Merkmale des Verfahrens zur Bestimmung der Position eines rechteckigen Behälters auf einer Unterlage, so erkennt man, dass die Unterlage mit vorgegebener Erstreckung in einer Ebene sich in X- und Y-Richtung erstreckt. Das heißt, dass die Unterlage eine Ebene in X- und Y-Richtung aufspannt. Die Position des Behälters wird der Entnahmeeinrichtung beispielsweise als Datensatz übermittelt, wobei dann für die Entnahmeeinrichtung die Teile aus dem rechteckigen Behälter mit gerade verlaufenden Behälterwänden grundsätzlich entnehmbar sind.
-
Für die Durchführung des Verfahrens ist ein sogenannter erster Lichtlaufzeit-Scanner vorgesehen, wobei mit Hilfe eines solchen Lichtlaufzeit-Scanners Entfernungen von Punkten auf einem bestimmten Objekt zum Lichtlaufzeit-Scanner ermittelt werden können. Die Punkte sind als Polarkoordinaten durch einen Lichtstrahlwinkel und die Entfernung charakterisiert. In Bezug auf die Durchführung des Verfahrens ist nun vorgesehen, dass ein solcher Lichtlaufzeit-Scanner, der mit der Recheneinheit in Verbindung steht, eine Stellung derart in Bezug auf die Unterlage einnimmt, dass er in der Lage ist, den gesamten Bereich der Erstreckung der Unterlage in der Ebene zu erfassen.
-
Zur Bestimmung der Position des Behälters sind somit mehrere Verfahrensschritte vorgesehen, die durch den Lichtlaufzeit-Scanner und/oder die Recheneinheit ausgeführt werden:
- Zunächst erfolgt ein Scannen der Unterlage über den gesamten Bereich der Unterlage, um einen im Scanbereich befindlichen Behälter zu lokalisieren. Hierbei erfolgt durch den Lichtlaufzeit-Scanner beziehungsweise die Recheneinheit die Ermittlung der Polarkoordinaten der Punkte, die sich aus dem Schnittpunkt des Laserstrahls des Lichtlaufzeit-Scanners mit den beiden für den Scanner sichtbaren Behälterwänden ergeben. Das heißt, dass durch den Lichtlaufzeit-Scanner und/oder die Recheneinheit Behälterwände als hintereinander angeordnete Punktreihen charakterisiert sind, wobei die Lage der Punkte der Punktreihen durch ihre Polarkoordinaten bestimmt sind. Im Zuge dieses Scanvorganges wird der Punkt mit dem geringsten Abstand des Behälters zu dem ersten Lichtlaufzeit-Scanner, das heißt dem Nullpunkt des Koordinatensystems des Lichtlaufzeit-Scanners ermittelt. Dieser Punkt wird auch als Eckpunkt bezeichnet, da er üblicherweise die Ecke des Behälters abbildet. Im nächsten Schritt erfolgt die Zuordnung der Polarkoordinaten der Mehrzahl der Punkte der Punktreihen jeweils zu beiden Seiten des Eckpunktes zur Bildung jeweils einer Linie, die dann der Behälterwand folgt. Dieser Linie, die der Kontur der Behälterwand folgt und auch Versteifungen u. ä. abbildet, muss keine Gerade sein.
-
Aus diesen Punkten werden in einem nächsten Verfahrensschritt zwei sich schneidende Funktionsgeraden durch die Recheneinheit zu beiden Seiten des Eckpunktes erstellt, und zwar unter Verwendung einer Ausgleichsrechenmethode. Als Ausgleichsrechenmethode kann für die Funktionsgeradenberechnung die mathematische Methode der kleinsten Quadrate verwendet werden. Nun kann es sein, dass der Behälter nicht genau gerade auf der Unterlage angeordnet ist, sondern mit seinen dem ersten Lichtlaufzeit-Scanner zugeordneten Behälterwänden verdreht auf der Unterlage aufsteht. Das heißt dann aber auch, dass sich die zuvor bestimmten Funktionsgeraden entsprechend verdreht zu dem Koordinatensystem des Lichtlaufzeit-Scanners befinden.
-
Für die Bestimmung der Verdrehung des Gebildes aus den beiden sich schneidenden Funktionsgeraden in Bezug auf die Position des vom Lichtlaufzeit-Scanner vorgegebenen (kartesischen) Koordinatensystems ist ebenfalls eine Ausgleichsrechenmethode vorgesehen, wobei für die Berechnung des Winkels der Verdrehung des Behälters der Schnittpunkt einer der Funktionsgeraden mit einer der Achsen des Koordinatensystem des Lichtlaufzeit-Scanners als Achsenabschnitt verwendet wird.
-
In oben skizzierter Weise wurde nunmehr die Position des Behälters auf der Unterlage ermittelt. In Kenntnis der Position des Behälters ist die Entnahmeeinrichtung grundsätzlich in der Lage, Teile aus dem Behälter zu entnehmen.
-
Um den Entnahmeroboter in die Lage zu versetzen, den Behälter vollständig zu leeren, ohne ihn der Gefahr der Kollision mit den Behälterwänden auszusetzen, wenn der Entnahmeroboter die gesamte Öffnungsweite erfassen soll, ist die Kenntnis über die Öffnungsweite des Behälters in X- und in Y-Richtung erforderlich.
-
Hierfür kann nach einer ersten Variante vorgesehen sein, dass die Daten der Erstreckung von vier Kanten der Behälterwandungen eines bekannten Behälters hinsichtlich ihrer Länge an die Recheneinheit übermittelt werden, wobei die Daten von zwei rechtwinkelig zueinander stehenden Kanten des rechteckigen Behälters, dessen Abmessungen und somit auch die Länge der Kanten bekannt sind, mit den beiden sich schneidenden Funktionsgeraden zur Deckung gebracht werden, wobei sowohl die Daten, die die Position kennzeichnen, als auch die Daten, die die äußeren Abmessungen in Bezug auf die Kantenlängen des Behälters bezeichnen, als Daten oder Datensatz der Entnahmeeinrichtung übermittelt werden. Das heißt, dass hierbei von einem bekannten Behälter mit bekannten Abmessungen ausgegangen wird, wobei nicht nur dessen Position der Entnahmeeinrichtung als Daten oder Datensatz zur Verfügung gestellt wird, sondern auch Daten übermittelt werden, die die Größe des Behälters betreffen, das heißt die Erstreckung der Behälteröffnung in X- und Y-Richtung. Hierdurch wird erreicht, dass die Entnahmeeinrichtung schlussendlich ohne Kollision mit den Behälterwänden in der Lage ist, die sich im Behälter befindlichen Teile zu entnehmen. Dies auch dann, wenn eine Rostschutzfolie den Behälterrand umbördelt.
-
Eine zweite Variante zur Bestimmung der Größe und damit der Öffnungsweite des auf der Unterlage befindlichen Behälters zeichnet sich dadurch aus, dass gegenüberliegend zum ersten Lichtlaufzeit-Scanner ein zweiter, gleicher Lichtlaufzeit-Scanner im Bereich der Unterlage derart angeordnet ist, dass der zweite Lichtlaufzeit-Scanner ebenso wie der erste Lichtlaufzeit-Scanner in der Lage ist, den gesamten Bereich der Erstreckung der Unterlage in der Ebene zu erfassen, wobei der zweite Lichtlaufzeit-Scanner die Verfahrensschritte 1 bis 7 aus Anspruch 1 ausführt, wobei auch der zweite Lichtlaufzeit-Scanner mit der Recheneinheit verbunden ist, wobei durch die Recheneinheit die mindestens vier Funktionsgeraden zur Bestimmung der Abmessungen des Behälters derart zusammengeführt werden, dass alle vier Funktionsgeraden jeweils zwei Schnittpunkte mit zwei benachbarten Funktionsgeraden aufweisen, sodass hierdurch nicht nur die Daten für die Position des Behälters, sondern auch die Daten, die die Kantenlängen kennzeichnen, als Datensatz der Entnahmeeinrichtung durch die Recheneinheit übermittelt werden. Diese zweite Variante zur Bestimmung der Behältergröße beziehungsweise der Öffnungsweite des Behälters in X- und Y-Richtung bietet sich insbesondere dann an, wenn viele Behälter unterschiedlicher Größen angeliefert werden, aus denen durch den Entnahmeroboter entsprechende Teile entnommen werden sollen. Wenn durch den zweiten Lichtlaufzeit-Scanner in Verbindung mit dem ersten Lichtlaufzeit-Scanner ein sich auf der Unterlage befindlicher Behälter von allen Seiten abgescannt werden kann, dann bietet sich die Möglichkeit, hierdurch schlussendlich die Größe des Behälters zu bestimmen. Als besonders vorteilhaft hat sich herausgestellt, wenn der zweite Lichtlaufzeit-Scanner bezogen auf eine in etwa rechtwinklige Unterlage diagonal zu dem ersten Lichtlaufzeit-Scanner im Bereich der Unterlage angeordnet ist.
-
Es hat sich des Weiteren als insbesondere vorteilhaft herausgestellt, wenn durch die Recheneinheit ein Punktbereich zu beiden Seiten des Eckpunktes ausgeblendet wird, und dieser Eckpunkt durch den Schnittpunkt der beiden oder jeweiligen beiden Funktionsgeraden ersetzt wird. Es hat sich in diesem Zusammenhang nämlich herausgestellt, dass der Eckpunkt häufig genug nicht fluchtend zu den Punktreihen liegt, die die Behälterwand mit ihren Polarkoordinaten charakterisieren. Wird der Eckpunkt dann ausgeblendet, so ergibt sich eine exaktere Bestimmung der Außenkontur des Behälters, wenn, wie bereits ausgeführt, anstelle des ursprünglich ermittelten Eckpunktes die Funktionsgeraden in ihrer Länge soweit extrapoliert werden, bis sie sich schneiden. Mit Hilfe dieses Eckpunktes lässt sich die Größe des Behälters und hier insbesondere die Größe des Behälters hinsichtlich der Öffnungsweite auf der Oberseite des Behälters wesentlich genauer bestimmen.
-
Nach einem weiteren Merkmal der Erfindung ist vorgesehen, dass der erste und zweite Lichtlaufzeit-Scanner mindestens einen Winkelbereich von 0° bis 90° abdecken, sodass die zu betrachtende Fläche von dem Scanbereich der beiden Lichtlaufzeit-Scanner vollständig erfasst wird.
-
Anhand der Zeichnungen wird die Erfindung nachstehend beispielhaft näher erläutert.
- 1 zeigt schematisch die rechtwinklige Unterlage mit darauf aufstehendem Behälter sowie zwei diagonal zueinander angeordneten Lichtlaufzeit-Scannern;
- 2 zeigt in Vergrößerung einen Eckbereich des Behälters;
- 3 zeigt die Verdrehung des Behälters gegenüber dem Nullpunkt der X- und Y-Achse des Koordinatensystems des Lichtlaufzeit-Scanners.
-
Aus der 1 ist die Unterlage 1 erkennbar, auf der der mit 10 bezeichnete Behälter aufsteht. Die Unterlage 1 ist rechtwinkelig ausgebildet, wobei zu diagonal zueinander die beiden Lichtlaufzeit-Scanner 20 und 25 an der Unterlage angeordnet sind. Durch die beiden Lichtlaufzeit-Scanner 20 und 25, die jeweils einen Scanwinkel von mindestens 0° bis 90° aufweisen, kann somit die gesamte Unterlage 1, die sich in der Ebene erstreckt, abgescannt werden. Die Unterlage 1 kann hierbei eine ebene Fläche sein, oder auch ein Gitter, ein Rost oder ähnliches, das eine Ebene in X- und Y-Richtung bildet.
-
Zu der Seite der Unterlage befindet sich der Entnahmeroboter 40.
-
Der Behälter 10 weist vier Behälterwände 11, 12, 13, 14 auf, wobei für die folgenden Erläuterungen lediglich die Wände 13 und 14 von Relevanz sind. Durch den Lichtlaufzeit-Scanner 20 werden diese beiden Wände 13, 14 erfasst. Der Lichtlaufzeit-Scanner 20 bildet Punktlinien oder Punktreihen 30, 35 ab, die dem Verlauf der Behälterwandungen 13 und 14 entsprechen. Darüber hinaus wird durch den Lichtlaufzeit-Scanner 20 ein Eckpunkt ermittelt; dies ist der Punkt, der den geringsten Abstand des Behälters zum Nullpunkt des Koordinatensystems des Lichtlaufzeit-Scanners zeigt. Nun hat sich allerdings herausgestellt, dass dieser Eckpunkt, in 1 mit 17 bezeichnet, sich nur als näherungsweiser Eckpunkt darstellt. Tatsächlich kann es mehrere Eckpunkte geben, insbesondere dann, wenn die Ecke des Behälters einen nicht unendlich kleinen Radius aufweist.
-
Es wurde bereits an anderer Stelle darauf hingewiesen, dass aus der Punktreihe 30 beziehungsweise 35 jeweils eine Funktionsgerade ermittelt werden soll. Dies geschieht beispielsweise mittels der mathematischen Methode der kleinsten Quadrate. Dann, wenn der Eckpunkt nicht genau ermittelt werden kann, kann es sein, dass die jeweilige Funktionsgerade bei Berücksichtigung eines fälschlichen Eckpunktes 17 von dem tatsächlichen Verlauf der Seitenwand abweicht. Blendet man somit den Eckbereich aus, der, wie bereits ausgeführt, für Ungenauigkeiten sorgen kann, und extrapoliert die Funktionsgeraden aufgrund der Punktreihen 30 und 35 bis zu deren Schnittpunkt, dann kann hierdurch ein Fehler in der Ausrichtung der Funktionsgeraden vermieden werden.
-
Der ausgeblendete Bereich ist in 2 beispielsweise mit 18 bezeichnet.
-
Nun ist es so, dass, wie sich dies aus 3 ergibt, der Behälter 10 verdreht auf der Unterlage 1 angeordnet sein kann. Nun ist es erforderlich, das Maß der Verdrehung zu bestimmen, wobei zur Berechnung des Maßes der Verdrehung der Lage des Behälters auf der Unterlage der Winkel im Schnittpunkt der Funktionsgeraden mit einer Achse des Koordinatensystems des Lichtlaufzeit-Scanners als Achsenabschnitt maßgeblich ist. Dies ist im Fall der Darstellung gemäß 3 der Winkel α bezogen auf den Achsenabschnitt 19 auf der Y-Koordinate. In gleicher Weise könnte auch der Wert des Winkels β im Schnittpunkt der Funktionsgeraden mit der X-Achse des Koordinatensystems des Lichtlaufzeit-Scanners 20 als Maß für die Verdrehung dienen.
-
Das Verfahren, was in Bezug auf die Wände 13 und 14 durchgeführt worden ist, kann in gleicher Weise auch für die Wände 11 und 12 mit Hilfe des Lichtlaufzeit-Scanners 25 angewendete werden. Hiermit kann dann nicht nur die Position des Behälters 10 auf der Unterlage 1 bestimmt werden, sondern auch seine Öffnungsweite in X- und Y-Richtung.
-
Bezugszeichenliste
-
- 1
- Unterlage
- 10
- Behälter
- 11
- Behälterwand
- 12
- Behälterwand
- 13
- Behälterwand
- 14
- Behälterwand
- 17
- Eckpunkt
- 18
- ausgeblendeter Bereich
- 19
- Achsenabschnitt
- 20
- Lichtlaufzeit-Scanner
- 25
- Lichtlaufzeit-Scanner
- 30
- Punktreihe
- 35
- Punktreihe
- 40
- Entnahmeroboter
- α
- Winkel
- β
- Winkel