DE112021007921T5 - Robotersimulationsvorrichtung - Google Patents

Robotersimulationsvorrichtung Download PDF

Info

Publication number
DE112021007921T5
DE112021007921T5 DE112021007921.2T DE112021007921T DE112021007921T5 DE 112021007921 T5 DE112021007921 T5 DE 112021007921T5 DE 112021007921 T DE112021007921 T DE 112021007921T DE 112021007921 T5 DE112021007921 T5 DE 112021007921T5
Authority
DE
Germany
Prior art keywords
load
robot
section
animation
workpiece
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112021007921.2T
Other languages
English (en)
Inventor
Tatsuya Oumi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE112021007921T5 publication Critical patent/DE112021007921T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Diese Robotersimulationsvorrichtung (1) weist auf: eine erste Lasteinstelleinheit (22a), die als Last mindestens eines von einer an einem Roboter (10) vorgesehenen Hand (11) und einem von der Hand zu greifenden Werkstück (19) einstellt; eine zweite Lasteinstelleinheit (22b), die eine auf den Roboter wirkende und durch eine Animation dargestellte Last einstellt eine Lastaufzeichnungseinheit (23), die eine eingestellte Last, die durch die erste Lasteinstelleinheit eingestellt wird, und eine Last, die durch die zweite Lasteinstelleinheit eingestellt und durch eine Animation angezeigt wird, aufzeichnet; und eine Vergleichseinheit (24), die die aufgezeichnete eingestellte Last und die durch die Animation angezeigte Last vergleicht. Dementsprechend wird die Korrekturarbeit vor Ort an einem Betriebsprogramm für den Roboter reduziert.

Description

  • Technischer Gebiet
  • Die vorliegende Erfindung betrifft eine Robotersimulationsvorrichtung.
  • Stand der Technik
  • Wenn ein Roboter tatsächlich auf der Grundlage seines Betriebsprogramms arbeitet, muss die Last, die auf den Roboter einwirkt, korrekt eingestellt werden.
  • Um die Zuverlässigkeit der von einem Roboter durchgeführten Operationen und die Sicherheit der Umgebung im Voraus zu verstehen, wird der Roboter mit einem Offline-Programmiersystem simuliert und die Zykluszeit entsprechend einer festgelegten Last berechnet (siehe z. B. Patentliteratur 1 (Ungeprüfte Patentschrift (Kokai) Nr. 2013-144349 )).
  • Zitierliste
  • Patentliteratur
  • PTL 1: Ungeprüfte Patentveröffentlichung (Kokai) Nr. 2013-144349
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • Die Zykluszeit kann jedoch berechnet werden, da die Simulation auch dann durchgeführt werden kann, wenn die Last nicht genau eingestellt ist oder die Einstellung der Last selbst nicht vorgenommen wird. Wenn der Roboter in einem solchen Fall tatsächlich betrieben wird und die Zykluszeit gemessen wird, kann die tatsächliche Zykluszeit von der durch die Simulation berechneten Zykluszeit abweichen. Daher muss das Betriebsprogramm des Roboters vor Ort geändert werden, was zu dem Problem führt, dass sich die Inbetriebnahme des Roboters verzögert.
  • Daher besteht ein Bedarf an einer Robotersimulationsvorrichtung, die den Aufwand für die Änderung von Betriebsprogrammen vor Ort reduzieren kann.
  • Lösung des Problems
  • Gemäß einem ersten Aspekt der vorliegenden Offenbarung wird eine Robotersimulationsvorrichtung bereitgestellt, die von einem Offline-Programmiersystem ausgeführt wird und die mindestens einen Roboter in einem Offline-Arbeitsbereich aufweist, wobei die Vorrichtung einen ersten Lasteinstellabschnitt zum Einstellen mindestens eines Endeffektors, der in dem mindestens einen Roboter vorgesehen ist, und eines zugehörigen Teils des Endeffektors als eine Last aufweist, einen zweiten Lasteinstellabschnitt zum Einstellen einer Last, die auf den mindestens einen Roboter in der Simulationsvorrichtung ausgeübt werden soll und die durch eine Animation angezeigt werden soll, einen Lastspeicherabschnitt, der eine eingestellte Last, die durch den ersten Lasteinstellabschnitt eingestellt wurde, und eine Last in der Animation, die durch den zweiten Lasteinstellabschnitt eingestellt wurde, während der Simulationsdurchführung in der Robotersimulationsvorrichtung speichert, und einen Vergleichsabschnitt, der die eingestellte Last und die Last in der durch den Lastspeicherabschnitt gespeicherten Animation vergleicht.
  • Vorteilhafte Wirkungen der Erfindung
  • Da die Last des Roboters in der Animation mit der eingestellten Last verglichen wird, kann man erkennen, dass die Last nicht genau eingestellt ist, wenn die Differenz zwischen den beiden Werten den vorgegebenen Schwellenwert überschreitet. Indem die eingestellte Last zurückgesetzt wird, wird die Zykluszeit in der Simulation genau, und folglich ist es möglich, den Änderungsaufwand des Betriebsprogramms vor Ort zu reduzieren.
  • Der erste Aspekt ist besonders vorteilhaft, wenn der Bediener bei der Erstellung eines Betriebsprogramms für einen Roboter die Last nur in der Animation eingibt und die Eingabe einer eingestellten Last vergisst.
  • Die Gegenstände, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung der Ausführungsformen in Verbindung mit den beigefügten Zeichnungen verdeutlicht.
  • Kurzbeschreibung der Zeichnungen
    • [1] 1 ist ein Blockdiagramm einer Robotersimulationsvorrichtung gemäß der vorliegenden Offenbarung;
    • [2] 2 ist ein Flussdiagramm, das den Betrieb der Robotersimulationsvorrichtung basierend auf einer ersten Ausführungsform zeigt;
    • [3] 3 ist ein Diagramm, das ein Last-Zeit-Diagramm der ersten Ausführungsform zeigt; [4] 4 ist ein Flussdiagramm, das den Betrieb der Robotersimulationsvorrichtung basierend auf einer zweiten Ausführungsform zeigt; und
    • [5] 5 ist ein Diagramm, das ein Last-Zeit-Diagramm der zweiten Ausführungsform zeigt.
  • Beschreibung der Ausführungsformen
  • Die Ausführungsformen der vorliegenden Offenbarung werden im Folgenden unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. In den Zeichnungen sind die entsprechenden Bestandteile mit gemeinsamen Bezugszeichen versehen.
  • 1 ist ein Blockdiagramm einer Robotersimulationsvorrichtung gemäß der vorliegenden Offenbarung. Die Robotersimulationsvorrichtung 1, die von einem Offline-Programmiersystem durchgeführt wird, weist eine Steuereinheit 20 zur Steuerung der Simulationsverarbeitung auf, und der Simulationsstatus wird auf einem mit der Steuereinheit 20 verbundenen Anzeigeteil 5 angezeigt.
  • Ein Modell eines vertikal gelenkigen Roboters 10 mit mehreren Achsen im Offline-Arbeitsbereich wird auf dem Anzeigeteil 5, z. B. einer CRT- oder Flüssigkristallanzeige, dargestellt. Das in 1 dargestellte Modell des Roboters 10 umfasst ein Modell einer Hand 11 als Endeffektor an seinem Ende. Das Modell der Hand 11 hält das Modell eines Werkstücks 19.
  • In der vorliegenden Beschreibung werden das Modell des Roboters 10, das Modell des Endeffektors (z. B. die Hand 11) und das Modell des Werkstücks 19 einfach als Roboter 10, Endeffektor (Hand 11) bzw. Werkstück 19 bezeichnet. Es sollte beachtet werden, dass Modelle einer Vielzahl von Robotern 10 mit ähnlichen Konfigurationen angezeigt und simuliert werden können. Außerdem kann der Roboter 10 auch andere Formen haben.
  • Darüber hinaus weist der Endeffektor, z. B. die Hand 11, verschiedene Arten von Händen auf, die in der Lage sind, das Werkstück 19 zu greifen, wie z. B. eine Hand vom Typ Öffnen/Schließen, eine Hand vom Typ Vakuumsaugen und eine Hand vom Typ Magnetisches Saugen. In der folgenden Ausführungsform wird der Vorgang des Greifens/Lösens des Werkstücks 19 durch die Hand 11 vom Typ Öffnen/Schließen als Endeffektor beschrieben. Die vorliegende Erfindung ist jedoch nicht auf solche Vorgänge beschränkt und kann verschiedene Vorgänge aufweisen, bei denen das betreffende Teil durch den Endeffektor beeinflusst wird, insbesondere andere Vorgänge, bei denen sich das Gewicht (die Last) des betreffenden Teils ändert, wenn sich der Roboter 10 bewegt.
  • So sind beispielsweise ein Vorgang, bei dem ein Lackierkopf als Endeffektor eine in eine auf dem Roboter 10 vorgesehene Lackdose gefüllte Farbe als zugehöriger Teil aufsprüht, während sich der Roboter 10 bewegt, und ein Vorgang, bei dem ein Spänesauger als Endeffektor Späne absaugt und in einem Spänespeichertank als zugehöriger Teil speichert, während sich der Roboter 10 bewegt, ebenfalls im Anwendungsbereich der vorliegenden Offenbarung enthalten.
  • Die Steuereinheit 20 ist ein Computer mit einer CPU (Zentraleinheit), einem Speicher usw. und weist einen Simulationsdurchführungsabschnitt 21 auf, der den Betrieb des Roboters 10 simuliert, z. B. einen Vorgang des Ergreifens eines Werkstücks 19 und des Loslassens desselben nach der Bewegung, unter Verwendung einer bekannten Methode. Die Steuereinheit 20 umfasst einen ersten Lasteinstellabschnitt 22a, der mindestens einen an dem mindestens einen Roboter 10 vorgesehenen Endeffektor, z. B. die Hand 11, und einen zugehörigen Teil des Endeffektors, z. B. ein Werkstück 19, als Last einstellt. Der erste Lasteinstellabschnitt 22a kann mindestens eine der am Roboter 10 vorgesehenen Hand 11 und das von der Hand 11 zu greifende Werkstück 19 als Last einstellen. Die Steuereinheit 20 umfasst ferner einen zweiten Lasteinstellabschnitt 22b, der die Last einstellt, die auf den Roboter 10 in der Simulationsvorrichtung 1 wirkt und durch eine Animation dargestellt wird. Es ist zu beachten, dass diese Lasteinstellabschnitte 22a und 22b Programmteile sind, die „eine oder mehrere Zeilen“, in denen eine entsprechende Last eingestellt ist, aus dem Betriebsprogramm 28 lesen und interpretieren, dass die Last eingestellt ist.
  • Die Steuereinheit 20 umfasst einen Lastspeicherabschnitt 23, der die durch den ersten Lasteinstellabschnitt 22a eingestellte Last und die durch den zweiten Lasteinstellabschnitt 22b eingestellte Last in der Animation während der Simulationsdurchführung durch den Simulationsdurchführungsabschnitt 21 speichert, und einen Vergleichsabschnitt 24, der die eingestellte Last und die Last in der durch den Lastspeicherabschnitt 23 gespeicherten Animation vergleicht. Ferner weist die Steuereinheit 20 einen Warnungsabschnitt 25 auf, der eine Warnung an den Bediener in Form eines Tons und/oder einer Nachricht ausgibt.
  • Der Simulationsdurchführungsabschnitt 21, die Lasteinstellabschnitte 22a, 22b, der Lastspeicherabschnitt 23, der Vergleichsabschnitt 24 und der Warnungsabschnitt 25 sind Funktionsmodule, die durch ein Computerprogramm realisiert werden, das von der CPU der Steuereinheit 20 durchgeführt wird. Das Betriebsprogramm 28 ist in einem Speicherabschnitt, z.B. einem Speicher, der Steuereinheit 20 gespeichert. Der Speicherabschnitt 27 speichert auch verschiedene Daten, die in verschiedenen von der CPU durchgeführten Prozessen verwendet oder erzeugt werden.
  • Es sollte beachtet werden, dass das Computerprogramm zum Durchführen der Verarbeitung jeder Einheit, die in der CPU enthalten ist, in der Form bereitgestellt werden kann, dass es in einem computerlesbaren Speichermedium wie einem Halbleiterspeicher, einem magnetischen Speichermedium oder einem optischen Speichermedium gespeichert ist.
  • 2 ist ein Flussdiagramm, das den Betrieb der Robotersimulationsvorrichtung gemäß der ersten Ausführungsform zeigt. Zunächst führt der Simulationsdurchführungsabschnitt 21 in Schritt S1 eine Simulation des Roboters 10 auf der Grundlage des Betriebsprogramms 28 des Roboters 10 durch, das in dem Speicherabschnitt 27, z. B. dem Speicher, gespeichert ist.
  • Der Betrieb des Roboters 10 in der vorliegenden Offenbarung weist zumindest das Greifen und Freigeben des Werkstücks 19 durch die Hand 11 auf. Der Bediener erstellt das Betriebsprogramm 28 im Voraus mit Hilfe eines Eingabeteils 29 der Steuereinheit 20, wie z. B. einer Tastatur und einer Maus. Alternativ kann das Betriebsprogramm 28 im Voraus von einem Bediener oder einem anderen Anbieter unter Verwendung eines anderen Computers als der Steuereinheit 20 erstellt werden.
  • Wenn die Simulation durchgeführt wird, wird der Roboter 10 auf dem Anzeigeteil 5 als Animation dargestellt. So werden auch die Greifbewegung des Werkstücks 19 und die Freigabebewegung des Werkstücks 19 durch die Hand 11 des Roboters 10 in der Animation animiert. Nach Beendigung der Simulation wird die Zykluszeit bei der Durchführung der im Betriebsprogramm 28 beschriebenen Vorgänge erfasst.
  • Ein Teil des Betriebsprogramms 28 des Roboters 10 einer typischen Ausführungsform sieht folgendermaßen aus.
    • 1: !FANUC;
    • 2: !ROBOGUIDE hat diese TPP erzeugt;
    • 3: ! Ausführen SimPRO.cf, um den Rahmen festzulegen ;
    • 4: Werkzeug-Koordinatennummer [GP1]=1 ;
    • 5: Benutzer-Koordinatennummer [GP1]=0 ;
    • 6: Lasteinstellung[1:EOAT w/o Teil] ;
    • 7: jede Achsposition[1] 100% positionieren ;
    • 8: !BewegenZu-Aufnahme (‚werk05‘) von ( ;
    • 9: jede Achsposition[2] 100% positionieren ;
    • 10: jede Achsposition[3] 100% positionieren ;
    • 11: ! Aufnehmen (‚werk05‘) von (`Palette ;
    • 12: !WARTEN 0.00 (Sek) ;
    • 13: Lasteinstellung[2:EOAT mit Teil] ;
    • 14: lineare Position[4] 2000mm/Sek positionieren ;
    • 15: !BewegenZu-Loslassen (`werk05') von (`G ;
    • 16: jede Achsposition[5] 100% positionieren ;
    • 17: jede Achsposition[6] 100% positionieren ;
    • 18: !Loslassen (`werk05') von (`GP: 1 - ;
    • 19: !WARTEN 0.00 (Sek) ;
    • 20: Lasteinstellung[1:EOAT ohne Teil] ;
    • 21: lineare Position[7] 2000mm/Sek positionieren ;
    • 22: jede Achsposition[8] 100% positionieren ;
  • Die Ausgangsposition des Roboters 10 wird durch die Bestimmung der Position jeder Achse des Roboters 10 in der Zeile 7 des Betriebsprogramms 28 „jede Achsposition[1] 100% positionieren“ bestimmt. Es ist zu beachten, dass die Position jeder Achse durch drei zueinander senkrechte Achsen und Winkel um diese drei Achsen ausgedrückt wird. Außerdem bedeutet „BewegenZu-Aufnahme“ in Zeile 8, dass der Roboter 10 sich von der Startposition zu einer bestimmten Position bewegt und das Werkstück 19 mit der Hand 11 greift und anhebt, und die Position wird durch „jede Achsposition [2] 100% positionieren“ in den Zeilen 9 und 10 bestimmt.
  • „BewegenZu-Loslassen“ in Zeile 15 bedeutet, dass der Roboter 10 in die gewünschte Position fährt, um das Werkstück 19 abzusenken, und die gewünschte Position wird bestimmt, indem er sich linear von der Greifposition aus bewegt, wie in Zeile 14 „lineare Position[4] 2000mm/Sek positionieren“ beschrieben, und dann die Position jeder Achse bestimmt, wie in „jede Achsposition [5] 100% positionieren“ in den Zeilen 16 und 17 beschrieben.
  • Danach bedeutet „Loslassen“ in Zeile 18, dass das Werkstück 19 von der Hand 11 freigegeben und abgesenkt wird. Nachdem die gewünschte Zeit gemäß „WARTEN“ in Zeile 19 abgewartet wurde, fährt der Roboter 10 in die Endposition gemäß „lineare Position[7] 2000mm/Sek positionieren“ in Zeile 21 und „jede Achsposition [8] 100% positionieren“ in Zeile 22. Im Einzelnen weist das oben beschriebene Betriebsprogramm 28 die vier Stufen „Start“, „Greifen“, „Freigeben“ und „Ende“ auf.
  • „Lasteinstellung“ steht in den Zeilen 6, 13 und 20 des oben beschriebenen Betriebsprogramms 28. Bei diesen Zeilen handelt es sich um Zeilen, in denen die eingestellte Last Wb mindestens einer der im Roboter 10 vorgesehenen Hand 11 und des von der Hand 11 zu haltenden Werkstücks 19 beschrieben werden sollte. Außerdem handelt es sich bei den Zeilen nach der vierten Zeile und mit Ausnahme der sechsten Zeile, der dreizehnten Zeile und der zwanzigsten Zeile um Sätze, die sich auf die Verarbeitung durch Animation beziehen. Mit anderen Worten, diese Zeilen sind die Zeilen, in denen die Last Wa, die auf den Roboter 10 in der Simulationsvorrichtung 1 einwirkt und durch eine Animation dargestellt wird, zu schreiben ist.
  • Es sollte beachtet werden, dass der erste Lasteinstellabschnitt 22a ein Programmteil ist, der Zeilen liest, in denen die eingestellte Last Wb geschrieben werden sollte, zum Beispiel die Zeilen 6, 13 und 20, und interpretiert, dass die Last Wb eingestellt ist. In ähnlicher Weise ist der zweite Lasteinstellabschnitt 22b ein Programmteil, der Zeilen liest, in denen die eingestellte Last Wa geschrieben wird, z. B. die Zeilen nach Zeile 4 und andere Zeilen als die Zeilen 6, 13 und 20, und interpretiert, dass die eingestellte Last Wa gesetzt ist. Diese Interpretationen werden während der Simulationsdurchführung durchgeführt.
  • 3 ist ein Diagramm, das ein Last-Zeit-Diagramm einer ersten Ausführungsform zeigt. In 3 ist die Hand 11 während des „Starts“, des „Greifens“ des Werkstücks, des „Freigebens“ des Werkstücks und des „Endes“ des Betriebs des Roboters 10 dargestellt. Diese entsprechen der Hand 11, die während der Durchführung der auf dem Anzeigeteil 5 dargestellten Simulation animiert ist. Darunter sind die Zeitdiagramme der Last Wa in der Animation und der eingestellten Last Wb dargestellt.
  • In Schritt S2 von 2 speichert der Lastspeicherabschnitt 23 die Last Wa in der Animation durch den zweiten Lasteinstellabschnitt 22b. Insbesondere speichert der Lastspeicherabschnitt 23 die Last Wa als Zeitdiagramm durch die tatsächliche Simulation, die vom Simulationsdurchführungsabschnitt 21 in Bezug auf die Zeilen durchgeführt wird, für die die Last Wa als im ersten Lasteinstellabschnitt 22a eingestellt interpretiert wird. In dem in 3 dargestellten Zeitdiagramm der Last Wa ist zu erkennen, dass die Last Wa bei „Start“, „Freigeben“ und „Ende“ 10 kg und die Last Wa beim „Greifen“ 12 kg beträgt.
  • Mit anderen Worten: Die Last (das Gewicht) der Hand 11 beträgt 10 kg, und die Last (das Gewicht) des Werkstücks 19 beträgt 2 kg. In 3 wird „10 kg“ in der Hand 11 und „2 kg“ im Werkstück 19 angezeigt. Obwohl diese Zahlenwerte der Einfachheit halber in 3 dargestellt sind, bedeutet dies nicht, dass sie während der Simulation auf diese Weise im Anzeigebereich 5 angezeigt werden.
  • Zeile 6 des oben beschriebenen Betriebsprogramms 28 gibt die eingestellte Last Wb zum Zeitpunkt des „Starts“ des Roboters 10 an. Da in Zeile 11 „Aufnehmen“ steht, gibt Zeile 13 die eingestellte Last Wb beim „Greifen“ des Werkstücks 19 an. Da in Zeile 18 „Loslassen“ steht, wird in Zeile 20 die eingestellte Last Wb beim „Loslassen“ des Werkstücks 19 angegeben.
  • Konkret steht in den Zeilen 6 und 20 „1:EOAT w/o Teil“, was „ohne Teil“ bedeutet, und so kann in den Zeilen 6 und 20 die Last Wb nur der Hand 11 ohne das Werkstück 19 eingestellt werden. Da in Zeile 13 „2:EOAT mit Teil“ steht, kann die gesamte Last Wb von Werkstück 19 und Hand 11 in Zeile 13 eingestellt werden.
  • Als nächstes speichert der Lastspeicherabschnitt 23 in Schritt S4 die eingestellte Last Wb durch den ersten Lasteinstellabschnitt 22a auf der Grundlage des Betriebsprogramms 28. Insbesondere speichert der Lastspeicherabschnitt 23 die Last Wb in Form eines Zeitdiagramms auf der Grundlage der Zeilen, auf denen interpretiert wird, dass die Last Wb durch den zweiten Lasteinstellabschnitt 22b eingestellt wurde, z. B. die Zeilen 6, 13 und 20. Es sollte beachtet werden, dass es beim Speichern der Last Wb nicht notwendig ist, die Simulation durch den Simulationsdurchführungsabschnitt 21 durchzuführen, und Schritt S4 kann vor der Durchführung der Simulation durchgeführt werden. In dem in 3 gezeigten Zeitdiagramm für die eingestellte Last Wb beträgt, wie durch die durchgezogene Linie angedeutet, Wb während des „Starts“, des „Greifens“ und des „Freigebens“ jeweils 10 kg.
  • Anschließend geht das Verfahren zu Schritt S5 über, und der Vergleichsabschnitt 24 vergleicht die Last Wa in der Animation und die eingestellte Last Wb. Konkret ermittelt der Vergleichsabschnitt 24, ob der Absolutwert |Wa - Wb| der Differenz zwischen der Last Wa in der Animation und der eingestellten Last Wb größer ist als ein vorgegebener Schwellenwert A1. Der Schwellenwert A1 ist ungefähr gleich dem Gewicht des Werkstücks 19.
  • In dem in 3 gezeigten Beispiel erhöht sich die Last Wa in der Animation zum Zeitpunkt des „Greifens“ von 10 kg auf 12 kg, während sich die durch die durchgezogene Linie angegebene Solllast Wb von „Start“ bis „Ende“ nicht ändert und auch während des „Greifens“ bei 10 kg bleibt.
  • In einem solchen Fall kann festgestellt werden, dass beim „Greifen“ (Zeile 13 des Betriebsprogramms 28) nur die Last der Hand 11 eingegeben wird und die Last des Werkstücks 19 nicht. Somit wird festgestellt, dass der Absolutwert |Wa - Wb| der Differenz zum Zeitpunkt des „Greifens“ größer als der Schwellenwert A1 ist, und das Verfahren schreitet zu Schritt S6 fort. In Schritt S6 gibt der Warnungsabschnitt 25 eine Warnung an den Bediener in Form eines Tons oder einer Meldung zur Änderung des Betriebsprogramms 28 aus.
  • Umgekehrt beträgt die durch die gestrichelte Linie in 3 angezeigte eingestellte Last Wb beim „Start“ 10 kg, aber die eingestellte Last vom „Greifen“ bis zum „Freigeben“ beträgt 12 kg, die nach dem „Freigeben“ auf 10 kg zurückgeht. Im Falle der durch die gestrichelte Linie angezeigten Solllast Wb kann also festgestellt werden, dass die Last in das Betriebsprogramm 28 unter Berücksichtigung der Last des Werkstücks 19 eingegeben wird.
  • Da in einem solchen Fall festgestellt wurde, dass der Absolutwert der Differenz zum Zeitpunkt „Greifen“ nicht größer als der Schwellenwert A1 ist, wird der Vorgang beendet, ohne dass der Warnungsabschnitt 25 eine Warnung ausgibt. Mit anderen Worten, wenn die eingestellte Last vom „Greifen“ bis zum „Freigeben“ um den Schwellenwert A1 größer ist als die eingestellte Last zum Zeitpunkt des „Starts“ und „Endes“, kann festgestellt werden, dass die Last des Werkstücks 19 in das Betriebsprogramm 28 eingegeben wird.
  • Da in der ersten Ausführungsform die Last Wa in der Animation des Roboters 10 mit der eingestellten Last Wb verglichen wird, kann man davon ausgehen, dass die eingestellte Last Wb nicht genau eingestellt wurde, wenn die Differenz zwischen den beiden Werten den vorgegebenen Schwellenwert A1 überschreitet. In der ersten Ausführungsform ist nur die Last der Hand 11 als Solllast Wb eingestellt, die Last des Werkstücks 19 ist jedoch nicht eingestellt. Daher ist es vorzuziehen, dass die Warnung durch den Warnungsabschnitt 25 in Schritt S6 anzeigt, dass die Last des Werkstücks 19 nicht eingestellt ist.
  • Wenn festgestellt wird, dass die Einstellung der eingestellten Last Wb nicht korrekt erfolgt ist, kann der Bediener die eingestellte Last Wb zurücksetzen. In diesem Fall kann der Bediener eine Last, die der Summe aus der Last der Hand 11 und der Last des Werkstücks 19 entspricht, als Solllast Wb zum Zeitpunkt des „Greifens“ in Zeile 13 einstellen. Als Ergebnis wird ein genaues Betriebsprogramm 28 erstellt, wodurch eine genaue Simulation durchgeführt werden kann.
  • Auf diese Weise ist es im Rahmen der vorliegenden Offenlegung möglich, während der Durchführung einer Simulation eines Offline-Programmiersystems die Last Wa in der Animation heranzuziehen, um festzustellen, ob die Solllast Wb genau eingestellt wurde oder nicht. Durch die genaue Einstellung der eingestellten Last Wb wird die durch die Simulation ermittelte Zykluszeit genauer. Auf diese Weise ist es möglich, die Anzahl der Änderungen am eigentlichen Betriebsprogramm 28 des Roboters 10 in der Praxis zu reduzieren.
  • In dieser Hinsicht vergessen die Bediener bei der Erstellung des Betriebsprogramms 28 üblicherweise nicht, die Last Wa des Roboters 10 in der Animation einzustellen. Es gibt jedoch Fälle, in denen ein Bediener vergisst, die eingestellte Last Wb einzugeben, auch wenn er die Last Wa eingegeben hat. Die vorliegende Offenbarung ist besonders vorteilhaft, wenn der Bediener nur die Last Wa in der Animation eingibt und die Eingabe der eingestellten Last Wb vergisst.
  • 4 ist ein Flussdiagramm, das den Betrieb der Robotersimulationsvorrichtung basierend auf der zweiten Ausführungsform zeigt, und 5 ist ein Diagramm, das ein Last-Zeit-Diagramm in der zweiten Ausführungsform zeigt. Da die Schritte S1 bis S4 in 4 dieselben sind wie oben beschrieben, wurde auf eine doppelte Beschreibung verzichtet.
  • In Schritt S5' von 4 wird ermittelt, ob der Absolutwert |Wa - Wb| der Differenz größer als ein vorgegebener Schwellenwert A2 ist. Der Schwellenwert A2 ist ungefähr gleich dem Gesamtgewicht der Hand 11 und des Werkstücks 19.
  • In dem in 5 gezeigten Beispiel erhöht sich die Last Wa in der Animation zum Zeitpunkt des „Greifens“ von 10 kg auf 12 kg, während sich die durch die durchgezogene Linie dargestellte Solllast Wb von „Start“ bis „Ende“ nicht ändert und ihr Wert unbekannt ist.
  • In einem solchen Fall kann festgestellt werden, dass sowohl die Last der Hand 11 als auch die Last des Werkstücks 19 zwischen „Start“ und „Ende“ nicht eingegeben wurden. Mit anderen Worten: In der zweiten Ausführungsform wurde die eingestellte Last Wb in Schritt S4 nicht tatsächlich gespeichert. Es wird also festgestellt, dass der Absolutwert |Wa - Wb| der Differenz zum Zeitpunkt „Greifen“ größer als der Schwellenwert A2 ist, und das Verfahren geht weiter zu Schritt S6'. In Schritt S6' gibt der Warnungsabschnitt 25 eine Warnung an den Bediener in Form eines Tons oder einer Meldung zur Änderung des Betriebsprogramms 28 aus. In diesem Fall ist es vorteilhaft, dass die Warnung durch den Warnungsabschnitt 25 anzeigt, dass sowohl die Last der Hand 11 als auch die Last des Werkstücks 19 nicht eingestellt wurden.
  • Wenn in Schritt S5' festgestellt wird, dass der Absolutwert |Wa - Wb| der Differenz nicht größer als der vorgegebene Schwellenwert A2 ist, geht das Verfahren zu Schritt S5" über, und es wird festgestellt, ob der Absolutwert |Wa - Wb| der Differenz größer als der oben beschriebene Schwellenwert A1 ist. Wenn dies der Fall ist, wird zu Schritt S6" übergegangen und eine Warnung ausgegeben, die anzeigt, dass die Last des Werkstücks 19 nicht eingestellt wurde. Auf diese Weise kann dem Bediener genau angezeigt werden, ob er nur die Last der Hand 11 (Endeffektor) oder sowohl die Last der Hand 11 (Endeffektor) als auch die Last des Werkstücks 19 (zugehöriges Teil) im Betriebsprogramm 28 ändern soll.
  • Es versteht sich, dass in einem solchen Fall im Wesentlichen die gleichen Wirkungen wie bei der oben beschriebenen Ausführungsform erzielt werden können.
  • Aspekte der Offenlegung
  • Gemäß einem ersten Aspekt wird eine Robotersimulationsvorrichtung (1) bereitgestellt, die von einem Offline-Programmiersystem durchgeführt wird und die mindestens einen Roboter (10) in einem Offline-Arbeitsbereich aufweist, wobei die Vorrichtung einen ersten Lasteinstellabschnitt (22a) zum Einstellen mindestens eines von einem Endeffektor, der in dem mindestens einen Roboter vorgesehen ist, und eines zugehörigen Teils des Endeffektors als eine Last umfasst, einen zweiten Lasteinstellabschnitt (22b) zum Einstellen einer Last, die auf den mindestens einen Roboter in der Simulationsvorrichtung ausgeübt werden soll und die durch eine Animation angezeigt werden soll, einen Lastspeicherabschnitt (23), der eine eingestellte Last (Wb), die durch den ersten Lasteinstellabschnitt eingestellt wird, und eine Last (Wa) in der Animation, die durch den zweiten Lasteinstellabschnitt eingestellt wird, während der Simulationsdurchführung in der Robotersimulationsvorrichtung speichert, und einen Vergleichsabschnitt (24), der die eingestellte Last und die Last in der durch den Lastspeicherabschnitt gespeicherten Animation vergleicht.
  • Gemäß einem zweiten Aspekt umfasst der erste Aspekt außerdem einen Warnungsabschnitt (25), der eine Warnung ausgibt, wenn eine Differenz zwischen der eingestellten Last und der Last in der Animation größer oder gleich einem vorgegebenen Schwellenwert ist.
  • Nach einem dritten Aspekt gibt der Warnungsabschnitt in Abhängigkeit von der vorgegebenen Schwelle unterschiedliche Warnungen aus.
  • Auswirkungen der Offenlegung
  • Da die Last des Roboters in der Animation mit der eingestellten Last verglichen wird, kann man davon ausgehen, dass die eingestellte Last nicht genau eingestellt wurde, wenn die Differenz zwischen den beiden Werten einen vorgegebenen Schwellenwert überschreitet. Durch das Zurücksetzen der eingestellten Last wird die Zykluszeit in der Simulation genau, so dass die Änderung des Betriebsprogramms vor Ort reduziert werden kann.
  • Zweitens ist es möglich, den Bediener auf eine Änderung des Betriebsprogramms hinzuweisen.
  • Im dritten Aspekt ist es möglich, den Bediener darauf hinzuweisen, ob nur die Last des Endeffektors oder sowohl die Last des Endeffektors als auch die Last des zugehörigen Teils im Betriebsprogramm geändert werden soll.
  • Obwohl die Ausführungsformen der vorliegenden Erfindung oben beschrieben wurden, wird ein Fachmann verstehen, dass verschiedene Modifikationen und Änderungen vorgenommen werden können, ohne von dem in den nachstehenden Ansprüchen offengelegten Umfang abzuweichen.
  • Bezugszeichenliste
  • 1
    Simulationsvorrichtung
    10
    Roboter
    11
    Hand (Endeffektor)
    19
    Werkstück (zugehöriges Teil)
    20
    Steuereinheit
    21
    Simulationsdurchführungsabschnitt
    22a
    erster Lasteinstellabschnitt
    22b
    zweiter Lasteinstellabschnitt
    23
    Lastspeicherabschnitt
    24
    Vergleichsabschnitt
    25
    Warnungsabschnitt
    27
    Speicherabschnitt
    28
    Betriebsprogramm
    29
    Eingabeteil
  • 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
    • WO 2013144349 [0003, 0004]

Claims (3)

  1. Robotersimulationsvorrichtung, die von einem Offline-Programmiersystem ausgeführt wird und die mindestens einen Roboter in einem Offline-Arbeitsbereich aufweist, wobei die Vorrichtung umfasst: einen ersten Lasteinstellabschnitt zum Einstellen wenigstens eines Endeffektors, der in dem wenigstens einen Roboter vorgesehen ist, und eines zugehörigen Teils des Endeffektors als eine Last, einen zweiten Lasteinstellabschnitt zum Einstellen einer Last, die auf den mindestens einen Roboter in der Simulationsvorrichtung ausgeübt und durch eine Animation angezeigt werden soll, einen Lastspeicherabschnitt, der eine durch den ersten Lasteinstellabschnitt eingestellte Last und eine durch den zweiten Lasteinstellabschnitt eingestellte Last in der Animation während der Simulationsausführung in der Robotersimulationsvorrichtung speichert, und einen Vergleichsabschnitt, der die eingestellte Last und die Last in der durch den Lastspeicherabschnitt gespeicherten Animation vergleicht.
  2. Robotersimulationsvorrichtung nach Anspruch 1, ferner umfassend einen Warnungsabschnitt, der eine Warnung ausgibt, wenn eine Differenz zwischen der eingestellten Last und der Last in der Animation größer oder gleich einem vorbestimmten Schwellenwert ist.
  3. Robotersimulationsvorrichtung nach Anspruch 2, wobei der Warnungsabschnitt in Abhängigkeit von dem vorbestimmten Schwellenwert unterschiedliche Warnungen ausgibt.
DE112021007921.2T 2021-09-15 2021-09-15 Robotersimulationsvorrichtung Pending DE112021007921T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/033968 WO2023042309A1 (ja) 2021-09-15 2021-09-15 ロボットシミュレーション装置

Publications (1)

Publication Number Publication Date
DE112021007921T5 true DE112021007921T5 (de) 2024-04-18

Family

ID=85602553

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021007921.2T Pending DE112021007921T5 (de) 2021-09-15 2021-09-15 Robotersimulationsvorrichtung

Country Status (5)

Country Link
JP (1) JPWO2023042309A1 (de)
CN (1) CN117916060A (de)
DE (1) DE112021007921T5 (de)
TW (1) TW202319197A (de)
WO (1) WO2023042309A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013144349A1 (en) 2012-03-30 2013-10-03 Societe De Developpement Et De Recherche Industrielle Method and kit for the classification and prognosis of tissue or organ fibrosis in a reparative or reactive process

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04255003A (ja) * 1991-02-06 1992-09-10 Fanuc Ltd オフラインティーチング方式
JP2003150219A (ja) * 2001-11-12 2003-05-23 Fanuc Ltd 作業機械のシミュレーション装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013144349A1 (en) 2012-03-30 2013-10-03 Societe De Developpement Et De Recherche Industrielle Method and kit for the classification and prognosis of tissue or organ fibrosis in a reparative or reactive process

Also Published As

Publication number Publication date
WO2023042309A1 (ja) 2023-03-23
JPWO2023042309A1 (de) 2023-03-23
TW202319197A (zh) 2023-05-16
CN117916060A (zh) 2024-04-19

Similar Documents

Publication Publication Date Title
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE10352815B4 (de) Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner
DE102017002996A1 (de) Maschinenlernvorrichtung, die ein lernen unter verwendung eines simulationsergebnisses durchführt, maschinensystem, herstellungssystem und maschinenlernverfahren
DE102009057923A1 (de) Simulationsvorrichtung
DE102015014236B4 (de) Programmkorrekturvorrichtung und Programmkorrekturverfahren eines Industrieroboters
DE102017002486B4 (de) Werkzeugmaschinensystem und Vorrichtung zur Berechnung der Öffnungsanhalteposition
DE102011082291A1 (de) Controller for machine tool and machining-related data processing system provided therewith
EP3812106B1 (de) Roboteranordnung, verfahren zum betreiben der roboteranordnung, computerprogramm sowie maschinenlesbares speichermedium
DE102010030691A1 (de) Dialogsystem und Verfahren zur Untersuchung eines Bearbeitungsprozesses
DE102019117877A1 (de) Roboterprogrammgenerierungsvorrichtung
EP3805693A1 (de) Validieren von prüfplänen zur objektvermessung mit einem koordinatenmessgerät
DE102020131981A1 (de) Roboterlehrvorrichtung mit symbol-programmierfunktion
DE102016013496A1 (de) Numerisches steuersystem zur koordination mit einer werkzeug- katalogdatenbank
DE102017009272A1 (de) Robotersteuervorrichtung mit funktion zum begrenzen von geschwindigkeit und/oder beschleunigung eines roboters
DE102017117144A1 (de) Simulationsvorrichtung
DE112021007921T5 (de) Robotersimulationsvorrichtung
DE102020002382A1 (de) Werkzeugmaschinen-steuervorrichtung und werkzeugmaschine
DE102020103852B4 (de) Erzeugen und Optimieren eines Steuerprogramms für einen Robotermanipulator
DE102019006748A1 (de) Roboterlehrvorrichtung, roboterlehrverfahren und verfahren zumspeichern einer betriebsanweisung
DE112021007154T5 (de) Vorrichtung zur einstellung von sicherheitsparametern, lehrvorrichtung und -verfahren
DE102017121249A1 (de) Verfahren und System zum Bearbeiten eines Werkstücks
DE112022000261T5 (de) Roboter-Lehrvorrichtung und Programm zur Erzeugung eines Roboterprogramms
DE102017105078A1 (de) Robotersteuerung, die einen Roboter Bearbeitungsbewegungen durchführen lässt, und Roboterprogramm-Generator
EP3482263B1 (de) Automatische güteauswertung einer abfolge von bewegungsbefehlen
EP3779619A1 (de) Emergente risiken eines technischen systems