WO2019141706A1 - Verfahren und system zum steuern eines roboters - Google Patents
Verfahren und system zum steuern eines roboters Download PDFInfo
- Publication number
- WO2019141706A1 WO2019141706A1 PCT/EP2019/051001 EP2019051001W WO2019141706A1 WO 2019141706 A1 WO2019141706 A1 WO 2019141706A1 EP 2019051001 W EP2019051001 W EP 2019051001W WO 2019141706 A1 WO2019141706 A1 WO 2019141706A1
- Authority
- WO
- WIPO (PCT)
- 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.)
- Ceased
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Program-controlled manipulators
- B25J9/16—Program controls
- B25J9/1628—Program controls characterised by the control loop
- B25J9/1633—Program controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36457—During teaching, force set point is automatically adapted to circumstances
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39322—Force and position control
Definitions
- 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.
- an admittance control for controlling robots is known.
- 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.
- the end effector of the robot behaves like the virtual mass.
- the object of the present invention is to improve the operation of a robot.
- Claims 12, 13 protect a system or computer program product for carrying out a method described herein.
- the robot in a method for controlling a robot in dependence on a, in particular current, external force impressed on the robot, the robot is in a first
- the robot becomes in the first operating mode
- Control in one embodiment may include, in particular, rules.
- a force may also include a torque, in particular.
- 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, therefore,
- the robot in particular electrical, drives for adjusting the joints.
- the robot can be used advantageously, in particular flexibly and / or precisely.
- the robotic reference in one embodiment is a distal end effector of the robot.
- the external force is manually controlled by a
- the robot in an embodiment on its robot-fixed reference, imprinted or exercised or is an external manually impressed by an operator force.
- 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).
- the robot can advantageously be hand-guided in one embodiment, in an embodiment for teaching or presetting subsequently automatically traversable paths or the like.
- surface normal An outward normal on a surface in a contact point (surface normal") in one embodiment is perpendicular to one
- 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.
- the robot is in a second mode of operation
- the robot Given that he tries to follow the force regardless of its direction, in particular follows. In other words, the robot will be in the second Operating mode controlled, (to) follow the external force direction-independent (easy).
- the robot-fixed reference in the second operating mode intentionally moved away from the surface and / or advantageously moved freely in space.
- 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.
- 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.
- an operator may operate a corresponding physical or software switch or the like.
- 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.
- the robot 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.
- 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.
- a desired process force for example for processing the surface.
- an operator may simply initiate the first mode of operation by pulling the robot-fixed reference sufficiently close to the surface.
- the external force is determined using a sensor on the robot-fixed reference.
- 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.
- an additional sensor on the robot-fixed reference can be omitted.
- 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.
- 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.
- a time and / or equipment expenditure for determining the contour can be omitted.
- 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.
- the contact point is in
- a determined or predetermined contour of the robot-fixed reference and / or a determined or predetermined contour of the surface determined.
- a time and / or equipment expense for detecting the environment can be omitted.
- the robot is in the first and / or second
- the normal component of the determined external force in the direction of the surface normal is computationally reduced, in particular faded out or filtered.
- 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 mode of operation in response to a surface such that the robot tries to follow a tangential component of the force normal to the outward normal on the surface at a contact point of a robot-fixed reference with the surface more closely than a normal component of the force towards that surface normal,
- 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;
- An agent in the context of the present invention may be hard and / or
- CPU microprocessor unit
- Programs are implemented to process input signals from one
- a storage system may have 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.
- a computer program product may include, in particular, a non-volatile storage medium for storing a program or a program stored thereon, wherein execution of this program causes a system or a controller, in particular a computer, to do so method described here or one or more of its steps
- one or more, in particular all, steps of the method are completely or partially automated, in particular by the system or its (e) means.
- the system includes the robot and / or its controller.
- Presetting of 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.
- FIG. 1 shows a system according to an embodiment of the present invention.
- Fig. 2 a method for controlling a robot of the system according to an embodiment of the present invention.
- FIG. 1 shows a system according to an embodiment of the present invention with a robot 10 having an end effector 11 and a robot controller 30.
- the end effector 11 is manually guided by an operator 40 on a surface 21 of a workpiece 20, for example for teaching a processing path.
- a first step S10 (see Fig. 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 1 1 an externally imposed by the operator 40 external force F ex determined ,
- the robot controller may also detect the external force using sensors 12 'on the joints of the robot.
- the external force F ex in one embodiment can be obtained by transforming the difference of the axle moments s sr measured at the joints using the sensors and the axle moments md calculated on the basis of an optionally inverse dynamic model of the robot (transposed) Jacobian J T of the end effector or its peak are determined: c) md)
- the contour of the surface 21 is known, for example from CAD data, or is determined by a camera 31.
- the robot controller 30 checks whether (already or still) a first operating mode is selected, for example, by actuating a
- a virtual damping can also be provided.
- Robot controller 30 in an S20 step based on the position of the joints of the robot and the contour of the surface 21 an outwardly directed
- F n ⁇ [(F ex * n) +
- step S30 the robot controller filters the
- the robot 10 with its end effector 1 1 follows the external force F ex independently of its direction or attempts to implement this in terms of control engineering.
- a predetermined force f cmd can also be imposed on the surface in a manner opposite to the surface normal , for example by adding it to the filtered external force in step S50:
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.
Description
Verfahren und System zum Steuern eines Roboters
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. 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.
Dies ermöglicht eine vorteilhafte Handführung des frei( beweglichen Endeffektors durch einen Bediener, indem dieser auf den Roboter manuell die externe Kraft aufprägt.
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.
Aufgabe der vorliegenden Erfindung ist es, den Betrieb eines Roboters zu verbessern.
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.
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. 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.
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.
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. Hierdurch kann der Roboter in einer Ausführung vorteilhaft, insbesondere flexibel und/oder präzise, eingesetzt werden.
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.
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.
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 = [3S/3x, 3S/3y, 3S/3z]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.
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.
Hierdurch kann in einer Ausführung die roboterfeste Referenz in dem zweiten Betriebsmodus absichtlich von der Oberfläche weg bewegt und/oder vorteilhaft frei im Raum bewegt werden.
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.
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.
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.
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.
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. 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.
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.
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. In einer Ausführung wird die externe Kraft mithilfe eines Sensors an der roboterfesten Referenz ermittelt.
Hierdurch kann sie in einer Ausführung besonders präzise ermittelt werden.
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.
Hierdurch kann in einer Ausführung ein zusätzlicher Sensor an der roboterfesten Referenz entfallen.
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.
Hierdurch kann sie in einer Ausführung besonders präzise ermittelt werden.
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.
Hierdurch kann in einer Ausführung ein zeitlicher und/oder apparativer Aufwand zum Ermitteln der Kontur entfallen.
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.
Hierdurch kann er in einer Ausführung besonders präzise ermittelt werden.
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.
Hierdurch kann in einer Ausführung ein zeitlicher und/oder apparativer Aufwand zum Erfassen der Umgebung entfallen.
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.
Hierdurch kann der Roboter in einer Ausführung besonders vorteilhaft,
insbesondere intuitiv, zuverlässig und/oder präzise, handgeführt werden.
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.
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.
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 T angentialkomponente 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.
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.
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 nicht-flü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.
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 einer Ausführung weist das System den Roboter und/oder seine Steuerung auf.
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.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert: Fig. 1 : ein System nach einer Ausführung der vorliegenden Erfindung; und
Fig. 2: ein Verfahren zum Steuern eines Roboters des Systems nach einer Ausführung der vorliegenden Erfindung.
Fig. 1 zeigt ein System nach einer Ausführung der vorliegenden Erfindung mit einem Roboter 10, der einen Endeffektor 1 1 aufweist, und einer Robotersteuerung 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.
Hierzu wird in einem ersten Schritt S10 (vgl. Fig. 2) eines Verfahrens zum Steuern des Roboters 10 nach einer Ausführung der vorliegenden Erfindung mithilfe eines Kraft-Momenten-Sensors 12 am Endeffektor 1 1 eine vom Bediener 40 manuell aufgeprägte externe Kraft Fex ermittelt.
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 ^sr und der auf Basis eines, gegebenenfalls inversen, dynamischen Modells des Roboters berechneten, insbesondere kommandierten, Achsmomente )md mit der
(transponierten) Jacobimatrix JT des Endeffektors bzw. seiner Spitze ermittelt werden:
c)md)
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.
Die Kontur der Oberfläche 21 ist, beispielsweise aus CAD-Daten, bekannt oder wird durch eine Kamera 31 ermittelt. 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.
Ist dies nicht der Fall (S10:„N“), liegt ein zweiter Betriebsmodus vor und die Robotersteuerung bzw. das Verfahren fährt mit Schritt S40 fort. 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 1 1 eine Soll-Geschwindigkeit vd ermittelt, beispielsweise durch Zeitintegration gemäß vd = l(Fex/m)ät 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.
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 (|#i| = 1 ) senkrecht zur Oberfläche 21 im Kontaktpunkt der
Spitze des Endeffektors 1 1 mit der Oberfläche 21 sowie die Normalkomponente Fn der dort angreifenden externen Kraft Fex in Richtung dieser Oberflächennormale n gemäß
Fn = {[(Fex · n) + |Fex n\]/2} · n und prüft, ob der Betrag |Fn| dieser Normalkomponente Fn einen vorgegebenen Grenzwert übersteigt.
Ist dies der Fall (S20:„Y“), schaltet sie in den zweiten Betriebsmodus um und fährt mit dem oben erläuterten Schritt S40 fort.
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 3X - F ).
Mit anderen Worten filtert die Robotersteuerung in Schritt S30 die
Normalkomponente Fn der externen Kraft Fex in Richtung der Oberflächennormale n aus.
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äß vd = J( F m)6t
Dann kehrt das Verfahren zu Schritt S10 zurück.
Dadurch folgt der Roboter 10 im ersten Betriebsmodus mit seinem Endeffektor 1 1 der Normalkomponente Fn der vom Bediener 40 manuell aufgeprägten externen Kraft Fex nicht und somit einer T angentialkomponente 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 1 1 der externen Kraft Fex unabhängig von ihrer Richtung bzw. versucht dies regelungstechnisch zu realisieren. Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist.
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 T angentialkomponente 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 ^ (Fex ~ Fn) - md ' P bZW. F ex < Ft fand ' P
Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen
Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die
Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die Umsetzung von mindestens einer exemplarischen Ausführung gegeben, wobei diverse Änderungen, insbesondere in Hinblick auf die Funktion und Anordnung der beschriebenen Bestandteile, vorgenommen werden können, ohne den
Schutzbereich zu verlassen, wie er sich aus den Ansprüchen und diesen äquivalenten Merkmalskombinationen ergibt.
Bezugszeichenliste
10 Roboter
11 Endeffektor (roboterfeste Referenz) 12;
12‘ Sensor
13 Antrieb
20 Werkstück
21 Oberfläche
30 Robotersteuerung
31 Kamera
40 Bediener
Fex externe Kraft
Fn Normalkomponente
Ft T angentialkomponente
n Oberflächennormale
Claims
1. 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 (1 1 ) mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente (Fn) der Kraft in Richtung dieser Oberflächennormale.
2. 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.
3. 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.
4. 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.
5. 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.
6. 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.
7. 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.
8. 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.
9. 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.
10. 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.
11. Verfahren nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, dass in dem ersten Betriebsmodus die Normalkomponente rechentechnisch reduziert, insbesondere ausgeblendet wird.
12. System, das zur Durchführung eines Verfahrens nach einem der
vorhergehenden Ansprüche eingerichtet ist und/oder 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 T angentialkomponente (Ft) der Kraft senkrecht zu einer nach außen
gerichteten Normalen (n) auf der Oberfläche in einem Kontaktpunkt einer roboterfesten Referenz (1 1 ) mit der Oberfläche stärker zu folgen versucht als einer Normalkomponente (Fn) der Kraft in Richtung dieser Oberflächennormale.
13. Computerprogrammprodukt mit einem Programmcode, der auf einem von
einem Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 1 1.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201980020215.0A CN111867788B (zh) | 2018-01-19 | 2019-01-16 | 控制机器人的方法和系统 |
| EP19700912.9A EP3740353A1 (de) | 2018-01-19 | 2019-01-16 | Verfahren und system zum steuern eines roboters |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102018200864.7 | 2018-01-19 | ||
| DE102018200864.7A DE102018200864B3 (de) | 2018-01-19 | 2018-01-19 | Verfahren und System zum Steuern eines Roboters |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019141706A1 true WO2019141706A1 (de) | 2019-07-25 |
Family
ID=65020029
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2019/051001 Ceased WO2019141706A1 (de) | 2018-01-19 | 2019-01-16 | Verfahren und system zum steuern eines roboters |
Country Status (4)
| Country | Link |
|---|---|
| EP (1) | EP3740353A1 (de) |
| CN (1) | CN111867788B (de) |
| DE (1) | DE102018200864B3 (de) |
| WO (1) | WO2019141706A1 (de) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102019004478B3 (de) | 2019-06-26 | 2020-10-29 | Franka Emlka Gmbh | System zum Vornehmen einer Eingabe an einem Robotermanipulator |
| DE102019118261B3 (de) * | 2019-07-05 | 2020-08-20 | Franka Emika Gmbh | Vorgeben und Anwenden eines gewünschten Kontaktmoments eines Robotermanipulators |
| DE102019118263B3 (de) * | 2019-07-05 | 2020-08-20 | Franka Emika Gmbh | Ausgeben einer Güteinformation über eine Krafterfassung am Robotermanipulator |
| CN112936278B (zh) * | 2021-02-07 | 2022-07-29 | 深圳市优必选科技股份有限公司 | 机器人的人机协作控制方法、装置和机器人 |
| DE102021204494A1 (de) * | 2021-05-04 | 2022-11-10 | Kuka Deutschland Gmbh | Verfahren und System zum Steuern eines Teleroboters |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0331265A2 (de) * | 1988-03-01 | 1989-09-06 | Hitachi Construction Machinery Co., Ltd. | Positions-/Kraft-Steuerungsgerät für Werkzeugmaschinen mit mehreren Freiheitsgraden |
| 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 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102008062622B9 (de) | 2008-12-17 | 2016-08-25 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zur Befehlseingabe in eine Steuerung eines Manipulators |
| CN101811301A (zh) * | 2009-10-28 | 2010-08-25 | 北京航空航天大学 | 串并联机器人联合加工系统及其控制方法 |
| CN101913149B (zh) * | 2010-07-23 | 2012-04-04 | 山东电力研究院 | 嵌入式轻型机械臂控制器及其控制方法 |
| DE102013218823A1 (de) | 2013-09-19 | 2015-04-02 | Kuka Laboratories Gmbh | Verfahren zum manuell geführten Verstellen der Pose eines Manipulatorarms eines Industrieroboters und zugehöriger Industrieroboter |
| JP5893664B2 (ja) | 2014-04-14 | 2016-03-23 | ファナック株式会社 | 作用された力に応じて移動されるロボットを制御するロボット制御装置 |
| JP5893666B2 (ja) | 2014-04-14 | 2016-03-23 | ファナック株式会社 | 力に応じて動かすロボットのロボット制御装置およびロボットシステム |
| DE102014010638A1 (de) * | 2014-07-17 | 2016-01-21 | Kuka Roboter Gmbh | Verfahren und Vorrichtung zum Steuern eines Roboters |
| DE102015210218B4 (de) | 2015-06-02 | 2024-11-07 | Kuka Deutschland Gmbh | Verfahren zum Betreiben eines Roboters, zugehöriger Roboter mit einer Vibrationsvorrichtung und Roboterarbeitsplatz |
| 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 |
| CN105269565B (zh) * | 2015-10-30 | 2017-04-05 | 福建长江工业有限公司 | 一种六轴磨抛工业机器人离线编程及修正方法 |
| CN105710881B (zh) * | 2016-03-16 | 2017-10-31 | 杭州娃哈哈精密机械有限公司 | 一种机器人末端连续轨迹规划过渡方法 |
-
2018
- 2018-01-19 DE DE102018200864.7A patent/DE102018200864B3/de active Active
-
2019
- 2019-01-16 CN CN201980020215.0A patent/CN111867788B/zh active Active
- 2019-01-16 EP EP19700912.9A patent/EP3740353A1/de active Pending
- 2019-01-16 WO PCT/EP2019/051001 patent/WO2019141706A1/de not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0331265A2 (de) * | 1988-03-01 | 1989-09-06 | Hitachi Construction Machinery Co., Ltd. | Positions-/Kraft-Steuerungsgerät für Werkzeugmaschinen mit mehreren Freiheitsgraden |
| 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 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111867788B (zh) | 2023-11-17 |
| CN111867788A (zh) | 2020-10-30 |
| DE102018200864B3 (de) | 2019-02-07 |
| EP3740353A1 (de) | 2020-11-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2019141706A1 (de) | Verfahren und system zum steuern eines roboters | |
| DE102018116053B4 (de) | Robotersystem und Roboterlernverfahren | |
| EP3109012B1 (de) | Umschalten einer steuerung eines roboters in einen handführ-betriebsmodus | |
| DE102014216514B3 (de) | Verfahren zum Programmieren eines Industrieroboters und zugehöriger Industrieroboter | |
| EP2977148B1 (de) | Verfahren und vorrichtung zum steuern eines roboters | |
| WO2017008898A1 (de) | Ermitteln eines eingabebefehls für einen roboter, der durch manuelles ausüben einer kraft auf den roboter eingegeben wird | |
| DE102014001168A1 (de) | Robotersteuerung | |
| DE102007026299A1 (de) | Industrieroboter und Verfahren zum Programmieren eines Industrieroboters | |
| DE102019205651B3 (de) | Verfahren und System zum Ausführen von Roboterapplikationen | |
| DE102016001967A1 (de) | Robotersteuervorrichtung zum automatischen Wechseln eines Betriebsbegrenzungsmodus eines Roboters | |
| WO2019214932A2 (de) | Verfahren und system zum steuern eines roboters | |
| DE102016000850B4 (de) | Steuern eines Roboterverbands | |
| DE102020131981A1 (de) | Roboterlehrvorrichtung mit symbol-programmierfunktion | |
| DE102012008073A1 (de) | Verfahren und Mittel zum Vorgeben und/oder Steuern eines Manipulatorprozesses | |
| WO2017016641A2 (de) | Verfahren und system zum steuern eines roboters | |
| DE112018007703C5 (de) | Robotersteuerung | |
| DE102020209866B3 (de) | Verfahren und System zum Betreiben eines Roboters | |
| DE102020102160B3 (de) | Verfahren zum Erzeugen eines Eingabebefehls für einen Roboterarm und Roboterarm | |
| EP3233395A1 (de) | Verfahren und vorrichtung zum steuern einer antriebsanordnung zum bewegen eines, insbesondere robotergeführten, werkzeugs | |
| DE102017116788B4 (de) | Roboter-Steuerungsvorrichtung und Verfahren zur Steuerung derselben | |
| EP3990231B1 (de) | System zum vornehmen einer eingabe an einem robotermanipulator | |
| DE102018207919B3 (de) | Robotersteuerung | |
| DE102019219930B3 (de) | Verfahren und System zum Steuern eines Roboters | |
| DE102019202456B4 (de) | Verfahren und System zum Durchführen einer vorgegebenen Aufgabe durch einen Roboter | |
| DE102018207921B3 (de) | Steuern eines Roboters |
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: 19700912 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2019700912 Country of ref document: EP Effective date: 20200819 |