DE102019134665B3 - Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators - Google Patents

Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators Download PDF

Info

Publication number
DE102019134665B3
DE102019134665B3 DE102019134665.7A DE102019134665A DE102019134665B3 DE 102019134665 B3 DE102019134665 B3 DE 102019134665B3 DE 102019134665 A DE102019134665 A DE 102019134665A DE 102019134665 B3 DE102019134665 B3 DE 102019134665B3
Authority
DE
Germany
Prior art keywords
robot manipulator
robot
external power
determined
manipulator
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.)
Active
Application number
DE102019134665.7A
Other languages
English (en)
Inventor
Andreas Spenninger
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.)
Franka Emika GmbH
Original Assignee
Franka Emika GmbH
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 Franka Emika GmbH filed Critical Franka Emika GmbH
Priority to DE102019134665.7A priority Critical patent/DE102019134665B3/de
Application granted granted Critical
Publication of DE102019134665B3 publication Critical patent/DE102019134665B3/de
Priority to US17/784,830 priority patent/US20230008146A1/en
Priority to PCT/EP2020/086423 priority patent/WO2021122749A1/de
Priority to CN202080086711.9A priority patent/CN114829081A/zh
Priority to KR1020227023983A priority patent/KR20220113785A/ko
Priority to EP20837949.5A priority patent/EP4076867A1/de
Priority to JP2022537895A priority patent/JP2023508912A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L27/00Testing or calibrating of apparatus for measuring fluid pressure
    • G01L27/002Calibrating, i.e. establishing true relation between transducer output value and value to be measured, zeroing, linearising or span error determination
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01LMEASURING FORCE, STRESS, TORQUE, WORK, MECHANICAL POWER, MECHANICAL EFFICIENCY, OR FLUID PRESSURE
    • G01L5/00Apparatus for, or methods of, measuring force, work, mechanical power, or torque, specially adapted for specific purposes
    • G01L5/0061Force sensors associated with industrial machines or actuators
    • 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/37Measurements
    • G05B2219/37537Virtual sensor
    • 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/39059Sensor adaptation for robots by software
    • 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/39529Force, torque sensor in wrist, end effector
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40599Force, torque sensor integrated in joint

Abstract

Die Erfindung betrifft ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators (1), wobei in einer Vielzahl von Posen die Schritte erfolgen:- Aufbringen (S1) eines externen Kraftwinders auf den Robotermanipulator (1),- Ermitteln (S2) einer Schätzung des externen Kraftwinders,- Ermitteln (S3) einer jeweiligen Kostenfunktion auf Basis einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder,- Ermitteln (S4) einer jeweiligen Kalibrierfunktion durch Minimieren der jeweiligen Kostenfunktion, und- Abspeichern (S5) der jeweiligen Kalibrierfunktion in einen Datensatz aller Kalibrierfunktionen unter Zuordnung der jeweiligen Kalibrierfunktion zu der jeweiligen Pose, für die die jeweilige Kalibrierfunktion ermittelt wurde.

Description

  • Die Erfindung betrifft ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators sowie ein Robotersystem mit einem Roboterarm und mit einer Steuereinheit zum Anwenden dieser Kablibrierung.
  • Im Stand der Technik sind eine Vielzahl von Robotersystemen und entsprechende Verfahren zum Steuern der Robotersysteme bekannt.
  • Die DE 20 2019 102 430 U1 betrifft dazu ein Robotersystem aufweisend einen Robotermanipulator und eine mit dem Robotermanipulator verbundene Recheneinheit, wobei der Robotermanipulator eine Vielzahl von durch Gelenke miteinander verbundenen Gliedern aufweist und wobei ein jeweiliges der Gelenke einen Drehmomentsensor aufweist, wobei der jeweilige Drehmomentsensor zum Erfassen eines jeweiligen Moments zwischen den jeweiligen beiden am jeweiligen Gelenk anliegenden Gliedern des Robotermanipulators und zum Übermitteln des jeweiligen erfassten Moments an die Recheneinheit ausgeführt ist, wobei die Recheneinheit dazu ausgeführt ist: Einen Vektor aus den erfassten Momenten mit erwarteten Momenten zu einem Vektor aus externen Momenten zu kompensieren, eine vorgegebene Jacobimatrix zu faktorisieren und unterhalb eines vorgegebenen Invertierbarkeitsmaßes liegende Elemente aus zumindest einem der Faktoren zu identifizieren, die identifizierten Elemente des zumindest einen Faktors auf einen vorgegebenen Wert zu setzen zum Erzeugen von modifizierten Faktoren, aus den modifizierten Faktoren eine modifizierte Pseudoinverse einer Transponierten der Jacobimatrix zu ermitteln, den Vektor der externen Momente mittels der modifizierten Pseudoinversen in einen Vektor eines externen Kraftwinders zu transformieren, und ein Steuerprogramm auf Basis des externen Kraftwinders auszuführen und Aktuatoren des Robotermanipulators anhand des Steuerprogramms anzusteuern.
  • Die DE 10 2015 205 176 B3 betrifft ein Verfahren zum Steuern eines Manipulators, insbesondere eines Gelenkarmroboters, aufweisend: Erkennen eines Freigabewunsches basierend auf einer Kraftausübung auf den Manipulator durch eine Bedienperson; und Freigeben des Manipulators in Reaktion auf das Erkennen des Freigabewunsches; wobei das Erkennen des Freigabewunsches ein Überwachen des Verlaufs zumindest eines einen Zustand des Manipulators charakterisierenden Messwerts umfasst; wobei der zumindest eine einen Zustand des Manipulators charakterisierende Messwert ein Drehmoment des Manipulators umfasst und/oder eine Position des Manipulators umfasst; wobei das Erkennen des Freigabewunsches ein Erkennen, dass eine Differenz zwischen einem gemessenen Drehmoment und einem Referenzdrehmoment bzw. zwischen einer gemessenen Position und einer Referenzposition eine vorgegebene Fehlerschranke betragsmäßig überschreitet umfasst; wobei das Referenzdrehmoment bzw. die Referenzposition durch einen Mittelwert von zuvor gemessenen Drehmomenten bzw. Positionen berechnet wird, oder wobei das Referenzdrehmoment bzw. die Referenzposition durch einen Snapshot-Messwert gebildet wird.
  • Die DE 10 2015 012 959 B4 betrifft ein Robotersystem mit zumindest einem Roboterarm, einer Steuereinheit zur Steuerung des Roboterarms und einer Roboterarm-Sensorik, wobei die Steuerung und Roboterarm-Sensorik so ausgelegt sind, dass sie auf vorherbestimmte, über Berührung durch einen Benutzer aufbringbare Kräfte und Momente, die auf den Roboterarm wirken, so reagieren, dass das Robotersystem mindestens eine vorherbestimmte Operation ausführt, die diesen Kräften und Momenten zugeordnet ist, wobei die Kräfte und Momente einer Steuerung auf der graphischen Benutzeroberfläche einer Anzeigevorrichtung des Robotersystems zugeordnet sind.
  • Die DE 10 2015 009 151 A1 betrifft ein Verfahren zum automatisierten Ermitteln eines Eingabebefehls für einen Roboter, der durch manuelles Ausüben einer externen Kraft auf den Roboter eingegeben wird, wobei der Eingabebefehl auf Basis desjenigen Anteils von durch die externe Kraft aufgeprägten Gelenkkräften ermittelt wird, der eine Bewegung des Roboters nur in einem für diesen Eingabebefehl spezifischen Unterraum des Gelenkkoordinatenraums des Roboters zu bewirken sucht.
  • Die DE 10 2013 019 450 A1 betrifft ein Verfahren zum Vermeiden einer Kollision eines wenigstens zwei Bewegungsachsen aufweisenden Roboters mit einem vom Roboter unterschiedlichen Objekt, mit den Schritten: - Erfassen wenigstens eines eine auf den Roboter an einer ersten der Bewegungsachsen wirkende Kraft charakterisierenden ersten Werts mittels zumindest eines ersten Sensors, - Erfassen wenigstens eines eine auf den Roboter an der zweiten Bewegungsachse wirkende Kraft charakterisierenden zweiten Werts mittels zumindest eines zweiten Sensors, - Beziehen der Werte auf wenigstens einen in einem kartesischen Koordinatensystem liegenden Punkt, - Aufsummieren der auf den Punkt (P1 = bezogenen Werte, - Vermeiden der Kollision, wenn die Summe der aufsummierten Werte einen vorgebbaren Schwellenwert überschreitet.
  • Und die DE 10 2013 010 290 A1 betrifft ein Verfahren zum Überwachen eines kinematisch redundanten Roboters, mit den Schritten: Erfassen von Gelenkkräften, die in Gelenken des Roboters wirken; Ermitteln von einer externen Wirkkraft zwischen einer roboterfesten Referenz und einer Umgebung auf Basis der erfassten Gelenkkräfte; Ermitteln von einer weiteren Überwachungsgröße, die wenigstens im Wesentlichen unabhängig von einer auf die roboterfeste Referenz wirkenden externen Kraft ist, auf Basis der erfassten Gelenkkräfte; und Überwachen der ermittelten externen Wirkkraft und der ermittelten weiteren Überwachungsgröße.
  • Aufgabe der Erfindung ist es, das Ausführen eines virtuellen Kraftsensors an einem Robotermanipulator bzw. Roboterarm zu verbessern.
  • Die Erfindung ergibt sich aus den Merkmalen der unabhängigen Ansprüche. Vorteilhafte Weiterbildungen und Ausgestaltungen sind Gegenstand der abhängigen Ansprüche.
  • Ein erster Aspekt der Erfindung betrifft ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators, wobei der virtuelle Kraftsensor zum Ermitteln eines auf den Robotermanipulator wirkenden externen Kraftwinders auf Basis von durch Drehmomentsensoren in Gelenken des Robotermanipulators ermittelten Momenten dient, wobei der Robotermanipulator in eine Vielzahl von Posen verfahren oder manuell geführt wird und in jeder der Posen die folgenden Schritte ausgeführt werden:
    • - Aufbringen eines jeweiligen vorgegebenen externen Kraftwinders auf den Robotermanipulator,
    • - Ermitteln einer jeweiligen Schätzung des externen Kraftwinders auf Basis einer Invertierten oder Pseudoinvertierten der Transponierten der für die aktuelle Pose geltenden Jacobimatrix und auf Basis eines Vektors externer Drehmomente, wobei der Vektor externer Drehmomente auf Basis der durch die Drehmomentsensoren in den Gelenken des Robotermanipulators ermittelten Momente und auf Basis von auf den Robotermanipulator wirkenden erwarteten Momenten ermittelt wird,
    • - Ermitteln einer jeweiligen Kostenfunktion auf Basis einer Norm einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder oder auf Basis einer Differenz einer Norm der ermittelten Schätzung des externen Kraftwinders und einer Norm des vorgegebenen externen Kraftwinders,
    • - Ermitteln einer jeweiligen Kalibrierfunktion durch Minimieren der jeweiligen Kostenfunktion, wobei die Kalibrierfunktion zum Anpassen eines im späteren Betrieb aktuell ermittelten externen Kraftwinders dient, und
    • - Abspeichern der jeweiligen Kalibrierfunktion in einen Datensatz aller Kalibrierfunktionen unter Zuordnung der jeweiligen Kalibrierfunktion zu der jeweiligen Pose, für die die jeweilige Kalibrierfunktion ermittelt wurde.
  • Eine Pose des Robotermanipulators gibt dabei insbesondere die Gesamtheit der Positionen und der Orientierungen aller Glieder einschließlich eines Endeffektors, sofern vorhanden, des Robotermanipulators an. Sind die vollständigen Informationen über eine Pose bekannt, kann der Robotermanipulator durch alle Antriebe insbesondere an seinen Gelenken in eine eindeutige „Haltung“ verfahren werden.
  • Ein externer Kraftwinder gibt Kräfte und/oder Momente an, die von der Umgebung ausgehend auf den Robotermanipulator und umgekehrt wirken, wobei der externe Kraftwinder im Allgemeinen drei Komponenten für Kräfte und drei Komponenten für Momente aufweist. Bevorzugt ist der vorgegebene externe Kraftwinder über alle Posen des Robotermanipulators der gleiche Kraftwinder, das heißt konstant. Alternativ bevorzugt ist für zumindest zwei der Posen ein unterschiedlicher Kraftwinder vorgesehen, was vorteilhaft auch solchen Posen Rechnung trägt, die bei einem konstanten Kraftwinder sich zumindest zum Teil singulär verhalten würden, das heißt, dass in zumindest manchen der die Glieder verbindenden Gelenken des Robotermanipulators eine externe Kraft des Kraftwinders, ohne ein Moment im Gelenk zu erzeugen, linear durch dieses Gelenk in Richtung des nächstliegenden proximalen Gliedes geleitet wird. Ein Beispiel für eine solche singuläre Pose ist, wenn alle Glieder des Robotermanipulators auf einer gemeinsamen Geraden ausgerichtet sind und der externe Kraftwinder nur einen Kraftvektor in Richtung eben genau dieser gemeinsamen Geraden zur Basis des Robotermanipulators aufweist.
  • Während dieser externe Kraftwinder auf den Robotermanipulator aufgebracht wird, wird durch den virtuellen Kraftsensor eine Schätzung dieses externen Kraftwinders ermittelt. Dies erfolgt mithilfe von insbesondere, aber nicht notwendigerweise ausschließlich, an den Gelenken angeordnet Drehmomentsensoren. Die Drehmomentsensoren an den Gelenken sind aus der Vielzahl der im Stand der Technik bekannten Drehmomentsensoren auswählbar. Insbesondere sind die Drehmomentsensoren mechanische Drehmomentsensoren, in denen eine Dehnung eines flexibel elastischen Materials, beispielsweise in Speichen des jeweiligen Drehmomentsensors, erfasst wird, wobei durch Kenntnis der Materialkonstanten auf ein anliegendes Moment geschlossen werden kann. Weiterhin insbesondere möglich ist es, eine in einem elektrischen Motor vorliegende Stromstärke zu messen und von diesem auf ein im Gelenk vorliegendes Moment zu schließen. Das so erfasste jeweilige Moment in einem Gelenk setzt sich typischerweise aus einer Vielzahl von Ursachen zusammen. Ein erster Teil des Moments ergibt sich im Falle einer Bewegung des Robotermanipulators aus den kinematischen Kräften und Momenten, insbesondere der Coriolisbeschleunigung sowie der Zentrifugalbeschleunigung. Ein weiterer Teil des gemessenen Moments ist, unabhängig von der Bewegung des Robotermanipulators, einem Schwerkrafteinfluss zuzurechnen.
  • Während an den Gelenken durch die Drehmomentsensoren die Momente insbesondere direkt oder indirekt durch eine Messung erfasst werden, so führen diese durch Schwerkrafteinfluss und kinematisch verursachten Kräfte und Momente zu den erwarteten Momenten. Das heißt, abhängig von der aktuellen Bewegungsgeschwindigkeit, von der aktuellen Beschleunigung des Robotermanipulators, und von der Masseverteilung und der aktuellen Pose des Robotermanipulators (Schwerkrafteinfluss) können diese Momente an den Drehmomentsensoren des Robotermanipulators der Theorie nach als erwartete Momente ermittelt werden und von den gemessenen Momenten an den jeweiligen Drehmomentsensoren abgezogen werden. Dies erfolgt bevorzugt in einem Impulsbeobachter, dessen Ergebnis die externen Momente sind.
  • Um von den so ermittelten externen Momenten auf eine Schätzung des vorgegebenen externen Kraftwinders mit seinem aktuellen Bezugspunkt zu schließen, ist die (Pseudo-)inverse der Transponierten der Jacobimatrix erforderlich. Die Pseudoinverse (anstelle der Inversen selbst) ist insbesondere dann erforderlich, wenn es sich bei dem Robotermanipulator um einen redundanten Manipulator handelt, das heißt, dass zumindest zwei der die Glieder verbindenden Gelenke zueinander redundante Freiheitsgrade aufweisen. In einem redundanten Robotermanipulator können insbesondere Glieder des Robotermanipulators bewegt werden, ohne dass sich eine Orientierung und/oder eine Position des Endeffektors des Robotermanipulators verändern würde.
  • Die Jacobimatrix verknüpft grundsätzlich die Winkelgeschwindigkeiten an den Gelenken zu der translatorischen und rotatorischen Geschwindigkeit an einem beliebigen Punkt, insbesondere an einem distalen Ende des Robotermanipulators. Prinzipiell ist es jedoch unerheblich, ob tatsächlich Geschwindigkeiten betrachtet werden; so kann die Jacobimatrix auch für den Zusammenhang zwischen den Momenten an den Gelenken und den Kräften und Momenten an dem jeweiligen beliebigen Punkt verwendet werden. Die Transponierte der Jacobimatrix J, nämlich JT, vermittelt zwischen dem externen Kraftwinder Fext zu dem Vektor der ermittelten externen Drehmomente τext wie folgt: τ e x t = J T F e x t
    Figure DE102019134665B3_0001
  • Nach Umstellung dieser Gleichung mit Hilfe der (Pseudo)inversen der Transponierten von J, bezeichnet als (JT)# , gilt für die Schätzung des externen Kraftwinders Fext,est auf Basis des Vektors der ermittelten externen Drehmomente τext : F e x t , e s t = ( J T ) # τ e x t
    Figure DE102019134665B3_0002
  • Die Richtung und der Betrag des vorgegebenen externen Kraftwinders sind per Definition bekannt, da der bekannte Betrag der Vorgabe der externen Kraftwinder auch aufgebracht wird. Mit obiger Rechnung ist auch die Schätzung des externen Kraftwinders in jeder einzelnen Pose des Robotermanipulators, in der ein externer Kraftwinder aufgebracht wird, bekannt. Hierauf erfolgt das Ermitteln einer jeweiligen Kostenfunktion auf Basis einer Norm einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder oder auf Basis einer Differenz einer Norm der ermittelten Schätzung des externen Kraftwinders und einer Norm des vorgegebenen externen Kraftwinders.
  • Im ersten Fall, nämlich wenn das Ermitteln einer jeweiligen Kostenfunktion auf Basis einer Norm einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder erfolgt, wird eine Kostenfunktion K nach folgendem Schema ermittelt: K = f ( F e x t , e s t F e x t , r e a l )
    Figure DE102019134665B3_0003
  • Im zweiten Fall, nämlich wenn das Ermitteln einer jeweiligen Kostenfunktion auf Basis einer Differenz einer Norm der ermittelten Schätzung des externen Kraftwinders und einer Norm des vorgegebenen externen Kraftwinders erfolgt, wird eine Kostenfunktion nach dem folgendem Schema ermittelt: K = f ( F e x t , e s t F e x t , r e a l )
    Figure DE102019134665B3_0004
  • Während der erste Fall für den allgemeinen Fall von mehreren Komponenten von Kräften und/oder Momenten im externen Kraftwinder bevorzugt verwendet wird, eignet sich der zweite Fall insbesondere für die Betrachtung einer einzelnen Komponente, insbesondere dann, wenn der vorgegebene externe Kraftwinder in die immer gleiche Richtung zeigt, was insbesondere beim Anhängen einer externen Last mit vorgegebener Masse der Fall ist.
  • Ferner folgt das Ermitteln einer jeweiligen Kalibrierfunktion durch Minimieren der jeweiligen Kostenfunktion, wobei die Kalibrierfunktion zum Anpassen eines im späteren Betrieb aktuell ermittelten externen Kraftwinders dient, das heißt, Ziel ist die Lösung der Vorschrift min K (x) nach den Variablen und/oder Parametern x der Kalibrierfunktion.
  • Bevorzugt erfolgen die Schritte des Ermittelns einer Schätzung des externen Kraftwinders, des Ermittelns einer jeweiligen Kalibrierfunktion durch Ermitteln einer jeweiligen Kostenfunktion und Minimieren dieser, und des Abspeicherns der jeweiligen Kalibrierfunktion jeweils durch eine Recheneinheit. Die Recheneinheit ist insbesondere mit dem Robotermanipulator verbunden. Besonders bevorzugt ist die Recheneinheit am Robotermanipulator selbst, insbesondere an einem Sockel oder einer Basis des Robotermanipulators, angeordnet.
  • Es ist eine vorteilhafte Wirkung der Erfindung, dass anstelle der Kalibrierung jedes einzelnen der Drehmomentsensoren des Robotermanipulators die Gesamtheit aller Drehmomentsensoren in ihrer Funktion als virtueller Kraftsensor unter Berücksichtigung der erwarteten Momente auf den Robotermanipulator posenabhängig kalibriert werden, und somit alle Unsicherheiten in der Masseverteilung des Robotermanipulators, Eigenheiten der Drehmomentsensoren und andere Effekte allesamt berücksichtigt werden. Durch den Datensatz aller Kalibrierfunktionen ist es somit möglich, eine für eine bestimmte Pose des Robotermanipulators individuelle Kalibrierung auf den virtuellen Kraftsensor des Robotermanipulators anzuwenden.
  • Gemäß einer vorteilhaften Ausführungsform erfolgt das Aufbringen des vorgegebenen externen Kraftwinders auf den Robotermanipulator an einem distalen Ende des Robotermanipulators. Am distalen Ende des Robotermanipulators ist bevorzugt ein Endeffektor angeordnet. Da Kontaktkräfte des Robotermanipulators, abgesehen von unerwarteten Kollisionen, typischerweise zwischen dem Endeffektor und einem Objekt aus der Umgebung des Robotermanipulators stattfinden, berücksichtigt diese Ausführungsform vorteilhaft diesen Umstand, sodass die Kalibrierung insbesondere mit Bezug auf einen Kraftwinder zwischen dem Endeffektor am distalen Ende des Robotermanipulators und der Umgebung des Robotermanipulators erfolgt.
  • Bevorzugt wird die Vielzahl von Posen des Robotermanipulators durch ein äquidistantes Gitter von Positionen für einen Referenzpunkt des Robotermanipulators gegenüber einem erdfesten Koordinatensystem festgelegt, wodurch vorteilhaft sämtliche mögliche Positionen des Referenzpunktes des Robotermanipulators (unter Umständen mit mehreren Posen je Gitterpunkt für einen redundanten Robotermanipulator) zumindest näherungsweise berücksichtigt werden, allerdings auch eine sehr hohe Anzahl von Gitterpunkten zu berücksichtigen ist.
  • Gemäß einer weiteren vorteilhaften Ausführungsform wird daher eine Aufgabe für den Robotermanipulator vorgegeben, die Aufgabe analysiert, und abzufahrende Arbeitspunkte werden bei der Ausführung der Aufgabe identifiziert, wobei die jeweiligen Posen des Robotermanipulators so gewählt werden, dass jeweils einer der Arbeitspunkte und ein Referenzpunkt des Robotermanipulators in einer jeweiligen Pose übereinstimmen. Der Referenzpunkt des Robotermanipulators ist insbesondere ein Referenzpunkt an dem distalen Ende des Robotermanipulators, und insbesondere am Endeffektor gedacht angeordnet. Der Referenzpunkt ist insbesondere körperfest mit dem Robotermanipulator, insbesondere mit einem Ort auf der Oberfläche des Robotermanipulators gedacht verbunden, das heißt, er führt gegenüber diesem ausgewählten Ort keine Relativbewegung auch bei einer Bewegung des Robotermanipulators durch. Vorteilhaft wird mit dieser Ausführungsform die Kalibrierung speziell auf eine vom Robotermanipulator durchzuführende Aufgabe abgestimmt und die Zahl der Gitterpunkte deutlich reduziert.
  • Gemäß einer weiteren vorteilhaften Ausführungsform ist der Robotermanipulator ein redundanter Robotermanipulator und die Schätzung des externen Kraftwinders wird unter Verwendung der Pseudoinversen der Transponierten der für die jeweilige Pose des Robotermanipulators aktuellen Jacobimatrix ermittelt. Ein redundanter Robotermanipulator weist zueinander redundante Freiheitsgrade auf. Das heißt insbesondere, dass sich Glieder des Robotermanipulators bewegen können, ohne dass sich dabei eine Orientierung eines bestimmten Gliedes, insbesondere eines Endeffektors des Robotermanipulators, und/oder eine Position eines vorgegebenen Referenzpunktes, insbesondere an dem distalen Ende des Robotermanipulators, ändert.
  • Gemäß einer weiteren vorteilhaften Ausführungsform wird zumindest für eine Teilmenge der Vielzahl von Posen des Robotermanipulators der redundante Robotermanipulator in seinem Nullraum über eine Vielzahl von Posen verfahren und für jede der Vielzahl von Posen wird eine eigene Kalibrierfunktion ermittelt und abgespeichert. Vorteilhaft werden durch diese Ausführungsform auch sich ändernde Ungenauigkeiten bei der Schätzung eines externen Kraftwinders durch eine Posen-Änderung des Robotermanipulators in seinem Nullraum berücksichtigt.
  • Gemäß einer weiteren vorteilhaften Ausführungsform erfolgt das Minimieren der jeweiligen Kostenfunktion durch ein gradienenbasiertes Verfahren. Die Aufgabe der Minimierung der Kostenfunktion, das heißt min K(x) , wird dabei insbesondere mit Hilfe eines Suchschrittes s = - α∇K ausgeführt, wobei α die Länge des aktuellen Suchschrittes, s die Suchrichtung, und ∇ den Gradienten der Kostenfunktion K(x) , abhängig von Variablen und/oder Parametern x der Kalibrierfunktion K (x) angibt. Bevorzugt wird der Parameter α mithilfe eines Liniensuchverfahrens, dem sogenannten „line search“ bestimmt, sodass in dem unter Umständen höherdimensionalen Parameterraum von x nach Bestimmung der Suchrichtung entlang dieser Suchrichtung das lokale Minimum gesucht wird und bei Erreichen dieses lokalen Minimums eine neue Suchrichtung durch Ermittlung eines neuen aktuellen Gradienten der dort ermittelten Kostenfunktion (∇K) ermittelt wird. Alternativ bevorzugt wird das gradientenbasierte Suchverfahren um Krümmungsinformationen der Kostenfunktion erweitert und somit eine quadratische Optimierung verwendet. Vorteilhaft ist durch die Verwendung eines gradientenbasierten Verfahrens ein deterministischer Algorithmus mit ausreichend schneller Konvergenz in Richtung eines lokalen oder idealerweise globalen Optimums der Kostenfunktion zur Minimierung dieser gegeben.
  • Gemäß einer weiteren vorteilhaften Ausführungsform erfolgt das Minimieren der jeweiligen Kostenfunktion durch ein genetisches oder evolutorisches Verfahren. Genetische Algorithmen bzw. Evolutionsalgorithmen basieren insbesondere auf dem Zufallsprinzip, nach dem Startpunkte von x mehr oder weniger zufällig gewählt werden und/oder Werte von x mit Potential zur Konvergenz zu einem lokalen oder globalen Minimum rekombiniert werden. Während genetische und evolutionäre Algorithmen eine höhere Chance aufweisen, das globale Minimum (im Gegensatz zu einem lokalen Minimum) zu finden, kann deren Rechenzeit die gradientenbasierten Verfahren erheblich übersteigen.
  • Gemäß einer weiteren vorteilhaften Ausführungsform erfolgt das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator durch Anhängen einer Last mit vorgegebener Masse an den Robotermanipulator. Bei konstanter und bekannter Schwerkraft ist durch Anhängen einer Last mit vorgegebener Masse sehr zuverlässig sichergestellt, dass der externe Kraftwinder immer in die gleiche Richtung bezüglich eines erdfesten Koordinatensystems und in immer gleicher Stärke wirkt.
  • Gemäß einer weiteren vorteilhaften Ausführungsform erfolgt das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator durch Verbinden einer mechanischen Feder des Robotermanipulators mit einem Auflager so, dass die mechanische Feder vorgespannt ist und eine Kraft auf den Robotermanipulator ausübt. Das mechanische Auflager ist bevorzugt an einem zweiten Manipulator angeordnet, bevorzugt an einem Endeffektor des zweiten Manipulators. Vorteilhaft können durch die Verwendung einer Feder durch Dehnung der Feder über einen bestimmten linearen Bereich der Feder kontinuierlich beliebige Werte einer Kraftkomponente des externen Kraftwinders vorgegeben werden.
  • Gemäß einer weiteren vorteilhaften Ausführungsform erfolgt das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator durch Bewegen des Robotermanipulators, sodass vorgegebene Beschleunigungen am Robotermanipulator durch die träge Masse des Robotermanipulators auftreten. Gemäß dieser Ausführungsform werden bei den erwarteten Momenten die Momente aus der Bewegung des Robotermanipulators entsprechend nicht berücksichtigt, da genau diese Momente erfasst werden sollen und daraus eine Schätzung des externen Kraftwinders ermittelt wird. Vorteilhaft ist gemäß dieser Ausführungsform weder eine Last mit zusätzlicher Masse am Robotermanipulator noch das Verbinden mit einer Feder noch das Aufbringen sonstiger externer Kräfte und/oder Momente notwendig, da alleine die durch den Robotermanipulator selbst ausführbare Bewegung zum Kalibrieren des virtuellen Kraftsensors dient.
  • Ein weiterer Aspekt der Erfindung betrifft ein Robotersystem mit einem Roboterarm und mit einer Steuereinheit, wobei die Steuereinheit dazu ausgeführt ist, einen virtuellen Kraftsensor am Roboterarm auszuführen, wobei der virtuelle Kraftsensor zum Ermitteln eines auf den Robotermanipulator wirkenden externen Kraftwinders dient und der externe Kraftwinder auf Basis von durch Momentensensoren in Gelenken des Roboterarms ermittelten Momenten und auf Basis von auf den Roboterarm wirkenden erwarteten Momenten und auf Basis der Invertierten oder Pseudoinvertierten der Transponierten der jeweils posenabhängigen aktuellen Jacobimatrix ermittelt wird, wobei die Steuereinheit dazu ausgeführt ist, auf den aktuell ermittelten externen Kraftwinder eine posenabhängige Kalibrierung anzuwenden, und die Kalibrierung aus dem nach einem Verfahren erzeugten Datensatz aller Kalibrierfunktionen durch Auswählen einer bestimmten der jeweiligen aktuellen Pose des Roboterarms zugeordneten Kalibrierfunktion oder durch Erzeugen einer Interpolation zumindest zwei der Kalibrierfunktionen zu erzeugen, wobei die jeweiligen Posen der zumindest zwei bestimmten der Kalibrierfunktionen der jeweiligen aktuellen Pose des Roboterarms am nächsten liegen.
  • Vorteile und bevorzugte Weiterbildungen des vorgeschlagenen Robotersystems ergeben sich durch eine analoge und sinngemäße Übertragung der im Zusammenhang mit dem vorgeschlagenen Verfahren vorstehend gemachten Ausführungen.
  • Weitere Vorteile, Merkmale und Einzelheiten ergeben sich aus der nachfolgenden Beschreibung, in der - gegebenenfalls unter Bezug auf die Zeichnung - zumindest ein Ausführungsbeispiel im Einzelnen beschrieben ist. Gleiche, ähnliche und/oder funktionsgleiche Teile sind mit gleichen Bezugszeichen versehen.
  • Es zeigen:
    • 1 ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators gemäß einem Ausführungsbeispiel der Erfindung,
    • 2 einen Robotermanipulator, auf dem das Verfahren nach 1 ausgeführt wird, und
    • 3 ein Robotersystem zum Verwenden des Ergebnisses der Kalibrierung nach 1 gemäß einem weiteren Ausführungsbeispiel der Erfindung.
  • Die Darstellungen in den Figuren sind schematisch und nicht maßstäblich.
  • 1 zeigt ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators 1. Der Robotermanipulator 1 wird in eine Vielzahl von Posen durch entsprechende Ansteuerung seiner Antriebe verfahren. Hierbei handelt es sich um einen redundanten Robotermanipulator 1. Daher werden für eine gemeinsame Position des distalen Endes 5 des Robotermanipulators 1 eine Vielzahl von Posen des Robotermanipulators 1 eingenommen, indem der redundante Robotermanipulator 1 in seinem Nullraum über eine Vielzahl von Posen verfahren wird. In jeder der Posen wird der Robotermanipulator 1 für eine gewisse Zeitspanne bewegungsfrei gehalten, um die folgenden Schritte wiederholt, das heißt an jeder der Posen, auszuführen: Zunächst wird ein vorgegebener externer Kraftwinder mit vorgegebenen Kräften und Momenten auf das distale Ende 5 des Robotermanipulators 1 aufgebracht S1. Dies erfolgt durch eine externe Prüfeinheit (nicht in 1 dargestellt). Daraufhin erfolgt das Ermitteln S2 einer Schätzung des externen Kraftwinders Fext,est auf Basis einer Pseudoinversen der Transponierten der für die aktuelle Pose geltenden Jacobimatrix, das heißt (JT)# und auf Basis eines Vektors externer Drehmomente τext, wobei der Vektor externer Drehmomente τext auf Basis der durch die Drehmomentsensoren 3 in den Gelenken des Robotermanipulators 1 ermittelten Momente und auf Basis von auf den Robotermanipulator 1 wirkenden erwarteten Momenten ermittelt wird: F e x t , e s t = ( J T ) # τ e x t
    Figure DE102019134665B3_0005
  • Die Pseudoinverse der Transponierten der für die aktuelle Pose geltenden Jacobimatrix, das heißt (J T)# statt (J T)-1 , wird dabei verwendet, da es sich um einen redundanten Robotermanipulator 1 handelt. Hierauf erfolgt das Ermitteln S3 einer jeweiligen Kostenfunktion auf Basis einer Norm einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder. Die Kostenfunktion wird für jede der Posen des Robotermanipulators 1 jeweils ermittelt als: K = F e x t , e s t F e x t , r e a l 2 2
    Figure DE102019134665B3_0006
  • Das heißt, die Zweinorm der Differenz zwischen der Schätzung des externen Kraftwinders Fext,est und der a-priori bekannten Vorgabe des externen Kraftwinders Fext,real wird zum Quadrat genommen. Das skalare Ergebnis dieser Vorschrift entspricht der Kostenfunktion. Ferner folgt das Ermitteln S4 einer jeweiligen Kalibrierfunktion durch Minimieren der jeweiligen Kostenfunktion durch ein gradienenbasiertes Verfahren. Die Aufgabe minK(x) wird dabei insbesondere mit Hilfe eines Suchschrittes s= - α∇K ausgeführt, wobei α die Länge des aktuellen Suchschrittes, s der Suchrichtung, und ∇ den Gradienten der Kostenfunktion K (x), abhängig von Variablen und/oder Parametern x der Kalibrierfunktion L (x) angibt. Bevorzugt wird der Parameter α mithilfe der eines Liniensuchverfahrens, dem sogenannten „line search“ bestimmt, sodass in dem unter Umständen höherdimensionalen Parameterraum von x nach Bestimmung der Suchrichtung entlang dieser Suchrichtung das lokale Minimum gesucht wird und bei Erreichen dieses lokalen Minimums seine neue Suchrichtung durch Ermittlung von Gradienten der Kostenfunktion (∇K) ermittelt. Damit steht im Ergebnis ein Variablensatz und/oder Parametersatz x0 zur Verfügung, der, wenn mit seiner Hilfe die Schätzung des externen Kraftwinders Fext,est mit der Kalibrierfunktion L (x0) angepasst wird, zu einer minimalen Kostenfunktion K(x0) führt. Schließlich erfolgt das Abspeichern S5 der jeweiligen für die jeweilige Pose des Robotermanipulators 1 gültigen Kalibrierfunktion in einen Datensatz aller Kalibrierfunktionen unter Zuordnung der jeweiligen Kalibrierfunktion zu der jeweiligen Pose, für die die jeweilige zweite Kalibrierfunktion ermittelt wurde. Ein solcher Robotermanipulator 1, an dem dieses Verfahren ausgeführt wird, ist in der 2 gezeigt. Die Bezugszeichen der 2 gelten dabei auch für die obige Erklärung der 1.
  • 2 zeigt einen solchen Robotermanipulator 1 mit seinen Komponenten, den Drehmomentsensoren 3 und seinem distalen Ende 5 des Robotermanipulators 1. Die redundanten Freiheitsgrade des Robotermanipulators 1 sind dabei symbolisch durch eine Vielzahl von Gelenken mit zueinander parallelen Gelenksachsen symbolisiert. An diesem Robotermanipulator 1 wird das Verfahren wie unter 1 beschrieben ausgeführt. Es wird dabei auf die Erläuterungen zur 1 verwiesen.
  • 3 zeigt ein Robotersystem 10 mit einem Roboterarm 12 und mit einer Steuereinheit 14. Das Robotersystem 10 ist dabei symbolisch mit einem anderen Roboterarm 12 in der 3 dargestellt, als der Robotermanipulator 1 aus der 1. Dies verdeutlicht, dass die Kalibrierung gemäß den Erklärungen zur 1 sowie zur 2 auf ein weiteres Robotersystem 10 übertragen werden können, ohne dass an diesem selbst die Kalibrierung stattgefunden hat. Die Steuereinheit 14 des Robotersystems 10 ist dabei an einer Basis des Roboterarms 12 angeordnet und führt einen virtuellen Kraftsensor am Roboterarm 12 aus, wobei der virtuelle Kraftsensor zum Ermitteln eines aktuell auf den Roboterarm 12 wirkenden externen Kraftwinders dient, und der externe Kraftwinder auf Basis von durch Momentensensoren 13 in Gelenken des Roboterarms 12 ermittelten Momenten und auf Basis von auf den Roboterarm 12 wirkenden erwarteten Momenten und auf Basis der Inversen oder Pseudoinversen der Transponierten der jeweils posenabhängigen aktuellen Jacobimatrix ermittelt wird. Die Steuereinheit 14 wendet ferner auf den aktuell ermittelten externen Kraftwinder eine posenabhängige Kalibrierfunktion an, wobei die Kalibrierfunktion aus dem nach den Erläuterungen zur 1 erzeugten Datensatz aller zweiter Kalibrierungsmatritzen durch Auswählen einer bestimmten, der jeweiligen aktuellen Pose des Roboterarms 12 zugeordneten, das heißt am nächsten liegenden, Kalibrierfunktion bestimmt wird.
  • Bezugszeichenliste
  • 1
    Robotermanipulator
    3
    Drehmomentsensoren
    5
    distales Ende des Robotermanipulators
    10
    Robotersystem
    12
    Roboterarm
    13
    Momentensensoren
    14
    Steuereinheit
    S1
    Aufbringen
    S2
    Ermitteln
    S3
    Ermitteln
    S4
    Ermitteln
    S5
    Abspeichern

Claims (10)

  1. Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators (1), wobei der virtuelle Kraftsensor zum Ermitteln eines auf den Robotermanipulator (1) wirkenden externen Kraftwinders auf Basis von durch Drehmomentsensoren (3) in Gelenken des Robotermanipulators (1) ermittelten Momenten dient, wobei der Robotermanipulator (1) in eine Vielzahl von Posen verfahren oder manuell geführt wird und in jeder der Posen die folgenden Schritte ausgeführt werden: - Aufbringen (S1) eines jeweiligen vorgegebenen externen Kraftwinders auf den Robotermanipulator (1), - Ermitteln (S2) einer jeweiligen Schätzung des externen Kraftwinders auf Basis einer Invertierten oder Pseudoinvertierten der Transponierten der für die aktuelle Pose geltenden Jacobimatrix und auf Basis eines Vektors externer Drehmomente, wobei der Vektor externer Drehmomente auf Basis der durch die Drehmomentsensoren (3) in den Gelenken des Robotermanipulators (1) ermittelten Momente und auf Basis von auf den Robotermanipulator (1) wirkenden erwarteten Momenten ermittelt wird, - Ermitteln (S3) einer jeweiligen Kostenfunktion auf Basis einer Norm einer Differenz aus der ermittelten Schätzung des externen Kraftwinders und dem vorgegebenen externen Kraftwinder oder auf Basis einer Differenz einer Norm der ermittelten Schätzung des externen Kraftwinders und einer Norm des vorgegebenen externen Kraftwinders, - Ermitteln (S4) einer jeweiligen Kalibrierfunktion durch Minimieren der jeweiligen Kostenfunktion, wobei die Kalibrierfunktion zum Anpassen eines im späteren Betrieb aktuell ermittelten externen Kraftwinders dient, und - Abspeichern (S5) der jeweiligen Kalibrierfunktion in einen Datensatz aller Kalibrierfunktionen unter Zuordnung der jeweiligen Kalibrierfunktion zu der jeweiligen Pose, für die die jeweilige Kalibrierfunktion ermittelt wurde.
  2. Verfahren nach einem der vorhergehenden Ansprüche, wobei eine Aufgabe für den Robotermanipulator (1) vorgegeben wird, die Aufgabe analysiert wird, und abzufahrende Arbeitspunkte bei der Ausführung der Aufgabe identifiziert werden, wobei die jeweiligen Posen des Robotermanipulators (1) so gewählt werden, dass jeweils einer der Arbeitspunkte und ein Referenzpunkt des Robotermanipulators (1) in einer jeweiligen Pose übereinstimmen.
  3. Verfahren nach einem der vorhergehenden Ansprüche, wobei der Robotermanipulator (1) ein redundanter Robotermanipulator ist und die Schätzung des externen Kraftwinders unter Verwendung der Pseudoinvertierten der Transponierten der für die jeweilige Pose des Robotermanipulators (1) aktuellen Jacobimatrix ermittelt wird.
  4. Verfahren nach Anspruch 3, wobei zumindest für eine Teilmenge der Vielzahl von Posen des Robotermanipulators (1) der redundante Robotermanipulator (1) in seinem Nullraum über eine Vielzahl von Posen verfahren wird und für jede der Vielzahl von Posen eine eigene Kalibrierfunktion ermittelt und abgespeichert wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei das Minimieren der jeweiligen Kostenfunktion durch ein gradienenbasiertes Verfahren erfolgt.
  6. Verfahren nach einem der Ansprüche 1 bis 4, wobei das Minimieren der jeweiligen Kostenfunktion durch ein genetisches oder evolutorisches Verfahren erfolgt.
  7. Verfahren nach einem der Ansprüche 1 bis 6, wobei das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator (1) durch Anhängen einer Last mit vorgegebener Masse an den Robotermanipulator (1) erfolgt.
  8. Verfahren nach einem der Ansprüche 1 bis 6, wobei das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator (1) durch Verbinden einer mechanischen Feder des Robotermanipulators (1) mit einem Auflager so erfolgt, dass die mechanische Feder vorgespannt ist und eine Kraft auf den Robotermanipulator (1) ausübt.
  9. Verfahren nach einem der Ansprüche 1 bis 6, wobei das Aufbringen des vorgegebenen externen Kraftwinders am Robotermanipulator (1) durch Bewegen des Robotermanipulators (1) erfolgt, sodass vorgegebene Beschleunigungen am Robotermanipulator (1) durch die träge Masse des Robotermanipulators (1) auftreten.
  10. Robotersystem (10) mit einem Roboterarm (12) und mit einer Steuereinheit (14), wobei die Steuereinheit (14) dazu ausgeführt ist, einen virtuellen Kraftsensor am Roboterarm (12) auszuführen, wobei der virtuelle Kraftsensor zum Ermitteln eines auf den Robotermanipulator (1) wirkenden externen Kraftwinders dient und der externe Kraftwinder auf Basis von durch Momentensensoren (13) in Gelenken des Roboterarms (12) ermittelten Momenten und auf Basis von auf den Roboterarm (12) wirkenden erwarteten Momenten und auf Basis der Invertierten oder Pseudoinvertierten der Transponierten der jeweils posenabhängigen aktuellen Jacobimatrix ermittelt wird, wobei die Steuereinheit (14) dazu ausgeführt ist, auf den aktuell ermittelten externen Kraftwinder eine posenabhängige Kalibrierung anzuwenden, und die Kalibrierung aus dem nach einem Verfahren nach einem der Ansprüche 1 bis 9 erzeugten Datensatz aller Kalibrierfunktionen durch Auswählen einer bestimmten der jeweiligen aktuellen Pose des Roboterarms (12) zugeordneten Kalibrierfunktion oder durch Erzeugen einer Interpolation zumindest zwei der Kalibrierfunktionen zu erzeugen, wobei die jeweiligen Posen der zumindest zwei bestimmten der Kalibrierfunktionen der jeweiligen aktuellen Pose des Roboterarms (12) am nächsten liegen.
DE102019134665.7A 2019-12-17 2019-12-17 Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators Active DE102019134665B3 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE102019134665.7A DE102019134665B3 (de) 2019-12-17 2019-12-17 Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators
US17/784,830 US20230008146A1 (en) 2019-12-17 2020-12-16 Calibrating a virtual force sensor of a robot manipulator
PCT/EP2020/086423 WO2021122749A1 (de) 2019-12-17 2020-12-16 Kalibrieren eines virtuellen kraftsensors eines robotermanipulators
CN202080086711.9A CN114829081A (zh) 2019-12-17 2020-12-16 机器人操纵器的虚拟力传感器的校正
KR1020227023983A KR20220113785A (ko) 2019-12-17 2020-12-16 로봇 조작기의 가상 힘 센서 보정
EP20837949.5A EP4076867A1 (de) 2019-12-17 2020-12-16 Kalibrieren eines virtuellen kraftsensors eines robotermanipulators
JP2022537895A JP2023508912A (ja) 2019-12-17 2020-12-16 ロボットマニピュレータの仮想力センサの較正

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019134665.7A DE102019134665B3 (de) 2019-12-17 2019-12-17 Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators

Publications (1)

Publication Number Publication Date
DE102019134665B3 true DE102019134665B3 (de) 2020-12-10

Family

ID=73460077

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019134665.7A Active DE102019134665B3 (de) 2019-12-17 2019-12-17 Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators

Country Status (7)

Country Link
US (1) US20230008146A1 (de)
EP (1) EP4076867A1 (de)
JP (1) JP2023508912A (de)
KR (1) KR20220113785A (de)
CN (1) CN114829081A (de)
DE (1) DE102019134665B3 (de)
WO (1) WO2021122749A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220193893A1 (en) * 2020-12-18 2022-06-23 Boston Dynamics, Inc. Limiting Arm Forces and Torques
US11931898B2 (en) 2020-12-22 2024-03-19 Boston Dynamics, Inc. Arm and body coordination
US11931885B2 (en) * 2021-10-29 2024-03-19 Ubkang (Qingdao) Technology Co., Ltd. Touch sensing method and serial manipulator using the same

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013010290A1 (de) * 2013-06-19 2014-12-24 Kuka Laboratories Gmbh Überwachen eines kinematisch redundanten Roboters
DE102013019450A1 (de) * 2013-11-21 2015-05-21 Daimler Ag Verfahren zum Vermeiden einer Kollision eines Roboters mit einem Objekt
DE102015205176B3 (de) * 2015-03-23 2016-05-12 Kuka Roboter Gmbh Robustes intuitives Bedienverfahren durch Berührung eines Manipulators
DE102015009151A1 (de) * 2015-07-14 2017-01-19 Kuka Roboter Gmbh Ermitteln eines Eingabebefehls für einen Roboter, der durch manuelles Ausüben einer Kraft auf den Roboter eingegeben wird
DE102015012959B4 (de) * 2015-10-08 2019-01-17 Franka Emika Gmbh Robotersystem und Verfahren zur Steuerung eines Robotersystems
DE202019102430U1 (de) * 2019-04-30 2019-06-05 Franka Emika Gmbh Ermittlung eines externen Kraftwinders durch Drehmomentsensoren eines Robotermanipulators

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4735795B2 (ja) * 2003-12-26 2011-07-27 独立行政法人 宇宙航空研究開発機構 冗長マニピュレータの制御方法
WO2016110320A1 (en) * 2015-01-07 2016-07-14 Abb Technology Ag Method for estimation of external forces and torques on a robot arm
DE102015008144B4 (de) * 2015-06-24 2024-01-18 Kuka Roboter Gmbh Umschalten einer Steuerung eines Roboters in einen Handführ-Betriebsmodus
DE102017215642B3 (de) * 2017-09-06 2018-12-27 Kuka Systems Gmbh Verfahren zum Steuern eines Roboters
DE102018112360B3 (de) * 2018-05-23 2019-09-19 Franka Emika Gmbh Bereichsabhängige Kollisionsdetektion für einen Robotermanipulator

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013010290A1 (de) * 2013-06-19 2014-12-24 Kuka Laboratories Gmbh Überwachen eines kinematisch redundanten Roboters
DE102013019450A1 (de) * 2013-11-21 2015-05-21 Daimler Ag Verfahren zum Vermeiden einer Kollision eines Roboters mit einem Objekt
DE102015205176B3 (de) * 2015-03-23 2016-05-12 Kuka Roboter Gmbh Robustes intuitives Bedienverfahren durch Berührung eines Manipulators
DE102015009151A1 (de) * 2015-07-14 2017-01-19 Kuka Roboter Gmbh Ermitteln eines Eingabebefehls für einen Roboter, der durch manuelles Ausüben einer Kraft auf den Roboter eingegeben wird
DE102015012959B4 (de) * 2015-10-08 2019-01-17 Franka Emika Gmbh Robotersystem und Verfahren zur Steuerung eines Robotersystems
DE202019102430U1 (de) * 2019-04-30 2019-06-05 Franka Emika Gmbh Ermittlung eines externen Kraftwinders durch Drehmomentsensoren eines Robotermanipulators

Also Published As

Publication number Publication date
US20230008146A1 (en) 2023-01-12
KR20220113785A (ko) 2022-08-16
WO2021122749A1 (de) 2021-06-24
EP4076867A1 (de) 2022-10-26
JP2023508912A (ja) 2023-03-06
CN114829081A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
DE102010053002B4 (de) Systeme und Verfahren, die der Handhabung eines Ojekts mit einem Greifer zugeordnet sind
DE102019134665B3 (de) Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators
EP3323026B1 (de) Ermitteln eines eingabebefehls für einen roboter, der durch manuelles ausüben einer kraft auf den roboter eingegeben wird
DE102010018440B4 (de) Hierarchisches Robotersteuerungssystem und -Verfahren zum Steuern ausgewählter Freiheitsgrade eines Objekts unter Verwendung mehrerer Manipulatoren
EP3285975B1 (de) Steuern und/oder regeln von motoren eines roboters
EP2563553B1 (de) Verfahren und steuermittel zum steuern eines roboters
DE102013101095B4 (de) Verfahren und Anordnung zur Korrektur von Posenfehlern einer Kinematik sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
DE102018112360B3 (de) Bereichsabhängige Kollisionsdetektion für einen Robotermanipulator
DE102019102470B4 (de) Einlernvorgang für ein Robotersystem bestehend aus zwei Robotermanipulatoren
DE102017127995B4 (de) Robotersteuervorrichtung zum Steuern eines Roboters und Verfahren zum Schätzen eines auf den Roboter ausgeübten Störwerts
DE102014202145A1 (de) Verfahren zum Programmieren eines Industrieroboters und zugehörigerIndustrieroboter
EP3020516A2 (de) Bestimmen von objektbezogenen greifräumen mittels eines roboters
DE102018114644B3 (de) Manueller Anlernvorgang an einem Robotermanipulator mit Kraft-/Momentenvorgabe
DE102016000754A1 (de) Verfahren und System zur Bahnplanung eines redundanten Roboters
DE102018214257B3 (de) Roboterregelung
DE102011016113B4 (de) Verfahren und Vorrichtung zum Kalibrieren mehrachsiger Kraftaufnehmer in einem geschickten Roboter
DE102019134666B4 (de) Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators
DE102018112370B4 (de) Richtungsabhängige Kollisionsdetektion für einen Robotermanipulator
DE102018114445B4 (de) Vorrichtung und Verfahren zur Einschätzung einer Position des Schwerpunkts eines Roboters
EP3328595A2 (de) Verfahren und system zum steuern eines roboters
DE102019118263B3 (de) Ausgeben einer Güteinformation über eine Krafterfassung am Robotermanipulator
DE102015209773B3 (de) Verfahren zur kontinuierlichen Synchronisation einer Pose eines Manipulators und einer Eingabevorrichtung
DE102019131400B4 (de) Kraftmessung und Krafterzeugung in redundanten Robotermanipulatoren
DE102020209866B3 (de) Verfahren und System zum Betreiben eines Roboters
DE102019219930B3 (de) Verfahren und System zum Steuern eines Roboters

Legal Events

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