-
Hintergrund
-
[Technisches Gebiet]
-
Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zur Einschätzung einer Position des Schwerpunkts bei einer Last, die an dem Armende eines Roboters angebracht ist, und insbesondere die Vorrichtung und das Verfahren, die vorzugsweise an einem Industrieroboter mit einem horizontalen vier-achsigen Aufbau angewendet werden können.
-
[Verwandte Technik]
-
Es ist eine herkömmliche Technik zum Einschätzen der Position des Schwerpunkts eines Werkstücks, bekannt, dass durch das Ende eines Armes eines vertikalen sechs-achsigen Roboterarms gehalten wird. Diese Technik ist beispielsweise in dem japanischen Patent
JP 5327722 vorgeschlagen.
-
Bei dem Aufbau des vertikalen sechs-achsigen Roboterarms kann die fünfte Achse aktiviert werden, um einen Zustand zu ändern, bei dem eine Schwerkraft auf ein Werkstück wirkt. Dadurch ist es möglich, die Position des Schwerpunkts des Werkstücks einzuschätzen. Die zuvor genannte Einschätzungstechnik, die in dem japanischen Patent
JP 5327722 vorgeschlagen ist, basiert auf der Verwendung einer solchen Änderungstechnik unter Verwendung der fünften Achse, allerdings kann diese Einschätzungstechnik nicht in Robotern verwendet werden, die Roboter mit einem horizontalen vier-achsigen Aufbau sind, aufgrund der Tatsache, dass der Zustand, bei dem eine Schwerkraft auf ein Werkstück wirkt, nicht geändert werden kann.
-
Kurzfassung
-
Im Hinblick auf diesen Nachteil ist es daher gewünscht, ein Verfahren und eine Vorrichtung zu schaffen, welche die Position des Schwerpunkts einer Last, die an dem Ende eines Arms eines Roboters mit einem horizontalen vier-achsigen Aufbaus angebracht ist, einschätzen können.
-
Als eine beispielgebende Ausführungsform gemäß der Offenbarung wird eine Vorrichtung zum Einschätzen einer Position des Schwerpunkts einer Last, die einen Roboter belastet, vorgeschlagen, wobei der Roboter mit einem Roboterarm ausgestattet ist, der horizontal angetrieben wird, und der Roboter vier Achsen umfasst, die als erste bis vierte Achse angeordnet sind, und ein Ende aufweist, das mit der Last belastet ist. Die Vorrichtung ist ausgestattet mit: einer ersten Beschleunigungserlangungseinheit, die dazu ausgestaltet ist, eine Beschleunigung zu erlangen, die während beschleunigten und verzögerten Intervallen einer ersten Betriebsdauer erzeugt werden, in der die zweite Achse derart angetrieben wird, dass sich der Roboterarm von einer ersten Ausgangsposition zu einer ersten Einschätzungsposition bewegt und von der ersten Einschätzungsposition zu der ersten Ausgangsposition zurückkehrt, an der zweiten Achse erzeugt wird, wobei während der ersten Betriebsdauer für die Last eine bekannte Masse gegeben ist, die vierte Achse an einem ersten Winkel θa positioniert ist, und die erste, dritte und vierte Achse zwischen der ersten Ausgangs- und Einschätzungsposition an denselben Positionen sind; einer ersten Drehmomentansammlungseinheit, die dazu ausgestaltet ist, ein Beschleunigungsmoment, das an der vierten Achse während des beschleunigten Intervalls erzeugt wird, und ein Verzögerungsmoment, das an der vierten Achse während des verzögerten Intervalls erzeugt wird, zu erlangen; einer ersten Trägheitsberechnungseinheit, die dazu ausgestaltet ist, eine Trägheit τI4a , die um die vierte Achse erzeugt wird, basierend auf der Beschleunigung sowohl in den beschleunigten als auch in den verzögerten Intervallen, dem Beschleunigungsmoment und dem Verzögerungsmoment zu berechnen; einer zweiten Beschleunigungserlangungseinheit, die dazu ausgestaltet ist, eine Beschleunigung zu erlangen, die während beschleunigten und verzögerten Intervallen einer zweiten Betriebsdauer, in der die zweite Achse ebenfalls derart angetrieben wird, dass sich der Roboterarm von einer zweiten Ausgangsposition zu einer zweiten Einschätzungsposition bewegt und von der zweiten Einschätzungsposition zu der zweiten Ausgangsposition zurückkehrt, an der zweiten Achse erzeugt wird, wobei während der zweiten Betriebsdauer für die Last dieselbe bekannte Masse gegeben ist, die vierte Achse an einem zweiten Winkel θb (≠θa) positioniert ist, und die erste, dritte und vierte Achse zwischen der zweiten Ausgangs- und Einschätzungsposition an denselben Positionen sind; einer zweiten Drehmomentansammlungseinheit, die dazu ausgestaltet ist, ein Beschleunigungsmoment, das an der vierten Achse während des Beschleunigungsintervalls erzeugt wird, und ein Verzögerungsmoment, das an der vierten Achse während dem Verzögerungsintervall erzeugt wird, in der zweiten Betriebsdauer zu erlangen; einer zweiten Trägheitsberechnungseinheit, die dazu ausgestaltet ist, eine Trägheit τI4b , die um die vierte Achse erzeugt wird, basierend auf der Beschleunigung sowohl in den beschleunigten als auch in den verzögerten Intervallen dem Beschleunigungsmoment und dem Verzögerungsmoment in der zweiten Betriebsdauer zu berechnen; einer dritten Beschleunigungserlangungseinheit, die dazu ausgestaltet ist, eine Beschleunigung zu erlangen, die während beschleunigten und verzögerten Intervallen einer dritten Betriebsdauer, in der die zweite Achse ebenfalls derart angetrieben wird, dass sich der Roboterarm einer dritten Ausgangsposition zu einer dritten Einschätzungsposition bewegt und von der dritten Einschätzungsposition zu der dritten Ausgangsposition zurückkehrt, an der zweiten Achse erzeugt wird, wobei während der dritten Betriebsdauer für die Last dieselbe bekannte Masse gegeben ist, die vierte Achse in einem dritten Winkel θc (≠θa, θb) positioniert ist, und die erste, dritte und vierte Achse zwischen der dritten Ausgangs- und Einschätzungsposition an denselben Positionen sind; einer dritten Momentansammlungseinheit, die dazu ausgestaltet ist, ein Beschleunigungsmoment, das an der vierten Achse während des beschleunigten Intervalls erzeugt wird, und ein Verzögerungsmoment, das an der vierten Achse während des verzögerten Intervalls erzeugt wird, in der dritten Betriebsdauer zu erlangen; einer dritten Trägheitsberechnungseinheit, die dazu ausgestaltet ist, eine Trägheit τI4c , die um die vierte Achse erzeugt wird, basierend auf der Beschleunigung sowohl in den beschleunigten als auch verzögerten Intervallen, dem Beschleunigungsmoment und dem Verzögerungsmoment in der dritten Betriebsdauer zu berechnen; und einer Schwerpunktberechnungseinheit, die dazu ausgestaltet ist, eine Position eines Schwerpunkts der Last in einer Ebene basierend auf einem Abstand von der vierten Achse zu der Last, einer Richtung von dem Schwerpunkt zu der vierten Achse, Beträgen der berechneten Trägheit τI4a , τI4b und τI4c und dem ersten bis vierten Winkel θc , θa und θb der vierten Achse zu berechnen.
-
Somit ist es selbst bei dem horizontalen vier-achsigen Industrieroboter möglich, durch einfachere Einschätzungsvorgänge eine Position des Schwerpunkts einer Last, durch die der Roboter in einer Endeffektor-Koordinatenebene belastet wird, einzuschätzen. Dadurch kann diese Positionsinformation in einer Steuerung des Roboterarms wiedergespiegelt werden, wodurch die Armsteuerung auf eine zuverlässigere und präzisere Weise durchgeführt werden kann, selbst wenn Lasten, mit denen der Roboter belastet wird, undefinierte Formen oder unregelmäßige Dichten aufweisen.
-
Es wird bevorzugt, dass bei dem zuvor genannten Aufbau die erste bis dritte Beschleunigungserlangungseinheit als den ersten bis dritten Winkel θc , θa und θb der vierten Achse 0 Grad, 90 Grad und -90 Grad in einem Koordinatensatz für einen Endeffektor bzw. Greifer, der die Last hält, einstellt. Dieser Aufbau ergibt demzufolge eine einfachere und leichtere Beschleunigungserlangung, während ein Berechnungsaufwand, der durch einen Controller oder einen Rechner durchgeführt wird, verringert ist.
-
Es ist ebenso bevorzugt, dass der Roboter an einem Ende, an dem die erste Achse bereitgestellt ist, eine Basis aufweist, wobei eine Basiskoordinate zu der Basis eingestellt ist und eine Z-Achsenrichtung entlang einer Höhenrichtung aufweist; die dritte Achse bereitgestellt ist, um einen zweiten und dritten Arm zu verbinden, die einen Teil des Roboterarms bilden; und jede von der ersten bis zur dritten Beschleunigungserlangungseinheit dazu ausgestaltet ist, die Beschleunigung und Verzögerung mit der dritten Achse in einem Zustand zu berechnen, bei dem die dritte Achse zu einer obersten Position in der Höhenrichtung angetrieben wird. Durch diesen Aufbau kann verhindert werden, dass sich Vibrationen oder schwankenden Bewegungen einer dritten Verbindung, durch welche die dritte Achse realisiert ist, auf die Last übertragen, welche nun Gegenstand der Einschätzung ist, wodurch es möglich wird, eine Positionseinschätzung des Schwerpunkts in einer noch zuverlässigeren Weise durchzuführen.
-
Als eine andere beispielgebende Ausführungsform gemäß dieser Offenbarung wird ein Verfahren zum Einschätzen einer Position des Schwerpunkts einer Last, durch die ein Roboter belastet ist, vorgeschlagen, das ähnliche Merkmale, wie sie oben stehend beschrieben sind, aufweist.
-
Figurenliste
-
In den begleitenden Zeichnungen zeigen:
- 1 ein Flussdiagramm, das einen Teil des Ablaufs erklärt, wie die Position des Schwerpunkts eines Werkstücks, das an dem Ende eines Roboters mit einem horizontalen vier-achsigen Aufbau angebracht ist, gemäß einer Ausführungsform eingeschätzt wird;
- 2 ist ein Flussdiagramm, das den verbleibenden Teil des Ablaufs erklärt, wie die Position des Schwerpunkts des Werkstücks eingeschätzt wird;
- 3 ist eine Darstellung, die erklärt, wie sich der Arm unter Verwendung eines vier-achsigen Armmodells während der ersten Betriebsdauer verhält;
- 4 ist ein Graph, der eine Geschwindigkeitswellenform der zweiten Achse zeigt;
- 5 ist ein Graph, der eine Beschleunigungswellenform der zweiten Achse zeigt;
- 6 ist ein Graph, der eine Drehmomentwellenform an der vierten Achse zeigt;
- 7 ist eine Erklärung, die unter Verwendung des vier-achsigen Armmodells erklärt, wie sich der Arm während der zweiten Bewegungsdauer verhält;
- 8 ist eine Darstellung, die unter Verwendung des vier-achsigen Armmodells erklärt, wie sich der Arm während der dritten Bewegungsdauer verhält;
- 9 ist ein perspektivisches Diagramm, das ein Industrierobotersystem schematisch darstellt; und
- 10 ist eine Darstellung, die das vier-achsige Armmodell zeigt.
-
Ausführliche Beschreibung der bevorzugten Ausführungsformen
-
Nachstehend wird mit Bezug auf die 1 bis 10 eine bevorzugte Ausführungsform beschrieben, die einer Vorrichtung und einem Verfahren zum Einschätzen der Position des Schwerpunkts einer Last, die an dem Armende eines Industrieroboters angebracht ist, entspricht.
-
Zunächst wird unter Verwendung von 9 ein Gesamtsystem beschrieben. 9 zeigt einen Systemaufbau eines üblicherweise verwendeten Industrieroboters, indem ein Robotersystem 1 bereitgestellt ist. Dieses Robotersystem 1 ist mit einem Industrieroboter 2, einem Controller 3, der Bewegungen des Roboters 2 steuert, und einem Programmiergerät bzw. Bediengerät 4, das mit dem Controller 3 kommunikationsfähig verbunden ist, ausgestattet. Der Controller 3 kann als eine Steuervorrichtung und eine Einschätzvorrichtung zum Einschätzen eines Schwerpunkts einer Last, die an dem Roboter 2 angebracht ist, dienen.
-
Der Roboter 2 ist beispielsweise als ein vier-achsiger horizontaler, mehrgelenkiger Roboter ausgestaltet und er ist mit einer Basis 5, die an einer Installationsoberfläche, beispielsweise einem Boden, fest angebracht ist, einem ersten Arm 6, der auf der Basis 5 drehbar aufbaut, einem zweiten Arm 7, der mit dem ersten Arm 6 gekoppelt ist, und einer Welle 8, die mit dem zweiten Arm 7 verbunden ist, ausgestattet. Zu der Basis 5 ist, wie in 9 gezeigt, eine dreidimensionale Basiskoordinate XTZ eingestellt, in welcher die Z-Achsenrichtung entlang der Höhenrichtung des Roboters 2 verläuft.
-
Insbesondere ist ein Längsendabschnitt des ersten Arms 6 mit der Basis 5 über eine erste Achse J1 drehbar gekoppelt, wodurch es dem ersten Arm 6 ermöglicht ist, sich zu drehen. Die erste Achse J1 weist eine Wellenmitte auf, die entlang der Z-Achsenrichtung ausgerichtet ist, die als eine vertikale Achse zu der Basis 5 eingestellt ist. Ein Längsendabschnitt des zweiten Arms 7 ist mit dem anderen Längsendabschnitt des ersten Arms 6 über eine zweite Achse J2 ebenfalls drehbar gekoppelt, wodurch es dem zweiten Arm 7 möglich ist, sich in Bezug zu dem ersten Arm 6 zu drehen. Die zweite Achse J2 weist ebenfalls eine Wellenmitte auf, die entlang der Z-Achsenrichtung ausgerichtet ist. Die Welle 8 ist durch den verbleibenden Längsendabschnitt des zweiten Arms 7 drehbar und vertikal beweglich angeordnet. Eine dritte Achse J3 ist derart angeordnet, dass sie die Welle 8 in der Z-Achsenrichtung nach oben und unten bewegt, während eine vierte Achse J4 dazu angeordnet ist, eine Drehung der Welle 8 zu ermöglichen. Einem unteren Endabschnitt der Welle 8 ist ein Flansch (oder ein Endeffektor bzw. Greifer) 9 in einer bezüglich der Position anpassbaren Weise lösbar an die Welle 8 angefügt.
-
Eine zweidimensionale Endeffektorkoordinate (ebenso als eine Flanschkoordinate bezeichnet) xy ist auf den Flansch 9 eingestellt.
-
Die Basis 5, der erste Arm 6, der zweite Arm 7, die Welle 8 und der Flansch 9 dienen insgesamt als ein Roboterarm des Roboters 2, sodass der Flansch 9 als ein Roboterarmendabschnitt dient. Daher kann ein Werkzeug oder Werkstück an dem Flansch 9 befestigt werden. Ein solches Werkzeug ist ein luftbetriebenes Spannfutter 10. In der Erklärung, die in 7 gezeigt ist, wird das luftbetriebene Spannfutter 10 eingesetzt, um ein Werkstück 11 anzusaugen, das eine Last für den Roboter darstellt. Das Werkstück 11 weist eine undefinierte Form auf und dessen Dichte ist lokal ungleichmäßig, weshalb die Position des Schwerpunkts in der Endeffektorkoordinate xy überprüft werden muss, um eine Steuerungsgenauigkeit in einer Steuerung der Roboterarmvorgänge zu erhöhen.
-
Die jeweiligen Achsen J1 bis J4, die an dem Roboter 2 bereitgestellt sind, sind tatsächlich durch Mittelachsen der Wellen von elektrischen Motoren (nicht dargestellt) bereitgestellt, die an den Achsen J1 bis J4 jeweils angeordnet sind. Obwohl dies nicht gezeigt ist, ist nahe bei jedem Motor ein Sensor angeordnet, um sowohl einen Drehwinkel als auch eine Drehgeschwindigkeit zu erfassen.
-
Im Allgemeinen werden Industrieroboter gemäß einem vorgegebenem Betriebsprogramm angetrieben, das zuvor über ein Programmierungsgerät erstellt wurde. Der Controller 3 erfüllt die Betriebsprogramme, um ein Antrieb von jedem der Motoren zu regeln und Bewegungen des Arms des Roboters 2 zu steuern.
-
Obwohl dies nicht gezeigt ist, ist der Controller 3 als ein Computeraufbau bereitgestellt, der mit einem Prozessor (wie einer CPU) 3A, die Steuerungsaktionen des Roboters 2 durchführt, einer Speichervorrichtung (wie einem ROM) 3B, und anderen notwendigen Komponenten, wie einem RAM (nicht dargestellt) ausgestattet ist. In der vorliegenden Ausführungsform setzt sich die Speichervorrichtung 3B, die als ein nichtflüchtiges lesbares Computerspeichermedium dient, beispielsweise aus einem Halbleiterspeicherelement zusammen. Nach Aktivierung liest der Prozessor 3A verschiedene Programme aus der Speichervorrichtung 3B aus, in der solche Programme zuvor implementiert wurden, und führt Schritte aus, die in solchen Programmen definiert sind, wodurch die Funktionen, die in dieser Offenbarung dargelegt sind, funktional umgesetzt werden.
-
Das Programmierungsgerät bzw. Bediengerät 4 ist in einer Größe ausgestaltet, die es einem Nutzer erlaubt, dieses in der Hand zu halten oder mit sich zu tragen, sodass das Programmiergerät 4 in einer flachen, im Wesentlichen rechteckigen Plattenform ausgebildet ist. Es sind Schlüsselschalter auf dem Programmierungsgerät 4 für verschiedene Nutzereingabevorgänge an dem Programmierungsgerät 4 angeordnet. Das Programmierungsgerät 4 ist mit dem Controller 3 über ein Kabel kommunikationsfähig verbunden, und ist mit einer Kommunikationsschnittstelle ausgestattet, um eine schnelle Datenübertragung zu und von dem Controller 3 herzustellen. Somit können verschiedene Typen von Informationssignalen, wie Betriebssignale, die durch eine Schlüsselschalterbetätigung des Nutzers gegeben werden, von dem Programmierungsgerät 4 zu dem Controller 3 gesendet werden.
-
Nun wird theoretisch erläutert, wie die Position des Schwerpunkts des Werkstücks 11, welches das Werkzeug umfasst, eingeschätzt wird.
-
10 zeigt ein vier-achsiges Armmodell des zuvor genannten Roboters 2. In der vorliegenden Ausführungsform wird die Position des Schwerpunkts basierend auf einer Beschleunigung, welche in Reaktion auf eine Bewegung der zweiten Achse des Arms an der vierten Achse auftritt, eingeschätzt. Hierbei wird angenommen, dass die Masse m des Werkstücks 11, die das Werkzeug umfasst, bekannt ist.
-
Wenn der Roboter
2 aktiviert ist, kann ein Betrag des Drehmoments τm, der an jedem der Elektromotoren aufgebracht wird, durch die nachfolgende Formel (1) ausgedrückt werden:
wobei τ
I: Trägheitsmoment, M
I: Trägheit des Motors, τ
f: Zentrifugalmoment, M
vis: Viskosität des Motors, Gear: Übersetzungsverhältnisse,
τG : Schweremoment,
MFrc : Reibung des Motors,
ω: Winkelgeschwindigkeit des Motors,
Frc : Reibungsmoment, ω(dot):=dω/dt: Winkelbeschleunigung des Motors.
-
Nachfolgend kann die Winkelbeschleunigung vereinfacht als Beschleunigung bezeichnet werden.
-
Wenn der Motor basierend auf einem Winkelgeschwindigkeitsmuster angetrieben wird, das in
2 gezeigt ist, wird ein Drehmoment, das an dem Motor während eines beschleunigten Intervalls und eines verzögerten Intervalls auftritt, als
τMacc und
τMdcc bezeichnet, und eine Differenz zwischen den Drehmomentbeträgen
τMacc und τ
Mdcc wird berechnet. Durch diese Differenzberechnung werden Terme, die von
τf ,
Frc ,
Mvis , und
MFrc abhängen, entfernt, sodass Terme
τI und
MI , die von der Beschleunigung abhängen, stehenbleiben, wie in der Formel (2) gezeigt ist:
-
Wenn die zweite Achse angetrieben wird, aber die vierte Achse nicht angetrieben wird, wird eine Winkelbeschleunigung der vierten Achse Null. Daher kann ein Trägheitsmoment
τI4 der zweiten Achse durch die Formel (3) ausgedrückt werden:
-
In einem Fall, bei dem der Winkel der vierten Achse auf jeden der mutmaßlich unterschiedlichen Winkel
θa ,
θb , und
θc eingestellt ist, und in diesem jeweiligen Einstellungszustand der Roboterarm in derselben Bewegung angetrieben wird, können Unterschiede zwischen den Trägheiten
Ia ,
Ib und
Ic der vierten Achse durch die Formeln (
4) und (
5) ausgedrückt werden, sodass:
-
Die Positionskoordinaten
xcog ,
ycog des Schwerpunkts des Werkstücks
11, die gewünscht sind, werden durch die Formel (6) ausgedrückt, sodass:
-
Unter Verwendung der Formeln (4) und (5) kann diese Formel (6) in die nachfolgenden Formeln (7) und (8) entwickelt werden.
-
Wenn θ
a=0, θ
b=π/2, und θ
c=-π/2 in die Formeln (7) und (8) substituiert werden, können diese Formeln (7) und (8) wie folgt vereinfacht werden:
-
Mit Bezug auf die 1 bis 8 werden nun Vorgänge des Systems übereinstimmend mit der vorliegenden Ausführungsform beschrieben, die auf dem zuvor genannten theoretischen Prinzip basiert.
-
1 und 2 zeigen Flussdiagramme für einen Ablauf, der zum Einschätzen der Position des Schwerpunkts verwendet wird. Dieser Ablauf wird durch den Controller 3 ausgeführt.
-
Zunächst wird der Arm des Roboters 2 dazu angetrieben, sich von einer ersten Ausgangsposition zu bewegen (Schritt S1). In dem Beispiel, das in 3 gezeigt ist, ist diese erste Ausgangsposition auf (J1, J2, J3, J4) = J(0, -40, 220, 0) eingestellt, wobei die Werte „0, -40, 220, 0“ als „θ-Werte“ ausgedrückt werden (nachstehend wird derselbe Ausdruck eingesetzt) und „J3=220“ zeigt, dass die dritte Achse zu ihrer obersten Endposition bewegt ist, d. h. die oberste zulässige Grenzposition Zmax (vgl. 9) in der Höhe der Z-Achsenrichtung, deren Höhe θa für die vierte Achse bereitstellt.
-
Der Arm wird danach angetrieben, um einen ersten Vorgang zu starten, sodass der Arm dazu angetrieben wird, seine erste Einschätzungsposition einzunehmen, und dazu angetrieben wird, zu der ersten Ausgangsposition zurückzukehren (Schritt S2). Beispielsweise ist die erste Einschätzungsposition gegeben als: J(0, 40, 220, 0).
-
In diesem Zustand wird die vierte Achse auf ihrer Ausgangsposition gehalten, d. h. J4=θa=0.
-
Danach setzt der Ablauf bei Schritt S3 fort, bei dem eine Beschleunigungswellenform an der zweiten Achse und eine Drehmomentwellenform an der vierten Achse während einer ersten Betriebsdauer, die durch eine Dauer der Zeit definiert ist, die erforderlich ist, damit der Arm die erste Einschätzungsposition erreicht (ein Vorgang (1)) und einer Dauer der Zeit, die erforderlich ist, damit der Arm von der ersten Einschätzungsposition zu der ersten Ausgangsposition zurückkehrt (ein Vorgang (2)), ihrem Probevorgang bzw. Samplingvorgang unterzogen. Solche Wellenformen sind in den Figuren (4) und (5) als Beispiele gegeben. Eine Durchschnittswertbildung der Wellenformen in den Vorgängen (1) und (2) während der ersten Betriebsdauer ermöglicht es, eine Wellenform bereitzustellen, bei der ein Reibungskraftfaktor entfernt ist.
-
Danach wird basierend auf der erlangten Beschleunigungswellenform eine Beschleunigung an der zweiten Achse in den beschleunigten und verzögerten Intervallen, die als
ω(dot)2aa und
ω(dot)2ad bezeichnet wird, durch umgekehrte Umwandlung der erlangten Wellenformen erlangt (Schritt
S4). Der Ablauf entspricht bei Schritt
S4 funktional einer ersten Beschleunigungserlangungseinheit. Ferner wird basierend auf der erlangten Drehmomentwellenform ein Beschleunigungsmoment der vierten Achse in den beschleunigten und verzögerten Intervallen, die als
τ4aa und
τ4ad bezeichnet wird, erlangt (Schritt
S5). Der Ablauf entspricht bei Schritt
S5 funktional einer ersten Drehmomenterlangungseinheit. Die Beschleunigungswerte an der zweiten Achse und die Beschleunigungswerte an der vierten Achse, die in den Schritten
S4 und
S5 erlangt worden sind, werden in eine Formel (11) substituiert, um eine Trägheit
τI4a , an der vierten Achse zu berechnen (Schritt
S6).
-
Danach wird der Arm dazu angetrieben, sich zu einer zweiten Ausgangsposition zu bewegen (Schritt S7). Diese zweite Ausgangsposition ist als eine Position eingestellt, die durch eine Bewegung von lediglich der vierten Achsenposition von θa zu θb = 90 Grad an der ersten Ausgangsposition definiert ist, d. h. die zweite Ausgangsposition ist beispielsweise J (0, -40, 220, 90).
-
Der Arm wird weiter angetrieben, um einen zweiten Vorgang durchzuführen (Schritt S8). Wie in 7 gezeigt ist, wird eine zweite Einschätzungsposition als eine Position eingestellt, die durch eine Bewegung von lediglich der vierten Achsenposition zu θb=90 Grad an der ersten Einschätzungsposition definiert ist, welche J (0, 40, 220, 90) ist.
-
Äquivalent zu der ersten Betriebsdauer wird eine zweite Betriebsdauer als eine Dauer definiert, die erforderlich ist, damit sich der Arm von der zweiten Einschätzungsposition zu der zweiten Ausgangsposition bewegt.
-
Darauf folgen die Schritte
S9 bis
S12, die in derselben Weise verarbeitet werden, wie die vorhergehenden Schritte
S3 bis
S6, allerdings beziehen sie sich auf die zweite Betriebsdauer. Somit stellt der Ablauf bei Schritt
S10 Werte der Beschleunigung der zweiten Achse bereit,
ω(dot)2ba und
ω(dot)2bd , und der Ablauf bei Schritt
S11 stellt Werte des Drehmoments der vierten Achse bereit,
τ4ba und
τ4bd . Der Schritt
S10 setzt eine zweite Beschleunigungserlangungseinheit funktional um, während der Schritt
S11 eine zweite Drehmomenterlangungseinheit funktional umsetzt. Durch Substituieren des Wertes der Beschleunigung der zweiten Achse, die bei Schritt
S10 erlangt wird, und des Wertes des Drehmoments der vierten Achse, der bei Schritt
S11 erlangt wird, in die nachfolgende Formel (12), wird eine Trägheit der vierten Achse τ
I4b berechnet (Schritt
S12):
-
Der Arm wird ebenfalls dazu angetrieben, sich zu einer dritten Ausgangsposition zu bewegen (Schritt S13). Die dritte Ausgangsposition ist als eine Position eingestellt, die durch eine Bewegung von lediglich der vierten Achsenposition von θa zu θc=-90 Grad an der ersten Ausgangsposition definiert ist, d. h. die dritte Ausgangsposition ist beispielsweise J(0, -40, 220, -90).
-
Der Arm wird ferner dazu angetrieben, einen dritten Vorgang durchzuführen (Schritt S14). Wie in 8 gezeigt ist, ist eine dritte Einschätzungsposition als eine Position eingestellt, die durch eine Bewegung von lediglich der vierten Achsenposition zu θc=-90 Grad an der ersten Einschätzungsposition definiert ist, welche J(0, 40, 220, -90) ist.
-
Äquivalent zu der ersten Betriebsdauer ist eine dritte Betriebsdauer als ein Zeitraum definiert, der erforderlich ist, um den Arm von der dritten Einschätzungsposition zu der dritten Ausgangsposition zu bewegen.
-
Danach folgen die Schritte
S15 bis
S18, die in derselben Weise verarbeitet werden, wie die vorhergehenden Schritte
S3 bis
S6, allerdings betreffen sie die dritte Betriebsdauer. Demzufolge stellt der Ablauf bei Schritt
S16 Werte der Beschleunigung der zweiten Achse bereit,
ω(dot)2ca und
ω(dot)2cd , und der Ablauf bei Schritt
S14 stellt Werte des Drehmoments der vierten Achse bereit,
τ4ca und
τ4cd . Der Schritt
S16 setzt funktional eine dritte Beschleunigungserlangungseinheit um, während der Schritt
S17 eine dritte Drehmomenterlangungseinheit funktional umsetzt. Durch Substituieren des Wertes der Beschleunigung der zweiten Achse, der bei Schritt
S16 erlangt wird, und des Wertes des Drehmoments der vierten Achse, der bei Schritt
S17 erlangt wird, in die nachfolgende Formel (13), wird eine Trägheit der vierten Achse
τI4c berechnet (Schritt
S18):
-
In der vorliegenden Ausführungsform ist der Bestimmungsvorgang bei Schritt S19 JA, wenn die Winkel θa, θb und θc der vierten Achse als 0 Grad, 90 Grad und -90 Grad jeweils ausgewählt werden. In diesem Fall setzt der Ablauf bei Schritt S20 fort, bei dem die zuvor genannten Formeln (9) und (10) verwendet werden, um Ihcosθh und Ihsinθh zu berechnen. Somit ist es möglich, den Vorgang bei Schritt S21 durchzuführen, bei dem die Formel (6) verwendet wird, um die Position (xcog , ycog ) des Schwerpunkts des Werkstücks 11 zu berechnen.
-
Im Gegensatz zu dem oben genannten wird unterdessen der Bestimmungsvorgang bei Schritt S19 NEIN, wenn die Winkel θa , θb und θc der vierten Achse als 0 Grad, 90 Grad und -90 Grad jeweils ausgewählt werden. In diesem Fall werden die zuvor genannten Formeln (7) und (8) verwendet, um Ihcosθh und IhSinθh zu berechnen (Schritt S22). Ferner wird in derselben Weise wie zuvor genannt, die Formel (6) verwendet, um die Position des Schwerpunkts (xcog , ycog ) des Werkstücks 11 in der Endeffektorkoordinate xy zu berechnen (Schritt S22). Unter Verwendung der Formeln (9) und (10), oder (7) und (8), werden die Beträge der Trägheit der vierten Achse Ia, Ib und Ic durch die Beträge der Trägheit der vierten Achse τI4a , τI4b , und τI4c jeweils ersetzt, die durch die Formeln (11), (12) und (13) berechnet wurden.
-
Somit setzen die Schritte S19 bis S22 eine Schwerpunktpositionsberechnungseinheit funktional um.
-
Falls zwischen der tatsächlichen Position des Schwerpunkts des Werkstücks 11 und der Position des Schwerpunkts (xcog , ycog ), die in der vorliegenden Ausführungsform tatsächlich berechnet wurde, ein Fehler auftritt, könnten Korrekturkoeffizienten in Abhängigkeit eines Betrags des Fehlers zur Korrektur der Position verwendet werden.
-
Wie in der vorliegenden Ausführungsform beschrieben ist, steuert der Controller 3 in einem Zustand, bei dem der Arm des horizontalen vier-achsigen Roboters 2 ein bekanntes Werkstück 11 (mit dessen Masse m) an dessen Ende des Roboters 2 angefügt hat, den Arm an, um die Beschleunigung der zweiten Achse in jedem der beschleunigten und verzögerten Intervalle für die erste Betriebsdauer zu erlangen. Die erste Betriebsdauer ist als eine Dauer definiert, die durch Bewegung der zweiten Achse zum Bewegen von der ersten Ausgangsposition, an der die Position der vierten Achse θa ist, zu der ersten Einschätzungsposition, erforderlich ist, und eine Dauer, die zum Zurückkehren von der ersten Einschätzungsposition zu der ersten Ausgangsposition erforderlich ist.
-
Der Controller 3 erlangt danach ein Beschleunigungsmoment der vierten Achse in dem beschleunigten Intervall und ein Verzögerungsmoment der vierten Achse in dem verzögerten Intervall, und berechnet basierend auf der Beschleunigung sowohl in dem beschleunigten als auch in dem verzögerten Intervall, dem Beschleunigungsmoment und dem Verzögerungsmoment eine Trägheit τI4a um die vierte Achse.
-
Zudem führt der Controller 3 den zweiten Vorgang aus, um die Beschleunigung der zweiten Achse sowohl in dem beschleunigten als auch in dem verzögerten Intervall in der zweiten Betriebsdauer zu erlangen. Der zweite Vorgang ermöglicht es der zweiten Achse, von der zweiten Ausgangsposition aus betrieben zu werden, die durch Änderung der vierten Achsenposition zu θb an der ersten Ausgangsposition umgesetzt wird. Bezüglich der zweiten Betriebsdauer werden durch den Controller 3 Beträge des Beschleunigungs- und Verzögerungsmoments der vierten Achse erlangt, und ein Betrag der Trägheit τI4b um die vierte Achse wird in derselben Weise berechnet, wie das erste Drehmoment erlangt wird.
-
Der Controller 3 führt ferner den dritten Vorgang durch, um die Beschleunigung der zweiten Achse sowohl in dem beschleunigten als auch in dem verzögerten Intervall in der dritten Betriebsdauer zu erlangen. Der dritte Vorgang ermöglicht es der zweiten Achse, von der dritten Ausgangsposition aus betrieben zu werden, die durch Änderung der vierten Achsenposition zu θc an der ersten Ausgangsposition umgesetzt wird. Bezüglich der dritten Betriebsdauer werden durch den Controller 3 Beträge des Beschleunigungs- und Verzögerungsmoments der vierten Achse erlangt, und es wird ein Betrag der Trägheit τI4c um die vierte Achse berechnet. Danach wird durch den Controller 3 basierend auf den zuvor bekannten und berechneten Beträgen von lh , θh , τI4a , τI4b , τI4c , θa , θb , und θc die Position des Schwerpunkts (xcog , ycog ) des Werkstücks 11 berechnet.
-
Mit anderen Worten wird die vierte Achse des Arms, an dem die Last bereitgestellt ist, zu jeder der drei verschiedenen Positionen der vierten Achse bewegt, wodurch die Last in derselben Weise horizontal bewegt wird, was zu einer Beschleunigung an der vierten Achse (d. h. physikalisch an der vierten Verbindung) führt. Basierend auf der Beschleunigung, die an der vierten Achse an jeder der drei verschiedenen Positionen der vierten Achse aufgebracht wird, werden Beträge der Trägheit τI4a τI4b und τI4c berechnet. Diese Trägheitsbeträge τI4a , τI4b und τI4c und die Positionen der vierten Achse θa , θb , und θc sind dann auch Gegenstand zur Erlangung der Position des Schwerpunkts, d. h. der Schwerpunktsposition (xcog , ycog ) des Werkstücks 11. Somit ist es möglich, die Schwerpunktsposition des Werkstücks 11 in der horizontalen Ebene (d. h. die Endeffektorkoordinate xy) in einem Roboter einzuschätzen, der mit einem Armaufbau ausgestaltet ist, der vier Achsen umfasst (d. h. vier Verbindungen). Demzufolge kann selbst bei dem vier-achsigen horizontalen Mehrgelenkroboter der Schwerpunkt eines Werkstücks in Bezug auf dessen Position in zuverlässiger Weise eingeschätzt werden, wodurch es möglich wird, Aktionen des Roboterarms in dessen Betrieb präzise zu steuern.
-
Praktischerweise wird die vierte Achse (d. h. die vierte Verbindung) zu den Winkeln θa=0 Grad, θb=90 Grad, und θc=-90 Grad jeweils bewegt, wodurch es möglich wird, unter Verwendung der Formeln (9) und (10) die Schwerpunktposition (xcog , ycog ) in noch einfacherer Weise zu berechnen, wodurch die Berechnung der Positionseinschätzung vereinfacht wird. Zudem wird die vierte Achse bewegt, während eine Position der dritten Achse (Verbindung) an der oberen Endposition fixiert ist, was dazu führt, dass während einer Armbewegung zu jeder der ersten und zweiten Einschätzungsposition Vibrationen in dem Werkstück unterdrückt werden können, die durch die Dritte Achse verursacht werden. Diese Unterdrückung führt zu einer höheren Einschätzungsgenauigkeit beim Erlangen der Schwerpunktsposition.
-
Die vorliegende Erfindung, die obenstehend beschrieben ist, ist nicht auf die oben beschriebene Ausführungsform beschränkt, sondern kann zu verschiedenen anderen Ausführungsformen entwickelt werden, ohne von dem Kern derselben abzuweichen.
-
Beispielsweise sind die Winkel θa=0 Grad, θb=90 Grad, und θc=-90 Grad zu denen die vierte Achse jeweils bewegt wird, nicht auf ein solches Verhältnis zwischen den Winkelpositionen und den Winkeln beschränkt, sondern kann auf ein anderes Winkelverhältnis geändert werden. Als ein anderes Beispiel können die Winkelbeträge 0 zu anderen Beträgen geändert werden, die in der Ausführungsform beschrieben sind.
-
Ferner können die Ausgangspositionen und Einschätzungspositionen ebenso auf andere Positionen geändert werden.
-
Ebenso muss die dritte Achse (Verbindung) nicht immer auf die obere Endposition eingestellt sein, wenn der Roboter in einem Zustand verwendet wird, bei dem kein oder annähernd kein Einfluss von Vibrationen durch die dritte Achse verursacht wird. In solchen Fällen kann die dritte Achse, d. h. in der Praxis die Welle 8, während der Einschätzungsaktion in die Z-Achsenrichtung abgesenkt werden.
-
Ferner kann die Ausführungsreihenfolge zwischen dem zuvor genannten zweiten und dritten Schritt mit einander vertauscht werden, und in derselben Weise kann die Ausführungsreihenfolge zwischen dem vorhergenannten fünften und sechsten Schritt miteinander vertauscht werden und die Ausführungsreihenfolge des zuvor genannten achten und neunten Schrittes kann ebenso miteinander vertauscht werden.
-
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
-