-
Hintergrund der Erfindung
-
1. Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft ein Robotersimulationssystem, das einen Entnahmevorgang von Werkstücken simuliert.
-
2. Beschreibung des verwandten Stands der Technik
-
Es wird ein Robotersimulationssystem zum Simulieren eines Roboters verwendet, der mit einem Werkstück umgeht, oder zum Durchführen eines anderen vorbestimmten Vorgangs in einem virtuellen Raum. Die Ergebnisse der Simulation werden verwendet, um ein Steuerprogramm des Roboters zu evaluieren, und um nach Bedarf Korrekturen vorzunehmen.
-
Die
JP 2007-326160 A offenbart ein Robotersimulationssystem, das verwendet wird, um eine störende Wechselwirkung (in der Folge „Interferenz” bezeichnet) zwischen einem Roboter und einem Werkstück und eine Interferenz zwischen einem Roboter und einem Behälter vorherzusagen, wenn eine Vielzahl von Werkstücken entnommen wird, die innerhalb des Containers ungeordnet gestapelt sind.
-
Wenn zum Beispiel der Betrieb eines Roboters simuliert wird, wenn Werkstücke die ungeordnet gestapelt sind, in einem Behälter nach und nach durch den Roboter entnommen werden, ist es erforderlich, Werkstücke in einem ungeordneten gestapelten Zustand in einem virtuellen Raum zu erstellen. In dem Robotersimulationssystem, das in
JP 2007-326160 A offenbart ist, werden die Positionen und Stellungen der Werkstückmodelle zufällig bestimmt. Wenn jedoch die Werkstückmodelle zufällig platziert werden, werden die Wirkungen der Schwerkraft usw. nicht in Betracht gezogen, so dass ein unnatürlicher ungeordneter gestapelter Zustand erstellt wurde, der den tatsächlich auftretenden ungeordneten gestapelten Zustand nicht hinreichend wiedergibt.
-
Deshalb besteht ein Bedarf an einem Robotersimulationssystem, das in der Lage ist, Werkstücke in einem ungeordneten gestapelten Zustand zu erstellen, während die Schwerkraft, die auf die Werkstücke wirkt, und die störende Wechselwirkung mit den Werkstücken in Betracht gezogen wird.
-
Kurzfassung der Erfindung
-
Gemäß einer ersten Ausgestaltung der vorliegenden Erfindung wird ein Robotersimulationssystem vorgesehen, das einen Entnahmevorgang für eine Entnahme nach und nach einer Vielzahl von Werkstücken simuliert, die in einem Behälter in einem Arbeitsraum durch einen Roboter ungeordnet gestapelt sind, wobei das Robotersimulationssystem umfasst: einen Erstellungsabschnitt für einen virtuellen Raum, der einen virtuellen Raum erstellt, der den Arbeitsraum drei-dimensional darstellt; einen Modellerstellungsabschnitt, der ein Behältermodell erstellt, dass den Behälter dreidimensional und eine Vielzahl der Werkstückmodelle darstellt, die wiederum die Vielzahl der Werkstücke drei-dimensional darstellen; einen Modellplatzierungsabschnitt, der das Behältermodell in dem virtuellen Raum platziert und der die Werkstückmodelle, die irgendwelche Stellungen bei initialen Positionen aufweisen, oberhalb des Behältermodells platziert; einen Abwurfvorgangsimulationsabschnitt, der einen Abwurfvorgang simuliert, in dem die Werkstücke von den initialen Positionen in das Innere des Behälters mittels der Schwerkraft abgeworfen werden; und einen Erstellungsabschnitt für einen ungeordneten gestapelten Zustand, der einen ungeordneten gestapelten Zustand der Werkstückmodelle auf der Grundlage der Positionen und Stellungen der Werkstückmodelle erstellt, die als ein Ergebnis der Simulation des Abwurfvorgangs erlangt werden.
-
Gemäß einer zweiten Ausgestaltung der vorliegenden Erfindung wird das Robotersimulationssystem gemäß der ersten Ausgestaltung vorgesehen, wobei der Abwurfvorgangsimulationsabschnitt konfiguriert ist, um den Abwurfvorgang zu simulieren, indem die Schwerkraft, die auf die Werkstückmodelle wirkt, die Interferenz zwischen den Werkstückmodellen und die Interferenz zwischen den Werkstückmodellen und dem Behältermodell berücksichtigt werden.
-
Gemäß einer dritten Ausgestaltung der vorliegenden Erfindung wird das Robotersimulationssystem gemäß der zweiten Ausgestaltung vorgesehen, wobei der Abwurfvorgangsimulationsabschnitt konfiguriert ist, um den Abwurfvorgang zu simulieren, indem zusätzlich eine Stoßkraft und eine Reibungskraft berücksichtigt werden, die auf die Werkstückmodelle wirken.
-
Gemäß einer vierten Ausgestaltung der vorliegenden Erfindung wird das Robotersimulationssystem gemäß zumindest einem der ersten bis dritten Ausgestaltung vorgesehen, wobei der Modellplatzierungsabschnitt konfiguriert ist, um die Werkstückmodelle bei initialen Positionen derart zu platzieren, dass die Werkstückmodelle nicht miteinander interferieren und derart, dass die Werkstückmodelle in das Behältermodell abgeworfen werden.
-
Gemäß einer fünften Ausgestaltung der vorliegenden Erfindung wird das Robotersimulationssystem gemäß zumindest einem der ersten bis vierten Ausgestaltung vorgesehen, wobei das System weiterhin umfasst: einen Positions- und Stellungsberechnungsabschnitt, der Positionen und Stellungen der Werkstückmodelle während der Simulation des Abwurfvorgangs berechnet, und einen Beurteilungsabschnitt, der beurteilt, ob die Simulation des Abwurfvorgangs beendet ist, wobei der Beurteilungsabschnitt derart konfiguriert ist, dass dann, wenn Änderungsbeträge von Positionen und Stellungen der Werkstückmodelle, die durch den Positions- und Stellungsberechnungsabschnitt berechnet sind, kleiner als vorbestimmte Schwellwerte sind, er dann bestimmt, dass die Simulation des Abwurfvorgangs beendet ist.
-
Gemäß einer sechsten Ausgestaltung der vorliegenden Erfindung wird das Robotersimulationssystem gemäß der fünften Ausgestaltung vorgesehen, wobei der Positions- und Stellungsberechnungsabschnitt konfiguriert ist, um weiterhin Positionen und Stellungen der Werkstückmodelle während der Simulation des Entnahmevorgangs zu berechnen, der Abwurfvorgangsimulationsabschnitt konfiguriert ist, um weiterhin den Abwurfvorgang der Werkstücke auf der Grundlage der Positionen und Stellungen der Werkstückmodelle zu simulieren, die durch den Positions- und Stellungsberechnungsabschnitt während der Simulation des Entnahmevorgangs erlangt sind, und der Erstellungsabschnitt für einen ungeordneten gestapelten Zustand konfiguriert ist, um weiterhin einen ungeordneten gestapelten Zustand der Werkstücke auf der Grundlage der Positionen und Stellungen der Werkstückmodelle zu erstellen, die als ein Ergebnis der Simulation des Abwurfvorgangs während der Simulation des Entnahmevorgangs erlangt sind.
-
Diese und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden unter Bezugnahme auf die ausführliche Beschreibung verdeutlichender Ausführungsbeispiele der vorliegenden Erfindung klarer werden, die in den beiliegenden Zeichnungen gezeigt sind.
-
Kurze Beschreibung der Zeichnungen
-
Es zeigen:
-
1 eine Gesamtansicht des Aufbaus eines Robotersystems, das ein Robotersimulationssystem gemäß der vorliegenden Erfindung umfasst;
-
2 ein Beispiel der Anzeige durch einen Anzeigeabschnitt des Robotersimulationssystems;
-
3 eine Funktionsblockdarstellung des Robotersimulationssystems;
-
4 ein Ablaufdiagramm, das den Ablauf von Vorgängen zur Erstellung von Werkstückmodellen in einem ungeordneten gestapelten Zustand zeigt;
-
5A eine Ansicht zur Beschreibung von Platzierungsbedingungen von Werkstückmodellen;
-
5B eine vergrößerte Ansicht, die vergrößert eines der Werkstückmodelle zeigt, die in 5A gezeigt sind;
-
6A eine Ansicht, die Werkstückmodelle bei initialen Positionen zeigt;
-
6B eine Ansicht, die Werkstückmodelle zeigt, die aus ihren initialen Positionen abgeworfen wurden;
-
7 eine Ansicht, die die Schwerkraft, die Aufprallkraft und die Reibungskraft zeigt, die auf ein Werkstückmodell wirken;
-
8 eine Funktionsblockdarstellung eines Robotersimulationssystems;
-
9 ein Ablaufdiagramm, das den Ablauf der Vorgänge zur Erstellung von Werkstückmodellen in einem ungeordneten gestapelten Zustand während der Simulation eines Entnahmevorgangs zeigt;
-
10A eine Ansicht, die Werkstückmodelle in dem ungeordneten gestapelten Zustand zeigt;
-
10B eine Ansicht, die den Zustand zeigt, in dem die Positionen und Stellungen der Werkstückmodelle geändert werden; und
-
10C eine Ansicht, die Werkstückmodelle nach der Simulation eines Abwurfvorgangs zeigt.
-
Ausführliche Beschreibung der Erfindung
-
Nachstehend wird die vorliegende Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen beschrieben werden. Die einzelnen Elemente der gezeigten Ausführungsbeispiele werden geeignet im Maßstab geändert, um das Verständnis der vorliegenden Erfindung zu erleichtern. Des Weiteren werden denselben oder entsprechenden bildenden Elementen dieselben Bezugszeichen durch die Zeichnungen hindurch zugewiesen.
-
1 zeigt eine Gesamtansicht des Aufbaus eines Robotersystems 100, das ein Robotersimulationssystem 10 gemäß dem vorliegenden Ausführungsbeispiel umfasst. Das Robotersimulationssystem 10 ist zum Beispiel ein digitaler Computer, der konfiguriert ist, um ein Roboterprogramm zu erstellen und ablaufen zu lassen. Das Robotersystem 100 ist weiterhin mit einem Roboter 130 versehen. Der Roboter 130 ist ein mehrgelenkiger Roboter, der durch eine Robotersteuervorrichtung 140 gesteuert wird. Das Robotersimulationssystem 10 und die Robotersteuervorrichtung 140 sind miteinander durch eine Kommunikationseinrichtung 102 verbunden, die einen bekannten Aufbau aufweist. Die Kommunikationseinrichtung 102 wird zum Beispiel zum Senden eines Steuerprogramms, das durch das Robotersimulationssystem 10 erstellt ist, zu der Robotersteuervorrichtung 140 verwendet.
-
Der Roboter 130 ist zum Beispiel mit einer Hand 132, die ein Werkstück 160 greifen kann, bei einem Spitzenende seines Arms versehen. Der Roboter 130 wird durch die Robotersteuervorrichtung 140 gesteuert, um nach und nach Werkstücke 160 aus der großen Anzahl von Werkstücken 160 zu entnehmen, die ungeordnet gestapelt sind, das heißt unregelmäßig innerhalb eines Behälters 150 angeordnet sind.
-
Der Behälter 150 weist die Form eines Korbs auf, der zum Beispiel eine Unterseite 152 und eine periphere Wand 154 aufweist, die sich nach oben hin von der Unterseite 152 im Wesentlichen in einer vertikalen Richtung erstreckt. Der Behälter 150 ist hin zu der Spitze geöffnet. Der Roboter 130 ist ausgelegt, um auf einen Unterbringungsraum 156 zugreifen zu können, der durch die Unterseite 152 und die periphere Wand 154 des Behälters 150 von oben her definiert ist.
-
In dem gezeigten Beispiel weist jedes Werkstück 160 eine Quaderform auf. Das Werkstück 160 ist jedoch nicht auf diese Form beschränkt. Stattdessen kann der Behälter 150 irgendeine Form aufweisen, so lange der Roboter 130 auf das Innere des Unterbringungsraums 156 zugreifen kann.
-
Das Robotersimulationssystem 10, obwohl dies nicht gezeigt ist, ist mit einer CPU zur Durchführung verschiedener Berechnungen, einem RAM, der die Ergebnisse der Berechnungen durch die CPU speichert, einem ROM, der verschiedene Programme speichert, und einer Eingabevorrichtung versehen. Die Eingabevorrichtung kann eine Maus, eine Tastatur oder eine andere bekannte Eingabeeinrichtung sein. Das Robotersimulationssystem 10 ist weiterhin mit einer Flüssigkristallanzeige oder einem anderen Anzeigeabschnitt 12 versehen.
-
2 zeigt ein Beispiel der Anzeige durch einen Anzeigeabschnitt 12 des Robotersimulationssystems 10. Der Anzeigeabschnitt 12 zeigt einen virtuellen Raum an, der den Arbeitsraum des Roboters 13 darstellt, der in 1 drei-dimensional gezeigt ist. Wie gezeigt, zeigt der Schirm des Anzeigeabschnitts 12 ein Robotermodell 30, das den Roboter 130 drei-dimensional darstellt, ein Behältermodell 50, das den Behälter 150 drei-dimensional darstellt, und Werkstückmodelle 60 an, die die Werkstücke 160 drei-dimensional darstellen. Des Weiteren werden jeweils eine Hand 32 des Robotermodells 30 und eine Unterseite 52 und eine periphere Wand 54 des Behältermodells 50 auf dem Schirm angezeigt.
-
2 zeigt lediglich zwei-dimensionale Informationen auf dem Anzeigeabschnitt 12 an. Der Bediener kann jedoch eine Maus, eine Tastatur oder eine andere Eingabevorrichtung verwenden, um den Blickwinkel zu ändern, um dadurch die Positionsbeziehung zwischen den verschiedenen Elementen in einem drei-dimensionalen Raum zu prüfen.
-
Das Robotersimulationssystem 10 ist konfiguriert, um den Entnahmevorgang durch das Robotermodell 30 nach und nach zur Entnahme der Werkstückmodelle 60 durchzuführen, die in dem Behältermodell 50 in dem virtuellen Raum ungeordnet gestapelt sind. Der Bediener kann bestimmen, ob das Steuerprogramm für den Roboter 130 geeignet ist, während der Simulationszustand während des Ablaufs in dem virtuellen Raum geprüft wird.
-
3 zeigt eine Funktionsblockdarstellung des Robotersimulationssystems 10. Wie in der Figur gezeigt, umfasst das Robotersimulationssystems 10 einen Erstellungsabschnitt 14 für einen virtuellen Raum, einen Modellerstellungsabschnitt 16, einen Modell platzierungsabschnitt 18, einen Abwurfvorgangsimulationsabschnitt 20, einen Erstellungsabschnitt 22 für einen ungeordneten gestapelten Zustand, einen Positions- und- Stellungsberechnungsabschnitt 24 und einen Beurteilungsabschnitt 26.
-
Der Erstellungsabschnitt 14 für einen virtuellen Raum weist die Funktion zum Erstellen eines virtuellen Raums auf, der den Arbeitsraum des Roboters 130 dreidimensional darstellt, wie in 1 gezeigt ist. Der virtuelle Raum, der durch den Erstellungsabschnitt 14 für einen virtuellen Raum erstellt wird, wird auf dem Schirm des Anzeigeabschnitts 12 des Robotersimulationssystems 10 angezeigt (vergleiche 2).
-
Der Modellerstellungsabschnitt 16 weist die Funktion zum Erstellen eines Robotermodells 30, eines Behältermodells 50 und von Werkstückmodellen 60 auf, die jeweils drei-dimensional den Roboter 130, den Behälter 150 und die Werkstücke 160 darstellen. Die Modelle 30, 50 und 60 werden zum Beispiel gemäß Forminformationen der jeweiligen Elemente erstellt, die in dem ROM des Robotersimulationssystems 10 gespeichert sind. Alternativ kann der Bediener die Eingabeeinrichtung des Robotersimulationssystems 10 verwenden, um die Formen der Modelle 30, 50 und 60 einzustellen.
-
Der Modellplatzierungsabschnitt 18 weist die Funktion zum Platzieren des Robotermodells 30, des Behältermodells 50 und der Werkstückmodelle 60, die durch den Modellerstellungsabschnitt 16 erstellt wurden, bei vorbestimmten Positionen in dem virtuellen Raum auf.
-
Der Abwurfvorgangsimulationsabschnitt 20 weist die Funktion zum Simulieren der Abwurfbewegung der Werkstücke 160 unter Berücksichtigung der Schwerkraft, die auf die Werkstückmodelle 60 wirkt, der Interferenz zwischen den Werkstückmodellen 60 und der Interferenz zwischen den Werkstückmodellen 60 und dem Behältermodell 50 auf. Der Abwurfvorgangsimulationsabschnitt 20, wie nachstehend beschrieben werden wird, kann ebenso konfiguriert werden, um das Verhalten der Werkstücke 160 unter Berücksichtigung der Aufprallkraft und der Reibungskraft zu simulieren, die auf die Werkstückmodelle 60 wirken.
-
Der Erstellungsabschnitt 22 für einen ungeordneten gestapelten Zustand weist die Funktion zum Erstellen eines ungeordneten gestapelten Zustands auf, wobei eine Vielzahl der Werkstückmodelle 60 in dem Behältermodell 50 auf der Grundlage der Positionen und Stellungen der Werkstückmodelle 60 ungeordnet gestapelt sind, die wiederum als ein Ergebnis der Simulation des Abwurfvorgangs der Werkstücke 160 erlangt sind.
-
Der Positions- und Stellungsberechnungsabschnitt 24 weist die Funktion zum Berechnen der Positionen und Stellungen der Werkstückmodelle 60 in dem virtuellen Raum auf. Die Position eines Werkstückmodells 60 wird zum Beispiel gemäß der Position des Schwerpunkts des Werkstückmodells 60 in einem Referenzkoordinatensystem bestimmt, das in dem virtuellen Raum definiert ist. Die Stellung des Werkstückmodells 60 wird zum Beispiel gemäß einem Neigungswinkel der Ebene berechnet, die sich durch den Schwerpunkt des Werkstückmodells 60 erstreckt.
-
Der Beurteilungsabschnitt 26 weist die Funktion zum Beurteilen auf, ob der Abwurfvorgang der Werkstückmodelle 60 beendet ist. Der Beurteilungsabschnitt 26 ist zum Beispiel konfiguriert, um zu beurteilen, dass der Abwurfvorgang der Werkstückmodelle 60 beendet ist, wenn die Änderungsbeträge der Positionen und Stellungen der Werkstückmodelle 60, die durch den Positions- und Stellungsberechnungsabschnitt 24 erfasst sind, hinreichend klein werden. Das heißt, ein Abwurfvorgang gilt als beendet, wenn das Verhalten der Werkstückmodelle 60 nach dem Abwurf kleiner wird.
-
Das Robotersimulationssystem 10 ist konfiguriert, um Werkstücke, die in einem Behälter in einem virtuellen Raum ungeordnet gestapelt sind, gemäß einem Betriebsprogramm erstellen zu können, das in dem ROM gespeichert ist. 4 zeigt ein Ablaufdiagramm, das den Ablauf des Betriebs zum Erstellen von Werkstückmodellen in einem ungeordneten gestapelten Zustand zeigt.
-
Zuerst erstellt in Schritt S401 der Erstellungsabschnitt 14 für einen virtuellen Raum einen drei-dimensionalen virtuellen Raum, der dem Arbeitsraum des Roboters 130 entspricht (vergleiche 1). Der erstellte virtuelle Raum wird auf dem Anzeigeabschnitt 12 des Robotersimulationssystems 10 angezeigt.
-
Als nächstes erstellt in Schritt S402 der Modellerstellungsabschnitt 16 ein dreidimensionales Behältermodell 50 und Werkstückmodelle 60, die jeweils dem Behälter 150 und den Werkstücken 160 entsprechen.
-
In Schritt S403 platziert der Modellplatzierungsabschnitt 18 das Behältermodell 50 und die Werkstückmodelle 60, die in Schritt S402 erstellt wurden, in dem virtuellen Raum. In dem vorliegenden Ausführungsbeispiel sind die Werkstückmodelle 60 oberhalb des Behältermodells 50 angeordnet, wobei sie die Wirkung der Schwerkraft ignorieren.
-
5A zeigt eine Ansicht zur Beschreibung der Platzierungsbedingungen der Werkstückmodelle 60. 5B zeigt eine vergrößerte Ansicht, die ein vergrößertes unter den Werkstückmodellen 60 zeigt, die in 5A gezeigt sind. In 5A sind virtuelle Kugeln 62, die den Werkstückmodellen 60 entsprechen, durch gestrichelte Linien gezeichnet. Es sei darauf hingewiesen, dass die Kugeln 62 verwendet werden, wenn die initialen Positionen der Werkstückmodelle 60 bestimmt werden, es besteht aber kein Bedarf, dass diese tatsächlich auf dem Anzeigeabschnitt 12 angezeigt werden.
-
Wie in 5B gezeigt, sind die Kugeln 62 Kugeln, die Schwerpunkte G der Werkstückmodelle 60 als ihre Mittelpunkte aufweisen und Abstände D von den Schwerpunkten G zu den Eckpunkten P, die am weitesten von den Schwerpunkten G entfernt positioniert sind, als Radien aufweisen. In dem Fall eines Werkstückmodells 60, das wie gezeigt eine Quaderform aufweist, sind die Distanzen zwischen den Eckpunkten und dem Schwerpunkt G einander gleich, so dass irgendein Eckpunkt ausgewählt werden kann.
-
Wie durch Bezugnahme auf 5A ersichtlich, überlappen die Kugeln 62 einander nicht, das heißt die Abstände zwischen den Schwerpunkten G der Kugeln 62 betragen 2D oder mehr. Falls die Werkstückmodelle 60 auf diese Weise platziert werden, ist es möglich, zu verhindern, dass die Werkstückmodelle 60 einander bei ihren initialen Positionen überlappen.
-
Des Weiteren werden die Kugeln 62 im Inneren des Bereichs platziert, der durch die virtuellen Linien definiert ist, die sich von dem Spitzenende 54A der peripheren Wand 54 des Behältermodells 50 nach oben hin in der vertikalen Richtung erstrecken. Durch eine derartige Platzierung, wenn die Werkstückmodelle 60 wie nachstehend beschrieben abgeworfen werden, kann garantiert werden, dass die Werkstückmodelle 60 in den Unterbringungsraum 56 des Behältermodells 50 abgeworfen werden. Wenn der Modellplatzierungsabschnitt 18 konfiguriert wird, um das Werkstückmodell 60 gemäß derartiger vorbestimmter Platzierungsbedingungen zu platzieren, kann die Belastung des Bedieners verringert werden.
-
Es sei darauf hingewiesen, dass die Positionen der Werkstückmodelle 60 (Positionen der Schwerpunkte G) gemäß vorbestimmten Bedingungen bestimmt werden, wie vorstehend beschrieben wurde. Es sind aber die Stellungen der Werkstückmodelle 60 zum Beispiel zufällig gemäß Zufallszahlen eingestellt. Alternativ können die Stellungen der Modelle 60 frei durch den Bediener eingestellt werden.
-
Unter Bezug auf 4 simuliert in Schritt S404 der Abwurfvorgangsimulationsabschnitt 20 einen Abwurfvorgang, in dem die Werkstückmodelle 60, die bei ihren initialen Positionen in Schritt S403 platziert wurden, in das Behältermodell 50 abgeworfen werden. Das heißt, die Schwerkraft, die in Schritt S403 ignoriert wurde, wird hier berücksichtigt, um das Verhalten der Werkstückmodelle 60 bei Abwurf zu berechnen.
-
6A zeigt eine Ansicht, die die Werkstückmodelle 60a, 60b und 60c bei den initialen Positionen zeigt. 6B zeigt eine Ansicht, die den Zustand zeigt, in dem die Werkstückmodelle 60a, 60b und 60c veranlasst werden, aus den initialen Positionen gemäß 6A abgeworfen zu werden. 6BG zeigt zur Bezugnahme die Werkstückmodelle 60a, 60b und 60c inmitten des Abwurfvorgangs von den initialen Positionen aus durch gestrichelte Linien. 6A und 6B zeigen zur Vereinfachung der Beschreibung lediglich die drei Werkstückmodelle 60a, 60b und 60c. Es kann aber jedwede Anzahl von Werkstückmodellen angeordnet werden.
-
In der Simulation des Abwurfvorgangs, der in Schritt S404 abläuft, wird eine Interferenz zwischen den Werkstückmodellen 60a, 60b und 60c und wird eine Interferenz zwischen den Werkstückmodellen 60a, 60b und 60c und dem Behältermodell 50 berücksichtigt. „Interferenz” zwischen zwei Elementen, auf die hier Bezug genommen wird, meint eine Bewegung eines einzelnen Elements, das physikalisch durch das Vorhandensein des anderen Elements behindert wird. 6B zeigt einen interferierenden Abschnitt Q1 zwischen dem Werkstückmodell 60a und dem Werkstückmodell 60b, einen interferierenden Abschnitt Q2 zwischen dem Werkstückmodell 60b und dem Werkstückmodell 60c, einen interferierenden Abschnitt Q3 zwischen dem Werkstückmodell 60a und dem Behältermodell 50 und einen interferierenden Abschnitt Q4 zwischen dem Werkstückmodell 60c und dem Behältermodell 50.
-
Des Weiteren kann in der Simulation eines Abwurfvorgangs die Reibungskraft und die Aufprallkraft, die auf die Werkstückmodelle 60a, 60b und 60c wirken, ebenso berücksichtigt werden. 7 zeigt eine Ansicht, die die Schwerkraft, die Aufprallkraft und die Reibungskraft zeigt, die auf die Werkstückmodelle 60 wirken. In 7 ist zur Vereinfachung der Beschreibung lediglich ein einziges Werkstückmodell 60 gezeigt.
-
Die Pfeilmarkierung A1 in 7 zeigt die Wirkrichtung der Schwerkraft. Die Pfeilmarkierung A2 zeigt die Wirkrichtung der Aufprallkraft, wenn das Werkstückmodell 60 auf die Unterseite 52 des Behältermodells 50 abgeworfen wird. Die Pfeilmarkierung A3 zeigt die Wirkrichtung der Reibungskraft zwischen dem Werkstückmodell 60 und der Unterseite 52 des Behältermodells 50.
-
Die Kräfte, die auf das Werkstückmodell 60 wirken, werden jeweils durch die nachfolgenden Berechnungsformeln (1) zu (3) berechnet. Schwerkraft = Mg Gleichung (1) Aufprallkraft = MV (1 + e)/t Gleichung (2) Reibungskraft = μsMg Gleichung (3)
-
Es sei darauf hingewiesen, dass „M” eine Masse des Werkstücks 60 angibt, „g” eine Fallbeschleunigung angibt, „V” eine Geschwindigkeit unmittelbar vor dem Aufschlag des Werkstückmodells 60 auf das Behältermodell 50 angibt, „e” eine Stoßzahl angibt, „t” eine Aufprallzeit zwischen dem Werkstückmodell 60 und dem Behältermodell 50 angibt, „μ” den Koeffizienten der dynamischen Reibung angibt und „s” die Kontaktfläche zwischen dem Werkstückmodell 60 und dem Behältermodell 50 angibt. Es sei darauf hingewiesen, dass zu diesem Zeitpunkt angenommen wird, dass die Position des Behältermodells 50 unverändert ist. Die Parameter, die für die Simulation des Abwurfvorgangs erforderlich sind, werden in dem ROM des Robotersimulationssystems 10 gespeichert oder werden unter Verwendung einer Eingabeeinrichtung eingestellt.
-
Unter Bezugnahme auf 4, während die Simulation des Abwurfvorgangs abläuft, berechnet der Positions- und Stellungsberechnungsabschnitt 24 die Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c mit einem vorbestimmten Zyklus (Schritt S405).
-
Als nächstes werden in Schritt S406 die Änderungsbeträge der Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c berechnet und werden die erlangten Änderungsbeträge mit vorbestimmten Schwellwerten verglichen. Falls in Schritt S406 die Änderungsbeträge der Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c größer oder gleich den Schwellwerten sind, dann beurteilt der Beurteilungsabschnitt 26, dass der Abwurfvorgang noch nicht vollständig beendet ist. In diesem Fall kehrt die Routine zu Schritt S404 zurück, um die Simulation des Abwurfvorgangs fortzusetzen.
-
Wird demgegenüber in Schritt S406 beurteilt, dass die Änderungsbeträge der Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c kleiner als die Schwellwerte waren, dann beurteilt der Beurteilungsabschnitt 26, dass der Abwurfvorgang der Werkstückmodelle 60a, 60b und 60c beendet ist. Es sei darauf hingewiesen, dass der Schwellwert, der mit den Änderungsbeträgen von Positionen in Schritt S406 verglichen wird, nicht beschränkt ist. Es kann aber zum Beispiel ein Wert von einem Hundertstel des Radius D (vergleiche 5B) der Kugeln verwendet werden, die mit den Werkstückmodellen 60 verknüpft sind. Des Weiteren ist der Schwellwert, der mit den Änderungsbeträgen der Stellung (Änderungsbetrag des Neigungswinkels) verglichen wird, nicht beschränkt. Es kann aber zum Beispiel 0,1 Grad verwendet werden.
-
Auf der Grundlage der Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c, wenn der Abwurfvorgang beendet ist, und die auf diese Weise erlangt sind, erstellt der Erstellungsabschnitt 22 für einen ungeordneten gestapelten Zustand den ungeordneten gestapelten Zustand der Werkstückmodelle 60a, 60b und 60c. Der erstellte ungeordnete gestapelte Zustand wird zur Simulation des Prozesses des Roboters verwendet, der nach und nach Werkstücke entnimmt.
-
Gemäß dem vorliegenden Ausführungsbeispiel wird der ungeordnete gestapelte Zustand der Werkstückmodelle in dem Behältermodell erstellt, während die Schwerkraft, die auf die Werkstückmodelle wirkt, die Interferenz zwischen den Werkstückmodellen und die Interferenz zwischen den Werkstückmodellen und dem Behältermodell berücksichtigt werden. Auf Grund dessen wird es möglich, in dem virtuellen Raum einen Zustand zu erstellen, der dem ungeordneten gestapelten Zustand nahe kommt, der tatsächlich auftreten kann. Falls des Weiteren derartige Werkstücke in dem ungeordneten gestapelten Zustand zum Ablaufen einer Simulation des Entnahmeprozesses verwendet werden, kann die Zuverlässigkeit der Simulation verbessert werden.
-
Optional, falls eine Simulation des Abwurfvorgangs abläuft, während eine Aufprallkraft und eine Reibungskraft berücksichtigt werden, die auf das Werkstückmodell wirken, wird es möglich, einen noch natürlicheren ungeordneten gestapelten Zustand in dem virtuellen Raum zu erstellen.
-
8 zeigt eine Funktionsblockdarstellung eines Robotersimulationssystems 10, das konfiguriert ist, um Werkstückmodelle in dem ungeordneten gestapelten Zustand zu erstellen, während die Simulation des Entnahmeprozesses abläuft. Wie gezeigt, umfasst das Robotersimulationssystem 10 zusätzlich zu der Konfiguration, die in 3 gezeigt ist, einen Entnahmeprozesssimulationsabschnitt 21, einen Positions- und Stellungsänderungsbeurteilungsabschnitt 23 und einen Initialplatzierungseinstellungsabschnitt 25.
-
Der Entnahmeprozesssimulationsabschnitt 21, wie in 1 gezeigt, weist die Funktion zum Simulieren des Entnahmeprozesses zum Entnehmen nach und nach der Werkstücke 160 aus dem Behälter 150 durch einen Roboter 130 auf. Da eine derartige Simulation des Entnahmeprozesses bekannt ist, wird dessen ausführliche Beschreibung in dieser Beschreibung ausgelassen werden.
-
Der Positions- und Stellungsänderungsbeurteilungsabschnitt 23 weist die Funktion zum Beurteilen auf, ob zumindest eine der Positionen und Stellungen der Werkstückmodelle 60 sich während der Simulation des Entnahmeprozesses ändert. Während der Simulation des Entnahmeprozesses werden die Positionen und die Stellungen der Werkstückmodelle 60 periodisch durch den Positions- und Stellungsberechnungsabschnitt 24 berechnet. Deshalb ist der Positions- und Stellungsänderungsbeurteilungsabschnitt 23 konfiguriert, um mit dem Positions- und Stellungsberechnungsabschnitt 24 zusammen zu arbeiten, um die vorstehend beschriebene Beurteilung durchzuführen.
-
Der Initialplatzierungseinstellungsabschnitt 25 weist die Funktion zum Einstellen der initialen Platzierung auf, wenn der Abwurfvorgangsimulationsabschnitt 20 einen Abwurfvorgang des Werkstücks 160 simuliert.
-
10A zeigt die Werkstückmodelle 60a, 60b und 60c, die in dem Behältermodell 50 ungeordnet gestapelt sind. 10B zeigt den Zustand, in dem das Werkstückmodell 60b aus dem Behältermodell 50 entnommen ist. Die Werkstückmodelle 60a und 60c befinden sich in der Luft, da die Wirkung der Schwerkraft zu diesem Zeitpunkt ignoriert wird. Auf diese Weise, wenn die Position und die Stellung des Werkstückmodells 60b sich ändern, dann werden die Positionen und Stellungen der anderen Werkstückmodelle 60a und 60c manchmal unnatürlich. Im Stand der Technik wird die Simulation des Entnahmeprozesses mit diesem unnatürlichen Zustand fortgesetzt.
-
Gemäß dem Robotersimulationssystem 10 des vorliegenden Ausführungsbeispiels wird der ungeordnete gestapelte Zustand wieder erstellt, indem die Simulation des Abwurfvorgangs des Werkstücks abläuft, während der Zustand, der in 10B gezeigt ist, als die initialen Platzierungen der Werkstückmodelle 60a und 60c verwendet werden. 10C zeigt den Zustand nachdem die in 10B gezeigten Werkstückmodelle 60a und 60c veranlasst wurden, abgeworfen zu werden, indem die Wirkung der Schwerkraft berücksichtigt wurde.
-
9 zeigt ein Ablaufdiagramm, das den Ablauf der Prozesse des Erstellens der Werkstückmodelle in dem ungeordneten gestapelten Zustand während der Simulation des Entnahmeprozesses zeigt.
-
Zuerst läuft in Schritt S901 durch den Entnahmeprozesssimulationsabschnitt 21 eine Simulation des Entnahmeprozesses zur Entnahme von Werkstücken ab, die in dem Behälter ungeordnet gestapelt sind. Zu diesem Zeitpunkt sind die Werkstückmodelle 60 in dem virtuellen Raum innerhalb des Behältermodells 50 durch den Erstellungsabschnitt 22 für einen ungeordneten gestapelten Zustand auf die vorstehend beschriebene Weise (vergleiche 10A) ungeordnet gestapelt.
-
In Schritt S902 wird beurteilt, ob die Simulation des Entnahmeprozesses beendet ist. Ist die Simulation beendet, dann wird eine Endverarbeitung durchgeführt.
-
Wenn in Schritt S902 beurteilt wird, dass die Simulation des Entnahmeprozesses nicht beendet ist, dann berechnet der Positions- und Stellungsberechnungsabschnitt 24 die Positionen und Stellungen der Werkstückmodelle 60a, 60b und 60c (Schritt S903). Des Weiteren beurteilt in Schritt S904 der Positions- und Stellungsänderungsbeurteilungsabschnitt 23, ob die Positionen oder Stellungen der Werkstückmodelle 60a, 60b und 60c sich änderten. Wenn beurteilt wird, dass die Positionen oder die Stellungen der Werkstückmodelle 60a, 60b und 60c sich nicht änderten, kehrt die Routine zu Schritt S901 zurück, in dem die Simulation des Entnahmeprozesses fortgesetzt wird.
-
Wird demgegenüber in Schritt S904 beurteilt, dass die Positionen oder Stellungen der Werkstückmodelle 60a, 60b und 60c sich änderten (vergleiche 10B), dann geht die Routine zu Schritt S905 über. In Schritt S905 werden die Positionen und die Stellungen der Werkstückmodelle 60, die bei dem vorherigen Schritt S903 berechnet wurden, als die initiale Anordnung eingestellt.
-
Als nächstes wird in Schritt S906 der Abwurfvorgang der Werkstückmodelle 60 gemäß der initialen Anordnung simuliert, die in Schritt S905 eingestellt ist. Da die Prozesse der Schritte S906 bis S908 den Prozessen der Schritte S404 bis S406 gemäß 4 entsprechen und auf ähnliche Weise durchgeführt werden können, wird deren ausführliche Beschreibung ausgelassen werden.
-
Gemäß den Prozessen der Schritte S906 bis S908 erstellt der Erstellungsabschnitt 22 für einen ungeordneten gestapelten Zustand den ungeordneten gestapelten Zustand der Werkstückmodelle, und kehrt dann die Routine zu Schritt S901 zurück, in dem in dem neu erstellten ungeordneten gestapelten Zustand Werkstücke zur fortgesetzten Simulation des Entnahmeprozesses durch den Roboter verwendet werden.
-
Gemäß einem derartigen Ausführungsbeispiel, wenn zumindest eine der Position und der Stellung eines Werkstücks sich während der Simulation des Entnahmeprozesses ändern, wird das neue Layout der Werkstücke nach der Änderung als eine Grundlage für den ungeordneten gestapelten Zustand der Werkstücke verwendet, um diesen wieder zu erstellen. Auf Grund dessen wird es möglich, zu jedem Zeitpunkt während der Simulation des Entnahmeprozesses einen natürlichen ungeordneten gestapelten Zustand beizubehalten. Deshalb kann die Zuverlässigkeit der Simulation und des Entnahmeprozesses verbessert werden.
-
Wirkung der Erfindung
-
Gemäß dem Robotersimulationssystem mit dem vorstehend beschriebenen Aufbau wird es möglich, Werkstückmodelle, die in einem Behältermodell ungeordnet gestapelt sind, unter Berücksichtigung der Wirkung der Schwerkraft zu erstellen und einen natürlicheren ungeordneten gestapelten Zustand zu erstellen. Auf Grund dessen wird es möglich, den Entnahmeprozess der Werkstücke unter Bedingungen nahe einem tatsächlichen ungeordneten gestapelten Zustand zu simulieren und die Zuverlässigkeit der Simulation zu verbessern.
-
Obwohl die verschiedenen Ausführungsbeispiele und Modifikationen der vorliegenden Erfindung vorstehend beschrieben wurden, ist für den Durchschnittsfachmann ersichtlich, dass Funktionen und Wirkungen, die durch die vorliegende Erfindung beabsichtigt sind, durch andere Ausführungsbeispiele und Modifikationen erlangt werden können. Insbesondere können bildende Elemente der Ausführungsbeispiele und der Modifikationen, die vorstehend beschrieben sind, entfernt oder ersetzt werden, oder kann ein bekanntes Element zusätzlich zu ihr hinzugefügt werden, ohne von dem Schutzbereich der vorliegenden Erfindung abzuweichen. Zudem ist es für den Durchschnittsfachmann offensichtlich, dass die vorliegende Erfindung durch irgendeine Kombination der Merkmale der Ausführungsbeispiele implementiert werden kann, die in der Patentbeschreibung implizit oder explizit offenbart sind.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 2007-326160 A [0003, 0004]