-
Allgemeiner Stand der Technik
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine Vorrichtung, ein Verfahren, und ein Programm zur Schätzung des Gewichts und der Schwerpunktposition einer Last unter Verwendung eines Roboters.
-
Beschreibung des Stands der Technik
-
Gewöhnlich ist an dem Spitzenende eines beweglichen Abschnitts eines Roboters wie etwa eines Roboterarms oder dergleichen ein Objekt wie etwa eine Roboterhand oder ein Werkzeug (eine Last) angebracht, und ist es bei der Steuerung des Roboters mit einer guten Genauigkeit wichtig, das Gewicht und die Schwerpunktposition dieser Last zu kennen.
-
Als herkömmliche Technik im Zusammenhang damit sind eine Vorrichtung oder ein Verfahren zur Schätzung des Gewichts oder der Schwerpunktposition eines an einem Roboterarm angebrachten Objekts durch Berechnen unter Verwendung des Drehmoments des Roboterarms, an dem das Objekt angebracht ist, bekannt (siehe zum Beispiel die Patentoffenlegungsschrift Hei-03-142179, die Patentoffenlegungsschrift Hei-09-091004 und die Patentoffenlegungsschrift Hei-02-300644).
-
Als Verfahren zur Schätzung des Gewichts und der Schwerpunktposition eines an dem Spitzenende eines Roboters positionierten Objekts wie etwa eines Werkzeugs oder dergleichen ist ein Verfahren bekannt, wobei der Strom eines Motors, der eine Achse des Roboters antreibt, gemessen wird, wenn die Achse zur Drehung gebracht wurde, und das Gewicht der Last unter Verwendung einer Bewegungsgleichung berechnet wird. Aber wenn der Strom des Motors verwendet wird, ist es nötig, die auf die Achse wirkende Reibungskraft zu identifizieren, doch ist es im Allgemeinen schwierig, die Reibungskraft zu identifizieren, und treten leicht Fehler auf.
-
Es ist auch ein Verfahren denkbar, bei dem das Objekt an dem Roboter angebracht wird, nachdem das Gewicht und die Schwerkraftposition eines Objekts wie etwa eines Werkzeugs oder dergleichen vorab durch irgendein Mittel gemessen wurden, und die Messergebnisse durch einen Betreiber von Hand in eine Robotersteuervorrichtung oder dergleichen eingegeben/darin eingestellt werden, doch da es vorkommt, dass das Mittel zum Messen nicht leicht beschafft werden kann (die Messung der Schwerpunktposition ist besonders schwierig) oder sich nach der Anbringung des Werkzeugs an dem Roboter herausstellt, dass Informationen bezüglich des Gewichts und der Schwerpunktposition nötig sind, werden ein Verfahren und ein Mittel, wodurch das Gewicht und die Schwerpunktposition im Anbringungszustand des Objekts an dem Roboter geschätzt werden können, gewünscht.
-
Kurzdarstellung der Erfindung
-
Eine Form der vorliegenden Offenbarung ist eine Vorrichtung zur Schätzung des Gewichts eines Objekts, die einen Drehmomentsensor, der ein auf eine Achse, die einen beweglichen Abschnitt eines Roboters antreibt, wirkendes Drehmoment detektiert; und eine Recheneinheit, die unter Verwendung eines auf die Achse wirkenden ersten Drehmoments, das durch den Drehmomentsensor detektiert wurde, als sich das an dem beweglichen Abschnitt angebrachte Objekt in einer ersten Lage und an einer ersten Position befand, eines auf die Achse wirkenden zweiten Drehmoments, das durch den Drehmomentsensor detektiert wurde, als sich das Objekt in der ersten Lage und an einer von der ersten Position verschiedenen zweiten Position befand, der ersten Position, und der zweiten Position das Gewicht des Objekts berechnet, aufweist.
-
Eine andere Form der vorliegenden Offenbarung ist eine Vorrichtung zur Schätzung der Schwerpunktposition eines Objekts, die einen Drehmomentsensor, der ein auf eine Achse, die einen beweglichen Abschnitt eines Roboters antreibt, wirkendes Drehmoment detektiert; und eine Recheneinheit, die unter Verwendung eines auf die Achse wirkenden ersten Drehmoments, zweiten Drehmoments und dritten Drehmoments, das jeweils durch den Drehmomentsensor detektiert wurde, als sich das an dem beweglichen Abschnitt angebrachte Objekt in drei voneinander verschiedenen Lagen befand, und einer ersten Position und Lage des beweglichen Abschnitts, als das erste Drehmoment detektiert wurde, einer zweiten Position und Lage des beweglichen Abschnitts, als das zweite Drehmoment detektiert wurde, und einer dritten Position und Lage des beweglichen Abschnitts, als das dritte Drehmoment detektiert wurde, die Schwerpunktposition des Objekts berechnet, aufweist.
-
Noch eine andere Form der vorliegenden Offenbarung ist ein Verfahren zur Schätzung des Gewichts eines Objekts, das das Anbringen des Objekts an einem beweglichen Abschnitt eines Roboters, der einen Drehmomentsensor aufweist; das Detektieren eines ersten Drehmoments, das auf eine Achse, die den beweglichen Abschnitt antreibt, wirkt, wenn sich das Objekt in einer ersten Lage und an einer ersten Position befindet, durch den Drehmomentsensor; das Detektieren eines zweiten Drehmoments, das auf die Achse wirkt, wenn sich das Objekt in der ersten Lage und an einer von der ersten Position verschiedenen zweiten Position befindet, durch den Drehmomentsensor; und das Berechnen des Gewichts des Objekts unter Verwendung des ersten Drehmoments, des zweiten Drehmoments, der ersten Position, und der zweiten Position umfasst.
-
Noch eine andere Form der vorliegenden Offenbarung ist ein Verfahren zur Schätzung der Schwerpunktposition eines Objekts, das das Anbringen des Objekts, dessen Gewicht bereits bekannt ist, an einem beweglichen Abschnitt eines Roboters, der einen Drehmomentsensor aufweist; das Detektieren eines ersten Drehmoments, zweiten Drehmoments und dritten Drehmoments, das auf eine Achse, die den beweglichen Abschnitt antreibt, wirkt, wenn sich das Objekt jeweils in drei voneinander verschiedenen Lagen befindet, durch den Drehmomentsensor; und das Berechnen der Schwerpunktposition des Objekts unter Verwendung des ersten Drehmoments, des zweiten Drehmoments, des dritten Drehmoments, einer ersten Position und Lage des beweglichen Abschnitts, als das erste Drehmoment detektiert wurde, einer zweiten Position und Lage des beweglichen Abschnitts, als das zweite Drehmoment detektiert wurde, und einer dritten Position und Lage des beweglichen Abschnitts, als das dritte Drehmoment detektiert wurde, umfasst.
-
Figurenliste
-
Die Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden durch die nachstehende Erklärung von Ausführungsformen in Verbindung mit den beiliegenden Zeichnungen noch klarer werden. In den Zeichnungen
- zeigt 1 ein Aufbaubeispiel für eine Schätzvorrichtung nach einer idealen Ausführungsform;
- zeigt 2 beispielhaft den Zustand, wenn sich ein Objekt bei der Schätzung des Gewichts des Objekts in einer ersten Lage und an einer ersten Position befindet;
- zeigt 3 beispielhaft den Zustand, wenn sich das Objekt bei der Schätzung des Gewichts des Objekts in der ersten Lage und an einer zweiten Position befindet;
- zeigt 4 beispielhaft den Zustand, in dem das Objekt bei der Schätzung der Schwerpunktposition des Objekts die erste Lage zeigt; und
- zeigt 5 beispielhaft den Zustand, in dem das Objekt bei der Schätzung der Schwerpunktposition des Objekts die zweite Lage zeigt.
-
Ausführliche Erklärung
-
1 zeigt ein schematisches Aufbaubeispiel eines Robotersystems 10, das eine Schätzvorrichtung nach einer idealen Ausführungsform umfasst. Die Schätzvorrichtung weist einen Drehmomentsensor 18 auf, der das auf eine Achse 16, die einen beweglichen Abschnitt 12 eines Roboters 14 antreibt, wirkende Drehmoment detektiert. Der Roboter 14 kann einen beliebigen Aufbau aufweisen, solange er den beweglichen Abschnitt 12 aufweist, der die nachstehend beschriebenen Bewegungen vornehmen kann, doch handelt es sich bei dem gezeigten Beispiel um einen sechsachsigen Knickarmroboter, der einen Basisabschnitt 20, der an einer bestimmten Stelle eingerichtet wird, einen Drehrumpf 22, der sich in Bezug auf den Basisabschnitt 20 um eine ungefähr vertikal gerichtete Achsenlinie drehen kann, einen Oberarm 24, der in Bezug auf den Drehrumpf 22 drehbar angebracht ist, einen Vorderarm 26, der in Bezug auf den Oberarm 24 drehbar angebracht ist, und einen Handgelenkabschnitt 28, der in Bezug auf den Vorderarm 26 drehbar angebracht ist, aufweist.
-
Die Schätzvorrichtung weist eine Recheneinheit 32 auf, die bei der Verwendung zur Schätzung des Gewichts eines Objekts das Gewicht des Objekts 30 unter Verwendung eines auf die Achse 16 wirkenden ersten Drehmoments, das durch den Drehmomentsensor 18 detektiert wurde, als sich das an dem beweglichen Abschnitt 12 (hier dem Handgelenkabschnitt 28, der einem Spitzenende des beweglichen Abschnitts entspricht) angebrachte Objekt 30 in einer ersten Lage und an einer ersten Position befand, eines auf die Achse 16 wirkenden zweiten Drehmoments, das durch den Drehmomentsensor 18 detektiert wurde, als sich das Objekt 30 in der ersten Lage und an einer von der ersten Position verschiedenen zweiten Position befand, der ersten Position, und der zweiten Position berechnet. Die Schätzvorrichtung kann ferner eine Speichereinheit 34 wie etwa einen Speicher aufweisen, um Daten, die die Recheneinheit 32 verwendet, Berechnungsergebnisse, und dergleichen zu speichern.
-
Wenn die Schätzvorrichtung zur Schätzung der Schwerpunktposition eines Objekts verwendet wird, berechnet die Recheneinheit 32 der Schätzvorrichtung die Schwerpunktposition des Objekts 30 unter Verwendung eines auf die Achse 16 wirkenden ersten Drehmoments, zweiten Drehmoments und dritten Drehmoments, das jeweils durch den Drehmomentsensor 18 detektiert wurde, als sich das an dem beweglichen Abschnitt 12 (hier dem Handgelenkabschnitt 28, der einem Spitzenende des beweglichen Abschnitts entspricht) angebrachte Objekt 30 in drei voneinander verschiedenen Lagen befand, und einer ersten Position und Lage des beweglichen Abschnitts 12, als das erste Drehmoment detektiert wurde, einer zweiten Position und Lage des beweglichen Abschnitts 12, als das zweite Drehmoment detektiert wurde, und einer dritten Position und Lage des beweglichen Abschnitts 12, als das dritte Drehmoment detektiert wurde.
-
Als konkretes Beispiel für das Objekt 30, dessen Gewicht bzw. Schwerpunktposition geschätzt werden soll, kann ein Endeffektor wie eine Roboterhand, ein Werkzeug, ein Schweißbrenner, ein Laserkopf, oder dergleichen, der an dem Spitzenende des beweglichen Abschnitts (hier dem Handgelenkabschnitt 28) angebracht werden kann, angeführt werden, der in der vorliegenden Offenbarung auch als Last bezeichnet wird. Folglich kann der Roboter 14 nach der Schätzung wenigstens eines aus dem Gewicht und der Schwerpunktposition der Last durch die nachstehend beschriebene Verarbeitung bestimmte Tätigkeiten wie etwa das Ergreifen oder Bearbeiten eines Werkstücks unter Verwendung des geschätzten Werts mit einer guten Genauigkeit vornehmen, ohne dass die Last von dem Roboter 14 abgenommen werden muss. Wenn auch das Gewicht oder die Schwerpunktposition einer Komponente oder eines Bearbeitungsobjekt (Werkstück), die oder das durch die Roboterhand oder dergleichen gehalten werden kann, geschätzt werden soll, kann diese(s) ebenfalls in das Objekt 30 aufgenommen werden.
-
Die Recheneinheit 32 weist wenigstens eines aus einer Funktion zur Berechnung des Gewichts des obigen Objekts 30 und einer Funktion zur Berechnung der Schwerpunktposition des Objekts 30 auf, und kann bei dem dargestellten Beispiel als Rechenverarbeitungsvorrichtung wie etwa ein Prozessor in eine Robotersteuervorrichtung 36, die den Betrieb des Roboters 14 steuert, aufgenommen werden. Oder die Funktion der Recheneinheit 32 kann von einem von der Robotersteuervorrichtung 36 gesonderten Rechner wie etwa einem Personal Computer (PC) übernommen werden, wobei die Robotersteuervorrichtung 36 und der Rechner wie etwa der PC in diesem Fall vorzugsweise drahtgebunden oder drahtlos kommunikationsfähig verbunden werden. Die Robotersteuervorrichtung 36 kann auch mit einer passenden Eingabeeinheit (nicht dargestellt) wie etwa einer Tastatur oder einem Touchpanel oder dergleichen versehen sein, damit ein Betreiber verschiedene Einstellungen vornehmen kann.
-
Die Aufbauelemente der Robotersteuervorrichtung 36 wie etwa die Recheneinheit 32 können auch als Software, um einen Prozessor wie etwa die CPU (zentrale Verarbeitungsvorrichtung) eines Computers arbeiten zu lassen, ausgeführt werden.
-
Oder sie können zum Beispiel auch als Hardware wie etwa ein Prozessor oder ein Speicher, die wenigstens einen Teil der Verarbeitungen dieser Software vornehmen kann, ausgeführt werden.
-
Erste Ausführungsform
-
Als erste Ausführungsform wird anschließend ein Verfahren (eine Verarbeitung) zur Schätzung des Gewichts eines Objekts unter Verwendung der Schätzvorrichtung erklärt. Zunächst wird wie in
2 gezeigt durch den Drehmomentsensor
18 das auf die Achse
16 wirkende Drehmoment (erstes Drehmoment
T1), wenn sich das an dem Handgelenkabschnitt
28 angebrachte Objekt
30 in einer ersten Lage an einer ersten Position
P1 befindet, detektiert. Dabei kommt zwischen dem ersten Drehmoment
T1 und dem Gewicht W des Objekts
30 die nachstehende Gleichung (1) zustande. In der Gleichung (1) ist
M1 das Drehmoment, das in dem Zustand von
2 (das heißt, der Position und Lage des beweglichen Abschnitts
12, als das erste Drehmoment
T1 detektiert wurde) auf die Achse
16 wirkt, wenn das Objekt
30 nicht vorhanden ist, und ist
d1 der Abstand zwischen einer vertikalen Linie
38, die in dem Zustand von
2 durch die Schwerpunktposition
G des Objekts
30 verläuft, und der Achse
16 in der waagerechten Richtung.
-
Dann wird wie in
3 gezeigt der Roboter
14 betrieben und das Objekt
30 in die gleiche Lage wie bei der ersten Position (das heißt, die erste Lage) und eine von der ersten Position verschiedene zweite Position bewegt und durch den Drehmomentsensor
18 das auf die Achse
16 wirkende Drehmoment (zweites Drehmoment
T2) detektiert. Dabei kommt zwischen dem zweiten Drehmoment
T2 und dem Gewicht
W des Objekts
30 die nachstehende Gleichung (2) zustande. In der Gleichung (2) ist
M2 das Drehmoment, das in dem Zustand von
3 (das heißt, der Position und Lage des beweglichen Abschnitts
12, als das zweite Drehmoment
T2 detektiert wurde) auf die Achse
16 wirkt, wenn das Objekt
30 nicht vorhanden ist, und ist
d2 der Abstand zwischen einer vertikalen Linie, die in dem Zustand von
3 durch die Schwerpunktposition
G des Objekts
30 verläuft, und der Achse
16 in der waagerechten Richtung.
-
Aus den Gleichungen (1) und (2) wird die nachstehende Gleichung (3) erhalten.
-
Da die Lage des Objekts
30 an der ersten Position und an der zweiten Position gleich ist, stimmen hier die waagerechte Bewegungsdistanz
D einer repräsentativen Position des beweglichen Abschnitts wie zum Beispiel etwa eines repräsentativen Werkzeugpunkts (hier des Handgelenkabschnitts
28, der dem Spitzenende des beweglichen Abschnitts entspricht), wenn sich das Objekt
30 von der ersten Position an die zweite Position bewegt hat, und die waagerechte Bewegungsdistanz der Schwerpunktposition
G des Objekts (
d2 -
d1) überein. Da die waagerechte Bewegungsdistanz
D des Handgelenkabschnitts
28 durch Verwenden des Bewegungsbefehls, der von der Robotersteuervorrichtung
36 an den Roboter
14 gesendet wurde, von Werten von Codierern, die an den einzelnen Achsen des Roboters
14 ausgebildet sind, und dergleichen leicht erkannt werden kann, wird durch Umformen der Gleichung (3) die nachstehende Gleichung (4) erhalten.
-
Hier können M1 und M2 vor oder nach der Detektion des ersten und des zweiten Drehmoments M1 und M2 unter Verwendung des Drehmomentsensors 18 in einem Zustand, in dem das Objekt 30 nicht an dem Roboter 14 angebracht ist, als auf die Achse 16 wirkende Drehmomente erlangt werden, oder können sie durch Vornehmen einer Berechnung unter Verwendung der Massen und Schwerkraftpositionen und dergleichen der einzelnen Abschnitte des Roboters 14 durch die Recheneinheit 32 oder dergleichen erlangt werden. Als konkretes Beispiel für den zweiten Fall kann das Newton-Euler-Verfahren angeführt werden.
-
Da somit die rechte Seite von Gleichung (4) zur Gänze bekannt ist, kann durch diese Gleichung das Gewicht W des Objekts
30 ermittelt werden. Bei der vorliegenden Ausführungsform wird angenommen, dass
d1 <
d2 gilt, doch bei Annahme von
d1 >
d2 ist es günstig, die nachstehende Gleichung (5) zu verwenden.
-
Wie aus Gleichung (5) erkennbar ist, genügt es für die Schätzung des Gewichts W des Objekts 30, wenn T1, T2, M1, M2 und D gegeben sind, es ist nicht nötig, d1 und d2 selbst zu ermitteln. Folglich kann das Gewicht W des Objekts 30 auch dann genau geschätzt werden, indem der Roboter 14 dazu gebracht wird, den oben beschriebenen Betrieb vorzunehmen, wenn die Schwerpunktposition G des Objekts unbekannt ist. Für die erste Position und die zweite Position bestehen keine wesentlichen Beschränkungen, doch ist die waagerechte Distanz D (d2 - d1) zwischen den beiden Positionen nicht null.
-
Bei der ersten Ausführungsform können das erste und das zweite Drehmoment unter jeweiligem Anhalten des Robotes 14 an der ersten Position und an der zweiten Position detektiert werden, doch ist es auch möglich, die Drehmomentwerte, die während einer Bewegung des beweglichen Abschnitts 12 des Roboters 14 mit einer konstanten Geschwindigkeit (das heißt, bei einer Beschleunigung des beweglichen Abschnitts 12 von null) zu zwei beliebigen Zeitpunkten (wobei die Lage des Objekts 30 jedoch gleich ist) detektiert wurden, als erstes und zweites Drehmoment anzusetzen. Der Grund dafür ist, dass in jedem Fall die oben beschriebenen Gleichungen (1) bis (5) zustande kommen.
-
Zweite Ausführungsform
-
Als zweite Ausführungsform wird anschließend ein Verfahren (eine Verarbeitung) zur Schätzung der Schwerpunktposition eines Objekts unter Verwendung der Schätzvorrichtung erklärt. Zunächst wird wie in
4 gezeigt durch den Drehmomentsensor
18 das auf die Achse
16 wirkende Drehmoment (erstes Drehmoment
T1), wenn sich das an dem Handgelenkabschnitt
28 angebrachte Objekt
30 in einer ersten Lage an einer ersten Position befindet, detektiert (gemessen). Dabei kommt zwischen dem ersten Drehmoment
T1 und dem Gewicht W des Objekts
30 die nachstehende Gleichung (6) zustande. In der Gleichung (6) ist
M1 das Drehmoment, das in dem Zustand von
4 (das heißt, der Position und der Lage des beweglichen Abschnitts
12, als das erste Drehmoment
T1 detektiert wurde) auf die Achse
16 wirkt, wenn das Objekt
30 nicht vorhanden ist, und ist
d1 der Abstand zwischen der vertikalen Linie
38, die in dem Zustand von
4 durch die Schwerpunktposition
G des Objekts
30 verläuft, und der Achse
16 in der waagerechten Richtung.
-
Dann wird wie in
5 gezeigt der Roboter
14 betrieben und das Objekt
30 so bewegt, dass es in eine von der ersten Lage verschiedene zweite Lage gelangt, und durch den Drehmomentsensor
18 das auf die Achse
16 wirkende Drehmoment (zweites Drehmoment
T2) detektiert (gemessen). Dabei kommt zwischen dem zweiten Drehmoment
T2 und dem Gewicht W des Objekts
30 die nachstehende Gleichung (7) zustande. In der Gleichung (7) ist
M2 das Drehmoment, das in dem Zustand von
5 (das heißt, der Position und der Lage des beweglichen Abschnitts
12, als das zweite Drehmoment
T2 detektiert wurde) auf die Achse
16 wirkt, wenn das Objekt
30 nicht vorhanden ist, und ist
d2 der Abstand zwischen der vertikalen Linie
38, die in dem Zustand von
5 durch die Schwerpunktposition G des Objekts
30 verläuft, und der Achse
16 in der waagerechten Richtung.
-
Aus den Gleichungen (6) und (7) wird die nachstehende Gleichung (8) erhalten.
-
Wenn eine waagerechte Bewegungsdistanz
D1 einer repräsentativen Position des beweglichen Abschnitts
12 wie zum Beispiel etwa eines repräsentativen Werkzeugpunkts (hier des Handgelenkabschnitts
28, der dem Spitzenende des beweglichen Abschnitts entspricht), eine Länge (
Px,
Py,
Pz)·
E1, wofür Koordinaten (
Px,
Py,
Pz), die die Schwerpunktposition
G des Objekts ausdrücken, in der ersten Lage auf die waagerechte Richtung projiziert wurden, und eine Länge (
Px,
Py,
Pz).
E2, wofür die Schwerpunktposition (
Px,
Py,
Pz) des Objekts in der zweiten Lage auf die waagerechte Richtung projiziert wurden, verwendet werden, wird (
d2 -
d1) durch die folgende Gleichung (9) ausgedrückt. In der Gleichung (9) ist „.“ das Skalarprodukt, und sind
E1 und
E2 jeweils Einheitsvektoren von waagerecht gerichteten Vektoren in einem an dem Spitzenende des beweglichen Abschnitts (hier dem Handgelenkabschnitt) definierten Spitzenend-Koordinatensystems
40 für die erste und die zweite Lage, die jeweils durch Verwenden des Bewegungsbefehls, der von der Robotersteuervorrichtung
36 an den Roboter
14 gesendet wurde, der Werte der Codierer, die an den einzelnen Achsen des Roboters
14 ausgebildet sind, und dergleichen leicht ermittelt werden können. Beispielsweise wird bei dem Beispiel von
4 E1 = (1, 0, 0) und bei dem Beispiel von
5 E2 = (1/√2, 0, 1/√2) (das Spitzenend-Koordinatensystem
45 ist um 45 ° um die Y-Achse gedreht) . Bei der zweiten Ausführungsform wird angenommen, dass das an dem Handgelenkabschnitt oder dergleichen definierte Spitzenend-Koordinatensystem
40 und die relative Positionsbeziehung mit dem Objekt
30 bekannt sind, was auch für die erste Ausführungsform gilt.
-
Aus den Gleichungen (8) und (9) wird die nachstehende Gleichung (10) erhalten.
-
Als nächstes wird der Roboter
14 betrieben und das Objekt
30 so bewegt, dass es in eine von der ersten Lage und der zweiten Lage verschiedene dritte Lage gelangt, und durch den Drehmomentsensor
18 das auf die Achse
16 wirkende Drehmoment (drittes Drehmoment
T3) detektiert (gemessen). Dabei kommt zwischen dem dritten Drehmoment
T3 und dem Gewicht W des Objekts
30 die nachstehende Gleichung (11) zustande. In der Gleichung (11) ist
M3 das Drehmoment, das in der Position und der Lage des beweglichen Abschnitts, als das dritte Drehmoment
T3 detektiert wurde, auf die Achse
16 wirkt, wenn das Objekt
30 nicht vorhanden ist, und ist
d3 der Abstand zwischen der vertikalen Linie
38, die in der gleichen Position und Lage des beweglichen Abschnitts wie bei der Messung des dritten Drehmoments
T3 durch die Schwerpunktposition
G des Objekts
30 verläuft, und der Achse
16 in der waagerechten Richtung.
-
Durch die gleiche Verarbeitung wie bei der Erklärung in Bezug auf die Gleichungen (8) bis (10) werden die nachstehenden Gleichungen (12) und (13) erhalten. Das heißt, während die Gleichung (10) eine Gleichung ist, die durch die Beziehung der ersten Lage und der zweiten Lage erhalten wurde, ist die Gleichung (12) eine Gleichung, die durch die Beziehung der zweiten Lage und der dritten Lage erhalten wurde. Die Gleichung (13) ist eine Gleichung, die durch die Beziehung der dritten Lage und der ersten Lage erhalten wurde.
E3 ist der Einheitsvektor des waagerecht gerichteten Vektors in dem an dem Spitzenende des beweglichen Abschnitts (hier dem Handgelenkabschnitt) definierten Spitzenend-Koordinatensystems
40 für die dritte Lage, der so wie
E1 oder
E2 durch Verwenden des Bewegungsbefehls, der von der Robotersteuervorrichtung
36 an den Roboter
14 gesendet wurde, der Werte der Codierer, die an den einzelnen Achsen des Roboters
14 ausgebildet sind, und dergleichen leicht ermittelt werden kann.
-
Die waagerechte Bewegungsdistanz D1 bis D3 des Handgelenkabschnitts 28 kann durch Verwenden des Bewegungsbefehls, der von der Robotersteuervorrichtung 36 an den Roboter 14 gesendet wurde, der Werte der Codierer, die an den einzelnen Achsen des Roboters 14 ausgebildet sind, und dergleichen leicht erkannt werden. M1 bis M3 können vor oder nach der Detektion des ersten und bis dritten Drehmoments unter Verwendung des Drehmomentsensors 18 in einem Zustand, in dem das Objekt 30 nicht an dem Roboter 14 angebracht ist, als auf die Achse 16 wirkende Drehmomente erlangt werden, oder sie können durch Vornehmen einer Berechnung unter Verwendung der Massen und Schwerkraftpositionen und dergleichen der einzelnen Abschnitte des Roboters 14 durch die Recheneinheit 32 oder dergleichen erlangt werden. Als konkretes Beispiel für den zweiten Fall kann das Newton-Euler-Verfahren angeführt werden.
-
Durch die oben beschriebene Verarbeitung werden in Bezug auf die drei Unbekannten (
Px,
Py,
Pz) drei Gleichungen (10), (12) und (13) erhalten. Folglich ist es durch Lösen dieser Gleichungen als Simultangleichungen möglich, die Schwerpunktposition (
Px,
Py,
Pz) des Objekts
30 zu ermitteln. Wenn die obigen Gleichungen (10), (11) und (13) generalisiert werden, entsteht die nachstehende Gleichung (14). Hier sind i und j jeweils ganze Zahlen von wenigstens
1, und entspricht ihre obere Grenze der Anzahl von Lagen, die das Objekt
30 durch den Betrieb des Roboters
30 zeigen kann.
-
Wie aus den Gleichungen (10), (12) und (13) erkennbar ist, genügt es für die Schätzung der Schwerkraftposition des Objekts 30, wenn T1 bis T3, M1 bis M3, E1 bis E3, D1 bis D3 und W gegeben sind. Folglich kann die Schwerkraftposition (die Koordinaten) des Objekts dann, wenn das Gewicht des Objekts bekannt ist, genau geschätzt werden, indem der Roboter 14 dazu gebracht wird, den oben beschriebenen Betrieb vorzunehmen. Beschränkungsbedingungen dabei sind, dass die waagerechte Distanz D1 bis D3 zwischen zwei Positionen nicht null ist, nicht E1x = E2x = E3x besteht, nicht E1y = E2y = E3y besteht, sowie nicht E1z = E2z = E3z besteht. Es wird jedoch angesetzt, dass E1 = (E1x, E1y, E1z) ist, E2 = (E2x, E2y, E2z) ist, und E3 = (E3x, E3y, E3z) ist.
-
Außerdem können das erste und das zweite Drehmoment bei der zweiten Ausführungsform unter jeweiligem Anhalten des Roboters 14 an der ersten bis dritten Position detektiert werden, doch ist es auch möglich, die Drehmomentwerte, die während einer Bewegung des beweglichen Abschnitts 12 des Roboters 14 mit einer konstanten Geschwindigkeit (zum Beispiel ist die Winkelgeschwindigkeit konstant) zu drei beliebigen Zeitpunkten detektiert wurden, jeweils als erstes und zweites Drehmoment anzusetzen. Der Grund dafür ist, dass in jedem Fall die oben beschriebenen Gleichungen (6) bis (14) zustande kommen.
-
Die erste Ausführungsform und die zweite Ausführungsform können jeweils einzeln durchgeführt werden, doch können beide Ausführungsformen auch fortlaufend durchgeführt werden. Das heißt, zuerst kann durch die bei der ersten Ausführungsform erklärte Verarbeitung das Gewicht W des Objekts geschätzt werden, und dann unter Verwendung des geschätzten Gewichts W durch die bei der zweiten Ausführungsform erklärte Verarbeitung die Schwerpunktposition G des Objekts geschätzt werden. Da in diesem Fall die zweite Position und Lage bei der ersten Ausführungsform (3) als erste Position und Lage bei der zweiten Ausführungsform (4) behandelt werden kann, ist es im Fall einer fortlaufenden Durchführung der beiden Ausführungsformen möglich, die Anzahl der Bewegungen des Roboters gegenüber einer jeweils einzelnen Durchführung zu verringern.
-
Für den Drehmomentsensor 18 bei der ersten und der zweiten Ausführungsform können verschiedene Drehmomentsensoren, die das Drehmoment, das auf eine bestimmte Achse wird, detektieren (messen) können, wie etwa ein Sensor vom kontaktlosen (magnetostriktiven) Typ oder ein Sensor vom Kontakttyp (ein Schleifring), oder dergleichen benutzt werden. Da das durch den Drehmomentsensor detektierte „auf die Achse wirkende Drehmoment“ (der Drehmomentdetektionswert) bei der vorliegenden Offenbarung einem Wert entspricht, für den der Einfluss durch Reibung oder dergleichen von dem Drehmoment des Motors, der die einzelnen Achsen des Roboters antreibt, abgerechnet wurde (oder zu dem der Einfluss der Schwerkraft hinzugefügt wurde), ist es durch die Verwendung des Drehmomentsensors möglich, das Gewicht oder die Schwerpunktposition des Objekts wenigstens mit einer für die Praxis ausreichend hohen Genauigkeit zu schätzen, ohne eine Schätzung/Identifikation der Reibung, die im Allgemeinen als schwierig und von geringer Genauigkeit angesehen wird, vorzunehmen. Es wird jedoch verlangt, dass der Drehmomentsensor 18 das Drehmoment in der Schwerkraftrichtung detektieren kann und durch den beweglichen Abschnitt des Roboters, der sich weiter als der Drehmomentsensor 18 auf Seiten des Spitzenendes befindet, ein Betrieb zur Messung des Gewichts (eine Bewegung des Objekts an zwei Positionen mit gleicher Lage) oder ein Betrieb zur Messung der Schwerkraftposition (eine Bewegung des Objekts an drei Positionen mit unterschiedlicher Lage) ausgeführt werden kann. Folglich detektiert der Drehmomentsensor 18 zum Beispiel bei den oben beschriebenen Ausführungsformen das auf die Antriebsachse 16 des Oberarms 24 wirkende Drehmoment, doch wenn die oben angeführten Betriebe nur durch den Vorderarm 26 und den Handgelenkabschnitt 28 durchgeführt werden können, kann auch ein Drehmomentsensor verwendet werden, der das auf eine Antriebsachse 42 des Vorderarms 26 (siehe 1) wirkende Drehmoment detektiert.
-
Oder für den Drehmomentsensor kann auch ein sechsachsiger Kraftsensor (Drehmomentsensor) 44 (1), der zum Beispiel im Inneren oder im unteren Bereich des Basisabschnitts 20 des Roboters 14 ausgebildet ist, verwendet werden. Wenn ein solcher Drehmomentsensor 44 verwendet wird, können die auf den Roboter 14 wirkenden Drehmomente von zwei zueinander orthogonalen waagerecht gerichteten Achsen gemessen werden und zum Beispiel bei der Schätzung der Schwerkraftposition (zweite Ausführungsform) für die jeweiligen Richtungen wie durch die Gleichungen (10), (12) und (13) ausgedrückte Simultangleichungen (das heißt, zwei Gruppen von Gleichungen (insgesamt sechs)) erhalten werden. In diesem Fall kommt es vor, dass sich die Lösungen (die Schwerkraftposition) der beiden Gruppen von Simultangleichungen unterscheiden, doch kann die Schätzungsgenauigkeit durch Verwenden des Durchschnitts dieser Lösungen oder dergleichen noch weiter erhöht werden. Da der Umstand, dass bei der vorliegenden Offenbarung auf diese Weise mehr Gleichungen als die Mindestanzahl an Gleichungen für die Ermittlung der Unbekannten erhalten werden, bedeutet, dass die Menge an Informationen für die Schätzung größer wird, kann die Schätzungsgenauigkeit durch Benutzen des Durchschnittswerts oder der Methoden der kleinsten Quadrate erhöht werden.
-
Wenn bei dem Roboter 14 der oben beschriebene sechsachsige Drehmomentsensor 44 oder ein an der Außenfläche des Roboters 14 ausgebildeter Kontaktsensor (nicht dargestellt) oder dergleichen verwendet wird, kann der Roboter 14 mit der Fähigkeit zur Detektion eines Kontakts mit Personen oder Umgebungsobjekten versehen werden. Ein Roboter, der eine solche Kontaktdetektionsfähigkeit aufweist, kann als kooperativer Roboter, der über einen gemeinsamen Arbeitsbereich mit Personen verfügt, verwendet werden, doch wenn die Genauigkeit der Kontaktdetektion gering ist, kann es zu Anomalien wie einem häufigen Notstopp durch eine Fehldetektion des Roboters kommen. Doch da das Gewicht oder die Schwerkraftposition eines Objekts durch die vorliegende Offenbarung genau geschätzt werden kann, wird es durch Subtrahieren des Drehmoments durch das Gewicht und des Trägheitsmoments des Roboters sowie des Drehmoments durch das Gewicht und des Trägheitsmoments der an dem beweglichen Abschnitt angebrachten Last von dem durch den Drehmomentsensor detektierten Drehmomentwert möglich, eine auf den Roboter wirkende externe Kraft genau zu schätzen.
-
Bei der vorliegenden Offenbarung kann ein Programm, um einen Roboter und eine Rechenverarbeitungsvorrichtung, die in Verbindung mit dem Roboter verwendet wird, wie etwa die Schätzvorrichtung zur Ausführung der oben beschriebenen Verarbeitungen zu bringen, in der Speichereinheit der Schätzvorrichtung oder einer anderen Speichervorrichtung gespeichert werden. Oder das Programm kann auch als computerlesbares Speichermedium (CD-ROM, USB-Speicher, oder dergleichen), worauf dieses Programm gespeichert wurde, geliefert werden.
-
Durch die vorliegende Offenbarung kann wenigstens eines aus dem Gewicht und der Schwerkraftposition eines Objekts in einem Zustand, in dem das Objekt an dem Roboter angebracht ist, durch einen einfachen Betrieb des Roboters mit einer hohen Genauigkeit geschätzt werden.