DE102009040194A1 - Verfahren zur Kraftregelung - Google Patents

Verfahren zur Kraftregelung Download PDF

Info

Publication number
DE102009040194A1
DE102009040194A1 DE200910040194 DE102009040194A DE102009040194A1 DE 102009040194 A1 DE102009040194 A1 DE 102009040194A1 DE 200910040194 DE200910040194 DE 200910040194 DE 102009040194 A DE102009040194 A DE 102009040194A DE 102009040194 A1 DE102009040194 A1 DE 102009040194A1
Authority
DE
Germany
Prior art keywords
tool
sensor
components
contact
tcp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE200910040194
Other languages
English (en)
Other versions
DE102009040194B4 (de
Inventor
Friedrich Dr. Lange
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deutsches Zentrum fuer Luft und Raumfahrt eV
Original Assignee
Deutsches Zentrum fuer Luft und Raumfahrt eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Deutsches Zentrum fuer Luft und Raumfahrt eV filed Critical Deutsches Zentrum fuer Luft und Raumfahrt eV
Priority to DE102009040194.6A priority Critical patent/DE102009040194B4/de
Publication of DE102009040194A1 publication Critical patent/DE102009040194A1/de
Application granted granted Critical
Publication of DE102009040194B4 publication Critical patent/DE102009040194B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39322Force and position control

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Verfahren zur Kraft- und/oder Momentenregelung von Robotern, wobei der Roboter ein Werkzeug mit einem Werkzeugmittelpunkt (TCP), der derjenige Teil des Werkzeugs ist, an der 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 mindestens eine Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt aufweist, mit folgenden Schritten: 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: - Bestimmen einer Auslenkung der Nachgiebigkeit und des fiktiven vektoriellen Abstandes s des aus der Ist-Position x unter Vernachlässigung der Auslenkung der Nachgiebigkeit bestimmten Werkzeugmittelpunktes von einem Kontaktpunkt zwischen Werkzeug und Werkstück, - Bestimmen der Sollposition xdes Werkzeugmittelpunkts über die Ist-Position x, den fiktiv, die Sollbewegung derart geregelt ist, dass von dem Werkzeug die Sollkräfte und/oder die Sollmomente auf das Werkstück ausgeübt werden, wobei vor Schritt 1, nach Schritt 1 und/oder während Schritt 2 folgender Zwischenschritt durchgeführt wird: a) Kalibrieren des Sensors, ...

Description

  • 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 x .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) 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.
  • Es ist daher die Aufgabe der vorliegenden Erfindung, ein Verfahren zur Kraft- und Momentenregelung von Robotern zu schaffen, bei dem eine schnelle und stabile Regelung ohne Überschwingen möglich ist.
  • 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.
  • Ein weiterer Aspekt der Erfindung betrifft daher ein Verfahren, bei dem ein unerwünschtes Verhalten aufgrund von zu vielen beeinflussten Freiheitsgraden vermieden wird.
  • Die vorliegende Aufgabe wird durch das Verfahren gemäß Patentanspruch 1 gelöst.
  • Das erfindungsgemäße Verfahren zur Kraft- und/oder Momentenregelung von Robotern, wobei der Roboter 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 mindestens eine Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt, die vorzugsweise in dem Sensor integriert ist, 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:
    • – Bestimmen einer Auslenkung der Nachgiebigkeit und des fiktiven vektoriellen Abstandes s des aus der Ist-Position x unter Vernachlässigung der Auslenkung der Nachgiebigkeit bestimmten Werkzeugmittelpunktes von einem Kontaktpunkt zwischen Werkzeug und Werkstück
    • – Bestimmen der Sollposition xd des Werkzeugmittelpunkts über die Ist-Position x, den fiktiven vektoriellen Abstand s und einen Soll-Abstand sd,
    wobei die Sollbewegung derart geregelt ist, dass von dem Werkzeug die Sollkräfte und/oder die Sollmomente auf das Werkstück ausgeübt werden,
    wobei vor Schritt 1, nach Schritt 1 und/oder während Schritt 2 folgender Zwischenschritt durchgeführt wird:
    • a) Kalibrieren des Sensors derart, dass die vom Sensor erfassten Kräfte und Momente als fiktiver vektorieller Abstand s ausgeben werden, wobei die Kalibrierung neben der Elastizität der Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt und/oder die sich unter Umständen ändernde Art des Kontakts zwischen Werkzeug und Werkstück berücksichtigt bzw. beinhaltet.
  • Dabei sollte der Roboter derart angesteuert werden, dass die Ist-Position x der Sollposition xd möglichst schnell und genau erfolgt.
  • Der Soll-Abstand sd ist entweder vorgegeben oder wird aus der Sollkraft berechnet.
  • 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 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.
  • Darüber hinaus ermöglicht die Kalibrierung des Sensors, die nicht nur die Elastizität der Nachgiebigkeit zwischen Roboter und TCP berücksichtigt, sondern auch die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt, eine sehr hohe Genauigkeit der Sollbewegung des Roboters und der Sollkräfte und/oder der Sollmomente, die von dem Werkzeug auf das Werkstück ausgeübt werden.
  • Die Auslenkung der Nachgiebigkeit kann beispielsweise über eine Messung durch den Sensor bestimmt werden. Der fiktive vektorielle Abstand s wird vorzugsweise berechnet.
  • Die Sollposition xd weist dabei vorzugsweise Positionskomponenten und Orientierungskomponenten auf. Entsprechend können auch der fiktive vektorielle Abstand s und die Ist-Position x aus Positions- und Orientierungskomponenten bestehen. Mit anderen Worten ist der Sensor derart kalibriert, dass der fiktive vektorielle Abstand s nicht nur die räumliche Position des fiktiven Werkzeugmittelpunktes von einem Kontaktpunkt zwischen Werkzeug und Werkstück, sondern auch die Orientierung der Punkte zueinander beinhaltet.
  • Die Sollposition xd kann Komponenten aufweisen, die über die Ist-Position x und den fiktiven vektoriellen Abstand s bestimmbar sind sowie Referenzkomponenten xr, die einen für die Sollposition xd vorgegebenen Wert beinhalten.
  • Die Sollposition xd besteht somit aus messbaren Komponenten, nämlich die, die über die Ist-Position x und den fiktiven vektoriellen Abstand s 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 Verfahren 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 weiteren Lage xki und Aufzeichnen weiterer Sensordaten
    • a3) Bestimmen einer Gesamtsteifigkeit Cges des Systems anhand der gemessenen Sensordaten und verwenden der Gesamtsteifigkeit Cges für die Kalibrierung des Sensors.
  • Mit Hilfe dieser Unterschritte kann auf einfache Art und Weise die Kalibrierung des Sensors erfolgen, wobei die Kalibrierung neben der Elastizität des Sensors auch die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt berücksichtigt.
  • Dabei kann vorgesehen sein, dass die schrittweise translatorische oder rotatorische Bewegung des Werkzeuges an die Komponenten, die über die Ist-Position x und den fiktiven vektoriellen Abstand s 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 jede Änderung der Lage in Bezug auf die messbaren Freiheitskomponenten sich 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 Gesamtsteifigkeit des Systems in Bezug auf diese Freiheitsgrade in vorteilhafter Weise bestimmbar ist. Dadurch ist eine genaue Kalibrierung des Sensors möglich.
  • Es kann vorgesehen sein, dass eine Kalibrierung des Sensors nur in Bezug auf die Komponenten, die über die Ist-Position x und den fiktiven vektoriellen Abstand s bestimmbar sind, erfolgt.
  • Zusätzlich oder alternativ zu der Bestimmung der Gesamtsteifigkeit des Systems kann bei einem Sensor, der dezentral in Bezug auf den Werkzeugmittelpunkt angeordnet ist, die Kalibrierung des Sensors erfolgen, indem die Kalibrierung den Abstandsvektor dsen und/oder eine Darstellung der Orientierung, insbesondere eine Rotationsmatrix Rsen, beinhaltet, wobei der Abstandsvektor dsen 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, ist die Kalibrierung des Sensors, wenn der Sensor dezentral in Bezug auf den Werkzeugmittelpunkt angeordnet ist, auf eine einfache Art und Weise möglich.
  • Dabei 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 den fiktiven vektoriellen Abstand s 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.
  • Dabei ist insbesondere vorgesehen, dass bei Vorlage eines Einpunktkontaktes eine aufgrund des Regelkreises erfolgende rotatorische Bewegung des Werkzeuges verhindert wird.
  • Es wird somit verhindert, dass bei der Vorlage eines Einpunktkontaktes, der ein sogenannter momentenfreier Kontakt ist, eine Regelung der rotatorischen Bewegung des Werkzeuges erfolgt, wodurch das Werkzeug beispielsweise gegenüber dem Werkstück gekippt 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.
  • Ungewü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 den fiktiven vektoriellen Abstand s 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 und 3 einen Roboter mit Sensor und Werkzeug bei der Bestimmung der Kontaktart zwischen Werkzeug und Werkstück.
  • 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 x0 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) durch die Sensordaten eine Solllage definiert, die dann durch die für den Benutzer unzugängliche schnelle Positionsregelung eingeregelt wird.
  • Der Ansatz nach (3) 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 lautet:
    Figure 00100001
  • 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 kann entweder vorgegeben sein oder wird aus einer Sollkraft berechnet. 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 (4) durch eine Gleichung mit homogenen Transformationsmatrizen ersetzt werden.
  • Figure 00110001
  • Dabei beschreiben T, Td und Tr 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. Ts und
    Figure 00110002
    sind die Transformationen von der realen und der gewünschten TCP-Lage zur Lage des Werkstückes (Objektlage) T0, 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 = x0 – x (6) bzw. Ts = T–1·T0 (7) beschreibbar sind.
  • Dann können (4) und (5) in
    Figure 00120001
    und
    Figure 00120002
    umgeformt werden. Das bedeutet, dass (4) bei einer Regelung nicht die Lage x des TCP zurückführt sondern die Kontaktlage x0 misst. Ohne Rückführung besteht keine Gefahr einer Instabilität.
  • Die Gleichungen (6) bzw. (7) sind gegeben, wenn der Sensor korrekt kalibriert ist, so dass er anstelle von Kräften und Momenten Positionen und Orientierungen misst, also die Auslenkung gegenüber der Nominallage. Bei einem nachgiebigen Sensor wird üblicherweise diese Auslenkung gemessen und dann aufgrund der bekannten Steifigkeiten x des Sensors in den Vektor f' aus Kräften und Momenten transformiert. Hier wird also davon ausgegangen, dass diese Transformation durch s = C·f' (10) rückgängig gemacht wird bzw. gar nicht erst erfolgt. s beschreibt dabei den Kontaktpunkt bezüglich des TCP.
  • Außerdem 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 (11)
  • Der Ansatz (4) so wie die Gleichungen (6) und (7) nehmen an, dass nur der Sensor nachgiebig ist, nicht jedoch der Roboter oder die Umgebung. Dies kann bei einem nachgiebigen Sensor näherungsweise angenommen werden. Bezüglich der Stabilität ist eine zu klein angenommene Nachgiebigkeit unkritisch.
  • Bei einem weichen Werkstück als Kontaktkörper und/oder bei einem in Bezug auf den Werkzeugmittelpunkt dezentral angeordneten Sensor ist jedoch sehr häufig eine Berücksichtigung dieser Umstände bei der Kraft- und/oder Momentenregelung des Roboters notwendig.
  • Daher sieht das erfindungsgemäße Verfahren vor, dass der Sensor derart kalibriert wird, dass die vom Sensor erfassten Kräfte und Momente als fiktiver vektorieller Abstand s ausgegeben werden, wobei die Kalibrierung neben der Elastizität des Sensors die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt beinhaltet.
  • Dieser Verfahrensschritt kann vor oder nach dem Schritt des Vorgebens einer Aufgabe mit einer Sollbewegung des Roboters und Sollkräften und/oder Sollmomenten, die von dem Werkzeug auf das Werkstück ausgeübt werden sollen, durchgeführt werden. Der Schritt des Kalibrierens des Sensors kann auch während der Durchführung der Aufgabe durchgeführt werden, wobei die Durchführung der Aufgabe die im Folgenden einen Regelkreis bildenden Unterschritte beinhaltet:
    • – Bestimmen der Auslenkung der Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt und des fiktiven vektoriellen Abstandes s des aus der Roboter-Ist-Position unter Vernachlässigung der Auslenkung der Nachgiebigkeit bestimmten Werkzeugmittelpunktes von einem Kontaktpunkt zwischen Werkzeug und Werkstück, und
    • – Bestimmen der Soll-Position xd des Werkzeugmittelpunktes über die Ist-Position x, den fiktiven vektoriellen Abstand s und einen Soll-Abstand sd.
    • – Dabei wird der Roboter derart gesteuert, so dass die Ist-Position x der Sollposition
      Figure 00140001
      möglichst schnell und genau folgt.
  • Um neben der Elastizität des Sensors die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt (TCP) zu berücksichtigen, kann für das System eine Gesamtsteifigkeit Cges ermittelt werden.
  • Im Folgenden ist die Ermittlung der Gesamtsteifigkeit sowie deren mathematische Beschreibung erläutert.
  • Der Roboter fährt nun zuerst in eine Lage xk0 mit Kontakt und zeichnet die Sensordaten auf. Dann wird der TCP in kleinen translatorischen oder rotatorischen Schritten von dieser ersten Lage in weitere Lagen xki bewegt.
  • Die Quotienten der Differenzen der Sensorwerte durch die Lagedifferenz ergeben dann elementweise die dimensionslose Steifigkeitsmatrix C –1 / ges des Gesamtsystems, wie z. B. Element c ' / xy von C –1 / ges :
    Figure 00140002
  • Wenn alle sechs Freiheitsgrade messbar sind, werden neben xk0 noch sechs Testpunkte benötigt. Die Schrittweite soll so groß sein, dass die Sensorwerte sich merklich verändern, jedoch nicht größer als die später erwarteten Regelfehler.
  • Wenn bekannt ist, dass weniger als sechs Freiheitsgrade messbar sind, werden entsprechend weniger Testpunkte benötigt.
  • Dabei muss man darauf achten, dass zwischen Roboter und Werkstück ein formschlüssiger Kontakt besteht, so dass jede Änderung der Lage sich auch deutlich in den Sensorwerten widerspiegelt, denn nur dann lässt sich die Steifigkeitsmatrix robust invertieren.
  • Andernfalls sind die c ' / xy die Elemente der Pseudoinversen C ' / ges der Nachgiebigkeitsmatrix Cges. Cges hat dabei im allgemeinen weniger als sechs von Null verschiedene Zeilen. Entsprechend sind weniger als sechs Testpunkte nötig, so dass C ' / ges i. allg. weniger als sechs von Null verschiedene Spalten hat. Bei Verwendung einer Rechtecksmatrix
    Figure 00150001
    die durch Multiplikation C ' / ges·B die von Null verschiedenen Spalten selektiert, ergibt sich Cges = (BTC 'T / gesC ' / gesB)–1BTC 'T / ges. (13)
  • Durch Inversion von C –1 / ges bzw. durch (13) ergibt sich dann die Sollposition und -orientierung bei Berücksichtigung der gesamten Nachgiebigkeit ähnlich zu (4) durch
    Figure 00150002
  • Die Gleichung (5) entsprechende Form gewinnt man durch Darstellung von
    Figure 00160001
    als Vektor von Positionen und Orientierungen mit z. B. Kardanwinkeln, der durch Cges skaliert und dann wieder als homogene Transformationsmatrix ausgedrückt in (5) eingesetzt wird.
  • Wenn man die Sollauslenkung sd im Sensor entsprechend Gleichung (10) aus der Sollkraft f ' / d bestimmt, ergibt sich
    Figure 00160002
  • Bei weichen Kontaktkörpern gilt, abgesehen von Kopplungen und nicht erfassten Komponenten, Cges > I.
  • Bei dezentral angeordnetem Sensor, also wenn der Sensormittelpunkt nicht im TCP liegt, ist Cges keine Diagonalmatrix. Die Diagonalelemente selbst entsprechen bei einem harten Kontaktkörper aber der Einheitsmatrix.
  • Bei einem in Bezug auf den Werkzeugmittelpunkt (TCP) dezentral angeordneten Sensor sieht das erfindungsgemäße Verfahren auch vor, dass die Kalibrierung des Sensors einen Abstandsvektor dsen und/oder eine Rotationsmatrix Rsen verwendet, wobei der Abstandsvektor dsen die Position und die Rotationsmatrix Rsen die Orientierung des Sensors in Bezug auf den Werkzeugmittelpunkt (TCP) angibt.
  • Ein dezentral angeordneter Sensor 12 ist in 2 schematisch dargestellt. Der Sensor 12 ist an dem Roboter 10 dezentral zu dem Werkzeugmittelpunkt (TCP) des Werkzeuges 14 angeordnet. Bei dem in 2 dargestellten Roboter ist das Werkzeug gerade im Kontakt mit dem Werkstück 1. Zwischen dem Sensor und dem TCP ist der Abstandsvektor dsen eingezeichnet.
  • Die entsprechenden Koppelterme werden im Folgenden näher erläutert (Gleichung (16)).
  • Da der Sensormittelpunkt und der TCP normalerweise nicht übereinstimmen, können die Auslenkungen ssen = (p T / senφ T / sen)T im Sensor in eine Auslenkung am TCP stcp = (p T / tcpφ T / tcp)T transformiert werden, die bei Kontakt die Lage s des Kontaktpunktes bezüglich des TCP angibt, p die jeweilige Position und φ die Orientierung. ptcp = psen – dsen × φsen φtcp = φsen (16)
  • Dabei ist dsen der Vektor vom Sensormittelpunkt zum TCP. Eine für den Nominalfall ohne Auslenkung ggf. vorhandene Rotationsmatrix zwischen den beiden Koordinatensystemen wurde aus Gründen der Anschaulichkeit weggelassen, ist aber oft auch vorhanden. Sie kann durch Drehung der Sensorwerte vor ihrer Verwendung in (16) berücksichtigt werden.
  • Bei Verwendung einer Nachgiebigkeitsmatrix Cges und ihrer experimenteller Bestimmung durch Gleichung (12) ist diese Transformation bereits in Cges enthalten, sofern die Rotationen bei der Testbewegung sich auf den TCP beziehen.
  • Gleichung (4) mit (16) ist für Kraftregelungen vorgesehen, bei denen alle sechs Freiheitsgrade durch die Sensorwerte erfasst werden oder bei denen a priori bekannt ist, welche Komponenten messbar sind. Alle Freiheitsgrade werden erfasst, wenn das Werkzeug und das Werkstück fest miteinander verbunden sind. Dagegen sind nur drei Freiheitsgrade gegeben, solange ein 1-Punkt-Kontakt (auch Punkt-Fläche-Kontakt genannt) besteht. Bei geringer Reibung ist sogar ggf. nur die Komponente normal zur Oberfläche durch eine Kraftmessung definiert. Unvollständige Kontaktzustände sind wichtige Zwischenschritte bei allen Montageaufgaben. Daher sieht das erfindungsgemäße Verfahren auch für diesen Fall eine Strategie vor.
  • Das erfindungsgemäße Verfahren sieht daher vor, dass die Art des Kontaktes zwischen Werkzeug und Werkstück bestimmt wird, indem das Werkzeug in das Werkstück bewegt wird und die auf den Werkzeugmittelpunkt einwirkenden Kräfte und/oder Momente bestimmt werden. Der Zustand, bei dem das Werkzeug an das Werkstück heranbewegt wird, ist beispielsweise in 2 dargestellt. Ein derartiger Zustand kann beispielsweise bei einer Montageaufgabe wie dem Eindrehen einer Schraube von Interesse sein.
  • Beim ersten Kontakt sind zwar i. allg. alle drei Positionsfreiheitsgrade messbar, nicht jedoch die Orientierung der Gewindebohrung. Diese ergibt sich erst während des Schraubvorgangs. Das bedeutet, dass im Rahmen einer Montageaufgabe automatisch erkannt werden muss, welche Freiheitsgrade jeweils durch die Sensorwerte definiert sind. Dagegen wird in Gleichung (4) angenommen, dass die Kontaktart bekannt ist, da in Gleichung (4) alle nicht messbaren Freiheitsgrade bereits durch die Referenzwerte xr vorgegeben sind. Daher wird anstelle von (4) nun nur noch xd = x + (s – sd) (17) betrachtet, wobei s in den nicht messbaren Komponenten geeignet ergänzt wird. Entsprechend lässt sich auch (5) vereinfachen.
  • Zur Erläuterung werden die Komponenten des Vektors
    Figure 00180001
    der Kräfte und Momente einzeln betrachtet. Sie werden durch fcom = ftcp mcom = mtcp + dcom × ftcp, (19) vom TCP zum Nachgiebigkeitssystem (Nachgiebigkeit = compliance) transformiert, wobei diesmal der Koppelterm bei den Momenten steht.
  • Mit unverkoppelten Nachgiebigkeiten im Nachgiebigkeitssystem ergibt sich
    Figure 00190001
    und analog zu (16) mit ptcp = pcom – dcom × φcom φtcp = φsen (21) folgt schließlich ptcp = Cpftcp – dcom × (Cφ(mtcp + dcom × ftcp)) φtcp = Cφ(mtcp + dcom × ftcp) (22) wobei stcp = (p T / tcpφ T / tcp)T durch (16) bestimmt wird. Dazu kann bemerkt werden, dass bei einem nachgiebigen Sensor (wie in 2) dcom = dsen = d gilt.
  • Somit führt ein 1-Punkt-Kontakt am TCP mit mtcp = 0 zu einer rotatorischen Auslenkung φtcp ≠ 0 am TCP, die nach (17) auch die Sollorientierung beeinflusst. Gleichung (22) ist bedeutungslos, wenn der Kontakt alle sechs Freiheitsgrade definiert, weil dann die Solllage durch ptcp und φtcp anstelle von ftcp and mtcp definiert wird. Nur wenn nicht alle Freiheitsgrade eingeschränkt sind, muss (22) oder ein Teil davon betrachtet werden.
  • Wenn bei einem 1-Punkt-Kontakt keine Rotation erwünscht ist, darf stcp = (p T / tcpφ T / tcp)T nach (16) nicht unverändert in (17) eingesetzt werden. Dies erfordert zunächst die Feststellung, wann so ein Kontakt besteht. Dies ist der Fall, wenn mtcp = 0 und somit φtcp = Cφ(dcom × ftcp) C –1 / φφtcp = dcom × (C –1 / ppcom) C –1 / φφtcp = dcom × (C –1 / p(ptcp + dcom × φtcp). (23)
  • Nun kann man φtcp = (αtcp, βtcp, γtcp)T durch die Komponenten ersetzen und die Kreuzprodukte elementweise formulieren, z. B. dcom × φ = (dyγ – dzβ, dzα – dxγ, dxβ – dyα)T. (24)
  • Dann ergibt sich ein lineares Gleichungssystem φtcp = Aptcp (25) für die Auslenkung φ0 = φtcp, die sich bei ptcp im Fall eines 1-Punkt-Kontakts ergibt.
  • Um den 1-Punkt-Kontakt auch bei Sensorrauschen geeignet zu berücksichtigen, können beispielsweise alle Rotationen φtcp in einem Bereich von φ1 um φ0 durch
    Figure 00210001
    skaliert werden, wobei φ1 ein Skalar ist, der durch φ1 = |σ 2 / φ + Aσ 2 / pAT| (27) abgeschätzt wird, wobei die σ2 die Kovarianzmatrizen des Rauschens der Sensorwerte ptcp bzw. φtcp sind. φ ist ein Teil von s = (pTφT)T, dem in Gleichung (17) eingesetzten Sensorwert. Auf diese Weise wird φ zu Null gesetzt, wenn (23) exakt erfüllt ist.
  • Das Nullsetzen der Ausweichbewegung in den durch die Messwerte nicht definierten Komponenten von s ergibt mit sd = 0 durch (17) xd = x anstelle von xd = xr nach der unteren Zeile von (4). Dies kann eine Drift ergeben, wenn die Positionsregelung nicht exakt ist. Außerdem ist es ein Widerspruch zu der in (4) vorgegebenen Aufteilung. Beides wird vermieden, indem die Sensorwerte nicht bezüglich der Ist-Lage sondern bezüglich der Referenzlage ausgedrückt werden. Dann ergibt sich xd = xr + (sr – sd). (28)
  • Dabei beschreibt sr die Lage des Kontaktkörpers bezüglich der Referenzlage, während s seine Lage bezüglich der Ist-Lage des Endeffektors darstellt. sr ist nicht direkt messbar. Stattdessen wird es durch stcp,r = stcp + x – xr (29). berechnet. Bei deutlichen rotatorischen Regelabweichungen ist anstelle der Addition der Vektoren die Multiplikation der entsprechenden homogenen Transformationsmatrizen vorzusehen. Entsprechend (5) gilt
    Figure 00220001
    wobei Ts,r = T –1 / r·T·Ts (31) die homogene Transformation der Objektlage T0 bezüglich der Referenzlage Tr ist.
  • Im Gegensatz zu stcp sind die nicht messbaren Komponenten von stcp,r nicht Null. Durch
    Figure 00220002
    wird allerdings erreicht, dass die nicht messbaren Komponenten von sr Null sind.
  • Die Verwendung von (28) anstelle von (17) bedeutet, dass xr bei sr = sd = 0 eingeregelt wird, während (17) bei s = sd = 0 nur ein Ausweichen verhindert, nicht jedoch eine Regelabweichung zwischen x und xr.
  • Durch (32) werden die translatorischen Auslenkungen ptcp am TCP im Gegensatz zu psen nicht verändert. Dies ist jedoch nötig, wenn der Kontakt noch weniger Komponenten definiert. Das ist beispielsweise der Fall, wenn aufgrund von geringer Reibung nur eine Kraft ftcp,z in Andruckrichtung auftritt, so dass bei p = (x, y, z)T weder xtcp noch ytcp definiert sind. Dann werden die nicht definierten Komponenten auch angepasst, z. B. durch
    Figure 00230001
    wobei x auch ein vorgebbarer Skalar ist und x0 analog zu (25) aus (22) bestimmt wird, wobei neben mtcp = 0 auch ftcp,x = 0 und ftcp,y = 0 gelten. Dies ist sinnvoll, wenn der Reibungskoeffizient nicht bekannt ist. Durch (33) wird verhindert, dass der Kontaktpunkt auf der Kontaktfläche wegen φtcp ≠ 0 verschoben wird.
  • Anstelle von (32) kann man allgemeiner, sofern (23) zumindest annähernd erfüllt ist, eine Beziehung zwischen φtcp und ptcp vorgeben, also
    Figure 00230002
    Entsprechend kann man auch prtcp) vorgeben.
  • Anstelle von m = 0 können auch andere Bedingungen am Kontaktpunkt gelten, z. B. beim Eindrehen einer Schraube. Dann muss aus der Kraftgleichung (19) oder der Positionsgleichung aus (22) die Bedingung für den unvollständigen Kontakt bestimmt werden. Danach legt man eine Abhängigkeit zwischen den Elementen des Kraftvektors m (ftcp, mtcp) oder des Lagevektors φ(ptcp, φtcp) fest, um die nicht messbaren Komponenten zu definieren bzw. eine Drift gegenüber der Referenzlage xr zu verhindern.
  • In allen Fällen ist zu beachten, dass – wie oben erläutert – die durch die Schwerkraft erzeugte Auslenkung bereits bei der Messung der Ist-Lage des TCP berücksichtigt wurde und somit in der Auslenkung ssen bzw. stcp nicht mehr enthalten ist.
  • Mit dem zuvor mathematisch erläuterten erfindungsgemäßen Verfahren kann somit verhindert werden, dass beim Vorliegen eines 1-Punkt-Kontaktes aufgrund des Regelkreises eine rotatorische Bewegung des in 2 dargestellten Werkzeuges 14 erfolgt.
  • Es wird jedoch nicht verhindert, dass beim Andruck des Werkzeugs an das Werkstück physikalisch ein Winkel φtcp ≠ 0 auftritt, der z. B. beim Einfügen eines Stiftes in eine enge Bohrung durch Verkanten zum Klemmen führen kann. Die entsprechende Lage des Werkzeuges ist in 3 schematisch dargestellt. Das erfindungsgemäße Verfahren sieht daher auch vor, dass eine entsprechende Ausrichtung des Werkzeuges vorgenommen wird.
  • Die korrekte Ausrichtung des Werkzeuges kann durch eine besondere Wahl der Funktion φr(ptcp) in (34) erreicht werden. Für einen 1-Punkt-Kontakt werden dann beispielsweise anstelle von (32) oder (33) die folgenden Gleichungen verwendet:
    Figure 00240001
  • Zuvor wurde die Ist-Lage als die Lage des TCP ohne die Auslenkung der Nachgiebigkeit definiert. Die Kontaktlage ist dagegen die wirkliche Lage des TCP. Bei unvollständigem Kontakt wird die Ist-Lage wegen |φtcp – φ0| = 0 in den nicht erfassten Komponenten auf x = xd = xr + (–stcp – sd) geregelt. Da in womöglich nicht erfassten Richtungen sd = 0 vorgegeben werden muss, ergibt sich für die Kontaktlage x0 = x + stcp = xr. Das bedeutet, dass in nicht erfassten Komponenten real die Referenzlage eingestellt wird, also auch die vorgegebene Orientierung. Dies erlaubt zu Beginn des Fügeprozesses bei korrekt angenommener Orientierung ein Ansetzen des Stiftes. Wenn sich die Orientierung beim weiteren Einschieben des Stiftes als fehlerhaft herausstellt, wird dies korrigiert, da dann |φtcp – φ0| von Null verschieden ist. Gleichung (36) verhindert bei einem Punkt-Fläche-Kontakt, dass der Kontaktpunkt in Abhängigkeit der Andruckkraft auf der Kontaktfläche verschoben wird.
  • Die allgemeine Formulierung von (35) bzw. (36) für nicht erfasste Komponenten lautet sr = –stcp. (37)
  • Dadurch ergibt sich im Gegensatz zu (4) und (5)
    Figure 00250001
    bzw.
  • Figure 00250002
  • In den messbaren Komponenten ist die Kontaktlage (abgesehen von der Sollauslenkung sd) immer eingestellt, da sie durch die Lage des Kontaktkörpers vorgegeben ist. In diesen Komponenten muss man die Ist-Lage x regeln, um die Kontaktkräfte und -momente klein zu halten.
  • Das grundlegende Verfahren zur Kraft-/Momentenregelung ermöglicht, dass das geregelte System auch bei asynchron oder mit großem Abstand eintreffenden Messwerten nach den ersten gültigen Sensordaten schnell und ohne die Gefahr einer Instabilität einschwingt. Dabei erfolgt kein Überschwingen, sofern dies bei Ausführen einer normalen Bewegungsanweisung auch nicht der Fall ist. Bei diesem Verfahren wird die Ist-Position des Roboterwerkzeugs benötigt, und zwar jeweils gleichzeitig mit der Messung der Sensorwerte.
  • Das erfindungsgemäße Verfahren ermöglicht ferner eine Berücksichtigung von weichen bzw. sehr weichen Werkstücken sowie einen dezentral angeordneten Sensor. Auch verhindert das erfindungsgemäße Verfahren eine Drift bei unvollständigem Kontakt zwischen Werkzeug und Werkstück und eine bereits vorhandene Auslenkung bei unvollständigem Kontakt kann kompensiert werden.
  • Das Verfahren zur Kraftregelung mit Berücksichtigung der gesamten Nachgiebigkeit ermöglicht auch, dass bei einer Normalbewegung an einem weichen unbewegten Kontaktkörper die berechnete Sollposition xd im Rahmen des Messrauschens konstant bleibt. Dies gilt insbesondere während des Einregelns der Sollkraft und erlaubt somit eine überschwingungsfreie Regelung. Das Verfahren zur Bestimmung der Parameter ist so ausgelegt, dass die Parameter ohne a priori Kenntnis der Steifigkeit ermittelt werden.
  • Bei einem dezentral angeordneten Sensor ist das Verfahren zur Kraftregelung mit Berücksichtigung der gesamten Nachgiebigkeit derart ausgelegt, dass bei einer Normalbewegung mit einem dezentral angeordneten Sensor oder einer dezentral angeordneten Nachgiebigkeit die berechnete Sollposition xd im Rahmen des Messrauschens konstant bleibt, ohne dass die Lage des Sensors oder der Nachgiebigkeit bzgl. des TCP vorher vermessen wurde.
  • Bei einem dezentral angeordneten Sensor kann die Lage des Sensors zum TCP auch vermessen werden. Dabei ist das Verfahren zur Kraftregelung mit Berücksichtigung eines Abstandes zwischen TCP und Sensormittelpunkt derart ausgelegt, dass es bei vollständigem Kontakt mit einem harten Kontaktkörper keine stationären Regelfehler gibt, auch wenn sowohl die rotatorische Auslenkung des Sensors als auch der Abstand zwischen Sensor und TCP ungleich Null und beide nicht parallel sind, wenn also dsen × φsen ≠ 0, ohne dass die Nachgiebigkeit des Gesamtsystems vorher identifiziert wird. Unter einem vollständigen Kontakt wird dabei ein Kontakt verstanden, der alle sechs Freiheitsgrade definiert, z. B. weil Werkzeug und Werkstück formschlüssig verbunden und fest an einander fixiert sind.
  • Das Verfahren zur Kraftregelung mit Berücksichtigung eines unvollständigen Kontakts ist derart ausgelegt, dass ein Kontakt, der die Bestimmung der Sollposition und Sollorientierung nicht in allen geregelten Komponenten erlaubt, in den nicht erfassten Komponenten nicht zu einer Ausweichbewegung führt, auch wenn der Abstand zwischen TCP und Nachgiebigkeit ungleich Null ist und die Sollauslenkung der Nachgiebigkeit ungleich Null und nicht parallel dazu ist, ohne dass die Zahl der geregelten Komponenten eingeschränkt wird oder das Verhalten ohne Umschalten bei durch die Messwerte vollständig definiertem Kontakt verschlechtert wird. Insbesondere wird bei am Kontaktpunkt momentenfreiem Kontakt (wie bei einem 1-Punkt-Kontakt) keine Rotation eingeleitet, sofern dies nicht ausdrücklich anstelle einer Translation gefordert ist.
  • Das Verfahren zur Kompensation der Auslenkungen des Werkzeugs bei einem unvollständigen Kontakt ist derart ausgelegt, dass das Werkzeug bei einem Kontakt, der die Bestimmung der Sollposition und Sollorientierung nicht in allen geregelten Komponenten erlaubt, in den durch die Messwerte nicht erfassten Komponenten der Position und Orientierung so ausgerichtet wird wie es ohne Kontakt wäre, auch wenn der Abstand zwischen TCP und Nachgiebigkeit ungleich Null ist und die Nachgiebigkeit rotatorisch ausgelenkt ist. Insbesondere wird das Werkzeug bei am Kontaktpunkt momentenfreiem Kontakt (wie bei einem 1-Punkt-Kontakt) um die rotatorische Auslenkung zurückgedreht. Dadurch ist die Orientierung von der Kontaktkraft unabhängig. Dies ist entscheidend, wenn ein Stift ohne Verkanten in eine Bohrung mit bekannter Orientierung eingeführt werden soll und die Eindringtiefe noch nicht ausreicht, um ein gut messbares Moment am Stift zu erzeugen. Außerdem bleibt der Kontaktpunkt konstant, auch wenn die Andruckkraft erhöht und die Nachgiebigkeit dadurch rotatorisch ausgelenkt wird.
  • Das Verfahren wird beispielsweise zur Montage von Rädern an Kfz-Karossen verwendet. Dabei stellt das Werkzeug gemäß 2 einen Greifer dar, der ein Rad hält und außerdem für die fünf Radschrauben jeweils elektrische Schraubeinrichtungen aufweist. Das Werkstück steht dabei für eine Karosse, an deren Radnaben die Radschrauben verschraubt werden sollen. Die Annäherung erfolgt in der Kontaktphase über die Kraft-/Momentensensorik zwischen Roboter und Werkzeug. Es erfolgt zuerst ein unvollständiger Kontakt, bei dem noch keine Rotation erfolgen soll. Sobald die Schrauben greifen, ist jedoch auch eine Ausrichtung des Werkzeugs nötig, um ein Verklemmen zu verhindern. Weil mehrere Schrauben gleichzeitig angezogen werden, spiegelt sich das Anzugsmoment nicht im Sensor wieder, wodurch ein Ausregeln in allen sechs Freiheitsgraden möglich ist.
  • Bei diesem Beispiel handelt es sich genau genommen bei dem ersten Kontakt um keinen Punktkontakt, da zunächst fünf Schrauben gleichzeitig auftreffen und dann zwei Flächen (Felge und Radnabe) sich berühren. Die dabei theoretisch messbaren Momente bzw. Rotationen sind aber so klein, dass praktisch ein Punktkontakt besteht.
  • 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.

Claims (12)

  1. Verfahren zur Kraft- und/oder Momentenregelung von Robotern, wobei der Roboter 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 Momente, die auf das Werkzeug ausgeübt werden und mindestens eine Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt, aufweist, mit folgenden Schritten: 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: – Bestimmen einer Auslenkung der Nachgiebigkeit und des fiktiven vektoriellen Abstandes s des aus der Ist-Position x unter Vernachlässigung der Auslenkung der Nachgiebigkeit bestimmten Werkzeugmittelpunktes von einem Kontaktpunkt zwischen Werkzeug und Werkstück – Bestimmen der Sollposition xd des Werkzeugmittelpunkts über die Ist-Position x, den fiktiven vektoriellen Abstand s und einen Soll-Abstand sd, wobei die Sollbewegung derart geregelt ist, dass von dem Werkzeug die Sollkräfte und/oder die Sollmomente auf das Werkstück ausgeübt werden, wobei vor Schritt 1, nach Schritt 1 und/oder während Schritt 2 folgender Zwischenschritt durchgeführt wird: a) Kalibrieren des Sensors derart, dass die vom Sensor erfassten Kräfte und Momente als fiktiver vektorieller Abstand s ausgeben werden, wobei die Kalibrierung neben der Elastizität der Nachgiebigkeit zwischen Roboter und Werkzeugmittelpunkt die Elastizität des Werkstückes und/oder eine dezentrale Anordnung des Sensors im Verhältnis zum Werkzeugmittelpunkt berücksichtigt.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Sollposition xd aus Positionskomponenten und Orientierungskomponenten besteht.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Sollposition xd aus Komponenten besteht, die über die Ist-Position x und den fiktiven vektoriellen Abstand s bestimmbar sind, sowie aus Referenzkomponenten xr, die einen für die Sollposition xd vorgegebenen Wert beinhalten.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass der Zwischenschritt a) 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 weiteren Lage xi und Aufzeichnen weiterer Sensordaten a3) Bestimmen einer Gesamtsteifigkeit Cges des Systems anhand der gemessenen Sensordaten und verwenden der Gesamtsteifigkeit Cges für die Kalibrierung des Sensors.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass die schrittweise translatorische oder rotatorische Bewegung des Werkzeuges an die Komponenten, die über die Ist-Position x und den fiktiven vektoriellen Abstand s bestimmbar sind und/oder die Anzahl der weiteren Lagen xi an die Anzahl dieser Komponenten angepasst ist.
  6. Verfahren nach Anspruch 4 oder 5, dadurch gekennzeichnet, dass eine Kalibrierung des Sensors nur in Bezug auf die Komponenten, die über die Ist-Position x und den fiktiven vektoriellen Abstand s bestimmbar sind, erfolgt.
  7. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass der Sensor dezentral in Bezug auf den Werkzeugmittelpunkt angeordnet ist und die Kalibrierung des Sensors einen Abstandsvektor dsen und/oder eine Darstellung der Orientierung, insbesondere eine Rotationsmatrix Rsen, beinhaltet, wobei der Abstandvektor dsen die Position und die Darstellung der Orientierung die Orientierung des Sensors in Bezug auf den Werkzeugmittelpunkt angibt.
  8. Verfahren nach Anspruch 1 bis 3 oder 7, dadurch gekennzeichnet, 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 und/oder Momente bestimmt werden.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, 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 den fiktiven vektoriellen Abstand s bestimmbar sind, in Bezug auf die nicht bestimmbaren Positionskomponenten oder Orientierungskomponenten keine Regelung der Sollbewegung oder eine Regelung entsprechend einer vorher definierten Referenzbewegung erfolgt.
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass bei Vorlage eines 1-Punkt-Kontaktes eine aufgrund des Regelkreises erfolgende rotatorische Bewegung des Werkzeuges verhindert oder durch eine andere Bewegung ersetzt wird.
  11. Verfahren nach einem der Ansprüche 8 bis 10, dadurch gekennzeichnet, dass bei der Bestimmung der Art des Kontaktes ein Sensorrauschen berücksichtigt wird.
  12. Verfahren nach Anspruch 8, dadurch gekennzeichnet, 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 den fiktiven vektoriellen Abstand s bestimmbar sind, das Werkzeug bezüglich der nicht bestimmbaren Positionskomponenten oder Orientierungskomponenten in eine Nominallage ausgerichtet wird.
DE102009040194.6A 2009-09-07 2009-09-07 Verfahren zur Kraftregelung Expired - Fee Related DE102009040194B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102009040194.6A DE102009040194B4 (de) 2009-09-07 2009-09-07 Verfahren zur Kraftregelung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009040194.6A DE102009040194B4 (de) 2009-09-07 2009-09-07 Verfahren zur Kraftregelung

Publications (2)

Publication Number Publication Date
DE102009040194A1 true DE102009040194A1 (de) 2011-03-17
DE102009040194B4 DE102009040194B4 (de) 2015-06-18

Family

ID=43571086

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009040194.6A Expired - Fee Related DE102009040194B4 (de) 2009-09-07 2009-09-07 Verfahren zur Kraftregelung

Country Status (1)

Country Link
DE (1) DE102009040194B4 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012206503A1 (de) 2012-04-19 2013-10-24 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Kraftregelung
JP2014515688A (ja) * 2011-05-04 2014-07-03 シプラ・リミテッド ドーズカウンタ

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020209866B3 (de) 2020-08-05 2021-12-02 Kuka Deutschland Gmbh Verfahren und System zum Betreiben eines Roboters

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0584843B1 (de) * 1990-02-27 1998-10-21 Kabushiki Kaisha Toshiba Vorrichtung zum Steuern der Bearbeitungskraft eines Werkzeugs
DE10349361A1 (de) * 2003-10-23 2005-05-25 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Positionieren eines Handhabungsgeräts
US20060048364A1 (en) * 2004-09-08 2006-03-09 Hui Zhang Robotic machining with a flexible manipulator
EP0884141B1 (de) * 1996-10-24 2006-07-19 Fanuc Ltd Roboterkraftsteversystem mit visuellem sonsor für zusammenfügungsarbeiten
US20080027580A1 (en) * 2006-07-28 2008-01-31 Hui Zhang Robot programming method and apparatus with both vision and force
EP1414610B1 (de) * 2001-07-12 2008-03-19 KUKA Systems GmbH Widerstandsschweisseinrichtung und steuerverfahren

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0584843B1 (de) * 1990-02-27 1998-10-21 Kabushiki Kaisha Toshiba Vorrichtung zum Steuern der Bearbeitungskraft eines Werkzeugs
EP0884141B1 (de) * 1996-10-24 2006-07-19 Fanuc Ltd Roboterkraftsteversystem mit visuellem sonsor für zusammenfügungsarbeiten
EP1414610B1 (de) * 2001-07-12 2008-03-19 KUKA Systems GmbH Widerstandsschweisseinrichtung und steuerverfahren
DE10349361A1 (de) * 2003-10-23 2005-05-25 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Positionieren eines Handhabungsgeräts
US20060048364A1 (en) * 2004-09-08 2006-03-09 Hui Zhang Robotic machining with a flexible manipulator
US20080027580A1 (en) * 2006-07-28 2008-01-31 Hui Zhang Robot programming method and apparatus with both vision and force

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014515688A (ja) * 2011-05-04 2014-07-03 シプラ・リミテッド ドーズカウンタ
DE102012206503A1 (de) 2012-04-19 2013-10-24 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Kraftregelung
DE102012206503B4 (de) * 2012-04-19 2015-10-15 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Kraftregelung

Also Published As

Publication number Publication date
DE102009040194B4 (de) 2015-06-18

Similar Documents

Publication Publication Date Title
DE102011011681B4 (de) Roboter mit einer Lernsteuerfunktion
DE102015004484B4 (de) Robotersteuerung und Robotersystem zum Bewegen eines Roboters in Erwiderung einer Kraft
DE102015004481B4 (de) Robotersteuervorrichtung zum Steuern eines gemäß einer ausgeübten Kraft bewegten Roboters
DE102015004475B4 (de) Robotersteuervorrichtung zum Steuern eines Roboters, der gemäß einer aufgebrachten Kraft bewegt wird
EP3402632B1 (de) Bestimmung einer orientierung eines roboters relativ zur gravitationsrichtung
DE102018210864B3 (de) Verfahren und System zum Regeln eines Roboters
EP3323026A1 (de) Ermitteln eines eingabebefehls für einen roboter, der durch manuelles ausüben einer kraft auf den roboter eingegeben wird
EP2243602A2 (de) Verfahren und Vorrichtung zur Regelung eines Manipulators
DE102012202609A1 (de) Electronic system and method for compensating the dimensional accuracy of a 4-axis cnc machining system using global and local offsets
DE102004026814A1 (de) Verfahren und Vorrichtung zum Verbessern der Positioniergenauigkeit eines Handhabungsgeräts
DE102009018403A1 (de) Verfahren und Vorrichtung zur Regelung eines Manipulators
DE102018214257B3 (de) Roboterregelung
DE112018006220T5 (de) Verwendung eines Unterstützungsmotors eines Servolenkungssystems zum Erzeugen von Testzyklen gemäß einem Schwingungserfassungszyklus
DE112018006219T5 (de) Verwendung eines Unterstützungsmotors eines Servolenkungssystems zum Erzeugen von Testzyklen gemäß einem Krafterfassungszyklus
EP2500148A1 (de) Verfahren und Vorrichtung zum Steuern eines Roboters mit Hilfe eines virtuellen Modells des Roboters
DE102009040194B4 (de) Verfahren zur Kraftregelung
EP3802013B1 (de) Kraftregelung eines roboters
DE102012022190B4 (de) Inverse Kinematik
DE102016004185B4 (de) Numerische Steuerung mit Kontrolle eines Eingriffs zwischen Werkzeug und Werkstück
EP3441200A1 (de) Referenzierverfahren und vorrichtung für industrieroboter
EP3444076B1 (de) Verfahren zur absolutpositionsbestimmung eines robotischen gerätes und robotisches gerät
DE102018207354B3 (de) Verfahren und System zum Steuern eines Roboters
WO2018083008A1 (de) Kalibrieren eines modells eines prozess-roboters und betreiben eines prozess-roboters
DE102021212128B3 (de) 16Verfahren und System zum Steuern eines lasttragenden Roboters sowie zum Ermitteln eines Parameters der Last des Roboters
DE19500738C1 (de) Regelanordnung und Regelverfahren für einen motorisch betriebenen Gelenkarm

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee