WO2021122749A1 - Kalibrieren eines virtuellen kraftsensors eines robotermanipulators - Google Patents

Kalibrieren eines virtuellen kraftsensors eines robotermanipulators Download PDF

Info

Publication number
WO2021122749A1
WO2021122749A1 PCT/EP2020/086423 EP2020086423W WO2021122749A1 WO 2021122749 A1 WO2021122749 A1 WO 2021122749A1 EP 2020086423 W EP2020086423 W EP 2020086423W WO 2021122749 A1 WO2021122749 A1 WO 2021122749A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot manipulator
external power
robot
determined
winder
Prior art date
Application number
PCT/EP2020/086423
Other languages
English (en)
French (fr)
Inventor
Andreas SPENNINGER
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 EP20837949.5A priority Critical patent/EP4076867A1/de
Priority to KR1020227023983A priority patent/KR20220113785A/ko
Priority to US17/784,830 priority patent/US20230008146A1/en
Priority to CN202080086711.9A priority patent/CN114829081A/zh
Priority to JP2022537895A priority patent/JP2023508912A/ja
Publication of WO2021122749A1 publication Critical patent/WO2021122749A1/de

Links

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

Definitions

  • the invention relates to a method for calibrating a virtual force sensor of a robot manipulator and a robot system with a robot arm and with a control unit for applying this calibration.
  • the object of the invention is to improve the implementation of a virtual force sensor on a robot manipulator or robot arm.
  • a first aspect of the invention relates to a method for calibrating a virtual force sensor of a robot manipulator, the virtual force sensor being used to determine an external power winder acting on the robot manipulator on the basis of torques determined by torque sensors in joints of the robot manipulator, the robot manipulator in a plurality of poses proceeding or being guided manually and performing the following steps in each of the poses:
  • a pose of the robot manipulator indicates in particular the entirety of the positions and the orientations of all limbs including an end effector, if any, of the robot manipulator. If the complete information about a pose is known, the robot manipulator can be moved into a clear "posture" by all drives, especially at its joints.
  • An external power winder indicates forces and / or moments that act on the robot manipulator from the environment and vice versa, the external force winder generally having three components for forces and three components for moments.
  • the predetermined external force winder is preferably the same force winder, that is to say constant, over all poses of the robot manipulator.
  • a different power winder is preferably provided for at least two of the poses, which advantageously also takes into account those poses that would at least partially behave singularly in the case of a constant force winder, that is, in at least some of the joints of the robot manipulator that connect the links Power of the power winder, without generating a moment in the joint, is passed linearly through this joint in the direction of the nearest proximal limb.
  • An example of such a singular pose is when all links of the robot manipulator are aligned on a common straight line and the external power winder has only one force vector in the direction of precisely this common straight line to the base of the robot manipulator.
  • an estimate of this external power winder is determined by the virtual force sensor.
  • the torque sensors on the joints can be selected from the large number of torque sensors known in the prior art.
  • the torque sensors are mechanical torque sensors in which an expansion of a flexibly elastic material, for example in the spokes of the respective torque sensor, is detected, whereby knowledge of the material constants can be used to infer an applied torque.
  • a first part of the moment results from the kinematic forces and moments, in particular the Coriolis acceleration and the centrifugal acceleration.
  • a further part of the measured moment is attributable to the influence of gravity, regardless of the movement of the robot manipulator.
  • the (pseudo) inverse of the transpose of the Jacobian matrix is required in order to infer an estimate of the specified external power winder with its current reference point from the external moments determined in this way.
  • the pseudo inverse (instead of the inverse itself) is required in particular when the robot manipulator is a redundant manipulator, that is to say that at least two of the joints connecting the links have redundant degrees of freedom to one another.
  • members of the robot manipulator in particular can be moved without changing an orientation and / or a position of the end effector of the robot manipulator.
  • the Jacobian matrix basically links the angular speeds at the joints to the translational and rotational speed at any point, in particular at a distal end of the robot manipulator. In principle, however, it is irrelevant whether speeds are actually considered; so the Jacobian matrix can also be used for the relationship between the moments at the joints and the forces and moments at any given point.
  • the transpose of the Jacobian matrix / namely J T , mediates between the external force winder F ext to the vector of the determined external torques r et as follows:
  • the direction and the amount of the specified external power winder are known by definition, since the known amount of the specification of the external power winder is also applied.
  • the estimate of the external power winder is also known in each individual pose of the robot manipulator in which an external power winder is applied.
  • a respective cost function is then determined on the basis of a norm of a difference between the determined estimate of the external power winder and the specified external power winder or on the basis of a difference between a norm of the determined estimate of the external power winder and a norm of the specified external power winder.
  • a cost function / (according to the following scheme is determined:
  • a cost function is determined according to the following scheme:
  • the first case is preferably used for the general case of several components of forces and / or moments in the external force winder
  • the second case is particularly suitable for considering a single component, especially when the specified external force winder always moves in the same direction shows, which is especially the case when attaching an external load with a given mass.
  • a respective calibration function is determined by minimizing the respective cost function, the calibration function being used to adapt an external power winch that is currently determined in later operation, i.e. the goal is to solve the rule minK (x) according to the variables and / or parameters x of the calibration function .
  • the steps of ascertaining an estimate of the external power winder, ascertaining a respective calibration function by ascertaining a respective cost function and minimizing it, and storing the respective calibration function in each case by a computing unit are preferably carried out.
  • the computing unit is connected in particular to the robot manipulator.
  • the computing unit is particularly preferably arranged on the robot manipulator itself, in particular on a socket or a base of the robot manipulator.
  • the predetermined external power winder is applied to the robot manipulator at a distal end of the robot manipulator.
  • An end effector is preferably arranged at the distal end of the robot manipulator. Since contact forces of the robot manipulator, apart from unexpected collisions, typically take place between the end effector and an object in the vicinity of the robot manipulator, this embodiment advantageously takes this into account, so that the calibration, in particular with regard to a force winder, between the end effector at the distal end of the robot manipulator and the Environment of the robot manipulator takes place.
  • the plurality of poses of the robot manipulator is preferably defined by an equidistant grid of positions for a reference point of the robot manipulator with respect to a fixed coordinate system, which advantageously takes into account at least approximately all possible positions of the reference point of the robot manipulator (possibly with several poses per grid point for a redundant robot manipulator) However, a very high number of grid points must also be taken into account.
  • a task is therefore specified for the robot manipulator, the task is analyzed, and working points to be traversed are identified during the execution of the task, the respective poses of the robot manipulator being selected such that one of the working points and a reference point of the robot manipulator are in each case match a respective pose.
  • the reference point of the robot manipulator is in particular a reference point on the distal end of the robot manipulator, and in particular on the end effector.
  • the reference point is in particular connected to the robot manipulator so that it is fixed to the body, in particular to a location on the surface of the robot manipulator, that is, it does not perform any relative movement with respect to this selected location, even when the robot manipulator moves.
  • the calibration is advantageously adapted specifically to a task to be carried out by the robot manipulator and the number of grid points is significantly reduced.
  • the robot manipulator is a redundant robot manipulator and the estimate of the external power winder is determined using the pseudo inverse of the transpose of the Jacobian matrix current for the respective pose of the robot manipulator.
  • a redundant robot manipulator has redundant degrees of freedom with respect to one another. This means in particular that links of the robot manipulator can move without changing the orientation of a specific link, in particular an end effector of the robot manipulator, and / or a position of a predetermined reference point, in particular at the distal end of the robot manipulator.
  • the redundant robot manipulator is moved over a plurality of poses in its null space and a separate calibration function is determined and stored for each of the plurality of poses.
  • This embodiment also takes into account changing inaccuracies in the estimation of an external power winder by changing the pose of the robot manipulator in its null space.
  • the respective cost function is minimized by a gradient-based method.
  • the parameter cr is preferably determined with the help of a line search method, the so-called "line search", so that the local minimum is searched for in the possibly higher-dimensional parameter space of x after determining the search direction along this search direction and, when this local minimum is reached, a new search direction is found by determining a new current one Gradient of the cost function (VK) determined there is determined.
  • the gradient-based search method is preferably expanded to include curvature information of the cost function and thus quadratic optimization is used.
  • the use of a gradient-based method advantageously provides a deterministic algorithm with sufficiently rapid convergence in the direction of a local or ideally global optimum of the cost function in order to minimize it.
  • the respective cost function is minimized by a genetic or evolutionary method.
  • Genetic algorithms or evolution algorithms are based in particular on the random principle, according to which starting points of x are selected more or less randomly and / or values of x are recombined with the potential to converge to a local or global minimum. While genetic and evolutionary algorithms have a higher chance of finding the global minimum (as opposed to a local minimum), their computing time can significantly exceed the gradient-based methods.
  • the specified external power winder is applied to the robot manipulator by attaching a load with a specified mass to the robot manipulator.
  • a load with a specified mass is very reliable ensures that the external power winder always acts in the same direction with respect to an earth-fixed coordinate system and always with the same strength.
  • the predetermined external power winder is applied to the robot manipulator by connecting a mechanical spring of the robot manipulator to a support so that the mechanical spring is pretensioned and exerts a force on the robot manipulator.
  • the mechanical support is preferably arranged on a second manipulator, preferably on an end effector of the second manipulator.
  • the application of the specified external power winder on the robot manipulator takes place by moving the robot manipulator, so that specified accelerations occur on the robot manipulator due to the inertial mass of the robot manipulator.
  • the moments from the movement of the robot manipulator are correspondingly not taken into account in the expected moments, since precisely these moments are to be recorded and an estimate of the external powerhouse is determined therefrom.
  • neither a load with additional mass on the robot manipulator nor the connection with a spring nor the application of other external forces and / or moments is necessary, since only the movement that can be executed by the robot manipulator itself is used to calibrate the virtual force sensor.
  • Another aspect of the invention relates to a robot system with a robot arm and with a control unit, the control unit being designed to execute a virtual force sensor on the robot arm, the virtual force sensor serving to determine an external force winder acting on the robot manipulator and the external force winder on the basis of moments determined by moment sensors in joints of the robot arm and on the basis of expected moments acting on the robot arm and on the basis of the inverted or pseudo-inverted of the transpose of the respective pose-dependent current Jacobian matrix, the control unit being designed to respond to the currently determined external force winder apply pose-dependent calibration, and the calibration from the data set generated by a method of all calibration functions by selecting a specific one of the respective to generate at least two of the calibration functions assigned to the current pose of the robot arm or by generating an interpolation, the respective poses of the at least two specific ones of the calibration functions being closest to the respective current pose of the robot arm.
  • 1 shows a method for calibrating a virtual force sensor of a
  • FIG. 2 shows a robot manipulator on which the method according to FIG. 1 is carried out
  • FIG. 3 shows a robot system for using the result of the calibration according to FIG. 1 according to a further exemplary embodiment of the invention.
  • the robot manipulator 1 shows a method for calibrating a virtual force sensor of a robot manipulator 1.
  • the robot manipulator 1 is moved into a large number of poses by appropriately activating its drives. This is a redundant robot manipulator 1. Therefore, for a common position of the distal end 5 of the robot manipulator 1, a multitude of poses of the robot manipulator 1 are assumed by the redundant robot manipulator 1 being moved over a multitude of poses in its null space. In each of the poses, the robot manipulator 1 is kept motionless for a certain period of time in order to repeat the following steps, that is to say on each of the poses: First, a given external power winder with given forces and moments is applied to the distal end 5 of the robot manipulator 1 applied S1. This is done by an external test unit (not shown in FIG. 1).
  • a respective cost function is then ascertained S3 on the basis of a norm of a difference between the ascertained estimate of the external power winder and the specified external power winder.
  • the cost function is determined for each of the poses of the robot manipulator 1 as:
  • the two-norm of the difference between the estimate of the external power winder F ext, es t and the a priori known specification of the external power winder F ext reai is taken to the square.
  • the scalar result of this rule corresponds to the cost function.
  • the determination S4 follows a respective calibration function by minimizing the respective cost function using a gradient-based method.
  • the parameter cr is preferably determined with the aid of a line search method, the so-called "line search", so that the local minimum is searched for in the possibly higher-dimensional parameter space of x after determining the search direction along this search direction and, when this local minimum is reached, its new search direction by determining gradients determined by the cost function (VK).
  • VK cost function
  • FIG. 2 shows such a robot manipulator 1 with its components, the torque sensors 3 and its distal end 5 of the robot manipulator 1.
  • the redundant degrees of freedom of the robot manipulator 1 are symbolically symbolized by a large number of joints with joint axes parallel to one another. The method as described under FIG. 1 is carried out on this robot manipulator 1. Reference is made to the explanations relating to FIG. 1.
  • FIG. 3 shows a robot system 10 with a robot arm 12 and with a control unit 14.
  • the robot system 10 is symbolically represented in FIG. 3 with a different robot arm 12 than the robot manipulator 1 from FIG Calibration according to the explanations for FIG. 1 and for FIG. 2 can be transferred to a further robot system 10 without the calibration itself having taken place.
  • the control unit 14 of the robot system 10 is arranged on a base of the robot arm 12 and executes a virtual force sensor on the robot arm 12, the virtual force sensor serving to determine an external force winder currently acting on the robot arm 12, and the external force winder based on Torque sensors 13 in the joints of the robot arm 12 determined moments and on the basis of expected moments acting on the robot arm 12 and on the basis of the inverse or pseudo-inverse of the transpose of the current pose-dependent Jacobian matrix.
  • the control unit 14 also applies a pose-dependent calibration function to the currently determined external force winder, the calibration function being derived from the method according to the explanations relating to FIG.
  • 1 generated data set of all second calibration matrices is determined by selecting a specific calibration function assigned to the respective current pose of the robot arm 12, that is to say the closest calibration function.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Manipulator (AREA)

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

Kalibrieren eines virtuellen Kraftsensors eines Robotermanipulators
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.
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 /, nämlich JT, vermittelt zwischen dem externen Kraftwinder Fext zu dem Vektor der ermittelten externen Drehmomente re twie folgt:
Figure imgf000005_0001
Nach Umstellung dieser Gleichung mit Hilfe der (Pseudo)inversen der Transponierten von /, bezeichnet als (JT)# , gilt für die Schätzung des externen Kraftwinders Fext est auf Basis des Vektors der ermittelten externen Drehmomente Text\
Fext.est — (J ) T-ext
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 /(nach folgendem Schema ermittelt:
K — f (.\\Fext,est Fext,real II)
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(\\Fext,est \\ - \\Pext,real \\)
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 minK(x) nach den Variablen und/oder Parametern xder 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 minK(x ), wird dabei insbesondere mit Hilfe eines Suchschrittes s = —aVK ausgeführt, wobei crdie Länge des aktuellen Suchschrittes, sdie Suchrichtung, und Fden Gradienten der Kostenfunktion K(x ), abhängig von Variablen und/oder Parametern xder Kalibrierfunktion /i(x)angibt. Bevorzugt wird der Parameter crmithilfe eines Liniensuchverfahrens, dem sogenannten "line search" bestimmt, sodass in dem unter Umständen höherdimensionalen Parameterraum von xnach 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 (VK) 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 xmehr oder weniger zufällig gewählt werden und/oder Werte von xmit 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:
Fig. 1 ein Verfahren zum Kalibrieren eines virtuellen Kraftsensors eines
Robotermanipulators gemäß einem Ausführungsbeispiel der Erfindung,
Fig. 2 einen Robotermanipulator, auf dem das Verfahren nach Fig. 1 ausgeführt wird, und
Fig. 3 ein Robotersystem zum Verwenden des Ergebnisses der Kalibrierung nach Fig. 1 gemäß einem weiteren Ausführungsbeispiel der Erfindung.
Die Darstellungen in den Figuren sind schematisch und nicht maßstäblich.
Fig. 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 Fig. 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
Figure imgf000011_0001
auf Basis eines Vektors externer Drehmomente rext, wobei der Vektor externer Drehmomente re tauf 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:
Fext.est — (J ) T-ext
Die Pseudoinverse der Transponierten der für die aktuelle Pose geltenden Jacobimatrix, das heißt (JT)# statt
Figure imgf000011_0002
, 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:
Figure imgf000011_0003
Das heißt, die Zweinorm der Differenz zwischen der Schätzung des externen Kraftwinders Fext ,estund der a-priori bekannten Vorgabe des externen Kraftwinders Fext reaiwird 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 mmÄ'(x)wird dabei insbesondere mit Hilfe eines Suchschrittes s = — crF/fausgeführt, wobei «die Länge des aktuellen Suchschrittes, sder Suchrichtung, und Fden Gradienten der Kostenfunktion K(x ), abhängig von Variablen und/oder Parametern xder Kalibrierfunktion L(x)angibt. Bevorzugt wird der Parameter crmithilfe der eines Liniensuchverfahrens, dem sogenannten "line search" bestimmt, sodass in dem unter Umständen höherdimensionalen Parameterraum von xnach 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 (VK) ermittelt. Damit steht im Ergebnis ein Variablensatz und/oder Parametersatz x0zur 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 Ä'(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 Fig. 2 gezeigt. Die Bezugszeichen der Fig. 2 gelten dabei auch für die obige Erklärung der Fig.
1.
Fig. 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 Fig. 1 beschrieben ausgeführt. Es wird dabei auf die Erläuterungen zur Fig. 1 verwiesen.
Fig. 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 Fig. 3 dargestellt, als der Robotermanipulator 1 aus der Fig. 1. Dies verdeutlicht, dass die Kalibrierung gemäß den Erklärungen zur Fig. 1 sowie zur Fig. 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 Fig.
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.
Obwohl die Erfindung im Detail durch bevorzugte Ausführungsbeispiele näher illustriert und erläutert wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen. Es ist daher klar, dass eine Vielzahl von Variationsmöglichkeiten existiert. Es ist ebenfalls klar, dass beispielhaft genannte Ausführungsformen wirklich nur Beispiele darstellen, die nicht in irgendeiner Weise als Begrenzung etwa des Schutzbereichs, der Anwendungsmöglichkeiten oder der Konfiguration der Erfindung aufzufassen sind. Vielmehr versetzen die vorhergehende Beschreibung und die Figurenbeschreibung den Fachmann in die Lage, die beispielhaften Ausführungsformen konkret umzusetzen, wobei der Fachmann in Kenntnis des offenbarten Erfindungsgedankens vielfältige Änderungen, beispielsweise hinsichtlich der Funktion oder der Anordnung einzelner, in einer beispielhaften Ausführungsform genannter Elemente, vornehmen kann, ohne den Schutzbereich zu verlassen, der durch die Ansprüche und deren rechtliche Entsprechungen, wie etwa weitergehende Erläuterungen in der Beschreibung, definiert wird.
Bezugszeichenliste 1 Robotermanipulator
3 Drehmomentsensoren
5 distales Ende des Robotermanipulators
10 Robotersystem
12 Roboterarm 13 Momentensensoren
14 Steuereinheit
51 Aufbringen
52 Ermitteln S3 Ermitteln
54 Ermitteln
55 Abspeichern

Claims

Patentansprüche
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 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.
PCT/EP2020/086423 2019-12-17 2020-12-16 Kalibrieren eines virtuellen kraftsensors eines robotermanipulators WO2021122749A1 (de)

Priority Applications (5)

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

Applications Claiming Priority (2)

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

Publications (1)

Publication Number Publication Date
WO2021122749A1 true WO2021122749A1 (de) 2021-06-24

Family

ID=73460077

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2020/086423 WO2021122749A1 (de) 2019-12-17 2020-12-16 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
US11999059B2 (en) * 2020-12-18 2024-06-04 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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016110320A1 (en) * 2015-01-07 2016-07-14 Abb Technology Ag Method for estimation of external forces and torques on a robot arm
DE102017215642B3 (de) * 2017-09-06 2018-12-27 Kuka Systems Gmbh Verfahren zum Steuern eines Roboters

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4735795B2 (ja) * 2003-12-26 2011-07-27 独立行政法人 宇宙航空研究開発機構 冗長マニピュレータの制御方法
JP5109573B2 (ja) * 2007-10-19 2012-12-26 ソニー株式会社 制御システム及び制御方法、並びにロボット装置
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
DE102015008144B4 (de) * 2015-06-24 2024-01-18 Kuka Roboter Gmbh Umschalten einer Steuerung eines Roboters in einen Handführ-Betriebsmodus
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
DE102018112360B3 (de) * 2018-05-23 2019-09-19 Franka Emika Gmbh Bereichsabhängige Kollisionsdetektion für einen Robotermanipulator
DE202019102430U1 (de) * 2019-04-30 2019-06-05 Franka Emika Gmbh Ermittlung eines externen Kraftwinders durch Drehmomentsensoren eines Robotermanipulators

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016110320A1 (en) * 2015-01-07 2016-07-14 Abb Technology Ag Method for estimation of external forces and torques on a robot arm
DE102017215642B3 (de) * 2017-09-06 2018-12-27 Kuka Systems Gmbh Verfahren zum Steuern eines Roboters

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WAHRBURG ARNE ET AL: "Contact force estimation for robotic assembly using motor torques", 2014 IEEE INTERNATIONAL CONFERENCE ON AUTOMATION SCIENCE AND ENGINEERING (CASE), IEEE, 18 August 2014 (2014-08-18), pages 1252 - 1257, XP032669836, DOI: 10.1109/COASE.2014.6899487 *

Also Published As

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

Similar Documents

Publication Publication Date Title
EP4076867A1 (de) Kalibrieren eines virtuellen kraftsensors eines robotermanipulators
DE102013101095B4 (de) Verfahren und Anordnung zur Korrektur von Posenfehlern einer Kinematik sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
DE102015001527B4 (de) Robotersystem, das visuelle Rückmeldung verwendet
DE112013003209B4 (de) Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
EP2954986B1 (de) Vorrichtung und Verfahren zum Steuern und Regeln eines Mehrkörpersystems
DE102010045556B4 (de) System und Verfahren zum Kalibrieren eines Absolutpositions-Drehsensors
EP3285975B1 (de) Steuern und/oder regeln von motoren eines roboters
DE102016220097B4 (de) Bestimmung einer Position eines beweglichen Teils eines Koordinatenmessgerätes
DE102017127995B4 (de) Robotersteuervorrichtung zum Steuern eines Roboters und Verfahren zum Schätzen eines auf den Roboter ausgeübten Störwerts
DE102007060682B4 (de) Verfahren und Vorrichtung zur modellbasierten Regelung eines Manipulators
EP3914423A1 (de) Verfahren zum ermitteln einer gewichtskraft und eines schwerpunktes einer robotermanipulatorlast
DE102014226936B3 (de) Ganzkörperimpedanz für mobile Roboter
DE102007024143A1 (de) Bewegungssteuerung für elastische Roboterstrukturen
DE102018114644B3 (de) Manueller Anlernvorgang an einem Robotermanipulator mit Kraft-/Momentenvorgabe
DE102018114445B4 (de) Vorrichtung und Verfahren zur Einschätzung einer Position des Schwerpunkts eines Roboters
DE102018112370B4 (de) Richtungsabhängige Kollisionsdetektion für einen Robotermanipulator
DE102009058004A1 (de) Impedanzsteuerung im Betriebsraum mit mehreren Prioritäten
WO2021122748A1 (de) Kalibrieren eines virtuellen kraftsensors eines robotermanipulators
EP1302285A2 (de) Kalibrierverfahren für einen Roboterarm
DE102019108250A1 (de) Kalibrieren von Drehmomentsensoren eines Robotermanipulators
DE102011079764B3 (de) Verfahren und Anordnung zur Kalibrierung einer Kinematik sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
DE102004061581B4 (de) Verfahren zum Steuern einer Maschine mit parallelem Kinematik-Mechanismus und Steuerung dafür
DE102019118263B3 (de) Ausgeben einer Güteinformation über eine Krafterfassung am Robotermanipulator
EP4061586B1 (de) Kraftmessung und krafterzeugung in redundanten robotermanipulatoren
DE102019131401B3 (de) Kalibrierung einer Impedanzregelung eines Robotermanipulators

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20837949

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022537895

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20227023983

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020837949

Country of ref document: EP

Effective date: 20220718