DE102019127887B3 - Controlling a robot - Google Patents

Controlling a robot Download PDF

Info

Publication number
DE102019127887B3
DE102019127887B3 DE102019127887.2A DE102019127887A DE102019127887B3 DE 102019127887 B3 DE102019127887 B3 DE 102019127887B3 DE 102019127887 A DE102019127887 A DE 102019127887A DE 102019127887 B3 DE102019127887 B3 DE 102019127887B3
Authority
DE
Germany
Prior art keywords
friction compensation
load
robot
axis
drive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102019127887.2A
Other languages
German (de)
Inventor
Shashank Sharma
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Priority to DE102019127887.2A priority Critical patent/DE102019127887B3/en
Priority to PCT/EP2020/074556 priority patent/WO2021073800A1/en
Application granted granted Critical
Publication of DE102019127887B3 publication Critical patent/DE102019127887B3/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1641Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39181Compensation of coulomb friction in joint
    • 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/41Servomotor, servo controller till figures
    • G05B2219/41158Use of pwm signal against friction

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position Or Direction (AREA)
  • Manipulator (AREA)

Abstract

Ein erfindungsgemäßes Verfahren zum Steuern eines Roboters (10-15) umfasst den Schritt: Berechnen (S10) einer Soll-Last (Fd) wenigstens eines Antriebs (14, 15) einer Achse des Roboters, insbesondere auf Basis eines mathematischen Modells der Achse, wobei der Anrieb in einem ersten Reibungskompensations-Modus auf die Achse eine Reibungskompensations-Last (Fc), insbesondere eine oszillierende Reibungskompensations-Last in alternierenden Richtungen, auf Basis der berechneten Soll-Last ausübt (S60).A method according to the invention for controlling a robot (10-15) comprises the step: calculating (S10) a target load (Fd) of at least one drive (14, 15) of an axis of the robot, in particular on the basis of a mathematical model of the axis, wherein the drive in a first friction compensation mode exerts a friction compensation load (Fc) on the axle, in particular an oscillating friction compensation load in alternating directions, on the basis of the calculated target load (S60).

Description

Die vorliegende Erfindung betrifft ein Verfahren und System zum Steuern eines Roboters sowie ein Computerprogrammprodukt zur Durchführung des Verfahrens.The present invention relates to a method and system for controlling a robot and a computer program product for carrying out the method.

In Roboterachsen tritt Reibung auf, die insbesondere handgeführte und modellbasiert geregelte Bewegung des Roboters erschwert.Friction occurs in robot axes, which in particular makes hand-guided and model-based controlled movement of the robot more difficult.

Reibung wirkt stets der tatsächlichen Bewegungsrichtung bzw. der Bewegungsrichtung, in die ausgeübte Lasten ein ruhendes System antreiben, entgegengerichtet.Friction always works in the opposite direction to the actual direction of movement or the direction of movement in which exerted loads drive a system at rest.

Misst man daher eine Ist-Geschwindigkeit, um die Richtung der Reibung zu bestimmen und diese entsprechend kompensieren zu können, kann ein Rauschen im Ist-Geschwindigkeitssignal, insbesondere bei kleinen Geschwindigkeiten, zu einer fehlerhaften Reibungskompensation führen.Therefore, if an actual speed is measured in order to determine the direction of the friction and to be able to compensate it accordingly, noise in the actual speed signal, especially at low speeds, can lead to incorrect friction compensation.

Aus der US 7,713,263 B2 ist ein Verfahren zur Reibungskompensation eines Medizinroboters bekannt, bei dem ein Geschwindigkeitsmesswert bestimmt und eine oszillierende Reibungskompensations-Last in alternierenden Richtungen ausgeübt wird, wenn der Geschwindigkeitsmesswert in einem ersten Messwertbereich um Null herum liegt.From the US 7,713,263 B2 A method for friction compensation of a medical robot is known in which a speed measurement value is determined and an oscillating friction compensation load is exerted in alternating directions when the speed measurement value is in a first measurement value range around zero.

3 zeigt hierzu einen Tastgrad dc' einer pulsweitenmodulierten Reibungskompensations-Kraft über einer gemessenen Geschwindigkeit vmeas . Innerhalb des ersten Messwertbereichs [-v1, +v1] erhöht sich der Tastgrat dc' linear von 0% auf 100%, so dass bei vmeas ≥ +v1 eine konstante Reibungskompensations-Kraft +fc in einer erste Bewegungsrichtung und bei vmeas ≤ - v1 eine betragsgleiche konstante Reibungskompensations-Kraft -fc in der Gegenrichtung ausgeübt wird. 3 shows a duty cycle dc 'of a pulse-width-modulated friction compensation force over a measured speed v meas . Within the first measured value range [-v 1 , + v 1] , the tactile ridge dc 'increases linearly from 0% to 100%, so that with v meas ≥ + v 1 a constant friction compensation force + f c in a first direction of movement and at v meas ≤ - v 1 a constant friction compensation force of the same amount -f c is exerted in the opposite direction.

Hierdurch soll ein Handführen insbesondere im Bereich kleiner Geschwindigkeiten [-v1, +v1], insbesondere bei vmeas ≈ 0, verbessert werden.This is intended to improve manual guidance, in particular in the range of low speeds [-v 1 , + v 1 ], in particular at v meas ≈ 0.

Dieses Verfahren zeigt in der Praxis, insbesondere für schwer(gängige)(re) Roboter(achsen), Nachteile.In practice, this method shows disadvantages, especially for difficult (common) (re) robots (axes).

Die DE 10 2018 207 354 B3 betrifft ein Verfahren zum Steuern eines Roboters, wobei zwischen einem ersten Betriebsmodus, in dem für wenigstens ein Gelenk des Roboters bei einer ersten Geschwindigkeit dieses Gelenks eine erste Reibungskompensation durchgeführt wird, und einem zweiten Betriebsmodus umschaltbar ist, in dem für dieses Gelenk bei der ersten Geschwindigkeit keine oder eine von der ersten Reibungskompensation verschiedene Reibungskompensation durchgeführt wird.The DE 10 2018 207 354 B3 relates to a method for controlling a robot, with a switchable between a first operating mode, in which a first friction compensation is carried out for at least one joint of the robot at a first speed of this joint, and a second operating mode, in which for this joint at the first speed no friction compensation or a friction compensation different from the first friction compensation is carried out.

Die DE 11 2018 001 058 T5 betrifft ein medizinisches Tragarmsystem, das einen Gelenkarm beinhaltet, der konfiguriert ist, ein Endoskop zu tragen, das ein Bild eines Beobachtungsziels in einem Operationsfeld erfasst, und eine Steuereinheit, die konfiguriert ist, den Gelenkarm auf der Grundlage einer Beziehung zwischen einer realen Verbindung, die einer Objektivtubusachse des Endoskops entspricht, und einer virtuellen Verbindung, die einer optischen Achse des Endoskops entspricht, zu steuern.The DE 11 2018 001 058 T5 relates to a medical arm system that includes an articulated arm configured to carry an endoscope that captures an image of an observation target in an operation field, and a control unit that is configured to control the articulated arm based on a relationship between a real connection that corresponds to a lens barrel axis of the endoscope, and to control a virtual connection corresponding to an optical axis of the endoscope.

Die DE 10 2017 220 936 A1 betrifft ein Handexoskelett sowie einen Roboterarm zur Erfassung einer Bewegung/Kraft einer Hand bzw. Übertragung einer Bewegung/Kraft auf eine Hand mit einer Basis, wobei die Basis bei Verbinden mit der Hand am Handrücken angeordnet ist und mit der Basis mindestens ein Manipulator verbunden ist, wobei ein Fingerberührungspunkt am dem der Basis abgewandten Ende des Manipulators vorgesehen ist, wobei mit dem Fingerberührungspunkt ein Finger der Hand des Verwenders verbindbar ist, so dass eine Bewegung/Kraft des Fingers auf den Manipulator übertragbar ist bzw. die Bewegung/Kraft des Manipulators auf den Finger übertragbar ist, wobei zwischen dem Manipulator und dem Fingerberührungspunkt ein Ausgleichselement vorgesehen ist, so dass die Beugebewegung des Fingers ausgeglichen wird.The DE 10 2017 220 936 A1 relates to a hand exoskeleton and a robot arm for detecting a movement / force of a hand or transferring a movement / force to a hand with a base, the base being arranged on the back of the hand when connected to the hand and at least one manipulator being connected to the base, wherein a finger contact point is provided at the end of the manipulator facing away from the base, wherein a finger of the user's hand can be connected to the finger contact point so that a movement / force of the finger can be transmitted to the manipulator or the movement / force of the manipulator can be transmitted to the Finger is transferable, with a compensating element being provided between the manipulator and the finger contact point, so that the flexing movement of the finger is compensated.

Die DE 10 2007 060 680 A1 betrifft ein Verfahren zur Steuerung eines Manipulators mit einem motorisch bewegbaren Arbeitspunkt, das die Schritte umfasst: Bestimmen einer Lage des Arbeitspunktes, Bestimmen, ob die Lage des Arbeitspunktes in einem vorgegebenen Prozessbereich liegt oder nicht, und Reduzieren der im Arbeitspunkt von dem Manipulator aufbringbaren Kräfte, falls die Lage des Arbeitspunktes nicht in dem vorgegebenen Prozessbereich liegt.The DE 10 2007 060 680 A1 relates to a method for controlling a manipulator with a motor-driven working point, comprising the steps of: determining a position of the working point, determining whether the position of the working point is in a predetermined process area or not, and reducing the forces that can be applied by the manipulator at the working point, if the position of the working point is not in the specified process area.

Nach der DE 10 2007 060 680 A1 wird zur Kompensation der Reibung an einem von einem Bediener betätigten Steuerarm ein starr an den vom Bediener zu betätigenden Steuergriff gekoppelt, wobei der Steuerarm über ein elastisches Bauteil mit einer Antriebseinrichtung mechanisch gekoppelt ist, und der Positionsgeber an einen Steuerrechner angeschlossen ist, in dem entschieden wird, mit welchem Kompensationsmoment oder mit welcher Kompensationskraft neben dem abzugebenden Drehmoment oder Kraft überhaupt die Reibungskompensation erfolgt.After DE 10 2007 060 680 A1 To compensate for the friction on a control arm operated by an operator, a rigidly coupled to the operator-operated control handle, the control arm being mechanically coupled to a drive device via an elastic component, and the position transmitter being connected to a control computer in which a decision is made with which compensation torque or with which compensation force the friction compensation takes place in addition to the torque or force to be output.

Aufgabe der vorliegenden Erfindung ist es, das Steuern von Robotern zu verbessern.The object of the present invention is to improve the control of robots.

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

Nach einer Ausführung der vorliegenden Erfindung umfasst ein Verfahren zum Steuern eines Roboters den, vorzugsweise zyklisch, in einer Ausführung im Regeltakt, wiederholten, Schritt:

  • - Berechnen einer Soll-Last wenigstens eines Achsantriebs des Roboters.
According to one embodiment of the present invention, a method for controlling a robot comprises the step, which is repeated, preferably cyclically, in one embodiment at regular intervals:
  • - Calculating a target load of at least one axle drive of the robot.

Der Roboter kann insbesondere ein mobiler und/oder redundanter Roboter sein und/oder einen Roboterarm mit mehreren (Bewegungs)Achsen bzw. Gelenken, insbesondere Drehachsen bzw. -gelenken, aufweisen.The robot can in particular be a mobile and / or redundant robot and / or have a robot arm with several (movement) axes or joints, in particular axes of rotation or joints.

Hierfür ist die vorliegende Erfindung, insbesondere aufgrund der meist autonomen Energie-, insbesondere Batterieversorgung mobiler Roboter und/oder dem Aufbau und/oder Einsatz solcher Roboter(arme) besonders geeignet, ohne jedoch hierauf beschränkt zu sein.The present invention is particularly suitable for this, in particular due to the mostly autonomous energy, in particular battery, supply of mobile robots and / or the construction and / or use of such (poor) robots, but without being restricted to this.

Eine Soll-Last kann insbesondere eine Soll-Kraft und/oder ein Soll-(Dreh)Moment aufweisen, insbesondere sein.A target load can in particular have, in particular be, a target force and / or a target (rotational) torque.

Durch die Berechnung von Soll-Lasten können Roboter in einer Ausführung besonders vorteilhaft gesteuert werden, wobei unter einem Steuern vorliegend zur kompakteren Darstellung insbesondere auch ein Regeln verstanden wird. So können Roboter auf Basis berechneter Soll-Lasten vorteilhafterweise mittels Operational Space Control gesteuert, impedanz- bzw. admittanzgereglt oder auch Nullraumbewegungen redundanter Roboter kommandiert werden. Allgemein wird der Roboter in einer Ausführung auf Basis der berechneten Soll-Last(en) gesteuert, insbesondere in dem nachfolgend erläuterten ersten, zweiten und/oder dritten Reibungskompensations-Modus und/oder wenigstens einem hiervon verschiedenen (Betriebs)Modus, bzw. ist/sind die berechneten Soll-Last(en) hierzu vorgesehen bzw. werden (auch) hierzu berechnet bzw. verwendet.By calculating setpoint loads, robots can be controlled particularly advantageously in one embodiment, with control being understood in the present case for more compact representation in particular also to mean regulating. Robots can be controlled, impedance- or admittance-regulated, or zero-space movements of redundant robots can be commanded on the basis of calculated target loads, advantageously by means of operational space control. In general, one embodiment of the robot is controlled on the basis of the calculated target load (s), in particular in the first, second and / or third friction compensation mode explained below and / or at least one (operating) mode different therefrom, or is / are the calculated target load (s) intended for this purpose or are (also) calculated or used for this purpose.

In einer Ausführung wird/werden die Soll-Last(en) auf Basis eines mathematischen, insbesondere numerischen, Modelles der Achse, insbesondere des Roboters, berechnet, insbesondere eines von einer Getriebeübersetzung und/oder Masse, insbesondere Massenverteilung abhängigen Modells. In einer Ausführung wird das Modell und/oder die berechnete Soll-Last für bzw. in eine(r) modellbasierte(n) Regelung, insbesondere Operational Space Control, Nachgiebigkeits-, insbesondere Impedanz- oder Admittanz-, und/oder Nullraumregelung verwendet bzw. ist hierzu geeignet, insbesondere vorgesehen.In one embodiment, the target load (s) is / are calculated on the basis of a mathematical, in particular numerical, model of the axis, in particular of the robot, in particular a model dependent on a gear ratio and / or mass, in particular mass distribution. In one embodiment, the model and / or the calculated target load is used or in a model-based control, in particular operational space control, compliance, in particular impedance or admittance, and / or zero space control. is suitable for this purpose, in particular intended.

Nach einer Ausführung der vorliegenden Erfindung umfasst das Verfahren einen ersten Reibungskompensations-(Betriebs)Modus, in dem der Anrieb auf die Achse eine Reibungskompensations-Last auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last ausübt.According to one embodiment of the present invention, the method comprises a first friction compensation (operating) mode in which the drive exerts a friction compensation load on the axle based on or as a function of the calculated target load.

Entsprechend umfasst das Verfahren in einer Ausführung die Schritte:

  • - Ermitteln einer Reibungskompensations-Last auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last des Achsantriebs; und
  • - Ausüben dieser Reibungskompensations-Last auf die Achse mithilfe des, insbesondere durch den, (Achs)Antrieb.
Correspondingly, in one embodiment, the method comprises the steps:
  • - Determination of a friction compensation load on the basis of or as a function of the calculated target load of the axle drive; and
  • - This friction compensation load is exerted on the axle with the aid of, in particular, the (axle) drive.

Wie einleitend erläutert, kann insbesondere ein Rauschen in einem Ist- Geschwindigkeitssignal bei kleiner oder verschwindender Geschwindigkeit zu einer fehlerhaften Reibungskompensation führen.As explained in the introduction, in particular noise in an actual speed signal at low or zero speed can lead to incorrect friction compensation.

Eine Ausführung der vorliegenden Erfindung basiert auf der Erkenntnis, dass berechnete Soll-Last in der Regel exakt(er) sind und die Bewegungsrichtung, in der eine ruhende Achse losbricht, (mit)bestimmen. Auf diese Weise kann insbesondere im Bereich kleiner oder verschwindender Geschwindigkeiten eine Reibungskompensation gegenüber der eingangs genannten US 7,713,263 B2 verbessert werden.One embodiment of the present invention is based on the knowledge that calculated target loads are usually (more) exact and (also) determine the direction of movement in which an axis at rest breaks away. In this way, especially in the range of small or vanishing speeds, a friction compensation can be achieved with respect to the one mentioned at the beginning US 7,713,263 B2 be improved.

In einer Ausführung ist die in dem ersten Reibungskompensations-Modus von dem Antrieb auf die Achse ausgeübte Reibungskompensations-Last eine oszillierende Last in alternierenden Richtungen.In one embodiment, the friction compensation load exerted by the drive on the axle in the first friction compensation mode is an oscillating load in alternating directions.

Hierdurch kann in einer Ausführung vorteilhaft ein Haft-Gleit-Übergang in der Achse verbessert oder vermieden werden.In this way, in one embodiment, an adhesion-sliding transition in the axis can advantageously be improved or avoided.

In einer Ausführung umfasst das Verfahren einen zweiten Reibungskompensations-Modus, in dem der Antrieb auf die Achse eine Reibungskompensations-Last auf Basis einer erfassten Ist-Geschwindigkeit, insbesondere in deren Richtung, dieser Achse ausübt, wobei in einer Ausführung dieser zweite Reibungskompensations-Modus durchgeführt, insbesondere in diesen (um)geschaltet, wird, falls diese Geschwindigkeit innerhalb eines vorgegebenen Geschwindigkeitsbereichs liegt, in einer Ausführung, falls ihr Betrag einen vorgegebenen Geschwindigkeitsgrenzwert übersteigt.In one embodiment, the method includes a second friction compensation mode in which the drive exerts a friction compensation load on the axle based on a detected actual speed, in particular in its direction, of this axis, this second friction compensation mode being carried out in one embodiment , in particular in this (um) switched, if this speed is within of a predetermined speed range, in one embodiment, if its amount exceeds a predetermined speed limit value.

Entsprechend umfasst das Verfahren in einer Ausführung die Schritte:

  • - Erfassen einer Ist-Geschwindigkeit der Achse; und
  • - Durchführen des, insbesondere (Um)Schalten in den, zweiten Reibungskompensations-Modus, falls diese Geschwindigkeit innerhalb eines vorgegebenen Geschwindigkeitsbereichs liegt, in einer Ausführung, falls ihr Betrag einen vorgegebenen Geschwindigkeitsgrenzwert übersteigt; wobei der zweite Reibungskompensations-Modus die Schritte umfasst:
  • - Ermitteln einer Reibungskompensations-Last auf Basis bzw. in Abhängigkeit von der erfassten Ist-Geschwindigkeit; und
  • - Ausüben dieser Reibungskompensations-Last auf die Achse mithilfe des, insbesondere durch den, (Achs)Antrieb.
Correspondingly, in one embodiment, the method comprises the steps:
  • - Detecting an actual speed of the axis; and
  • - Carrying out the, in particular (over) switching to the second friction compensation mode, if this speed is within a predetermined speed range, in one embodiment, if its amount exceeds a predetermined speed limit value; wherein the second friction compensation mode comprises the steps of:
  • - Determination of a friction compensation load on the basis of or as a function of the detected actual speed; and
  • - This friction compensation load is exerted on the axle with the aid of, in particular, the (axle) drive.

Dem liegt die Idee zugrunde, dass bei höheren Ist-Geschwindigkeiten die Reibung, insbesondere deren Richtung, zuverlässig auf Basis dieser Ist-Geschwindigkeiten ermittelt bzw. kompensiert werden kann.This is based on the idea that at higher actual speeds the friction, in particular its direction, can be reliably determined or compensated on the basis of these actual speeds.

Die Reibungskompensations-Last des zweiten Reibungskompensations-Modus ist in einer Ausführung eine konstante, in einer Weiterbildung von der berechneten Soll-Last unabhängige, Reibungskompensations-Last, in einer anderen Ausführung eine, insbesondere linear, mit der Ist-Geschwindigkeiten zunehmende Reibungskompensations-Last oder eine anderweit von der Ist-Geschwindigkeiten abhängige Reibungskompensations-Last.In one embodiment, the friction compensation load of the second friction compensation mode is a constant friction compensation load that is independent of the calculated target load in one development, and in another embodiment a friction compensation load that increases, in particular linearly, with the actual speeds or a friction compensation load that is otherwise dependent on the actual speeds.

In einer Ausführung umfasst das Verfahren einen Reibungskompensations-Modus, in dem der Anrieb keine oszillierende Reibungskompensations-Last in alternierenden Richtungen auf diese Achse ausübt, wobei in einer Ausführung dieser Reibungskompensations-Modus durchgeführt, insbesondere in diesen (um)geschaltet, wird, falls sowohl ein Betrag der berechneten Soll-Last innerhalb eines vorgegebenen ersten Bereichs liegt, insbesondere gleich Null ist, als auch eine, insbesondere die, erfasste Ist-Geschwindigkeit außerhalb eines, insbesondere des, vorgegebenen Geschwindigkeitsbereichs liegt, insbesondere falls ihr Betrag einen, insbesondere den, vorgegebenen Geschwindigkeitsgrenzwert unterschreitet. Dieser Reibungskompensations-Modus wird ohne Beschränkung der Allgemeinheit als dritter Reibungskompensations-Modus bezeichnet, insbesondere ohne einen bzw. den zweiten Reibungskompensations-Modus zu erfordern.In one embodiment, the method comprises a friction compensation mode in which the drive does not exert an oscillating friction compensation load in alternating directions on this axis; in one embodiment, this friction compensation mode is carried out, in particular switched to, if both an amount of the calculated target load lies within a predefined first range, in particular is equal to zero, and an, in particular the, detected actual speed is outside a, in particular the, predefined speed range, in particular if its amount is a, in particular the predefined Speed limit falls below. Without loss of generality, this friction compensation mode is referred to as the third friction compensation mode, in particular without requiring a or the second friction compensation mode.

Hierdurch kann in einer Ausführung vorteilhaft bei (gewünschtem bzw. aufrechtzuerhaltenden) Stillstand der Achse eine Belastung von Achse und/oder Antrieb und/oder ein Energieverbrauch reduziert werden, was insbesondere bei mobilen Robotern mit autonomer Energie-, insbesondere Batterieversorgung von besonderer Bedeutung ist.In one embodiment, this can advantageously reduce the load on the axis and / or drive and / or energy consumption when the axis is at a (desired or maintained) standstill, which is particularly important in mobile robots with autonomous energy, in particular battery, supply.

In einer Ausführung steigt in dem ersten Reibungskompensations-Modus ein Betrag der Reibungskompensations-Last, in einer Ausführung eine Amplitude einer oszillierenden Reibungskompensations-Last in alternierenden Richtungen, mit der Zeit wenigstens abschnittsweise, insbesondere linear und/oder über wenigstens 25% der Dauer des ersten Reibungskompensations-Modus und/oder in einer, insbesondere vorab und/oder durch einen vorgegebenen ein- oder mehrdimensionalen Anstiegsparameter, vorgegebenen Weise an. In einer Ausführung steigt die Amplitude der oszillierenden, insbesondere pulsweitenmodulierten, Reibungskompensations-Last innerhalb wenigstens einer, insbesondere jeder, Schwingung, insbesondere wenigstens eines, insbesondere jedes, Impulses innerhalb einer P(ulsweitenp)eriode, mit der Zeit an, in einer Ausführung linear und/oder in einer, insbesondere vorab und/oder durch einen vorgegebenen ein- oder mehrdimensionalen Anstiegsparameter, vorgegebenen Weise.In one embodiment, an amount of the friction compensation load increases in the first friction compensation mode, in one embodiment an amplitude of an oscillating friction compensation load in alternating directions, over time at least in sections, in particular linearly and / or over at least 25% of the duration of the first Friction compensation mode and / or in a predetermined manner, in particular in advance and / or by a predetermined one-dimensional or multi-dimensional increase parameter. In one embodiment, the amplitude of the oscillating, in particular pulse width modulated, friction compensation load increases over time within at least one, in particular each, oscillation, in particular at least one, in particular each, pulse within a P (pulse width period), in one embodiment linearly and / or in a predetermined manner, in particular in advance and / or by a predetermined one-dimensional or multi-dimensional increase parameter.

Hierdurch kann in einer Ausführung eine Bewegung(seinleitung) verbessert und so insbesondere vorteilhaft in den zweiten Reibungskompensations-Modus übergegangen werden.In this way, in one embodiment, a movement (its guidance) can be improved and, in particular, advantageously a transition can be made to the second friction compensation mode.

In einer Ausführung steigt die Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit in einer (ersten) Bewegungsrichtung der Achse wachsender berechneter Soll-Last in dieser (ersten) Bewegungsrichtung an, in einer Weiterbildung mit in der entgegengesetzten (zweiten) Bewegungsrichtung der Achse wachsender berechneter Soll-Last in dieser entgegengesetzten (zweiten) Bewegungsrichtung an. Dieser Anstieg kann insbesondere durch eine entsprechende Pulsweitenmodulation implementiert sein.In one embodiment, the friction compensation load increases in the first friction compensation mode with the calculated target load increasing in a (first) direction of movement of the axis in this (first) direction of movement, in a further development with increasing in the opposite (second) direction of movement of the axis calculated target load in this opposite (second) direction of movement. This increase can in particular be implemented by a corresponding pulse width modulation.

Dem liegt insbesondere die Idee zugrunde, dass die Richtung und der Betrag der berechneten Soll-Last die Bewegung, in der eine ruhende Achse losbricht, (mit)bestimmen. Auf diese Weise kann insbesondere im Bereich kleiner oder verschwindender Geschwindigkeiten eine Reibungskompensation gegenüber der eingangs genannten US 7,713,263 B2 verbessert werden.This is based in particular on the idea that the direction and the amount of the calculated target load (also) determine the movement in which a stationary axis breaks away. In this way, especially in the range of small or vanishing speeds, a friction compensation can be achieved with respect to the one mentioned at the beginning US 7,713,263 B2 be improved.

In einer Ausführung wird die Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit einem Tast- bzw. Aussteuergrad (duty cycle) auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last pulsweitenmoduliert.In one embodiment, the friction compensation load is pulse-width modulated in the first friction compensation mode with a duty cycle based on or as a function of the calculated target load.

Entsprechend umfasst das Verfahren in einer Ausführung die Schritte:

  • - Ermitteln eines Tastgrads auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last des Achsantriebs; und
  • - Pulsweitenmodulation der Reibungskompensations-Last mit diesem Tastgrad.
Correspondingly, in one embodiment, the method comprises the steps:
  • - Determination of a duty cycle based on or as a function of the calculated target load of the axle drive; and
  • - Pulse width modulation of the friction compensation load with this duty cycle.

Unter einem Tastgrad wird vorliegend insbesondere in fachüblicher Form das Verhältnis von Impulsdauern innerhalb einer Periode relativ zu der Periodendauer verstanden. Entsprechend entspricht in einer Ausführung ein Tastgrad von x% (0 ≤ x ≤ 100) einer Impulsdauer bzw. Pulsweite, insbesondere theoretischen bzw. Soll-Impulsdauer, einer Reibungskompensations-Last in einer ersten Richtung von x·T und einer (theoretischen bzw. Soll-)Impulsdauer bzw. Pulsweite einer Reibungskompensations-Last in einer entgegengesetzten zweiten Richtung von (100%-x).T, wobei T die Periodendauer der oszillierenden Reibungskompensations-Last ist. Der Tastgrad kann vorzugsweise innerhalb eines vorgegebenen Bereichs zwischen zwei Grenzwerten der Reibungskompensations-Last mit der Reibungskompensations-Last, insbesondere linear, von 0% auf 100% steigen, unterhalb des einen der Grenzwerte bei konstant 0% und/oder oberhalb des anderen der Grenzwerte bei konstant 100% liegen, insbesondere analog zu dem Ist-Geschwindigkeits-abhängigen Tastgrad der US 7,713,263 B2 , auf die insofern ergänzend Bezug genommen wird.In the present case, a duty cycle is understood, in particular in the usual technical form, to mean the ratio of pulse durations within a period relative to the period duration. Correspondingly, in one embodiment, a duty cycle of x% (0 x 100) corresponds to a pulse duration or pulse width, in particular theoretical or target pulse duration, a friction compensation load in a first direction of x · T and a (theoretical or target -) Pulse duration or pulse width of a friction compensation load in an opposite second direction of (100% -x) .T, where T is the period of the oscillating friction compensation load. The duty cycle can preferably increase within a predetermined range between two limit values of the friction compensation load with the friction compensation load, in particular linearly, from 0% to 100%, below one of the limit values at a constant 0% and / or above the other limit value at constant 100%, in particular analogous to the actual speed-dependent duty cycle of the US 7,713,263 B2 , to which reference is made in addition.

Nach einer Ausführung der vorliegenden Erfindung ist ein System zum Steuern eines bzw. des Roboters, insbesondere hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:

  • - Mittel zum Berechnen einer Soll-Last wenigstens eines Antriebs einer Achse des Roboters; und
  • - einen ersten Reibungskompensations-Modus, in dem der Anrieb auf die Achse eine Reibungskompensations-Last, insbesondere eine oszillierende Reibungskompensations-Last in alternierenden Richtungen, auf Basis der berechneten Soll-Last ausübt.
According to one embodiment of the present invention, a system for controlling a robot or the robot, in particular in terms of hardware and / or software, in particular in terms of programming, is set up to carry out a method described here and / or has:
  • - Means for calculating a target load of at least one drive of an axis of the robot; and
  • a first friction compensation mode in which the drive exerts a friction compensation load on the axle, in particular an oscillating friction compensation load in alternating directions, on the basis of the calculated target load.

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

  • - einen zweiten Reibungskompensations-Modus, in dem der Anrieb auf die Achse eine Reibungskompensations-Last auf Basis einer erfassten Ist-Geschwindigkeit dieser Achse ausübt, falls diese Geschwindigkeit innerhalb eines vorgegebenen Geschwindigkeitsbereichs liegt, insbesondere ihr Betrag einen vorgegebenen Geschwindigkeitsgrenzwert übersteigt; und/oder
  • - einen dritten Reibungskompensations-Modus, in dem der Anrieb keine oszillierende Reibungskompensations-Last in alternierenden Richtungen auf diese Achse ausübt, falls ein Betrag der berechneten Soll-Last in einem vorgegebenen ersten Bereich liegt, insbesondere gleich Null ist, und eine, insbesondere die, erfasste Ist-Geschwindigkeit außerhalb eines, insbesondere des, vorgegebenen Geschwindigkeitsbereichs liegt, insbesondere ihr Betrag einen, insbesondere den, vorgegebenen Geschwindigkeitsgrenzwert unterschreitet; und/oder
  • - Mittel zum Erhöhen eines Betrags der Reibungskompensations-Last, insbesondere einer Amplitude einer oszillierenden Reibungskompensations-Last in alternierenden Richtungen, in dem ersten Reibungskompensations-Modus mit der Zeit wenigstens abschnittsweise, insbesondere linear und/oder über wenigstens 25% der Dauer des ersten Reibungskompensations-Modus und/oder in einer vorgegebenen Weise; und/oder
  • - Mittel zum Erhöhen der Reibungskompensations-Last in dem ersten Reibungskompensations Modus mit in einer Bewegungsrichtung der Achse wachsender berechneter Soll-Last in dieser Bewegungsrichtung; und/oder
  • - Mittel zur Pulsweitenmodulation der Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit einem Tastgrad auf Basis der berechneten Soll-Last.
In one embodiment, the system or its means has:
  • - A second friction compensation mode in which the drive exerts a friction compensation load on the axle on the basis of a detected actual speed of this axle if this speed is within a predetermined speed range, in particular if its amount exceeds a predetermined speed limit value; and or
  • - A third friction compensation mode, in which the drive does not exert an oscillating friction compensation load in alternating directions on this axis if an amount of the calculated target load is in a predetermined first range, in particular equal to zero, and one, in particular, the detected actual speed is outside a, in particular the, predetermined speed range, in particular its amount falls below a, in particular, the predetermined speed limit value; and or
  • - Means for increasing an amount of the friction compensation load, in particular an amplitude of an oscillating friction compensation load in alternating directions, in the first friction compensation mode over time, at least in sections, in particular linearly and / or over at least 25% of the duration of the first friction compensation Mode and / or in a predetermined manner; and or
  • - Means for increasing the friction compensation load in the first friction compensation mode with the calculated target load increasing in a direction of movement of the axis in this direction of movement; and or
  • - Means for pulse width modulation of the friction compensation load in the first friction compensation mode with a duty cycle based on the calculated target load.

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), Graphikkarte (GPU) oder dergleichen, und/oder ein oder mehrere Programme oder Programmmodule aufweisen. Die Verarbeitungseinheit 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 Verarbeitungseinheit die Schritte solcher Verfahren ausführen kann und damit insbesondere den Roboter steuern kann. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere nichtflüchtiges, Speichermedium zum Speichern eines Programms bzw. mit einem darauf gespeicherten Programm aufweisen, insbesondere sein, wobei ein Ausführen dieses Programms ein System bzw. eine Steuerung, insbesondere einen Computer, dazu veranlasst, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen.A means within the meaning of the present invention can be designed in terms of hardware and / or software, in particular a data or signal-connected, in particular digital, processing, in particular microprocessor unit (CPU), graphics card (GPU), preferably with a memory and / or bus system ) or the like, and / or one or more programs or program modules. The processing unit can be designed to process commands that are implemented as a program stored in a memory system, to acquire input signals from a data bus and / or to output output signals to a data bus. A storage system can have one or more, in particular different, storage media, in particular optical, magnetic, solid-state and / or other non-volatile media. The program can be designed in such a way that it embodies or is capable of executing the methods described here, so that the processing unit can execute the steps of such methods and can thus in particular control the robot. In one embodiment, a computer program product can have, in particular, a non-volatile storage medium for storing a program or with a program stored on it, with the execution of this program causing a system or a controller, in particular a computer, to generate a program described here To carry out a procedure or one or more of its steps.

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

In einer Ausführung weist das System den Roboter auf.In one embodiment, the system has the robot.

Weist der Roboter mehrere Achsen auch, kann das hier beschriebene Verfahren in einer Ausführung achsweise für eine oder mehrere dieser Achsen durchgeführt werden.If the robot also has several axes, the method described here can be carried out in one embodiment for one or more of these axes.

Eine Ausüben einer Reibungskompensations-Last auf eine Achse durch deren (Achs)Antrieb umfasst in einer Ausführung in dem ersten und/oder zweiten Reibungskompensations-Modus ein Kommandieren der entsprechenden Last, in einer Ausführung zusätzlich zu der ebenfalls kommandierten Soll-Last bzw. als (zusätzlicher) Anteil oder anstelle der Soll-Last, an den Antrieb. Entsprechend übt in einer Ausführung der Antrieb die Reibungskompensations-Last zusätzlich zu oder anstelle der berechneten Soll-Last auf die Achse aus.The exertion of a friction compensation load on an axle by its (axle) drive includes, in one embodiment in the first and / or second friction compensation mode, commanding the corresponding load, in one embodiment in addition to the likewise commanded target load or as ( additional) portion or instead of the target load, to the drive. Correspondingly, in one embodiment, the drive exerts the friction compensation load on the axle in addition to or instead of the calculated target load.

Hierdurch kann in einer Ausführung die Reibung bei der, vorzugsweise (roboter)modellgestützten bzw. -basierten, Berechnung der Soll-Last außer Acht gelassen werden, da sie in einer Ausführung durch die (superponierte) Reibungskompensations-Last, wenigstens näherungsweise bzw. im Wesentlichen, kompensiert wird bzw. ist.As a result, in one embodiment, the friction in the, preferably (robot) model-assisted or -based calculation of the target load can be disregarded, since in one embodiment it is at least approximately or substantially due to the (superimposed) friction compensation load , is or is compensated.

In einer Ausführung wird der erste Reibungskompensations-Modus durchgeführt, insbesondere in diesen (um)geschaltet, falls ein Betrag der berechneten Soll-Last außerhalb eines vorgegebenen, insbesondere des ersten, Bereichs liegt, insbesondere falls der Betrag ungleich Null ist, und/oder die erfasste Ist-Geschwindigkeit außerhalb eines, insbesondere des, vorgegebenen Geschwindigkeitsbereichs liegt, insbesondere falls ihr Betrag einen, insbesondere den, vorgegebenen Geschwindigkeitsgrenzwert unterschreitet, insbesondere also falls sowohl ein Betrag der berechneten Soll-Last außerhalb eines vorgegebenen, insbesondere des ersten, Bereichs liegt, insbesondere falls der Betrag ungleich Null ist, als auch die erfasste Ist-Geschwindigkeit außerhalb eines, insbesondere des, vorgegebenen Geschwindigkeitsbereichs liegt, insbesondere falls ihr Betrag einen, insbesondere den, vorgegebenen Geschwindigkeitsgrenzwert unterschreitet.In one embodiment, the first friction compensation mode is carried out, in particular switched to this, if an amount of the calculated target load is outside a predetermined, in particular the first, range, in particular if the amount is not equal to zero, and / or the The detected actual speed is outside a, in particular the, predetermined speed range, in particular if its amount falls below a, in particular, the predetermined speed limit value, in particular if both an amount of the calculated target load is outside a predetermined, in particular the first, range, in particular if the amount is not equal to zero and the detected actual speed is outside a, in particular the, predetermined speed range, in particular if its amount falls below a, in particular, the predetermined speed limit value.

Wie bereits erläutert, kann der erste Reibungskompensations-Modus somit in einer Ausführung vorzugsweise bei (noch) stillstehender Achse und einer von Null (ausreichend) verschiedenen Soll-Last verwendet und dadurch vorteilhafterweise ein Haft-Gleit-Übergang bzw. ein Losfahren der Achse verbessert werden.As already explained, the first friction compensation mode can thus be used in one embodiment with the axis (still) at a standstill and a target load different from zero (sufficiently), thereby advantageously improving a stick-to-slide transition or starting the axis .

In einer Ausführung ist bzw. dient die Reibungskompensations-Last, vorzugsweise nur bzw. ausschließlich, zur Kompensation einer Reibung in dem Gelenk vorgesehen bzw. wird, vorzugsweise nur bzw. ausschließlich, hierzu verwendet.In one embodiment, the friction compensation load is or is used, preferably only or exclusively, to compensate for friction in the joint or is used, preferably only or exclusively, for this purpose.

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

  • 1: ein System nach einer Ausführung der vorliegenden Erfindung;
  • 2: ein Verfahren nach einer Ausführung der vorliegenden Erfindung;
  • 3: einen Verlauf einer Reibungskompensations-Last nach dem Stand der Technik;
  • 4 einen Verlauf eines Tastgrads einer pulsweitenmodulierten Reibungskompensations-Last nach der vorliegenden Erfindung; und
  • 5A, 5B: einen Verlauf der Reibungskompensations-Last über der Zeit für verschiedene Tastgrade.
Further advantages and features emerge from the subclaims and the exemplary embodiments. For this shows, partly schematically:
  • 1 : a system according to an embodiment of the present invention;
  • 2 : a method according to an embodiment of the present invention;
  • 3 : a history of a friction compensation load according to the prior art;
  • 4th a profile of a duty cycle of a pulse width modulated friction compensation load according to the present invention; and
  • 5A , 5B : a curve of the friction compensation load over time for different duty cycles.

1 zeigt ein System nach einer Ausführung der vorliegenden Erfindung mit einem mobilen Roboter, der eine mobile Basis 10, eine drehbare (vgl. 1: Drehachse bzw. Achsstellung q2 ) Hubsäule 11, auf der ein Portal 12 verschiebbar ist (vgl. 1: Linearachse bzw. Achsstellung q1 ), und einen an dem Portal 12 befestigten siebenachsigen Roboterarm 13 (vgl. 1: Drehachsen bzw. Achsstellungen q3 - q9) aufweist, und einer Steuerung 20 zur Durchführung des nachfolgend beschriebenen, periodisch durchgeführten Verfahrens nach einer Ausführung der vorliegenden Erfindung. 1 Figure 3 shows a system according to an embodiment of the present invention with a mobile robot that is a mobile base 10 , a rotatable (cf. 1 : Axis of rotation or axis position q 2 ) Lifting column 11 on which a portal 12th can be moved (cf. 1 : Linear axis or axis position q 1 ), and one at the portal 12th attached seven-axis robotic arm 13th (see. 1 : Rotary axes or axis positions q 3 - q 9 ), and a controller 20th for carrying out the periodically carried out method described below according to an embodiment of the present invention.

In einem Schritt S10 werden jeweils achsweise eine aktuelle Ist-Geschwindigkeit erfasst und eine Soll-Kraft bzw. ein Soll-Drehmoment Fd für den jeweiligen Achsantrieb berechnet. Exemplarisch sind hierzu die Achsantriebe 14, 15 der ersten beiden Achsen (q1 , q2 ) angedeutet.In a step S10, a current actual speed and a target force or a target torque are recorded for each axis F d calculated for the respective axle drive. The axle drives are an example of this 14th , 15th of the first two axes ( q 1 , q 2 ) indicated.

In einem Schritt S20 wird geprüft, ob die erfasst Ist-Geschwindigkeit einen vorgegebenen Geschwindigkeitsgrenzwert (betragsmäßig) übersteigt.In a step S20 it is checked whether the detected actual speed exceeds a predetermined speed limit value (in terms of amount).

Ist dies der Fall (S20: „Y“), wird ein zweiter Reibungskompensations-Modus durchgeführt, in dem der jeweilige Antrieb eine Reibungskompensations-Last auf die Achse ausübt (S30), die dieser Geschwindigkeit entgegengerichtet ist und in einer Ausführung konstant ist, in einer anderen Ausführung beispielsweise linear mit der Geschwindigkeit ansteigt. Dann kehrt das Verfahren bzw. die Steuerung zu Schritt S10 zurück.If this is the case (S20: “Y”), a second friction compensation mode is carried out in which the respective drive exerts a friction compensation load on the axle (S30) that is opposite to this speed and is constant in one embodiment in another embodiment, for example, increases linearly with the speed. Then the method or the control returns to step S10.

Andernfalls (S20: „N“) wird geprüft, ob der Betrag der in Schritt S10 berechneten Soll-Last gleich Null ist (S40).Otherwise (S20: “N”) it is checked whether the amount of the target load calculated in step S10 is equal to zero (S40).

Ist dies der Fall (S40: „Y“), wird ein dritter Reibungskompensations-Modus durchgeführt, in dem der jeweilige Antrieb keine Reibungskompensations-Last auf die Achse ausübt (S50). Dann kehrt das Verfahren bzw. die Steuerung zu Schritt S10 zurück.If this is the case (S40: “Y”), a third friction compensation mode is carried out in which the respective drive does not exert any friction compensation load on the axle (S50). Then the method or the control returns to step S10.

Andernfalls (S40: „N“) wird ein erster Reibungskompensations-Modus durchgeführt, in dem der jeweilige Antrieb eine oszillierende Reibungskompensations-Last in alternierenden Richtungen auf Basis der berechneten Soll-Last auf die Achse ausübt (S60). Dann kehrt das Verfahren bzw. die Steuerung zu Schritt S10 zurück.Otherwise (S40: “N”), a first friction compensation mode is carried out in which the respective drive exerts an oscillating friction compensation load in alternating directions on the basis of the calculated target load on the axle (S60). Then the method or the control returns to step S10.

Dabei kann die oszillierende Reibungskompensations-Last analog zu dem in 3 angedeuteten Verfahren der US 7,713,263 B2 ermittelt bzw. ausgeübt werden, auf die entsprechend ergänzend Bezug genommen und deren Inhalt vollständig in die vorliegende Offenbarung einbezogen wird, wobei im Gegensatz zu dieser der Tastgrad auf Basis der berechneten Soll-Last Fd und nicht auf Basis der erfassten Ist-Geschwindigkeit bestimmt wird.Here, the oscillating friction compensation load can be analogous to that in 3 indicated procedure of the US 7,713,263 B2 are determined or exercised, to which corresponding additional reference is made and the content of which is fully incorporated into the present disclosure, in contrast to this, the duty cycle based on the calculated target load F d and is not determined on the basis of the recorded actual speed.

Wie in 4 angedeutet, wird innerhalb eines Bereichs [-F1, +F1] zwischen den beiden Grenzwerten -F, und +F1 für die berechnete Soll-Last Fd ein Tastgrad („duty cycle“) dc der pulsweitenmodulierten Reibungskompensations-Last linear von 0% auf 100% erhöht.As in 4th indicated, is within a range [-F 1 , + F 1 ] between the two limit values -F, and + F1 for the calculated target load F d a duty cycle dc of the pulse width modulated friction compensation load increased linearly from 0% to 100%.

5A zeigt hierzu exemplarisch die pulsweitenmodulierte Reibungskompensations-Last Fc über der Zeit t mit einem Tastgrad dc = 50%, 5B mit einem Tastgrad dc = 80%. 5A shows the pulse-width modulated friction compensation load as an example F c over time t with a duty cycle dc = 50%, 5B with a duty cycle dc = 80%.

Man erkennt in 5A, 5B, dass die Amplitude der pulsweitenmodulierten Reibungskompensations-Last Fc innerhalb jedes der beiden alternierenden Impulse einer Periode T jeweils linear ansteigt, wobei der Anstieg durch den Anstiegsparameter α vorgegeben ist.One recognizes in 5A , 5B that the amplitude of the pulse width modulated friction compensation load F c within each of the two alternating pulses of a period T increases linearly in each case, the increase being determined by the increase parameter α is given.

Eine Ausführung der vorliegenden Erfindung lässt sich auch anhand eines Klotzes mit der Masse m veranschaulichen, der auf einem horizontalen Tisch mit dem Reibbeiwert µ liegt.An embodiment of the present invention can also be illustrated using a block with the mass m, which lies on a horizontal table with the coefficient of friction μ.

Für eine Soll-Bewegung xd(t) dieses Klotzes mithilfe einer horizontalen Antriebskraft F(t) und dem Modell m·d2x/dt2 = F kann eine Soll-Last Fd berechnet werden: Fd(t) = m·d2xd/dt2. In der Realität wirkt bei einer Bewegung zusätzlich eine dieser Bewegung entgegengerichtete Reibkraft FR = µ·m·g. Indem nun in oben beschriebener Weise ein Antrieb

  • - bei Stillstand und ohne Soll-Last (S40: „Y“) keine Reibungskompensations-Last auf den Klotz ausübt,
  • - ab einer gewissen erfassten Ist-Geschwindigkeit des Klotzes (S20: „Y“) zusätzlich zu der berechneten Soll-Last Fd eine dieser Geschwindigkeit entgegengerichtete Reibungskompensations-Last µ·m·g, und
  • - bei ruhendem Klotz und einer berechneten Soll-Last Fd in einer ersten Richtung, z.B. = 0,6.Fd, eine entsprechende Reibungskompensations-Last in dieser Richtung, beispielsweise durch einen entsprechenden Tastgrad wie in 5B angedeutet, kann vorteilhaft ein Energiebedarf und/oder eine Belastung reduziert und/oder der Klotz vorteilhaft bewegt, insbesondere aus dem Stillstand beschleunigt, werden.
For a target movement x d (t) of this block with the aid of a horizontal driving force F (t) and the model m · d 2 x / dt 2 = F, a target load F d can be calculated: F d (t) = m · d 2 x d / dt 2 . In reality, a movement also has a frictional force F R = µ · m · g, which is directed in the opposite direction to this movement. By now a drive in the manner described above
  • - at standstill and without a target load (S40: "Y") no friction compensation load is exerted on the block,
  • - from a certain recorded actual speed of the block (S20: "Y") in addition to the calculated target load F d a friction compensation load µ · m · g opposing this speed, and
  • - with a stationary block and a calculated target load F d in a first direction, for example = 0.6.F d , a corresponding friction compensation load in this direction, for example by a corresponding duty cycle as in FIG 5B indicated, an energy requirement and / or a load can advantageously be reduced and / or the block can advantageously be moved, in particular accelerated from a standstill.

BezugszeichenlisteList of reference symbols

1010
mobile Basismobile base
1111
HubsäuleLifting column
1212th
Portalportal
1313th
RoboterarmRobotic arm
1414th
Drehantrieb HubsäuleRotary drive lifting column
1515th
Linearantrieb PortalLinear drive portal
2020th
Rechner computer
dc; dc'dc; dc '
Tastgrad (duty cycle)Duty cycle
Fc F c
Reibungskompensations-LastFriction compensation load
Fd F d
berechnete Soll-Lastcalculated target load
F1 F 1
Soll-Last-(Grenz)WertTarget load (limit) value
F2 F 2
Reibungskompensations-Last-WertFriction compensation load value
q1-q8 q 1 -q 8
Roboterachs(stellung)enRobot axis (position) s
tt
Zeittime
TT
PeriodendauerPeriod duration
vmeas v meas
erfasste Geschwindigkeitdetected speed
v1 v 1
Geschwindigkeits-(Grenz)Wert Speed (limit) value
αα
AnstiegsparameterRise parameters

Claims (9)

Verfahren zum Steuern eines Roboters (10-15), mit dem Schritt: - Berechnen (S10) einer Soll-Last (Fd) wenigstens eines Antriebs (14, 15) einer Achse des Roboters auf Basis eines mathematischen Modells der Achse; - wobei der Anrieb in einem ersten Reibungskompensations-Modus auf die Achse eine oszillierende Reibungskompensations-Last (Fc) in alternierenden Richtungen auf Basis der berechneten Soll-Last ausübt (S60).Method for controlling a robot (10-15), comprising the step: - calculating (S10) a target load (F d ) of at least one drive (14, 15) of an axis of the robot on the basis of a mathematical model of the axis; - wherein the drive in a first friction compensation mode on the axle an oscillating friction compensation load (F c ) in alternating Exerts directions based on the calculated target load (S60). Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Roboter in einem zweiten Reibungskompensations-Modus gesteuert wird (S30), in dem der Anrieb auf die Achse eine Reibungskompensations-Last auf Basis einer erfassten Ist-Geschwindigkeit dieser Achse ausübt, falls diese Geschwindigkeit innerhalb eines vorgegebenen Geschwindigkeitsbereichs liegt.Procedure according to Claim 1 , characterized in that the robot is controlled in a second friction compensation mode (S30) in which the drive exerts a friction compensation load on the axis on the basis of a detected actual speed of this axis if this speed is within a predetermined speed range. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Roboter in einem dritten Reibungskompensations-Modus gesteuert wird (S50), in dem der Anrieb keine oszillierende Reibungskompensations-Last in alternierenden Richtungen auf diese Achse ausübt, falls ein Betrag der berechneten Soll-Last in einem vorgegebenen ersten Bereich liegt, und eine erfasste Ist-Geschwindigkeit außerhalb eines vorgegebenen Geschwindigkeitsbereichs liegt.Method according to one of the preceding claims, characterized in that the robot is controlled in a third friction compensation mode (S50) in which the drive does not exert an oscillating friction compensation load in alternating directions on this axis if an amount of the calculated target load lies in a predetermined first range, and a detected actual speed lies outside a predetermined speed range. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in dem ersten Reibungskompensations-Modus ein Betrag der Reibungskompensations-Last mit der Zeit wenigstens abschnittsweise ansteigt.Method according to one of the preceding claims, characterized in that, in the first friction compensation mode, an amount of the friction compensation load increases over time, at least in sections. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass in dem ersten Reibungskompensations-Modus ein Betrag der Reibungskompensations-Last mit der Zeit wenigstens abschnittsweise linear und/oder über wenigstens 25% der Dauer des ersten Reibungskompensations-Modus und/oder in einer vorgegebenen Weise ansteigt.Procedure according to Claim 4 , characterized in that in the first friction compensation mode an amount of the friction compensation load increases with time at least in sections linearly and / or over at least 25% of the duration of the first friction compensation mode and / or in a predetermined manner. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit in einer Bewegungsrichtung der Achse wachsender berechneter Soll-Last in dieser Bewegungsrichtung ansteigt.Method according to one of the preceding claims, characterized in that the friction compensation load in the first friction compensation mode increases with the calculated target load increasing in a direction of movement of the axis in this direction of movement. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit einem Tastgrad auf Basis der berechneten Soll-Last pulsweitenmoduliert wird.Method according to one of the preceding claims, characterized in that the friction compensation load is pulse-width modulated in the first friction compensation mode with a duty cycle based on the calculated target load. System zum Steuern eines Roboters (10-15), das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist.System for controlling a robot (10-15) which is set up to carry out a method according to one of the preceding claims. Computerprogrammprodukt mit einem Programmcode, der auf einem von einem Computer lesbaren Medium gespeichert ist, zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche 1 bis 7.Computer program product with a program code, which is stored on a medium readable by a computer, for carrying out a method according to one of the preceding Claims 1 to 7th .
DE102019127887.2A 2019-10-16 2019-10-16 Controlling a robot Active DE102019127887B3 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102019127887.2A DE102019127887B3 (en) 2019-10-16 2019-10-16 Controlling a robot
PCT/EP2020/074556 WO2021073800A1 (en) 2019-10-16 2020-09-03 Control of a robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019127887.2A DE102019127887B3 (en) 2019-10-16 2019-10-16 Controlling a robot

Publications (1)

Publication Number Publication Date
DE102019127887B3 true DE102019127887B3 (en) 2021-03-11

Family

ID=72355987

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019127887.2A Active DE102019127887B3 (en) 2019-10-16 2019-10-16 Controlling a robot

Country Status (2)

Country Link
DE (1) DE102019127887B3 (en)
WO (1) WO2021073800A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4435289C1 (en) * 1994-10-01 1996-03-21 Karlsruhe Forschzent Active friction compensator for a manual operated control
DE102007060680A1 (en) * 2007-12-17 2009-06-18 Kuka Roboter Gmbh Method and device for controlling a manipulator
US7713263B2 (en) * 1999-04-07 2010-05-11 Intuitive Surgical Operations, Inc. Friction compensation in a minimally invasive surgical apparatus
DE102017220936A1 (en) * 2017-11-23 2019-05-23 Deutsches Zentrum für Luft- und Raumfahrt e.V. Handexoskeleton and robotic arm with such a hand exoskeleton
DE102018207354B3 (en) * 2018-05-11 2019-05-29 Kuka Deutschland Gmbh Method and system for controlling a robot
DE112018001058T5 (en) * 2017-02-28 2019-11-07 Sony Corporation MEDICAL CARRIER SYSTEM AND CONTROL DEVICE

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04343690A (en) * 1991-05-22 1992-11-30 Nippon Telegr & Teleph Corp <Ntt> Joint friction compensating method for multi-joint manipulator

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4435289C1 (en) * 1994-10-01 1996-03-21 Karlsruhe Forschzent Active friction compensator for a manual operated control
US7713263B2 (en) * 1999-04-07 2010-05-11 Intuitive Surgical Operations, Inc. Friction compensation in a minimally invasive surgical apparatus
DE102007060680A1 (en) * 2007-12-17 2009-06-18 Kuka Roboter Gmbh Method and device for controlling a manipulator
DE112018001058T5 (en) * 2017-02-28 2019-11-07 Sony Corporation MEDICAL CARRIER SYSTEM AND CONTROL DEVICE
DE102017220936A1 (en) * 2017-11-23 2019-05-23 Deutsches Zentrum für Luft- und Raumfahrt e.V. Handexoskeleton and robotic arm with such a hand exoskeleton
DE102018207354B3 (en) * 2018-05-11 2019-05-29 Kuka Deutschland Gmbh Method and system for controlling a robot

Also Published As

Publication number Publication date
WO2021073800A1 (en) 2021-04-22

Similar Documents

Publication Publication Date Title
EP2905111B1 (en) Method for programming an industrial robot and associated industrial robot
DE102018001026B4 (en) Robot system with a learning control function and a learning control method
DE102008027008B4 (en) Method and device for controlling a manipulator
EP2272637B1 (en) Method and device for operating a manipulator
DE102011110902B4 (en) Safe operation of a force or impedance controlled robot in the workspace
DE102015114013B4 (en) Method and device for controlling the operation of a robot
DE102007026299A1 (en) Industrial robots and method for programming an industrial robot
DE102017003993B4 (en) Calibration of a robot
DE102017120221B4 (en) control unit
DE102019205651B3 (en) Method and system for carrying out robot applications
DE102020115658A1 (en) Adjustment assistance device
DE202019105752U1 (en) Robotic system with worktable and expense of a control program
EP3840920A1 (en) Robot control
DE102020126209A1 (en) ROBOT
DE102018207354B3 (en) Method and system for controlling a robot
EP3946827A1 (en) Determining a parameter of a force acting on a robot
DE102012022190B4 (en) Inverse kinematics
DE102019127887B3 (en) Controlling a robot
EP3535097B1 (en) Calibrating a model of a process robot and operating a process robot
DE102016009436B4 (en) Robot control that prevents shaking of a tool tip in a robot equipped with a travel axis
WO2019219790A1 (en) Robot controller
WO2023072630A2 (en) Method and system for controlling a load-carrying robot and for determining a parameter of the load of the robot
DE102020206568B4 (en) Programming system for manually programming a movement of an industrial robot, industrial robot with such a programming system and method for manually programming a movement of an industrial robot
DE102019108241B3 (en) Intuitive setting of force control for robot manipulators
WO2019224224A1 (en) Method and controller for controlling a robot

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final