-
Die Erfindung betrifft ein Verfahren zur Kraft- und Momentenregelung von Robotern.
-
Robotern – z. B. Industrierobotern – gestellte Aufgaben, können von den Robotern in vielen Fällen aufgrund von hohen Genauigkeitsanforderungen, ungenauer Programmierung oder unzureichend bekannter Umgebung nur unter Verarbeitung von Messwerten eines Kraft-/Momentensensors gelöst werden können, wie z. B. Montageaufgaben mit geringen Toleranzen. Die Erfindung beschreibt ein neues Verfahren zur Regelung, das unter bestimmten Bedingungen angewendet werden kann.
-
Zur Kraftregelung gibt es verschiedene Verfahren. Für übliche Industrieroboter, also Roboter ohne spezielle Schnittstelle für die Gelenkmomente, sind Verfahren üblich, die über eine Positionsschnittstelle, die von den meisten Roboterherstellern angeboten wird, in die Robotersteuerung eingreifen. Durch diese Schnittstelle können Sollwerte für die Gelenkpositionen q oder die kartesische Stellung (Lage) x des Roboters im Interpolationstakt (IPO-Takt) von etwa 50 bis 200 Hz modifiziert werden. x ist dabei ein Vektor mit sechs Elementen, der die Position und Orientierung im Raum beschreibt.
-
Meist erfolgt die Kraftregelung, indem die Differenz zwischen Soll- und Ist-Kraft als Sollgeschwindigkeit oder Sollpositionsinkrement interpretiert wird, also ẋd = Kx·(f' – f ' / d) (1) oder q .d = Kq·(τc – τ c / d), (2) wobei der Index d für Sollwerte und f' für den Vektor aus Kräften und Momenten steht. τc und τ c / d sind die Anteile der wirklichen und der gewünschten Gelenkmomente, die den kartesischen Kontaktkräften und momenten entsprechen. Sie werden durch τc = JTf' berechnet, wobei J die Jacobi-Matrix ist. Die Matrizen K sind Verstärkungsmatrizen, die geeignet gewählt werden müssen, um die Stabilität des Systems zu gewährleisten.
-
Nachteilig bei dem beschriebenen Verfahren ist einerseits, dass eine Verstärkungsmatrix K erzeugt bzw. angepasst werden muss. Andererseits wird die Dynamik des Roboters und der Antriebe nicht berücksichtigt.
-
Die Gleichung (1) kann auch durch xd(k + 1) = xd(k) + K(f'(k) – f ' / d) (3) oder xd(k + 1) = xd(k) + s(k) – sd (3a) mit der gemessenen Istposition x, der Sollposition xd, dem (transformierten) Sensorwert s und dem Sollwert sd für den (transformieren) Sensorwert ausgedrückt werden.
-
Die gemessenen Regeldifferenzen werden skaliert zu den im vorigen Abtastschritt geschätzten Sollwerten addiert. Besonders bei großen Verzögerungen ist dies relevant: Aus der Ruhelage erzeugt Gleichung (3) dauernd Positionsinkremente, bis der Roboter sich schließlich bewegt und die Sensordaten sich ändern. Dies führt dann, zumindest bei großer Verstärkung, zum Überschwingen. Deshalb muss die Verstärkungsmatrix in Gleichungen (1) oder (3) vorsichtig gewählt werden.
-
Außerdem erfordern die Verfahren entweder die Eingabe der Freiheitsgrade, in denen aufgrund der Messwerte eine Bewegung stattfinden soll, oder sie beeinflussen alle möglichen Raumfreiheitsgrade.
-
Beispielsweise kann ein fest eingespanntes Werkzeug in sechs Freiheitsgraden durch Kräfte und Momente geregelt werden, eine Schraubeinrichtung jedoch nur in 5 Freiheitsgraden, sofern das Ende des Gewindes noch nicht erreicht ist. Bei einem Punktkontakt eines robotergeführten Werkzeugs mit einer Kontaktfläche sind sogar nur maximal 3 Freiheitsgrade durch die Sensordaten definiert, da Drehungen oder Kippungen der Kontaktfläche nicht erfasst werden.
-
Wenn mehr Freiheitsgrade beeinflusst werden als die Messwerte erlauben, so führt das oft zu unerwünschtem Verhalten.
-
Aus
DE 10 2009 040 194 A1 des Anmelders ist ein Verfahren bekannt, bei dem anstelle der üblichen Grundgleichung (3a)
xd(k + 1)= x(k) + s(k) – sd (4) zur Regelung der Sollposition x
d verwendet wird. Dabei erfolgt eine Kraftregelung nur für diejenigen Komponenten, in denen Kräfte messbar sind. Die übrigen Komponenten werden auf eine Referenzposition x
r geregelt:
-
Dabei wird ein Sensor derart kalibriert, dass die vom Sensor erfassten Kräfte und Momente als fiktiver vektorieller Abstand s ausgeben werden, wobei die Kalibrierung insbesondere die Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt und die sich unter Umständen ändernde Art des Kontakts zwischen Werkzeug und Werkstück berücksichtigt bzw. beinhaltet.
-
Dabei wird der Roboter derart angesteuert werden, dass die Ist-Position x der Sollposition xd möglichst schnell und genau erfolgt, wobei der Soll-Abstand sd zumeist vorgegeben ist.
-
Das bekannte Verfahren ist nur für Robotersysteme anwendbar, bei denen eine ausreichend große Nachgiebigkeit zwischen Roboter und Werkzeug angeordnet und wenn der Art des Kontakts zwischen Werkzeug und Werkstück bekannt ist.
-
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Verfahren zur Kraft- und Momentenregelung von Robotern zu schaffen, bei dem eine schneite und stabile Regelung ohne Überschwingen möglich ist, wobei die Regelung ohne Vorgabe der Art des Kontakts zwischen Werkzeug und Werkstück erfolgt und das Robotersystem eine Nachgiebigkeit an beliebiger Stelle aufweisen kann.
-
Die vorliegende Aufgabe wird durch das Verfahren gemäß Patentanspruch 1 gelöst.
-
Das erfindungsgemäße Verfahren zur Kraft- und/oder Momentenregelung von Robotersystemen, wobei das Robotersystem ein Werkzeug mit einem Werkzeugmittelpunkt (TCP), der derjenige Teil des Werkzeugs ist, an dem der zu regelnde Kontakt stattfinden soll, eine Robotersteuerung mit einer Positionsschnittstelle zur Ausgabe von einer roboterintern ermittelten Ist-Position x, mindestens einen Sensor zur Erfassung von Kräften und Momenten, die auf das Werkzeug ausgeübt werden und eine oder mehrere Nachgiebigkeiten zwischen Roboter und Werkzeugmittelpunkt, im Roboter und/oder in der Umgebung aufweist, hat zumindest folgende Schritte:
- 1. Vorgeben einer Aufgabe mit einer Sollbewegung des Roboters und Sollkräften und/oder Sollmomenten, die von dem Werkzeug auf ein Werkstück ausgeübt werden sollen
- 2. Durchführen der Aufgabe mit folgenden einen Regelkreis bildenden Unterschritten:
- i) Bestimmen eines fiktiven vektoriellen Soll-Abstandes sd zwischen Werkzeugmittelpunkt und einem Kontaktpunkt zwischen dem Werkzeug und dem Werkstück aus Auslenkungen der Nachgiebigkeiten, die den vorgegebenen Sollkräften und/oder Sollmomenten entsprechen,
- ii) Bestimmen eines fiktiven vektoriellen Abstandes s zwischen Werkzeugmittelpunkt und einem Kontaktpunkt zwischen dem Werkzeug und dem Werkstück aus Auslenkungen der Nachgiebigkeiten, die den an dem Sensor erfassten Kräften und Momenten entsprechen,
- iii) Bestimmen der Sollposition xd des Werkzeugmittelpunkts über die Ist-Position x, den fiktiven vektoriellen Abstand s und den fiktiven vektoriellen Soll-Abstand sd,
wobei die Ist-Position x auf die Sollposition xd geregelt wird,
wobei vor Schritt 1, nach Schritt 1 und/oder während Schritt 2 folgender Zwischenschritt durchgeführt wird: - a) Bestimmung der Steifigkeit der Nachgiebigkeiten und nichtlinearer Kopplungen im Robotersystem über bei verschiedenen Auslenkungen der Nachgiebigkeiten erfasste Sensordaten.
-
Dabei sollte der Roboter derart angesteuert werden, dass die Ist-Position x der Sollposition xd möglichst schnell und genau erfolgt.
-
Durch die Regelung über die Soll-Position xd, die in kartesischen Koordinaten oder in Achswerten von einer Positionsschnittstelle des Roboters verarbeitet wird, ist eine sehr schnelle Regelung der Sollbewegung möglich. Durch die Bestimmung der Sollposition xd des Werkzeugmittelpunktes über die Ist-Position x und den fiktiven vektoriellen Abstand s unter Hinzunahme des fiktiven vektoriellen Soll-Abstandes sd ist die Regelung darüber hinaus immer stabil, da die beiden Rückführungen sich gegenseitig aufheben und der Regelkreis somit keine resultierende Rückführung beinhaltet.
-
Das erfindungsgemäße Verfahren sieht somit vor, dass der fiktive vektorielle Abstand s auf den fiktiven vektoriellen Soll-Abstand sd geregelt wird, wobei der fiktive vektorielle Soll-Abstand sd aus den Soll-Kräften und/oder -Momenten unter Berücksichtigung von Kopplungen berechnet wird. Dies hat den Vorteil, dass nicht die Soll-Kräfte und/oder -Momente mit den gemessenen Ist-Kräften und/oder -Momenten verglichen und daraus eine Korrektur der Position und/oder der Orientierung berechnet wird, da diese Korrektur üblicherweise die nicht lineare Abhängigkeit zwischen Kräften und Momenten und der Bewegung des Roboters nicht berücksichtigt. Durch die Verwendung der Nachgiebigkeiten, die den Soll-Kräften und/oder Momenten sowie den gemessenen Kräften und/oder Momenten entsprechen, und die Transformation dieser Auslenkungen in fiktive Abstände hingegen ist die Berücksichtigung der Kopplung zwischen Kräften und Momenten sowie Positions- und Orientierungsänderungen in vorteilhafter Weise möglich.
-
Die Berechnung des fiktiven Soll-Abstands sd sowie des fiktiven Abstands s können neben einer Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt auch Nachgiebigkeiten im Roboter und/oder in der Umgebung berücksichtigen. Es ist auch möglich, dass die Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt sehr gering oder sogar nicht vorhanden ist, sofern eine andere Nachgiebigkeit vorliegt.
-
Die Sollposition xd weist dabei vorzugsweise Positionskomponenten und Orientierungskomponenten auf. Entsprechend können auch die fiktiven vektoriellen Abstände s und sd sowie die Ist-Position x aus Positions- und Orientierungskomponenten bestehen.
-
Die Sollposition xd kann Komponenten aufweisen, die über die Ist-Position x und die fiktiven vektoriellen Abstände s und sd bestimmbar sind sowie Referenzkomponenten xr, die einen für die Sollposition xd vorgegebenen Wert beinhalten.
-
Die Sollposition xd besteht somit aus messbaren bzw. bestimmbaren Komponenten, nämlich die, die über die Ist-Position x und die fiktiven vektoriellen Abstände s und sd bestimmbar sind und nicht messbaren Komponenten, den Referenzkomponenten xr.
-
Dieses Verfahren findet insbesondere dann Anwendung, wenn vor der Ausführung der Aufgabe bekannt ist, dass einige Freiheitsgrade von den Messwerten nicht beschrieben werden. Durch das Ersetzen der Komponenten, die nicht messbar sind, durch Referenzkomponenten, wird verhindert, dass es zu Ungenauigkeiten kommt, da der Sensor im Allgemeinen auch bei weniger als sechs messbaren Freiheitsgraden sechs von Null verschiedene Werte ausgibt und somit sechs unabhängige Freiheitsgrade vermuten lässt.
-
In einem besonders bevorzugten Ausführungsbeispiel ist vorgesehen, dass der Zwischenschritt a) des erfindungsgemäßen Verfahrens folgende Unterschritte aufweist:
- a1) Bewegen des Werkzeuges in eine Lage xk0, in der das Werkzeug mit dem Werkstück in Kontakt ist und Aufzeichnen der Sensordaten
- a2) Durchführen einer schrittweisen translatorischen oder rotatorischen Bewegung des Werkzeuges in mindestens eine weitere Lage xki und Aufzeichnen weiterer Sensordaten
-
Dabei kann vorgesehen sein, dass die schrittweise translatorische oder rotatorische Bewegung des Werkzeuges an die Komponenten, die über die Ist-Position x und die fiktiven vektoriellen Abstände s und sd bestimmbar sind, angepasst ist. Auch kann die Anzahl der weiteren Lagen xki an die Anzahl dieser Komponenten angepasst sein. Zwischen dem Werkzeug und dem Werkstück sollte dabei ein derartiger formschlüssiger Kontakt bestehen, dass sich jede Änderung der Lage in Bezug auf die messbaren Freiheitskomponenten auch deutlich in den Sensorwerten widerspiegelt.
-
Dadurch kann gewährleistet werden, dass sich in den Sensordaten die Lageänderungen in Bezug auf die messbaren Freiheitsgrade wiedergeben und somit die Steifigkeit der Nachgiebigkeiten des Systems in Bezug auf diese Freiheitsgrade in vorteilhafter Weise bestimmbar ist.
-
Erfindungsgemäß kann das Verfahren vorgesehen, dass bei der Bestimmung des fiktiven vektoriellen Soll-Abstandes sd folgende Unterschritte durchgeführt werden:
- i1) Berechnen der Auslenkungen der Nachgiebigkeiten, bei denen die vorgegebenen Soll-Kräfte und/oder Soll-Momente erreicht werden,
- i2) Transformieren der in Schritt i1) berechneten Auslenkungen zu dem fiktiven vektoriellen Soll-Abstand sd.
-
Auf diese Weise lässt sich der fiktive vektorielle Soll-Abstand sd in vorteilhafter Weise und sehr schnell bestimmen.
-
Dabei kann vorgesehen sein, dass für jede Nachgiebigkeit ein fiktiver vektorieller Soll-Abstand sdi bestimmt wird und eine vektorielle Addition der fiktiven vektoriellen Soll-Abstände sdi den fiktiven vektoriellen Soll-Abstand sd ergibt.
-
Das erfindungsgemäße Verfahren kann ferner vorsehen, dass bei der Bestimmung des fiktiven vektoriellen Abstandes s folgende Unterschritte durchgeführt werden:
- ii1) Messung von an dem Sensor wirkenden Kräften und/oder Momenten,
- ii2) Berechnen der an dem Kontaktpunkt zwischen dem Werkzeug und dem Werkstück wirkenden Kräfte und/oder Momente, aus den in Schritt ii1) gemessenen Kräften und/oder Momenten,
- ii3) Berechnen der Auslenkungen der Nachgiebigkeiten, die den in Schritt ii2) berechneten Kräften und/oder Momenten entsprechen,
- ii4) Transformieren der in Schritt ii3) berechneten Auslenkungen zu dem fiktiven vektoriellen Abstand s,
-
Die Bestimmung des fiktiven vektoriellen Abstandes s ist mit diesen Unterschritten auf einfache Weise und sehr schneit durchführbar.
-
Dabei kann vorgesehen sein, dass für jede Nachgiebigkeit ein fiktiver vektorieller Abstand si bestimmt wird und eine vektorielle Addition der fiktiven vektoriellen Abstände si den fiktiven vektoriellen Abstand s ergeben.
-
Bei dem Zwischenschritt a) können bei der Bestimmung der nicht-linearen Kopplungen diese über die Zwischenschritte a1) und a2) bestimmt werden. Dabei kann bei einem Sensor, der dezentral in Bezug auf den Werkzeugmittelpunkt angeordnet ist, ein Abstandsvektor d und/oder eine Darstellung der Orientierung, insbesondere eine Rotationsmatrix R, bestimmt werden, wobei der Abstandsvektor d die Position und die Darstellung der Orientierung die Orientierung des Sensors in Bezug auf den Werkzeugmittelpunkt angibt. Durch das Berücksichtigen des Abstandsvektors und/oder der Darstellung der Orientierung bzw. einer Rotationsmatrix, die die Lage des Sensors in Bezug auf den Werkzeugmittelpunkt beschreiben, kann die dezentrale Anordnung des Sensors in Bezug auf den Werkzeugmittelpunkt auf eine einfache Art und Weise berücksichtigt werden. Selbstverständlich ist es auch möglich, dass der Abstandsvektor d anderweitig bestimmt wird, beispielsweise durch eine Vermessung oder eine andere Berechnung.
-
Es kann vorgesehen sein, dass die Art des Kontaktes zwischen Werkzeug und Werkstück bestimmt wird, indem das Werkzeug an das Werkstück bewegt wird und die auf den Werkzeugmittelpunkt einwirkenden Kräfte oder Momente bestimmt werden. Durch das Feststellen der Art des Kontaktes besteht die Möglichkeit, festzustellen, welche Freiheitsgrade messbar sind und welche nicht. Auf diese Weise ist es nicht notwendig, dass vor Ausführung der Aufgabe die messbaren Freiheitsgrade bekannt sind. Dabei braucht die Art des Kontakts nicht explizit festgestellt werden. Es ist ausreichend, wenn sie implizit in der Regelung berücksichtigt wird, beispielsweise über Zwischenparameter.
-
Dabei kann vorgesehen sein, dass bei Vorlage eines unvollständigen Kontaktes zwischen Werkzeug und Werkstück, bei dem bei der Bestimmung der Sollposition xd nicht alle Positionskomponenten und Orientierungskomponenten über die Ist-Position x und die fiktiven vektoriellen Abstände s und sd bestimmbar sind, in Bezug auf die nicht bestimmbaren Positionskomponenten oder Orientierungskomponenten entweder keine Regelung der Sollbewegung oder eine Regelung entsprechend einer vorher definierten Referenzbewegung erfolgt. Mit anderen Worten sind bei einem unvollständigen Kontakt nicht alle Freiheitsgrade messbar, ist vorgesehen, dass die Sollbewegung in Bezug auf die nicht messbaren Freiheitsgrade nicht oder anders festgelegt wird.
-
Das erfindungsgemäße Verfahren stellt somit sicher, dass das Werkzeug nicht bezüglich der nicht messbaren Komponenten abdriftet. Dies kann beispielsweise durch Sensorungenauigkeiten oder Sensorrauschen hervorgerufen werden.
-
Unerwünschte Bewegungen werden somit mit dem erfindungsgemäßen Verfahren vermieden. Es kann vorgesehen sein, dass bei der Bestimmung der Art des Kontaktes ein Sensorrauschen berücksichtigt wird. Dies kann beispielsweise dadurch erfolgen, dass die Regeldifferenzen der Positionskomponenten und/oder der Orientierungskomponenten, die sich in einem bestimmten Bereich finden, skaliert werden. In gleicher Weise können auch die Differenzen gegenüber der Referenzlage bei potenziell unvollständigem Kontakt skaliert werden. Auf diese Art und Weise kann die Berücksichtigung der Art des Kontaktes kontinuierlich vorgenommen werden. Ein Driften des Werkzeuges wird darüber hinaus vermieden.
-
Es kann vorgesehen sein, dass bei Vorlage eines unvollständigen Kontaktes, bei dem bei der Bestimmung der Sollposition xd nicht alle Positionskomponenten und Orientierungskomponenten über die Ist-Position x und die fiktiven vektoriellen Abstände s und sd bestimmbar sind, das Werkzeug bezüglich der nicht bestimmbaren Positionskomponenten oder Orientierungskomponenten in einer Ausgang- oder Referenzlage ausgerichtet wird. Die Referenzlage kann beispielsweise die Lage sein, die das Werkzeug ohne Kontakt mit dem Werkstück hätte. Das Verfahren ermöglicht somit, dass bei Vorliegen eines unvollständigen Kontaktes in Bezug auf die nicht messbaren Freiheitsgrade erfolgte Auslenkungen, beispielsweise eine rotatorische Auslenkung, ausgeglichen werden, indem das Werkzeug bezüglich dieser Freiheitsgrade entgegen der Auslenkung in eine Nominallage ausgerichtet wird.
-
Im Folgenden wird unter Bezugnahme auf die nachfolgenden Figuren das erfindungsgemäße Verfahren näher erläutert. Es zeigen:
-
1 eine schematische Darstellung der Soll- und Ist-Position des Werkzeugs in Bezug auf ein Werkstück und
-
2 bis 4 einen Roboter mit Sensor und Werkzeug bei dem die Soll-Stellung mit dem erfindungsgemäßen Verfahren verändert wird.
-
Zur Verdeutlichung des erfindungsgemäßen Verfahrens ist in 1 ein Werkstück 1 sowie verschiedene Positionen des Werkzeugs im Verhältnis zu dem Werkstück 1 dargestellt. Bei dem Werkzeug wird die Soll-Position 3 mit dem Werkzeugmittelpunkt (TCP) von der Ist-Position 5 mit dem Werkzeugmittelpunkt (TCP) und von der realen Position 7 des Werkzeugs unterschieden. Bei der realen Position 7 des Werkzeugs befindet sich der Werkzeugmittelpunkt (TCP) gerade im Kontakt mit dem Werkstück, so dass der Kontaktpunkt 8 gebildet wird. Die Lage des Werkzeugmittelpunktes (TCP) der Soll-Position 3 ist xd, die Lage des TCP bei der Ist-Position 5 ist x. Die Lage des Kontaktpunktes wird mit xo bezeichnet. Im Folgenden wird die Berechnung der Solllage bei einem Roboter mathematisch erläutert.
-
Die erwähnten üblichen Positionsschnittstellen stellen neben der Verarbeitung der Sollwerte auch die Istwerte zur Verfügung, ebenfalls im IPO-Takt von etwa 50 bis 200 Hz. Daher ist es vorteilhaft, die Vorteile der internen Positionsregelung auch für die Regelung von externen Sensoren zu nutzen. Genauer gesagt wird anstelle einer Sensordatenrückführung durch Gleichungen wie (1), (2), (3) bzw. (3a) durch die Sensordaten eine Solllage definiert, die dann durch die für den Benutzer unzugängliche schnelle Positionsregelung eingeregelt wird.
-
Der Ansatz nach Gleichung (5) hingegen ist unabhängig von der Implementierung der Positionsregelung des Roboters.
-
Die Berechnung der Solllage ist von der Dynamik des Roboters unabhängig. Stattdessen wird eine Referenzlage xr und aus den Sensorwerten gewonnene geometrische Information verwendet. Die Hauptgleichung ist die Gleichung (4).
-
Wenn alle Komponenten messbar sind, ergibt sich die Sollposition xd des Werkzeugmittelpunktes (TCP) aus der Summe der Ist-Position x und des gemessenen Regelfehlers (s – sd). Anders ausgedrückt ist xd die gemessene Kontaktposition x + s, die um den Sollabstand sd zwischen dem Kontaktpunkt und dem TCP verschoben ist. Der Sollabstand sd wird mit dem erfindungsgemäßen Verfahren bestimmt. s ist dabei der Vektor der Sensorwerte, der so transformiert wurde, dass er den Abstand zwischen dem TCP und dem Kontaktpunkt beschreibt. Die Ist-Position x ist dabei die roboterintern ermittelte Lage, die über die Positionsschnittstelle übertragen wird.
-
Da normalerweise nicht alle Komponenten durch die Sensordaten erfasst werden, werden die übrigen Komponenten durch die Referenzlage beschrieben. Dies gilt auch, wenn Komponenten gestört sind oder ausmaskiert werden, wie z. B. beim Schrauben.
-
Wenn die Vektoren x und s neben den 3 Komponenten der Position auch die Orientierung beschreiben, muss die Gleichung zur korrekten mathematischen Beschreibung durch eine Gleichung mit homogenen Transformationsmatrizen ersetzt werden.
-
-
Dabei beschreiben T, T
d und T
r die gemessene und die gewünschte Lage des TCP im Weltsystem so wie die Referenzlage, also die für den Nominalfall programmierte Solllage. Die Transformationsmatrizen enthalten jeweils einen Positionsvektor und eine Rotationsmatrix. T
S und
sind die Transformationen von der gemessenen und der gewünschten TCP-Lage zur Lage des Werkstückes (Objektlage) T
o, die auch durch Position und Orientierung gegeben ist.
-
Beim Ansatz von Gleichung (4) ist es wichtig, dass die Roboterlage und die Sensorwerte exakt gleichzeitig gemessen werden. Wenn dies aufgrund von Signalverarbeitungstotzeiten nicht der Fall ist, muss entweder x oder s aus den Nachbarwerten interpoliert werden um einen Schleppfehler zu vermeiden.
-
Die Stabilität des Systems ist gegeben, wenn die Positionsregelung stabil ist und die messbaren Komponenten der Sensorwerte durch s = xo – x (6) bzw. Ts = T–1·To (7) beschreibbar sind.
-
Dann können (5) und (5a) in
und
umgeformt werden. Das bedeutet, dass (4) bei einer Regelung nicht die Lage x des TCP zurückführt sondern die Kontaktlage x
o misst. Ohne Rückführung besteht keine Gefahr einer Instabilität.
-
Die Position x bzw. xd sowie die Soll-Abstände s und sd bestehen jeweils aus Positionsvektoren p und Orientierungsvektoren φ.
-
Zunächst wird das Verfahren beschrieben, wenn eine Nachgiebigkeit zwischen Roboter 10 und Werkzeugmittelpunkt TCP besteht und sonst keine weitere Nachgiebigkeit. Die Auslenkung dieser Nachgiebigkeit ist messbar. Somit handelt es sich hierbei um einen nachgiebigen Kraft-Momenten-Sensor 12.
-
Die am Sensor 12 gemessenen Auslenkungen werden durch folgende Gleichungen beschrieben sps' = Cp·fs (10) sφs' = Cφ·ms, (11) wobei p Positionsvektoren, φ Orientierungsvektoren, f Kraftvektoren, m Momentenvektoren und die Cp und Cφ Nachgiebigkeitsmatrizen sind. Der Index s steht für den nicht ausgelenkten Sensor 12, der Index s' für den ausgelenkten Sensor. sps' beschreibt somit die Positionsauslenkung im Sensor 12 aufgrund der am Sensor 12 wirkenden Kräfte und Momente, ausgedrückt im Koordinatensystem des nicht ausgelenkten Sensors 12. Die Positionsauslenkung des Sensors 12 entspricht der Transformation vom Koordinatensystem des nicht ausgelenkten Sensors zum Koordinatensystem des ausgelenkten Sensors.
-
Die Kräfte und Momente werden durch ft = fs (12) mt = ms – d × fs (13) vom Sensor 12 auf den Werkzeugmittelpunkt TCP transformiert (Verfahrensschritt ii2)), wobei d den Positionsvektor vom Sensor 12 zum TCP darstellt. Dabei wird im Folgenden angenommen, dass der Kontakt des robotergeführten Werkzeugs mit einem Werkstück an diesem Werkzeugmittelpunkt stattfindet und dass die Koordinatensysteme am Sensor 12 und am TCP die selbe Orientierung haben.
-
Somit ergibt sich für die Soll-Auslenkung am Sensor (Verfahrensschritt i1)) sdpsd' = Cp·ftd (14) sdφsd' = Cφ·(mtd + d × ftd) (15)
-
Entsprechend gilt für die Ist-Auslenkung am Sensor (Verfahrensschritt ii3)) sPs' = Cp·ft (16) sφs = Cφ·(mt + d × ft) (17)
-
Die Kräfte und Momente am TCP ergeben sich aus der Auslenkung am Sensor (Verfahrensschritt ii2)) durch ft = C –1 / p·sps' (18) mt = C –1 / φ·sφs' – d × (C –1 / p·(sps'). (19)
-
Für kleine Orientierungsauslenkungen kann man die Positions- und Orientierungsänderungen näherungsweise durch tpt' = sps' – d × sφs' (20) tφt' = sφs' (21) vom Sensor zum TCP transformieren (Verfahrensschritt ii4)), wobei hier die Kappelterme d × φ im Gegensatz zu Gleichungen (12) und (13) bei den Positionen stehen.
-
Daraus ergibt sich eine Soll-Auslenkung am TCP (Verfahrensschritt i2)) von tdptd' = sdpsd' – d × sdφsd' (22) tdφtd' = sdφsd' (23) wobei tdptd' und tdφtd' zusammen den fiktiven Soll-Abstand sd bilden.
-
Der Verfahrensschritt i) lässt sich auch durch tdptd' = Cp·ftd – d × (Cφ + d × ftd) (24) tdφtd' = Cφ·(mtd + d × ftd), (25) zusammenfassen. Dabei zeigen sich deutlich die Kopplungen, die die Motivation für das Verfahren sind. Sie bewirken, dass die gewünschte Kraft ftd erreicht wird, im Gegensatz zu einer Positionsänderung auf eine Auslenkung von Cp·ftd. Außerdem wird auch ohne Vorgabe eines Sollmoments mtd eine Orientierungsauslenkung tdφtd' gefordert.
-
Die Positionsregelung wird dann durch Gleichung (4) realisiert, wobei die Vektoren x sowohl die Position p als auch die Orientierung φ enthalten. Entsprechend enthält s sowohl die Positionsauslenkung tpt' als auch die Orientierungsauslenkung tφt'.
-
Zur Vermeidung einer Drift in Richtungen, in denen aufgrund der Geometrie der Anordnung sicher keine Kräfte oder Momente wirken können, kann die Auswertung von (4) auf einzelne Komponenten der Vektoren eingeschränkt werden.
-
Zum Verständnis kann ergänzt werden, dass der Abstand s so definiert ist, dass er entgegen der Kontaktrichtung wirkt. So ist die z-Komponente von s beispielsweise negativ, wenn der Roboter 10 vom Ursprung aus an ein Werkstück 1 in +z drückt.
-
Die 2 bis 4 zeigen Änderungen der Stellung mit dem erfahrungsgemäßen Verfahren. Die nominelle Stellung aus 2 verändert sich in der Realität, wenn Kräfte ausgeübt werden, zu der Stellung nach 3. Das wird verhindert, indem die Sollstellung des Roboters 10 entsprechend 4 verändert wird. Hier wird insbesondere der Kippwinkel um die y-Achse so korrigiert, dass das durch die Kraft ausgelenkte Werkzeug 14 sich gerade in der nominellen Stellung nach 2 befindet. In dieser Stellung gibt es beim Einfügen eines Stiftes in eine Bohrung oder einer Schraube in eine Gewindebohrung keine Verspannung des Systems.
-
Sofern neben einer Nachgiebigkeit zwischen Roboter und Werkzeug noch weitere Nachgiebigkeiten vorhanden sind, addieren sich die einzelnen Nachgiebigkeiten. Die fiktive Objektposition – das ist die Kontaktposition, bei der gerade keine Kräfte und Momente ausgeübt werden – ist durch xo = x + sSensor + sRoboter + sUmgebung (26) gegeben, wobei die einzelnen Abstände jeweils von den wirkenden Kräften und Momenten abhängen. Genauso gilt auch xo = xd + sdSensor + sdRoboter + sdUmgebung (27) und somit für die Positionsregelung xd = + sSensor + sRoboter + sUmgebung – sdSensor – sdRoboter – sdUmgebung (28) x und xd sind fiktive Positionen, die von der Robotersteuerung als Istposition gemeldet bzw. als Sollposition verarbeitet werden. xo ist die idealisierte Position des Kontakts, also die Position, bei der gerade ein Kontakt hergestellt ist, jedoch noch keine Kraft und kein Moment ausgeübt wird. xo – sUmgebung ist die reale Kontaktposition.
-
Während sich die Auslenkungen der einzelnen Nachgiebigkeiten addieren, sind die Kräfte und Momente – jeweils bezogen auf den Kontaktpunkt – in allen Fällen gleich. Dadurch können analog zu den oben genannten Gleichungen auch die Auslenkungen der anderen Nachgiebigkeiten durch (10) bestimmt werden, z. B. sUmgebung = Ce·f', (29) wobei der Index e für die Umgebung steht. Dabei wird angenommen, dass die Nachgiebigkeit der Umgebung direkt am Kontaktpunkt besteht. Andernfalls ist eine Transformation entsprechend Verfahrensschritt ii) nötig. Im Gegensatz zu f stellt f' den Vektor aus Kräften und Momenten dar, nicht nur der Kräfte.
-
Sofern die Nachgiebigkeit des Roboters 10 aus Nachgiebigkeiten der einzelnen Achsen resultiert, ergibt sich sRoboter = JCqJt·f', (30) wobei Cq die Diagonalmatrix der Achsnachgiebigkeiten beschreibt und J die Jacobimatrix des Roboters bedeutet. (30) beschreibt ähnlich wie (24) und (25) bereits zwei Verfahrensschritte, hier die Anteile der Roboternachgiebigkeit im Verfahrensschritt ii).
-
Ähnlich zu (29) und (30) lassen sich auch die fiktiven Soll-Abstände der anderen Nachgiebigkeiten bestimmen (Verfahrensschritte a)).
-
Sofern andere Nachgiebigkeiten berücksichtigt werden können, ist keine Nachgiebigkeit zwischen Roboter und Werkzeug mehr nötig. Das bedeutet, dass das Verfahren nicht nur bei nachgiebigen Sensoren sondern auch bei normalen (steifen) Kraft-Momenten-Sensoren anwendbar ist.
-
Anstelle der oben beschriebenen Nachgiebigkeit im Sensor ist auch eine andere Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt (TCP) möglich. Das bedeutet, dass das Verfahren auch ohne weitere Nachgiebigkeiten bei normalen (steifen) Kraft-Momenten-Sensoren anwendbar ist, sofern zwischen Roboter und Werkzeug oder im Werkzeug eine Nachgiebigkeit vorhanden ist.
-
Bei dem erfindungsgemäßen Verfahren wird davon ausgegangen, dass Auslenkungen aufgrund einer Vorspannung der Nachgiebigkeit oder aufgrund von Gravitationseinwirkungen bereits kompensiert sind, also nicht die Messung der Relativlage zwischen TCP und Kontaktlage beeinflussen. Solche statischen Auslenkungen sind stattdessen in der Lage x des TCP berücksichtigt. Insgesamt werden bei der Berechnung der Ist-Lage des TCP nur die Auslenkungen der Nachgiebigkeit aufgrund von statischen Kräften oder Beschleunigungen berücksichtigt, nicht aber die Auslenkungen, die durch Kontaktkräfte und -momente hervorgerufen werden. Im Gegensatz dazu beschreibt die gesamte Auslenkung im Kontaktfall die Kontaktlage.
-
Das soweit beschriebene Verfahren zur Kraftregelung geht davon aus, dass die Positionsregelung schnell und stabil funktioniert. Die Kraftregelung kann somit durch eine Verbesserung der Positionsregelung auch verbessert werden. Im optimalen Fall kompensiert der Positionsregelkreis die gesamte Roboterdynamik, also q = qd x = xd (31)
-
Die weiteren mathematischen Grundlagen des erfindungsgemäßen Verfahrens, insbesondere das Verfahren zur Bestimmung der Steifigkeit der Nachgiebigkeiten C (Verfahrensschritt a)) sind in der Beschreibung von
DE 10 2009 040 194 A1 , worauf Bezug genommen wird, beschrieben.
-
Im Rahmen der Erfindung werden mit Werkzeug sämtliche Vorrichtungen bezeichnet, die als Endeffektor eines Roboters dienen und an einem Objekt, dem Werkstück, Aufgaben durchführen. Unter Werkstück werden im Rahmen der Erfindung Objekte angesehen, an denen ein Endeffektor eines Roboters Aufgaben vornimmt. Diese Aufgaben können beispielsweise Montageaufgaben sein.
-
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
-
- DE 102009040194 A1 [0011, 0077]