WO2021073800A1 - Control of a robot - Google Patents

Control of a robot Download PDF

Info

Publication number
WO2021073800A1
WO2021073800A1 PCT/EP2020/074556 EP2020074556W WO2021073800A1 WO 2021073800 A1 WO2021073800 A1 WO 2021073800A1 EP 2020074556 W EP2020074556 W EP 2020074556W WO 2021073800 A1 WO2021073800 A1 WO 2021073800A1
Authority
WO
WIPO (PCT)
Prior art keywords
friction compensation
load
axis
robot
drive
Prior art date
Application number
PCT/EP2020/074556
Other languages
German (de)
French (fr)
Inventor
Shashank Sharma
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 WO2021073800A1 publication Critical patent/WO2021073800A1/en

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/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

Definitions

  • the present invention relates to a method and system for controlling a robot and a computer program product for carrying out the method.
  • Friction occurs in robot axes, which in particular makes hand-guided and model-based controlled movement of the robot more difficult.
  • a method for friction compensation of a medical robot is known from US Pat. No. 7,713,263 B2, 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 around zero in a first measurement value range.
  • FIG. 3 shows a duty cycle dc 'of a pulse-width-modulated friction compensation force over a measured speed v m eas.
  • the object of the present invention is to improve the control of robots.
  • Claims 7, 8 provide a system or computer program product for carrying out a method described here under protection.
  • the subclaims relate to advantageous developments.
  • a method for controlling a robot comprises the step, which is repeated, preferably cyclically, in one embodiment at regular intervals:
  • 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.
  • 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.
  • a target load can in particular have, in particular be, a target force and / or a target (rotational) torque.
  • robots 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.
  • the robot is controlled on the basis of the calculated target load (s), in particular in the first, second and / or third explained below Friction compensation mode and / or at least one (operating) mode different therefrom, or is / are the calculated target load (s) provided for this or are (also) calculated or used for this.
  • 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.
  • 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, in particular intended.
  • 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.
  • the method comprises the steps:
  • 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, a friction compensation can be improved compared to US Pat. No. 7,713,263 B2 mentioned at the beginning, particularly in the range of low or vanishing speeds.
  • the friction compensation load exerted by the drive on the axle in the first friction compensation mode is an oscillating load in alternating directions.
  • an adhesion-sliding transition in the axis can advantageously be improved or avoided.
  • 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 (to) switch, if this speed is within a predetermined speed range, in one embodiment, if its amount exceeds a predetermined speed limit value.
  • the method comprises the steps:
  • the friction compensation load of the second friction compensation mode is a constant friction compensation load which, in one development, is independent of the calculated target load, 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.
  • 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.
  • this friction compensation mode is referred to as the third friction compensation mode, in particular without requiring a or the second friction compensation mode.
  • 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.
  • 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.
  • the amplitude of the oscillating, in particular pulse-width-modulated is particularly in advance and / or by a predetermined one-dimensional or multi-dimensional increase parameter.
  • Friction compensation load within at least one, in particular each, oscillation, in particular at least one, in particular each, pulse within a P (pulse width) period, over time, in one embodiment linear and / or in a, in particular in advance and / or by a predetermined one-dimensional or multi-dimensional increase parameter, predetermined manner.
  • a movement (its guidance) can be improved and, in particular, advantageously a transition can be made to the second friction compensation mode.
  • 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.
  • 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.
  • the method comprises the steps:
  • 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.
  • a duty cycle of x% (0 ⁇ x ⁇ 100) corresponds to a pulse duration or pulse width, in particular theoretical or target pulse duration, to a friction compensation load in a first direction of xT 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 duration of the oscillating friction compensation load.
  • the duty cycle can preferably be within a predetermined range between two limit values of the
  • the friction compensation load increases 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 a constant 100%, in particular analogous to the actual speed -dependent duty cycle of US 7,713,263 B2, to which reference is made in addition.
  • 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:
  • 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.
  • 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;
  • 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, recorded actual speed outside of a, in particular, predetermined Is the speed range, in particular its magnitude falls below a, in particular, the predetermined speed limit value; and or
  • 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.
  • a computer program product can have, in particular, a non-volatile storage medium for storing a program or with a program stored thereon, with the execution of this program being a system or a controller, in particular a computer causes a method described here or one or more of its steps to be carried out.
  • one or more, in particular all, steps of the method are carried out completely or partially in an automated manner, in particular by the system or its means.
  • the system has the robot.
  • the method described here can be carried out in one embodiment for one or more of these axes.
  • 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.
  • the drive exerts the friction compensation load on the axle in addition to or instead of the calculated target load.
  • 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.
  • 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 recorded actual speed lies 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 of 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.
  • 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 .
  • 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.
  • FIG. 1 shows a system according to an embodiment of the present invention
  • Fig. 2 a method according to an embodiment of the present invention
  • 5A, 5B a profile of the friction compensation load over time for different duty cycles.
  • Fig. 1 shows a system according to an embodiment of the present invention with a mobile robot that has a mobile base 10, a rotatable (cf. Fig. 1: axis of rotation or axis pitch q2) lifting column 11 on which a portal 12 is displaceable (cf. . Fig. 1: Linear axis or axis pitch qi), and a seven-axis robot arm 13 attached to the portal 12 (see. Fig. 1: Rotary axes or axis pitches q3 - q9) and a controller 20 for carrying out the periodically carried out method described below according to an embodiment of the present invention.
  • a current actual speed is recorded for each axle and a setpoint force or a setpoint torque F d is calculated for the respective axle drive.
  • Axle drives 14, 15 of the first two axes (qi, q2) are indicated by way of example.
  • a step S20 it is checked whether the detected actual speed exceeds a predetermined speed limit value (in terms of amount).
  • step S10 it is checked whether the amount of the target load calculated in step S10 is equal to zero (S40).
  • 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.
  • the oscillating friction compensation load can be determined or exercised analogously to the method of US Pat. No. 7,713,263 B2 indicated in FIG present disclosure is included, in contrast to this, the duty cycle is determined on the basis of the calculated target load F d and not on the basis of the detected actual speed.
  • a duty cycle de of the pulse-width-modulated friction compensation load becomes linear within a range [-Fi, + Fi] between the two limit values -Fi and + F1 for the calculated target load F d increased from 0% to 100%.
  • 5A shows an example of the pulse-width modulated
  • 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 m.
  • V meas sensed speed vi speed (limit) value a slope parameter

Landscapes

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

Abstract

A method according to the invention for controlling a robot (10-15) comprises the step of: 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 exerts in a first friction compensation mode a friction compensation load (Fc) onto the axis, in particular an oscillating friction component load in alternating directions, on the basis of the calculated target load (S60).

Description

Beschreibung description
Steuerung eines Roboters Controlling a robot
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. A method for friction compensation of a medical robot is known from US Pat. No. 7,713,263 B2, 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 around zero in a first measurement value range.
Fig. 3 zeigt hierzu einen Tastgrad dc‘ einer pulsweitenmodulierten Reibungskompensations-Kraft über einer gemessenen Geschwindigkeit vmeas. For this purpose, FIG. 3 shows a duty cycle dc 'of a pulse-width-modulated friction compensation force over a measured speed v m eas.
Innerhalb des ersten Messwertbereichs [-vi, +vi] erhöht sich der Tastgrat dc‘ linear von 0% auf 100%, so dass bei vmeas > +vi eine konstante Within the first measured value range [-vi, + vi], the tactile burr dc 'increases linearly from 0% to 100%, so that with v meas > + vi a constant
Reibungskompensations-Kraft +fc in einer erste Bewegungsrichtung und bei vmeas < - vi eine betragsgleiche konstante Reibungskompensations-Kraft -fc in der Gegenrichtung ausgeübt wird. Friction compensation force + f c in a first direction of movement and at v meas <- vi 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 [-vi, +vi], insbesondere bei vmeas « 0, verbessert werden. Dieses Verfahren zeigt in der Praxis, insbesondere für schwer(gängige)(re) Roboter(achsen), Nachteile. This is intended to improve manual guidance, in particular in the range of low speeds [-vi, + vi], in particular at v meas « 0. In practice, this method shows disadvantages, especially for difficult (common) (re) robots (axes).
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 7, 8 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 7, 8 provide a system or computer program product for carrying out a method described here 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: 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:
- Berechnen einer Soll-Last wenigstens eines Achsantriebs des Roboters. - 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, in one embodiment, the robot is controlled on the basis of the calculated target load (s), in particular in the first, second and / or third explained below Friction compensation mode and / or at least one (operating) mode different therefrom, or is / are the calculated target load (s) provided for this or are (also) calculated or used for this.
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, 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: Correspondingly, in one embodiment, the method comprises the steps:
- Ermitteln einer Reibungskompensations-Last auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last des Achsantriebs; und - Determination of a friction compensation load on the basis of or as a function of the calculated target load of the axle drive; and
- Ausüben dieser Reibungskompensations-Last auf die Achse mithilfe des, insbesondere durch den, (Achs)Antrieb. - 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 As explained in the introduction, in particular a noise in a
Ist- Geschwindigkeitssignal bei kleiner oder verschwindender Geschwindigkeit zu einer fehlerhaften Reibungskompensation führen. Actual speed signal at low or zero speed 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. 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. 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, a friction compensation can be improved compared to US Pat. No. 7,713,263 B2 mentioned at the beginning, particularly in the range of low or vanishing speeds. 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 (to) switch, if this speed is within 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: Correspondingly, in one embodiment, the method comprises the steps:
- Erfassen einer Ist-Geschwindigkeit der Achse; und - Detecting an actual speed of the axis; and
- 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: - 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:
- Ermitteln einer Reibungskompensations-Last auf Basis bzw. in Abhängigkeit von der erfassten Ist-Geschwindigkeit; und - Determination of a friction compensation load on the basis of or as a function of the detected actual speed; and
- Ausüben dieser Reibungskompensations-Last auf die Achse mithilfe des, insbesondere durch den, (Achs)Antrieb. - 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 which, in one development, is independent of the calculated target load, 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, 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,
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. Friction compensation load within at least one, in particular each, oscillation, in particular at least one, in particular each, pulse within a P (pulse width) period, over time, in one embodiment linear and / or in a, in particular in advance and / or by a predetermined one-dimensional or multi-dimensional increase parameter, predetermined manner.
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, a friction compensation can be improved compared to US Pat. No. 7,713,263 B2 mentioned at the beginning, particularly in the range of low or vanishing speeds.
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: Correspondingly, in one embodiment, the method comprises the steps:
- Ermitteln eines Tastgrads auf Basis bzw. in Abhängigkeit von der berechneten Soll-Last des Achsantriebs; und - Determination of a duty cycle based on or as a function of the calculated target load of the axle drive; and
- Pulsweitenmodulation der Reibungskompensations-Last mit diesem Tastgrad. - 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-)lmpulsdauer 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 derIn 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, to a friction compensation load in a first direction of xT 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 duration of the oscillating friction compensation load. The duty cycle can preferably be within a predetermined range between two limit values of the
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. The friction compensation load increases 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 a constant 100%, in particular analogous to the actual speed -dependent duty cycle of 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: 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:
- Mittel zum Berechnen einer Soll-Last wenigstens eines Antriebs einer Achse des Roboters; und - Means for calculating a target load of at least one drive of an axis of the robot; and
- 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. 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: In one embodiment, the system or its means has:
- 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 - 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
- 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 - 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, recorded actual speed outside of a, in particular, predetermined Is the speed range, in particular its magnitude falls below a, in particular, the predetermined speed limit value; and or
- 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 - 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
- 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- 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
- Mittel zur Pulsweitenmodulation der Reibungskompensations-Last in dem ersten Reibungskompensations-Modus mit einem Tastgrad auf Basis der berechneten Soll-Last. - 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 nicht flüchtiges, Speichermedium zum Speichern eines Programms bzw. mit einem darauf gespeicherten Programm aufweisen, insbesondere sein, wobei ein Ausführen dieses Programms ein System bzw. eine Steuerung, insbesondere einen Computer, dazu veranlasst, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen. 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 thereon, with the execution of this program being a system or a controller, in particular a computer causes a method described here or one or more of its steps to be carried out.
In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel. In one embodiment, one or more, in particular all, steps of the method are carried out completely or partially in an automated manner, 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 recorded actual speed lies 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 of 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: Further advantages and features emerge from the subclaims and the exemplary embodiments. For this shows, partly schematically:
Fig. 1 : ein System nach einer Ausführung der vorliegenden Erfindung; 1 shows a system according to an embodiment of the present invention;
Fig. 2: ein Verfahren nach einer Ausführung der vorliegenden Erfindung; Fig. 2: a method according to an embodiment of the present invention;
Fig. 3: einen Verlauf einer Reibungskompensations-Last nach dem Stand der Technik; 3 shows a profile of a friction compensation load according to the prior art;
Fig. 4 einen Verlauf eines Tastgrads einer pulsweitenmodulierten4 shows a profile of a duty cycle of a pulse-width modulated
Reibungskompensations-Last nach der vorliegenden Erfindung; und Friction compensating load according to the present invention; and
Fig. 5A, 5B: einen Verlauf der Reibungskompensations-Last über der Zeit für verschiedene Tastgrade. 5A, 5B: a profile of the friction compensation load over time for different duty cycles.
Fig. 1 zeigt ein System nach einer Ausführung der vorliegenden Erfindung mit einem mobilen Roboter, der eine mobile Basis 10, eine drehbare (vgl. Fig. 1 : Drehachse bzw. Achssteilung q2) Hubsäule 11 , auf der ein Portal 12 verschiebbar ist (vgl. Fig. 1 : Linearachse bzw. Achssteilung qi), und einen an dem Portal 12 befestigten siebenachsigen Roboterarm 13 (vgl. Fig. 1 : Drehachsen bzw. Achssteilungen q3 - q9) aufweist, und einer Steuerung 20 zur Durchführung des nachfolgend beschriebenen, periodisch durchgeführten Verfahrens nach einer Ausführung der vorliegenden Erfindung. Fig. 1 shows a system according to an embodiment of the present invention with a mobile robot that has a mobile base 10, a rotatable (cf. Fig. 1: axis of rotation or axis pitch q2) lifting column 11 on which a portal 12 is displaceable (cf. . Fig. 1: Linear axis or axis pitch qi), and a seven-axis robot arm 13 attached to the portal 12 (see. Fig. 1: Rotary axes or axis pitches q3 - q9) and a controller 20 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 (qi, q2) angedeutet. In a step S10, a current actual speed is recorded for each axle and a setpoint force or a setpoint torque F d is calculated for the respective axle drive. Axle drives 14, 15 of the first two axes (qi, q2) are indicated by way of example.
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) which 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 Fig. 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. The oscillating friction compensation load can be determined or exercised analogously to the method of US Pat. No. 7,713,263 B2 indicated in FIG present disclosure is included, in contrast to this, the duty cycle is determined on the basis of the calculated target load F d and not on the basis of the detected actual speed.
Wie in Fig. 4 angedeutet, wird innerhalb eines Bereichs [-Fi, +Fi] zwischen den beiden Grenzwerten -Fi und +F1 für die berechnete Soll-Last Fd ein Tastgrad („duty cycle“) de der pulsweitenmodulierten Reibungskompensations-Last linear von 0% auf 100% erhöht. As indicated in FIG. 4, a duty cycle de of the pulse-width-modulated friction compensation load becomes linear within a range [-Fi, + Fi] between the two limit values -Fi and + F1 for the calculated target load F d increased from 0% to 100%.
Fig. 5A zeigt hierzu exemplarisch die pulsweitenmodulierte5A shows an example of the pulse-width modulated
Reibungskompensations-Last Fc über der Zeit t mit einem Tastgrad de = 50%, Fig. 5B mit einem Tastgrad de = 80%. Friction compensation load F c over time t with a duty cycle de = 50%, FIG. 5B with a duty cycle de = 80%.
Man erkennt in Fig. 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 a vorgegeben ist. It can be seen in FIGS. 5A, 5B that the amplitude of the pulse-width-modulated friction compensation load F c increases linearly within each of the two alternating pulses of a period T, the increase being predetermined by the increase parameter a.
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 m 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 m.
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-rm-g. Indem nun in oben beschriebener weise ein Antrieb For a target movement X d (t) of this block with the aid of a horizontal driving force F (t) and the model md 2 x / dt 2 = F, a target load F d can be calculated: F d (t) = md 2 X d / dt 2 In reality, a movement also has a frictional force FR = m-rm-g acting in the opposite direction to this movement. By now a drive in the manner described above
- bei Stillstand und ohne Soll-Last (S40: „Y“) keine Reibungskompensations-Last auf den Klotz ausübt, - at standstill and without a target load (S40: "Y") no friction compensation load is exerted on the block,
- 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-rm-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 Fig. 5B angedeutet, kann vorteilhaft ein Energiebedarf und/oder eine Belastung reduziert und/oder der Klotz vorteilhaft bewegt, insbesondere aus dem Stillstand beschleunigt, werden. - From a certain recorded actual speed of the block (S20: “Y”), in addition to the calculated setpoint load F d, a friction compensation load m-rm-g directed in the opposite direction to 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 indicated in FIG Energy requirement and / or a load is reduced and / or the block is advantageously moved, in particular accelerated from a standstill.
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist. Außerdem sei darauf hingewiesen, dass es sich bei den exemplarischen Ausführungen lediglich um Beispiele handelt, die den Schutzbereich, die Anwendungen und den Aufbau in keiner Weise einschränken sollen. Vielmehr wird dem Fachmann durch die vorausgehende Beschreibung ein Leitfaden für die Umsetzung von mindestens einer exemplarischen Ausführung gegeben, wobei diverse Änderungen, insbesondere in Hinblick auf die Funktion und Anordnung der beschriebenen Bestandteile, vorgenommen werden können, ohne den Schutzbereich zu verlassen, wie er sich aus den Ansprüchen und diesen äquivalenten Merkmalskombinationen ergibt. Although exemplary embodiments have been explained in the preceding description, it should be pointed out that a large number of modifications are possible. It should also be pointed out that the exemplary designs are only examples that are not intended to restrict the scope of protection, the applications and the structure in any way. Rather, the preceding description provides a person skilled in the art with guidelines for the implementation of at least one exemplary embodiment, with various changes, in particular with regard to the function and arrangement of the described components, being able to be made without departing from the scope of protection as it emerges from the claims and these equivalent combinations of features.
Bezuqszeichenliste Reference list
10 mobile Basis 10 mobile base
11 Hubsäule 11 lifting column
12 Portal 12 portal
13 Roboterarm 13 robotic arm
14 Drehantrieb Hubsäule 14 Rotary actuator lifting column
15 Linearantrieb Portal 15 linear drive portal
20 Rechner de; dc‘ Tastgrad (duty cycle) 20 calculator de; dc ‘duty cycle
Fc Reibungskompensations-Last F c friction compensation load
Fd berechnete Soll-Last F d calculated target load
Fi Soll-Last-(Grenz)Wert Fi target load (limit) value
F2 Reibungskompensations-Last-Wert qi-qs Roboterachs(stellung)en t Zeit F2 Friction compensation load value qi-qs robot axis (position) en t time
T Periodendauer T period
Vmeas erfasste Geschwindigkeit vi Geschwindigkeits-(Grenz)Wert a Anstiegsparameter V meas sensed speed vi speed (limit) value a slope parameter

Claims

Patentansprüche Claims
1. Verfahren zum Steuern eines Roboters (10-15), mit dem Schritt: 1. Procedure for controlling a robot (10-15), with the step:
- Berechnen (S10) einer Soll-Last (Fd) wenigstens eines Antriebs (14, 15) einer Achse des Roboters, insbesondere auf Basis eines mathematischen Modells der Achse; - Calculating (S10) a target load (F d ) 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;
- 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). - the drive exerting a friction compensation load (F c ), in particular an oscillating friction compensation load in alternating directions, on the axle in a first friction compensation mode on the basis of the calculated target load (S60).
2. 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, insbesondere ihr Betrag einen vorgegebenen Geschwindigkeitsgrenzwert übersteigt. 2. The method 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 based on a detected actual speed of this axis, if this speed lies within a predetermined speed range, in particular its amount exceeds a predetermined speed limit value.
3. 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, 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. 3. The method according to any 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 is in a predetermined first range, in particular is equal to zero, and a, 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.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass in dem ersten Reibungskompensations-Modus ein Betrag der Reibungskompensations-Last, insbesondere 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 vorgegebenen Weise, ansteigt. 4. The method according to any one of the preceding claims, characterized in that in the first friction compensation mode, an amount of the friction compensation load, in particular an amplitude of an oscillating friction compensation load in alternating directions, over time, at least in sections, in particular linearly and / or over time at least 25% of the duration of the first friction compensation mode and / or in a predetermined manner.
5. 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. 5. The method according to any 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.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Reibungskompensations-Last in dem ersten6. The method according to any one of the preceding claims, characterized in that the friction compensation load in the first
Reibungskompensations-Modus mit einem Tastgrad auf Basis der berechneten Soll-Last pulsweitenmoduliert wird. Friction compensation mode is pulse-width modulated with a duty cycle based on the calculated target load.
7. System zum Steuern eines Roboters (10-15), das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche eingerichtet ist und/oder aufweist: 7. System for controlling a robot (10-15), which is set up to carry out a method according to one of the preceding claims and / or has:
Mittel (20) zum Berechnen einer Soll-Last (Fd) wenigstens eines Antriebs (14, 15) einer Achse des Roboters, insbesondere auf Basis eines mathematischen Modells der Achse; und einen ersten Reibungskompensations-Modus, in dem der Anrieb auf die Achse eine Reibungskompensations-Last (Fc), insbesondere eine oszillierende Reibungskompensations-Last in alternierenden Richtungen, auf Basis der berechneten Soll-Last ausübt. Means (20) for calculating a target load (F d ) 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; and a first friction compensation mode in which the drive exerts a friction compensation load (F c ) on the axle, in particular an oscillating friction compensation load in alternating directions, on the basis of the calculated target load.
8. 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. 8. 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.
PCT/EP2020/074556 2019-10-16 2020-09-03 Control of a robot WO2021073800A1 (en)

Applications Claiming Priority (2)

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

Publications (1)

Publication Number Publication Date
WO2021073800A1 true WO2021073800A1 (en) 2021-04-22

Family

ID=72355987

Family Applications (1)

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

Country Status (2)

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

Citations (3)

* 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
US7713263B2 (en) 1999-04-07 2010-05-11 Intuitive Surgical Operations, Inc. Friction compensation in a minimally invasive surgical apparatus
DE102018207354B3 (en) * 2018-05-11 2019-05-29 Kuka Deutschland Gmbh Method and system for controlling a robot

Family Cites Families (4)

* 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
JP7003985B2 (en) * 2017-02-28 2022-01-21 ソニーグループ株式会社 Medical support arm 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

Patent Citations (3)

* 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
US7713263B2 (en) 1999-04-07 2010-05-11 Intuitive Surgical Operations, Inc. Friction compensation in a minimally invasive surgical apparatus
DE102018207354B3 (en) * 2018-05-11 2019-05-29 Kuka Deutschland Gmbh Method and system for controlling a robot

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GUANGJUN LIU ET AL: "Development of modular and reconfigurable robot with multiple working modes", 2008 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION. THE HALF-DAY WORKSHOP ON: TOWARDS AUTONOMOUS AGRICULTURE OF TOMORROW; PASADENA, CA, USA, MAY 19-23, 2008, IEEE, PISCATAWAY, NJ, USA, 19 May 2008 (2008-05-19), pages 3502 - 3507, XP031340690, ISBN: 978-1-4244-1646-2 *

Also Published As

Publication number Publication date
DE102019127887B3 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
DE102018115279B4 (en) ROBOT THAT PERFORMS LEARNING CONTROL IN APPLICATIONS THAT REQUIRE CONSTANT SPEED, AND CONTROL METHODS FOR SUCH
DE3151831A1 (en) METHOD FOR DETERMINING AN ABNORMAL STATE IN A ROBOT CONTROLLER
DE102006017193A1 (en) Method for tightening a screw connection and screwing tool
DE102015114013B4 (en) Method and device for controlling the operation of a robot
EP3056322B1 (en) Method and system for operating a multi-axis machine, in particular a robot
EP2536530B1 (en) Method for operating a pivot drive
EP3840920A1 (en) Robot control
EP3571017A1 (en) Method and device for tightening screw joints
EP3554772A1 (en) Collision monitoring of a robot
EP3408062A1 (en) Controlling a group of robots
DE102020126209A1 (en) ROBOT
DE102018207354B3 (en) Method and system for controlling a robot
EP3367185A1 (en) Drive system and its evaluation
WO2021073800A1 (en) Control of a robot
EP0264034A2 (en) Method of and device for tightening a screw connection
WO2018083008A1 (en) Calibrating a model of a process robot and operating a process robot
DE19500738C1 (en) System and method for controlling a motor-driven jointed arm
DE2165926C2 (en) Control device for the feed movement of tools on machine tools with several tool spindles
WO2023072630A2 (en) Method and system for controlling a load-carrying robot and for determining a parameter of the load of the robot
WO2019219790A1 (en) Robot controller
DE102009040194B4 (en) Method for force control
WO2019224224A1 (en) Method and controller for controlling a robot
WO2021190947A1 (en) Method for adjusting a robot arm
DE102014117733A1 (en) Parameter setting support apparatus having a function for supporting the parameter setting
EP3625628B1 (en) Regulator structure for mixed direct / indirect drive of a machine element

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20767529

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20767529

Country of ref document: EP

Kind code of ref document: A1