DE102018200864B3 - Method and system for controlling a robot - Google Patents

Method and system for controlling a robot Download PDF

Info

Publication number
DE102018200864B3
DE102018200864B3 DE102018200864.7A DE102018200864A DE102018200864B3 DE 102018200864 B3 DE102018200864 B3 DE 102018200864B3 DE 102018200864 A DE102018200864 A DE 102018200864A DE 102018200864 B3 DE102018200864 B3 DE 102018200864B3
Authority
DE
Germany
Prior art keywords
robot
force
normal
operating mode
determined
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
DE102018200864.7A
Other languages
German (de)
Inventor
Shashank Sharma
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.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland 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 KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Priority to DE102018200864.7A priority Critical patent/DE102018200864B3/en
Priority to EP19700912.9A priority patent/EP3740353A1/en
Priority to CN201980020215.0A priority patent/CN111867788B/en
Priority to PCT/EP2019/051001 priority patent/WO2019141706A1/en
Application granted granted Critical
Publication of DE102018200864B3 publication Critical patent/DE102018200864B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

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

Landscapes

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

Abstract

Nach einem erfindungsgemäßen Verfahren zum Steuern eines Roboters (10) in Abhängigkeit von einer auf den Roboter aufgeprägten externen Kraft (Fex), wird der Roboter in einem ersten Betriebsmodus in Abhängigkeit von einer Oberfläche (21) derart gesteuert (S50), dass er einer Tangentialkomponente (Ft) dieser Kraft senkrecht zu einer nach außen gerichteten Normalen (n) auf der Oberfläche in einem Kontaktpunkt einer roboterfesten Referenz (11) mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente (Fn) der Kraft in Richtung dieser Oberflächennormale.

Figure DE102018200864B3_0000
According to a method according to the invention for controlling a robot (10) in response to an external force (Fex) impressed on the robot, the robot is controlled (S50) in a first operating mode as a function of a surface (21) such that it is a tangential component (Ft) tries to follow this force perpendicular to an outwardly directed normal (s) on the surface in a point of contact of a robot-fixed reference (11) with the surface more closely than a normal component (Fn) of the force in the direction of this surface normal.
Figure DE102018200864B3_0000

Description

Die vorliegende Erfindung betrifft ein Verfahren und System zum Steuern eines Roboters in Abhängigkeit von einer auf den Roboter aufgeprägten externen Kraft sowie ein Computerprogrammprodukt zur Durchführung des Verfahrens.The present invention relates to a method and system for controlling a robot in response to an external force impressed on the robot and to a computer program product for carrying out the method.

Aus der US 9,308,645 B2 ist eine Admittanzregelung zum Steuern von Robotern bekannt. Dabei wird auf Basis einer auf einen Roboter aufgeprägten externen Kraft regelungstechnisch eine Soll-Bewegung ermittelt, die eine virtuelle Masse unter dieser externen Kraft ausführen würde, und die der Roboter auszuführen versucht. Mit anderen Worten verhält sich der Endeffektor des Roboters so wie die virtuelle Masse.From the US 9,308,645 B2 is an admittance control for controlling robots known. In this case, on the basis of an external force impressed on a robot, a desired movement is determined by control engineering which would execute a virtual mass under this external force and which the robot tries to execute. In other words, the end effector of the robot behaves like the virtual mass.

Dies ermöglicht eine vorteilhafte Handführung des frei(beweglich)en Endeffektors durch einen Bediener, indem dieser auf den Roboter manuell die externe Kraft aufprägt.This allows an advantageous hand guidance of the free (movable) Endeffektors by an operator by this on the robot manually impresses the external force.

Kontaktiert der Endeffektor dabei jedoch eine Oberfläche, kann es, insbesondere aufgrund von Regelungenauigkeiten und dergleichen, dazu kommen, dass der Endeffektor ungewollt von der Oberfläche abhebt.However, if the end effector contacts a surface, it may happen, in particular due to control inaccuracies and the like, that the end effector unintentionally lifts off the surface.

Die DE 10 2015 210 218 A1 betrifft ein Verfahren zum Betreiben eines Roboters an einem Roboterarbeitsplatz, wobei der Roboter eine Steuerungsvorrichtung aufweist, die ausgebildet und/oder eingerichtet ist, eine zu überwachenden Zustandsart des Roboterarbeitsplatzes oder des Roboters vorzugeben, einen der Zustandsart entsprechenden Zustandsparameter des Roboterarbeitsplatzes oder des Roboters zu überwachen, einen Grenzwertes für den überwachten Zustandsparameter des Roboterarbeitsplatzes oder des Roboters vorzugeben, den Roboterarm durch manuelles Aufbringen von Kräften auf ein oder mehrere der Glieder manuell geführt zu bewegen, um die Gelenke des Roboterarms zu verstellen, sowie eine Vibration an dem Roboterarm, angesteuert durch die Steuerungsvorrichtung, während des manuell geführten Bewegens zu erzeugen, wenn der überwachte Zustandsparameter den vorgegebenen Grenzwert erreicht.The DE 10 2015 210 218 A1 relates to a method for operating a robot at a robot workstation, wherein the robot has a control device that is designed and / or set up to specify a state mode of the robot workstation or of the robot to be monitored, to monitor a state parameter of the robot workstation or of the robot corresponding to the state type, specify a threshold for the monitored state parameter of the robotic workstation or robot to manually move the robotic arm by manually applying forces to one or more of the members to displace the joints of the robotic arm and vibration to the robotic arm actuated by the control device to generate during the manually guided move when the monitored state parameter reaches the predetermined limit.

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.The DE 10 2015 009 151 A1 relates to a method for automatically determining an input command for a robot that is input to the robot by manually applying an external force, wherein the input command is determined on the basis of the fraction of joint forces impressed by the external force, which is a movement of the robot in only one seeks to effect for this input command specific subspace of the joint coordinate space of the robot.

Eine aus der DE 10 2015 004 484 A1 bekannte Robotersteuerung zum leichten Bewegen einer gewünschten Achse eines Roboters durch Ausüben einer Kraft auf ein vorderes Ende des Roboters weist Folgendes auf: einen Kraftmessungsteil, der eine auf das vordere Ende ausgeübte Kraft misst; einen Betätigungskraftberechnungsteil, der eine Betätigungskraft zum Bewegen einer jeden Achse basierend auf der gemessenen Kraft berechnet; einen Betätigungsbefehlsteil, der einen Befehl zum Bewegen des Roboters ausgibt; und einen Betätigungsachsenspezifizierungsteil, der eine Betätigungsachse spezifiziert, die in Erwiderung der Kraft zu bewegen ist, und eine Bewegungsrichtung der Betätigungsachse in Abhängigkeit von einer Richtung der Kraft bestimmt. Wenn zwei oder mehr Betätigungsachsen spezifiziert werden, bestimmt der Betätigungsachsenspezifizierungsteil je nach einem Status der Bewegungsbetätigung, ob jede Betätigungsachse bewegbar ist oder nicht.One from the DE 10 2015 004 484 A1 A known robot controller for easily moving a desired axis of a robot by applying a force to a front end of the robot includes: a force measuring part that measures a force applied to the front end; an operation force calculation part that calculates an operation force for moving each axis based on the measured force; an operation command part that outputs a command to move the robot; and an operation axis specifying part that specifies an operation axis to be moved in response to the force and a movement direction of the operation axis depending on a direction of the force. When two or more operation axes are specified, the operation axis specifying part determines whether each operation axis is movable or not, depending on a status of the movement operation.

Eine aus der DE 10 2015 004 481 A1 bekannte Robotersteuervorrichtung umfasst eine Einheit zum Einstellen einer Betätigungsachse, die eine Achse, die gemäß einer ausgeübten Kraft rotatorisch bewegt wird, als Betätigungsachse einstellt und eine Drehbewegungsrichtung der Betätigungsachse einstellt; eine Einheit zum Erfassen einer ersten Betätigungskraft, die eine erste virtuelle Kraft erzielt, die virtuell auf die Betätigungsachse ausgeübt wird, um davon auszugehen, dass die erste virtuelle Kraft eine erste Betätigungskraft ist; und eine Betätigungsbefehlseinheit, die einen Betätigungsbefehl zum Bewegen der Betätigungsachse, die von der Einheit zum Einstellen einer Betätigungsachse eingestellt wird, auf der Grundlage einer Betätigungskraft, die aus der ersten Betätigungskraft bestimmt wird, ausgibt. Die Betätigungsbefehlseinheit erzielt eine Zielbewegungsrichtung und eine Zielbewegungsgeschwindigkeit der Betätigungsachse auf der Grundlage der ersten Betätigungskraft und der Drehbewegungsrichtung, die von der Einheit zum Einstellen einer Betätigungsachse eingestellt wird, um die Betätigungsachse zu bewegen.One from the DE 10 2015 004 481 A1 The known robot control apparatus comprises an operation axis adjusting unit that sets an axis that is rotationally moved in accordance with an applied force as an operation axis and sets a rotational movement direction of the operation axis; a first operating force detecting unit that obtains a first virtual force that is virtually applied to the operation axis to assume that the first virtual force is a first operating force; and an operation command unit that outputs an operation command for moving the operation axis, which is set by the operation axis adjusting unit, based on an operation force determined from the first operation force. The operation command unit obtains a target movement direction and a target movement speed of the operation axis on the basis of the first operation force and the rotational movement direction set by the operation axis adjustment unit to move the operation axis.

Die DE 10 2013 218 823 A1 betrifft ein Verfahren zum manuell geführten Verstellen der Pose eines Manipulatorarms eines Industrieroboters, aufweisend die Schritte: Erfassen einer von einem Bediener des Industrieroboters auf den Manipulatorarm aufgebrachten Führungskraft, Bestimmen derjenigen Freiheit eines Referenz-Koordinatensystems in deren Richtung die Führungskraft ihre größte Kraftrichtungskomponente aufweist, als eine ausgewählte Freiheit, kraftgeregeltes Ansteuern der Antriebe des Industrieroboters derart, dass ein Verstellen eines vorbestimmten, mit dem Manipulatorarm verbundenen Bezugspunktes durch Bewegen des Manipulatorarms während eines manuell geführten Verstellens der Pose des Manipulatorarms nur in der ausgewählten Freiheit erfolgt.The DE 10 2013 218 823 A1 relates to a method for manually manipulating the pose of a manipulator arm of an industrial robot, comprising the steps of: detecting an operator applied to the manipulator arm by an operator of the industrial robot, determining as freedom of a reference coordinate system in the direction of which the operator has its greatest force directing component selected freedom, force-controlled driving the drives of the industrial robot such that an adjustment of a predetermined, associated with the manipulator arm reference point by moving the manipulator arm during a manually guided Adjusting the pose of the manipulator arm is done only in the selected freedom.

Eine aus der DE 10 2008 062 622 A1 bekannte Befehlseingabe in eine Steuerung eines Manipulators umfasst die Schritte: Erfassen einer ersten Bewegung oder Kraft; Vergleichen der erfassten ersten Bewegung bzw. Kraft mit gespeicherten Bewegungen bzw. Kräften, denen je ein Befehl zugeordnet ist; Ausgabe des dieser gespeicherten Bewegung bzw. Kraft zugeordneten Befehls an die Steuerung des Manipulators, falls die erfasste Bewegung bzw. Kraft mit einer gespeicherten Bewegung bzw. Kraft übereinstimmt.One from the DE 10 2008 062 622 A1 known command input to a controller of a manipulator comprises the steps of: detecting a first movement or force; Comparing the detected first motion or force with stored motions or forces, each associated with a command; Output of the instruction associated with this stored motion or force to the controller of the manipulator if the detected movement or force coincides with a stored movement or force.

Aufgabe der vorliegenden Erfindung ist es, den Betrieb eines Roboters zu verbessern.The object of the present invention is to improve the operation of a robot.

Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 12, 13 stellen ein System bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.This object is achieved by a method having the features of claim 1. Claims 12, 13 protect a system or computer program product for carrying out a method described herein. The subclaims relate to advantageous developments.

Nach einer Ausführung der vorliegenden Erfindung wird bei einem Verfahren zum Steuern eines Roboters in Abhängigkeit von einer auf den Roboter aufgeprägten, insbesondere aktuellen, externen Kraft der Roboter in einem ersten Betriebsmodus, insbesondere fortlaufend, in Abhängigkeit von einer Oberfläche derart bzw. mit der Maßgabe gesteuert, dass er einer Tangentialkomponente der Kraft senkrecht zur einer nach außen gerichteten Normalen auf der Oberfläche in einem, insbesondere aktuellen, Kontaktpunkt einer roboterfesten Referenz mit der Oberfläche stärker zu folgen versucht, insbesondere folgt, als einer Normalkomponente der Kraft in Richtung dieser Oberflächennormale, insbesondere derart bzw. mit der Maßgabe, dass er der Normalkomponente der Kraft, wenigstens im Wesentlichen, nicht zu folgen versucht, insbesondere nicht folgt. Mit anderen Worten wird der Roboter in dem ersten Betriebsmodus gesteuert, (um) der Normalkomponente weniger (leicht) zu folgen als der Tangentialkomponente, in einer Ausführung gar nicht zu folgen.According to one embodiment of the present invention, in a method for controlling a robot as a function of an external force impressed on the robot, the robot is controlled in a first operating mode, in particular continuously, as a function of a surface in such a way or with the proviso in that it tries to follow more strongly a tangential component of the force perpendicular to an outwardly directed normal on the surface in a, in particular current, contact point of a robot-fixed reference with the surface, in particular follows, as a normal component of the force in the direction of this surface normal, in particular such or with the proviso that he tries not to follow the normal component of the force, at least substantially, in particular does not follow. In other words, in the first mode of operation, the robot is controlled to follow (less) the normal component than the tangential component to not even follow in one embodiment.

Hierdurch kann in einer Ausführung ein unerwünschtes Abheben von einer kontaktierten Oberfläche reduziert, in einer Ausführung, wenigstens im Wesentlichen, vermieden werden.As a result, in one embodiment, an undesired lift-off from a contacted surface can be reduced, in one embodiment, at least substantially avoided.

Ein Steuern bzw. eine Steuerung kann in einer Ausführung ein Regeln bzw. eine Regelung umfassen, insbesondere sein. Eine Kraft kann in einer Ausführung auch ein Drehmoment umfassen, insbesondere sein.Control in one embodiment may include, in particular, rules. In one embodiment, a force may also include a torque, in particular.

Der Roboter weist in einer Ausführung wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Gelenke, insbesondere antreibbare bzw. angetriebene und/oder Drehgelenke, auf, in einer Ausführung also, insbesondere elektrische, Antriebe zum Verstellen der Gelenke.In one embodiment, the robot has at least three, in particular at least six, in one embodiment at least seven joints, in particular drivable or driven and / or rotary joints, in one embodiment, in particular electric, drives for adjusting the joints.

Hierdurch kann der Roboter in einer Ausführung vorteilhaft, insbesondere flexibel und/oder präzise, eingesetzt werden.As a result, in one embodiment, the robot can be used advantageously, in particular flexibly and / or precisely.

Die roboterfeste Referenz ist in einer Ausführung ein distaler Endeffektor des Roboters. Die externe Kraft wird in einer Ausführung manuell durch einen Bediener auf den Roboter, in einer Ausführung auf seine roboterfeste Referenz, aufgeprägt bzw. ausgeübt bzw. ist eine manuell durch einen Bediener aufgeprägte externe Kraft. In einer Ausführung ist die externe Kraft eine im Kontaktpunkt angreifende Kraft, sie kann beispielsweise durch eine Jacobimatrix in an sich bekannter Weise (virtuell) dorthin transformiert bzw. verschoben werden bzw. sein.The robotic reference in one embodiment is a distal end effector of the robot. The external force in one embodiment is manually imparted by an operator to the robot, in one embodiment to its robot-fixed reference, or is an external force impressed manually by an operator. In one embodiment, the external force is a force acting on the point of contact; it can be transformed or displaced there by a Jacobian matrix in a manner known per se (virtually).

Hierdurch kann der Roboter in einer Ausführung vorteilhaft handgeführt werden, in einer Ausführung zum Teachen bzw. Vorgeben von anschließend automatisch abzufahrenden Bahnen oder dergleichen.As a result, the robot can advantageously be hand-guided in one embodiment, in an embodiment for teaching or presetting subsequently automatically traversable paths or the like.

Eine nach außen gerichtete Normale auf einer Oberfläche in einem Kontaktpunkt („Oberflächennormale“) steht in einer Ausführung senkrecht auf einer Tangentialebene (an) der Oberfläche in dem Kontaktpunkt und ist von der Oberfläche weg bzw. zu der roboterfesten Referenz hin gerichtet, sie kann beispielsweise in an sich bekannter Weise differentialgeometrisch durch den entsprechend orientierten Gradienten bzw. das entsprechend orientierte Kreuzprodukt zweier nicht kollinearer Tangentialvektoren (an) der Oberfläche in dem Kontaktpunkt bestimmt sein bzw. werden, die ihrerseits zum Beispiel in an sich bekannter Weise durch Differentiation bestimmt sein bzw. werden können. Ist beispielsweise eine Oberfläche bzw. ihre Kontur durch die Funktion S(x, y, z) = 0 mit den kartesischen Koordinaten x, y, und z beschrieben, zum Beispiel eine Kugeloberfläche durch x2+y2+z2 = 0, so ist die Oberflächennormale n in einem Kontaktpunkt (x, y, z) durch n = [∂S/∂x , ∂S/∂y, ∂S/∂z]T bestimmt, im Beispiel durch [x, y, z]T. Mit anderen Worten folgt in einer Ausführung der Roboter im ersten Betriebsmodus einer Projektion der externen Kraft in die Tangentialebene (an) der Oberfläche in dem Kontaktpunkt stärker als einer Projektion der externen Kraft in Richtung der nach außen gerichteten Oberflächennormale bzw. versucht dies bzw. wird hierzu (entsprechend) gesteuert, in einer Ausführung folgt er der Projektion der externen Kraft in Richtung der nach außen gerichteten Oberflächennormale im ersten Betriebsmodus, wenigstens im Wesentlichen, gar nicht bzw. versucht dies bzw. wird hierzu (entsprechend) gesteuert.An outward normal on a surface in a contact point ("surface normal") in one embodiment is perpendicular to a tangent plane (on) of the surface in the contact point and is directed away from the surface or toward the robot-fixed reference, for example be in a conventional manner differential geometric determined by the correspondingly oriented gradient or the correspondingly oriented cross product of two non-collinear tangent vectors (on) the surface in the contact point or be determined in turn, for example, in a conventional manner by differentiation or can be. If, for example, a surface or its contour is described by the function S (x, y, z) = 0 with the Cartesian coordinates x, y, and z, for example a spherical surface through x 2 + y 2 + z 2 = 0, then is the surface normal n in a contact point (x, y, z) is determined by n = [∂S / ∂x, ∂S / ∂y, ∂S / ∂z] T , in the example by [x, y, z] T. In other words, in one embodiment of the robot in the first mode of operation, projection of the external force into the tangent plane (on) of the surface in the contact point is stronger than a projection of the external force towards the outward surface normal, or attempts to do so (correspondingly) controlled, in one embodiment, it follows the projection of the external force in the direction of the outward surface normal in the first mode of operation, at least substantially, not at all or tries this or is controlled accordingly.

In einer Ausführung wird der Roboter in einem zweiten Betriebsmodus, insbesondere fortlaufend, derart bzw. mit der Maßgabe gesteuert, dass er der Normalkomponente der externen Kraft stärker zu folgen versucht, insbesondere folgt, als in dem ersten Betriebsmodus, insbesondere derart bzw. mit der Maßgabe, dass er der Kraft unabhängig von ihrer Richtung zu folgen versucht, insbesondere folgt. Mit anderen Worten wird der Roboter in dem zweiten Betriebsmodus gesteuert, (um) der externen Kraft richtungsunabhängig (leicht) zu folgen. In one embodiment, the robot is controlled in a second operating mode, in particular continuously, such or with the proviso that it tries to follow the normal component of the external force stronger, in particular following, as in the first operating mode, in particular such or with the proviso that he tries to follow the force regardless of its direction, in particular follows. In other words, in the second operation mode, the robot is controlled to follow the external force directionally (lightly).

Hierdurch kann in einer Ausführung die roboterfeste Referenz in dem zweiten Betriebsmodus absichtlich von der Oberfläche wegbewegt und/oder vorteilhaft frei im Raum bewegt werden.As a result, in one embodiment, the robot-fixed reference in the second operating mode intentionally moved away from the surface and / or advantageously moved freely in space.

In einer Ausführung wird in Abhängigkeit von der Normalkomponente der Kraft von dem ersten in den zweiten Betriebsmodus umgeschaltet, in einer Ausführung, falls ein Betrag der Normalkomponente einen vorgegebenen Schwellwert übersteigt.In one embodiment, depending on the normal component of the force, the force is switched from the first to the second operating mode, in one embodiment, if an amount of the normal component exceeds a predetermined threshold.

Hierdurch kann in einer Ausführung ein Bediener den ersten Betriebsmodus einfach beenden, insbesondere, um die roboterfeste Referenz von der Oberfläche wegzubewegen, indem er ausreichend stark von der Oberfläche weg zieht.As a result, in one embodiment, an operator may simply terminate the first mode of operation, particularly to move the robot-fixed reference away from the surface by pulling sufficiently away from the surface.

Zusätzlich oder alternativ kann auch in Abhängigkeit von einer Benutzereingabe von dem ersten in den zweiten Betriebsmodus umgeschaltet, werden, beispielsweise ein Bediener einen entsprechenden physischen oder Software-Schalter betätigen oder dergleichen.Additionally or alternatively, it is also possible to switch over from the first to the second operating mode depending on a user input, for example an operator actuating a corresponding physical or software switch or the like.

In einer Ausführung wird der Roboter in dem ersten Betriebsmodus derart bzw. mit der Maßgabe gesteuert, dass er mit der roboterfesten Referenz eine vorgegebene Kraft gegensinnig zur Oberflächennormale auf die Oberfläche aufzuprägen versucht, insbesondere aufprägt. Mit anderen Worten wird der Roboter in dem ersten Betriebsmodus gesteuert, (um) eine vorgegebene Kraft gegensinnig zur Oberflächennormale auf die Oberfläche aufzuprägen.In one embodiment, the robot is controlled in the first operating mode in such a way or with the proviso that it tries to impose a particular force on the surface in the opposite direction to the surface normal with the robot-fixed reference, in particular imprints it. In other words, in the first mode of operation, the robot is controlled to impart a predetermined force to the surface in the opposite direction of the surface normal.

Hierdurch kann in einer Ausführung die roboterfeste Referenz vorteilhaft steuerungstechnisch an der Oberfläche fixiert werden und/oder eine gewünschte Prozesskraft, beispielsweise zur Bearbeitung der Oberfläche, aufprägen.As a result, in one embodiment, the robot-fixed reference can advantageously be fixed to the surface by control technology and / or imprint a desired process force, for example for processing the surface.

In einer Ausführung wird in Abhängigkeit von einem ermittelten Abstand, insbesondere bei Unterschreiten eines vorgegebenen Mindestabstands, in einer Ausführung bei Kontakt, zwischen der roboterfesten Referenz und der Oberfläche in den ersten Betriebsmodus umgeschaltet.In one embodiment, depending on a determined distance, in particular when falling below a predetermined minimum distance, in an embodiment in contact, between the robot-fixed reference and the surface switched to the first operating mode.

Hierdurch kann in einer Ausführung ein Bediener den ersten Betriebsmodus einfach initiieren, indem er die roboterfeste Referenz ausreichend nahe zu der Oberfläche zieht.As a result, in one embodiment, an operator may simply initiate the first mode of operation by pulling the robot-fixed reference sufficiently close to the surface.

Zusätzlich oder alternativ kann auch in Abhängigkeit von einer Benutzereingabe in den ersten Betriebsmodus umgeschaltet, werden, beispielsweise ein Bediener einen entsprechenden physischen oder Software-Schalter betätigen oder dergleichen.Additionally or alternatively, it is also possible to switch to the first operating mode depending on a user input, for example an operator can actuate a corresponding physical or software switch or the like.

In einer Ausführung wird die externe Kraft mithilfe eines Sensors an der roboterfesten Referenz ermittelt.In one embodiment, the external force is determined using a sensor on the robot-fixed reference.

Hierdurch kann sie in einer Ausführung besonders präzise ermittelt werden.As a result, they can be determined very precisely in one embodiment.

Zusätzlich oder alternativ wird die externe Kraft in einer Ausführung mithilfe von Sensoren an Gelenken des Roboters ermittelt, insbesondere auf Basis eines dynamischen Modells des Roboters.Additionally or alternatively, the external force is determined in one embodiment by means of sensors on joints of the robot, in particular based on a dynamic model of the robot.

Hierdurch kann in einer Ausführung ein zusätzlicher Sensor an der roboterfesten Referenz entfallen.As a result, in one embodiment, an additional sensor on the robot-fixed reference can be omitted.

In einer Ausführung wird die Oberflächennormale in Abhängigkeit von einer, in einer Ausführung mithilfe einer Abtastung, eines Sichtsystems oder dergleichen, ermittelten Kontur der Oberfläche ermittelt.In one embodiment, the surface normal is determined as a function of a contour of the surface determined in a design using a scan, a vision system, or the like.

Hierdurch kann sie in einer Ausführung besonders präzise ermittelt werden.As a result, they can be determined very precisely in one embodiment.

Zusätzlich oder alternativ wird die Oberflächennormale in einer Ausführung in Abhängigkeit von einer, in einer Ausführung auf Basis von CAD-Daten oder dergleichen, vorgegebenen Kontur der Oberfläche ermittelt.Additionally or alternatively, the surface normal in one embodiment is determined as a function of a contour of the surface predetermined in a design based on CAD data or the like.

Hierdurch kann in einer Ausführung ein zeitlicher und/oder apparativer Aufwand zum Ermitteln der Kontur entfallen.As a result, in one embodiment, a time and / or equipment expenditure for determining the contour can be omitted.

In einer Ausführung wird der Kontaktpunkt in Abhängigkeit von einer Erfassung einer Umgebung der roboterfesten Referenz, in einer Ausführung mithilfe einer Abtastung, eines Sichtsystems oder dergleichen, ermittelt.In one embodiment, the contact point is determined in response to detection of an environment of the robot-fixed reference, in an embodiment using a scan, a vision system, or the like.

Hierdurch kann er in einer Ausführung besonders präzise ermittelt werden.As a result, it can be determined very precisely in one embodiment.

Zusätzlich oder alternativ wird in einer Ausführung der Kontaktpunkt in Abhängigkeit von erfassten Stellungen von Gelenken des Roboters, einer ermittelten oder vorgegebenen Kontur der roboterfesten Referenz und/oder einer ermittelten oder vorgegebenen Kontur der Oberfläche ermittelt.Additionally or alternatively, in one embodiment, the contact point in dependence on detected positions of joints of the robot, a determined or predetermined contour of the determined robot-fixed reference and / or a determined or predetermined contour of the surface.

Hierdurch kann in einer Ausführung ein zeitlicher und/oder apparativer Aufwand zum Erfassen der Umgebung entfallen.As a result, in one embodiment, a time and / or equipment expense for detecting the environment can be omitted.

In einer Ausführung wird der Roboter in dem ersten und/oder zweiten Betriebsmodus mithilfe einer Admittanzregelung gesteuert, die Steuerwerte für Antriebe des Roboters in Abhängigkeit von der ermittelten externen Kraft ermittelt.In one embodiment, in the first and / or second operating mode, the robot is controlled by means of an admittance control, which determines control values for drives of the robot as a function of the determined external force.

Hierdurch kann der Roboter in einer Ausführung besonders vorteilhaft, insbesondere intuitiv, zuverlässig und/oder präzise, handgeführt werden.As a result, in one embodiment, the robot can be guided in a particularly advantageous manner, in particular intuitively, reliably and / or precisely.

In einer Ausführung wird in dem ersten Betriebsmodus die Normalkomponente der ermittelten externen Kraft in Richtung der Oberflächennormale rechentechnisch reduziert, insbesondere ausgeblendet bzw. -filtert.In one embodiment, in the first operating mode, the normal component of the determined external force in the direction of the surface normal is computationally reduced, in particular faded out or filtered.

Dadurch kann das erfindungsgemäß schwächere bzw. Nicht-Folgen der Normalkomponente, insbesondere mithilfe einer Admittanzregelung, besonders vorteilhaft, insbesondere zuverlässig und/oder mit geringem Rechen(zeit)aufwand, realisiert werden.As a result, the invention according to the invention weaker or non-follow the normal component, in particular by means of an admittance, particularly advantageous, in particular reliably and / or with little rake (time) effort can be realized.

Nach einer Ausführung der vorliegenden Erfindung ist ein System, insbesondere hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist Mittel zum Steuern des Roboters in Abhängigkeit von einer auf den Roboter aufgeprägten externen Kraft in dem ersten Betriebsmodus in Abhängigkeit von einer Oberfläche derart, dass der Roboter einer Tangentialkomponente der Kraft senkrecht zur nach außen gerichteten Normalen auf der Oberfläche in einem Kontaktpunkt einer roboterfesten Referenz mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente der Kraft in Richtung dieser Oberflächennormale, insbesondere der Normalkomponente der Kraft nicht zu folgen versucht, auf.According to one embodiment of the present invention, a system, in particular hardware and / or software, in particular program technology, for implementing a method described herein and / or has means for controlling the robot in response to an external force applied to the robot in the first operating mode in response to a surface such that the robot tries to follow a tangential component of the force perpendicular to the outward normal on the surface in a contact point of a robot-fixed reference with the surface stronger than a normal component of the force in the direction of this surface normal, in particular Normal component of the force not trying to follow up.

In einer Ausführung weist das System bzw. sein(e) Mittel auf:

  • Mittel zum Steuern des Roboters in einem zweiten Betriebsmodus derart, dass er der Normalkomponente der Kraft stärker zu folgen versucht als in dem ersten Betriebsmodus, insbesondere derart, dass er der externen Kraft unabhängig von ihrer Richtung zu folgen versucht;
  • Mittel zum Umschalten von dem ersten in den zweiten Betriebsmodus in Abhängigkeit von der Normalkomponente der Kraft;
  • Mittel zum Steuern des Roboters in dem ersten Betriebsmodus derart, dass er mit der roboterfesten Referenz eine vorgegebene Kraft gegensinnig zur Oberflächennormale auf die Oberfläche aufzuprägen versucht;
  • Mittel zum Umschalten in den ersten Betriebsmodus in Abhängigkeit von einem ermittelten Abstand, insbesondere Kontakt, zwischen der roboterfesten Referenz und der Oberfläche und/oder in Abhängigkeit von einer Benutzereingabe;
  • einen Sensor an der roboterfesten Referenz und/oder Sensoren an Gelenken des Roboters zum Ermitteln der externen Kraft;
  • Mittel zum Ermitteln der Oberflächennormale in Abhängigkeit von einer ermittelten oder vorgegebenen Kontur der Oberfläche;
  • Mittel zum Ermitteln des Kontaktpunkts in Abhängigkeit von erfassten Stellungen von Gelenken des Roboters, einer ermittelten oder vorgegebenen Kontur der roboterfesten Referenz und/oder Oberfläche und/oder einer Erfassung einer Umgebung der roboterfesten Referenz;
  • Mittel zum Steuern des Roboters in dem ersten und/oder zweiten Betriebsmodus mithilfe einer Admittanzregelung, die Steuerwerte für Antriebe des Roboters in Abhängigkeit von der ermittelten externen Kraft ermittelt; und/oder
  • Mittel zum rechentechnischen Reduzieren, insbesondere Ausblenden, der Normalkomponente in dem ersten Betriebsmodus.
In one embodiment, the system or its agent has:
  • Means for controlling the robot in a second mode of operation such that it tries to follow the normal component of the force more strongly than in the first mode of operation, in particular so as to try to follow the external force regardless of its direction;
  • Means for switching from the first to the second operating mode as a function of the normal component of the force;
  • Means for controlling the robot in the first mode of operation so as to impose a predetermined force against the surface normal to the surface with the robot-fixed reference;
  • Means for switching to the first operating mode as a function of a determined distance, in particular contact, between the robot-fixed reference and the surface and / or in dependence on a user input;
  • a sensor on the robot-fixed reference and / or sensors on joints of the robot for determining the external force;
  • Means for determining the surface normal as a function of a determined or predetermined contour of the surface;
  • Means for determining the point of contact in dependence on detected positions of joints of the robot, a determined or predetermined contour of the robot-fixed reference and / or surface and / or detection of an environment of the robot-fixed reference;
  • Means for controlling the robot in the first and / or second operating mode by means of an admittance control, which determines control values for drives of the robot in dependence on the determined external force; and or
  • Means for computationally reducing, in particular hiding, the normal component in the first operating mode.

Ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere eine, vorzugsweise mit einem Speicher- und/oder Bussystem daten- bzw. signalverbundene, insbesondere digitale, Verarbeitungs-, insbesondere Mikroprozessoreinheit (CPU) und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die CPU kann dazu ausgebildet sein, Befehle, die als ein in einem Speichersystem abgelegtes Programm implementiert sind, abzuarbeiten, Eingangssignale von einem Datenbus zu erfassen und/oder Ausgangssignale an einen Datenbus abzugeben. Ein Speichersystem kann ein oder mehrere, insbesondere verschiedene, Speichermedien, insbesondere optische, magnetische, Festkörper- und/oder andere nicht-flüchtige Medien aufweisen. Das Programm kann derart beschaffen sein, dass es die hier beschriebenen Verfahren verkörpert bzw. auszuführen imstande ist, sodass die CPU die Schritte solcher Verfahren ausführen kann und damit insbesondere den Roboter steuern kann. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere nichtflüchtiges, Speichermedium zum Speichern eines Programms bzw. mit einem darauf gespeicherten Programm aufweisen, insbesondere sein, wobei ein Ausführen dieses Programms ein System bzw. eine Steuerung, insbesondere einen Computer, dazu veranlasst, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen.A means in the sense of the present invention may be designed in terms of hardware and / or software, in particular a data or signal-connected, preferably digital, processing, in particular microprocessor unit (CPU) and / or a memory and / or bus system or multiple programs or program modules. The CPU may be configured to execute instructions implemented as a program stored in a memory system, to capture input signals from a data bus, and / or to output signals to a data bus. A storage system may comprise one or more, in particular different, storage media, in particular optical, magnetic, solid state and / or other non-volatile media. The program may be such that it is capable of embodying or executing the methods described herein, so that the CPU may perform the steps of such methods, and thus, in particular, control the robot. In one embodiment, a computer program product may comprise, in particular, a nonvolatile storage medium for storing a program or a program stored thereon, In particular, an execution of this program causes a system or a controller, in particular a computer, to execute a method described here or one or more of its steps.

In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel.In one embodiment, one or more, in particular all, steps of the method are completely or partially automated, in particular by the system or its (e) means.

In einer Ausführung weist das System den Roboter und/oder seine Steuerung auf.In one embodiment, the system includes the robot and / or its controller.

Mit besonderem Vorteil kann das vorliegende Verfahren zum Teachen bzw. Vorgeben von Roboterbahnen, insbesondere mittels Handführen des Roboters, insbesondere der roboterfesten Referenz, verwendet werden. Entsprechend wird in einer Ausführung in dem ersten Betriebsmodus - wenigstens zeitweise - eine Pose des Roboters, insbesondere der roboterfesten Referenz, abgespeichert und in einer Weiterbildung anschließend auf Basis der abgespeicherten Posen eine Roboterbahn vorgegeben.With particular advantage, the present method for teaching or predetermining robot tracks, in particular by means of manual guiding of the robot, in particular the robot-fixed reference, can be used. Accordingly, in one embodiment in the first operating mode - at least temporarily - a pose of the robot, in particular the robot-fixed reference, stored and subsequently given a robot path in a development on the basis of the stored poses.

Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:

  • 1: ein System nach einer Ausführung der vorliegenden Erfindung; und
  • 2: ein Verfahren zum Steuern eines Roboters des Systems nach einer Ausführung der vorliegenden Erfindung.
Further advantages and features emerge from the subclaims and the exemplary embodiments. This shows, partially schematized:
  • 1 a system according to an embodiment of the present invention; and
  • 2 A method of controlling a robot of the system according to an embodiment of the present invention.

1 zeigt ein System nach einer Ausführung der vorliegenden Erfindung mit einem Roboter 10, der einen Endeffektor 11 aufweist, und einer Robotersteuerung 30. 1 shows a system according to an embodiment of the present invention with a robot 10 who is an end effector 11 and a robot controller 30 ,

Der Endeffektor 11 wird durch einen Bediener 40 auf einer Oberfläche 21 eines Werkstücks 20 handgeführt, beispielsweise zum Teachen einer Bearbeitungsbahn.The end effector 11 is by an operator 40 on a surface 21 a workpiece 20 Hand-guided, for example, to teach a processing path.

Hierzu wird in einem ersten Schritt S10 (vgl. 2) eines Verfahrens zum Steuern des Roboters 10 nach einer Ausführung der vorliegenden Erfindung mithilfe eines Kraft-Momenten-Sensors 12 am Endeffektor 11 eine vom Bediener 40 manuell aufgeprägte externe Kraft Fex ermittelt.This will be done in a first step S10 (see. 2 ) of a method for controlling the robot 10 according to an embodiment of the present invention by means of a force-moment sensor 12 at the end effector 11 one from the operator 40 manually impressed external force F ex determined.

In einer Abwandlung kann die Robotersteuerung die externe Kraft auch mithilfe von Sensoren 12' an den Gelenken des Roboters ermitteln. Allgemein kann die externe Kraft Fex in einer Ausführung durch Transformation der Differenz der an den Gelenken mithilfe der Sensoren gemessenen Achsmomente τmsr und der auf Basis eines, gegebenenfalls inversen, dynamischen Modells des Roboters berechneten, insbesondere kommandierten, Achsmomente τ(c)md mit der (transponierten) Jacobimatrix JT des Endeffektors bzw. seiner Spitze ermittelt werden: F ex = J T ( τ msr τ ( c ) md )

Figure DE102018200864B3_0001
In a modification, the robot controller may also use external force via sensors 12 ' at the joints of the robot. Generally, the external force F ex in an embodiment, by transforming the difference of the axle moments τ msr measured at the joints by means of the sensors and the, in particular, commanded, axle moments τ (c) md with the (transposed) Jacobian J T calculated on the basis of an optionally inverse dynamic model of the robot of the end effector or its tip: F ex = J T ( τ msr - τ ( c ) md )
Figure DE102018200864B3_0001

Dem liegt die Überlegung zugrunde, dass die Abweichung zwischen den modellbasierten und gemessenen Achsmomenten gerade aus der externen Kraft resultiert, so dass durch Transformation der entsprechenden Achsmomente in den Arbeitsraum des Roboter(endeffektor)s die externe Kraft ermittelt werden kann.This is based on the consideration that the deviation between the model-based and measured axis moments results precisely from the external force, so that the external force can be determined by transforming the corresponding axis moments into the working space of the robot (end effector).

Die Kontur der Oberfläche 21 ist, beispielsweise aus CAD-Daten, bekannt oder wird durch eine Kamera 31 ermittelt.The contour of the surface 21 is known, for example, from CAD data, or is by a camera 31 determined.

In Schritt S10 prüft die Robotersteuerung 30, ob (bereits bzw. noch) ein erster Betriebsmodus ausgewählt ist, beispielsweise durch Betätigung eines entsprechenden Schalters durch den Bediener.In step S10 checks the robot control 30 whether (already or still) a first operating mode is selected, for example by actuation of a corresponding switch by the operator.

Ist dies nicht der Fall (S10: „N“), liegt ein zweiter Betriebsmodus vor und die Robotersteuerung bzw. das Verfahren fährt mit Schritt S40 fort.This is not the case ( S10 : "N"), there is a second mode of operation and the robot controller or method moves to step S40 continued.

In Schritt S40 führt sie eine Admittanzregelung durch, bei der sie in an sich bekannter Weise aus der externen Kraft Fex an der Spitze des Endeffektors 11 eine Soll-Geschwindigkeit vd ermittelt, beispielsweise durch Zeitintegration gemäß v d = ( F ex / m ) d t

Figure DE102018200864B3_0002
mit der virtuellen Masse m, und die Antriebe 13 des Roboters zur Realisierung dieser Soll-Geschwindigkeit vd ansteuert. In einer Abwandlung kann auch eine virtuelle Dämpfung vorgesehen sein.In step S40 It carries out an admittance regulation, in which it uses the external force in a manner known per se F ex at the top of the end effector 11 determines a desired speed v d , for example, by time integration according to v d = ( F ex / m ) d t
Figure DE102018200864B3_0002
with the virtual mass m, and the drives 13 of the robot for realizing this target speed v d drives. In a modification, a virtual damping can also be provided.

Falls der erste Betriebsmodus ausgewählt ist (S10: „Y“), ermittelt die Robotersteuerung 30 in einem Schritt S20 auf Basis der Stellung der Gelenke des Roboters und der Kontur der Oberfläche 21 eine nach außen gerichtete Oberflächennormale n (|n| = 1) senkrecht zur Oberfläche 21 im Kontaktpunkt der Spitze des Endeffektors 11 mit der Oberfläche 21 sowie die Normalkomponente Fn der dort angreifenden externen Kraft Fex in Richtung dieser Oberflächennormale n gemäß F n = { [ ( F ex n ) + | F ex n | ] / 2 } n

Figure DE102018200864B3_0003
und prüft, ob der Betrag |Fn| dieser Normalkomponente Fn einen vorgegebenen Grenzwert übersteigt.If the first operation mode is selected (S10: "Y"), the robot controller determines 30 in one step S20 based on the position of the joints of the robot and the contour of the surface 21 an outward surface normal n (| n | = 1) perpendicular to the surface 21 at the point of contact of the tip of the end effector 11 with the surface 21 as well as the normal component F n the external force attacking there F ex towards this surface normal n according to F n = { [ ( F ex n ) + | F ex n | ] / 2 } n
Figure DE102018200864B3_0003
and checks if the amount | F n | this normal component F n exceeds a predetermined limit.

Ist dies der Fall (S20: „Y“), schaltet sie in den zweiten Betriebsmodus um und fährt mit dem oben erläuterten Schritt S40 fort.Is that the case ( S20 : "Y"), it switches to the second operating mode and continues with the above step S40 continued.

Andernfalls (S20: „N“), d.h. falls (weiterhin) der erste Betriebsmodus ausgewählt ist bzw. vorliegt, blendet die Robotersteuerung in einem Schritt S30 die Normalkomponente rechentechnisch aus, indem sie sie von der externen Kraft Fex subtrahiert: F ' ex ( F ex F n ) .

Figure DE102018200864B3_0004
Otherwise ( S20 : "N"), ie if (still) the first operating mode is selected, the robot control fades in one step S30 the normal component computationally by taking it from the external force F ex subtracted: F ' ex ( F ex - F n ) ,
Figure DE102018200864B3_0004

Mit anderen Worten filtert die Robotersteuerung in Schritt S30 die Normalkomponente Fn der externen Kraft Fex in Richtung der Oberflächennormale n aus.In other words, the robot controller filters in step S30 the normal component F n the external force F ex towards the surface normal n out.

Anschließend führt sie in einem Schritt S50 mit dieser gefilterten externen Kraft analog zu Schritt S40 die Admittanzregelung durch, im Ausführungsbeispiel etwa gemäß v d = ( F ' ex / m ) d t

Figure DE102018200864B3_0005
Then she leads in one step S50 with this filtered external force analogous to step S40 the admittance control, in the embodiment approximately according to v d = ( F ' ex / m ) d t
Figure DE102018200864B3_0005

Dann kehrt das Verfahren zu Schritt S10 zurück.Then the process returns to step S10 back.

Dadurch folgt der Roboter 10 im ersten Betriebsmodus mit seinem Endeffektor 11 der Normalkomponente Fn der vom Bediener 40 manuell aufgeprägten externen Kraft Fex nicht und somit einer Tangentialkomponente Ft = Fex - (Fex · n) · n demgegenüber stärker bzw. versucht dies regelungstechnisch zu realisieren. Im zweiten Betriebsmodus hingegen folgt der Roboter 10 mit seinem Endeffektor 11 der externen Kraft Fex unabhängig von ihrer Richtung bzw. versucht dies regelungstechnisch zu realisieren.This is followed by the robot 10 in the first mode of operation with its end effector 11 the normal component F n the one from the operator 40 manually impressed external force F ex not and thus a tangential component F t = F ex - (F ex · n) · n stronger contrast, or attempts to realize this control technology. In the second operating mode, however, the robot follows 10 with his end effector 11 the external force F ex regardless of their direction or trying to implement this control technology.

Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist.Although exemplary embodiments have been explained in the foregoing description, it should be understood that a variety of modifications are possible.

So kann in einer Abwandlung in Schritt S50 anstelle der Normalkomponente Fn in Richtung der Oberflächennormale auch die Komponente der externen Kraft Fex parallel zur Oberflächennormale, d.h. richtungssinnunabhängig ausgefiltert bzw. als gefilterte externe Kraft nur die vorstehend erläuterte Tangentialkomponente Ft berücksichtigt werden. Zusätzlich oder alternativ kann regelungstechnisch auch noch eine vorgegebene Kraft fcmd gegensinnig zur Oberflächennormale auf die Oberfläche aufgeprägt werden, beispielsweise, indem sie in Schritt S50 der gefilterten externen Kraft hinzuaddiert wird: F ' ex ( F ex F n ) f cmd n  bzw F ' ex F t f cmd n

Figure DE102018200864B3_0006
So, in a variation in step S50 instead of the normal component F n in the direction of the surface normal also the component of the external force F ex parallel to the surface normal, ie direction-independent filtered or as a filtered external force only the tangential component explained above F t be taken into account. Additionally or alternatively, a predetermined force f cmd can also be imposed on the surface in a manner opposite to the surface normal , for example by performing in step S50 the filtered external force is added: F ' ex ( F ex - F n ) - f cmd n respectively , F ' ex F t - f cmd n
Figure DE102018200864B3_0006

BezugszeichenlisteLIST OF REFERENCE NUMBERS

1010
Roboterrobot
1111
Endeffektor (roboterfeste Referenz)End effector (robot-fixed reference)
12; 12'12; 12 '
Sensorsensor
1313
Antriebdrive
2020
Werkstückworkpiece
2121
Oberflächesurface
3030
Robotersteuerungrobot control
3131
Kameracamera
4040
Bediener operator
Fex F ex
externe Kraftexternal force
Fn F n
Normalkomponentenormal component
Ft F t
Tangentialkomponentetangential
nn
Oberflächennormalesurface normal

Claims (13)

Verfahren zum Steuern eines Roboters (10) in Abhängigkeit von einer auf den Roboter aufgeprägten externen Kraft (Fex), wobei der Roboter in einem ersten Betriebsmodus in Abhängigkeit von einer Oberfläche (21) derart gesteuert wird (S50), dass er einer Tangentialkomponente (Ft) dieser Kraft senkrecht zu einer nach außen gerichteten Normalen (n) auf der Oberfläche in einem Kontaktpunkt einer roboterfesten Referenz (11) mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente (Fn) der Kraft in Richtung dieser Oberflächennormale.Method for controlling a robot (10) in response to an external force (F ex ) impressed on the robot, the robot being controlled in a first operating mode as a function of a surface (S50) such that it corresponds to a tangential component (S50). F t ) tries to follow this force perpendicular to an outwardly directed normal (s) on the surface in a contact point of a robot-fixed reference (11) with the surface more strongly than a normal component (F n ) of the force in the direction of this surface normal. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Roboter in dem ersten Betriebsmodus derart gesteuert wird, dass er der Normalkomponente der Kraft nicht zu folgen versucht.Method according to Claim 1 , characterized in that the robot is controlled in the first operating mode such that it does not try to follow the normal component of the force. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Roboter in einem zweiten Betriebsmodus derart gesteuert wird (S40), dass er der Normalkomponente der Kraft stärker zu folgen versucht als in dem ersten Betriebsmodus.Method according to one of the preceding claims, characterized in that the robot is controlled (S40) in a second operating mode such that it tries to follow the normal component of the force more strongly than in the first operating mode. Verfahren nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass in Abhängigkeit von der Normalkomponente der Kraft von dem ersten in den zweiten Betriebsmodus umgeschaltet wird (S20) und/oder der Roboter in dem zweiten Betriebsmodus derart gesteuert wird, dass er der Kraft unabhängig von ihrer Richtung zu folgen versucht.Method according to the preceding claim, characterized in that in dependence on the normal component of the force is switched from the first to the second operating mode (S20) and / or the robot is controlled in the second operating mode such that it is the force regardless of their direction tried to follow. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Roboter in dem ersten Betriebsmodus derart gesteuert wird, dass er mit der roboterfesten Referenz eine vorgegebene Kraft gegensinnig zur Oberflächennormale auf die Oberfläche aufzuprägen versucht.Method according to one of the preceding claims, characterized in that the robot is controlled in the first operating mode such is that he tried with the robot-fixed reference to impose a predetermined force in the opposite direction to the surface normal to the surface. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in Abhängigkeit von einem ermittelten Abstand, insbesondere Kontakt, zwischen der roboterfesten Referenz und der Oberfläche und/oder in Abhängigkeit von einer Benutzereingabe in den ersten Betriebsmodus umgeschaltet wird.Method according to one of the preceding claims, characterized in that in dependence on a determined distance, in particular contact, between the robot-fixed reference and the surface and / or in response to a user input in the first operating mode is switched. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die externe Kraft mithilfe eines Sensors (12) an der roboterfesten Referenz und/oder Sensoren (12') an Gelenken des Roboters ermittelt wird.Method according to one of the preceding claims, characterized in that the external force by means of a sensor (12) on the robot-fixed reference and / or sensors (12 ') is determined at joints of the robot. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Oberflächennormale in Abhängigkeit von einer ermittelten oder vorgegebenen Kontur der Oberfläche ermittelt wird.Method according to one of the preceding claims, characterized in that the surface normal is determined as a function of a determined or predetermined contour of the surface. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Kontaktpunkt in Abhängigkeit von erfassten Stellungen von Gelenken des Roboters, einer ermittelten oder vorgegebenen Kontur der roboterfesten Referenz und/oder Oberfläche und/oder einer Erfassung einer Umgebung der roboterfesten Referenz ermittelt wird.Method according to one of the preceding claims, characterized in that the contact point in dependence on detected positions of joints of the robot, a determined or predetermined contour of the robot-fixed reference and / or surface and / or detection of an environment of the robot-fixed reference is determined. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Roboter in dem ersten und/oder zweiten Betriebsmodus mithilfe einer Admittanzregelung gesteuert wird, die Steuerwerte für Antriebe (13) des Roboters in Abhängigkeit von der ermittelten externen Kraft ermittelt.Method according to one of the preceding claims, characterized in that the robot is controlled in the first and / or second operating mode by means of an admittance control, which determines control values for drives (13) of the robot in dependence on the determined external force. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in dem ersten Betriebsmodus die Normalkomponente rechentechnisch reduziert, insbesondere ausgeblendet wird.Method according to one of the preceding claims, characterized in that in the first mode of operation, the normal component is computationally reduced, in particular hidden. System, das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und Mittel (30) aufweist zum Steuern eines Roboters (10) in Abhängigkeit von einer auf den Roboter aufgeprägten externen Kraft (Fex) in einem ersten Betriebsmodus in Abhängigkeit von einer Oberfläche (21) derart, dass der Roboter einer Tangentialkomponente (Ft) der Kraft senkrecht zu einer nach außen gerichteten Normalen (n) auf der Oberfläche in einem Kontaktpunkt einer roboterfesten Referenz (11) mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente (Fn) der Kraft in Richtung dieser Oberflächennormale.A system adapted to perform a method according to any one of the preceding claims and comprising means (30) for controlling a robot (10) in response to an external force (F ex ) applied to the robot in a first mode of operation in response to a surface (21) such that the robot tries to follow a tangential component (F t ) of the force perpendicular to an outward normal (s) on the surface at a contact point of a robot fixed reference (11) with the surface more than a normal component (F n ) the force in the direction of this surface normal. Computerprogrammprodukt mit einem Programmcode, der auf einem von einem Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche 1 bis 11.A computer program product having a program code stored on a computer-readable medium for performing a method according to any one of the preceding Claims 1 to 11 ,
DE102018200864.7A 2018-01-19 2018-01-19 Method and system for controlling a robot Active DE102018200864B3 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102018200864.7A DE102018200864B3 (en) 2018-01-19 2018-01-19 Method and system for controlling a robot
EP19700912.9A EP3740353A1 (en) 2018-01-19 2019-01-16 Method and system for controlling a robot
CN201980020215.0A CN111867788B (en) 2018-01-19 2019-01-16 Method and system for controlling robot
PCT/EP2019/051001 WO2019141706A1 (en) 2018-01-19 2019-01-16 Method and system for controlling a robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102018200864.7A DE102018200864B3 (en) 2018-01-19 2018-01-19 Method and system for controlling a robot

Publications (1)

Publication Number Publication Date
DE102018200864B3 true DE102018200864B3 (en) 2019-02-07

Family

ID=65020029

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018200864.7A Active DE102018200864B3 (en) 2018-01-19 2018-01-19 Method and system for controlling a robot

Country Status (4)

Country Link
EP (1) EP3740353A1 (en)
CN (1) CN111867788B (en)
DE (1) DE102018200864B3 (en)
WO (1) WO2019141706A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019118261B3 (en) * 2019-07-05 2020-08-20 Franka Emika Gmbh Specifying and applying a desired contact torque of a robot manipulator
DE102019118263B3 (en) * 2019-07-05 2020-08-20 Franka Emika Gmbh Output of quality information via force detection on the robot manipulator
DE102019004478B3 (en) * 2019-06-26 2020-10-29 Franka Emlka Gmbh System for making an input on a robotic manipulator

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112936278B (en) * 2021-02-07 2022-07-29 深圳市优必选科技股份有限公司 Man-machine cooperation control method and device for robot and robot

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008062622A1 (en) 2008-12-17 2010-06-24 Kuka Roboter Gmbh Method for command input in controller of manipulator, particularly robot, involves detecting force, which acts on manipulator in specific direction, and comparing detected force with stored forces
DE102013218823A1 (en) 2013-09-19 2015-04-02 Kuka Laboratories Gmbh Method for manually adjusting the pose of a manipulator arm of an industrial robot and associated industrial robots
DE102015004481A1 (en) 2014-04-14 2015-10-15 Fanuc Corporation A robot control device for controlling a robot moved in accordance with an applied force
DE102015004484A1 (en) 2014-04-14 2015-10-15 Fanuc Corporation Robot controller and robot system for moving a robot in response to a force
US9308645B2 (en) 2012-03-21 2016-04-12 GM Global Technology Operations LLC Method of inferring intentions of an operator to move a robotic system
DE102015210218A1 (en) 2015-06-02 2016-12-08 Kuka Roboter Gmbh Method for operating a robot, associated robot with a vibration device and robot workstation
DE102015009151A1 (en) 2015-07-14 2017-01-19 Kuka Roboter Gmbh Determining an input command for a robot that is input to the robot by manually applying a force

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0331265B1 (en) * 1988-03-01 1995-08-23 Hitachi Construction Machinery Co., Ltd. Position/force controlling apparatus for working machine with multiple of degrees of freedom
CN101811301A (en) * 2009-10-28 2010-08-25 北京航空航天大学 Series-parallel robot combined processing system and control method thereof
CN101913149B (en) * 2010-07-23 2012-04-04 山东电力研究院 Embedded light mechanical arm controller and control method thereof
DE102014010638A1 (en) * 2014-07-17 2016-01-21 Kuka Roboter Gmbh Method and device for controlling a robot
CN105269565B (en) * 2015-10-30 2017-04-05 福建长江工业有限公司 A kind of six axle grinding and polishing industrial robot off-line programings and modification method
CN105710881B (en) * 2016-03-16 2017-10-31 杭州娃哈哈精密机械有限公司 A kind of robot end's continuous path plans transition method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102008062622A1 (en) 2008-12-17 2010-06-24 Kuka Roboter Gmbh Method for command input in controller of manipulator, particularly robot, involves detecting force, which acts on manipulator in specific direction, and comparing detected force with stored forces
US9308645B2 (en) 2012-03-21 2016-04-12 GM Global Technology Operations LLC Method of inferring intentions of an operator to move a robotic system
DE102013218823A1 (en) 2013-09-19 2015-04-02 Kuka Laboratories Gmbh Method for manually adjusting the pose of a manipulator arm of an industrial robot and associated industrial robots
DE102015004481A1 (en) 2014-04-14 2015-10-15 Fanuc Corporation A robot control device for controlling a robot moved in accordance with an applied force
DE102015004484A1 (en) 2014-04-14 2015-10-15 Fanuc Corporation Robot controller and robot system for moving a robot in response to a force
DE102015210218A1 (en) 2015-06-02 2016-12-08 Kuka Roboter Gmbh Method for operating a robot, associated robot with a vibration device and robot workstation
DE102015009151A1 (en) 2015-07-14 2017-01-19 Kuka Roboter Gmbh Determining an input command for a robot that is input to the robot by manually applying a force

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019004478B3 (en) * 2019-06-26 2020-10-29 Franka Emlka Gmbh System for making an input on a robotic manipulator
DE102019118261B3 (en) * 2019-07-05 2020-08-20 Franka Emika Gmbh Specifying and applying a desired contact torque of a robot manipulator
DE102019118263B3 (en) * 2019-07-05 2020-08-20 Franka Emika Gmbh Output of quality information via force detection on the robot manipulator

Also Published As

Publication number Publication date
EP3740353A1 (en) 2020-11-25
WO2019141706A1 (en) 2019-07-25
CN111867788B (en) 2023-11-17
CN111867788A (en) 2020-10-30

Similar Documents

Publication Publication Date Title
DE102018116053B4 (en) Robot system and robot learning method
DE102018200864B3 (en) Method and system for controlling a robot
DE102007026299B4 (en) Industrial robots and method for programming an industrial robot
DE102014216514B3 (en) Method for programming an industrial robot and associated industrial robots
EP3323026B1 (en) Ascertaining an input command for a robot, said input command being entered by manually exerting a force onto the robot
EP3109012B1 (en) Switching of a controller of a robot in a manual operating mode
DE102012007254B4 (en) A method and apparatus for predicting a disability between a target part of a robot and a peripheral object
EP2243602B1 (en) Method and device for controlling a manipulator
EP2223191B1 (en) Industrial robot and method for programming an industrial robot
DE102014114234B4 (en) Method and device for controlling a robot manipulator
DE102006061752A1 (en) Method for programming robot, involves manual starting of space points with robot, which carries determined force or torque in started space point, where force or torque is stored
EP2977148B1 (en) Method and device for controlling a robot
DE102018210864B3 (en) Method and system for controlling a robot
DE102020103857B4 (en) Force limitation in the event of a robot manipulator collision
DE102018112370B4 (en) Directional collision detection for a robot manipulator
DE102017007359B4 (en) Method and system for checking and / or modifying a work process of a robot
DE102017005581B4 (en) Controlling a robot
WO2017016641A2 (en) Method and system for controlling a robot
DE102020209866B3 (en) Method and system for operating a robot
DE102015209773B3 (en) A method for continuously synchronizing a pose of a manipulator and an input device
DE102018207919B3 (en) robot control
EP4084937B1 (en) Moving a reference fixed on a robot
DE102018207921B3 (en) Controlling a robot
DE102019219930B3 (en) Method and system for controlling a robot
DE102019202456A1 (en) Method and system for performing a given task by a robot

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: WALLINGER RICKER SCHLOTTER TOSTMANN PATENT- UN, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final