DE102016012065A1 - Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors - Google Patents

Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors Download PDF

Info

Publication number
DE102016012065A1
DE102016012065A1 DE102016012065.7A DE102016012065A DE102016012065A1 DE 102016012065 A1 DE102016012065 A1 DE 102016012065A1 DE 102016012065 A DE102016012065 A DE 102016012065A DE 102016012065 A1 DE102016012065 A1 DE 102016012065A1
Authority
DE
Germany
Prior art keywords
sensor
robot
orientation
acceleration sensor
acceleration
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.)
Granted
Application number
DE102016012065.7A
Other languages
English (en)
Other versions
DE102016012065B4 (de
Inventor
Nobuaki YAMAOKA
Wenjie Chen
Kaimeng Wang
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 DE102016012065A1 publication Critical patent/DE102016012065A1/de
Application granted granted Critical
Publication of DE102016012065B4 publication Critical patent/DE102016012065B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1651Programme controls characterised by the control loop acceleration, rate control
    • 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
    • B25J13/089Determining the position of the robot with reference to its environment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/046Revolute coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • 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
    • B25J9/1697Vision controlled systems
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39017Forward calibration, find actual pose world space for given joint configuration
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39058Sensor, calibration of sensor, potentiometer

Landscapes

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

Abstract

Eine Robotersteuerungsvorrichtung, die einen Roboter steuert, umfasst eine Einheit zum Berechnen von Sensorkoordinatensystemen, die eine Position und eine Ausrichtung eines Sensors berechnet, indem sie bewirkt, dass der Roboter eine vorbestimmte Betätigung ausführt. Die Einheit zum Berechnen von Sensorkoordinatensystemen umfasst eine Einheit zum Optimieren von Betätigungsparametern, die konfiguriert ist, um eine Kombination, die am besten geeignet ist, um die Position und die Ausrichtung des Sensors zu berechnen, aus einer Vielzahl von Kombinationen geänderter Werte einer vorbestimmten Art von Betätigungsparametern zu erzielen, indem sie bewirkt, dass der Roboter die vorbestimmte Betätigung ausführt, indem er jede der Kombinationen nacheinander verwendet.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft ein Robotersystem, das eine Lernsteuerungsfunktion aufweist, und genauer gesagt betrifft die vorliegende Erfindung ein Robotersystem, das eine Funktion aufweist, um eine Position und eine Ausrichtung eines Sensors zu berechnen, der an einem bewegbaren Teil des Roboters angebracht ist.
  • Beschreibung der verwandten Technik
  • Im Allgemeinen werden bei einem Roboter eine Positionsregelung, eine Geschwindigkeitsregelung und eine Stromregelung ausgeführt, um die Position und die Geschwindigkeit eines Armabschnitts zu steuern, der von einem Servomotor gemäß Befehlen angetrieben wird. Selbst wenn diese Regelungen ausgeführt werden, gibt es jedoch Situationen, in denen der Armabschnitt während des Betriebs vibriert.
  • Daher ist herkömmlicherweise ein Beschleunigungssensor an einem bewegbaren Teil des Roboters, z. B. einer Spitze des Armabschnitts, angebracht und die Vibration des Armabschnitts während des Betriebs wird durch den Beschleunigungssensor gemessen, um eine Lernsteuerung auszuführen und dadurch die Vibration zu reduzieren (siehe japanisches Patent Nr. 4283214 ).
  • Insbesondere wird die Bewegung der Spitze des Armabschnitts basierend auf einem Rückmeldungsfehler (d. h. einer Positionsabweichung) zwischen den Positionsbefehlsdaten der Spitze des Armabschnitts, die von einer externen Steuerungseinheit erbracht werden, und den tatsächlichen Positionsdaten, die durch einen Positionsdetektor an dem Servomotor, der den Armabschnitt antreibt, erbracht werden, gesteuert. Während der Bewegung werden die Positionsdaten der Spitze des Armabschnitts basierend auf dem Messergebnis des Beschleunigungssensors, der an der Spitze des Armabschnitts angebracht ist, erfasst, und ein Korrekturausmaß, das dem Vibrationsfehler entspricht, wird basierend auf den Positionsdaten und den zuvor erwähnten Positionsbefehlsdaten erzielt. Die Positionsabweichung wird unter Berücksichtigung des Korrekturausmaßes korrigiert. Es sei zu beachten, dass sich die zuvor erwähnte Lernsteuerung auf eine Steuerung bezieht, um die Vibration dadurch zu reduzieren, dass wiederholt eine Reihe von Vorgängen ausgeführt wird, wie zuvor erwähnt.
  • Um die zuvor erwähnte Lernsteuerung auszuführen, muss der Beschleunigungssensor an der Spitze des Armabschnitts angebracht werden, und es muss eine Kalibrierung ausgeführt werden, um die Position und die Ausrichtung des angebrachten Beschleunigungssensors zu erzielen. Diesbezüglich offenbart die japanische Patentanmeldungs-Auslegeschrift Nr. 2013-041478 ein Verfahren zum automatischen Berechnen der Position und der Ausrichtung eines Beschleunigungssensors, der an der Spitze des Armabschnitts bereitgestellt wird, indem eine vorbestimmte Betätigung eines Roboters ausgeführt wird.
  • Insbesondere ist bei einem Roboter, der in der japanischen Patentanmeldungs-Auslegeschrift Nr. 2013-041478 offenbart wird, ein Beschleunigungssensor an der Spitze des Armabschnitts angebracht, und die Spitze des Armabschnitts wird in jeder von der X-Achsen-Richtung und der Y-Achsen-Richtung eines spezifischen Koordinatensystems verschoben, und dadurch wird die Ausrichtung des Beschleunigungssensors geschätzt. Ferner werden die beiden Gelenkwellen, die auf der Seite der Spitze des Armabschnitts bereitgestellt werden, gedreht, und dadurch wird die Position des Beschleunigungssensors geschätzt.
  • Bei dem Roboter, der in der japanischen Patentanmeldungs-Auslegeschrift Nr. 2013-041478 offenbart wird, nimmt jedoch in dem Maße wie das Gewicht eines Werkzeugs, das an der Spitze des Armabschnitts angebracht ist, zunimmt und die Steifigkeit des Armabschnitts abnimmt, eine Störung, die während der vorbestimmten Betätigung des Roboters auf den Beschleunigungssensor ausgeübt wird, zu. Dadurch ist es nicht möglich, die Position und die Ausrichtung des Beschleunigungssensors mit hoher Präzision berechnen.
  • In dem Maße wie sich der Rechenfehler vergrößert, reduziert sich die Wirkung der Reduzierung der Vibration durch die zuvor erwähnte Lernsteuerung, und der Rechenfehler führt manchmal zu einer Abweichung der Vibration. Ferner muss bei der Erfindung, die in der japanischen Patentanmeldungs-Auslegeschrift Nr. 2013-041478 offenbart wird, nachdem die Position und die Ausrichtung des Beschleunigungssensors automatisch berechnet wurden, ein Bediener manuell bestätigen, ob das Berechnungsergebnis präzise ist oder nicht.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die vorliegende Erfindung stellt ein Robotersystem bereit, das in der Lage ist, die Präzision des Berechnungsergebnisses der Position und der Ausrichtung eines Sensors, der an dem bewegbaren Teil des Roboters angebracht ist, zu verbessern und das Vornehmen der manuellen Bestätigung der Berechnungspräzision überflüssig macht.
  • Gemäß dem ersten Aspekt der Erfindung gibt es ein Robotersystem, das einen Roboter, der ein bewegbares Teil aufweist, an dem ein Sensor angebracht ist, um mindestens Vibrationen zu überwachen, und eine Steuerungsvorrichtung, welche die Betätigung des Roboters steuert, umfasst, wobei die Steuerungsvorrichtung eine Einheit zum Berechnen von Sensorkoordinatensystemen umfasst, die eine Position und eine Ausrichtung des Sensors berechnet, indem sie bewirkt, dass der Roboter eine vorbestimmte Betätigung ausführt, und die Einheit zum Berechnen von Sensorkoordinatensystemen eine Einheit zum Optimieren von Betätigungsparametern umfasst, die konfiguriert ist, um eine Kombination, die am besten geeignet ist, um die Position und die Ausrichtung des Sensors zu berechnen, aus einer Vielzahl von Kombinationen, in denen eine vorbestimmte Art von Betätigungsparametern mit verschiedenen Werten kombiniert wurden, zu erzielen, indem sie bewirkt, dass der Roboter die vorbestimmte Betätigung ausführt, indem er nacheinander jede der Kombinationen verwendet.
  • Gemäß dem zweiten Aspekt der Erfindung umfasst bei dem Robotersystem gemäß dem ersten Aspekt der Erfindung die vorbestimmte Art von Betätigungsparametern die Geschwindigkeit und die Beschleunigung, die dem Roboter durch die Steuerungsvorrichtung befohlen wurden.
  • Gemäß dem dritten Aspekt der Erfindung ist bei dem Robotersystem gemäß dem ersten oder zweiten Aspekt der Erfindung die Einheit zum Optimieren von Betätigungsparametern geeignet, um die Position und die Ausrichtung des Sensors basierend auf Daten zu berechnen, die von dem Sensor ausgegeben werden, wenn die vorbestimmte Betätigung von dem Roboter gemäß jeder der Kombinationen ausgeführt wird, und um eine physikalische Größe, die auf den Sensor einwirkt, basierend auf der berechneten Position und Ausrichtung des Sensors und auf der Position und der Stellung des Roboters während der vorbestimmten Betätigung zu berechnen, und die Einheit zum Optimieren von Betätigungsparametern ist geeignet, um eine Kombination, bei der die Berechnungspräzision der Position und der Ausrichtung des Sensors am höchsten ist, aus der Vielzahl von Kombinationen basierend auf den Daten, die von dem Sensor ausgegeben werden, und der berechneten physikalischen Größe, die auf den Sensor einwirkt, zu bestimmen.
  • Gemäß dem vierten Aspekt der Erfindung ist bei dem Robotersystem gemäß einem von den ersten bis dritten Aspekten der Erfindung die Einheit zum Optimieren von Betätigungsparametern geeignet, um die Position und die Ausrichtung des Sensors basierend auf den Daten zu berechnen, die von dem Sensor ausgegeben werden, wenn die vorbestimmte Betätigung gemäß jeder Kombination ausgeführt wird, um eine physikalische Größe, die auf den Sensor einwirkt, basierend auf der berechneten Position und Ausrichtung des Sensors und auf der Position und der Stellung des Roboters während der vorbestimmten Betätigung zu berechnen, um eine Kombination, in der die Berechnungspräzision der Position und der Ausrichtung des Sensors am höchsten ist, aus der Vielzahl von Kombinationen, basierend auf den Daten, die von dem Sensor ausgegeben werden, und der berechneten physikalischen Größe, die auf den Sensor einwirkt, zu bestimmen, und um zu beurteilen, ob die Berechnungspräzision der Position und der Ausrichtung des Sensors ausreichend ist oder nicht, und falls beurteilt wird, dass die Berechnungspräzision unzureichend ist, entsprechend eine externe Benachrichtigung abzugeben.
  • Gemäß dem fünften Aspekt der Erfindung umfasst bei dem Robotersystem gemäß einem von den ersten bis vierten Aspekten die vorbestimmte Betätigung Folgendes: Translationen in mindestens zwei Axialrichtungen der X-, Y- und Z-Achsen eines dreidimensionalen orthogonalen Koordinatensystems, das an dem bewegbaren Teil definiert ist; und Rotationen um mindestens zwei der X-, Y- und Z-Achsen.
  • Gemäß dem sechsten Aspekt der Erfindung ist bei dem Robotersystem gemäß einem von den ersten bis fünften Aspekten der Sensor ein Beschleunigungssensor, ein Kreiselsensor, ein Trägheitssensor, ein Kraftsensor, ein Lasertracker, eine Kamera oder eine Bewegungsaufnahmevorrichtung.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die zuvor erwähnten Aufgaben, Merkmale und vorteilhaften Wirkungen und andere Aufgaben, Merkmale und vorteilhafte Wirkungen der vorliegenden Erfindung werden aus der ausführlichen Beschreibung der stellvertretenden Ausführungsformen der Erfindung, die in den beiliegenden Zeichnungen abgebildet sind, deutlicher hervorgehen. Es zeigen:
  • 1 ein Blockdiagramm, das die Struktur eines Robotersystems gemäß einer Ausführungsform der vorliegenden Erfindung abbildet.
  • 2 eine erklärende Ansicht der Bestandteile und Koordinatensysteme eines in 1 gezeigten Knickarmroboters.
  • 3 ein Ablaufschema, das die Vorgänge zeigt, die von einer Einheit zum Berechnen von Sensorkoordinatensystemen und einer Einheit zum Optimieren von Betätigungsparametern, die in 1 gezeigt sind, ausgeführt werden.
  • 4 schematisch ein mechanisches Schnittstellen-Koordinatensystem, wenn ein Beschleunigungssensor um 15 Grad um eine X-Achse desselben herum gedreht wurde.
  • 5 ein Diagramm, welches das Koordinatensystem der mechanischen Schnittstelle zeigt, das in 4 gezeigt und durch eine YZ-Ebene dargestellt wird.
  • 6 eine Grafik, die ein Beispiel von zeitweiligen Änderungen der Beschleunigungen während einer vorbestimmten Betätigung zeigt.
  • 7 eine Grafik, die ein Beispiel einer zeitweiligen Änderung einer Differenz zwischen den berechneten Werten der Beschleunigung, die auf den Beschleunigungssensor einwirkt, und den Ausgangswerten des Beschleunigungssensors zeigt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Nachstehend werden Ausführungsformen der vorliegenden Erfindung mit Bezug auf die Zeichnungen besprochen. In den Zeichnungen erhalten die gleichen Bestandteile die gleichen Bezugszeichen. Die Bestandteile, welche die gleichen Bezugszeichen in verschiedenen Zeichnungen erhalten, erfüllen die gleiche Funktion. Zum besseren Verständnis wurde der Maßstab jeder Zeichnung entsprechend geändert.
  • 1 ist ein Blockdiagramm, das die Struktur eines Robotersystems gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. 2 ist eine erklärende Ansicht der Bestandteile und der Koordinatensysteme eines in 1 gezeigten Knickarmroboters.
  • Wie in 1 zu sehen, besteht das Robotersystem 10 der vorliegenden Ausführungsform aus einem Roboter 11 und einer Robotersteuerungsvorrichtung 12, die den Roboter 11 steuert.
  • Der Roboter 11 ist beispielsweise ein Vertikal-Knickarmroboter, der einen Beschleunigungssensor 13 aufweist, der an einem bewegbaren Teil des Roboters angebracht ist, wobei es sich um ein Objekt handelt, dessen Position gesteuert werden soll, um die Vibration des bewegbaren Teils zu messen. Bei dieser Ausführungsform ist ein Werkzeug 14 an einer Spitze eines Armabschnitts 11a des Roboters 11 über eine Halterung 15 angebracht, und der Beschleunigungssensor 13 ist an dem Werkzeug 14 angebracht.
  • Das Werkzeug 14 kann eine Roboterhand, ein Verschraubungswerkzeug oder eine Schweißpistole usw. sein. Der Beschleunigungssensor 13 kann ein dreiachsiger Beschleunigungssensor sein.
  • Der Roboter 11 und die Robotersteuerungsvorrichtung 12 sind über ein Kabel 16 miteinander verbunden. Der Beschleunigungssensor 13 ist ebenfalls über ein Kabel (nicht gezeigt) mit der Robotersteuerungsvorrichtung 12 verbunden.
  • Der Roboter 11 ist mit sechs Gelenkwellen 11b1 bis 11b6 und Servomotoren (nicht gezeigt), welche die jeweiligen Gelenkwellen drehen, versehen, wie in 2 zu sehen. Jeder der Servomotoren wird gemäß den Betätigungsbefehlen, die von der Robotersteuerungsvorrichtung 12 erteilt werden, gesteuert.
  • Der Roboter 11 ist ein stellvertretender Roboter, der ein räumlich festgelegtes Weltkoordinatensystem 21 und ein Koordinatensystem 22 einer mechanischen Schnittstelle, das an der Spitze des Armabschnitts 11a, an dem das Werkzeug 14 angebracht ist, eingerichtet ist, umfasst. Sowohl das Weltkoordinatensystem 21 als auch das Koordinatensystem 22 der mechanischen Schnittstelle sind dreidimensionale orthogonale Koordinatensysteme.
  • Es sei zu beachten, dass die Richtungen der XYZ-Achsen in dem Weltkoordinatensystem 21 und die Richtungen der XYZ-Achsen in dem Koordinatensystem 22 der mechanischen Schnittstelle in 2 in vergrößerten Teilansichten angegeben sind. In dem Weltkoordinatensystem 21 wird die +X-Achse durch die Richtung nach rechts in 2 definiert, die +Z-Achse wird durch die Richtung nach oben in 2 definiert, und die +Y-Achse wird durch die Tiefenrichtung des Blatts der Zeichnung von 2 definiert. In dem Koordinatensystem 22 der mechanischen Schnittstelle wird die +X-Achse durch die Richtung nach rechts in 2 definiert, die +Z-Achse wird durch die Richtung nach unten in 2 definiert, und die +Y-Achse wird durch die entgegengesetzte Tiefenrichtung des Blatts der Zeichnung von 2 definiert.
  • Ferner wird bei dem Robotersystem 10 der vorliegenden Ausführungsform die Vibration des Roboters 11 während der Betätigung durch den Beschleunigungssensor 13 gemessen, der an dem Werkzeug 14 an der Spitze des Armabschnitts 11a angebracht ist, wie in 1 gezeigt, und die Lernsteuerung wird ausgeführt, um die Vibration zu reduzieren. Um eine derartige Lernsteuerung auszuführen, muss eine Kalibrierung ausgeführt werden, um die Position und die Ausrichtung des Beschleunigungssensors 13 zu erfassen, der an dem Werkzeug 14 angebracht ist.
  • Die Robotersteuerungsvorrichtung 12 bei der vorliegenden Ausführungsform weist eine Funktion auf, um automatisch die Position und die Ausrichtung des Beschleunigungssensors 13, der an dem Werkzeug 14 angebracht ist, zu berechnen, indem sie eine vorbestimmte Betätigung des Roboters 11 ausführt.
  • Insbesondere umfasst die Robotersteuerungsvorrichtung 12 eine Einheit 17 zum Berechnen von Sensorkoordinatensystemen, wie in 1 gezeigt. Die Einheit 17 zum Berechnen von Sensorkoordinatensystemen berechnet die Position und die Ausrichtung des Beschleunigungssensors 13, der an dem Werkzeug 14 angebracht ist, indem sie eine vorbestimmte Betätigung des Roboters 11 ausführt.
  • Genauer gesagt umfasst die Einheit 17 zum Berechnen von Sensorkoordinatensystemen eine Einheit 18 zum Optimieren von Betätigungsparametern, wie in 1 gezeigt. Die Einheit 18 zum Optimieren von Betätigungsparametern bewirkt, dass der Roboter vorbestimmte Betätigungen ausführt, indem sie nacheinander eine Vielzahl von Kombinationen verwendet, in denen eine vorbestimmte Art von Betätigungsparametern mit verschiedenen Werten kombiniert wurden (was als „Betätigungsparametersatz” bezeichnet wird). Folglich erzielt die Einheit 18 zum Optimieren von Betätigungsparametern einen optimalen Betätigungsparametersatz, um die Position und die Ausrichtung des Beschleunigungssensors 13 zu erzielen. Beispiele des Betätigungsparametersatzes werden nachstehend besprochen.
  • Die Betätigungen, die von dem Roboter 11 durch die Einheit 18 zum Optimieren von Betätigungsparametern auszuführen sind, sind folgende.
  • Bei dieser Ausführungsform wird nämlich das Werkzeug 14, an dem der Beschleunigungssensor 13 angebracht ist, in den Richtungen der X-Achse, der Y-Achse und der Z-Achse des Koordinatensystems 22 der mechanischen Schnittstelle mit Bezug auf eine beliebige Stellung des Roboters 11 verschoben. Die Verlagerung jeder Translation beträgt 100 mm. Danach wird das Werkzeug 14, an dem der Beschleunigungssensor 13 angebracht ist, um die X-Achse, die Y-Achse und die Z-Achse des Koordinatensystems 22 der mechanischen Schnittstelle herum gedreht. Die Winkelverlagerung jeder Rotationsbewegung beträgt 15 Grad.
  • Damit der Roboter 11 die zuvor erwähnten vorbestimmten Betätigungen ausführt, wird eine Anzahl K von Betätigungsparametersätzen (K ist eine natürliche Zahl) im Voraus in der Robotersteuerungsvorrichtung 12 gespeichert. Die Betätigungsparametersätze der Robotersteuerungsvorrichtung 12 sind bevorzugt extern überschreibbar.
  • Bei dieser Ausführungsform umfasst eine vorbestimmte Art von Betätigungsparametern, die jeden Betätigungsparametersatz bilden, Geschwindigkeits- und Beschleunigungsbefehle, die dem Roboter 11 von der Robotersteuerungsvorrichtung 12 erteilt werden. Bei dieser Ausführungsform besteht jeder Betätigungsparametersatz aus einer Kombination, in der Geschwindigkeits- und Beschleunigungswerte mit verschiedenen Werten kombiniert wurden. Es sei zu beachten, dass die Geschwindigkeits- und Beschleunigungswerte jedes Betätigungsparametersatzes durch Verhältnisse zu der maximalen Geschwindigkeit und Beschleunigung des Roboters 11 bestimmt werden. Beispielsweise werden als Kombinationen von Geschwindigkeit und Beschleunigung (Geschwindigkeit [%], Beschleunigung [%]) Kombinationen von (30, 100), (50, 100), (70, 100), (80, 80) und (100, 50) im Voraus angelegt. Insbesondere für den zuvor erwähnten Fall einer Translation um 100 mm wird ein sich bewegender Körper von einem Startpunkt mit einer vorbestimmten Beschleunigungsrate bewegt, wird anschließend mit einer vorbestimmten konstanten Geschwindigkeit bewegt und wird anschließend mit einer vorbestimmten Verzögerungsrate bis zu einem Endpunkt bewegt.
  • Die Vorgänge, die durch die Einheit 17 zum Berechnen von Sensorkoordinatensystemen und die Einheit 18 zum Optimieren von Betätigungsparametern ausgeführt werden, werden nachstehend besprochen.
  • 3 ist ein Ablaufschema der Betätigungen, die durch die Einheit 17 zum Berechnen von Sensorkoordinatensystemen und die Einheit 18 zum Optimieren von Betätigungsparametern ausgeführt werden.
  • Die Einheit 18 zum Optimieren von Betätigungsparametern befiehlt dem Roboter 11, die zuvor erwähnte vorbestimmte Betätigung unter Verwendung jeweils einer Vielzahl von Betätigungsparametersätzen, z. B. der zuvor erwähnten fünf Betätigungsparametersätze, auszuführen. Bei dieser Ausführungsform, wie aus den Schritten S1 bis S5 hervorgeht, die in 3 gezeigt werden, wird die Anzahl K (K = 5 bei dieser Ausführungsform) von Betätigungsparametersätzen der Reihe nach verwendet, um die zuvor erwähnten vorbestimmten Betätigungen auszuführen.
  • Des Weiteren berechnet die Einheit 18 zum Optimieren von Betätigungsparametern jedes Mal, wenn die zuvor erwähnte vorbestimmte Betätigung unter Verwendung jedes Betätigungsparametersatzes ausgeführt wird, die Position und Ausrichtung des Beschleunigungssensors 13 aus den Betätigungsdaten zu diesem Zeitpunkt (Schritt S2 und S3). Das Berechnungsverfahren ist folgendes.
  • Zunächst wird die Ausrichtung des Beschleunigungssensors 13 berechnet, und anschließend wird die Position des Beschleunigungssensors 13 berechnet.
  • Bei der Berechnung der Ausrichtung des Beschleunigungssensors 13 werden Beschleunigungsdaten vor dem Beginn der zuvor erwähnten vorbestimmten Betätigung und Beschleunigungsdaten, die während der Translationsbewegung zwischen den vorbestimmten Betätigungen erzielt werden, verwendet. Die Beschleunigungsdaten für eine Minute vor dem Beginn der zuvor erwähnten vorbestimmten Betätigung werden erfasst und ein durchschnittlicher Wert davon wird aufgezeichnet. Bezüglich der Translationsbewegung wird das Werkzeug 14 in jeder von der X-Achsen-, der Y-Achsen- und der Z-Achsen-Richtungen des Koordinatensystems 22 der mechanischen Schnittstelle verschoben, und die Beschleunigungsdaten im Verlauf jeder Translationsbewegung werden nacheinander in vorbestimmten Zeitintervallen aufgezeichnet. Die aufzuzeichnenden Beschleunigungsdaten werden durch Subtrahieren des durchschnittlichen Wertes von den Beschleunigungsdaten vor dem Beginn der zuvor erwähnten vorbestimmten Betätigung von den tatsächlichen Beschleunigungsdaten, die durch den Beschleunigungssensor 13 detektiert werden, und durch Unterdrücken des Rauschens davon durch ein Tiefpassfilter erzielt. Der Grund dafür besteht darin, dass verhindert wird, dass ein Rauschen in den Beschleunigungsdaten auf Grund von zwei Integralen zunimmt, was nachstehend besprochen wird. Die Daten werden bevorzugt in einer (nicht gezeigten) Speichereinheit, die in der Robotersteuerungsvorrichtung 12 bereitgestellt wird, oder in einer externen Speichervorrichtung usw. aufgezeichnet.
  • Wie zuvor erwähnt, werden die Beschleunigungsdaten zu jedem Zeitpunkt zwei Integralen unterzogen, indem Zeitreihen-Beschleunigungsdaten, die in vorbestimmten Zeitintervallen aufgezeichnet werden, wie zuvor erwähnt, verwendet werden, und durch Summieren der Integralergebnisse wird die dreidimensionale Verlagerung des Beschleunigungssensors 13, der verschoben wurde, erzielt. Eine derartige dreidimensionale Verlagerung des Beschleunigungssensors 13 wird für jede Translationsbewegung in den X-Achsen-, Y-Achsen- und Z-Achsen-Richtungen des Koordinatensystems 22 der mechanischen Schnittstelle erzielt.
  • Als Nächstes wird ein Einheitsvektor P →x, der die Richtung der Bewegung des Beschleunigungssensors 13 darstellt, durch die folgende Gleichung (1) gegeben.
  • Figure DE102016012065A1_0002
  • Es sei zu beachten, dass (Xxi, Yxi, Zxi) aus Gleichung (1) die dreidimensionale Verlagerung des Beschleunigungssensors 13 darstellt, die durch die beiden Integrale der Beschleunigungsdaten, wie zuvor erwähnt, als Koordinatenwerte erzielt wird. Das tiefgestellte Zeichen x jedes Koordinatenwertes stellt eine Translationsbewegung in der X-Achsen-Richtung dar. Das tiefgestellte Zeichen i stellt den i. (i ← 1 bis K) Betätigungsparametersatz aus der Anzahl K von Betätigungsparametersätzen dar. Wie aus der Gleichung (1) ersichtlich, da die absoluten Werte von (Xxi, Yxi, Zxi) ein Nenner der Gleichung sind, ist der Vektor P →x normiert.
  • Des Weiteren werden bezüglich der Translationsbewegung in der Y-Achsen-Richtung und Z-Achsen-Richtung die Einheitsvektoren P →y, P →z berechnet. Die Gleichungen zum Berechnen derselben werden in den folgenden Gleichungen (2) und (3) dargestellt.
  • Figure DE102016012065A1_0003
  • Die Rotationsmatrix R, welche die Ausrichtung des Beschleunigungssensors 13 darstellt, wird aus den drei Einheitsvektoren, die durch die Gleichungen (1) bis (3) unter Verwendung der folgenden Gleichung (4) erzielt werden, erzielt.
  • Figure DE102016012065A1_0004
  • Es sei zu beachten, dass die Rotationsmatrix R aus den Translationsbewegungen in den drei Richtungen, die aus den X-Achsen-, Y-Achsen- und Z-Achsen-Richtungen bestehen, erzielt wird, wie zuvor erwähnt, jedoch aus den Translationsbewegungen in mindestens zwei Achsen-Richtungen aus den drei Achsen-Richtungen erzielt werden kann. P →z = P →x·P →y (5)
  • Wie aus der zuvor erwähnten Gleichung (5) ersichtlich, ist es möglich, P →z aus einem Kreuzprodukt der Vektoren P →x und P →y zu erzielen.
  • Die Ausrichtung des Beschleunigungssensors 13 wird in dem zuvor erwähnten Verfahren berechnet. Natürlich wird die Berechnung des Sensors für alle der Anzahl K von Betätigungsparametersätzen ausgeführt.
  • Als Nächstes wird die Position des Beschleunigungssensors 13 berechnet.
  • Wenn die Position des Beschleunigungssensors 13 berechnet wird, werden die Beschleunigungsdaten, die aus der Rotationsbewegung zwischen den zuvor erwähnten vorbestimmten Betätigungen erzielt werden, verwendet. Dazu werden die Beschleunigungsdaten nacheinander in vorbestimmten Zeitintervallen für die Rotation des Werkzeugs 14 um jede von der X-Achse, der Y-Achse und der Z-Achse des Koordinatensystems 22 der mechanischen Schnittstelle herum aufgezeichnet. Es sei zu beachten, dass die aufzuzeichnenden Beschleunigungsdaten diejenigen sind, die durch Subtrahieren der Schwerkraftbeschleunigung von den tatsächlichen Beschleunigungsdaten erzielt werden, die durch den Beschleunigungssensor 13 detektiert werden, wobei die Ausrichtung des Beschleunigungssensors 13 berücksichtigt wird, die durch die obige Gleichung (4) erzielt wird. Die Daten werden bevorzugt in einer Speichereinheit (nicht gezeigt), die in der Robotersteuerungsvorrichtung 12 bereitgestellt wird, oder in einer externen Speichervorrichtung usw. aufgezeichnet.
  • Die Beschleunigungsdaten zu jedem Zeitpunkt werden zwei Integralen unter Verwendung von Zeitreihen-Beschleunigungsdaten, die in vorbestimmten Zeitintervallen aufgezeichnet werden, unterzogen, wie zuvor erwähnt. Die Winkelverlagerung des Beschleunigungssensors 13, der gedreht wurde, wird erzielt, indem die Integralergebnisse summiert werden.
  • Die Winkelverlagerung des Beschleunigungssensors 13 wird für jede der Rotationen um die X-Achse, die Y-Achse und die Z-Achse des Koordinatensystems 22 der mechanischen Schnittstelle herum erzielt.
  • Die Y-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 werden aus der Winkelverlagerung des Beschleunigungssensors 13 um die X-Achse herum erzielt. Ebenso werden die X-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 aus der Winkelverlagerung des Beschleunigungssensors 13 um die Y-Achse herum erzielt, und die X-Komponente und die Y-Komponente der Position des Beschleunigungssensors 13 werden aus der Winkelverlagerung des Beschleunigungssensors 13 um die Z-Achse herum erzielt.
  • Die zuvor erwähnte Rotationsbewegung um die X-Achse herum wird nachstehend als stellvertretendes Beispiel beschrieben.
  • 4 zeigt schematisch das Koordinatensystem 22 der mechanischen Schnittstelle, wenn der Beschleunigungssensor 13 um 15 Grad um die X-Achse des Koordinatensystems 22 der mechanischen Schnittstelle herum gedreht wurde. In 4 stellt das Symbol „A” die Position des Beschleunigungssensors 13 vor der Rotation dar, und das Symbol B stellt die Position des Beschleunigungssensors 13 nach der Rotation dar. 5 zeigt das Koordinatensystem 22 der mechanischen Schnittstelle aus 4 schematisch als YZ-Ebene.
  • Wie in 5 zu sehen, wenn die Position „A” des Beschleunigungssensors 13 in dem Koordinatensystem 22 der mechanischen Schnittstelle durch (Y0, Z0) dargestellt wird, wird vorausgesetzt, dass der Beschleunigungssensor 13 um 15 Grad um die X-Achse herum mit der Verlagerung von (dY, dZ) in die Position B gedreht wurde. In diesem Fall weisen die Koordinaten (Y0, Z0), welche die Position „A” darstellen, und die Koordinaten (dY, dZ), welche die Verlagerung darstellen, die folgende gegenseitige Beziehung auf.
  • Figure DE102016012065A1_0005
  • Die Koordinaten (dY, dZ) in der obigen Gleichung (6) stellen die Winkelverlagerung des Beschleunigungssensors 13 um die X-Achse herum dar, die durch die beiden Integrale der Beschleunigungsdaten erzielt wird, wie zuvor erwähnt. Daher können die Koordinaten (Y0, Z0) berechnet werden, indem die jeweiligen Werte von dY und dZ, die bereits erzielt wurden, in die zuvor erwähnte Gleichung (6) eingesetzt werden. Somit können die Y-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 aus der Rotationsbewegung um die X-Achse herum erzielt werden.
  • Mit dem gleichen Berechnungsverfahren wie zuvor kann die zweidimensionale Position des Beschleunigungssensors 13 vor der Rotation für die Rotation um die Y-Achse herum und die Rotation um die Z-Achse herum erzielt werden. Insbesondere werden die X-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 durch die Rotation um die Y-Achse herum erzielt. Ebenso werden die X-Komponente und die Y-Komponente der Position des Beschleunigungssensors 13 durch die Rotation um die Z-Achse herum erzielt.
  • Wie zuvor erwähnt, werden zwei X-Komponenten, zwei Y-Komponenten und zwei Z-Komponenten der Position des Beschleunigungssensors 13 durch die Rotationen um die drei Achsen herum erzielt. Bei der abgebildeten Ausführungsform werden die beiden X-Komponenten, die beiden Y-Komponenten und die beiden Z-Komponenten jeweils gemittelt, um die dreidimensionale Position des Beschleunigungssensors 13 zu berechnen.
  • Es sei zu beachten, dass die dreidimensionale Position des Beschleunigungssensors 13, die aus den Rotationen um drei Achsen von der X-Achse, der Y-Achse und der Z-Achse herum bei der zuvor erwähnten Ausführungsform erzielt wurde, aus den Rotationen um mindestens zwei Achsen der drei Achsen erzielt werden kann.
  • Insbesondere werden die Y-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 aus der Rotation um die X-Achse herum erzielt, und die X-Komponente und die Z-Komponente der Position des Beschleunigungssensors 13 werden aus der Rotation um die Y-Achse herum erzielt. Daher kann die zu berechnende Z-Komponente der Position des Beschleunigungssensors 13 erzielt werden, indem die beiden Z-Komponenten, die aus den Rotationsbewegungen um die X-Achse und die Y-Achse herum erzielt werden, gemittelt werden. Ferner kann die zu berechnende X-Komponente der Position des Beschleunigungssensors 13 die X-Komponente sein, die aus der Rotationsbewegung um die Y-Achse herum erzielt wird, und die zu berechnende Z-Komponente der Position des Beschleunigungssensors 13 kann die Y-Komponente sein, die aus der Rotationsbewegung um die Y-Achse herum erzielt wird.
  • Noch einmal mit Bezug auf 3 wird nach dem Schritt S3, bei dem die Position und die Ausrichtung des Beschleunigungssensors 13 berechnet werden, die Anzahl i in dem Schritt S4 um eins erhöht. Es sei zu beachten, dass bei dieser Ausführungsform der Anzahl K (d. h. 5 bei dieser Ausführungsform) von Betätigungsparametersätzen der Reihe nach Seriennummern zugeteilt werden, und der Betätigungsparametersatz, dessen Seriennummer der zuvor erwähnten Nummer i entspricht, verwendet wird.
  • Falls in Schritt S5 beurteilt wird, dass die Berechnung der Position und der Ausrichtung des Beschleunigungssensors 13 für alle der Anzahl K von Betätigungsparametersätzen ausgeführt wurde, fährt die Steuerung mit Schritt S6 fort. In Schritt S6 wird bestimmt, welcher der fünf Betätigungsparametersätze der optimale Betätigungsparametersatz ist, um die Position und die Ausrichtung des Beschleunigungssensors 13 zu erzielen.
  • Insbesondere bestimmt die Einheit 18 zum Optimieren von Betätigungsparametern den optimalen Betätigungsparametersatz wie folgt.
  • Zunächst werden die absoluten Werte der physikalischen Größe, die auf den Beschleunigungssensor 13 einwirkt, in vorbestimmten Zeitintervallen, d. h. die Beschleunigungen
    Figure DE102016012065A1_0006
    basierend auf der Position und der Ausrichtung des Beschleunigungssensors 13, die unter Verwendung des vorbestimmten Betätigungsparametersatz berechnet wurden, und der Position und der Stellung des Roboters 11 während der zuvor erwähnten vorbestimmten Betätigung nacheinander berechnet. Der absolute Wert bedeutet die Quadratwurzel der Summe der Quadrate der drei XYZ-Komponenten.
  • Insbesondere wird die zuvor erwähnte Beschleunigung dadurch berechnet, dass nacheinander die Position des Beschleunigungssensors 13 zu jedem Zeitpunkt aus der Position und der Stellung des Roboters 11 in dem Weltkoordinatensystem in vorbestimmten Zeitintervallen während der zuvor erwähnten vorbestimmten Betätigungen mit Bezug auf die berechnete Position und die Ausrichtung des Beschleunigungssensors 13 erzielt und zwei Differenziale ausgeführt werden. Es sei zu beachten, dass der Zeitpunkt, zu dem jede Beschleunigung berechnet wird, mit dem Zeitpunkt synchronisiert ist, zu dem die Beschleunigungsdaten, die von dem Beschleunigungssensor 13 während der zuvor erwähnten vorbestimmten Betätigungen erzielt wurden, aufgezeichnet wird.
  • Die Berechnung der Beschleunigung wird für jeden der fünf Betätigungsparametersätze ausgeführt.
  • Als Nächstes wird eine Standardabweichung S der Beschleunigung
    Figure DE102016012065A1_0007
    die wie zuvor berechnet wird, nacheinander für jeden der Betätigungsparameter erzielt.
  • Figure DE102016012065A1_0008
  • Die zuvor erwähnte Standardabweichung S der Beschleunigung kann aus dem Ausgangswert
    Figure DE102016012065A1_0009
    des Beschleunigungssensors 13 während der zuvor erwähnten vorbestimmten Betätigung wie folgt erzielt werden.
  • Figure DE102016012065A1_0010
  • Alternativ kann die zuvor erwähnte Standardabweichung S der Beschleunigung aus einer Differenz zwischen dem maximalen Wert und dem minimalen Wert wie folgt
    Figure DE102016012065A1_0011
    oder
    Figure DE102016012065A1_0012
    erzielt werden.
  • Bei den obigen Gleichungen stellt der Begriff „max” den maximalen Wert der Beschleunigung zu jedem Zeitpunkt dar, und der Begriff „min” stellt den minimalen Wert der Beschleunigung zu jedem Zeitpunkt dar.
  • Es sei zu beachten, dass 6 ein Beispiel von zeitweiligen Änderungen der zuvor erwähnten Beschleunigungen
    Figure DE102016012065A1_0013
    und
    Figure DE102016012065A1_0014
    zeigt.
  • Als Nächstes wird eine Norm N der Differenz zwischen dem absoluten Wert der Beschleunigung, die wie zuvor berechnet wurde, z. B. die Beschleunigungsdaten, die durch die Kurve P in 6 dargestellt werden, und der absolute Wert des Ausgangswertes des Beschleunigungssensors 13 während der zuvor erwähnten vorbestimmten Betätigung, z. B. die Beschleunigungsdaten, die durch die Kurve Q in 6 dargestellt sind, wie folgt erzielt.
  • Figure DE102016012065A1_0015
  • In der obigen Gleichung stellt n die Anzahl der Zeitreihendaten dar, d. h. die Anzahl der Beschleunigungsdaten, die in den vorbestimmten Zeitintervallen aufgezeichnet und berechnet wurden.
  • 7 zeigt ein Beispiel einer zeitweiligen Änderung der Differenz zwischen dem absoluten Wert der zuvor erwähnten Beschleunigung
    Figure DE102016012065A1_0016
    und dem absoluten Wert der Beschleunigung
    Figure DE102016012065A1_0017
    . Die Streuung der Beschleunigungsdaten (6) die verwendet werden, um die Position und die Ausrichtung des Beschleunigungssensors 13 zu berechnen, vergrößert sich, wenn die Standardabweichung S der Beschleunigung zunimmt. Dies bedeutet, dass die Geschwindigkeit der vorbestimmten Betätigung, die ausgeführt wird, um die Position und die Ausrichtung des Beschleunigungssensors 13 zu erzielen, hoch ist, und entsprechend ist die Tatsache, dass die Standardabweichung S groß ist, eine der Bedingungen, um die Position und die Ausrichtung des Beschleunigungssensors 13 mit hoher Präzision zu erzielen.
  • Des Weiteren nimmt die Differenz (7) zwischen dem absoluten Wert der Beschleunigung
    Figure DE102016012065A1_0018
    die wie zuvor berechnet wird, und dem absoluten Wert der Ausgabe des Beschleunigungssensors 13
    Figure DE102016012065A1_0019
    während der vorbestimmten Betätigung ab, wenn sich die zuvor erwähnte Norm N verringert. Insbesondere reduziert sich der Einfluss durch eine Störung, die auf den Beschleunigungssensor 13 während der vorbestimmten Betätigung ausgeübt wird. Daher ist die Tatsache, dass die Norm N klein ist, ebenfalls eine der Bedingungen, um die Position und die Ausrichtung des Beschleunigungssensors 13 mit hoher Präzision zu erzielen.
  • Wie es aus dem Vorstehenden hervorgeht, sind die Bedingungen, dass die zuvor erwähnte Standardabweichung S groß ist und die zuvor erwähnte Norm N klein ist, unabdingbar, um die Position und die Ausrichtung des Beschleunigungssensors mit hoher Präzision zu berechnen. Dazu wird bei der abgebildeten Ausführungsform das Verhältnis von S und N (S/N) nacheinander für jeden der fünf Betätigungsparametersätze berechnet.
  • Da eine Zunahme des Verhältnisses S/N eine Zunahme der Berechnungspräzision der Position und der Ausrichtung des Beschleunigungssensors 13 bedeutet, beurteilt die Einheit 18 zum Optimieren von Betätigungsparametern, dass der Betätigungsparametersatz, der das größte Verhältnis S/N aufweist, der optimale Betätigungsparametersatz ist (Schritt S6 aus 3).
  • Als Nächstes beurteilt die Einheit 18 zum Optimieren von Betätigungsparametern in Schritt S7 aus 3, ob die Präzision des Berechnungsergebnisses der Position und der Ausrichtung des Beschleunigungssensors 13 ausreichend ist oder nicht.
  • Insbesondere wird, falls das Verhältnis S/N, welches das Ergebnis der Beurteilung in Schritt S6 darstellt, größer als eine vorbestimmte Schwelle ist, beurteilt, dass die Berechnungspräzision der Position und der Ausrichtung des Beschleunigungssensors 13 ausreichend ist. In diesem Fall endet die Betätigung normal in Schritt S8, und die Einheit 18 zum Optimieren von Betätigungsparametern gibt das Berechnungsergebnis der Position und der Ausrichtung des Beschleunigungssensors 13 nach außen ab. Es sei zu beachten, dass die Einheit 18 zum Optimieren von Betätigungsparametern bevorzugt mit einer (nicht gezeigten) Einstelleinheit versehen ist, um die zuvor erwähnte Schwelle einzustellen, die extern überschreibbar ist.
  • Falls das Verhältnis S/N, welches das Ergebnis der Beurteilung in Schritt S6 darstellt, kleiner als die Schwelle ist, wird beurteilt, dass die Berechnungspräzision der Position und der Ausrichtung des Beschleunigungssensors 13 unzureichend ist. In diesem Fall endet die Betätigung anormal in Schritt S9, und die Einheit 18 zum Optimieren von Betätigungsparametern gibt eine externe Benachrichtigung einer unzureichenden Berechnungspräzision durch eine Angabe einer Warnung oder eine Abgabe eines Alarmtons ab.
  • Wie zuvor erwähnt, werden gemäß dem Robotersystem 10 der abgebildeten Ausführungsform die Position und die Ausrichtung des Sensors für jeden der Vielzahl von Betätigungsparametersätzen durch Ausführen der vorbestimmten Betätigungen durch den Roboter berechnet, indem die Vielzahl von Betätigungsparametersätzen nacheinander verwendet wird. Folglich ist es möglich, den optimalen Betätigungsparametersatz, der den Einfluss einer Störung minimiert, die auf den Beschleunigungssensor 13 ausgeübt wird, aus der Vielzahl von Betätigungsparametersätzen zu erzielen, und entsprechend kann die Berechnungspräzision der Position und der Ausrichtung des Beschleunigungssensors verbessert werden. Dadurch ist es möglich, die Wirkung des Reduzierens von Vibrationen auf Grund der zuvor erwähnten Lernsteuerung zu erfüllen.
  • Ferner ist es gemäß dem Robotersystem 10 der abgebildeten Ausführungsform möglich, automatisch zu beurteilen, ob das Berechnungsergebnis der Position und der Ausrichtung des Beschleunigungssensors 13 ausreichend ist oder nicht, und entsprechend ist eine manuelle Betätigung, um die Präzision des Berechnungsergebnisses zu bestätigen, überflüssig.
  • Bei der vorliegenden Erfindung ist der Sensor, der an dem Abschnitt des Roboters 11 angebracht ist, dessen Position gesteuert werden soll, nicht auf den Beschleunigungssensor 13 eingeschränkt. Insbesondere ist bei der zuvor erwähnten Ausführungsform der Beschleunigungssensor 13 an dem Werkzeug 14 an der Spitze des Armabschnitts 11a des Roboters 11 angebracht, doch kann der anzubringende Sensor bei der vorliegenden Erfindung ein beliebiger Sensor sein, der die Vibration des Abschnitts des Roboters 11 überwachen kann, dessen Position zu steuern ist. Als derartiger Sensor kann beispielsweise eine Vorrichtung, welche die Position oder die Verlagerung messen kann, wie etwa ein Beschleunigungssensor, ein Kreiselsensor, ein Trägheitssensor, ein Kraftsensor, ein Lasertracker, eine Kamera oder eine Bewegungsaufnahmevorrichtung, angewendet werden. Wenn des Weiteren eine derartige Vorrichtung angewendet wird, kann die Beschleunigung basierend auf den Daten, die von einem Computer gemessen werden, berechnet werden.
  • Obwohl die vorliegende Erfindung zuvor mit Bezug auf die stellvertretenden Ausführungsformen besprochen wurde, wird der Fachmann verstehen, dass an den zuvor erwähnten Modifikationen diverse andere Modifikationen, Änderungen, Auslassungen und Hinzufügungen vorgenommen werden können, ohne den Umfang der vorliegenden Erfindung zu verlassen.
  • WIRKUNG DER ERFINDUNG
  • Gemäß der vorliegenden Erfindung werden die Position und die Ausrichtung des Sensors für jede von einer Vielzahl von Kombinationen berechnet, bei denen die vorbestimmten Arten von Betätigungsparametern mit verschiedenen Werten kombiniert wurden, indem die vorbestimmten Betätigungen durch den Roboter unter Verwendung der Kombinationen der Betätigungsparameter ausgeführt werden. Folglich ist es möglich, die optimale Kombination von Betätigungsparametern, die den Einfluss der Störung minimiert, die auf den Sensor ausgeübt wird, aus der Vielzahl von Kombinationen der Betätigungsparameter auszuwählen, und entsprechend kann die Präzision des Berechnungsergebnisses der Position und der Ausrichtung des Sensors verbessert werden. Dadurch kann die Wirkung des Reduzierens der Vibrationen auf Grund der zuvor erwähnten Lernsteuerung vorteilhaft erreicht werden.
  • Da es ferner gemäß der vorliegenden Erfindung möglich ist, automatisch zu beurteilen, ob die Berechnungspräzision der Position und der Ausrichtung des Sensors ausreichend ist, ist keine manuelle Betätigung notwendig, um die Berechnungspräzision zu bestätigen.
  • 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 4283214 [0003]
    • JP 2013-041478 [0005, 0006, 0007, 0008]

Claims (6)

  1. Robotersystem (10), umfassend einen Roboter (11), der einen bewegbaren Teil, an dem ein Sensor (13) angebracht ist, um mindestens Vibrationen zu überwachen, und eine Steuerungsvorrichtung (12), welche die Betätigung des Roboters (11) steuert, aufweist, wobei die Steuerungsvorrichtung (12) eine Einheit (17) zum Berechnen von Sensorkoordinatensystemen umfasst, die eine Position und eine Ausrichtung des Sensors (13) berechnet, indem sie bewirkt, dass der Roboter (11) eine vorbestimmte Betätigung ausführt, und die Einheit (17) zum Berechnen von Sensorkoordinatensystemen eine Einheit (18) zum Optimieren von Betätigungsparametern umfasst, die konfiguriert ist, um eine Kombination, die am besten geeignet ist, um die Position und die Ausrichtung des Sensors (13) zu berechnen, aus einer Vielzahl von Kombinationen, in denen eine vorbestimmte Art von Betätigungsparametern mit verschiedenen Werten kombiniert wurden, zu erzielen, indem sie bewirkt, dass der Roboter (11) die vorbestimmte Betätigung ausführt, indem er jede der Kombinationen nacheinander verwendet.
  2. Robotersystem nach Anspruch 1, wobei die vorbestimmte Art von Betätigungsparametern die Geschwindigkeit und die Beschleunigung umfasst, die dem Roboter (11) durch die Steuerungsvorrichtung (12) befohlen werden.
  3. Robotersystem nach Anspruch 1 oder 2, wobei die Einheit (18) zum Optimieren von Betätigungsparametern geeignet ist, um die Position und die Ausrichtung des Sensors (13) basierend auf Daten, die von dem Sensor (13) ausgegeben werden, wenn die vorbestimmte Betätigung von dem Roboter (11) ausgeführt wird, gemäß jeder der Kombinationen zu berechnen, und um eine physikalische Größe, die auf den Sensor (13) einwirkt, basierend auf der berechneten Position und Ausrichtung des Sensors (13) und auf der Position und der Stellung des Roboters (11) während der vorbestimmten Betätigung zu berechnen, und die Einheit (18) zum Optimieren von Betätigungsparametern geeignet ist, um eine Kombination, in der die Berechnungspräzision der Position und der Ausrichtung des Sensors (13) am höchsten ist, aus der Vielzahl von Kombinationen basierend auf den Daten, die von dem Sensor (13) ausgegeben werden, und auf der berechneten physikalischen Größe, die auf den Sensor (13) einwirkt, zu bestimmen.
  4. Robotersystem nach einem der Ansprüche 1 bis 3, wobei die Einheit (18) zum Optimieren von Betätigungsparametern geeignet ist zum Berechnen der Position und der Ausrichtung des Sensors (13) basierend auf den Daten, die von dem Sensor (13) ausgegeben werden, wenn die vorbestimmte Betätigung gemäß jeder Kombination ausgeführt wird, und Berechnen einer physikalischen Größe, die auf den Sensor (13) einwirkt, basierend auf der berechneten Position und Ausrichtung des Sensors (13) und auf der Position und der Stellung des Roboters (11) während der vorbestimmten Betätigung, Bestimmen einer Kombination, bei der die Berechnungspräzision der Position und der Ausrichtung des Sensors (13) am höchsten ist, aus der Vielzahl von Kombinationen, basierend auf den Daten, die von dem Sensor (13) ausgegeben werden, und auf der berechneten physikalischen Größe, die auf den Sensor (13) einwirkt, und Beurteilen, ob die Berechnungspräzision der Position und der Ausrichtung des Sensors (13) ausreichend ist oder nicht, und falls beurteilt wird, dass die Berechnungspräzision unzureichend ist, entsprechendes Abgeben einer externen Benachrichtigung.
  5. Robotersystem nach einem der Ansprüche 1 bis 4, wobei die vorbestimmte Betätigung Translationen in mindestens zwei Axialrichtungen der X-, Y- und Z-Achsen eines dreidimensionalen orthogonalen Koordinatensystems, das an dem bewegbaren Teil definiert ist, und Rotationen um mindestens zwei der X-, Y- und Z-Achsen herum umfasst.
  6. Robotersystem nach einem der Ansprüche 1 bis 5, wobei der Sensor (13) ein Beschleunigungssensor, ein Kreiselsensor, ein Trägheitssensor, ein Kraftsensor, ein Lasertracker, eine Kamera oder eine Bewegungsaufnahmevorrichtung ist.
DE102016012065.7A 2015-10-15 2016-10-07 Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors Active DE102016012065B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015203902A JP6174654B2 (ja) 2015-10-15 2015-10-15 センサの位置と向きを算出する機能を備えたロボットシステム
JP2015-203902 2015-10-15

Publications (2)

Publication Number Publication Date
DE102016012065A1 true DE102016012065A1 (de) 2017-04-20
DE102016012065B4 DE102016012065B4 (de) 2019-02-14

Family

ID=58456655

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016012065.7A Active DE102016012065B4 (de) 2015-10-15 2016-10-07 Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors

Country Status (4)

Country Link
US (1) US9937620B2 (de)
JP (1) JP6174654B2 (de)
CN (1) CN106584489B (de)
DE (1) DE102016012065B4 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018125841B4 (de) * 2017-10-27 2020-10-29 Fanuc Corporation Roboter, Robotersystem und Verfahren zum Festlegen eines Koordinatensystems eines Roboters
DE102018221127B4 (de) * 2017-12-14 2021-04-29 Fanuc Corporation Robotersystem
DE102018115279B4 (de) 2017-07-03 2022-03-10 Fanuc Corporation Roboter, der bei anwendungen, die eine konstante geschwindigkeit erfordern, eine lernende steuerung vornimmt, sowie steuerverfahren dafür
DE102019205890B4 (de) 2018-05-09 2022-11-10 Fanuc Corporation Steuerungssystem und Verfahren zum Steuern eines angetriebenen Körpers

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018126796A (ja) * 2017-02-06 2018-08-16 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP7223493B2 (ja) * 2017-05-19 2023-02-16 川崎重工業株式会社 ロボットシステム
EP3723949A1 (de) * 2017-12-11 2020-10-21 Genesis Robotics and Motion Technologies Canada, ULC Mehrachsiger roboter
JP7140508B2 (ja) 2018-02-26 2022-09-21 Ntn株式会社 パラレルリンク機構を用いた作業装置およびその制御方法
JP6950612B2 (ja) * 2018-03-30 2021-10-13 オムロン株式会社 センサ、情報処理装置、センサ制御方法、情報処理方法、プログラム、および記録媒体
JP6767436B2 (ja) 2018-07-06 2020-10-14 ファナック株式会社 自動機械及び制御装置
JP6836564B2 (ja) 2018-10-05 2021-03-03 ファナック株式会社 センサブラケットおよびロボットシステム
WO2020208826A1 (ja) * 2019-04-12 2020-10-15 株式会社ニコン ロボットシステム、エンドエフェクタシステム、エンドエフェクタユニット、及びアダプタ
JP6795775B1 (ja) * 2020-02-13 2020-12-02 富士通クライアントコンピューティング株式会社 スピーカ装置、回転制御プログラム、および情報処理システム
TWI742990B (zh) 2021-01-19 2021-10-11 財團法人工業技術研究院 機械手臂系統、其控制方法及其電腦程式產品
TW202237354A (zh) 2021-03-29 2022-10-01 日商發那科股份有限公司 控制裝置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4283214B2 (ja) 2004-12-16 2009-06-24 ファナック株式会社 機械先端点の制御装置
JP2013041478A (ja) 2011-08-17 2013-02-28 Fanuc Ltd 学習制御機能を備えたロボット

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07205068A (ja) * 1993-12-30 1995-08-08 Hitachi Constr Mach Co Ltd ロボットの座標系設定方法
JP4850956B2 (ja) * 2010-02-19 2012-01-11 ファナック株式会社 学習制御機能を備えたロボット
JP5382359B2 (ja) * 2010-04-28 2014-01-08 株式会社安川電機 ロボットシステム
JP5531182B2 (ja) * 2010-05-12 2014-06-25 株式会社アイディール 位置決め装置のキャリブレーション方法、位置決め装置、およびこれらのためのコンピュータプログラム
DE102010027248A1 (de) * 2010-07-15 2012-01-19 Sensodrive Gmbh Haltevorrichtung für ein Instrument
US8886359B2 (en) * 2011-05-17 2014-11-11 Fanuc Corporation Robot and spot welding robot with learning control function
JP5949242B2 (ja) * 2012-07-11 2016-07-06 セイコーエプソン株式会社 ロボットシステム、ロボット、ロボット制御装置、ロボット制御方法、およびロボット制御プログラム
JP6332899B2 (ja) * 2012-08-31 2018-05-30 セイコーエプソン株式会社 ロボット
JP6332900B2 (ja) * 2012-08-31 2018-05-30 セイコーエプソン株式会社 ロボットシステム及びロボット制御装置
JP6314426B2 (ja) * 2013-10-31 2018-04-25 セイコーエプソン株式会社 ロボット制御装置およびロボット制御方法
JP5815664B2 (ja) * 2013-12-26 2015-11-17 ファナック株式会社 無線加速度センサを有するロボットシステム
CN103968761A (zh) * 2014-05-28 2014-08-06 中科华赫(北京)科技有限责任公司 串联关节式机器人绝对定位误差校准方法及标定系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4283214B2 (ja) 2004-12-16 2009-06-24 ファナック株式会社 機械先端点の制御装置
JP2013041478A (ja) 2011-08-17 2013-02-28 Fanuc Ltd 学習制御機能を備えたロボット

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018115279B4 (de) 2017-07-03 2022-03-10 Fanuc Corporation Roboter, der bei anwendungen, die eine konstante geschwindigkeit erfordern, eine lernende steuerung vornimmt, sowie steuerverfahren dafür
DE102018125841B4 (de) * 2017-10-27 2020-10-29 Fanuc Corporation Roboter, Robotersystem und Verfahren zum Festlegen eines Koordinatensystems eines Roboters
US10935968B2 (en) 2017-10-27 2021-03-02 Fanuc Corporation Robot, robot system, and method for setting coordinate system of robot
DE102018221127B4 (de) * 2017-12-14 2021-04-29 Fanuc Corporation Robotersystem
US10994422B2 (en) 2017-12-14 2021-05-04 Fanuc Corporation Robot system for adjusting operation parameters
DE102019205890B4 (de) 2018-05-09 2022-11-10 Fanuc Corporation Steuerungssystem und Verfahren zum Steuern eines angetriebenen Körpers

Also Published As

Publication number Publication date
DE102016012065B4 (de) 2019-02-14
US20170106535A1 (en) 2017-04-20
CN106584489B (zh) 2018-11-30
US9937620B2 (en) 2018-04-10
JP6174654B2 (ja) 2017-08-02
JP2017074647A (ja) 2017-04-20
CN106584489A (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
DE102016012065B4 (de) Robotersystem mit Funktion zum Berechnen von Position und Ausrichtung eines Sensors
DE102018000467B4 (de) Robotersystem, das eine kraftgesteuerte Schiebevorrichtung umfasst
EP2954986B1 (de) Vorrichtung und Verfahren zum Steuern und Regeln eines Mehrkörpersystems
DE112016002797T5 (de) Kalibriervorrichtung und robotersystem, das eine solche verwendet
DE112013003209B4 (de) Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
DE102015107436B4 (de) Lernfähige Bahnsteuerung
DE102015004483B4 (de) Robotersteuerung und Robotersystem zum Bewegen eines Roboters als Reaktion auf eine Kraft
DE102019001948A1 (de) Steuerung und maschinelle Lernvorrichtung
DE102019101595B3 (de) Verfahren zum Ermitteln einer Gewichtskraft und eines Schwerpunktes einer Robotermanipulatorlast
DE102018200240B4 (de) Robotersteuerungsvorrichtung
DE102017005043A1 (de) Vorrichtung und Verfahren zum Erkennen einer Abnormalität eines Gelenks eines Parallelarmroboters
DE102006055917B4 (de) Industrieroboter und Verfahren zum Erkennen eines ungenau parametrierten Robotermodells
DE102015004481B4 (de) Robotersteuervorrichtung zum Steuern eines gemäß einer ausgeübten Kraft bewegten Roboters
EP1722197B1 (de) Verfahren und Vorrichtung zur Darstellung der Lage und des Bewegungszustands einer pendelfähigen Last
DE102016107397B4 (de) Bahnanzeigevorrichtung zur darstellung der bahn einer werkzeugachse
DE102013114372A1 (de) Laststand-anzeige für eine werkzeugmaschine
DE102010031248A1 (de) Verfahren zum Vermessen eines Roboterarms eines Industrieroboters
DE102017000063A1 (de) Robotereinrichtung mit Lernfunktion
DE102016119605A1 (de) Kalibrierungssystem und Kalibrierungsverfahren zur Kalibrierung der mechanischen Parameter des Handgelenksteils eines Roboters
DE102017001298A1 (de) Robotersimulationsvorrichtung, die einen überstrichenen Raum berechnet
EP3725472A1 (de) Verfahren zum ermitteln einer trajektorie eines roboters
DE102014118001A1 (de) Verfahren zur Bewegungssimulation eines Manipulators
DE112017007995T5 (de) Numerisches steuersystem und motorantriebssteuerung
DE102014014524A1 (de) Werkzeugbahnanzeigevorrichtung, mit einer Anzeigeeinheit für Bahndaten
DE102018114445B4 (de) Vorrichtung und Verfahren zur Einschätzung einer Position des Schwerpunkts eines Roboters

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final