EP3624998A1 - Robot controller - Google Patents

Robot controller

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
German (de)
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/en
Withdrawn legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme 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/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme 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/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme 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

The invention relates to a method for controlling a robot (10), having the steps of: - detecting (S100) current positions (qj) of joints (11-17) of the robot; and - actuating (S500) the joints by means of drives of the robot on the basis of the detected current joint positions such that at least one drive supports a manual guidance-induced movement of the joint actuated by the drive if a distance (dj) between the detected or target joint position and a specified first boundary (qjM) has a first value, and the drive supports the manual guidance-induced movement to a lesser degree if said distance has a second value which is lower than the first value. Additionally, the manual guidance-induced movement is oriented towards the first boundary.

Description

Beschreibung  description
Robotersteuerung robot control
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. 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.
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. For the handling of robots different approaches are known. For example, by limiting the current in drive motors and eliminating an integral part of a position control, a robot can be moved manually.
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 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
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 generalizing also as forces and a regulation, i. a specification of control variables as a function of detected actual variables, in particular their
Differenz zu vorgegebenen Soll-Größen, verallgemeinernd ebenfalls als Steuern bezeichnet werden. Difference to predetermined desired quantities, generally also referred to as taxes.
Aufgabe der vorliegenden Erfindung ist es, eine Robotersteuerung zu verbessern. The object of the present invention is to improve a robot control.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 10 - 12 stellen ein System bzw. Computerprogrammprodukt zur This object is achieved by a method having the features of claim 1. Claims 10 to 12 provide a system or computer program product
Durchführung eines hier beschriebenen Verfahrens bzw. eine Anordnung mit einem hier beschriebenen System unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.  Implementation of a method described here or an arrangement with a system described here under protection. The subclaims relate to advantageous developments.
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 According to an embodiment of the present invention, 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
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 Joint angle sensors, such as resolvers, encoders or the like. In one embodiment, 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. By having six or more joints can be beneficial in one embodiment
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 a variety of layers and orientations of a distal robot (arm) flange or robot-guided tool or piece are shown in space, by seven or more joints advantageously the same position and orientation 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. pose different robot (poor) poses. 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.
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 According to one embodiment of the present invention, 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
(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 (software-technically) limited drive is supported, if a distance between its (current) detected or target joint position and a predetermined first limit, a first value, in particular amount, supports, and in contrast less supported, a handguard induced movement of the joint actuated by him if this distance has a second value, in particular amount, which, in particular in terms of amount, is smaller than the first value, and (if) in addition the hand gesture-induced movement is directed towards the first boundary. As a result, in one embodiment, when the robot is guided by hand on the basis of detected joint positions, this advantageously with a slower
Regeltaktrate erfolgen kann als eine Kraftregelung, softwaretechnische Endanschläge von Gelenken vorteilhaft berücksichtigt werden. Regeltaktrate done can be considered as a force control, software end stops of joints advantageous.
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 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
Gelenke des Roboter(arm)s (durch eine manuell aufgeprägte externe Kraft). Joints of the robot (arm) s (by a manually impressed external force).
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. 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.
In einer Ausführung unterstützt der (begrenzte) bzw. ein Antrieb eine In one embodiment, the (limited) or drive supports one
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 Hand-guide-induced movement of a joint actuated by him by a drive force, in particular a drive (rotary) moment, in a swivel joint, imparting or exerting on the joint or the axis which is in the same direction as this movement. Accordingly, in one embodiment, a drive more strongly supports hand gesture-induced motion by providing greater travel
gleichsinnig( bewegende)e Antriebskraft auf das Gelenk aufprägt bzw. ausübt, und (demgegenüber) weniger, indem er eine (demgegenüber) kleinere driving force on the joint in the same direction (moving) e, and (on the other hand) less by having a smaller one (on the other hand)
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 In the same direction (moving) e driving force, in particular no (moving or only a holding) driving force or even an opposing (moving) e driving force, imprints or exerts on the joint. In other words, in the (limited) joint, the robot "follows" a hand guide more easily or is more compliant (control) in the (limited) joint, if the distance has the first value, and heavier if the distance In one embodiment, 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 In one embodiment, 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
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 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
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 hand gesture-induced movement is directed towards the second boundary. In one embodiment, 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
verschieden sein. to be different.
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 In one embodiment, the first and second boundaries thus limit an allowable movement or adjustment range of the joint on both sides. In particular, 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. In one embodiment, the first and / or second is or is
Begrenzung softwaretechnisch vorgegeben, insbesondere abgespeichert, Limitation specified by software, in particular stored,
insbesondere fest oder durch einen Anwender durch eine entsprechende Eingabe veränder-, insbesondere parametrierbar. in particular fixed or changed by a user by a corresponding input, in particular parameterizable.
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. As a result, end stops of joints can advantageously be taken into account in one embodiment. By fixed limitations, in one embodiment, a mechanism of the robot can be reliably protected by changeable or
variable Begrenzungen ein Arbeitsraum des Roboters vorteilhaft verändert, variable limits a working space of the robot changed advantageous
insbesondere an unterschiedliche Randbedingungen angepasst werden. especially adapted to different conditions.
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 In one embodiment, 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
höchstens einen vorgegebenen Mindestbetrag aufweist, der insbesondere auch gleich Null sein kann. In einer Weiterbildung wirkt der (begrenzte) Antrieb der has at most a predetermined minimum amount, which may be equal to zero in particular. In a further development, the (limited) drive of the
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. hand guidance-induced movement of the joint actuated by him even if the distance at most has the minimum amount, in particular by trying to reset the joint against the hand guidance-induced movement or imposes a corresponding driving force or exercises.
Zusätzlich oder alternativ unterstützt in einer Ausführung der (begrenzte) Antrieb die handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks, falls bzw. Additionally or alternatively, in one embodiment, the (limited) drive supports the manual guidance induced movement of the joint actuated by it, if or
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. although the distance between the sensed joint position and the first boundary is less than the first value, but if the handrail induced Movement is directed away from the first boundary, and / or if and / or although the distance between the detected hinge position and the second boundary is less than the third value, but if the hand gesture-induced movement is directed away from the second boundary. As a result, end stops of joints can be considered particularly advantageous in one embodiment.
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 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
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. 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.
Hierdurch kann dem handführenden Anwender ein bei Annäherung an eine This allows the hand-held user when approaching a
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. Limiting increasingly tough robot behavior indicate this approach and / or increasingly difficult to approach the boundary and so in particular reduce the likelihood of accidentally exceeding an end position or blocking in an end position.
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 In one embodiment, 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
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. previously (commanded target joint position cmd (t) and q j, cmd (i) and by a proportionality factor k j, multiplied difference [q j, Msr (ti) - q j, cmd (ti)] and [q j , Msr (i) - qj, cmd (i)] of the detected current joint position qj, Msr (ti) or qj, Msr (i) and this previous (commanded desired joint position is determined: 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)] ( ') qj. cmd (i +) = qj, cmd (i) + k r [q j, Msr (i) - qj, cmd (i)] ( ')
Insbesondere hierdurch kann in einer Ausführung eine differentielle In particular, in this way, in one embodiment, a differential
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. Impedanzregelung be implemented, which advantageously requires no (fast) force detection or control and can be implemented accordingly in an embodiment without such.
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 In one embodiment, 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
abschnittsweise linear, von dem Abstand zwischen der (aktuellen) erfassten oder Soll-Gelenkstellung und der ersten und/oder zweiten Begrenzung ab, in einer in sections linearly, from the distance between the (current) detected or desired joint position and the first and / or second boundary ab, in one
Weiterbildung in der Form (vgl. Fig. 3) Development in the form (see Fig. 3)
k, = sh (2)k, = sh (2)
hresh h resh
mit dem Abstand with the distance
njM Hj « |q IjiMM -qjil < - |qji -qjimm| und -J- > 0 njM Hj «q Ij in M -qj i l <- | qj i -qj in m | and -J-> 0
dt  dt
I I I I i uH i „ IIII i u H i "
o qj -qjm < qjM - qj und— ί < 0 (3) oq j -q jm <q jM -q j and-ί <0 (3)
j, thresh > dj, thresh sonst j, thresh > dj, thresh otherwise
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). with the first boundary q jM and the smaller second boundary q jm <q jM and the abbreviation q = q j . Msr (ti) or q, Msr (i) or q j = q, C md (ti) or q j . 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 As a result, the above-explained increasingly tougher robot behavior can be realized particularly advantageously when approaching a boundary. In one embodiment, 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
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, Reference, in particular a robot-guided shaft, is minimized, and additionally the (limited) drive actuates the joint actuated by it in the manner described here in support of the hand-motion-induced movement, if or as far as this - while minimizing the minimum distance,
(zusätzlich noch) möglich ist. (additionally) is possible.
Hierdurch kann in einer Ausführung die hier beschriebene vorteilhafte As a result, in one embodiment, the advantageous described here
Berücksichtigung von softwaretechnischen Endanschlägen von Gelenken, Consideration of software end stops of joints,
insbesondere die Reduzierung der Wahrscheinlichkeit eines ungewollten in particular the reduction of the probability of an unwanted
Überschreitens oder Blockierens in einer Endstellung, als sekundäre bzw. Exceeding or blocking in an end position, as a secondary or
nachrangige bzw. niedriger priorisierte Aufgabe auch eine Handführung eines subordinate or lower priority task also a hand guidance of a
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 Improve robot who tries as a primary or higher-ranking or higher priority task to keep the robot-fixed reference to the fixed point, in particular to guide the shaft through a predetermined fixed point. With particular advantage, 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
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 would be limited. In one embodiment, 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)Vektor, der diesen Abstand enthält, abhängt, insbesondere auf dessen Basis ermittelt wird. (Task) vector containing this distance depends, in particular on the basis of which is determined.
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 Additionally or alternatively, in one embodiment, an actual change in a desired joint position of the (limited) drive to support the Handguard-induced movement of the joints j actuated by it into one
Nullraum der Minimierung des minimalen Abstands zwischen dem vorgegebenen Fixpunkt und der roboterfesten Referenz projiziert. Zero space is projected to minimize the minimum distance between the given fixed point and the robot fixed reference.
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 As a result, in one embodiment, 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
Aufgabe vorteilhaft mit berücksichtigt werden. Task advantageously be taken into account.
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 In one embodiment, 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. With a pseudo-inverse, especially the Moore-Penrose pseudo-inverse, X, the
(Task)Jacobimatrix J, die sich aus der Jacobimatrix des Roboters, die (Task) Jacobimatrix J, resulting from the Jacobian matrix of the robot, the
Gelenkgeschwindigkeiten dg/dt des Roboters auf eine kartesische Geschwindigkeit des Punktes C abbildet, und der Jacobimatrix des Redundanzparameters, Articulated velocities dg / dt of the robot to a Cartesian velocity of the point C, and the Jacobian matrix of the redundancy parameter,
insbesondere Ellbogenwinkels, zusammensetzt, und der Einheitsmatrix / ergibt sich die Nullraumprojektion bzw. deren Operator N in an sich bekannter Weise als in particular elbow angle, and the unit matrix / results in the Nullraumprojektion or their operator N in a conventional manner as
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. N = I - XJ (4) and thus the new (commanded) nominal joint positions gcmdfe) and gcmd (i + 1) in particular according to qcmd (t 2 ) = <7cmd (ti) + J * -XcT (ti) + W - [q M r (t) - <7cmd (ti)] (5) or
<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 = <7cmd (i + 1) = qcmd (i) + S-xcxQ) + NK- [q Msr (\) - g C md (i)] (5 ') with the diagonal matrix K = diag {ki, ... } and the vector of joint positions 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 [qi, ...] T. Described is the minimal Cartesian distance or its Minimization in differential form is given as the primary task of a redundancy resolution and as a secondary task the support of the
handführungsinduzierten Gelenkbewegungen in den Nullraum dieser Hand guidance induced joint movements in the null space of this
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: Redundancy resolution projected. According to one embodiment of the present invention, 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:
Mittel zum Erfassen aktueller Stellungen von Gelenken des Roboters; und Means for detecting current positions of joints of the robot; and
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. 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.
In einer Ausführung weist das System bzw. sein(e) Mittel auf: In one embodiment, the system or its agent has:
Mittel zum Aktuieren der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass der Antrieb die  Means for actuating the joints by the drives of the robot based on the detected current joint positions such that the drive
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. 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.
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 In addition or as an alternative, the 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
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. 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.
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 Additionally or alternatively, in one embodiment, 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
Mittel zum Aktuieren des Gelenks durch den Antrieb zur Unterstützung der  Means for actuating the joint by the drive in support of the
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 hand-guide-induced movement of the joint based on a current change of the desired joint position, which depends, in particular proportionally, on a difference of the detected current joint position of the articulated joint and a current nominal joint position for the drive, wherein in a development Proportionality factor of the dependence of the current change of a desired joint position of the difference of the direction of the hand guidance induced movement and / or, in particular at least partially linear, the distance between the detected or target joint position and the first and / or second boundary depends; and or
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  Means for actuating the joints by the drives of the robot on the basis of the detected current joint positions such that a minimum distance between a predetermined fixed point and a robot-fixed reference, in particular a robot-guided shaft is minimized, and for additional actuation of the joint by the drive thereby Support of the hand gesture-induced movement as far as possible; and or
Mittel zum Aktuieren der Gelenke durch die Antriebe auf Basis einer aktuellen  Means for actuating the joints by the actuators based on a current one
Ä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 Change of a desired joint position, which depends on a, in particular in the joint space transformed Cartesian, minimum distance from the robot-fixed reference to the predetermined fixed point; and or
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. Means for projecting a current change in a desired joint position of the drive to assist the manual motion induced movement of the actuator actuated therethrough Joint into a null space minimizing the minimum distance between the given fixed point and the robot fixed reference.
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 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
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. Output signals to a data bus. A storage system may comprise one or more, in particular different, storage media, in particular optical, magnetic, solid state and / or other non-volatile media. The program may be such that it is capable of embodying or executing the methods described herein, so that the CPU may perform the steps of such methods, and thus, in particular, control the robot.
In 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. In one embodiment, one or more, in particular all, steps of the method are completely or partially automated, in particular by the system or its means.
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert: Further advantages and features emerge from the subclaims and the exemplary embodiments. This shows, partially schematized:
Fig. 1 : eine Anordnung mit einem Roboter und einem System zum Steuern des Roboters nach einer Ausführung der vorliegenden Erfindung; Fig. 1: an arrangement with a robot and a system for controlling the robot according to an embodiment of the present invention;
Fig. 2: ein Verfahren zum Steuern des Roboters nach einer Ausführung der vorliegenden Erfindung; und Fig. 3: einen dabei verwendeten Proportionalitätsfaktor. Fig. 2: a method of controlling the robot according to an embodiment of the present invention; and FIG. 3: a proportionality factor used in this case.
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. 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.
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. 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.
Exemplarisch sind für eines der Gelenke eine durch den entsprechenden By way of example, one of the joints for one of the joints
Gelenkstellungssensor erfasste aktuelle Gelenkstellung qj sowie eine Joint position sensor detected current joint position q j and a
Software technisch vorgegebene erste, obere Begrenzung qjM > 0 und zweite, untere Begrenzung qjm < 0 angedeutet. Software technically given first, upper limit q jM > 0 and second, lower limit q jm <0 indicated.
In einem Schritt S100 (vgl. Fig. 2) werden mithilfe der Gelenkstellungssensoren die aktuellen Gelenkstellungen qMsr(i) = [q-ι , - - - , qj,,,]T erfasst. In a step S100 (see Fig. 2) the current joint positions q Msr (i) = [q-1, - -, qj ,,,] T are detected by means of the joint position sensors .
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 In a step S200 thereof or from (current and most recently commanded) target joint positions GCMD (i) = [q-ι, - - -, qj ,,,] T for the individual joints upper distances to the specific first joint, Limits and second, lower
Begrenzungen ermittelt, beispielsweise gemäß obiger Gleichung (3). Hieraus werden Proportionalitätsfaktoren ermittelt, beispielsweise gemäß obiger Gleichung (2).  Determines limitations, for example, according to the above equation (3). From this, proportionality factors are determined, for example according to equation (2) above.
Exemplarisch zeigt hierzu Fig. 3 den Proportionalitätsfaktor kj für Gelenk j in By way of example, FIG. 3 shows the proportionality factor k j for joint j in FIG
Abhängigkeit von dessen Abstand dj zu seiner ersten, oberen Begrenzung qjM und zweiten, unteren Begrenzung qjm. Dependence of its distance d j to its first, upper limit q jM and second, lower limit q jm .
In einem Schritt S300 ermittelt die Steuerung 2 den dem Fixpunkt T In a step S300, the controller 2 determines the fixed point 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'). next to point e on the robot-guided shaft 18, the (task) vector xc T , which is composed of the (two-dimensional) distance from C to T and a desired delta for the redundancy parameter, in particular the elbow angle, which in is equal to zero, as well as the Moore-Penrose pseudo-inverse X, (task) Jacobian J and the zero-projection operator N (see equation (4) above). From this, 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 ').
In Schritt S500 aktuiert sie die Antriebe der Gelenke 1 1 -17 gemäß dieser neuen Soll- Gelenkstellungen. In step S500, it actuates the drives of the joints 1 1 -17 according to this new nominal joint positions.
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. Subsequently, 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.
In einer Abwandlung kann insbesondere Schritt S300 entfallen. Dann berechnet die Steuerung 2 in Schritt S400 die aktuellen Soll-Gelenkstellungsänderungen bzw. In a modification, in particular step S300 can be dispensed with. Then, in step S400, the controller 2 calculates the current nominal joint position changes or
neuen Soll-Gelenkstellungen beispielsweise gemäß obiger Gleichung (1 ) bzw. (1 '). new nominal joint positions, for example according to the above equation (1) or (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 It can be seen that if a joint j approaches, for example, its first upper limit q jM , the corresponding proportionality factor k j decreases linearly from k sat to 0 at d j = 0 from below the distance dthresh (see equations (2), (3) and Fig. 3). Accordingly, the support of one reduces
handführungsinduzierten Bewegung, da die durch die Handführung bewirkte Handguard-induced movement, as caused by the hand guidance
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 entsprechendenDeviation 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
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 Joint trying to maintain its old target joint position. For the hand-held operator, the robot thus acts "tougher." If, however, the hand-held guide causes a removal from the closer boundary, the robot or the corresponding joint follows (again) more agile as a result of the support from the drive T as a primary task should or should be considered, this distance-related reduction of support of the hand guidance as a secondary task is also in a differential 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. considered as far as possible - considering the primary task. By means of this differential impedance, possibly with resolution of the redundancy with respect to the primary task, in a design with a slow clock rate and / or, in particular with mechanical compliances in the joints, even without force detection in the joints, a stable hand guidance of the robot can be realized and thereby Blocking in software limit stops can be avoided.
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 Although exemplary embodiments have been explained in the foregoing description, it should be understood that a variety of modifications are possible. It should also be noted that it is the exemplary
Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die The explanations are merely examples of the scope of protection
Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die  Applications and the structure should in no way limit. Rather, the expert is by the preceding description a guide for the
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 Implementation of at least one exemplary embodiment given, wherein various changes, in particular with regard to the function and arrangement of the described components, can be made without departing from the scope, as it is apparent from the claims and these equivalent
Merkmalskombinationen ergibt. Feature combinations results.
Bezuqszeichenliste LIST OF REFERENCES
2 Steuerung 2 control
10 Roboter(arm)  10 robots (poor)
1 1 -17 Gelenk mit Gelenkstellungssensor und Antrieb1 1 -17 Joint with joint position sensor and drive
18 Schaft 18 shaft
C fixpunktnachster Punkt auf Schaft  C fixpunktnachster point on shaft
T Fixpunkt  T fixed point
xct (Task)Vektor mit Abstand von C nach T x c t (task) Vector with distance from C to T

Claims

Patentansprüche claims
Verfahren zum Steuern eines Roboters (10), mit den Schritten: Method for controlling a robot (10), comprising the steps:
- Erfassen (S100) aktueller Stellungen (qj) von Gelenken (11 -17) des Roboters; und - detecting (S100) current positions (q j ) of joints (11-17) of the robot; and
- 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 - Actuate (S500) the joints by drives of the robot based on these detected current joint positions such that at least one drive supports a handfuhrungsinduzierte movement of the joint actuated by him, if a distance (d j ) between the detected or
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. Target joint position and a predetermined first boundary (q jM ) has a first value, and on the other hand less supported, if this distance has a second value which is smaller than the first value, and in addition, the hand guidance induced movement is directed to the first boundary ,
Verfahren nach Anspruch 1 , gekennzeichnet durch den Schritt: Method according to claim 1, characterized by the step:
- Aktuieren (S500) der Gelenke durch die Antriebe des Roboters auf Basis der erfassten aktuellen Gelenkstellungen derart, dass der Antrieb die  - Actuate (S500) of the joints by the drives of the robot on the basis of the detected current joint positions such that the drive
handführungsinduzierte Bewegung des durch ihn aktuierten Gelenks unterstützt, falls ein Abstand (dj) zwischen dessen erfasster oder assisted hand movement induced movement of the joint actuated by it, if a distance (d j ) between its detected or
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. Target joint position and a predetermined second boundary (q jm ) has a third value, and on the other hand less supported, if this distance has a fourth value which is smaller than the third value, and in addition the hand guidance induced movement is directed to the second boundary ,
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 Method according to one of the preceding claims, characterized in that the drive does not support the hand-guide-induced movement of the joint actuated by it, if the distance between the detected or
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 Target joint position and the first or second boundary has at most a predetermined minimum amount, and / or supported, if the distance between the detected or desired joint position and the first boundary is smaller than the first value, but directed the hand guidance induced movement away from the first boundary is and / or if the distance between the detected or desired joint position and the second boundary is smaller than that third value, but the handguard-induced movement of the second
Begrenzung weg gerichtet ist. Limit is directed away.
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. Method according to one of the preceding claims, characterized in that support of the manual guidance induced movement of the joint by the drive at least in a predetermined range ([0, d tr esh]) of the distance between the detected or desired joint position and the first or second boundary monotonically, in particular strictly monotone, in particular linear, is reduced, if the hand guidance-induced movement is directed to this limitation.
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. Method according to one of the preceding claims, characterized in that the drive actuates the joint to support the hand guidance induced movement of the joint based on a current change of a nominal joint position, in particular proportionally, of a difference of the detected current joint position of the joint actuated by him and a current target joint position for the drive depends.
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 Method according to the preceding claim, characterized in that a proportionality factor of the dependence of the current change of a nominal joint position on the difference of the direction of the hand guidance-induced movement and / or, in particular at least partially linearly
Abstand zwischen der erfassten oder Soll-Gelenkstellung und der ersten und/oder zweiten Begrenzung abhängt. Distance between the detected or target joint position and the first and / or second boundary depends.
Verfahren nach einem der vorhergehenden Ansprüche, mit dem Schritt: Method according to one of the preceding claims, with the step:
- 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. - Actuate (S500) of the joints by the drives of the robot based on the detected current joint positions such that a minimum distance between a predetermined fixed point (T) and a robot-fixed reference, in particular a robot-guided shaft (18) is minimized, and thereby possible additionally the drive actuates the joint in support of the hand guidance induced movement.
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. Method according to the preceding claim, characterized in that the drives the joints on the basis of a current change of a target Actuate joint position, which depends on a, in particular in the joint space transformed Cartesian, minimum distance from the robot-fixed reference to the predetermined fixed point.
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. A method according to the preceding claim, characterized in that an actual change of a desired joint position of the drive in support of the manual guidance-induced movement of the joint actuated by it is projected into a null space of minimization of the minimum distance between the predetermined fixed point and the robot-fixed reference.
10. System (2) zum Steuern eines Roboters (10), das zur Durchführung eines 10. System (2) for controlling a robot (10), which is used to carry out a
Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist:  Method according to one of the preceding claims set up and / or comprises:
- Mittel zum Erfassen (S100) aktueller Stellungen (qj) von Gelenken (1 1 -17) des Roboters; und - means for detecting (S100) current positions (q j ) of joints (1 1 -17) of the robot; and
- Mittel zum Aktuieren (S500) der Gelenke durch Antriebe des Roboters auf Basis dieser erfassten aktuellen Gelenkstellungen derart, dass wenigstens ein - means for actuating (S500) the joints by drives of the robot on the basis of these detected actual joint positions such that at least one
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. Drive supports a handguard-induced movement of the joint actuated by it, if a distance (d j ) between its detected or nominal joint position and a predetermined first boundary (q jM ) has a first value, and less supported, if this distance is a second value which is smaller than the first value, and in addition, the hand gesture-induced movement is directed toward the first boundary.
1 1. Anordnung mit einem Roboter (10) und einem System (2) zum Steuern des 1 1. Arrangement with a robot (10) and a system (2) for controlling the
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.  Robot according to one of the preceding claims. A computer program product having a program code stored on a computer-readable medium for carrying out a method according to any one of the preceding claims.
EP18722531.3A 2017-05-16 2018-05-07 Robot controller Withdrawn EP3624998A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102017004711.1A DE102017004711B4 (en) 2017-05-16 2017-05-16 robot control
PCT/EP2018/061635 WO2018210590A1 (en) 2017-05-16 2018-05-07 Robot controller

Publications (1)

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

Family

ID=62116466

Family Applications (1)

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

Country Status (5)

Country Link
US (1) US20200101604A1 (en)
EP (1) EP3624998A1 (en)
CN (1) CN110621448B (en)
DE (1) DE102017004711B4 (en)
WO (1) WO2018210590A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019202456A1 (en) * 2019-02-22 2020-08-27 Kuka Deutschland Gmbh Method and system for performing a given task by a robot
US11420331B2 (en) * 2019-07-03 2022-08-23 Honda Motor Co., Ltd. Motion retargeting control for human-robot interaction
DE102019131400B4 (en) * 2019-11-21 2022-03-10 Franka Emika Gmbh Force measurement and force generation in redundant robotic manipulators
CN113070879B (en) * 2021-03-29 2022-03-29 北京锐智金联科技有限公司 Mobile device
CN113858201B (en) * 2021-09-29 2023-04-25 清华大学 Self-adaptive variable impedance control method, system and equipment for flexible driving robot

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
EP1355765B1 (en) * 2001-01-29 2008-05-07 The Acrobot Company Limited Active-constraint robots
JP2011206886A (en) * 2010-03-30 2011-10-20 Yaskawa Electric Corp Device and method for controlling robot
AT509927B1 (en) * 2010-06-08 2015-05-15 Keba Ag METHOD FOR PROGRAMMING OR PRESENTING MOVEMENTS OR RUNS OF AN INDUSTRIAL ROBOT
CN103492133B (en) * 2011-04-19 2016-04-13 Abb研究有限公司 There is the industrial robot of motion redundancy arm and the method for controlling this robot
US9221172B2 (en) * 2012-09-17 2015-12-29 Rethink Robotics, Inc. Constraining robotic manipulators with redundant degrees of freedom
DE102013222456A1 (en) * 2013-11-05 2015-05-07 Kuka Laboratories Gmbh Method for programming the motion sequences of a redundant industrial robot and associated industrial robots
DE102014010638A1 (en) * 2014-07-17 2016-01-21 Kuka Roboter Gmbh Method and device for controlling a robot
DE102014216514B3 (en) * 2014-08-20 2015-09-10 Kuka Roboter Gmbh Method for programming an industrial robot and associated industrial robots
DE102014222809B3 (en) * 2014-11-07 2016-01-14 Kuka Roboter Gmbh Event-based redundancy angle configuration for articulated arm robots
US9592608B1 (en) * 2014-12-15 2017-03-14 X Development Llc Methods and systems for providing feedback during teach mode
DE102015014994B3 (en) * 2015-11-19 2017-01-05 Kuka Roboter Gmbh Control of a robot
GB2588630B (en) * 2019-10-29 2024-03-20 Cmr Surgical Ltd Robotic joint control

Also Published As

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

Similar Documents

Publication Publication Date Title
EP3624998A1 (en) Robot controller
DE102008027008B4 (en) Method and device for controlling a manipulator
EP2868445B1 (en) Method for programming sequences of movements of a redundant industrial robot and associated industrial robot
WO2017008898A1 (en) Ascertaining an input command for a robot, said input command being entered by manually exerting a force onto the robot
DE102015014994B3 (en) Control of a robot
DE102006007623B4 (en) Robot with a control unit for controlling a movement between an initial pose and an end pose
DE102013004692B4 (en) 3D input device with an additional rotary controller
WO2014064025A1 (en) Manually operated robot control system and method for controlling a robot system
DE102016000754A1 (en) Method and system for path planning of a redundant robot
EP3233393B1 (en) Method for safe coupling and decoupling of an input device
DE19810341C2 (en) Method for automatic collision avoidance of a manipulator in a work space limited by obstacles
DE102009018403A1 (en) Method for controlling a welding robot, for welding with a welding tong and a force detecting device for detecting reaction forces on the welding tong, comprises determining a sum of reaction forces on the welding tong
DE102020103857B4 (en) Force limitation in the event of a robot manipulator collision
DE102015109646B4 (en) Planning the gripping of a robot in real time
DE102018200864B3 (en) Method and system for controlling a robot
DE102015209773B3 (en) A method for continuously synchronizing a pose of a manipulator and an input device
DE102010008240B4 (en) Method for operating a multi-axis, preferably six-axis, robot
DE102012022190B4 (en) Inverse kinematics
DE102020116900B3 (en) Method for determining the manipulability of a handling device and method for determining the carrying capacity of a handling device and handling device
WO2018083008A1 (en) Calibrating a model of a process robot and operating a process robot
EP3703914A1 (en) Method and control means for controlling a robot assembly
EP4084937B1 (en) Moving a reference fixed on a robot
DE102020209866B3 (en) Method and system for operating a robot
DE102018207921B3 (en) Controlling a robot
DE102011102314A1 (en) Apply workspace boundaries in a speed-controlled robotic mechanism

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