DE112022000931T5 - Steuervorrichtung - Google Patents

Steuervorrichtung Download PDF

Info

Publication number
DE112022000931T5
DE112022000931T5 DE112022000931.4T DE112022000931T DE112022000931T5 DE 112022000931 T5 DE112022000931 T5 DE 112022000931T5 DE 112022000931 T DE112022000931 T DE 112022000931T DE 112022000931 T5 DE112022000931 T5 DE 112022000931T5
Authority
DE
Germany
Prior art keywords
sensor
robot
coordinate system
control device
physical quantity
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
DE112022000931.4T
Other languages
English (en)
Inventor
Kouichirou Hayashi
Tomoyuki Yamamoto
Hajime Suzuki
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 DE112022000931T5 publication Critical patent/DE112022000931T5/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/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37388Acceleration or deceleration, inertial measurement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40549Acceleration of end effector

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manipulator (AREA)

Abstract

Die vorliegende Erfindung ermöglicht die Erkennung einer fehlerhaften Einstellung eines Paares aus einem Roboter und einem Sensor. Diese Steuervorrichtung steuert einen Roboter, in dem ein Sensor angeordnet ist, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit zum Speichern von Koordinatensysteminformationen eines Sensorkoordinatensystems des Sensors, das voreingestellt worden ist; eine Sensoreinstellungsspeichereinheit zum Speichern von Einstellungsinformationen für die Kommunikation mit dem Sensor; eine Sensordatenempfangseinheit zum Empfangen von Sensordaten, die von dem Sensor detektiert werden, auf Basis der Einstellungsinformationen; eine Achsenwinkeldetektionseinheit zum Detektieren eines Winkels von jeder einer Vielzahl von Achsen, die in dem Roboter enthalten sind; eine Sensorwertschätzeinheit zum Schätzen eines Sensorwerts, der von dem Sensor zu detektieren ist, durch Vorwärtstransformation der detektierten Winkel der Vielzahl von Achsen und durch Koordinatentransformation des Sensorkoordinatensystems; und eine Sensorwert-Anomalie-Bestimmungseinheit zum Vergleichen des Werts der Sensordaten und des von der Sensorwertschätzeinheit geschätzten Sensorwerts und zum Bestimmen, dass die Sensordatenempfangseinheit Sensordaten von einem Sensor eines anderen Roboters empfängt, falls die Differenz zwischen dem Wert der Sensordaten und dem geschätzten Sensorwert einen voreingestellten Schwellenwert überschreitet.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung bezieht sich auf eine Steuervorrichtung.
  • STAND DER TECHNIK
  • Die Verringerung von Vibrationen während der Bewegung eines Roboters zur Erhöhung der Geschwindigkeit und der Bahngenauigkeit führt direkt zu einer Verbesserung der Produktionseffizienz und -qualität. Daher besteht der Bedarf, Vibrationen und Bahnabweichungen, die während der Bewegung eines Roboters auftreten, zu reduzieren.
  • Um diesem Bedarf gerecht zu werden, wurde ein Verfahren zur Verringerung von Vibrationen vorgeschlagen, bei dem ein Beschleunigungssensor an einem Roboter an einer Stelle angebracht wird, an der Vibrationen beseitigt oder eine hohe Bahngenauigkeit erreicht werden sollen, die Vibrationen während der Bewegung des Roboters mit dem Beschleunigungssensor gemessen werden und eine Lernkontrolle durchgeführt wird. Siehe z.B. Patentdokument 1.
  • Im Falle eines Roboters mit einem Sensor, der über eine Kabelverbindung verfügt, kann die Verlegung eines Sensorkabels kompliziert sein. Daher wurde eine andere Methode vorgeschlagen, um die Vibrationen eines Roboters zu reduzieren, indem ein drahtloser Beschleunigungssensor am Roboter angebracht wird. Siehe z.B. Patentdokument 2.
    • Patentdokument 1: Ungeprüfte japanische Patentanmeldung, Veröffentlichung Nr. JP 2011-167817 A
    • Patentdokument 2: Ungeprüfte japanische Patentanmeldung, Veröffentlichung Nr. JP 2011-161562 A
  • OFFENBARUNG DER ERFINDUNG
  • Durch die Erfindung zu lösende Probleme
  • Beim Herstellen einer Verbindung zu einem drahtlosen Beschleunigungssensor, der an einem zu steuernden Roboter angebracht ist, kann eine Kopplung mit einem inkorrektem drahtlosen Beschleunigungssensor hergestellt werden, der an einem anderen Roboter angebracht ist. Die Fortsetzung der Messung von Sensorwerten mit einer drahtlosen Verbindung zu einem falschen drahtlosen Beschleunigungssensor führt zu einer unerwarteten Robotersteuerung.
  • Daher ist eine Funktion erwünscht, die den Benutzer über eine eventuelle falsche Kopplung informiert.
  • Mittel zur Lösung der Probleme
    1. (1) Ein Aspekt einer Steuervorrichtung der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters, der mit einem Sensor versehen ist, wobei die Steuervorrichtung enthält: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des Sensors beziehen; eine Sensoreinstellungsspeichereinheit, die so konfiguriert ist, dass sie Einstellungsinformationen speichert, die sich auf die Kommunikation mit dem Sensor beziehen; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem Sensor auf Basis der Einstellungsinformationen detektiert werden; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel jeder einer Vielzahl von Achsen, die in dem Roboter enthalten sind, detektiert; eine Sensorwert-Schätzeinheit, die so konfiguriert ist, dass sie von dem Sensor zu detektierende Sensorwerte durch eine Vorwärtstransformation unter Verwendung der von der Achsenwinkeldetektionseinheit detektierten Winkel der jeweiligen Achsen und einer Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Sensorwert-Anomalie-Bestimmungseinheit, die so konfiguriert ist, dass sie Werte der Sensordaten mit den von der Sensorwert-Schätzeinheit geschätzten Sensorwerten vergleicht und bestimmt, dass die Sensordaten-Empfangseinheit Sensordaten aus einem Sensor empfängt, der an einem anderen Roboter vorgesehen ist, wenn eine Differenz zwischen den Werten der Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
    2. (2) Ein Aspekt einer Steuervorrichtung der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters, der mit einem Sensor versehen ist, wobei die Steuervorrichtung enthält: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des Sensors beziehen; eine Sensoreinstellungsspeichereinheit, die so konfiguriert ist, dass sie Einstellungsinformationen speichert, die sich auf die Kommunikation mit dem Sensor beziehen; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem Sensor auf Basis der Einstellungsinformationen detektiert werden; eine Berechnungseinheit für die physikalische Größe des Sensors, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten berechnet; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel jeder einer Vielzahl von Achsen, die in dem Roboter enthalten sind, detektiert; eine Einheit zur Schätzung der physikalischen Größe des Sensors, die so konfiguriert ist, dass sie eine physikalische Größe, die sich auf den Sensor bezieht, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert wurden, und einer Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Sensorwertanomalien-Bestimmungseinheit, die so konfiguriert ist, dass sie die physikalische Größe, die aus den Sensordaten berechnet wurde, mit der physikalischen Größe, die von der Einheit zur Schätzung der physikalischen Größe des Sensors geschätzt wurde, vergleicht und bestimmt, dass die Sensordatenempfangseinheit Sensordaten von einem Sensor empfängt, der an einem anderen Roboter vorgesehen ist, wenn eine Differenz zwischen der berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
    3. (3) Ein Aspekt einer Steuervorrichtung der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters aus einer Vielzahl von Robotern, die jeweils mit einem Sensor versehen sind, wobei die Steuervorrichtung enthält: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des Sensors beziehen, der an dem zu steuernden Roboter vorgesehen ist; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der Sensoren detektiert werden, die an den jeweiligen Robotern einschließlich des zu steuernden Roboters vorgesehen sind; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel jeder einer Vielzahl von Achsen detektiert, die in dem zu steuernden Roboter enthalten sind; eine Sensorwert-Schätzeinheit, die so konfiguriert ist, dass sie Sensorwerte, die von dem Sensor des zu steuernden Roboters detektiert werden sollen, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkel-Erfassungseinheit detektiert werden, und einer Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Angemessen-Sensor-Bestimmungseinheit, die so konfiguriert ist, dass sie für jeden der an den jeweiligen Robotern vorgesehenen Sensoren Werte der Sensordaten von dem Sensor mit den von der Sensorwertschätzeinheit geschätzten Sensorwerten vergleicht und bestimmt, dass der Sensor an einem anderen Roboter als dem zu steuernden Roboter vorgesehen ist, wenn eine Differenz zwischen den Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
    4. (4) Ein Aspekt einer Steuervorrichtung der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters aus einer Vielzahl von Robotern, die jeweils mit einem Sensor versehen sind, wobei die Steuervorrichtung enthält: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des Sensors beziehen, der an dem zu steuernden Roboter vorgesehen ist; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der Sensoren detektiert werden, die an den jeweiligen Robotern, einschließlich des zu steuernden Roboters, vorgesehen sind; eine Berechnungseinheit für eine physikalische Größe des Sensors, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten von jedem der Sensoren berechnet, die an den jeweiligen Robotern vorgesehen sind; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel jeder einer Vielzahl von Achsen detektiert, die in dem zu steuernden Roboter enthalten sind; eine Einheit zur Schätzung der physikalischen Größe des Sensors, die so konfiguriert ist, dass sie eine physikalische Größe, die sich auf den Sensor des zu steuernden Roboters bezieht, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert wurden, und eine Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Angemessen-Sensor-Bestimmungseinheit, die so konfiguriert ist, dass sie für jeden der an den jeweiligen Robotern vorgesehenen Sensoren die aus den Sensordaten des Sensors berechnete physikalische Größe mit der von der Sensorbestimmungseinheit für die physikalische Größe geschätzten physikalischen Größe vergleicht und bestimmt, dass der Sensor an einem anderen Roboter als dem zu steuernden Roboter vorgesehen ist, wenn eine Differenz zwischen der aus den Sensordaten berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
  • Wirkungen der Erfindung
  • Die vorliegende Erfindung ermöglicht es, den Betrieb eines Roboters mit einem falschen Sensoranschluss zu verhindern.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
    • 1 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems gemäß einer ersten Ausführungsform zeigt;
    • 2A ist ein Diagramm zur Beschreibung der Koordinatensysteme in einem Roboter in 1;
    • 2B ist ein Diagramm zur Beschreibung der Koordinatensysteme in dem Roboter in 1;
    • 3 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Steuervorrichtung illustriert;
    • 4A ist ein Diagramm, das ein Beispiel für den Vergleich zwischen Sensordaten und geschätzten Sensorwerten zeigt;
    • 4B ist ein Diagramm, das ein Beispiel für den Vergleich zwischen Sensordatenwerten und geschätzten Sensorwerten zeigt;
    • 5 ist ein Flussdiagramm zur Beschreibung der Verarbeitung der Anomaliebestimmung in der Steuervorrichtung;
    • 6 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems gemäß einer zweiten Ausführungsform illustriert;
    • 7 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration einer Steuervorrichtung illustriert;
    • 8 ist ein Flussdiagramm zur Beschreibung der Verarbeitung der Anomaliebestimmung in der Steuervorrichtung;
    • 9 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems gemäß einer dritten Ausführungsform illustriert;
    • 10 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration einer Steuervorrichtung illustriert;
    • 11 ist ein Diagramm, das ein Beispiel für den Vergleich zwischen Sensordaten und geschätzten Sensorwerten zeigt;
    • 12 ist ein Flussdiagramm zur Beschreibung einer geeigneten Sensorbestimmungs-Verarbeitung in der Steuervorrichtung;
    • 13 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration einer Steuervorrichtung illustriert;
    • 14 ist ein Flussdiagramm zur Beschreibung einer geeigneten Sensorbestimmungs-Verarbeitung in der Steuervorrichtung; und
    • 15 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems illustriert.
  • BEVORZUGTER MODUS ZUR AUSFÜHRUNG DER ERFINDUNG
  • Erste Ausführungsform
  • Im Folgenden wird eine Konfiguration der vorliegenden Ausführungsform unter Bezugnahme auf die Zeichnungen im Detail beschrieben. Die vorliegende Ausführungsform wird beispielhaft anhand einer Konfiguration beschrieben, in der ein drahtloser Beschleunigungssensor als Sensor verwendet wird. Es sei darauf hingewiesen, dass die vorliegende Erfindung auch auf eine Konfiguration anwendbar ist, in der ein Gyroskopsensor, ein Trägheitssensor oder Ähnliches als Sensor verwendet wird, sowie auf eine Konfiguration, in der ein intelligentes Gerät, wie z.B. ein Smartphone, das einen oder mehrere Sensoren enthält, als Sensor verwendet wird.
  • 1 ist ein funktionales Blockdiagramm, das ein Beispiel für eine funktionale Konfiguration eines Robotersystems gemäß einer ersten Ausführungsform illustriert.
  • Wie in 1 illustriert, umfasst ein Robotersystem 1 n Roboter 10(1) bis 10(n), n Steuervorrichtungen 20(1) bis 20(n) und einen drahtlosen Empfänger 30 (n ist eine ganze Zahl gleich oder größer als 2).
  • Die Roboter 10(1) bis 10(n), die Steuervorrichtungen 20(1) bis 20(n) und der Funkempfänger 30 können über nicht gezeigte Verbindungsschnittstellen direkt miteinander verbunden sein. Die Roboter 10(1) bis 10(n) und die Steuervorrichtungen 20(1) bis 20(n) können über ein Netzwerk, wie z.B. ein lokales Netzwerk (LAN), miteinander verbunden sein. In diesem Fall können die Roboter 10(1) bis 10(n) und die Steuervorrichtungen 20(1) bis 20(n) jeweils eine nicht gezeigte Kommunikationseinheit aufweisen, um über eine solche Verbindung miteinander zu kommunizieren.
  • Im Folgenden können die Roboter 10(1) bis 10(n) auch gemeinsam als „Roboter 10“ bezeichnet werden, sofern die Roboter 10(1) bis 10(n) nicht voneinander unterschieden zu werden brauchen. Ebenso können die Steuervorrichtungen 20(1) bis 20(n) gemeinsam als „Steuervorrichtung 20“ bezeichnet werden, sofern die Steuervorrichtungen 20(1) bis 20(n) nicht voneinander unterschieden zu werden brauchen.
  • Roboter 10
  • Wie in 1 gezeigt, ist der Roboter 10 beispielsweise ein sechsachsiger vertikaler Gelenkroboter mit sechs Gelenkachsen 11(1) bis 11(6) und Armen 12, die durch die Gelenkachsen 11(1) bis 11(6) verbunden sind. Der Roboter 10 treibt bewegliche Teile wie die Arme 12 an, indem er jeden der nicht dargestellten Servomotoren, die in den jeweiligen Gelenkachsen 11(1) bis 11(6) angeordnet sind, auf Basis von Fahrbefehlen von der Steuervorrichtung 20 antreibt. Ein Endeffektor 13, wie z.B. eine Schweißzange, eine Greifhand oder ein Laserbestrahler, ist am distalen Ende eines beweglichen Teils des Roboters 10, z.B. am distalen Ende der Gelenkachse 11(6), angebracht. Ein drahtloser Beschleunigungssensor 101 ist am Endeffektor 13 angebracht.
  • Obwohl der Roboter 10 als sechsachsiger vertikaler Knickarmroboter beschrieben wird, kann der Roboter 10 zum Beispiel ein mehrachsiger vertikaler Knickarmroboter sein, der sich von dem sechsachsigen vertikalen Knickarmroboter unterscheidet, ein horizontaler Knickarmroboter oder ein Parallelgelenkroboter.
  • 2A und 2B sind Diagramme zur Beschreibung der Koordinatensysteme des Roboters 10 in 1.
  • Wie in 2A gezeigt, hat der Roboter 10 einen Roboterbezugspunkt 14 und ein Roboterkoordinatensystem Er, das auf den Roboterbezugspunkt 14 zentriert ist. Der drahtlose Beschleunigungssensor 101 hat einen Sensorbezugspunkt 111 und ein Sensorkoordinatensystem Σs, das auf den Sensorbezugspunkt 111 zentriert ist.
  • Wie in 2B gezeigt, hat der Roboter 10 einen Roboterspitzenpunkt 15 und ein mechanisches Schnittstellenkoordinatensystem Σm, das auf den Roboterspitzenpunkt 15 an einem Flansch am distalen Ende der Gelenkachse 11(6) zentriert ist.
  • Die Lagebeziehung zwischen dem mechanischen Schnittstellenkoordinatensystem Σm und dem Sensorkoordinatensystem Σs kann im mechanischen Schnittstellenkoordinatensystem Σm durch die folgenden sechs Elemente definiert werden: einen Vektor (x, y, z) vom Ursprung des mechanischen Schnittstellenkoordinatensystems Σm zum Ursprung des Sensorkoordinatensystems Σs und Drehwinkel (w, p, r), die die Richtung des Sensorkoordinatensystems Σs durch Drehungen um die Achsen des mechanischen Schnittstellenkoordinatensystems Σm definieren. Der Vektor (x, y, z) und die Drehwinkel (w, p, r) können mit einer bekannten Methode bestimmt werden (z.B. Japanische ungeprüfte Patentanmeldung, JP 2017-74647 A ).
  • Somit kann die nachfolgend beschriebene Steuervorrichtung 20 die Position des drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr aus den in einem Roboterbewegungsprogramm beschriebenen Koordinaten und Winkeln berechnen, indem sie den Abstand vom Roboterspitzenpunkt 15 auf der Gelenkachse 11(6) zum Ursprung des Sensorkoordinatensystems Σs anhand des Vektors (x, y, z) und der Drehwinkel (w, p, r) berechnet.
  • Der drahtlose Beschleunigungssensor 101 ist beispielsweise ein dreidimensionaler Beschleunigungssensor, der periodisch die Beschleunigung in jeder der X-, Y- und Z-Achsen des Sensorkoordinatensystems Σs am distalen Ende des beweglichen Elements detektiert, die aus einer Bewegung des Roboters 10 resultiert, wobei eine vorbestimmte Abtastzeit verwendet wird. Der drahtlose Beschleunigungssensor 101 verfügt über eine nicht gezeigte Takteinheit. Jedes Mal, wenn der drahtlose Beschleunigungssensor 101 eine Beschleunigung detektiert, erhält der drahtlose Beschleunigungssensor 101 als Taktzeit der Erfassung eine Taktzeitinformation, die von der Takteinheit ausgegeben wird. Der drahtlose Beschleunigungssensor 101 überträgt beispielsweise drahtlos ein Sensorsignal, das die Taktzeitinformationen und die detektierte Beschleunigung in jeder Achse enthält, an den drahtlosen Empfänger 30.
  • Obwohl der drahtlose Beschleunigungssensor 101 so konfiguriert ist, dass er das Sensorsignal, das die Uhrzeitinformationen und die detektierte Beschleunigung enthält, drahtlos an den drahtlosen Empfänger 30 überträgt, kann der drahtlose Beschleunigungssensor 101 auch mit der Steuervorrichtung 20 verbunden sein und das Sensorsignal auf drahtgebundene Weise an die Steuervorrichtung 20 übertragen.
  • Darüber hinaus ist der drahtlose Beschleunigungssensor 101 nicht auf einen Beschleunigungssensor beschränkt, sondern kann ein beliebiger Sensor sein, z.B. ein Gyroskopsensor, ein Trägheitssensor, ein Kraftsensor, ein Laser-Tracker, ein Vision-Sensor oder ein Bewegungserfassungssensor. Der drahtlose Beschleunigungssensor 101 kann alternativ auch ein intelligentes Gerät sein, wie etwa ein Smartphone, das eine Vielzahl von Sensoren enthält, einschließlich z.B. einem Beschleunigungssensor.
  • Funkempfänger 30
  • Der drahtlose Empfänger 30 ist z.B. ein Wi-Fi-Router (eingetragene Marke). Der drahtlose Empfänger 30 empfängt das Sensorsignal vom drahtlosen Beschleunigungssensor 101 und gibt das empfangene Sensorsignal an die Steuervorrichtung 20 aus.
  • Es ist zu beachten, dass der Kommunikationsstandard für die drahtlose Kommunikation nicht auf Wi-Fi (eingetragene Marke) beschränkt ist und alternativ auch auf Funkwellen wie Bluetooth (eingetragene Marke) oder Infrarotkommunikation basieren kann. Vorzugsweise verwendet der drahtlose Empfänger 30 ein Modul, das dem Kommunikationsstandard entspricht.
  • Steuervorrichtung 20
  • Die Steuervorrichtung 20 (auch als „Robotersteuerung“ bezeichnet) steuert die Bewegungen des Roboters 10, indem sie auf Basis des Bewegungsprogramms Antriebsbefehle an den Roboter 10 ausgibt, um Vibrationen, die in den Armen 12 des sich bewegenden Roboters 10 auftreten, zu reduzieren, indem sie eine Lernsteuerung unter Verwendung der vom drahtlosen Beschleunigungssensor 101 detektierten Beschleunigung durchführt.
  • 3 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration der Steuervorrichtung 20 zeigt.
  • Wie in 3 dargestellt, ist die Steuervorrichtung 20 gemäß der vorliegenden Ausführungsform mit einem Programmierhandgerät 25 verbunden und enthält eine Sensorkoordinatenspeichereinheit 201, eine Sensoreinstellungsspeichereinheit 202, eine Achsenwinkeldetektionseinheit 203, eine Sensorwert-Schätzeinheit 204, eine Sensordatenempfangseinheit 205 und eine Sensorwert-Anomalie-Bestimmungseinheit 206. Das Programmierhandgerät 25 umfasst eine Benutzerbenachrichtigungseinheit 251 und eine Benutzereingabeeinheit 252.
  • Es sollte beachtet werden, dass die Steuervorrichtung 20 einen nicht gezeigten arithmetischen Prozessor, wie z.B. eine Zentraleinheit (CPU), enthält, um den Betrieb der in 3 dargestellten Funktionsblöcke zu implementieren. Die Steuervorrichtung 20 umfasst auch eine nicht gezeigte Hilfsspeichervorrichtung, wie z.B. einen Festwertspeicher (ROM) oder ein Festplattenlaufwerk (HDD), in dem verschiedene Steuerprogramme gespeichert sind, und eine nicht gezeigte Hauptspeichervorrichtung, wie z.B. einen Direktzugriffsspeicher (RAM) zum Speichern von Daten, die vorübergehend für den Rechenprozessor zur Ausführung der Programme benötigt werden.
  • In der Steuervorrichtung 20 liest der arithmetische Prozessor ein Betriebssystem und eine Anwendungssoftware aus der Hilfsspeichervorrichtung und führt eine arithmetische Verarbeitung auf Basis des Betriebssystems und der Anwendungssoftware durch, während er das gelesene Betriebssystem und die Anwendungssoftware in die Hauptspeichervorrichtung einspeist. Basierend auf den Ergebnissen der arithmetischen Verarbeitung steuert die Steuervorrichtung 20 jede einzelne Hardwareeinheit. Auf diese Weise wird die Verarbeitung durch die Funktionsblöcke in 3 realisiert. Das heißt, dass die Steuervorrichtung 20 durch die Kooperation von Hardware und Software implementiert werden kann.
  • Die Sensorkoordinatenspeichereinheit 201 ist z.B. ein Speicher wie RAM und speichert darin Koordinatensysteminformationen, die sich auf das Sensorkoordinatensystem Σs des drahtlosen Beschleunigungssensors 101 beziehen. Das Sensorkoordinatensystem Σs wird auf Basis einer Benutzereingabe über die unten beschriebene Benutzereingabeeinheit 252 des Programmierhandgeräts 25 voreingestellt.
  • Spezifisch speichert die Sensorkoordinatenspeichereinheit 201 als Koordinatensysteminformationen den Vektor (x, y, z) vom Ursprung des mechanischen Schnittstellenkoordinatensystems Σm zum Ursprung des Sensorkoordinatensystems Σs und die Drehwinkel (w, p, r), die die Richtung des Sensorkoordinatensystems Σs durch Drehungen um die Achsen des mechanischen Schnittstellenkoordinatensystems Σm definieren, die zur Berechnung der Position und der Lage des drahtlosen Beschleunigungssensors 101 erforderlich sind.
  • Die Sensoreinstellungsspeichereinheit 202 ist beispielsweise ein Speicher wie R_AM und speichert darin Einstellungsinformationen, die sich auf die Kommunikation mit dem drahtlosen Beschleunigungssensor 101 beziehen, basierend auf einer Benutzereingabe über die unten beschriebene Benutzereingabeeinheit 252 des Programmierhandgeräts 25.
  • Insbesondere speichert die Sensoreinstellungsspeichereinheit 202 als Einstellungsinformation eine Kommunikationsadresse (z.B. IP-Adresse oder MAC-Adresse) des drahtlosen Beschleunigungssensors 101, der ein Kommunikationspartner ist.
  • Die Achsenwinkeldetektionseinheit 203 detektiert beispielsweise einen Winkel jeder der Gelenkachsen 11(1) bis 11(6) mit Hilfe von nicht dargestellten Encodern oder dergleichen, die an den jeweiligen Gelenkachsen 11(1) bis 11(6) des Roboters 10 angeordnet sind.
  • Die Achsenwinkeldetektionseinheit 203 gibt die detektierten Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) an die Sensorwert-Schätzeinheit 204 aus.
  • Die Sensorwert-Schätzeinheit 204 schätzt die vom drahtlosen Beschleunigungssensor 101 zu detektierenden Sensorwerte an der Montageposition des drahtlosen Beschleunigungssensors 101 durch eine Vorwärtstransformation unter Verwendung der von der Achsenwinkeldetektionseinheit 203 detektierten Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) und einer Koordinatentransformation des Sensorkoordinatensystems Σs.
  • Spezifisch berechnet die Sensorwert-Schätzeinheit 204 die Position und die Lage des mechanischen SchnittstellenKoordinatensystems Σm im Roboterkoordinatensystem Σr, indem sie eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) durchführt, die von der Achsenwinkeldetektionseinheit 203 detektiert werden. Die Sensorwert-Schätzeinheit 204 berechnet die Montageposition des drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr unter Verwendung der Koordinatensysteminformationen, die den Vektor (x, y, z) und die Drehwinkel (w, p, r) angeben, die in der Sensorkoordinatenspeichereinheit 201 gespeichert sind. Die Sensorwert-Schätzeinheit 204 berechnet die Beschleunigung in jeder Achse des Roboterkoordinatensystems Σr, indem sie eine zweite Ableitung der Zeitreihendaten der berechneten Position nach der Zeit durchführt, und wandelt die berechnete Beschleunigung in Sensorwerte der Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs über das mechanische Schnittstellen-Koordinatensystem Σm um. Auf diese Weise schätzt die Sensorwert-Schätzeinheit 204 die Sensorwerte. Wenn sich der Roboter 10 in Bewegung befindet, subtrahiert die Sensorwert-Schätzeinheit 204 eine Gravitationsbeschleunigungskomponente von den geschätzten Sensorwerten der Beschleunigung im Sensorkoordinatensystem Σs und gibt die so berechneten Sensorwerte an die Sensorwertanomalie-Bestimmungseinheit 206 aus.
  • Wenn der Roboter 10 stationär ist, kann die Sensorwert-Schätzeinheit 204 die geschätzten Sensorwerte der Beschleunigung im Sensorkoordinatensystem Σs an die Sensorwert-Anomalie-Bestimmungseinheit 206 ausgeben, ohne die Gravitationsbeschleunigung davon abzuziehen.
  • Die Sensordatenempfangseinheit 205 empfängt die vom drahtlosen Beschleunigungssensor 101 detektierten Sensordaten auf Basis der in der Sensoreinstellungsspeichereinheit 202 gespeicherten Einstellinformationen.
  • Spezifisch koppelt sich die Sensordatenempfangseinheit 205 mit dem drahtlosen Beschleunigungssensor 101 auf Basis der Kommunikationsadresse in den Einstellungsinformationen, die in der Sensoreinstellungsspeichereinheit 202 gespeichert sind. Beispielsweise empfängt die Sensordatenempfangseinheit 205 ein Sensorsignal mit einem Header, der die Kommunikationsadresse des drahtlosen Beschleunigungssensors 101 enthält, mit dem sich die Sensordatenempfangseinheit 205 gekoppelt hat, unter den Sensorsignalen, die über den drahtlosen Empfänger 30 empfangen werden. Die Sensordatenempfangseinheit 205 gibt die im empfangenen Sensorsignal enthaltene Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs als Sensordaten an die Sensorwertanomalie-Bestimmungseinheit 206 aus.
  • Es ist zu beachten, dass die Sensordatenempfangseinheit 205 Rauschen mit Hilfe eines Tiefpassfilters (nicht gezeigt) entfernen kann, bevor sie die Sensordaten an die Sensorwert-Anomalie-Bestimmungseinheit 206 ausgibt.
  • Die Sensorwert-Anomalie-Bestimmungseinheit 206 vergleicht in Bezug auf jede Achse des Sensorkoordinatensystems Σs die Werte der von der Sensordaten-Empfangseinheit 205 ausgegebenen Sensordaten mit den von der Sensorwert-Schätzeinheit 204 geschätzten Sensorwerten. Die Sensorwert-Anomalie-Bestimmungseinheit 206 bestimmt, dass die Sensordatenempfangseinheit 205 Sensordaten von einem drahtlosen Beschleunigungssensor 101 empfängt, der an einem anderen Roboter 10 vorgesehen ist, wenn die größte Differenz zwischen den Werten der Sensordaten in Bezug auf jede Achse und den geschätzten Sensorwerten größer ist als ein voreingestellter Schwellenwert (z.B. „2 m/s2“). Die Sensorwert-Anomalie-Bestimmungseinheit 206 gibt das Bestimmungsergebnis an die unten beschriebene Benutzerbenachrichtigungseinheit 251 des Programmierhandgeräts 25 aus.
  • 4A und 4B sind Diagramme, die jeweils ein Beispiel für den Vergleich zwischen Sensordatenwerten und geschätzten Sensorwerten zeigen. 4A zeigt als Beispiel einen Normalfall, bei dem die Differenzen zwischen den Werten der Sensordaten in Bezug auf die X-Achsenrichtung des Sensorkoordinatensystems Σs und den geschätzten Sensorwerten gleich oder kleiner als der Schwellenwert sind, wenn der Roboter in Bewegung ist. 4B zeigt einen anomalen Fall, in dem eine der Differenzen zwischen den Werten der Sensordaten in Bezug auf die X-Achsen-Richtung des Sensorkoordinatensystems Σs und den geschätzten Sensorwerten, wenn der Roboter in Bewegung ist, größer als der Schwellenwert ist.
  • Es sollte beachtet werden, dass die Sensorwert-Anomalie-Bestimmungseinheit 206 nicht darauf beschränkt ist, die Unterschiede zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in Bezug auf jede Achse des Sensorkoordinatensystems Σs zu berechnen und die berechneten Unterschiede mit einem voreingestellten Schwellenwert zu vergleichen. Beispielsweise kann die Sensorwert-Anomalie-Bestimmungseinheit 206 Unterschiede zwischen der Größe eines Vektors, der ein Wert von Sensordaten in Bezug auf jede Achse des Sensorkoordinatensystems Σs ist, und der Größe eines Vektors, der ein geschätzter Sensorwert in Bezug auf jede Achse des Sensorkoordinatensystems Σs ist, berechnen und die berechneten Unterschiede mit einem Schwellenwert vergleichen.
  • Alternativ kann die Sensorwert-Anomalie-Bestimmungseinheit 206 unter Verwendung einer vorbestimmten Funktion, die die Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs als Variable verwendet, Unterschiede zwischen Werten, die durch Eingabe der Werte von Sensordaten in Bezug auf jede Achse des Sensorkoordinatensystems Σs in die vorbestimmte Funktion berechnet werden, und Werten, die durch Eingabe der in Bezug auf jede Achse des Sensorkoordinatensystems Σs geschätzten Sensorwerte in die vorbestimmte Funktion berechnet werden, berechnen und die berechneten Unterschiede mit einem Schwellenwert vergleichen.
  • Basierend auf dem Ergebnis der Bestimmung durch die Sensorwert-Anomalie-Bestimmungseinheit 206 gibt die Benutzerbenachrichtigungseinheit 251 einen Alarm aus, der das Vorliegen einer Anomalie in den Werten der Sensordaten mitteilt.
  • Wenn es eine Anomalie in den Werten der Sensordaten gibt, zeigt die Benutzerbenachrichtigungseinheit 251 eine Warnung an, die den Benutzer über die Anomalie auf einer Anzeigeeinheit, wie z.B. einer Flüssigkristallanzeige, die in dem Programmierhandgerät 25 enthalten ist, informiert.
  • Es sei darauf hingewiesen, dass die Benutzerbenachrichtigungseinheit 251 zusammen mit der Warnmeldung die in der Sensoreinstellungsspeichereinheit 202 gespeicherten Einstellungsinformationen und die Werte der von der Sensordatenempfangseinheit 205 empfangenen Sensordaten ausgeben kann.
  • Diese Konfiguration gestattet dem Benutzer beispielsweise, zu überprüfen, ob die in der Sensoreinstellungsspeichereinheit 202 gespeicherten Einstellungsinformationen falsch sind und ob der drahtlose Beschleunigungssensor 101 eine Fehlfunktion aufweist oder nicht. In einem Fall, in dem die Einstellinformationen falsch sind, kann der Benutzer die korrekten Einstellinformationen über die unten beschriebene Benutzereingabeeinheit 252 des Programmierhandgeräts 25 neu einstellen. In einem Fall, in dem der drahtlose Beschleunigungssensor 101 eine Fehlfunktion aufweist, kann der Benutzer schnell auf die Anomalie in den Sensorwerten reagieren, indem er den drahtlosen Beschleunigungssensor 101 durch einen neuen drahtlosen Beschleunigungssensor 101 ersetzt.
  • Es ist zu beachten, dass die Benutzerbenachrichtigungseinheit 251, die als am Programmierhandgerät 25 vorgesehen beschrieben ist, alternativ auch an der Steuervorrichtung 20 vorgesehen sein kann.
  • Bei der Benutzereingabeeinheit 252 handelt es sich beispielsweise um Bedientasten oder ein Touchpanel auf dem Programmierhandgerät 25. Sie empfängt vom Benutzer Eingaben wie die Einstellungen des Sensorkoordinatensystems Σs und die Kommunikationsadresse des drahtlosen Beschleunigungssensors 101. Die Benutzereingabeeinheit 252 gibt die empfangenen Eingaben an die Steuervorrichtung 20 aus.
  • Es ist zu beachten, dass die Benutzereingabeeinheit 252, die als am Programmierhandgerät 25 vorgesehen beschrieben ist, alternativ auch an der Steuervorrichtung 20 vorgesehen sein kann.
  • Anomalie-Ermittlungsverarbeitung in der Steuervorrichtung 20
  • Im Folgenden wird der Ablauf der Anomalieerkennung in der Steuervorrichtung 20 bezugnehmend auf 5 beschrieben.
  • 5 ist ein Flussdiagramm zur Beschreibung der Verarbeitung der Anomaliebestimmung in der Steuervorrichtung 20. Der hier dargestellte Ablauf wird jedes Mal ausgeführt, wenn der Benutzer die Einstellungen des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 konfiguriert.
  • In Schritt S1 setzt die Benutzereingabeeinheit 252 gemäß einer Benutzereingabeoperation als Koordinatensysteminformation einen Vektor (x, y, z) vom Ursprung des mechanischen Schnittstellenkoordinatensystems Σm zum Ursprung des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 und Drehwinkel (w, p, r), die die Richtung des Sensorkoordinatensystems Σs durch Drehungen um die Achsen des Koordinatensystems Σm der mechanischen Schnittstelle definieren, und speichert die Koordinatensysteminformationen in der Sensorkoordinatenspeichereinheit 201. Die Benutzereingabeeinheit 252 stellt auch die Kommunikationsadresse des drahtlosen Beschleunigungssensors 101 als Einstellungsinformation in Übereinstimmung mit einer Benutzereingabe ein und speichert die Einstellungsinformation in der Sensoreinstellungsspeichereinheit 202.
  • In Schritt S2 beginnt der drahtlose Beschleunigungssensor 101 zu Beginn der Lernkontrolle mit der Messung der Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs, und die Sensordatenempfangseinheit 205 empfängt ein Sensorsignal, das die gemessene Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs über den drahtlosen Empfänger 30 enthält, und erhält so die empfangene Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs als Sensordaten.
  • In Schritt S3 schätzt die Sensorwert-Schätzeinheit 204 die Sensorwerte in Bezug auf jede Achse des Sensorkoordinatensystems Σs an der Montageposition des drahtlosen Beschleunigungssensors 101, indem sie eine Vorwärtstransformation durchführt, um die Lage des Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, bevor der Roboter 10 sich zu bewegen beginnt (wenn der Roboter 10 stationär ist), und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • Vorzugsweise schätzt die Sensorwert-Schätzeinheit 204 in Schritt S3 die Sensorwerte (Gravitationsbeschleunigung), bevor der Roboter 10 in Bewegung gesetzt wird (wenn der Roboter 10 stillsteht), unabhängig davon, ob das Bewegungsprogramm ausgeführt wird oder nicht.
  • In Schritt S4 bestimmt die Sensorwertanomalie-Bestimmungseinheit 206, ob die Differenzen zwischen den in Schritt S2 erhaltenen Werten der Sensordaten und den in Schritt S3 geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind oder nicht. Wenn die Unterschiede zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S6 fortgesetzt. Wenn eine der Differenzen zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs nicht gleich dem Schwellenwert oder kleiner als dieser ist, wird die Verarbeitung mit Schritt S5 fortgesetzt.
  • In Schritt S5 gibt die Sensorwert-Anomalie-Bestimmungseinheit 206 das Ergebnis der Sensordaten-Anomalie-Bestimmung an die Benutzer-Benachrichtigungseinheit 251 aus, und die Benutzer-Benachrichtigungseinheit 251 zeigt eine Warnung auf der Anzeigeeinheit (nicht gezeigt) des Programmierhandgeräts 25 an. Die Verarbeitung kehrt dann zu Schritt S1 zurück.
  • In Schritt S6 schätzt die Sensorwert-Schätzeinheit 204 Sensorwerte in Bezug auf jede Achse des Sensorkoordinatensystems Σs an der Montageposition des drahtlosen Beschleunigungssensors 101, indem sie eine Vorwärtstransformation durchführt, um die Position und die Lage des Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, wenn der Roboter 10 in Bewegung ist, und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • Bei der Bewegung des Roboters 10 kann es sich um eine tatsächliche Arbeitsbewegung oder um eine vorher festgelegte spezifische Bewegung handeln, z.B. eine Translationsbewegung in Bezug auf die X- oder Y-Achse des Roboterkoordinatensystems Σr.
  • In Schritt S7 bestimmt die Sensorwert-Anomalie-Bestimmungseinheit 206, ob die Unterschiede zwischen den Werten der von der Sensordatenempfangseinheit 205 erhaltenen Sensordaten und den in Schritt S6 geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind, oder nicht. Wenn die Unterschiede zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S8 fortgesetzt. Wenn eine der Differenzen zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs nicht gleich dem Schwellenwert oder kleiner als dieser ist, wird die Verarbeitung mit Schritt S5 fortgesetzt.
  • In Schritt S8, wenn es keine Anomalie in den Sensorwerten gibt, bestimmt die Steuervorrichtung 20 (Sensorwert-Anomalie-Bestimmungseinheit 206), dass die Werte der Sensordaten normal sind, und fährt mit der Steuerung des Roboters 10 unter Verwendung des Bewegungsprogramms auf Basis der Lernsteuerung fort.
  • Wie oben beschrieben, kann die Steuervorrichtung 20 gemäß der ersten Ausführungsform verhindern, dass der Roboter mit einer Verbindung zu einem falschen drahtlosen Beschleunigungssensor 101 arbeitet, indem die Einstellung der Kommunikationsadresse des drahtlosen Beschleunigungssensors 101 geändert wird.
  • Die Steuervorrichtung 20 erkennt eine Anomalie in den Sensordaten durch den Vergleich zwischen den Werten der Sensordaten und den geschätzten Sensorwerten, bevor sich der Roboter 10 in Bewegung setzt und während der Roboter 10 in Bewegung ist, und benachrichtigt den Benutzer über eine Warnung, die die erkannte Anomalie anzeigt. Diese Konfiguration trägt dazu bei, den zusätzlichen Arbeitsaufwand zu verringern, der erforderlich ist, um zu verhindern, dass die Steuervorrichtung 20 mit der Steuerung des Roboters 10 bei falscher Einstellung des drahtlosen Beschleunigungssensors 101 fortfährt, und trägt dazu bei, eine unerwartete Steuerung des Roboters 10 (z.B. eine Bewegung, die eine Ausbreitung von Vibrationen verursacht) aufgrund einer falschen Einstellung des drahtlosen Beschleunigungssensors 101 zu verhindern.
  • Die erste Ausführungsform wurde bereits oben beschrieben.
  • Zweite Ausführungsform
  • Als nächstes wird eine zweite Ausführungsform beschrieben. In der ersten Ausführungsform schätzt die Steuervorrichtung 20 Sensorwerte in Bezug auf jede Achse des Sensorkoordinatensystems Σs an der Position des drahtlosen Beschleunigungssensors 101, indem sie eine Vorwärtstransformation durchführt, um die Position und die Lage des Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) des Roboters 10 zu berechnen, und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt. Die Steuervorrichtung 20 stellt dann fest, ob die Differenzen zwischen den Werten der vom drahtlosen Beschleunigungssensor 101 detektierten Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind, und meldet dem Benutzer eine Anomalie in den Sensordaten (Verbindung zu einem inkorrekten drahtlosen Beschleunigungssensor 101). Im Gegensatz dazu schätzt in der zweiten Ausführungsform eine Steuervorrichtung 20A als physikalische Größe einen Bewegungsvektor, der eine Bewegungsdistanz und eine Bewegungsrichtung eines drahtlosen Beschleunigungssensors 101 in einem Roboterkoordinatensystem Σr enthält, indem sie eine Vorwärtstransformation durchführt, um die Position und die Lage eines Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) des Roboters 10 zu berechnen, und eine Koordinatentransformation eines Sensorkoordinatensystems Σs durchführt. Die Steuervorrichtung 20A berechnet außerdem als physikalische Größe einen Bewegungsvektor einschließlich einer Bewegungsdistanz und einer Bewegungsrichtung des drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr aus Sensordaten, die von einer Sensordatenempfangseinheit empfangen werden. Die Steuervorrichtung 20A bestimmt dann, ob alle Komponenten der Differenzen zwischen dem aus den Sensordaten als physikalische Größe berechneten Bewegungsvektor und dem als physikalische Größe geschätzten Bewegungsvektor gleich oder kleiner als ein Schwellenwert sind oder nicht. Die zweite Ausführungsform unterscheidet sich von der ersten Ausführungsform in den oben erwähnten Punkten.
  • Diese Konfiguration ermöglichet der Steuervorrichtung 20A gemäß der zweiten Ausführungsform, zu verhindern, dass der Roboter mit einer falschen Sensorverbindung arbeitet.
  • Im Folgenden wird die zweite Ausführungsform beschrieben.
  • 6 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems gemäß der zweiten Ausführungsform zeigt. Es ist zu beachten, dass Elemente, die dieselben Funktionen wie die entsprechenden Elemente des Robotersystems 1 in 1 haben, mit denselben Bezugsziffern bezeichnet sind, und eine detaillierte Beschreibung solcher Elemente wird weggelassen.
  • Wie in 6 dargestellt, umfasst ein Robotersystem 1A n Roboter 10(1) bis 10(n), n Steuervorrichtungen 20A(1) bis 20A(n) und einen drahtlosen Empfänger 30.
  • Nachfolgend können die Steuervorrichtungen 20A(1) bis 20A(n) auch gemeinsam als „Steuervorrichtung 20A“ bezeichnet werden, sofern die Steuervorrichtungen 20A(1) bis 20A(n) nicht voneinander unterschieden werden müssen.
  • Die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 haben die gleichen Konfigurationen wie die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 der ersten Ausführungsform.
  • Steuervorrichtung 20A
  • 7 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration der Steuervorrichtung 20A zeigt.
  • Wie in 7 illustriert, ist die Steuervorrichtung 20A mit einem Programmierhandgerät 25 verbunden und umfasst eine Sensorkoordinatenspeichereinheit 201, eine Sensoreinstellungsspeichereinheit 202, eine Achsenwinkeldetektionseinheit 203, eine Sensordatenempfangseinheit 205, eine Sensorwert-Anomalie-Bestimmungseinheit 206a, eine Sensorphysikgrößen-Schätzeinheit 207 und eine Sensorphysikgrößen-Berechnungseinheit 208. Das Programmierhandgerät 25 umfasst eine Benutzerbenachrichtigungseinheit 251 und eine Benutzereingabeeinheit 252.
  • Die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202, die Achsenwinkeldetektionseinheit 203 und die Sensordatenempfangseinheit 205 haben jeweils die gleichen Funktionen wie die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202, die Achsenwinkeldetektionseinheit 203 und die Sensordatenempfangseinheit 205 der ersten Ausführungsform.
  • Außerdem haben die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 die gleichen Funktionen wie die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 der ersten Ausführungsform.
  • Die Sensorphysikgrößen-Schätzeinheit 207 schätzt eine physikalische Größe, die sich auf den drahtlosen Beschleunigungssensor 101 bezieht, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6), die von der Achsenwinkeldetektionseinheit 203 detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems Σs ab.
  • Konkret berechnet die Sensorphysikgrößen-Schätzeinheit 207 beispielsweise die Position und die Lage des Koordinatensystems Σm der mechanischen Schnittstelle im Roboterkoordinatensystem Σr, indem sie eine Vorwärtstransformation unter Verwendung der von der Achsenwinkeldetektionseinheit 203 detektierten Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) durchführt. Die Sensorphysikgrößen-Schätzeinheit 207 verwendet den Vektor (x, y, z) und die Drehwinkel (w, p, r), die in der Sensorkoordinatenspeichereinheit 201 gespeichert sind, um als physikalische Größe den Bewegungsvektor einschließlich der Bewegungsstrecke und der Bewegungsrichtung der Montageposition des drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr zu schätzen.
  • Die Sensorphysikgrößen-Berechnungseinheit 208 berechnet eine physikalische Größe aus den Sensordaten der vom drahtlosen Beschleunigungssensor 101 detektierten Beschleunigung.
  • Spezifisch berechnet die Sensorphysikgrößen-Berechnungseinheit 208 den Bewegungsvektor des drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr als physikalische Größe, indem sie eine zweite Integration der Zeitreihendaten, d.h. der von der Sensordatenempfangseinheit 205 empfangenen Sensordaten der Beschleunigung, in Bezug auf die Zeit durchführt.
  • Die Sensorwert-Anomalie-Bestimmungseinheit 206a vergleicht den Bewegungsvektor, der als physikalische Größe von der Sensorphysikgrößen-Berechnungseinheit 208 berechnet wurde, mit dem Bewegungsvektor, der als physikalische Größe von der Sensorphysikgrößen-Schätzeinheit 207 geschätzt wurde. Die Sensorwert-Anomalie-Bestimmungseinheit 206a bestimmt, dass die Sensordatenempfangseinheit 205 Sensordaten von einem drahtlosen Beschleunigungssensor 101 empfängt, der an einem anderen Roboter 10 vorgesehen ist, wenn die größte Differenzkomponente unter den X-, Y- und Z-Komponenten der Differenzen zwischen dem berechneten Bewegungsvektor und dem geschätzten Bewegungsvektor größer ist als ein voreingestellter Schwellenwert (z.B. „1 mm“). Die Sensorwert-Anomalie-Bestimmungseinheit 206a gibt dann das Bestimmungsergebnis an die Benutzerbenachrichtigungseinheit 251 des Programmierhandgeräts 25 aus.
  • Es sollte angemerkt werden, dass die Sensorwert-Anomalie-Bestimmungseinheit 206a zum Beispiel die Differenz zwischen der Größe des Bewegungsvektors, der von der Sensorphysikgrößen-Berechnungseinheit 208 berechnet wurde, und der Größe des Bewegungsvektors, der von der Sensorphysikgrößen-Schätzeinheit 207 geschätzt wurde, berechnen und die berechnete Differenz mit einem Schwellenwert vergleichen kann.
  • Anomaliebestimmungsverarbeitung in der Steuervorrichtung 20A
  • Im Folgenden wird der Ablauf der Anomaliebestimmungsverarbeitung in der Steuervorrichtung 20A anhand von 8 beschrieben.
  • 8 ist ein Flussdiagramm zur Beschreibung Anomaliebestimmungsverarbeitung in der Steuervorrichtung 20A. Der hier dargestellte Ablauf wird jedes Mal ausgeführt, wenn ein Benutzer die Einstellungen des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 konfiguriert.
  • Es sollte beachtet werden, dass die Prozesse in den Schritten S1, S2 und S8 in der in 8 gezeigten Anomaliebestimmungsverarbeitung die gleichen sind wie die in den Schritten S1, S2 und S8 der in 5 gezeigten ersten Ausführungsform, und eine Beschreibung derselben entfällt.
  • In Schritt S3a schätzt die Sensorphysikgrößen-Schätzeinheit 207 den Bewegungsvektor der Montageposition des drahtlosen Beschleunigungssensors 101 als physikalische Größe, indem sie eine Vorwärtstransformation durchführt, um die Pose des Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, bevor der Roboter 10 mit der Bewegung beginnt (wenn der Roboter 10 stationär ist), und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • In Schritt S4a bestimmt die Sensorwert-Anomalie-Bestimmungseinheit 206a, ob alle Differenzkomponenten der Differenzen zwischen dem Bewegungsvektor der Position des drahtlosen Beschleunigungssensors 101, der von der Sensorphysikgrößen-Berechnungseinheit 208 unter Verwendung der in Schritt S2 erhaltenen Sensordaten als physikalische Größe berechnet wird, und der in Schritt S3a geschätzten physikalischen Größe gleich oder kleiner als der Schwellenwert sind. Wenn alle Differenzkomponenten gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S6a fortgesetzt. Wenn nicht alle Differenzkomponenten gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S5a fortgesetzt.
  • In Schritt S5a gibt die Sensorwert-Anomalie-Bestimmungseinheit 206a das Ergebnis der Bestimmung der Anomalie der physikalischen Größe an die Benutzerbenachrichtigungseinheit 251 aus, und die Benutzerbenachrichtigungseinheit 251 zeigt eine Warnung auf einer Anzeigeeinheit (nicht gezeigt) des Programmierhandgeräts 25 an. Die Verarbeitung kehrt dann zu Schritt S1 zurück.
  • In Schritt S6a schätzt die Sensorphysikgrößen-Schätzeinheit 207 den Bewegungsvektor der Montageposition des drahtlosen Beschleunigungssensors 101 als physikalische Größe, indem sie eine Vorwärtstransformation durchführt, um die Position und die Haltung des Roboters 10 unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, wenn der Roboter 10 in Bewegung ist, und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • In Schritt S7a bestimmt die Sensorwert-Anomalie-Bestimmungseinheit 206a, ob alle Differenzkomponenten der Differenzen zwischen dem von der Sensorphysikgrößen-Berechnungseinheit 208 als physikalische Größe berechneten Bewegungsvektor und dem in Schritt S6a als physikalische Größe geschätzten Bewegungsvektor gleich oder kleiner als der Schwellenwert sind oder nicht. Falls alle Differenzkomponenten gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S8 fortgesetzt. Falls nicht alle Differenzkomponenten gleich oder kleiner als der Schwellenwert sind, wird die Verarbeitung mit Schritt S5a fortgesetzt.
  • Wie oben beschrieben, kann die Steuervorrichtung 20A gemäß der zweiten Ausführungsform verhindern, dass der Roboter 10 mit einer Verbindung zu einem falschen drahtlosen Beschleunigungssensor 101 arbeitet, indem die Einstellung der Kommunikationsadresse des drahtlosen Beschleunigungssensors 101 geändert wird.
  • Die Steuervorrichtung 20A erkennt eine Anomalie in den Sensordaten durch den Vergleich zwischen der aus den Sensordaten berechneten physikalischen Größe und der geschätzten physikalischen Größe, bevor sich der Roboter 10 in Bewegung setzt und während der Roboter 10 in Bewegung ist, und benachrichtigt den Benutzer über einen Alarm, der die erkannte Anomalie anzeigt. Diese Konfiguration trägt dazu bei, den zusätzlichen Arbeitsaufwand zu verringern, der erforderlich ist, um zu verhindern, dass die Steuervorrichtung 20A mit der Steuerung des Roboters 10 bei einer falschen Einstellung des drahtlosen Beschleunigungssensors 101 fortfährt, und hilft, eine unerwartete Steuerung des Roboters 10 (z.B. eine Bewegung, die eine Ausbreitung von Vibrationen verursacht) aufgrund der falschen Einstellung des drahtlosen Beschleunigungssensors 101 zu verhindern.
  • Die zweite Ausführungsform wurde oben beschrieben.
  • Dritte Ausführungsform
  • Als nächstes wird eine dritte Ausführungsform beschrieben. Es ist zu beachten, dass sich eine Steuervorrichtung 20B gemäß der dritten Ausführungsform in den folgenden Punkten von derjenigen gemäß der ersten Ausführungsform unterscheidet.
    1. (1) Die Steuervorrichtung 20B gemäß der dritten Ausführungsform empfängt Sensordaten, die von drahtlosen Beschleunigungssensoren 101 detektiert werden, die jeweils an einer Vielzahl von Robotern 10 einschließlich des zu steuernden Roboters 10 vorgesehen sind.
    2. (2) Die Steuervorrichtung 20B gemäß der dritten Ausführungsform vergleicht für jeden der drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10 die Werte der Sensordaten von dem drahtlosen Beschleunigungssensor 101 mit Sensorwerten an der Position des drahtlosen Beschleunigungssensors 101, die durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen des zu steuernden Roboters 10 und einer Koordinatentransformation eines Sensorkoordinatensystems geschätzt wurden. Die Steuervorrichtung 20B stellt dann fest, dass der Sensor an einem anderen Roboter 10 als dem zu steuernden Roboter 10 vorgesehen ist, wenn eine der Differenzen zwischen den Werten der Sensordaten und den geschätzten Werten größer als ein voreingestellter Schwellenwert ist.
  • Durch diese Konfiguration ermöglicht der Steuervorrichtung 20B gemäß der dritten Ausführungsform, zu verhindern, dass der Roboter mit einer falschen Sensorverbindung arbeitet.
  • Im Folgenden wird die dritte Ausführungsform beschrieben.
  • 9 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems gemäß der dritten Ausführungsform zeigt. Es ist anzumerken, dass Elemente, die dieselben Funktionen wie die entsprechenden Elemente des Robotersystems 1 in 1 haben, mit denselben Bezugsziffern bezeichnet sind, und eine detaillierte Beschreibung solcher Elemente entfällt.
  • Wie in 9 dargestellt, enthält ein Robotersystem 1B n Roboter 10(1) bis 10(n), n Steuervorrichtungen 20B(1) bis 20B(n) und einen drahtlosen Empfänger 30.
  • Im Folgenden können die Steuervorrichtungen 20B(1) bis 20B(n) auch gemeinsam als „Steuervorrichtung 20B“ bezeichnet werden, sofern die Steuervorrichtungen 20B(1) bis 20B(n) nicht voneinander unterschieden werden müssen.
  • Die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 haben die gleichen Konfigurationen wie die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 der ersten Ausführungsform.
  • Steuervorrichtung 20B
  • 10 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration der Steuervorrichtung 20B(1) zeigt. Während 10 ein Beispiel für die funktionelle Konfiguration der Steuervorrichtung 20B(1) zeigt, haben die Steuervorrichtungen 20B(2) bis 20B(n) die gleiche funktionelle Konfiguration wie die Steuervorrichtung 20B(1).
  • Wie in 10 dargestellt, ist die Steuervorrichtung 20B(1) mit einem Programmierhandgerät 25 verbunden und umfasst eine Sensorkoordinatenspeichereinheit 201, eine Sensoreinstellungsspeichereinheit 202, eine Achsenwinkeldetektionseinheit 203, eine Sensorwert-Schätzeinheit 204, eine Sensordatenempfangseinheit 205b und eine geeignete Sensorbestimmungseinheit 209. Das Programmierhandgerät 25 umfasst eine Benutzerbenachrichtigungseinheit 251 und eine Benutzereingabeeinheit 252.
  • Die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202, die Achsenwinkeldetektionseinheit 203 und die Sensorwert-Schätzeinheit 204 haben jeweils die gleichen Funktionen wie die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202, die Achsenwinkeldetektionseinheit 203 und die Sensorwert-Schätzeinheit 204 der ersten Ausführungsform.
  • Außerdem haben die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 die gleichen Funktionen wie die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 der ersten Ausführungsform.
  • Die Sensordatenempfangseinheit 205b empfängt Sensorsignale, die die von den drahtlosen Beschleunigungssensoren 101 an den Robotern 10(2) bis 10(n) detektierte Beschleunigung enthalten, sowie ein Sensorsignal, das die von dem drahtlosen Beschleunigungssensor 101 an dem zu steuernden Roboter 10(1) detektierte Beschleunigung enthält. Das heißt, dass die drahtlosen Beschleunigungssensoren 101 an den jeweiligen Robotern 10 beispielsweise Sensorsignale per Multicast übertragen können. In diesem Fall muss die Sensordatenempfangseinheit 205b nicht auf die Einstellinformationen in der Sensoreinstellungsspeichereinheit 202 zurückgreifen.
  • Die Sensordatenempfangseinheit 205b gibt als Sensordaten die in den aus den drahtlosen Beschleunigungssensoren 101 empfangenen Sensorsignalen enthaltene Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs an die geeignete Sensorbestimmungseinheit 209 aus. Es ist anzumerken, dass die Sensordatenempfangseinheit 205b Rauschen mit einem Tiefpassfilter (nicht gezeigt) entfernen kann, bevor sie die von den drahtlosen Beschleunigungssensoren 101 empfangenen Sensordaten an die geeignete Sensorbestimmungseinheit 209 ausgibt.
  • Die geeignete Sensorbestimmungseinheit 209 vergleicht in Bezug auf jede Achse des Sensorkoordinatensystems Σs die Werte der von den drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10(1) bis 10(n) empfangenen und von der Sensordatenempfangseinheit 205 ausgegebenen Sensordaten mit den von der Sensorwert-Schätzeinheit 204 geschätzten Sensorwerten. Die geeignete Sensorbestimmungseinheit 209 ermittelt für jeden der drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10(1) bis 10(n) die größte Differenz zwischen den Differenzen in Bezug auf jede Achse zwischen den Werten der Sensordaten von dem drahtlosen Beschleunigungssensor 101 und den geschätzten Sensorwerten und bestimmt, dass der drahtlose Beschleunigungssensor 101 ein ungeeigneter Sensor ist, der an einem anderen Roboter 10 als dem zu steuernden Roboter 10(1) vorgesehen ist, wenn die größte Differenz auf Basis der Sensordaten größer als ein voreingestellter Schwellenwert (z.B. „2 m/s2“) ist.
  • Andererseits bestimmt die geeignete Sensorbestimmungseinheit 209, dass der drahtlose Beschleunigungssensor 101 ein geeigneter Sensor ist, der an dem zu steuernden Roboter 10(1) vorgesehen ist, wenn die größte Differenz auf Basis der Sensordaten gleich oder kleiner als der voreingestellte Schwellenwert (z.B. „2 m/s2") ist. Die geeignete Sensorbestimmungseinheit 209 gibt das Bestimmungsergebnis an die Benutzerbenachrichtigungseinheit 251 des Programmierhandgeräts 25 aus. In diesem Fall kann die Benutzereingabeeinheit 252 die Kommunikationsadresse des entsprechenden drahtlosen Beschleunigungssensors 101 als Einstellungsinformation einstellen und diese Einstellungsinformation in der Sensoreinstellungsspeichereinheit 202 in Übereinstimmung mit einer Benutzereingabeoperation basierend auf dem auf der Benutzerbenachrichtigungseinheit 251 angezeigten Ergebnis speichern.
  • 11 ist ein Diagramm, das ein Vergleichsbeispiel zwischen Sensordatenwerten und geschätzten Sensorwerten zeigt. 11 zeigt als Beispiel die Werte der Sensordaten in Bezug auf die X-Achsenrichtung des Sensorkoordinatensystems Σs, die von den drahtlosen Beschleunigungssensoren 101 an den jeweiligen Robotern 10(1) bis 10(3) detektiert wurden, als die Roboter in Bewegung waren, und die geschätzten Sensorwerte.
  • Es sollte beachtet werden, dass die geeignete Sensorbestimmungseinheit 209 nicht darauf beschränkt ist, die Unterschiede zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in Bezug auf jede Achse des Sensorkoordinatensystems Σs zu berechnen und die berechneten Unterschiede mit einem voreingestellten Schwellenwert zu vergleichen. Beispielsweise kann die geeignete Sensorbestimmungseinheit 209 Unterschiede zwischen der Größe eines Vektors, der ein Wert von Sensordaten in Bezug auf jede Achse des Sensorkoordinatensystems Σs ist, und der Größe eines Vektors, der ein geschätzter Sensorwert in Bezug auf jede Achse des Sensorkoordinatensystems Σs ist, berechnen und die berechneten Unterschiede mit einem Schwellenwert vergleichen.
  • Alternativ kann die geeignete Sensorbestimmungseinheit 209 unter Verwendung einer vorgegebenen Funktion, die die Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs als eine Variable verwendet, Differenzen zwischen Werten, die durch Eingabe der Werte von Sensordaten jeder Achse des Sensorkoordinatensystems Σs in die vorgegebene Funktion berechnet werden, und Werten, die durch Eingabe der in Bezug auf jede Achse des Sensorkoordinatensystems Σs geschätzten Sensorwerte in die vorgegebene Funktion berechnet werden, berechnen und die berechneten Differenzen mit einem Schwellenwert vergleichen.
  • Geeignete Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B
  • Im Folgenden wird ein Ablauf einer geeigneten Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B unter Bezugnahme auf 12 beschrieben. Während sich die folgende Beschreibung auf die geeignete Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B(1) bezieht, führen die Steuervorrichtungen 20B(2) bis 20B(n) die gleiche Verarbeitung wie die Steuervorrichtung 20B(1) durch, so dass deren Beschreibung weggelassen wird.
  • 12 ist ein Flussdiagramm zur Beschreibung der entsprechenden Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B. Der hier dargestellte Ablauf wird jedes Mal ausgeführt, wenn ein Benutzer die Einstellungen des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 konfiguriert.
  • In Schritt S11 setzt die Benutzereingabeeinheit 252 in Übereinstimmung mit einer Benutzereingabeoperation als Koordinatensysteminformation einen Vektor (x, y, z) vom Ursprung des mechanischen Schnittstellenkoordinatensystems Σm zum Ursprung des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 und Drehwinkel (w, p, r), die die Richtung des Sensorkoordinatensystems Σs durch Drehungen um die Achsen des mechanischen Schnittstellenkoordinatensystems Σm definieren, und speichert die Koordinatensysteminformationen in der Sensorkoordinatenspeichereinheit 201.
  • In Schritt S12 beginnt jeder der drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10(1) bis 10(n) mit der Messung der Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs zu Beginn der Lernsteuerung, und die Sensordatenempfangseinheit 205b empfängt über den drahtlosen Empfänger 30, ein Sensorsignal, das die Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs enthält, die von jedem der drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10, einschließlich des zu steuernden Roboters 10(1), gemessen wird, und erhält so die Beschleunigung in jeder Achse des Sensorkoordinatensystems Σs, die in jedem der empfangenen Sensorsignale als Sensordaten enthalten ist.
  • In Schritt S13, wie in Schritt S3 in der ersten Ausführungsform, schätzt die Sensorwert-Schätzeinheit 204 Sensorwerte in Bezug auf jede Achse des Sensorkoordinatensystems Σs an der Montageposition des drahtlosen Beschleunigungssensors 101, indem sie eine Vorwärtstransformation durchführt, um die Lage des Roboters 10(1) unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, bevor der Roboter 10(1) beginnt, sich zu bewegen (wenn der Roboter 10 stationär ist), und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • Vorzugsweise schätzt die Sensorwert-Schätzeinheit 204 in Schritt S13 die Sensorwerte (Gravitationsbeschleunigung), bevor der Roboter 10(1) sich in Bewegung setzt (wenn der Roboter 10 stillsteht), unabhängig davon, ob das Bewegungsprogramm ausgeführt wird oder nicht.
  • In Schritt S14 bestimmt die geeignete Sensorbestimmungseinheit 209, ob es unter den drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10 einen geeigneten drahtlosen Beschleunigungssensor 101 gibt, bei dem die Unterschiede zwischen den in Schritt S12 erhaltenen Werten der Sensordaten und den in Schritt S13 geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind. Wenn ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S16 fortgesetzt. Wenn kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S15 fortgesetzt.
  • In Schritt S15 gibt die geeignete Sensorbestimmungseinheit 209 das Ergebnis der Bestimmung, dass kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, an die Benutzerbenachrichtigungseinheit 251 aus, und die Benutzerbenachrichtigungseinheit 251 zeigt eine Warnmeldung auf einer Anzeigeeinheit (nicht dargestellt) des Programmierhandgeräts 25 an. Die Verarbeitung kehrt dann zu Schritt S11 zurück.
  • In Schritt S16 schätzt die Sensorwert-Schätzeinheit 204 Sensorwerte in Bezug auf jede Achse des Sensorkoordinatensystems Σs an der Montageposition des drahtlosen Beschleunigungssensors 101, indem sie eine Vorwärtstransformation durchführt, um die Position und die Lage des Roboters 10(1) unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, wenn sich der Roboter 10 in Bewegung befindet, und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • Die Bewegung des Roboters 10(1) kann eine tatsächliche Arbeitsbewegung oder eine vorher festgelegte spezifische Bewegung sein, z.B. eine Translationsbewegung in Bezug auf die X- oder Y-Achse des Roboterkoordinatensystems Σr.
  • In Schritt S17 bestimmt die geeignete Sensorbestimmungseinheit 209, ob es unter den drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10 einschließlich des zu steuernden Roboters 10(1) einen geeigneten drahtlosen Beschleunigungssensor 101 gibt oder nicht, bei dem die Differenzen zwischen den Werten der von der Sensordatenempfangseinheit 205b erhaltenen Sensordaten und den in Schritt S16 geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind. Wenn ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S18 fortgesetzt. Wenn kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S15 fortgesetzt.
  • In Schritt S18 stellt die Benutzereingabeeinheit 252 in Übereinstimmung mit einer Benutzereingabeoperation die Kommunikationsadresse des entsprechenden drahtlosen Beschleunigungssensors 101 als Einstellungsinformation ein, speichert die Einstellungsinformation in der Sensoreinstellungsspeichereinheit 202 und stellt eine Kopplung mit dem entsprechenden drahtlosen Beschleunigungssensor 101 her. Die Steuervorrichtung 20B(1) fährt dann mit der Steuerung des Roboters 10 unter Verwendung des Bewegungsprogramms basierend auf der Lernsteuerung fort.
  • Wie oben beschrieben, kann die Steuervorrichtung 20B gemäß der dritten Ausführungsform verhindern, dass der Roboter mit einer Verbindung zu einem falschen drahtlosen Beschleunigungssensor 101 betrieben wird, und die Verbindungseinstellungen nach Wunsch wechseln, indem eine Kopplung mit einem geeigneten drahtlosen Beschleunigungssensor 101 hergestellt wird, unter den an den jeweiligen Robotern 10 vorgesehenen drahtlosen Beschleunigungssensoren 101, bei denen Unterschiede zwischen den Werten der Sensordaten und den geschätzten Sensorwerten in allen Achsen des Sensorkoordinatensystems Σs gleich oder kleiner als der Schwellenwert sind, d.h. durch Herstellen einer Kopplung mit dem an dem zu steuernden Roboter 10 vorgesehenen drahtlosen Beschleunigungssensor 101.
  • Die Steuervorrichtung 20B bestimmt, ob ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist oder nicht, indem sie einen Vergleich zwischen den Werten der Sensordaten und den geschätzten Sensorwerten für jeden der drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorhanden sind, durchführt, bevor sich der Roboter 10 in Bewegung setzt und während der Roboter 10 in Bewegung ist, und benachrichtigt den Benutzer mit einem Alarm, wenn kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist. Diese Konfiguration trägt dazu bei, den zusätzlichen Arbeitsaufwand zu verringern, der erforderlich ist, um zu verhindern, dass die Steuervorrichtung 20B mit der Steuerung des Roboters 10 mit der Einstellung eines ungeeigneten drahtlosen Beschleunigungssensors 101 fortfährt, und trägt dazu bei, eine unerwartete Steuerung des Roboters 10 (z.B. eine Bewegung, die eine Ausbreitung von Vibrationen verursacht) aufgrund der falschen Einstellung des drahtlosen Beschleunigungssensors 101 zu verhindern.
  • Die dritte Ausführungsform wurde oben beschrieben.
  • Vierte Ausführungsform
  • Als nächstes wird eine vierte Ausführungsform beschrieben. Es ist zu beachten, dass sich eine Steuervorrichtung 20B gemäß der vierten Ausführungsform in den folgenden Punkten von derjenigen gemäß der ersten Ausführungsform unterscheidet.
    1. (1) Die Steuervorrichtung 20B gemäß der vierten Ausführungsform empfängt Sensordaten, die von drahtlosen Beschleunigungssensoren 101 detektiert werden, die jeweils an einer Vielzahl von Robotern 10 einschließlich des zu steuernden Roboters 10 vorgesehen sind.
    2. (2) Die Steuervorrichtung 20B gemäß der vierten Ausführungsform vergleicht für jeden der drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10 eine aus den Sensordaten des drahtlosen Beschleunigungssensors 101 berechnete physikalische Größe mit einer physikalischen Größe, die durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen des zu steuernden Roboters 10 und einer Koordinatentransformation des Sensorkoordinatensystems geschätzt wird. Die Steuervorrichtung 20B stellt dann fest, dass der Sensor an einem anderen Roboter 10 als dem zu steuernden Roboter 10 vorgesehen ist, falls eine der Differenzen zwischen der aus den Sensordaten berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
  • Durch diese Konfiguration kann die Steuervorrichtung 20B gemäß der vierten Ausführungsform verhindern, dass der Roboter mit einer falschen Sensorverbindung arbeitet.
  • Im Folgenden wird die vierte Ausführungsform beschrieben.
  • Ein Robotersystem gemäß der vierten Ausführungsform ist im wesentlichen dasselbe wie das Robotersystem 1B in 9. Elemente, die dieselben Funktionen wie die entsprechenden Elemente des Robotersystems 1B haben, sind mit denselben Bezugsziffern bezeichnet, und eine detaillierte Beschreibung solcher Elemente wird weggelassen.
  • Die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 haben die gleichen Konfigurationen wie die Roboter 10, die drahtlosen Beschleunigungssensoren 101 und der drahtlose Empfänger 30 der dritten Ausführungsform.
  • Steuervorrichtung 20B
  • 13 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration der Steuervorrichtung 20B(1) zeigt. Während 13 ein Beispiel für die funktionelle Konfiguration der Steuervorrichtung 20B(1) zeigt, haben die Steuervorrichtungen 20B(2) bis 20B(n) die gleiche funktionelle Konfiguration wie die Steuervorrichtung 20B(1).
  • Wie in 13 illustriert, ist die Steuervorrichtung 20B(1) mit einem Programmierhandgerät 25 verbunden und umfasst eine Sensorkoordinatenspeichereinheit 201, eine Sensoreinstellungsspeichereinheit 202, eine Achsenwinkeldetektionseinheit 203, eine Sensordatenempfangseinheit 205b, eine Sensorphysikgrößen-Schätzeinheit 207, eine Sensorphysikgrößen-Berechnungseinheit 208b und eine geeignete Sensorbestimmungseinheit 209b. Das Programmierhandgerät 25 umfasst eine Benutzerbenachrichtigungseinheit 251 und eine Benutzereingabeeinheit 252.
  • Die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202 und die Achsenwinkeldetektionseinheit 203 haben jeweils die gleichen Funktionen wie die Sensorkoordinatenspeichereinheit 201, die Sensoreinstellungsspeichereinheit 202 und die Achsenwinkeldetektionseinheit 203 der ersten Ausführungsform.
  • Die Sensorphysikgrößen-Schätzeinheit 207 hat die gleiche Funktion wie die Sensorphysikgrößen-Schätzeinheit 207 der zweiten Ausführungsform.
  • Die Sensordatenempfangseinheit 205b hat die gleiche Funktion wie die Sensordatenempfangseinheit 205b der dritten Ausführungsform.
  • Außerdem haben die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 die gleichen Funktionen wie die Benutzerbenachrichtigungseinheit 251 und die Benutzereingabeeinheit 252 der ersten Ausführungsform.
  • Die Sensorphysikgrößen-Berechnungseinheit 208b berechnet eine physikalische Größe aus den Sensordaten der Beschleunigung, die von jedem der drahtlosen Beschleunigungssensoren 101 an den jeweiligen Robotern 10 einschließlich des zu steuernden Roboters 10(1) detektiert werden.
  • Insbesondere berechnet die Sensorphysikgrößen-Berechnungseinheit 208b als physikalische Größe einen Bewegungsvektor jedes drahtlosen Beschleunigungssensors 101 im Roboterkoordinatensystem Σr, indem sie eine zweite Integration der Zeitreihendaten des drahtlosen Beschleunigungssensors 101, d.h. der von der Sensordatenempfangseinheit 205b empfangenen Sensordaten der Beschleunigung, in Bezug auf die Zeit durchführt.
  • Die geeignete Sensorbestimmungseinheit 209b vergleicht den Bewegungsvektor jedes drahtlosen Beschleunigungssensors 101, der als physikalische Größe von der Sensorphysikgrößen-Berechnungseinheit 208b berechnet wurde, mit einem Bewegungsvektor, der als physikalische Größe von der Sensorphysikgrößen-Schätzeinheit 207 geschätzt wurde. Die geeignete Sensorbestimmungseinheit 209b bestimmt für jeden der drahtlosen Beschleunigungssensoren 101, dass der drahtlose Beschleunigungssensor 101 ein ungeeigneter Sensor ist, der an einem anderen Roboter 10 als dem zu steuernden Roboter 10(1) vorgesehen ist, wenn die größte Differenzkomponente unter den X-, Y- und Z-Komponenten der Differenzen zwischen dem aus den Sensordaten berechneten Bewegungsvektor und dem geschätzten Bewegungsvektor größer ist als ein voreingestellter Schwellenwert (z.B. „1 mm“).
  • Andererseits bestimmt die geeignete Sensorbestimmungseinheit 209b, dass der drahtlose Beschleunigungssensor 101 ein geeigneter Sensor ist, der an dem zu steuernden Roboter 10(1) vorgesehen ist, wenn die größte Differenzkomponente basierend auf den Sensordaten gleich oder kleiner als der voreingestellte Schwellenwert (z.B. „1 mm“) ist. Die geeignete Sensorbestimmungseinheit 209b gibt das Bestimmungsergebnis an die Benutzerbenachrichtigungseinheit 251 des Programmierhandgeräts 25 aus. In diesem Fall kann die Benutzereingabeeinheit 252 die Kommunikationsadresse des entsprechenden drahtlosen Beschleunigungssensors 101 als Einstellungsinformation einstellen und diese Einstellungsinformation in der Sensoreinstellungsspeichereinheit 202 in Übereinstimmung mit einer Benutzereingabeoperation basierend auf dem auf der Benutzerbenachrichtigungseinheit 251 angezeigten Ergebnis speichern.
  • Geeignete Sensor-Bestimmungsverarbeitung in der Steuervorrichtung 20B
  • Im Folgenden wird der Ablauf der geeigneten Sensor-Bestimmungsverarbeitung in der Steuervorrichtung 20B anhand von 14 beschrieben. Während sich die folgende Beschreibung auf die geeignete Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B(1) bezieht, führen die Steuervorrichtungen 20B(2) bis 20B(n) die gleiche Verarbeitung wie die Steuervorrichtung 20B(1) durch, so dass deren Beschreibung weggelassen wird.
  • 14 ist ein Flussdiagramm zur Beschreibung der entsprechenden Sensorbestimmungs-Verarbeitung in der Steuervorrichtung 20B. Der hier dargestellte Ablauf wird jedes Mal ausgeführt, wenn ein Benutzer die Einstellungen des Sensorkoordinatensystems Σs des drahtlosen Beschleunigungssensors 101 konfiguriert.
  • Es sollte beachtet werden, dass die Vorgänge in den Schritten S11, S12, S15 und S18 in der in 14 gezeigten entsprechenden Sensorbestimmungs-Verarbeitung die gleichen sind wie die in den Schritten S11, S12, S15 und S18 der in 12 gezeigten dritten Ausführungsform, und eine Beschreibung derselben entfällt.
  • In Schritt S13a schätzt die Sensorphysikgrößen-Schätzeinheit 207 den Bewegungsvektor der Montageposition des drahtlosen Beschleunigungssensors 101 als physikalische Größe, indem sie eine Vorwärtstransformation durchführt, um die Pose des Roboters 10(1) unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, bevor der Roboter 10(1) sich zu bewegen beginnt (wenn der Roboter 10(1) stationär ist), und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • In Schritt S14a bestimmt die geeignete Sensorbestimmungseinheit 209b, ob es unter den drahtlosen Beschleunigungssensoren 101 der jeweiligen Roboter 10 einschließlich des zu steuernden Roboters 10(1) einen geeigneten Beschleunigungssensor 101 gibt oder nicht, bei dem alle Differenzkomponenten der Differenzen zwischen dem Bewegungsvektor der Position des drahtlosen Beschleunigungssensors 101, der von der Sensorphysikgrößen-Berechnungseinheit 208b unter Verwendung der in Schritt S12 erhaltenen Sensordaten als physikalische Größe berechnet wird, und der in Schritt S13a geschätzten physikalischen Größe gleich oder kleiner als der Schwellenwert sind. Wenn ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S16a fortgesetzt. Wenn kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S15 fortgesetzt.
  • In Schritt S16a schätzt die Sensorphysikgrößen-Schätzeinheit 207 den Bewegungsvektor der Montageposition des drahtlosen Beschleunigungssensors 101 als physikalische Größe ab, indem sie eine Vorwärtstransformation durchführt, um die Position und die Lage des Roboters 10(1) unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6) zu berechnen, die von der Achsenwinkeldetektionseinheit 203 detektiert werden, wenn der Roboter 10(1) in Bewegung ist, und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • In Schritt S17a bestimmt die geeignete Sensorbestimmungseinheit 209b, ob es einen geeigneten drahtlosen Beschleunigungssensor 101 gibt, bei dem alle Differenzkomponenten der Differenzen zwischen dem Bewegungsvektor, der als physikalische Größe auf einer Basis pro drahtlosem Beschleunigungssensor 101 durch die Sensorphysikgrößen-Berechnungseinheit 208b berechnet wurde, und dem Bewegungsvektor, der als physikalische Größe in Schritt S16a geschätzt wurde, gleich oder kleiner als der Schwellenwert sind. Wenn ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist, wird die Verarbeitung mit Schritt S18 fortgesetzt. Wenn es keinen geeigneten drahtlosen Beschleunigungssensor 101 gibt, wird die Verarbeitung mit Schritt S15 fortgesetzt.
  • Wie oben beschrieben, kann die Steuervorrichtung 20B gemäß der vierten Ausführungsform verhindern, dass der Roboter 10 mit einer Verbindung zu einem falschen drahtlosen Beschleunigungssensor 101 betrieben wird, und die Verbindungseinstellungen wie gewünscht umschalten, indem eine Kopplung mit einem geeigneten drahtlosen Beschleunigungssensor 101 unter den an den jeweiligen Robotern 10 vorgesehenen drahtlosen Beschleunigungssensoren 101 hergestellt wird, bei der alle Differenzkomponenten der Differenzen zwischen der anhand der Sensordaten berechneten physikalischen Größe und der geschätzten physikalischen Größe gleich oder kleiner als der Schwellenwert sind, d. h. indem eine Kopplung mit dem an dem zu steuernden Roboter 10 vorgesehenen drahtlosen Beschleunigungssensor 101 hergestellt wird.
  • Die Steuervorrichtung 20B stellt fest, ob ein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist oder nicht, indem sie die physikalische Größe, die unter Verwendung der Sensordaten von jedem der drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorgesehen sind, berechnet wird, mit der geschätzten physikalischen Größe vergleicht, bevor sich der Roboter 10 in Bewegung setzt und während der Roboter 10 in Bewegung ist, und benachrichtigt den Benutzer über eine Warnmeldung, wenn kein geeigneter drahtloser Beschleunigungssensor 101 vorhanden ist. Diese Konfiguration trägt dazu bei, den zusätzlichen Arbeitsaufwand zu verringern, der erforderlich ist, um zu verhindern, dass die Steuervorrichtung 20B mit der Steuerung des Roboters 10 mit der Einstellung eines ungeeigneten drahtlosen Beschleunigungssensors 101 fortfährt, und trägt dazu bei, eine unerwartete Steuerung des Roboters 10 (z.B. eine Bewegung, die eine Ausbreitung von Vibrationen verursacht) aufgrund der falschen Einstellung des drahtlosen Beschleunigungssensors 101 zu verhindern.
  • Die vierte Ausführungsform wurde bereits oben beschrieben.
  • Die ersten bis vierten Ausführungsformen wurden oben beschrieben. Die Steuervorrichtung 20 (20A, 20B) ist nicht auf die oben beschriebenen Ausführungsformen beschränkt und umfasst Änderungen wie Modifikationen und Verbesserungen in dem Maße, dass das Ziel der vorliegenden Erfindung erreicht wird.
  • Modifikationsbeispiel 1
  • In den oben beschriebenen ersten bis vierten Ausführungsformen ist der Sensor der drahtlose Beschleunigungssensor 101. Der Sensor ist jedoch nicht als solcher beschränkt. So kann beispielsweise ein Gyroskopsensor als Sensor am Roboter 10 vorgesehen sein. In diesem Fall detektiert der Gyroskopsensor die Winkelgeschwindigkeit der Sensorwerte. Die Steuervorrichtung 20 berechnet die Position und die Lage des Koordinatensystems Σm der mechanischen Schnittstelle im Roboterkoordinatensystem Σr durch eine Vorwärtstransformation unter Verwendung der detektierten Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6). Dann kann die Steuervorrichtung 20 aus der Änderung der Pose des Roboters 10 Sensorwerte der Winkelgeschwindigkeit schätzen oder aus der Änderung der Pose des Roboters 10 als physikalische Größe eine Bewegungsstrecke und eine Bewegungsrichtung (Bewegungsvektor) der Position des Gyroskopsensors schätzen.
  • Alternativ kann ein Trägheitssensor als Sensor am Roboter 10 vorgesehen werden. Im Falle des Trägheitssensors kann die Steuervorrichtung 20 auf die gleiche Weise arbeiten wie im Falle des oben beschriebenen drahtlosen Beschleunigungssensors 101 und des Gyroskopsensors.
  • Alternativ kann auch ein Kraftsensor als Sensor am Roboter 10 vorgesehen sein. In diesem Fall kann die Steuervorrichtung 20 beispielsweise eine Simulation durchführen, um aus internen Daten des Roboters einen Kraftvektor zu schätzen, der die Größe und die Richtung der vom Kraftsensor zu detektierenden Kraft als eine andere physikalische Größe als den Bewegungsvektor enthält.
  • Alternativ kann auch ein Laser Tracker als Sensor am Roboter 10 angebracht werden. In diesem Fall kann der Lasertracker die Bewegungsbahnen direkt messen. Dementsprechend kann die Steuervorrichtung 20 einen Bewegungspfad (Position) durch eine Vorwärtstransformation schätzen, indem sie die Winkel der jeweiligen Achsen in den internen Daten des Roboters verwendet und eine Koordinatentransformation des Sensorkoordinatensystems Σs durchführt.
  • Anstelle des Laser-Trackers kann der Roboter 10 auch mit einem Bewegungserfassungssensor ausgestattet werden. In diesem Fall kann die Steuervorrichtung 20 auf die gleiche Weise arbeiten wie im Falle des Laser Trackers.
  • Alternativ kann auch ein Vision-Sensor als Sensor am Roboter 10 vorgesehen werden. Im Falle einer Bewegung eines am Roboter 10 angebrachten Werkzeugs, das sich beispielsweise auf einer Ebene bewegt, nimmt der am Werkzeug angebrachte Vision-Sensor kontinuierlich Bilder der Ebene auf, und die Steuervorrichtung 20 kann eine Bewegungsdistanz als physikalische Größe aus den Unterschieden zwischen den aufgenommenen Bildern berechnen. Die Steuervorrichtung 20 kann die Bewegungsdistanz auch aus internen Daten des Roboters schätzen.
  • Alternativ kann der Roboter 10 auch mit einer Kombination aus zwei oder mehr Sensoren ausgestattet werden, z.B. mit einer Kombination aus dem drahtlosen Beschleunigungssensor 101 und dem oben beschriebenen Gyroskopsensor. Alternativ kann ein intelligentes Gerät, wie z.B. ein Smartphone, das einen oder mehrere Sensoren, wie z.B. den drahtlosen Beschleunigungssensor 101 und den Gyroskopsensor, enthält, als Sensor am Roboter 10 angebracht werden.
  • Modifikationsbeispiel 2
  • Als weiteres Beispiel kommunizieren in den Robotersystemen 1 und 1A gemäß der ersten und zweiten Ausführungsform die drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorgesehen sind, und die entsprechende Steuervorrichtung 20 oder 20A über den drahtlosen Empfänger 30 miteinander. Die Robotersysteme 1 und 1A sind jedoch nicht als solche beschränkt. Wie in 15 gezeigt, kann beispielsweise jeder der drahtlosen Beschleunigungssensoren 101 im Robotersystem 1 und die entsprechende Steuervorrichtung 20 oder 20A miteinander kommunizieren, indem sie einen der drahtlosen Empfänger 31(1) bis 31(n) verwenden, die in einszu-eins-Entsprechung mit den Robotern 10 vorgesehen sind und die jeweils nur Sensorsignale von einem mit dem drahtlosen Empfänger gepaarten drahtlosen Beschleunigungssensor 101 empfangen.
  • 15 ist ein funktionelles Blockdiagramm, das ein Beispiel für eine funktionelle Konfiguration eines Robotersystems zeigt. Es ist zu beachten, dass Elemente, die dieselben Funktionen wie die entsprechenden Elemente des Robotersystems 1 in 1 haben, mit denselben Bezugszeichen bezeichnet sind, und eine detaillierte Beschreibung solcher Elemente wird weggelassen.
  • Wie in 15 gezeigt, ist der drahtlose Beschleunigungssensor 101, der an einem Roboter 10(i) vorgesehen ist, mit dem drahtlosen Empfänger 31(i) gekoppelt und bildet ein Paar (i ist von 1 bis n). Das heißt, in einer Situation, in der der drahtlose Beschleunigungssensor 101 des Roboters 10(i) zu einem anderen Roboter 10 (j) verlagert wird, muss die Steuervorrichtung 20 (j) zu einer Verbindung mit dem drahtlosen Empfänger 31(i) wechseln (j ≠ i und j = 1 bis n).
  • Mit anderen Worten, da die Kopplung jedes drahtlosen Beschleunigungssensors 101 und eines drahtlosen Empfängers 31 auf individueller Basis erfolgt, muss der Benutzer keine Einstellungen für den drahtlosen Beschleunigungssensor 101 konfigurieren, d.h. die Sensoreinstellungsspeichereinheit 202 ist nicht erforderlich, und die Steuervorrichtung 20 oder 20A kann problemlos zwischen Paaren von Robotern 10 und drahtlosen Beschleunigungssensoren 101 wechseln, indem sie einfach die Verbindungen mit drahtlosen Empfängern 31 ändert.
  • Es sollte beachtet werden, dass jede der Funktionen, die in den Steuervorrichtungen 20, 20A und 20B gemäß der ersten bis vierten Ausführungsform enthalten sind, durch Hardware, Software oder eine Kombination davon implementiert werden kann. Durch Software implementiert zu sein bedeutet hier, durch einen Computer implementiert zu sein, der ein Programm liest und ausführt.
  • Die Programme können dem Computer zugeführt werden, indem sie auf verschiedenen Arten von nicht-transitorischen, computerlesbaren Medien gespeichert werden. Zu den nicht-transitorischen computerlesbaren Medien gehören verschiedene Arten von materiellen Speichermedien. Beispiele für nichttransitorische computerlesbare Medien sind magnetische Speichermedien (wie flexible Platten, Magnetbänder und Festplattenlaufwerke), magneto-optische Speichermedien (wie magneto-optische Platten), Compact-Disc-Festwertspeicher (CD-ROM), Compact-Disc-Recordable (CD-R), Compact-Disc-Rewritable (CD-R/W) und Halbleiterspeicher (wie Masken-ROM, programmierbares ROM (PROM), löschbares PROM (EPROM), Flash-ROM und R_AM). Alternativ können die Programme dem Computer über verschiedene Arten von transitorischen, computerlesbaren Medien zugeführt werden. Beispiele für transitorische computerlesbare Medien sind elektrische Signale, optische Signale und elektromagnetische Wellen. Solche transitorischen computerlesbaren Medien können die Programme über einen drahtlosen Kommunikationskanal oder einen verdrahteten Kommunikationskanal wie elektrische Leitungen oder optische Fasern an den Computer übertragen.
  • Es ist zu beachten, dass das Schreiben der auf einem Speichermedium aufzuzeichnenden Programme Vorgänge umfasst, die nicht unbedingt chronologisch ablaufen und parallel oder einzeln durchgeführt werden können, sowie Vorgänge, die der Reihenfolge nach chronologisch durchgeführt werden.
  • Um das Vorstehende in andere Worte zu fassen, kann die Steuervorrichtung gemäß der vorliegenden Offenbarung verschiedene Ausführungsformen mit den folgenden Konfigurationen annehmen.
  • (1) Eine Steuervorrichtung 20 gemäß der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters 10, der mit einem drahtlosen Beschleunigungssensor 101 versehen ist, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit 201, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem Σs des drahtlosen Beschleunigungssensors 101 beziehen; eine Sensoreinstellungsspeichereinheit 202, die so konfiguriert ist, dass sie Einstellungsinformationen speichert, die sich auf die Kommunikation mit dem drahtlosen Beschleunigungssensor 101 beziehen; eine Sensordatenempfangseinheit 205, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem drahtlosen Beschleunigungssensor 101 auf Basis der Einstellungsinformationen detektiert werden; eine Achsenwinkeldetektionseinheit 203, die so konfiguriert ist, dass sie einen Winkel jeder einer Mehrzahl von Gelenkachsen 11(1) bis 11(6) detektiert, die in dem Roboter 10 enthalten sind; eine Sensorwert-Schätzeinheit 204, die so konfiguriert ist, dass sie Sensorwerte, die von dem drahtlosen Beschleunigungssensor 101 detektiert werden sollen, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6), die von der Achsenwinkeldetektionseinheit 203 detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems Σs abschätzt; und eine Sensorwert-Anomalie-Bestimmungseinheit 206, die so konfiguriert ist, dass sie Werte der Sensordaten mit den von der Sensorwert-Schätzeinheit 204 geschätzten Sensorwerten vergleicht und bestimmt, dass die Sensordatenempfangseinheit 205 Sensordaten von einem drahtlosen Beschleunigungssensor 101 empfängt, der an einem anderen Roboter 10 vorgesehen ist, falls eine Differenz zwischen den Werten der Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
  • Diese Steuervorrichtung 20 kann verhindern, dass der Roboter 10 mit einer Verbindung zu einem falschen drahtlosen Beschleunigungssensor 101 arbeitet.
  • (2) Eine Steuervorrichtung 20A gemäß der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters 10, der mit einem drahtlosen Beschleunigungssensor 101 versehen ist, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit 201, die so konfiguriert ist, dass sie Koordinatensysteminformationen in Bezug auf ein voreingestelltes Sensorkoordinatensystem Σs des drahtlosen Beschleunigungssensors 101 speichert; eine Sensoreinstellungsspeichereinheit 202, die so konfiguriert ist, dass sie Einstellinformationen in Bezug auf die Kommunikation mit dem drahtlosen Beschleunigungssensor 101 speichert; eine Sensordatenempfangseinheit 205, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem drahtlosen Beschleunigungssensor 101 auf Basis der Einstellungsinformationen detektiert werden; eine Sensorphysikgrößen-Berechnungseinheit 208, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten berechnet; eine Achsenwinkeldetektionseinheit 203, die so konfiguriert ist, dass sie einen Winkel jeder einer Vielzahl von Gelenkachsen 11(1) bis 11(6), die in dem Roboter enthalten sind, detektiert; eine Sensorphysikgrößen-Schätzeinheit 207, die so konfiguriert ist, dass sie eine physikalische Größe in Bezug auf den drahtlosen Beschleunigungssensor 101 durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6), die von der Achsenwinkeldetektionseinheit 203 detektiert wurden, und einer Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Sensorwert-Anomalie-Bestimmungseinheit 206a, die so konfiguriert ist, dass sie die aus den Sensordaten berechnete physikalische Größe mit der von der Sensorphysikgrößen-Schätzeinheit 207 geschätzten physikalischen Größe vergleicht und bestimmt, dass die Sensordatenempfangseinheit 205 Sensordaten von einem Sensor empfängt, der an einem anderen Roboter vorgesehen ist, falls eine Differenz zwischen der berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
  • Diese Steuervorrichtung 20A kann die gleichen Wirkungen erzielen wie die in (1) beschriebene Steuervorrichtung.
  • (3) Die in (1) oder (2) beschriebene Steuervorrichtung 20 oder 20A kann ferner eine Benutzerbenachrichtigungseinheit 251 enthalten, die so konfiguriert ist, dass sie eine Warnung ausgibt, falls die Sensorwert-Anomalie-Bestimmungseinheit 206 oder 206a feststellt, dass die Sensordatenempfangseinheit 205 Sensordaten von einem drahtlosen Beschleunigungssensor 101 empfängt, der an einem anderen Roboter 10 vorgesehen ist.
  • Diese Konfiguration ermöglicht es der Steuervorrichtung 20 oder 20A, einen Benutzer über eine Verbindung mit einem falschen drahtlosen Beschleunigungssensor 101 zu informieren.
  • (4) In der in (3) beschriebenen Steuervorrichtung 20 oder 20A kann die Benutzerbenachrichtigungseinheit 251 zusammen mit dem Alarm die in der Sensoreinstellungsspeichereinheit 202 gespeicherten Einstellungsinformationen und die Werte der von der Sensordatenempfangseinheit 205 empfangenen Sensordaten ausgeben.
  • Diese Konfiguration kann dem Benutzer beispielsweise gestatten, zu überprüfen, ob die in der Sensoreinstellungsspeichereinheit 202 gespeicherten Einstellungsinformationen falsch sind oder nicht, und ob der drahtlose Beschleunigungssensor 101 eine Fehlfunktion aufweist oder nicht.
  • (5) In der in einem der Punkte (1) bis (4) beschriebenen Steuervorrichtung 20 oder 20A kann der Roboter mit zwei oder mehr Sensoren ausgestattet sein, die jeweils unterschiedliche physikalische Größen messen.
  • Diese Konfiguration ermöglicht es dem Kontrollgerät 20 oder 20A, eine Anomalie in den Sensordaten mit größerer Genauigkeit zu erkennen.
  • (6) In der in einem der Punkte (1) bis (4) beschriebenen Steuervorrichtung 20 oder 20A kann der Roboter 10 mit einem intelligenten Gerät als Sensor ausgestattet sein, das einen oder mehrere Sensoren enthält.
  • Mit dieser Konfiguration kann die Steuervorrichtung 20 oder 20A die gleichen Wirkungen erzielen wie die in (5) beschriebene Steuervorrichtung.
  • (7) Eine Steuervorrichtung 20B gemäß der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters 10 aus einer Vielzahl von Robotern 10, die jeweils mit einem drahtlosen Beschleunigungssensor 101 versehen sind, wobei die Steuervorrichtung beinhaltet: eine Sensorkoordinatenspeichereinheit 201, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem Σs des drahtlosen Beschleunigungssensors 101 beziehen, der an dem zu steuernden Roboter 10 vorgesehen ist; eine Sensordatenempfangseinheit 205b, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der drahtlosen Beschleunigungssensoren 101 detektiert werden, die an den jeweiligen Robotern 10 einschließlich des zu steuernden Roboters 10 vorgesehen sind; eine Achsenwinkeldetektionseinheit 203, die so konfiguriert ist, dass sie einen Winkel jeder der Gelenkachsen 11(1) bis 11(6) detektiert, die in dem zu steuernden Roboter 10 enthalten sind; eine Sensorwert-Schätzeinheit 204, die so konfiguriert ist, dass sie Sensorwerte, die von dem drahtlosen Beschleunigungssensor 101 des zu steuernden Roboters 10 detektiert werden sollen, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6), die von der Achsenwinkeldetektionseinheit 203 detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems Σs schätzt; und eine geeignete Sensorbestimmungseinheit 209, die konfiguriert ist, um für jeden der drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorgesehen sind, Werte der Sensordaten von dem drahtlosen Beschleunigungssensor 101 mit den Sensorwerten zu vergleichen, die von der Sensorwert-Schätzeinheit 204 geschätzt werden, und zu bestimmen, dass der drahtlose Beschleunigungssensor 101 an einem anderen Roboter 10 als dem zu steuernden Roboter 10 vorgesehen ist, wenn eine Differenz zwischen den Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
  • Diese Steuervorrichtung 20B kann die gleichen Wirkungen haben wie die in (1) beschriebene Steuervorrichtung.
  • (8) Eine Steuervorrichtung 20B gemäß der vorliegenden Offenbarung ist eine Steuervorrichtung zum Steuern eines Roboters 10 aus einer Vielzahl von Robotern 10, die jeweils mit einem drahtlosen Beschleunigungssensor 101 versehen sind, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit 201, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem Σs des drahtlosen Beschleunigungssensors 101 beziehen, der an dem zu steuernden Roboter 10 vorgesehen ist; eine Sensordatenempfangseinheit 205b, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der drahtlosen Beschleunigungssensoren 101 detektiert werden, die an den jeweiligen Robotern 10 einschließlich des zu steuernden Roboters 10 vorgesehen sind; eine Sensorphysikgrößen-Berechnungseinheit 208b, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten von jedem der drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorgesehen sind, berechnet; eine Achsenwinkeldetektionseinheit 203, die so konfiguriert ist, dass sie einen Winkel von jeder der Gelenkachsen 11(1) bis 11(6), die in dem zu steuernden Roboter 10 enthalten sind, detektiert; eine Sensorphysikgrößen-Schätzeinheit 207, die so konfiguriert ist, dass sie eine physikalische Größe schätzt, die sich auf den drahtlosen Beschleunigungssensor 101 des zu steuernden Roboters 10 bezieht, und zwar durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Gelenkachsen 11(1) bis 11(6), die von der Achsenwinkeldetektionseinheit 203 detektiert wurden, und einer Koordinatentransformation des Sensorkoordinatensystems Σs; und eine geeignete Sensorbestimmungseinheit 209b, die so konfiguriert ist, dass sie für jeden der drahtlosen Beschleunigungssensoren 101, die an den jeweiligen Robotern 10 vorgesehen sind, die physikalische Größe, die aus den Sensordaten von dem drahtlosen Beschleunigungssensor 101 berechnet wird, mit der physikalischen Größe vergleicht, die von der Sensorphysikgrößen-Schätzeinheit 207 geschätzt wird, und bestimmt, dass der drahtlose Beschleunigungssensor 101 an einem anderen Roboter 10 als dem zu steuernden Roboter 10 vorgesehen ist, wenn eine Differenz zwischen der physikalischen Größe, die aus den Sensordaten berechnet wird, und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
  • Diese Steuervorrichtung 20B kann die gleichen Wirkungen haben wie die in (1) beschriebene Steuervorrichtung.
  • ERLÄUTERUNG DER BEZUGSZEICHEN
  • 1, 1A, 1B
    Robotersystem
    10(1) bis 10(n)
    Roboter
    20, 20A, 20B
    Steuervorrichtung
    201
    Sensorkoordinatenspeichereinheit
    202
    Sensoreinstellungsspeichereinheit
    203
    Achsenwinkeldetektionseinheit
    204
    Sensorwert-Schätzeinheit
    205, 205b
    Sensordatenempfangseinheit
    206, 206a
    Sensorwert-Anomalie-Bestimmungseinheit
    207
    Sensorphysikgrößen-Schätzeinheit
    208, 208b
    Sensorphysikgrößen-Berechnungseinheit
    209, 209b
    geeignete Sensorbestimmungseinheit
    30, 31(1) bis 31(n)
    Drahtloser Empfänger
    101
    Drahtloser Beschleunigungssensor
  • 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 2011167817 A [0004]
    • JP 2011161562 A [0004]
    • JP 201774647 A [0018]

Claims (8)

  1. Steuervorrichtung zur Steuerung eines mit einem Sensor versehenen Roboters, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen in Bezug auf ein voreingestelltes Sensorkoordinatensystem des Sensors speichert; eine Sensoreinstellungsspeichereinheit, die so konfiguriert ist, dass sie Einstellinformationen in Bezug auf die Kommunikation mit dem Sensor speichert; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem Sensor detektiert werden, auf Basis der Einstellungsinformationen; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel von jeder einer Vielzahl von Achsen, die in dem Roboter enthalten sind, detektiert; eine Sensorwert-Schätzeinheit, die so konfiguriert ist, dass sie Sensorwerte, die von dem Sensor zu detektieren sind, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Sensorwert-Anomalie-Bestimmungseinheit, die so konfiguriert ist, dass sie Werte der Sensordaten mit den von der Sensorwert-Schätzeinheit geschätzten Sensorwerten vergleicht und bestimmt, dass die Sensordaten-Empfangseinheit Sensordaten von einem Sensor empfängt, der an einem anderen Roboter vorgesehen ist, falls eine Differenz zwischen den Werten der Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
  2. Steuervorrichtung zur Steuerung eines mit einem Sensor versehenen Roboters, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen in Bezug auf ein voreingestelltes Sensorkoordinatensystem des Sensors speichert; eine Sensoreinstellungsspeichereinheit, die so konfiguriert ist, dass sie Einstellinformationen in Bezug auf die Kommunikation mit dem Sensor speichert; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von dem Sensor detektiert werden, auf Basis der Einstellungsinformationen; eine Sensorphysikgrößen-Berechnungseinheit, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten berechnet; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel von jeder einer Vielzahl von Achsen, die in dem Roboter enthalten sind, detektiert; eine Sensorphysikgrößen-Schätzeinheit, die so konfiguriert ist, dass sie eine physikalische Größe, die sich auf den Sensor bezieht, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine Sensorwert-Anomalie-Bestimmungseinheit, die so konfiguriert ist, dass sie die aus den Sensordaten berechnete physikalische Größe mit der von der Sensorphysikgrößen-Schätzeinheit geschätzten physikalischen Größe vergleicht und feststellt, dass die Sensordatenempfangseinheit Sensordaten von einem Sensor empfängt, der an einem anderen Roboter vorgesehen ist, falls eine Differenz zwischen der berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein vorgegebener Schwellenwert ist.
  3. Steuervorrichtung gemäß Anspruch 1 oder 2, ferner umfassend eine Benutzerbenachrichtigungseinheit, die so konfiguriert ist, dass sie einen Alarm ausgibt, wenn die Sensorwert-Anomalie-Bestimmungseinheit feststellt, dass die Sensordaten-Empfangseinheit Sensordaten von einem an einem anderen Roboter vorgesehenen Sensor empfängt.
  4. Steuervorrichtung gemäß Anspruch 3, wobei die Benutzerbenachrichtigungseinheit zusammen mit dem Alarm die in der Sensoreinstellungsspeichereinheit gespeicherten Einstellinformationen und die Werte der von der Sensordatenempfangseinheit empfangenen Sensordaten ausgibt.
  5. Steuervorrichtung gemäß einem der Ansprüche 1 bis 4, wobei der Roboter mit zwei oder mehr Sensoren ausgestattet ist, die jeweils unterschiedliche physikalische Größen messen.
  6. Steuervorrichtung gemäß einem der Ansprüche 1 bis 4, wobei der Roboter mit einem intelligenten Gerät als dem Sensor ausgestattet ist, das einen oder mehrere Sensoren enthält.
  7. Steuervorrichtung zur Steuerung eines Roboters aus einer Vielzahl von Robotern, die jeweils mit einem Sensor ausgestattet sind, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des an dem zu steuernden Roboter vorgesehenen Sensors beziehen; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der Sensoren detektiert werden, die an den jeweiligen Robotern, einschließlich des zu steuernden Roboters, vorgesehen sind; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel von jeder einer Vielzahl von Achsen, die in dem zu steuernden Roboter enthalten sind, detektiert; eine Sensorwert-Schätzeinheit, die so konfiguriert ist, dass sie Sensorwerte, die von dem Sensor des zu steuernden Roboters detektiert werden sollen, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems schätzt; und eine geeignete Sensorbestimmungseinheit, die so konfiguriert ist, dass sie für jeden der an den jeweiligen Robotern vorgesehenen Sensoren Werte der Sensordaten von dem Sensor mit den von der Sensorwertschätzungseinheit geschätzten Sensorwerten vergleicht und bestimmt, dass der Sensor an einem anderen Roboter als dem zu steuernden Roboter vorgesehen ist, falls eine Differenz zwischen den Sensordaten und den geschätzten Sensorwerten größer als ein voreingestellter Schwellenwert ist.
  8. Steuervorrichtung zur Steuerung eines Roboters aus einer Vielzahl von Robotern, die jeweils mit einem Sensor ausgestattet sind, wobei die Steuervorrichtung umfasst: eine Sensorkoordinatenspeichereinheit, die so konfiguriert ist, dass sie Koordinatensysteminformationen speichert, die sich auf ein voreingestelltes Sensorkoordinatensystem des an dem zu steuernden Roboter vorgesehenen Sensors beziehen; eine Sensordatenempfangseinheit, die so konfiguriert ist, dass sie Sensordaten empfängt, die von jedem der Sensoren detektiert werden, die an den jeweiligen Robotern, einschließlich des zu steuernden Roboters, vorgesehen sind; eine Sensorphysikgrößen-Berechnungseinheit, die so konfiguriert ist, dass sie eine physikalische Größe aus den Sensordaten von jedem der an den jeweiligen Robotern vorgesehenen Sensoren berechnet; eine Achsenwinkeldetektionseinheit, die so konfiguriert ist, dass sie einen Winkel von jeder einer Vielzahl von Achsen, die in dem zu steuernden Roboter enthalten sind, detektiert; eine Sensorphysikgrößen-Schätzeinheit, die so konfiguriert ist, dass sie eine physikalische Größe, die sich auf den Sensor des zu steuernden Roboters bezieht, durch eine Vorwärtstransformation unter Verwendung der Winkel der jeweiligen Achsen, die von der Achsenwinkeldetektionseinheit detektiert werden, und eine Koordinatentransformation des Sensorkoordinatensystems abschätzt; und eine geeignete Sensorbestimmungseinheit, die so konfiguriert ist, dass sie für jeden der an den jeweiligen Robotern vorgesehenen Sensoren die aus den Sensordaten des Sensors berechnete physikalische Größe mit der von der Sensorphysikgrößen-Schätzeinheit geschätzten physikalischen Größe vergleicht und bestimmt, dass der Sensor an einem anderen Roboter als dem zu steuernden Roboter vorgesehen ist, falls eine Differenz zwischen der aus den Sensordaten berechneten physikalischen Größe und der geschätzten physikalischen Größe größer als ein voreingestellter Schwellenwert ist.
DE112022000931.4T 2021-03-29 2022-03-22 Steuervorrichtung Pending DE112022000931T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2021-055120 2021-03-29
JP2021055120 2021-03-29
PCT/JP2022/013072 WO2022210078A1 (ja) 2021-03-29 2022-03-22 制御装置

Publications (1)

Publication Number Publication Date
DE112022000931T5 true DE112022000931T5 (de) 2023-12-14

Family

ID=83456107

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112022000931.4T Pending DE112022000931T5 (de) 2021-03-29 2022-03-22 Steuervorrichtung

Country Status (6)

Country Link
US (1) US20240123623A1 (de)
JP (1) JPWO2022210078A1 (de)
CN (1) CN117042938A (de)
DE (1) DE112022000931T5 (de)
TW (1) TW202237354A (de)
WO (1) WO2022210078A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011161562A (ja) 2010-02-09 2011-08-25 Yaskawa Electric Corp 無線伝送装置とそれを用いたロボットの振動抑制制御装置およびロボット制御装置
JP2011167817A (ja) 2010-02-19 2011-09-01 Fanuc Ltd 学習制御機能を備えたロボット
JP2017074647A (ja) 2015-10-15 2017-04-20 ファナック株式会社 センサの位置と向きを算出する機能を備えたロボットシステム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4955791B2 (ja) * 2010-04-20 2012-06-20 ファナック株式会社 ロボットシステム
JP5438175B2 (ja) * 2012-07-09 2014-03-12 ファナック株式会社 制振制御ロボットシステム
JP6108645B1 (ja) * 2016-01-31 2017-04-05 貴司 徳田 モーターモジュールシステム
JP6400750B2 (ja) * 2017-01-26 2018-10-03 ファナック株式会社 学習制御機能を備えた制御システム及び制御方法
CN112384344A (zh) * 2018-07-13 2021-02-19 索尼公司 控制设备、控制方法和程序

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011161562A (ja) 2010-02-09 2011-08-25 Yaskawa Electric Corp 無線伝送装置とそれを用いたロボットの振動抑制制御装置およびロボット制御装置
JP2011167817A (ja) 2010-02-19 2011-09-01 Fanuc Ltd 学習制御機能を備えたロボット
JP2017074647A (ja) 2015-10-15 2017-04-20 ファナック株式会社 センサの位置と向きを算出する機能を備えたロボットシステム

Also Published As

Publication number Publication date
WO2022210078A1 (ja) 2022-10-06
CN117042938A (zh) 2023-11-10
JPWO2022210078A1 (de) 2022-10-06
US20240123623A1 (en) 2024-04-18
TW202237354A (zh) 2022-10-01

Similar Documents

Publication Publication Date Title
DE102017128543B4 (de) Störbereich-einstellvorrichtung für einen mobilen roboter
DE102017120614B4 (de) Robotersystem mit einem Programmierhandgerät, das mit einer Robotersteuerung kommuniziert
DE102016116702B4 (de) Messsystem zum Kalibrieren der mechanischen Parameter eines Roboters
DE102018213985B4 (de) Robotersystem
DE69603066T2 (de) Vorrichtung und verfahren zum korrigieren der fortbewegungsroute eines roboters
DE102017009940B4 (de) Robotersteuervorrichtung mit Lernsteuerfunktion
DE102015010124B4 (de) Roboterprogramm-Erzeugungsvorrichtung, die Roboterprogramm zum Reduzieren von Stössen der Gelenke des Roboters erzeugt
DE112016002797T5 (de) Kalibriervorrichtung und robotersystem, das eine solche verwendet
DE102010023736B4 (de) Robotersystem mit Problemerkennungsfunktion
DE102015000587B4 (de) Roboterprogrammiervorrichtung zum Erstellen eines Roboterprogramms zum Aufnehmen eines Bilds eines Werkstücks
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE102016012065A1 (de) Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors
DE102017001305A1 (de) Fehlerdiagnosevorrichtung eines Robotersystem zum Beurteilen eines Fehlers anhand eines Kamerabildes
DE102015001527A1 (de) Robotersystem, das visuelle Rückmeldung verwendet
DE102013114372A1 (de) Laststand-anzeige für eine werkzeugmaschine
EP3725472A1 (de) Verfahren zum ermitteln einer trajektorie eines roboters
WO2013033747A1 (de) Verfahren, steuerungssystem und bewegungsvorgabemittel zum programmieren oder vorgeben von bewegungen oder abläufen eines industrieroboters
WO2015140043A1 (de) Verfahren zur überwachung von fertigungsvorgängen, sowie zugehörige überwachungsvorrichtung
DE102018101162B4 (de) Messsystem und Verfahren zur extrinsischen Kalibrierung
DE112021000986T5 (de) Robotersystem
EP3336628A1 (de) Verfahren und mobile vorrichtung zur analyse eines produktionsablaufes einer produktionsmaschine, sowie computerprogramm, set zur analyse des produktionsablaufes der produktionsmaschine und koffer
WO2019224288A1 (de) Richtungsabhängige kollisionsdetektion für einen robotermanipulator
DE112022000931T5 (de) Steuervorrichtung
DE112021001173T5 (de) Entgratungsvorrichtung und Steuerungssystem
DE102018205443A1 (de) Steuerungssystem einer Werkzeugmaschine