-
Die vorliegende Erfindung betrifft ein Verfahren und ein System zum Steuern eines Teleroboters sowie ein Computerprogramm bzw. Computerprogrammprodukt zur Durchführung des Verfahrens.
-
Teleroboter werden nach betriebsinterner Praxis mithilfe einer Eingabevorrichtung gesteuert, die ein bewegliches Stellmittel aufweist, wobei Verstellungen des Stellmittels regelungstechnisch in Antriebslasten der Antriebe des Teleroboters umgesetzt werden.
-
Eine mögliche Variante ist dabei, eine Verstellung des Stellmittels zu erfassen, hieraus eine Soll-Verstellung x
d einer roboterfesten Referenz des Teleroboters, beispielsweise seines TCPs, zu ermitteln, und die Antriebe des Teleroboters derart zu steuern, dass Antriebslasten τ der Antriebe bei einer Zunahme in einer Differenz x̃ = x - x
d zwischen Ist-Verstellung x und Soll-Verstellung x
d der roboterfesten Referenz zunehmen, um diese Differenz zu reduzieren, beispielsweise in der einfachen Form τ = J
T(q) · (K
d · x̃) mit der transponierten Jacobimatrix J
T, die Gelenkgeschwindigkeiten q und Geschwindigkeiten ẋ der roboterfesten Referenz miteinander verknüpft
und der Steifigkeitsmatrix K
d.
-
Nehmen dabei die Antriebslasten bei einer Zunahme in der Differenz stark zu bzw. ist in obigem einfachen Beispiel die Steifigkeit hoch, kann der Teleroboter präzise(r) (tele)gesteuert werden. Auf der anderen Seite kann dies beispielsweise bei einem Umgebungskontakt nachteilig sein, bei dem ein nachgiebige(re)s Verhalten wünschenswert ist, insbesondere, um Beschädigungen zu vermeiden.
-
Die
DE 10 2020 107 612 B3 betrifft ein System mit einer Eingabevorrichtung mit einer ersten Aktuatoreinheit, einer Steuereinheit, und mit einer ausführenden Vorrichtung mit einer zweiten Aktuatoreinheit, wobei die Steuereinheit gemäß eines ausgewählten Eingabeverhaltens die erste Aktuatoreinheit während einer Eingabe des Anwenders ansteuert und die Eingabe auf ein Kommando für die ausführende Vorrichtung abbildet, wobei die ausführende Vorrichtung das Kommando ausführt.
-
Die
DE 10 2019 118 897 B3 betrifft ein Verfahren zur Kollisionsdetektion für einen Robotermanipulator, aufweisend die Schritte: Ermitteln eines auf den Robotermanipulator wirkenden externen Moments und/oder einer auf den Robotermanipulator wirkenden externen Kraft, Ermitteln einer zeitabhängigen Beschleunigung des Robotermanipulators, Vergleichen des externen Moments und/oder der externen Kraft mit einem jeweiligen zeitabhängigen Grenzwert, wobei der Grenzwert abhängig von der ermittelten zeitabhängigen Beschleunigung des Robotermanipulators ist, Detektieren einer vorliegenden Kollision, wenn ein Betrag des externen Moments und/oder ein Betrag der externen Kraft den jeweiligen Grenzwert überschreitet, und Ausführen einer vorgegebenen Reaktion des Robotermanipulators auf die detektierte Kollision.
-
Die
DE 10 2019 108 390 B3 betrifft ein Verfahren zum Vorgeben einer sicheren Geschwindigkeit eines Robotermanipulators, aufweisend die Schritte: Bereitstellen einer Datenbank, wobei die Datenbank für eine Vielzahl von ausgewählten Oberflächenpunkten am Robotermanipulator einen jeweiligen Datensatz aufweist, wobei der jeweilige Datensatz für eine Vielzahl möglicher Steifigkeiten und/oder Massen eines Objekts aus der Umgebung des Robotermanipulators eine jeweilige sichere Normalgeschwindigkeit des jeweiligen der Oberflächenpunkte angibt, wobei die Normalgeschwindigkeit die zur Oberfläche eines jeweiligen der Oberflächenpunkte senkrecht stehende Komponente des Geschwindigkeitsvektors des jeweiligen der Oberflächenpunkte ist, Erfassen einer tatsächlichen Steifigkeit und/oder einer tatsächlichen Masse des Objekts aus der Umgebung des Robotermanipulators durch Vorwissen oder durch sensorisches Erfassen oder unter Annahme von unendlich, Zuordnen der erfassten tatsächlichen Steifigkeit und/oder der tatsächlichen Masse zu einer sicheren Normalgeschwindigkeit eines jeweiligen Datensatzes für den jeweiligen der Oberflächenpunkte, und Vorgeben einer Geschwindigkeit für einen jeweiligen der Oberflächenpunkte auf einer aktuellen oder geplanten Bahn des Robotermanipulators, sodass die am jeweiligen der Oberflächenpunkte auftretende Normalgeschwindigkeit kleiner oder gleich der zugeordneten sicheren Normalgeschwindigkeit ist.
-
Die
DE 10 2016 014 989 B4 betrifft ein Verfahren zur Kollisionsüberwachung eines Roboters, mit den Schritten: Ermitteln eines Ist-Wertes einer Achslast wenigstens einer Achse des Roboters und Feststellen einer Kollision des Roboters, falls eine Abweichung zwischen diesem Ist-Wert und einem Referenzwert der Achslast einen Grenzwert übersteigt, wobei der Grenzwert in Abhängigkeit von wenigstens einer vorhergehenden Abweichung zwischen Ist- und Referenzwert und/ oder wenigstens einem vorhergehenden Referenzwert und/oder der Referenzwert in Abhängigkeit von einem vorhergehenden Ist-Wert ermittelt wird.
-
Die
DE 10 2008 041 867 B4 betrifft eine Bedienvorrichtung zum manuellen Bewegen eines Roboterarms, aufweisend eine Steuerungsvorrichtung, die eingerichtet ist, zum Steuern einer Bewegung wenigstes eines zum Behandeln eines Lebewesens vorgesehenen Roboterarms vorgesehene Signale zu erzeugen, und wenigstens eine mit der Steuerungsvorrichtung gekoppelte manuelle mechanische Eingabevorrichtung, die eine Achse, einen drehbar um die Achse und/ oder längs der Achse verschiebbar gelagerten Hebel und einen Elektromotor aufweist, wobei die Steuerungsvorrichtung die Signale aufgrund eines manuellen Bewegens des Hebels der Eingabevorrichtung erzeugt, so dass der Roboterarm eine der manuellen Bewegung entsprechenden Bewegung durchführt, wobei der Elektromotor eingerichtet ist, bei einem manuellen Bewegen des Hebels der Eingabeeinrichtung eine Kraft und/oder ein Drehmoment zum zumindest teilweisen Unterdrücken einer durch einen Tremor der die Eingabevorrichtung bedienenden Person resultierenden Teilbewegung zu erzeugen, indem der Elektromotor bei einer manuellen Bewegung des Hebels längs der Achse die dieser manuellen Bewegung entgegen gerichtete Kraft auf den Hebel und/oder bei einer manuellen Bewegung des Hebels um die Achse das dieser manuellen Bewegung entgegen gerichtete Drehmoment auf den Hebel erzeugt.
-
Um die Gefahr von Beschädigungen an externen Objekten, Sachobjekten oder Personen, bei dem Arbeiten eines Roboters, insbesondere eines Kleinroboters, zu reduzieren, schlägt die
DE 102 26 853 B3 ein Verfahren zum Begrenzen der Krafteinwirkung eines Roboterteils, wie eines Roboterarms, auf ein solches externes Objekt bei einer Kollision derart vor, dass aufgrund einer bei einer Kollision auf das Objekt wirkenden maximal zugelassenen Kraft eine korrespondierende maximal zugelassene kinetische Energie des Roboterteils bestimmt wird, dass fortwährend in hinreichend kleinen Zeitintervallen die tatsächliche kinetische Energie des Roboterteils bestimmt wird und dass bei Überschreiten der maximal zulässigen Energie die tatsächliche Arbeitsgeschwindigkeit des Roboters reduziert wird.
-
Eine Aufgabe einer Ausführung der vorliegenden Erfindung ist es, das Steuern eines Teleroboters zu verbessern.
-
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 9, 10 stellen ein System bzw. Computerprogramm bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
-
Nach einer Ausführung der vorliegenden Erfindung weist ein Verfahren zum Steuern eines Teleroboters mithilfe einer Eingabevorrichtung, die ein bewegliches Stellmittel aufweist, die, vorzugsweise mehrfach wiederholten, Schritte auf:
- - Erfassen einer Verstellung des Stellmittels und einer externen, auf den Teleroboter wirkenden Last;
- - Ermitteln einer Soll-Verstellung einer roboterfesten Referenz des Teleroboters auf Basis der erfassten Verstellung des Stellmittels;
- - Erfassen einer Ist-Verstellung der roboterfesten Referenz; und
- - Steuern von Antrieben des Teleroboters auf Basis einer Differenz zwischen Ist- und Soll-Verstellung.
-
Nach einer Ausführung der vorliegenden Erfindung wird ein erster Betriebsmodus durchgeführt, falls die erfasste Last in einem ersten Bereich liegt, und ein zweiter Betriebsmodus durchgeführt, falls die erfasste Last in einem zweiten Bereich liegt.
-
Nach einer Ausführung der vorliegenden Erfindung werden die Antriebe des Teleroboters in dem ersten Betriebsmodus derart bzw. mit der Maßgabe gesteuert, dass Antriebslasten der Antriebe bei bzw. infolge einer Zunahme in einer ein- oder mehrdimensionalen Komponente der Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese Komponente der Differenz zu reduzieren, und in dem zweiten Betriebsmodus derart bzw. mit der Maßgabe gesteuert, dass Antriebslasten der Antriebe bei bzw. infolge der gleichen Zunahme in dieser Komponente der Differenz zwischen Ist- und Soll-Verstellung ebenfalls zunehmen, um diese Komponente der Differenz zu reduzieren, allerdings weniger (stark) zunehmen als in dem ersten Betriebsmodus.
-
Dadurch kann in einer Ausführung dann, wenn anhand der erfassten Last eine entsprechende Situation, in einer Ausführung ein Umgebungskontakt des Teleroboters, festgestellt wird, der Teleroboter in einer oder mehreren Richtungen bzw. Freiheitsgraden regelungstechnisch weich(er) geschaltet bzw. gesteuert werden. Auf diese Weise können in einer Ausführung vorteilhaft Belastungen des Roboters und/oder der Umgebung reduziert werden. Entsprechend kann der Teleroboter in einer Ausführung dann, wenn anhand der erfassten Last die entsprechende Situation nicht, insbesondere kein Umgebungskontakt des Teleroboters, festgestellt wird, regelungstechnisch steif(er) geschaltet bzw. gesteuert werden. Auf diese Weise kann er in einer Ausführung vorteilhaft, insbesondere präzise(r), gesteuert werden.
-
Der Teleroboter weist in einer Ausführung einen ((Tele)Roboter)Arm mit wenigstens drei, insbesondere wenigstens sechs, in einer Ausführung wenigstens sieben, Gelenken bzw. Bewegungsachsen auf. Die roboterfeste Referenz ist in einer Ausführung ortsfest bezüglich eines distalen Endflanschs des Teleroboter(arm)s, in einer Ausführung weist die roboterfeste Referenz einen Endeffektor oder TCP des Teleroboter(arm)s auf, kann insbesondere ein Endeffektor oder TCP des Teleroboter(arm)s sein.
-
Das Stellmittel ist in einer Ausführung von dem Teleroboter und/oder einer (Roboter)Steuerung des Teleroboters räumlich beabstandet. In einer Ausführung ist die Eingabevorrichtung, insbesondere eine Eingabevorrichtungssteuerung, mit dem Teleroboter und/oder einer (Roboter)Steuerung des Teleroboters signalverbunden, in einer Weiterbildung drahtgebunden, was in einer Ausführung die Sicherheit erhöhen kann, in einer anderen Weiterbildung drahtlos, was in einer Ausführung die Flexibilität und/oder Reichweite erhöhen kann. Das Stellmittel ist in einer Ausführung beweglich, insbesondere über ein oder mehrere Gelenke, an einer Basis der Eingabevorrichtung gelagert, wobei in einer Ausführung eine Pose xM des Stellmittels relativ zur Basis der Eingabevorrichtung und/oder eine Posenänderung, insbesondere Geschwindigkeit vM, des Stellmittels relativ zur Basis der Eingabevorrichtung, vorzugsweise sensorisch, als Verstellung des Stellmittels erfasst wird.
-
Eine Verstellung im Sinne der vorliegenden Erfindung umfasst in einer Ausführung allgemein eine Pose und/oder eine, insbesondere zeitliche, Posenänderung, insbesondere erste und/oder höhere Zeitableitung einer Pose, in einer Ausführung eine Geschwindigkeit, kann insbesondere eine Pose und/oder, insbesondere zeitliche, Posenänderung, insbesondere erste und/oder höhere Zeitableitung, in einer Ausführung Geschwindigkeit, sein. Eine Pose im Sinne der vorliegenden Erfindung weist in einer Ausführung eine ein-, zwei- oder dreidimensionale Position und/oder eine ein-, zwei- oder dreidimensionale Orientierung auf. Entsprechend wird zur kompakteren Darstellung insbesondere eine Pose, die stets (auch) eine Verstellung gegenüber einer Ausgangs- bzw. Referenzpose darstellt, verallgemeinernd als Verstellung bezeichnet.
-
Die Ist-Verstellung, insbesondere also eine Ist-Pose und/oder Ist-Geschwindigkeit, der roboterfesten Referenz wird in einer Ausführung sensorisch erfasst, in einer Weiterbildung auf Basis erfasster Stellungen und/oder Stellungsänderungen von Gelenken bzw. Antrieben des Teleroboters.
-
Eine Last im Sinne der vorliegenden Erfindung kann in einer Ausführung eine Kraft in einer oder mehreren Richtungen und/oder ein Drehmoment, insbesondere (jeweils) in einer oder mehreren Richtungen, insbesondere Raumrichtungen, aufweisen, insbesondere sein. Eine externe, auf den Teleroboter wirkende Last im Sinne der vorliegenden Erfindung umfasst in einer Ausführung nicht Antriebslasten der Antriebe des Teleroboters und/oder nicht eigengewichtsinduzierte Lasten, insbesondere Gewichts- und/oder Trägheitskräfte bzw. hieraus resultierende Drehmomente, des Teleroboters.
-
Die externe, auf den Teleroboter wirkende Last wird in einer Ausführung sensorisch erfasst, in einer Weiterbildung mithilfe eines ein- oder mehrachsigen Lastsensors, insbesondere also Kraft- und/oder Drehmomentsensors, an einem Endeffektor bzw. -flansch des Teleroboters und/oder auf Basis erfasster Lasten an Gelenken und/oder Antrieben des Teleroboters, vorzugsweise mithilfe eines mathematischen Modells des Teleroboters.
-
Ein Steuern im Sinne der vorliegenden Erfindung umfasst vorzugsweise ein Regeln.
-
In einer Ausführung werden die Antriebe des Teleroboters in dem ersten Betriebsmodus derart bzw. mit der Maßgabe gesteuert, dass Antriebslasten der Antriebe bei bzw. infolge einer Zunahme in wenigstens einer anderen ein- oder mehrdimensionalen Komponente der Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese andere Komponente der Differenz (ebenfalls) zu reduzieren, und in dem zweiten Betriebsmodus derart bzw. mit der Maßgabe gesteuert, dass Antriebslasten der Antriebe bei derselben Zunahme in dieser anderen Komponente der Differenz zwischen Ist- und Soll-Verstellung (eben)so zunehmen wie in dem ersten Betriebsmodus, um diese andere Komponente zu reduzieren.
-
Dadurch können in einer Ausführung der Teleroboter in der bzw. den Richtungen bzw. Freiheitsgraden der einen Komponente der Differenz zwischen Ist- und Soll-Verstellung regelungstechnisch im ersten Betriebsmodus weich(er) bzw. im zweiten Betriebsmodus steif(er) geschaltet bzw. gesteuert und auf diese Weise vorteilhaft Belastungen des Roboters und/oder der Umgebung reduziert werden, wobei der Teleroboter zugleich in der bzw. den Richtungen bzw. Freiheitsgraden der anderen Komponente der Differenz zwischen Ist- und Soll-Verstellung regelungstechnisch im ersten und zweiten Betriebsmodus gleich steif gesteuert und auf diese Weise vorteilhaft, insbesondere präzise(r), gesteuert werden kann.
-
In einer Ausführung wirkt die erfasste externe, auf den Teleroboter wirkende Last in Richtung der einen Komponente und in einer Weiterbildung nicht in Richtung der anderen Komponente, in einer Ausführung sind bzw. werden die eine und gegebenenfalls andere Komponente entsprechend ausgewählt bzw. definiert. In einer Weiterbildung ist somit die eine Komponente der Differenz diejenige Komponente der Differenz in Richtung der externen Last und die andere Komponente der Differenz eine hierzu komplementäre Komponente der Differenz, beispielsweise eine zu der einen Komponente senkrechte Komponente, in einer Ausführung sind bzw. werden die eine und gegebenenfalls andere Komponente entsprechend ausgewählt bzw. definiert. Wenn in einer Ausführung die Steifigkeit einer virtuellen Feder im zweiten Betriebsmodus gegenüber dem ersten Betriebsmodus reduziert wird, wird entsprechend in einer Weiterbildung die Steifigkeit der virtuellen Feder im zweiten Betriebsmodus gegenüber dem ersten Betriebsmodus, vorzugsweise nur, in Richtungen der externen Last reduziert und in einer Weiterbildung in wenigstens einer hierzu senkrechten Richtung nicht reduziert.
-
Unter einer Komponente wird in einer Ausführung in fachüblicher Weise ein Anteil in einer translatorischen und/oder ein Anteil in einer rotatorischen Richtung verstanden. Entsprechend ist in einer Ausführung die eine Komponente der Differenz eine (translatorische) Komponente einer translatorischen Differenz zwischen ein-, zwei- oder dreidimensionaler Ist- und Soll-Verstellung, insbesondere Position bzw. Verschiebung, und/oder eine (rotatorische) Komponente einer rotatorischen Differenz zwischen ein-, zwei- oder dreidimensionaler Ist- und Soll-Verstellung, insbesondere Orientierung bzw. Verdrehung.
-
In einer Ausführung ändert sich die Richtung der einen Komponente mit bzw. infolge (einer Änderung) der Richtung der erfassten Last und/oder stimmt die Richtung der einen Komponente mit der Richtung der erfassten Last überein.
-
Bezeichnet exemplarisch zur Verdeutlichung Δ = [Δx Δy Δz]T die translatorische Differenz zwischen Soll- und Ist-Verstellung der roboterfesten Referenz und wirkt die externe Kraft (nur) in x-Richtung, so ist in einer Ausführung die eine Komponente der Differenz bzw. der translatorische Anteil der einen Komponente der Differenz Δx. Dann werden in einer Ausführung die Antriebe des Teleroboters im ersten und zweiten Betriebsmodus derart gesteuert, dass Antriebslasten der Antriebe bei einer Zunahme von Δx zunehmen, um diese Komponente zu reduzieren, im zweiten Betriebsmodus jedoch weniger zunehmen als im ersten Betriebsmodus. In einer Weiterbildung werden die Antriebe des Teleroboters im ersten und zweiten Betriebsmodus derart gesteuert, dass Antriebslasten der Antriebe bei einer Zunahme von Δy im zweiten Betriebsmodus ebenso zunehmen wie im ersten Betriebsmodus, um diese Komponente zu reduzieren. Dies kann insbesondere durch eine entsprechende Reduzierung einer Steifigkeit einer virtuellen Feder (nur) in x-Richtung implementiert bzw. realisiert werden. Für eine rotatorische Komponente bzw. einen rotatorischen Anteil einer Komponente gilt dies entsprechend analog.
-
Dadurch können in einer Ausführung der Teleroboter in Richtung der externen, auf den Teleroboter wirkenden Last, insbesondere einer infolge eines Umgebungskontakts des Teleroboters von der Umgebung auf den Teleroboter wirkenden Kontaktlast, regelungstechnisch im ersten Betriebsmodus weich(er) bzw. im zweiten Betriebsmodus steif(er) geschaltet bzw. gesteuert und auf diese Weise vorteilhaft Belastungen des Roboters und/oder der Umgebung reduziert werden, wobei der Teleroboter zugleich in der bzw. den anderen bzw. Nicht-Kontakt-Richtungen bzw. -Freiheitsgraden regelungstechnisch im ersten und zweiten Betriebsmodus gleich (steif) gesteuert und auf diese Weise vorteilhaft, insbesondere präzise(r), gesteuert werden kann.
-
Gleichermaßen kann es auch vorteilhaft sein, die Antriebe des Teleroboters im ersten und zweiten Betriebsmodus derart zu steuern, dass Antriebslasten der Antriebe bei einer Zunahme der erfassten externen Last zunehmen, um die Differenz zwischen Soll- und Ist-Verstellung der roboterfesten Referenz zu reduzieren, im zweiten Betriebsmodus jedoch weniger zunehmen als im ersten Betriebsmodus, und zwar unabhängig von der Richtung der externen Last und/oder in allen (translatorischen und/oder rotatorischen) Richtungen.
-
Damit wird in einer Ausführung bewusst auch eine reduzierte Steifigkeit in zu einer Richtung der externen Last senkrechten Richtung und damit eine reduzierte Präzision in Kauf genommen, um in einer Ausführung eine einfache(re) und/oder schnelle(re) Implementierung zu realisieren und/oder bei Umgebungskontakt flexibler zu reagieren.
-
In einer Ausführung liegt die erfasste Last in dem ersten Bereich, falls sie einen unteren Grenzwert unterschreitet, und/oder die erfasste Last liegt in dem zweiten Bereich, falls sie einen oberen Grenzwert überschreitet, der in einer Weiterbildung gleich dem unteren Grenzwert, in einer anderen Weiterbildung größer als der untere Grenzwert ist, in einer Ausführung sind bzw. werden der erste bzw. zweite Bereich entsprechend ausgewählt bzw. definiert bzw. der erste bzw. zweite Betriebsmodus entsprechend durchgeführt.
-
Dadurch kann in einer Ausführung vorteilhaft, insbesondere einfach, präzise und/oder zuverlässig, ein Kontakt festgestellt und gegebenenfalls eine Hysterese vorgesehen sein bzw. werden.
-
In einer Ausführung ist, insbesondere in der Zunahme der Antriebslasten bei einer Zunahme in der einen Komponente einer Differenz zwischen Ist- und Soll-Verstellung, regelungstechnisch eine Hysterese zwischen einem Übergang von dem ersten in den zweiten Betriebsmodus und einem Übergang von dem zweiten in den ersten Betriebsmodus vorgesehen bzw. implementiert. In einer Weiterbildung wird aus dem ersten und/oder in den zweiten Betriebsmodus (um)geschaltet, wenn die erfasste Last einen oberen Grenzwert überschreitet, und/oder aus dem zweiten und/oder in den ersten Betriebsmodus (um)geschaltet, wenn die erfasste Last einen, insbesondere kleineren, unteren Grenzwert unterschreitet.
-
Dadurch können in einer Ausführung vorteilhaft unerwünschte Oszillationen reduziert bzw. vermieden werden.
-
In einer Ausführung werden die Antriebe in dem ersten und zweiten Betriebsmodus auf Basis einer virtuellen Feder zwischen einer Ist- und einer Soll-Pose der roboterfesten Referenz gesteuert, wobei eine Steifigkeit dieser virtuellen Feder in wenigstens einer Richtung, in einer Weiterbildung auch oder nur in Richtung der erfassten externen Last, in dem zweiten Betriebsmodus gegenüber dem ersten Betriebsmodus reduziert ist.
-
Dadurch kann in einer Ausführung die, vorzugsweise komponentenweise, Reduzierung der Zunahme der Antriebslasten der Antriebe in dem zweiten Betriebsmodus gegenüber dem ersten Betriebsmodus besonders vorteilhaft, insbesondere einfach, robust und/oder situationsangepasst, implementiert bzw. realisiert werden.
-
Zusätzlich oder alternativ werden die Antriebe in einer Ausführung in dem ersten und zweiten Betriebsmodus auch auf Basis eines mathematischen Modells des Teleroboters und/oder auch auf Basis eines virtuellen Dämpfers zwischen einer Ist- und einer Soll-Posenänderung der roboterfesten Referenz gesteuert.
-
In einer Ausführung kompensiert das mathematische Modell bzw. die entsprechenden Anteile der Antriebskräfte die Dynamik und das Gewicht des Teleroboters, der virtuelle Dämpfer reduziert Schwingungen. Hierdurch kann in einer Ausführung das Steuern des Teleroboters (weiter) verbessert, insbesondere der Teleroboter einfach(er), präzise(r), zuverlässig(er) und/oder sicherer betrieben bzw. gesteuert werden.
-
Zusätzlich oder alternativ werden die Antriebe in einer Ausführung mithilfe einer Impedanzregelung, in einer Weiterbildung einer kartesischen Impedanzregelung, und/oder Passivitätsregelung, in einer Weiterbildung Passivitätsregelung im Zeitbereich, gesteuert.
-
Durch die (kartesische) Impedanzregelung kann in einer Ausführung der Teleroboter besonders einfach, präzise, zuverlässig und/oder sicher betrieben bzw. gesteuert werden.
-
Durch die Passivitätsregelung, insbesondere die Passivitätsregelung im Zeitbereich („Time Domain Passivity Approach“), kann in einer Ausführung der Teleroboter besonders einfach, präzise, zuverlässig und/oder sicher betrieben bzw. gesteuert werden. Hierzu wird ergänzend Bezug auf Hannaford, Blake; Ryu, Jee-Hwan, Timedomain passivity control of haptic interfaces, IEEE transactions on Robotics and Automation, 2002, vol. 18, no 1, p. 1-10; Emmanuel Nuno, Luis Basañez, Romeo Ortega, Passivity-based control for bilateral teleoperation: A tutorial. Automatica, Elsevier, 2011, 47 (3), pp.485-495 und Ryu, Jee-Hwan, Artigas, Jordi Preusche, Carsten, A passive bilateral control scheme for a teleoperator with time-varying communication delay, Mechatronics (2010), 20 (7), pp. 812-823. Elsevier Bezug genommen, deren Inhalt vollumfänglich in die vorliegende Offenbarung einbezogen wird.
-
Nach einer Ausführung der vorliegenden Erfindung ist ein System zum Steuern eines Teleroboters mithilfe einer Eingabevorrichtung, die ein bewegliches Stellmittel aufweist, insbesondere hard- und/oder software-, insbesondere programmtechnisch, zur Durchführung eines hier beschriebenen Verfahrens eingerichtet und/oder weist auf:
- - Mittel zum Ermitteln einer Soll-Verstellung einer roboterfesten Referenz des Teleroboters auf Basis einer erfassten Verstellung des Stellmittels; und
- - Mittel zum Steuern von Antrieben des Teleroboters auf Basis einer Differenz zwischen einer erfassten Ist-Verstellung der roboterfesten Referenz und der ermittelten Soll-Verstellung, welches aufweist:
- - Mittel zum Durchführen eines ersten Betriebsmodus, falls eine erfasste externe, auf den Teleroboter wirkende Last in einem ersten Bereich liegt; und
- - Mittel zum Durchführen eines zweiten Betriebsmodus, falls die erfasste Last in einem zweiten Bereich liegt;
wobei das Mittel zum Durchführen eines ersten Betriebsmodus Mittel aufweist zum Steuern der Antriebe des Teleroboters in dem ersten Betriebsmodus derart, dass Antriebslasten der Antriebe bei einer Zunahme in einer ein- oder mehrdimensionalen Komponente der Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese Komponente zu reduzieren; und
das Mittel zum Durchführen eines zweiten Betriebsmodus Mittel aufweist zum Steuern der Antriebe des Teleroboters in dem zweiten Betriebsmodus derart, dass Antriebslasten der Antriebe bei der gleichen Zunahme in dieser Komponente der Differenz zwischen Ist- und Soll-Verstellung ebenfalls zunehmen, um diese Komponente zu reduzieren, jedoch weniger zunehmen als in dem ersten Betriebsmodus.
-
In einer Ausführung weist das System bzw. sein(e) Mittel auf:
- - Mittel zum Erfassen einer bzw. der Verstellung des Stellmittels; und/oder
- - Mittel zum Erfassen einer bzw. der externen, auf den Teleroboter wirkenden Last; und/oder
- - Mittel zum Erfassen einer bzw. der Ist-Verstellung der roboterfesten Referenz.
-
In einer Ausführung weist das Mittel zum Durchführen eines ersten Betriebsmodus Mittel auf zum Steuern der Antriebe des Teleroboters in dem ersten Betriebsmodus derart, dass Antriebslasten der Antriebe bei einer Zunahme in wenigstens einer anderen ein- oder mehrdimensionalen Komponente der Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese andere Komponente zu reduzieren; und das Mittel zum Durchführen eines zweiten Betriebsmodus weist Mittel auf zum Steuern der Antriebe des Teleroboters in dem zweiten Betriebsmodus derart, dass in dem zweiten Betriebsmodus die Antriebe des Teleroboters derart gesteuert werden, dass Antriebslasten der Antriebe bei derselben Zunahme in dieser anderen Komponente der Differenz zwischen Ist- und Soll-Verstellung ebenso zunehmen wie in dem ersten Betriebsmodus, um diese andere Komponente zu reduzieren.
-
In einer Ausführung weisen das Mittel zum Durchführen eines ersten Betriebsmodus und das Mittel zum Durchführen eines zweiten Betriebsmodus Mittel auf zum Steuern der Antriebe des Teleroboters in dem ersten bzw. zweiten Betriebsmodus derart, dass die Antriebe in dem ersten und zweiten Betriebsmodus auf Basis einer virtuellen Feder zwischen einer Ist- und einer Soll-Pose der roboterfesten Referenz gesteuert werden, wobei eine Steifigkeit dieser virtuellen Feder in wenigstens einer Richtung, insbesondere auch oder nur in Richtung der erfassten externen Last, in dem zweiten Betriebsmodus gegenüber dem ersten Betriebsmodus reduziert ist.
-
In einer Ausführung weisen das Mittel zum Durchführen eines ersten Betriebsmodus und das Mittel zum Durchführen eines zweiten Betriebsmodus Mittel auf zum Steuern der Antriebe des Teleroboters in dem ersten bzw. zweiten Betriebsmodus auch auf Basis eines mathematischen Modells des Teleroboters und/oder auch auf Basis eines virtuellen Dämpfers zwischen einer Ist- und einer Soll-Posenänderung der roboterfesten Referenz.
-
In einer Ausführung weisen das Mittel zum Durchführen eines ersten Betriebsmodus und das Mittel zum Durchführen eines zweiten Betriebsmodus Mittel auf zum Steuern der Antriebe des Teleroboters in dem ersten bzw. zweiten Betriebsmodus mithilfe einer Impedanz- und/oder Passivitätsregelung, insbesondere einer kartesischen Impedanzregelung und/oder Passivitätsregelung im Zeitbereich.
-
Ein System und/oder ein Mittel im Sinne der vorliegenden Erfindung kann hard- und/oder softwaretechnisch ausgebildet sein, insbesondere wenigstens 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 Teleroboter steuern kann. Ein Computerprogrammprodukt kann in einer Ausführung ein, insbesondere computerlesbares und/oder nicht-flüchtiges, Speichermedium zum Speichern eines Programms bzw. von Anweisungen bzw. mit einem darauf gespeicherten Programm bzw. mit darauf gespeicherten Anweisungen aufweisen, insbesondere sein. In einer Ausführung veranlasst ein Ausführen dieses Programms bzw. dieser Anweisungen durch ein System bzw. eine Steuerung, insbesondere einen Computer oder eine Anordnung von mehreren Computern, das System bzw. die Steuerung, insbesondere den bzw. die Computer, dazu, ein hier beschriebenes Verfahren bzw. einen oder mehrere seiner Schritte auszuführen, bzw. sind das Programm bzw. die Anweisungen hierzu eingerichtet.
-
In einer Ausführung werden ein oder mehrere, insbesondere alle, Schritte des Verfahrens vollständig oder teilweise automatisiert durchgeführt, insbesondere durch das System bzw. sein(e) Mittel.
-
In einer Ausführung weist das System den Teleroboter auf.
-
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
- 1: ein System zum Steuern eines Teleroboters mithilfe einer Eingabevorrichtung nach einer Ausführung der vorliegenden Erfindung; und
- 2: ein Verfahren zum Steuern des Teleroboters mithilfe der Eingabevorrichtung nach einer Ausführung der vorliegenden Erfindung.
-
1, 2 zeigen ein System bzw. Verfahren nach einer Ausführung der vorliegenden Erfindung zum Steuern eines Teleroboter(arm)s 1 mithilfe einer Eingabevorrichtung, die eine Basis 2.1, ein relativ zur Basis 2.1 bewegliches Stellmittel 3 und eine Eingabevorrichtungssteuerung 2.2 aufweist, über eine Robotersteuerung 4, die drahtlos oder drahtgebunden mit der Eingabevorrichtungssteuerung 2.2 kommuniziert. Die Eingabevorrichtungssteuerung 2.2 kann in die Basis 2.1 integriert sein.
-
In einem Schritt S10 wird eine Verstellung des Stellmittels 3 erfasst, beispielsweise dessen Geschwindigkeit ẋM = vM mithilfe und gegenüber bzw. relativ zu der Basis 2.1 gemessen.
-
Außerdem wird in Schritt S10 eine externe, auf den Teleroboter wirkenden Kraft Fext erfasst, zum Beispiel mithilfe eines Kraft-Momenten-Sensors 6 oder auch auf Basis erfasster Lasten an Gelenken und/oder Antrieben 1.1 - 1.6 des Teleroboters, vorzugsweise mithilfe eines mathematischen Modells des Teleroboters.
-
In einem Schritt S20 wird aus der erfassten Verstellung ẋM = vM des Stellmittels 3 mithilfe einer Zeitintegration ∫ ẋMdt und einer Projektion f, die insbesondere auch eine Identität sein kann, eine Soll-Verstellung xd einer roboterfesten Referenz 5 ermittelt. Natürlich können Verstellungen des Stellmittels auch anders als identisch auf Soll-Verstellungen der roboterfesten Referenz abgebildet werden, beispielsweise skaliert, in Vorzugsrichtungen oder dergleichen.
-
Außerdem wird in Schritt S20 eine Ist-Verstellung x der roboterfesten Referenz 5 erfasst, beispielsweise auf Basis der Stellungen der Gelenke bzw. Antriebe 1.1 - 1.6 und einer Vorwärtskinematik des Teleroboters.
-
In einem Schritt S30 werden die Richtung u
fe der erfassten externen, auf den Teleroboter wirkenden Kraft F
ext, vorzugsweise in der allgemeinen Form
, und eine Rotationsmatrix
0R
f ermittelt, die eine Drehung um eine Achse u, welche senkrecht zum Einheitsvektor der z-Achse und senkrecht zu der unzulässigen Richtung -u
fe orientiert ist,
um den Winkel
vermittelt, und die kartesischen Fehler
mit dieser Rotationsmatrix in ein zur externen Kraft ausgerichtetes Koordinatensystem gedreht, vorzugsweise in der allgemeinen Form
-
Dann wird der Wert des Elements k
3,3 der Steifigkeitsmatrix
für den Zeit- bzw. Sampleschritt n wie folgt ermittelt:
mit den konstanten, vorgegebenen Werten k
high > k
low und F
high > F
low. Die vorgegebenen Werte der Elemente k
1,1, k
2,2 der Steifigkeitsmatrix bleiben hingegen konstant.
-
Dann werden in einem Schritt S40 Soll-Antriebslaste τ auf Basis eines mathematischen Modells des Teleroboters, vorzugsweise in der allgemeinen Form
mit der Trägheitsmatrix Δ(x) des Teleroboters, dem Vektor µ(x, ẋ) der Kreisel- bzw. Coriolis- und Zentrifugallasten und den Gravitationslasten F
g(x) im kartesischen Arbeitsraum, auf Basis eines virtuellen Dämpfers zwischen einer Ist- und einer Soll-Posenänderung der roboterfesten Referenz, vorzugsweise in der allgemeinen Form
mit der Dämpfungsmatrix D
d, und mithilfe einer kartesischen Impedanzregelung, vorzugsweise in der allgemeinen Form
ermittelt und die Antriebe auf Basis, insbesondere zum Erreichen bzw. Ausüben, dieser Soll-Antriebslasten gesteuert, wobei zur Vereinfachung ẍ
d = 0 gewählt sein kann.
-
Man erkennt, dass dann, wenn die externe, auf den Teleroboter wirkende Kraft Fext den unteren Grenzwert Flow unterschreitet, ein erster Betriebsmodus durchgeführt wird, in dem die Antriebe des Teleroboters 1 derart gesteuert werden, dass Antriebslasten der Antriebe bei einer Zunahme in einer Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese Differenz zu reduzieren.
-
Wenn die externe, auf den Teleroboter wirkende Last Fext den oberen Grenzwert Fhigh überschreitet, wird ein zweiter Betriebsmodus durchgeführt, in dem die Antriebe des Teleroboters 1 ebenfalls derart gesteuert werden, dass Antriebslasten der Antriebe bei einer Zunahme in einer Differenz zwischen Ist- und Soll-Verstellung zunehmen, um diese Differenz zu reduzieren. Allerdings ist hierbei die Steifigkeit einer virtuellen Feder in der Komponente, die der externen Kraft Fext entspricht, gegenüber dem ersten Betriebsmodus reduziert, so dass die Antriebslasten der Antriebe bei der gleichen Zunahme in dieser Komponente der Differenz zwischen Ist- und Soll-Verstellung weniger zunehmen als in dem ersten Betriebsmodus. In der anderen, komplementären Komponente der Differenz bleibt die Steifigkeitsmatrix hingegen konstant, so dass hier die Antriebslasten der Antriebe im ersten und zweiten Betriebsmodus gleich zunehmen. Man erkennt auch, dass zwischen dem Umschalten zwischen den beiden Werten khigh, klow eine Hysterese vorgesehen ist.
-
Obwohl in der vorhergehenden Beschreibung exemplarische Ausführungen erläutert wurden, sei darauf hingewiesen, dass eine Vielzahl von Abwandlungen möglich ist.
-
So ist das Ausführungsbeispiel anhand einer externen Kraft und der z-Koordinate erläutert, ohne hierauf beschränkt zu sein. Dem Fachmann ist anhand obiger Ausführungen klar, dass beispielsweise auch ein externes Drehmoment und/oder andere Implementierungen, insbesondere Berücksichtigung der der externen Last entsprechenden Komponente der Differenz, analog möglich sind. Beispielsweise kann für ein externes Drehmoment analog eine Richtung und entsprechende Rotationsmatrix ermittelt und ein kartesischer Fehler damit transformiert werden.
-
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.
-
Bezugszeichenliste
-
- 1
- Teleroboter
- 1.1-1.6
- Antrieb
- 2.1
- Eingabevorrichtungs-Basis
- 2.2
- Eingabevorrichtungssteuerung
- 3
- Stellmittel
- 4
- Robotersteuerung
- 5
- roboterfeste Referenz
- 6
- Kraft-Momenten-Sensor