EP3624998A1 - Robotersteuerung - Google Patents

Robotersteuerung

Info

Publication number
EP3624998A1
EP3624998A1 EP18722531.3A EP18722531A EP3624998A1 EP 3624998 A1 EP3624998 A1 EP 3624998A1 EP 18722531 A EP18722531 A EP 18722531A EP 3624998 A1 EP3624998 A1 EP 3624998A1
Authority
EP
European Patent Office
Prior art keywords
joint
robot
distance
boundary
induced movement
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.)
Withdrawn
Application number
EP18722531.3A
Other languages
English (en)
French (fr)
Inventor
Ewald LUTSCHER
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
Publication of EP3624998A1 publication Critical patent/EP3624998A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • B25J9/1633Program controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • B25J9/1643Program controls characterised by the control loop redundant control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1674Program controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the program is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40344Configuration index, control, limits of joint movement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40365Configuration control, select other tasks by configuration of link positions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40371Control trajectory to avoid joint limit as well as obstacle collision

Definitions

  • the present invention relates to a method and a system for controlling a robot as well as an arrangement with the system and a computer program product for carrying out the method.
  • More progressive approaches are usually based on a force, in particular admittance control, in which the robot follows or tries to evade a joint force induced by a robot-guided force sensor or induced by a manual application of a robot element, in which case antiparallel force pairs or (rotational) moments are present for a more compact representation
  • the object of the present invention is to improve a robot control.
  • Claims 10 to 12 provide a system or computer program product
  • a method for controlling a robot comprises the step of: detecting current positions of joints of the robot, in particular by means of joint position sensors, in particular
  • the robot has at least three, in particular at least six, in particular at least seven joints, in particular rotary joints, or (motion, in particular rotary) axes; in particular, it can have an articulated robot arm, in particular be such.
  • six or more joints can be beneficial in one embodiment
  • the robot (arm) drives to actuate, in particular moving or adjusting the joints or (motion) axes, in particular electric, in particular servomotors.
  • the method comprises the step of: actuating the joints by the drives of the robot on the basis of or in dependence on the detected actual joint positions, in particular with the proviso that at least one drive, hereinafter also referred to as
  • a hand guide in one embodiment comprises a manual loading of one or more members and / or joints of the robot (arm) with an external force, in particular a manual movement of one or more members and / or
  • a hand-guide-induced movement of a joint accordingly comprises in particular one, in particular direct or indirect, movement or adjustment of the joint or the axis as a result of or due to the manual guidance.
  • the (limited) or drive supports one
  • a drive more strongly supports hand gesture-induced motion by providing greater travel
  • a support of a hand guidance induced movement of a joint by one or the (limited) drive comprises the specification of a same direction in this movement target joint position change or a (new) target joint position in the direction of this movement and
  • the method includes the step of: actuating the joints by the drives of the robot based on the detected actual hinge positions, in particular with the proviso that the (limited) drive is the hand gesture induced movement supported by the articulated joint, if a distance between its (current) detected or
  • Target joint position and a predetermined second boundary has a third value, in particular amount, and on the other hand less supported, if this distance has a fourth value, in particular amount, the, in particular amount, less than the third value is, and in addition the
  • the third value may be the first value or different from the first value
  • the fourth value may in one embodiment be the second value or from this
  • the first and second boundaries thus limit an allowable movement or adjustment range of the joint on both sides.
  • the first boundary may be an upper boundary and the second boundary may be a lower boundary or, conversely, the first boundary may be an upper boundary and the second boundary may be an upper boundary.
  • the first and / or second is or is
  • a mechanism of the robot can be reliably protected by changeable or
  • the (limited) drive does not support the handguard induced movement of the joint actuated by it, if the distance between the sensed joint position and the first or second boundary
  • the (limited) drive supports the manual guidance induced movement of the joint actuated by it, if or
  • end stops of joints can be considered particularly advantageous in one embodiment.
  • a support of the hand-guide-induced movement of the joint by the drive in particular to the same direction driving force and / or nominal joint position change, at least in one
  • predetermined range of the distance between the detected or desired joint position and the first or second boundary monotonically, in particular strictly monotonically, in particular linearly reduced, if the hand guidance-induced movement is directed to this limit.
  • the (limited) drive actuates the joint j in support of the handguard-induced movement of the joint based on, in particular, an actual change q ,, cmdfe) -qj, cmd (ti) or qj, Cm d (i +) qj, cmd (i) of the target joint position Cm d, which, in particular proportionally, depends on a difference of the detected current joint position of the joint actuated by it and a current nominal joint position for the drive, in particular by a new ( commanded) desired joint position cmdfe) or qj, cmd (i + 1), which attempts to drive the drive or is given to this, from the sum of
  • Impedanzregelung be implemented, which advantageously requires no (fast) force detection or control and can be implemented accordingly in an embodiment without such.
  • one or the proportionality factor k j, the dependence of the current change in the desired joint position depends on the difference of the direction of the hand guidance induced movement and / or, in particular at least
  • the method comprises the step of: actuating the joints by the drives of the robot on the basis of or depending on the detected current joint positions such, in particular with the proviso that a minimum distance between one, in particular hardware and / or software technology , predetermined, in particular environmental or space fixed, fixed point and a robot-fixed
  • the shaft of the shaft of a (robot-guided) surgical instrument and / or the predetermined fixed point may be a so-called trocar point or a natural or artificial body opening, through which or the shaft for a, in particular minimally invasive, examination and / or surgery is introduced without the present invention to this application
  • the actuators actuate the joints based on or in response to a current change in a desired joint position, the one of, in particular in the joint space transformed Cartesian, minimum distance from the robot-fixed reference to the predetermined fixed point, in particular one
  • (Task) vector containing this distance depends, in particular on the basis of which is determined.
  • Zero space is projected to minimize the minimum distance between the given fixed point and the robot fixed reference.
  • the minimization of the minimum distance between the predetermined fixed point and the robot-fixed reference implemented as a primary task in the form of a differential impedance control while the softwaretechni see end stops as far as possible in addition as secondary
  • the next point C (Cartesian) closest to the fixed point T is determined on the robot-fixed reference, in particular the robot-guided shaft, so that a (task) vector XCT describes the, in particular two-dimensional, minimum distance from the robot-fixed reference to the predetermined fixed point and in one embodiment has 2 dimensions or components for this distance and / or (at least) one dimension or (task) component for a redundancy parameter, in particular an elbow angle of the robot.
  • a pseudo-inverse especially the Moore-Penrose pseudo-inverse, X, the
  • a system for controlling a robot in particular a system of an arrangement with the robot, in particular hardware and / or software, in particular program technology, is set up to carry out a method described herein and / or comprises:
  • Means for actuating the joints by driving the robot based on these detected current joint positions such that at least one drive supports a hand guidance induced movement of the joint actuated by it, if a distance between its detected or desired joint position and a predetermined first limit has a first value and, on the other hand, less assisted if that distance has a second value less than the first value, and in addition the hand gesture-induced motion is directed toward the first boundary.
  • system or its agent has:
  • assisted handgrip-induced movement of the joint actuated by it if a distance between its detected or desired joint position and a predetermined second boundary has a third value, and less supported, if this distance has a fourth value which is smaller than the third value, and in addition, the handguard-induced movement is directed toward the second boundary.
  • system or its means for this purpose in particular hardware and / or software, in particular program technology, is set up such that the drive does not support the hand-guided movement of the joint actuated by it, if the distance between the detected or nominal joint position and the first or second boundary has at most a predetermined minimum amount, and / or supports, if the distance between the sensed joint position and the first boundary is less than the first value but the hand gesture induced motion from the first one
  • Limit is directed away and / or if the distance between the detected or joint position and the second boundary is less than the third value, but directed the hand guidance induced movement away from the second boundary.
  • the system or means comprises means for reducing propulsion of the handrail induced movement of the joint by the drive at least in a predetermined range of the distance between the sensed joint position and the first or the first or second joint second boundary monotonous, in particular strictly monotone, in particular linear, if the hand gesture-induced movement is directed towards this boundary; and or
  • 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
  • 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.
  • one or more, in particular all, steps of the method are completely or partially automated, in particular by the system or its means.
  • Fig. 1 an arrangement with a robot and a system for controlling the robot according to an embodiment of the present invention
  • FIG. 2 a method of controlling the robot according to an embodiment of the present invention
  • FIG. 3 a proportionality factor used in this case.
  • FIG. 1 shows an arrangement with a robot 10 and a system having a robot controller 2 for controlling the robot 10 according to an embodiment of the present invention, which has a method of controlling the robot shown in FIG Robot according to an embodiment of the present invention executes or is adapted thereto.
  • the robot 10 has seven joints with joint position sensors and drives 1 1 - 17 and a robot-guided shaft 18, which he is to lead through a fixed point T.
  • the distance between shaft 18 and fixed point T is greatly exaggerated for clarity.
  • one of the joints for one of the joints is the same
  • Joint position sensor detected current joint position q j and a
  • FIG. 3 shows the proportionality factor k j for joint j in FIG. 3
  • a step S300 the controller 2 determines the fixed point T
  • the controller 2 calculates current nominal joint position changes or new nominal joint positions in a step S400, for example according to the above equation (5) or (5 ').
  • step S500 it actuates the drives of the joints 1 1 -17 according to this new nominal joint positions.
  • step S100 it carries out step S100 again, wherein these desired joint positions determined in step S400 are now used as actual desired joint positions of the new control or control cycle.
  • step S300 can be dispensed with.
  • step S400 the controller 2 calculates the current nominal joint position changes or
  • Deviation between the currently detected joint position and the current nominal joint position in the differential determination of the current nominal joint position change or new nominal joint position (see equations (1), (1 '), (5), (5')) increasingly is hidden and the robot in the corresponding

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

Ein erfindungsgemäßes Verfahren zum Steuern eines Roboters (10) umfasst die Schritte: - Erfassen (S100) aktueller Stellungen (qj) von Gelenken (11-17) des Roboters; und - Aktuieren (S500) der Gelenke durch Antriebe des Roboters auf Basis dieser erfassten aktuellen Gelenkstellungen derart, dass wenigstens ein Antrieb eine handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand (dj) zwischen dessen erfasster oder Soll-Gelenkstellung und einer vorgegebenem ersten Begrenzung (qjM) einen ersten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen zweiten Wert aufweist, der kleiner als der erste Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der ersten Begrenzung hin gerichtet ist.

Description

Beschreibung
Robotersteuerung
Die vorliegende Erfindung betrifft ein Verfahren und ein System zum Steuern eines Roboters sowie eine Anordnung mit dem System und ein Computerprogrammprodukt zur Durchführung des Verfahrens.
Zur Handführung von Robotern sind unterschiedliche Ansätze bekannt. So kann beispielsweise durch Strombegrenzung in Antriebsmotoren und Wegfall eines Integralanteils einer Positionsregelung ein Roboter manuell bewegt werden.
Fortschrittlichere Ansätze basieren üblicherweise auf einer Kraft-, insbesondere Admittanzregelung, bei der der Roboter auf einen robotergeführten Kraftsensor ausgeübten oder durch eine manuelle Beaufschlagung eines Roboterglieds induzierten Gelenkkräften nachfolgt bzw. auszuweichen sucht, wobei vorliegend zur kompakteren Darstellung antiparallele Kräftepaare bzw. (Dreh)Momente
verallgemeinernd ebenfalls als Kräfte und eine Regelung, d.h. eine Vorgabe von Steuergrößen in Abhängigkeit von erfassten Ist-Größen, insbesondere deren
Differenz zu vorgegebenen Soll-Größen, verallgemeinernd ebenfalls als Steuern bezeichnet werden.
Aufgabe der vorliegenden Erfindung ist es, eine Robotersteuerung zu verbessern.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 10 - 12 stellen ein System bzw. Computerprogrammprodukt zur
Durchführung eines hier beschriebenen Verfahrens bzw. eine Anordnung mit einem hier beschriebenen System unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
Nach einer Ausführung der vorliegenden Erfindung weist ein Verfahren zum Steuern eines Roboters den Schritt auf: Erfassen aktueller Stellungen von Gelenken des Roboters, insbesondere mithilfe von Gelenkstellungssensoren, insbesondere
Gelenkwinkelsensoren, beispielsweise Resolvern, Encodern oder dergleichen. Der Roboter weist in einer Ausführung wenigstens drei, insbesondere wenigstens sechs, insbesondere wenigstens sieben Gelenke, insbesondere Drehgelenke, bzw. (Bewegungs-, insbesondere Dreh)Achsen auf, er kann insbesondere einen gelenkigen Roboterarm aufweisen, insbesondere ein solcher sein. Durch sechs oder mehr Gelenke können in einer Ausführung vorteilhaft
unterschiedlichste Lagen und Orientierungen eines distalen Roboter(arm)flanschs bzw. robotergeführten Werkzeugs oder -Stücks im Raum dargestellt werden, durch sieben oder mehr Gelenke vorteilhaft dieselbe Lage und Orientierung in
unterschiedlichen Roboter(arm)posen. In einer Ausführung weist der Roboter(arm) Antriebe zum Aktuieren, insbesondere Bewegen bzw. Verstellen, der Gelenke bzw. (Bewegungs)Achsen auf, insbesondere Elektro-, insbesondere Servomotoren.
Nach einer Ausführung der vorliegenden Erfindung weist das Verfahren den Schritt auf: Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis bzw. in Abhängigkeit von den erfassten aktuellen Gelenkstellungen derart, insbesondere mit der Maßgabe, dass wenigstens ein Antrieb, der nachfolgend auch als
(softwaretechnisch) begrenzter Antrieb bezeichnet wird, eine handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand zwischen dessen (aktueller) erfasster oder Soll-Gelenkstellung und einer vorgegebenem ersten Begrenzung einen ersten Wert, insbesondere Betrag, aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen zweiten Wert, insbesondere Betrag, aufweist, der, insbesondere betragsmäßig, kleiner als der erste Wert ist, und (falls) zusätzlich die handführungsinduzierte Bewegung zu der ersten Begrenzung hin gerichtet ist. Hierdurch können in einer Ausführung bei einem Handführen des Roboters auf Basis erfasster Gelenkstellungen, das vorteilhafterweise mit einer langsameren
Regeltaktrate erfolgen kann als eine Kraftregelung, softwaretechnische Endanschläge von Gelenken vorteilhaft berücksichtigt werden.
Eine Handführung umfasst in einer Ausführung eine manuelle Beaufschlagung eines oder mehrerer Glieder und/oder Gelenke des Roboter(arm)s mit einer externen Kraft, insbesondere eine manuelle Bewegung eines oder mehrerer Glieder und/oder
Gelenke des Roboter(arm)s (durch eine manuell aufgeprägte externe Kraft).
Eine handführungsinduzierte Bewegung eines Gelenks umfasst entsprechend insbesondere eine, insbesondere unmittelbare oder auch mittelbare, Bewegung bzw. Verstellung des Gelenks bzw. der Achse infolge bzw. aufgrund der Handführung.
In einer Ausführung unterstützt der (begrenzte) bzw. ein Antrieb eine
handführungsinduzierte Bewegung eines durch ihn aktuierten Gelenks, indem er eine Antriebskraft, insbesondere also bei einem Drehgelenk ein Antriebs(dreh)moment, auf das Gelenk bzw. die Achse aufprägt bzw. ausübt, die bzw. das gleichsinnig mit dieser Bewegung ist. Entsprechend unterstützt in einer Ausführung ein Antrieb eine handführungsinduzierte Bewegung stärker, indem er eine größere
gleichsinnig( bewegende)e Antriebskraft auf das Gelenk aufprägt bzw. ausübt, und (demgegenüber) weniger, indem er eine (demgegenüber) kleinere
gleichsinnig( bewegend)e Antriebskraft, insbesondere keine (bewegende bzw. nur eine haltende) Antriebskraft oder sogar eine gegensinnig( bewegend)e Antriebskraft, auf das Gelenk aufprägt bzw. ausübt. Mit anderen Worten„folgt" der Roboter in dem (begrenzten) Gelenk einer Handführung leichter bzw. ist in dem (begrenzten) Gelenk (steuerungstechnisch) nachgiebiger, falls der Abstand den ersten Wert aufweist, und demgegenüber schwerer bzw. mit größerem Widerstand, falls der Abstand den zweiten Wert aufweist. In einer Ausführung umfasst eine Unterstützung einer handführungsinduzierten Bewegung eines Gelenks durch einen bzw. den (begrenzten) Antrieb die Vorgabe einer zu dieser Bewegung gleichsinnigen Soll- Gelenkstellungsänderung bzw. einer (neuen) Soll-Gelenkstellung in Richtung dieser Bewegung und/oder eine Impedanzregelung. In einer Ausführung weist das Verfahren den Schritt auf: Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis bzw. in Abhängigkeit von den erfassten aktuellen Gelenkstellungen derart, insbesondere mit der Maßgabe, dass der (begrenzte) Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand zwischen dessen (aktueller) erfasster oder
Soll-Gelenkstellung und einer vorgegebenem zweiten Begrenzung einen dritten Wert, insbesondere Betrag, aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen vierten Wert, insbesondere Betrag, aufweist, der, insbesondere betragsmäßig, kleiner als der dritte Wert ist, und zusätzlich die
handführungsinduzierte Bewegung zu der zweiten Begrenzung hin gerichtet ist. Der dritte Wert kann in einer Ausführung der erste Wert oder von diesem verschieden sein, der vierte Wert kann in einer Ausführung der zweite Wert oder von diesem
verschieden sein.
In einer Ausführung begrenzen die erste und zweite Begrenzung somit einen zulässigen Bewegungs- bzw. Verstel Ibereich des Gelenks beidseitig. Insbesondere kann die erste Begrenzung eine Ober- und die zweite Begrenzung eine Untergrenze oder umgekehrt die erste Begrenzung eine Unter- und die zweite Begrenzung eine Obergrenze sein. In einer Ausführung wird bzw. ist die erste und/oder zweite
Begrenzung softwaretechnisch vorgegeben, insbesondere abgespeichert,
insbesondere fest oder durch einen Anwender durch eine entsprechende Eingabe veränder-, insbesondere parametrierbar.
Hierdurch können in einer Ausführung Endanschläge von Gelenken vorteilhaft berücksichtigt werden. Durch feste Begrenzungen kann in einer Ausführung eine Mechanik des Roboters zuverlässig geschützt werden, durch veränderbare bzw.
variable Begrenzungen ein Arbeitsraum des Roboters vorteilhaft verändert,
insbesondere an unterschiedliche Randbedingungen angepasst werden.
In einer Ausführung unterstützt der (begrenzte) Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks nicht, falls der Abstand zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten oder zweiten Begrenzung
höchstens einen vorgegebenen Mindestbetrag aufweist, der insbesondere auch gleich Null sein kann. In einer Weiterbildung wirkt der (begrenzte) Antrieb der
handführungsinduzierten Bewegung des durch ihn aktuierten Gelenks sogar entgegen, falls der Abstand höchstens den Mindestbetrag aufweist, insbesondere, indem er das Gelenk gegen die handführungsinduzierte Bewegung zurückzustellen versucht bzw. eine entsprechende Antriebskraft aufprägt bzw. ausübt.
Zusätzlich oder alternativ unterstützt in einer Ausführung der (begrenzte) Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks, falls bzw.
obwohl der Abstand zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten Begrenzung kleiner als der erste Wert, aber bzw. sofern die handführungsinduzierte Bewegung von der ersten Begrenzung weg gerichtet ist, und/oder falls bzw. obwohl der Abstand zwischen der erfasster Gelenkstellung und der zweiten Begrenzung kleiner als der dritte Wert, aber bzw. sofern die handführungsinduzierte Bewegung von der zweiten Begrenzung weg gerichtet ist. Hierdurch können in einer Ausführung Endanschläge von Gelenken besonders vorteilhaft berücksichtigt werden.
In einer Ausführung wird eine Unterstützung der handführungsinduzierten Bewegung des Gelenks durch den Antrieb, insbesondere eine zu der Bewegung gleichsinnige Antriebskraft und/oder Soll-Gelenkstellungsänderung, wenigstens in einem
vorgegebenen Bereich des Abstands zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten oder zweiten Begrenzung monoton, insbesondere streng monoton, insbesondere linear, reduziert, falls die handführungsinduzierte Bewegung zu dieser Begrenzung hin gerichtet ist.
Hierdurch kann dem handführenden Anwender ein bei Annäherung an eine
Begrenzung zunehmend zäheres Roboterverhalten diese Annäherung anzeigen und/oder ein Anfahren der Begrenzung zunehmend erschweren und so insbesondere die Wahrscheinlichkeit eines ungewollten Überschreitens einer Endstellung oder Blockierens in einer Endstellung reduzieren.
In einer Ausführung aktuiert der (begrenzte) Antrieb das Gelenk j zur Unterstützung der handführungsinduzierten Bewegung des Gelenks auf Basis, insbesondere mithilfe, einer aktuelle Änderung q,, cmdfe) - qj, cmd(t-i ) bzw. qj, Cmd (i+ ) - qj, cmd(i) einer bzw. der Soll-Gelenkstellung Cmd, die, insbesondere proportional, von einer Differenz der erfassten aktuellen Gelenkstellung des durch ihn aktuierten Gelenks und einer aktuellen Soll-Gelenkstellung für den Antrieb abhängt, insbesondere, indem eine neue (kommandierte) Soll-Gelenkstellung cmdfe) bzw. q j, cmd(i+1 ), die der Antrieb anzufahren versucht bzw. diesem vorgegeben wird, aus der Summe der
vorhergehend( kommandierten Soll-Gelenkstellung cmd(t-i ) bzw. qj, cmd(i) und der mit einem Proportionalitätsfaktor kj, multiplizierten Differenz [qj, Msr(ti) - qj, cmd(t-i )] bzw. [qj, Msr(i) - qj, cmd(i)] der erfassten aktuellen Gelenkstellung qj, Msr(ti) bzw. qj, Msr(i) und dieser vorhergehend( kommandierten Soll-Gelenkstellung bestimmt wird: qj. Cmd(t2) = qj. Cmd(tl) + kj-faj, Msr(tl ) - qj. Cmd(tl)] (1 ) bZW.
qj. cmd(i+ ) = qj, cmd(i) + kr[ qj, Msr(i) - qj, cmd(i)] ( ')
Insbesondere hierdurch kann in einer Ausführung eine differentielle
Impedanzregelung implementiert werden, die vorteilhafterweise keine (schnelle) Krafterfassung bzw. -regelung erfordert und entsprechend in einer Ausführung ohne eine solche implementiert sein bzw. werden kann.
In einer Ausführung hängt ein bzw. der Proportionalitätsfaktor kj, der Abhängigkeit der aktuelle Änderung der Soll-Gelenkstellung von der Differenz von der Richtung der handführungsinduzierten Bewegung und/oder, insbesondere wenigstens
abschnittsweise linear, von dem Abstand zwischen der (aktuellen) erfassten oder Soll-Gelenkstellung und der ersten und/oder zweiten Begrenzung ab, in einer
Weiterbildung in der Form (vgl. Fig. 3)
k, = sh (2)
hresh
mit dem Abstand
njM Hj « |q IjiMM -qjil < - |qji -qjimm| und -J- > 0
dt
I I I I i uH i „
o qj -qjm < qjM - qj und— ί < 0 (3)
j, thresh > dj, thresh sonst
mit der ersten Begrenzung qjM und der kleineren zweiten Begrenzung qjm < qjM sowie der Abkürzung q = qj. Msr(ti) bzw. q , Msr(i) oder qj = q , Cmd(ti) bzw. qj. Cmd(i).
Hierdurch kann das vorstehend erläuterte zunehmend zähere Roboterverhalten bei Annäherung an eine Begrenzung besonders vorteilhaft realisiert werden. In einer Ausführung weist das Verfahren den Schritt auf: Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis bzw. in Abhängigkeit von den erfassten aktuellen Gelenkstellungen derart, insbesondere mit der Maßgabe, dass ein minimaler Abstand zwischen einem, insbesondere hard- und/oder softwaretechnisch, vorgegebenen, insbesondere umgebungs- bzw. raumfesten, Fixpunkt und einer roboterfesten
Referenz, insbesondere einem robotergeführten Schaft, minimiert wird, und dabei zusätzlich der (begrenzte) Antrieb das durch ihn aktuierte Gelenk in der hier beschriebenen Weise zur Unterstützung der handführungsinduzierten Bewegung aktuiert, sofern bzw. soweit dies - bei Minimierung des minimalen Abstands,
(zusätzlich noch) möglich ist.
Hierdurch kann in einer Ausführung die hier beschriebene vorteilhafte
Berücksichtigung von softwaretechnischen Endanschlägen von Gelenken,
insbesondere die Reduzierung der Wahrscheinlichkeit eines ungewollten
Überschreitens oder Blockierens in einer Endstellung, als sekundäre bzw.
nachrangige bzw. niedriger priorisierte Aufgabe auch eine Handführung eines
Roboters verbessern, der als primäre bzw. vor- bzw. höherrangige bzw. höher priorisierte Aufgabe versucht, die roboterfeste Referenz an dem Fixpunkt zu halten, insbesondere den Schaft durch einen vorgegebenen Fixpunkt zu führen. Mit besonderem Vorteil kann der Schaft der Schaft eines (robotergeführten) chirurgischen Instruments und/oder der vorgegebene Fixpunkt ein sogenannter Trokarpunkt bzw. eine natürlich oder künstliche Körperöffnung sein, durch den bzw. die der Schaft für eine, insbesondere minimalinvasive, Untersuchung und/oder Operation eingeführt wird bzw. ist, ohne dass die vorliegende Erfindung auf diese Anwendung
eingeschränkt wäre. In einer Ausführung aktuieren die Antriebe die Gelenke auf Basis bzw. in Abhängigkeit von einer aktuellen Änderung einer Soll-Gelenkstellung, die von einem, insbesondere in den Gelenkraum transformierten kartesischen, minimalen Abstand von der roboterfesten Referenz zu dem vorgegebenen Fixpunkt, insbesondere einem
(Task)Vektor, der diesen Abstand enthält, abhängt, insbesondere auf dessen Basis ermittelt wird.
Zusätzlich oder alternativ wird in einer Ausführung eine aktuelle Änderung einer Soll- Gelenkstellung des (begrenzten) Antriebs zur Unterstützung der handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks j in einen
Nullraum der Minimierung des minimalen Abstands zwischen dem vorgegebenen Fixpunkt und der roboterfesten Referenz projiziert.
Hierdurch kann in einer Ausführung die Minimierung des minimalen Abstands zwischen dem vorgegebenen Fixpunkt und der roboterfesten Referenz als primäre Aufgabe in Form einer differentiellen Impedanzregelung implementiert und dabei die softwaretechni sehen Endanschlägen soweit möglich zusätzlich als sekundäre
Aufgabe vorteilhaft mit berücksichtigt werden.
In einer Ausführung wird der dem Fixpunkt T (kartesisch) nächste Punkt C auf der roboterfesten Referenz, insbesondere also dem robotergeführten Schaft ermittelt, so dass ein (Task)Vektor XCT den, insbesondere zweidimensionalen, minimalen Abstand von der roboterfesten Referenz zu dem vorgegebenen Fixpunkt beschreibt und in einer Ausführung 2 Dimensionen bzw. Komponenten für diesen Abstand und/oder (wenigstens) eine Dimension bzw. (Task)Komponente für einen Redundanzparameter, insbesondere einen Ellbogenwinkel des Roboters, aufweist. Mit einer Pseudo- Inversen, insbesondere der Moore-Penrose-Pseudo-Inversen, X, der
(Task)Jacobimatrix J, die sich aus der Jacobimatrix des Roboters, die
Gelenkgeschwindigkeiten dg/dt des Roboters auf eine kartesische Geschwindigkeit des Punktes C abbildet, und der Jacobimatrix des Redundanzparameters,
insbesondere Ellbogenwinkels, zusammensetzt, und der Einheitsmatrix / ergibt sich die Nullraumprojektion bzw. deren Operator N in an sich bekannter Weise als
N = I- X J (4) und somit die neuen (kommandierten) Soll-Gelenkstellungen gcmdfe) bzw. gcmd(i+1 ) insbesondere gemäß qcmd(t2) = <7cmd(ti) + J*-XcT(ti ) + W- -[qMsr(ti ) - <7cmd(ti)] (5) bzw.
<7cmd(i+1 ) = qcmd(i) + S-xcxQ) + N-K-[qMsr(\) - gCmd(i)] (5') mit der Diagonalmatrix K = diag{k-i, ...} und dem Vektor der Gelenkstellungen q =
[q-i, ...]T. Anschaulich gesprochen wird der minimale kartesische Abstand bzw. dessen Minimierung in differentieller Form als primäre Aufgabe einer Redundanzauflösung vorgegeben und als sekundäre Aufgabe die Unterstützung der
handführungsinduzierten Gelenkbewegungen in den Nullraum dieser
Redundanzauflösung projiziert. Nach einer Ausführung der vorliegenden Erfindung ist ein System zum Steuern eines Roboters, insbesondere ein System einer Anordnung mit dem Roboter, insbesondere hard- und/oder Software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
Mittel zum Erfassen aktueller Stellungen von Gelenken des Roboters; und
Mittel zum Aktuieren der Gelenke durch Antriebe des Roboters auf Basis dieser erfassten aktuellen Gelenkstellungen derart, dass wenigstens ein Antrieb eine handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand zwischen dessen erfasster oder Soll-Gelenkstellung und einer vorgegebenem ersten Begrenzung einen ersten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen zweiten Wert aufweist, der kleiner als der erste Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der ersten Begrenzung hin gerichtet ist.
In einer Ausführung weist das System bzw. sein(e) Mittel auf:
Mittel zum Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass der Antrieb die
handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand zwischen dessen erfasster oder Soll-Gelenkstellung und einer vorgegebenem zweiten Begrenzung einen dritten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen vierten Wert aufweist, der kleiner als der dritte Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der zweiten Begrenzung hin gerichtet ist.
Zusätzlich oder alternativ ist das System bzw. sein(e) Mittel dazu bzw. derart, insbesondere hard- und/oder Software-, insbesondere programmtechnisch, eingerichtet, dass der Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks nicht unterstützt, falls der Abstand zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten oder zweiten Begrenzung höchstens einen vorgegebenen Mindestbetrag aufweist, und/oder unterstützt, falls der Abstand zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten Begrenzung kleiner als der erste Wert, aber die handführungsinduzierte Bewegung von der ersten
Begrenzung weg gerichtet ist und/oder falls der Abstand zwischen der erfasster bzw. Soll-Gelenkstellung und der zweiten Begrenzung kleiner als der dritte Wert, aber die handführungsinduzierte Bewegung von der zweiten Begrenzung weg gerichtet ist.
Zusätzlich oder alternativ weist das System bzw. sein(e) Mittel in einer Ausführung auf: Mittel zum Reduzieren einer Unterstützung der handführungsinduzierten Bewegung des Gelenks durch den Antrieb wenigstens in einem vorgegebenen Bereich des Abstands zwischen der erfasster bzw. Soll-Gelenkstellung und der ersten oder zweiten Begrenzung monoton, insbesondere streng monoton, insbesondere linear, falls die handführungsinduzierte Bewegung zu dieser Begrenzung hin gerichtet ist; und/oder
Mittel zum Aktuieren des Gelenks durch den Antrieb zur Unterstützung der
handführungsinduzierten Bewegung des Gelenks auf Basis einer aktuelle Änderung einer bzw. der Soll-Gelenkstellung, die, insbesondere proportional, von einer Differenz der erfassten aktuellen Gelenkstellung des durch ihn aktuierten Gelenks und einer aktuellen Soll-Gelenkstellung für den Antrieb abhängt, wobei in einer Weiterbildung ein Proportionalitätsfaktor der Abhängigkeit der aktuelle Änderung einer Soll- Gelenkstellung von der Differenz von der Richtung der handführungsinduzierten Bewegung und/oder, insbesondere wenigstens abschnittsweise linear, dem Abstand zwischen der erfasster oder Soll-Gelenkstellung und der ersten und/oder zweiten Begrenzung abhängt; und/oder
Mittel zum Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass ein minimaler Abstand zwischen einem vorgegebenen Fixpunkt und einer roboterfesten Referenz, insbesondere einem robotergeführten Schaft, minimiert wird, und zum zusätzlichen Aktuieren des Gelenks durch den Antrieb dabei zur Unterstützung der handführungsinduzierten Bewegung sofern möglich; und/oder
Mittel zum Aktuieren der Gelenke durch die Antriebe auf Basis einer aktuellen
Änderung einer Soll-Gelenkstellung, die von einem, insbesondere in den Gelenkraum transformierten kartesischen, minimalen Abstand von der roboterfesten Referenz zu dem vorgegebenen Fixpunkt abhängt; und/oder
Mittel zum Projizieren einer aktuellen Änderung einer Soll-Gelenkstellung des Antriebs zur Unterstützung der handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks in einen Nullraum der Minimierung des minimalen Abstands zwischen dem vorgegebenen Fixpunkt und der roboterfesten Referenz.
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.
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. seine Mittel.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
Fig. 1 : eine Anordnung mit einem Roboter und einem System zum Steuern des Roboters nach einer Ausführung der vorliegenden Erfindung;
Fig. 2: ein Verfahren zum Steuern des Roboters nach einer Ausführung der vorliegenden Erfindung; und Fig. 3: einen dabei verwendeten Proportionalitätsfaktor.
Fig. 1 zeigt eine Anordnung mit einem Roboter 10 und einem System mit einer Robotersteuerung 2 zum Steuern des Roboters 10 nach einer Ausführung der vorliegenden Erfindung, die ein in Fig. 2 gezeigtes Verfahren zum Steuern des Roboters nach einer Ausführung der vorliegenden Erfindung ausführt bzw. hierzu eingerichtet ist.
Der Roboter 10 weist sieben Gelenk mit Gelenkstellungssensoren und Antrieben 1 1 - 17 sowie einen robotergeführten Schaft 18 auf, den er durch einen Fixpunkt T führen soll. Der Abstand zwischen Schaft 18 und Fixpunkt T ist zur Verdeutlichung stark übertrieben dargestellt.
Exemplarisch sind für eines der Gelenke eine durch den entsprechenden
Gelenkstellungssensor erfasste aktuelle Gelenkstellung qj sowie eine
Software technisch vorgegebene erste, obere Begrenzung qjM > 0 und zweite, untere Begrenzung qjm < 0 angedeutet.
In einem Schritt S100 (vgl. Fig. 2) werden mithilfe der Gelenkstellungssensoren die aktuellen Gelenkstellungen qMsr(i) = [q-ι , - - - , qj,,,]T erfasst.
In einem Schritt S200 werden hieraus oder aus (aktuellen bzw. zuletzt kommandierten) Soll-Gelenkstellungen gcmd(i) = [q-ι , - - - , qj,,,]T für die einzelnen Gelenke die Abstände zu den gelenkspezifischen ersten, oberen Begrenzungen und zweiten, unteren
Begrenzungen ermittelt, beispielsweise gemäß obiger Gleichung (3). Hieraus werden Proportionalitätsfaktoren ermittelt, beispielsweise gemäß obiger Gleichung (2).
Exemplarisch zeigt hierzu Fig. 3 den Proportionalitätsfaktor kj für Gelenk j in
Abhängigkeit von dessen Abstand dj zu seiner ersten, oberen Begrenzung qjM und zweiten, unteren Begrenzung qjm.
In einem Schritt S300 ermittelt die Steuerung 2 den dem Fixpunkt T
nächst(gelegen)en Punkt e auf dem robotergeführten Schaft 18, den (Task)Vektor xcT, der sich aus dem (zweidimensionalen) Abstand von C nach T und einem Soll-Delta für den Redundanzparameter, insbesondere dem Ellbogenwinkel, zusammensetzt, welches in einer Ausführung gleich Null ist, sowie die Moore-Penrose-Pseudo-Inverse X, (Task)Jacobimatrix J und den Operator N der Nullraumprojektion (vgl. obiger Gleichung (4)). Daraus berechnet die Steuerung 2 in einem Schritt S400 aktuelle Soll- Gelenkstellungsänderungen bzw. neue Soll-Gelenkstellungen, beispielsweise gemäß obiger Gleichung (5) bzw. (5').
In Schritt S500 aktuiert sie die Antriebe der Gelenke 1 1 -17 gemäß dieser neuen Soll- Gelenkstellungen.
Anschließend führt sie Schritt S100 erneut durch, wobei diese in Schritt S400 ermittelten Soll-Gelenkstellungen nun als aktuelle Soll-Gelenkstellungen des neuen Steuer- bzw. Regeltakts bzw. -zyklus verwendet werden.
In einer Abwandlung kann insbesondere Schritt S300 entfallen. Dann berechnet die Steuerung 2 in Schritt S400 die aktuellen Soll-Gelenkstellungsänderungen bzw.
neuen Soll-Gelenkstellungen beispielsweise gemäß obiger Gleichung (1 ) bzw. (1 ').
Man erkennt, dass, sofern ein Gelenk j sich beispielsweise seiner ersten, oberen Begrenzung qjM nähert, der entsprechende Proportionalitätsfaktor kj ab Unterschreiten des Abstands dthresh linear von ksat auf 0 bei dj = 0 absinkt (vgl. Gleichungen (2), (3) und Fig. 3). Entsprechend reduziert sich die Unterstützung einer
handführungsinduzierten Bewegung, da die durch die Handführung bewirkte
Abweichung zwischen der aktuell erfassten Gelenkstellung und der aktuellen Soll- Gelenkstellung bei der differentiellen Ermittlung der aktuellen Soll- Gelenkstellungsänderung bzw. neuen Soll-Gelenkstellung (vgl. Gleichungen (1 ), (1 '), (5), (5')) zunehmend ausgeblendet wird und der Roboter in dem entsprechenden
Gelenk seine alte Soll-Gelenkstellung beizubehalten versucht. Für den handführenden Bediener wirkt der Roboter somit„zäher". Bewirkt die Handführung hingegen ein Entfernen von der näheren Begrenzung, folgt der Roboter bzw. das entsprechende Gelenk infolge der Unterstützung durch den Antrieb (wieder) agiler. Sofern die Führung des Schafts 18 durch Fixpunkt T als primäre Aufgabe beachtet werden soll oder muss, wird diese abstandsbedingte Reduzierung der Unterstützung der Handführung als sekundäre Aufgabe ebenfalls in differentieller Form
berücksichtigt soweit - unter Beachtung der primären Aufgabe - möglich. Durch diese differentielle Impedanz, gegebenenfalls unter Auflösung der Redundanz bezüglich der primären Aufgabe, kann in einer Ausführung mit langsamer Taktrate und/oder, insbesondere bei mechanischen Nachgiebigkeiten in den Gelenken, auch ohne Krafterfassung in den Gelenken, eine stabile Handführung des Roboters realisiert und dabei ein Blockieren in softwaretechnischen Endanschlägen vermieden werden.
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. 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.
Bezuqszeichenliste
2 Steuerung
10 Roboter(arm)
1 1 -17 Gelenk mit Gelenkstellungssensor und Antrieb
18 Schaft
C fixpunktnachster Punkt auf Schaft
T Fixpunkt
xct (Task)Vektor mit Abstand von C nach T

Claims

Patentansprüche
Verfahren zum Steuern eines Roboters (10), mit den Schritten:
- Erfassen (S100) aktueller Stellungen (qj) von Gelenken (11 -17) des Roboters; und
- Aktuieren (S500) der Gelenke durch Antriebe des Roboters auf Basis dieser erfassten aktuellen Gelenkstellungen derart, dass wenigstens ein Antrieb eine handfuhrungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand (dj) zwischen dessen erfasster oder
Soll-Gelenkstellung und einer vorgegebenem ersten Begrenzung (qjM) einen ersten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen zweiten Wert aufweist, der kleiner als der erste Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der ersten Begrenzung hin gerichtet ist.
Verfahren nach Anspruch 1 , gekennzeichnet durch den Schritt:
- Aktuieren (S500) der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass der Antrieb die
handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand (dj) zwischen dessen erfasster oder
Soll-Gelenkstellung und einer vorgegebenem zweiten Begrenzung (qjm) einen dritten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen vierten Wert aufweist, der kleiner als der dritte Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der zweiten Begrenzung hin gerichtet ist.
Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks nicht unterstützt, falls der Abstand zwischen der erfasster oder
Soll-Gelenkstellung und der ersten oder zweiten Begrenzung höchstens einen vorgegebenen Mindestbetrag aufweist, und/oder unterstützt, falls der Abstand zwischen der erfasster oder Soll-Gelenkstellung und der ersten Begrenzung kleiner als der erste Wert, aber die handführungsinduzierte Bewegung von der ersten Begrenzung weg gerichtet ist und/oder falls der Abstand zwischen der erfasster oder Soll-Gelenkstellung und der zweiten Begrenzung kleiner als der dritte Wert, aber die handführungsinduzierte Bewegung von der zweiten
Begrenzung weg gerichtet ist.
Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass eine Unterstützung der handführungsinduzierten Bewegung des Gelenks durch den Antrieb wenigstens in einem vorgegebenen Bereich ([0, dtresh]) des Abstands zwischen der erfasster oder Soll-Gelenkstellung und der ersten oder zweiten Begrenzung monoton, insbesondere streng monoton, insbesondere linear, reduziert wird, falls die handführungsinduzierte Bewegung zu dieser Begrenzung hin gerichtet ist.
Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Antrieb das Gelenk zur Unterstützung der handführungsinduzierten Bewegung des Gelenks auf Basis einer aktuelle Änderung einer Soll- Gelenkstellung aktuiert, die, insbesondere proportional, von einer Differenz der erfassten aktuellen Gelenkstellung des durch ihn aktuierten Gelenks und einer aktuellen Soll-Gelenkstellung für den Antrieb abhängt.
Verfahren nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass ein Proportionalitätsfaktor der Abhängigkeit der aktuelle Änderung einer Soll- Gelenkstellung von der Differenz von der Richtung der handführungsinduzierten Bewegung und/oder, insbesondere wenigstens abschnittsweise linear, dem
Abstand zwischen der erfassten oder Soll-Gelenkstellung und der ersten und/oder zweiten Begrenzung abhängt.
Verfahren nach einem der vorhergehenden Ansprüche, mit dem Schritt:
- Aktuieren (S500) der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass ein minimaler Abstand zwischen einem vorgegebenen Fixpunkt (T) und einer roboterfesten Referenz, insbesondere einem robotergeführten Schaft (18), minimiert wird, und dabei sofern möglich zusätzlich der Antrieb das Gelenk zur Unterstützung der handführungsinduzierten Bewegung aktuiert.
Verfahren nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass die Antriebe die Gelenke auf Basis einer aktuellen Änderung einer Soll- Gelenkstellung aktuieren, die von einem, insbesondere in den Gelenkraum transformierten kartesischen, minimalen Abstand von der roboterfesten Referenz zu dem vorgegebenen Fixpunkt abhängt.
9. Verfahren nach dem vorhergehenden Anspruch, dadurch gekennzeichnet, dass eine aktuelle Änderung einer Soll-Gelenkstellung des Antriebs zur Unterstützung der handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks in einen Nullraum der Minimierung des minimalen Abstands zwischen dem vorgegebenen Fixpunkt und der roboterfesten Referenz projiziert wird.
10. System (2) zum Steuern eines Roboters (10), das zur Durchführung eines
Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:
- Mittel zum Erfassen (S100) aktueller Stellungen (qj) von Gelenken (1 1 -17) des Roboters; und
- Mittel zum Aktuieren (S500) der Gelenke durch Antriebe des Roboters auf Basis dieser erfassten aktuellen Gelenkstellungen derart, dass wenigstens ein
Antrieb eine handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand (dj) zwischen dessen erfasster oder Soll-Gelenkstellung und einer vorgegebenem ersten Begrenzung (qjM) einen ersten Wert aufweist, und demgegenüber weniger unterstützt, falls dieser Abstand einen zweiten Wert aufweist, der kleiner als der erste Wert ist, und zusätzlich die handführungsinduzierte Bewegung zu der ersten Begrenzung hin gerichtet ist.
1 1. Anordnung mit einem Roboter (10) und einem System (2) zum Steuern des
Roboters nach einem der vorhergehenden Ansprüche. 12. 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.
EP18722531.3A 2017-05-16 2018-05-07 Robotersteuerung Withdrawn EP3624998A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102017004711.1A DE102017004711B4 (de) 2017-05-16 2017-05-16 Robotersteuerung
PCT/EP2018/061635 WO2018210590A1 (de) 2017-05-16 2018-05-07 Robotersteuerung

Publications (1)

Publication Number Publication Date
EP3624998A1 true EP3624998A1 (de) 2020-03-25

Family

ID=62116466

Family Applications (1)

Application Number Title Priority Date Filing Date
EP18722531.3A Withdrawn EP3624998A1 (de) 2017-05-16 2018-05-07 Robotersteuerung

Country Status (5)

Country Link
US (1) US12103183B2 (de)
EP (1) EP3624998A1 (de)
CN (1) CN110621448B (de)
DE (1) DE102017004711B4 (de)
WO (1) WO2018210590A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019202456B4 (de) 2019-02-22 2025-07-10 Kuka Deutschland Gmbh Verfahren und System zum Durchführen einer vorgegebenen Aufgabe durch einen Roboter
US11420331B2 (en) * 2019-07-03 2022-08-23 Honda Motor Co., Ltd. Motion retargeting control for human-robot interaction
DE102019131400B4 (de) * 2019-11-21 2022-03-10 Franka Emika Gmbh Kraftmessung und Krafterzeugung in redundanten Robotermanipulatoren
EP4289131A4 (de) * 2021-02-05 2024-12-18 Ali Kord Bewegungserfassung für leistungskunst
CN113070879B (zh) * 2021-03-29 2022-03-29 北京锐智金联科技有限公司 可移动设备
CN113858201B (zh) * 2021-09-29 2023-04-25 清华大学 用于柔性驱动机器人的自适应变阻抗控制方法、系统与设备
JP7829543B2 (ja) * 2023-12-22 2026-03-13 株式会社安川電機 ロボットシステム及び制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714839B2 (en) * 1998-12-08 2004-03-30 Intuitive Surgical, Inc. Master having redundant degrees of freedom
ATE394719T1 (de) 2001-01-29 2008-05-15 Acrobot Company Ltd Roboter mit aktiven beschränkungen
JP2011206886A (ja) * 2010-03-30 2011-10-20 Yaskawa Electric Corp ロボットの制御装置及び方法
AT509927B1 (de) * 2010-06-08 2015-05-15 Keba Ag Verfahren zum programmieren oder vorgeben von bewegungen oder abläufen eines industrieroboters
CN103492133B (zh) * 2011-04-19 2016-04-13 Abb研究有限公司 具有运动冗余臂的工业机器人和用于控制该机器人的方法
JP6312264B2 (ja) * 2012-09-17 2018-04-18 リシンク ロボティクス インコーポレイテッド 冗長自由度を伴うロボットマニピュレータの制約
DE102013222456A1 (de) * 2013-11-05 2015-05-07 Kuka Laboratories Gmbh Verfahren zum Programmieren von Bewegungsabläufen eines redundanten Industrieroboters und zugehöriger Industrieroboter
DE102014010638A1 (de) * 2014-07-17 2016-01-21 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern eines Roboters
DE102014216514B3 (de) 2014-08-20 2015-09-10 Kuka Roboter Gmbh Verfahren zum Programmieren eines Industrieroboters und zugehöriger Industrieroboter
DE102014222809B3 (de) 2014-11-07 2016-01-14 Kuka Roboter Gmbh Event-basierte Redundanzwinkelkonfiguartion für Gelenkarmroboter
US9592608B1 (en) * 2014-12-15 2017-03-14 X Development Llc Methods and systems for providing feedback during teach mode
DE102015014994B3 (de) 2015-11-19 2017-01-05 Kuka Roboter Gmbh Steuerung eines Roboters
GB2588630B (en) * 2019-10-29 2024-03-20 Cmr Surgical Ltd Robotic joint control

Also Published As

Publication number Publication date
CN110621448B (zh) 2023-04-28
DE102017004711B4 (de) 2019-02-21
CN110621448A (zh) 2019-12-27
DE102017004711A1 (de) 2018-11-22
WO2018210590A1 (de) 2018-11-22
US12103183B2 (en) 2024-10-01
US20200101604A1 (en) 2020-04-02

Similar Documents

Publication Publication Date Title
EP3624998A1 (de) Robotersteuerung
DE102005054575B3 (de) Verfahren zur Regelung eines Roboterarms sowie Roboter zur Durchführung des Verfahrens
DE102008027008B4 (de) Verfahren und Vorrichtung zum Steuern eines Manipulators
DE102015014994B3 (de) Steuerung eines Roboters
EP3323026A1 (de) Ermitteln eines eingabebefehls für einen roboter, der durch manuelles ausüben einer kraft auf den roboter eingegeben wird
EP2868445A1 (de) Verfahren zum Programmieren von Bewegungsabläufen eines redundanten Industrieroboters und zugehöriger Industrieroboter
DE102013004692A1 (de) 3D-Eingabegerät mit einem zusätzlichen Drehregler
DE102009018403A1 (de) Verfahren und Vorrichtung zur Regelung eines Manipulators
DE19810341C2 (de) Verfahren zur automatischen Kollisionsvermeidung eines Manipulators in einem durch Hindernisse beschränkten Arbeitsraum
DE102016000754A1 (de) Verfahren und System zur Bahnplanung eines redundanten Roboters
DE102015109646B4 (de) Planen des Greifens eines Roboters in Echtzeit
DE102020116900B3 (de) Verfahren zum Bestimmen der Manipulierbarkeit einer Handhabungsvorrichtung und Verfahren zum Bestimmen der Tragfähigkeit einer Handhabungsvorrichtung und Handhabungsvorrichtung
DE102006007623B4 (de) Roboter mit einer Steuereinheit zum Steuern einer Bewegung zwischen einer Anfangspose und einer Endpose
DE102018004673A1 (de) Robotersystem, das eine Geschwindigkeit anzeigt
DE102020103857B4 (de) Kraftbegrenzung bei Kollision eines Robotermanipulators
DE102018200864B3 (de) Verfahren und System zum Steuern eines Roboters
DE102014006264A1 (de) Verfahren und Vorrichtung zum Steuern der Bewegung eines Objekts
DE102020209866B3 (de) Verfahren und System zum Betreiben eines Roboters
DE102010008240B4 (de) Verfahren zum Betrieb eines mehrachsigen, vorzugsweise sechsachsigen, Roboters
DE102015209773B3 (de) Verfahren zur kontinuierlichen Synchronisation einer Pose eines Manipulators und einer Eingabevorrichtung
DE102012022190B4 (de) Inverse Kinematik
DE102019118260B3 (de) Taktile Rückmeldung eines Endeffektors eines Robotermanipulators über verschiedene Orientierungsbereiche
EP4084937B1 (de) Bewegen einer roboterfesten referenz
DE102011102314A1 (de) Anwenden von Arbeitsraumgrenzen in einem geschwindigkeitsgesteuerten Robotermechanismus
DE102019202456B4 (de) Verfahren und System zum Durchführen einer vorgegebenen Aufgabe durch einen Roboter

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20191021

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20211105

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20220315

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230528