-
Die vorliegende Erfindung betrifft ein Verfahren für einen Telebetrieb eines Slave-Systems, insbesondere eines Roboters, einen Roboter, sowie ein Computerprogramm bzw. Computerprogrammprodukt.
-
In den letzten Jahren haben sich Robotersysteme so entwickelt, dass sie in der Lage sind, komplexe Aufgaben zu erfüllen. Der Roboter verwendet in der Regel externe Sensoren, die ihm helfen, Objekte in der Umgebung zu erkennen und zu manipulieren. Allerdings sind die Technologien noch weit davon entfernt, alle Aufgaben zu automatisieren, weshalb die Hilfe des Menschen erforderlich ist. So sind beispielsweise Bildverarbeitungssysteme noch immer nicht in der Lage, transparente Objekte mit einem hohen Prozentsatz an Zuverlässigkeit zu erkennen. Daher sind kollaborative Aufgaben ein aktuelles Thema der Forschung. Diese Art von Aufgaben impliziert jedoch nicht immer den Menschen neben dem Roboter, entweder weil die Normen und Protokolle es nicht zulassen oder aus Gründen der Bequemlichkeit für den Menschen. Für diese Fälle ist die Teleoperation ideal. Der Mensch kann den Roboter mit Hilfe eines Kamerasystems manipulieren und Aufgaben wie Entnahme und Platzierung oder sogar komplexere Aufgaben wie Operationen durchführen. Visuelles Feedback reicht in vielen Fällen nicht aus, um eine Aufgabe zu erfüllen, ohne z. B. den Roboter oder ein zu manipulierendes Objekt zu beschädigen. Durch die Hinzufügung von haptischem Feedback kann der Mensch fühlen, was der Roboter „berührt“ und so die Aufgabe richtig ausführen. Auf dem Markt werden verschiedene Geräte (in der Regel Roboter) angeboten, mit denen ein Roboter ferngesteuert werden kann und die über eine Kraftrückmeldung verfügen. So bietet z.B. das haptische Gerät Omega der Firma Force Dimension die Möglichkeit, einen Roboter in 6 kartesischen Koordinaten (3 Translations- und 3 Rotationskoordinaten) zu steuern, wobei eine Kraftrückmeldung nur in den Translationskoordinaten möglich ist, oder das Gerät Sigma, das zusätzlich eine Kraftrückmeldung in 6 kartesischen Koordinaten bietet.
-
Aus dem Stand der Technik sind Teleoperationsgeräte (Master-Roboter) bekannt, die eine gewünschte Position an den kontrollierten Roboter (Slave-Roboter) senden, und der Slave-Roboter sendet die externen Kräfte an den Master-Roboter zurück. Die Bewegung des Slave-Roboters ist dann auf den Arbeitsraum des Master-Roboters beschränkt, wenn die Bewegung eins zu eins sein soll (1 cm Bewegung im Raum des Master-Roboters entspricht 1 cm im Raum des Slave-Roboters). Dies bedeutet, dass die Bewegung bei kleinen Master-Robotern sehr begrenzt ist. Um den Raum, in dem der Roboter-Slave arbeiten kann, zu erweitern, sind Techniken wie eine skalierende Positionssteuerung, eine Kupplungssteuerung, eine Geschwindigkeitsteuerung oder eine Blasen-Technik (englisch: „bubble technique“) bekannt.
-
Diese weisen aber je nach Anwendungsfall Probleme auf, die die Steuerung des Roboters, insbesondere räumlich oder in der Feinpositionierung, einschränken, eine Aufgabenlösung verlangsamen oder nicht intuitiv sind.
-
Aufgabe der vorliegenden Erfindung ist es daher in Ausführungen die Probleme des Stands der Technik anzugehen, insbesondere zu verbessern und/oder insbesondere eine verbesserte Steuerung für einen Telebetrieb bereitzustellen.
-
In einigen Ausführungen ist es Aufgabe der vorliegenden Erfindung, dass ein Slave-System in Translations- und Rotationskoordinaten arbeiten kann, insbesondere dazu konfiguriert ist.
-
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Ansprüche 12, 13 stellen ein System, insbesondere einen Roboter, bzw. Computerprogramm bzw. Computerprogrammprodukt zur Durchführung eines hier beschriebenen Verfahrens unter Schutz. Die Unteransprüche betreffen vorteilhafte Weiterbildungen.
-
Nach einer Ausführungsform der vorliegenden Erfindung wird ein Verfahren für einen Tele-Betrieb eines Slave-Systems bereitgestellt. Das Verfahren weist in einer Ausführung einen Schritt mit Erfassen von Steuerungsdaten eines Master-Systems auf, wobei die Steuerungsdaten des Master-Systems in einer Ausführung wenigstens einen Parameter einer Steuerung beschreiben, insbesondere einen Wert eines Kopplungszustands, der insbesondere „gekoppelt“ oder „nicht gekoppelt“ umfasst. In einer Ausführungsform weist das Verfahren ein Erfassen einer relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems auf. In einer Ausführungsform weist das Verfahren ein Erfassen einer relativen Rotation des Master-Systems basierend auf den Steuerungsdaten des Master-Systems auf. In einer Ausführungsform weist das Verfahren ein Ermitteln einer Skalierung der relativen Rotation und/oder einer Skalierung der relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems auf. In einer Ausführungsform ist ein Skalierungsfaktor gleich 1, kleiner als 1 und/oder größer als 1, insbesondere abhängig von einem Größenverhältnis von slave-System zu Master.System. In einer Ausführungsform weist das Verfahren ein Ermitteln einer Rotation des Slave-Systems basierend auf der Skalierung der relativen Rotation des Master-Systems auf. In einer Ausführungsform weist das Verfahren ein Ermitteln einer Position des Slave-Systems basierend auf der relativen Positionsänderung des Master-Systems. In einer Ausführungsform weist das Verfahren ein Steuern des Slave-Systems basierend auf der ermittelten Rotation und der ermittelten Position des Slave-Systems auf.
-
Vorteilhafterweise kann hierdurch in einer Ausführungsform ein Verfahren für einen Telebetrieb eines Slave-Systems mit Rotation und/oder Translation, insbesondere mit Rotation und/oder Translation, bereitgestellt werden.
-
In einer Ausführung ist ein Master-System ein haptisches Eingabegerät, dass dazu eingerichtet ist Translationen und Rotationen in allen Raumrichtungen, insbesondere (alle) sechs Freiheitsgrade, zu erfassen.
-
Vorteilhafterweise kann hierdurch ermöglicht werden, dass ein Slave-System, insbesondere ein Slave-Roboter, insbesondere ein Arbeitsbereich des Slave-Systems erweitert werden kann, insbesondere im Vergleich mit einem auf (rein) skalierender Positionssteuerung oder auf (reiner) Blasen-Technik basierendem System, sowohl bei translatorischen Bewegungen als auch bei rotatorischen Bewegungen.
-
Der Begriff „relative Positionsänderung“ wie hierin verwendet soll vorzugsweise als Positionsänderung im Master-System verstanden werden, die insbesondere nach folgender Gleichung:
auf ein Slave-System übertragen werden soll bzw. wird, wobei
0,sX
ini,s die Ausgangposition des Slave-Systems ist, ,
0,mX
c,m die aktuelle Position des Master-Systems,
0,mX
ini,m die initiale Position des Master-Systems, s eine Skalierung darstellt und
0,sX
d,s die (gewünschte) Soll-Position darstellt.
0,sR
0,m stellt dabei die Drehung zwischen dem Weltkoordinatensystem des Slave-Systems und dem des Master-System dar. Eine gewünschte Rotation des Slave-Systems wird in Ausführungen insbesondere als Rotationsmatrix
0,sR
d,s dargestellt, insbesondere an das Slave-System gesendet, insbesondere zum Steuern des Slave-Systems.
-
Der Begriff „relative Rotation“ wie hierin verwendet soll vorzugsweise als relative Rotation des Master-Systems verstanden werden, die insbesondere bei entsprechenden erfassten Steuerungsdaten, insbesondere einem „nicht gekoppelt“ Kopplungszustand, weiter insbesondere nach folgender Gleichung erfasst wird:
wobei auf der linken Seite das Anfangskoordinatensystem des Master-Systems bei einem „nicht gekoppelten“ bzw. „entkoppelten“ Zustand der Steuerungsdaten, insbesondere bei einer Änderung des von den Steuerungsdaten beschrieben Kopplungszustand zu „nicht gekoppelt“, angegeben ist und sich aus dem initialen Weltkoordinatensystem des Master-Systems und der aktuellen Position des Master-Systems bei einem „nicht gekoppelt“ Zustand der Steuerungsdaten, insbesondere bei einer Änderung des von den Steuerungsdaten beschrieben Kopplungszustand zu „nicht gekoppelt“, zusammensetzt.
-
Um den Skalierungsfaktor in die Rotation bzw. Drehung einzubeziehen, wird in einer Ausführung die Rotationsmatrix in eine Achsen-Winkel-Darstellung umgewandelt:
wobei
ini,mu
c,m, θ die Achse bzw. der Winkel ist.
-
Mit dieser Darstellung kann in einer Ausführung der Winkel durch einen Skalierungsfaktor s
0 für die Drehung skalieren und in einer Ausführung, insbesondere anschließend, eine Rotationsmatrix zurückerhalten werden:
-
Der Subindex i2c zeigt an, dass es sich bei der Rotationsmatrix um eine relative Rotation von der ursprünglichen zur aktuellen Pose des Master-Systems handelt. In einer Ausführung kann nachfolgend die gewünschte Rotationsmatrix des Slave-Systems ermittelt werden bzw. wird diese ermittelt, insbesondere nach:
Vorteilhafterweise kann hierdurch eine Tele-Steuerung, insbesondere eine Telebetrieb für ein Slave-System realisiert werden, das eine Skalierungssteuerung und eine Kupplungsmethode derart erweitert, dass die Tele-Steuerung in sechs Freiheitsgraden und insbesondere in verschiedenen Koordinatensystemen funktioniert.
-
In einer Ausführung der vorliegenden Erfindung wird ein Verfahren für einen Telebetrieb eines Slave-Systems bereitgestellt, insbesondere das oben beschriebene Verfahren um das nachfolgend beschriebene Verfahren erweitert. In einer Ausführung weist das Verfahren ein Erfassen einer Position des Master-Systems in Relation zu einem virtuellen Kugelvolumen auf, insbesondere basierend auf den Steuerungsdaten des Master-Systems. In einer Ausführung weist das Verfahren ferner ein Ermitteln einer (zusätzlichen) Geschwindigkeit basierend auf der erfassten Position des Master-Systems in Relation zu dem virtuellen Kugelvolumen.
-
In einer Ausführung hängt die Geschwindigkeit, insbesondere nach der folgenden Formel Ẋd,s = (Xc,m - Xini,m)kv davon ab, wie weit entfernt die (aktuelle) Position des Master-Systems von seiner Ausgangsposition ist, außerhalb des virtuellen Kugelvolumens, insbesondere in Abhängigkeit von einem Abstand der aktuellen Position des Master-Systems von einer Oberfläche des virtuellen Kugelvolumens.
-
In einer Ausführung kann die Geschwindigkeit auf Positionsebene berechnet werden, indem die Position des Kugelzentrums geändert wird.
wobei
0,mX
cen,m mit einem Nullvektor initialisiert wird. Diese Berechnung wird in einer Ausführung nur durchgeführt, wenn sich der Endeffektor des Master-Systems außerhalb des virteullen Kugelvolumens befindet, ansonsten, insbesondere in dem Fall, dass die aktuelle Position des Master-Systems innerhalb des virtuellen Kugelvolumens ist, wird
0,mX
cen,m nicht verändert. Die (gewünschte) Soll-Position des Slave-Systems wird in einer Ausführung ermittelt, indem der Mittelpunkt des virtuellen Kugelvolumens in
0,sX
d,s =
0,sR
0,m(
0,mX
c,m -
0,mX
ini,m)s +
0,sX
ini,s eingesetzt wird:
-
In einer Ausführung weist das Verfahren ein Steuern des Slave-Systems basierend auf der ermittelten Geschwindigkeit auf.
-
In einer Ausführung weist das Verfahren ferner ein Erfassen einer Rotation des Master-Systems in Relation zu einer Grenzrotation θmax und ein Ermitteln einer Rotationsgeschwindigkeit basierend auf der erfassten Rotation des Master-Systems in Relation zu der Grenzrotation θmax auf.
-
In einer Ausführung wird 0,mXcen,m auf einen Nullvektor gesetzt, basierend auf den Steuerungsdaten, insbesondere wenn der Kopplungszustand „entkoppelt“ entspricht oder als „entkoppelt“ erfasst wurde. In einer Ausführung kann hierdurch vorteilhafterweise, insbesondere durch die Einbeziehung des Kopplungszustands, einem Nutzer vorteilhafterweise die Möglichkeit gegeben werden, den Mittelpunkt des virtuellen Kugelvolumens auf der Master-Systemseite nach seinen Wünschen zu verändern, insbesondere kann hierdurch eine Position des Slave-Systems schnell(er) erreicht werden, insbesondere im Arbeitsbereich des Slave-Systems .
-
In einer Ausführung ist die Geschwindigkeit begrenzt durch kv(D - R) unter der Annahme, dass kv als Verstärkungsfaktor und R als Radius des virtuellen Kugelvolumens, konstant sind, ist die Variable, die die Geschwindigkeit beeinflusst D, und D hat in einer Ausführung ein Maximum, das vom Arbeitsbereich des Master-Systems abhängt. In anderen Worten kann eine Geschwindigkeit in einer Ausführung nur soweit erhöht werden bzw. zusätzlich gesteigert werden, wie eine maximale Entfernung des Master-Systems vom virtuellen Kugelvolumen möglich ist. Die maximale Geschwindigkeit ist in einer Ausführung gegeben durch den Abstand von der Grenze des Arbeitsbereichs des Masters zum Rand des Kugelvolumens. Durch die Positionierung des Kugelvolumenzentrums beispielsweise an einer Grenze des Arbeitsbereichs bzw. Arbeitsraums des Master-Systems, vergrößert sich dieser Abstand zur Arbeitsraumgrenze auf der anderen Seite. Hierdurch kann in einer Ausführung vorteilhafterweise eine Geschwindigkeit des Slave-Systems zusätzlich (weiter) erhöht, insbesondere eine Bewegung, ein Prozess oder dergleichen des Slave-Systems mittels hierin beschriebenen Verfahrens schnell(er) durchgeführt werden, als insbesondere mit Systemen des Stands der Technik. In anderen Worten kann in einer Ausführung durch die Verlagerung des Kugelmittelpunkts, insbesondere ein Nutzer, noch höhere Geschwindigkeiten erreichen, indem größere Bewegungen in eine Richtung außerhalb des virtuellen Kugelvolumens zugelassen werden.
-
In einer Ausführung wird für eine Geschwindigkeitssteuerung eine Drehung des „Zentrums“ im Rotationsraum ermittelt bzw. berechnet, in anderen Worten wird in einer Ausführung eine Rotation, insbesondere um eine Achse, des Master-Systems erfasst, in Relation zu einem vorbestimmten Rotationswinkel, insbesondere einem vorbestimmten Rotationswinkel θ
max, insbesondere basierend auf den Steuerungsdaten des Master-Systems, insbesondere wenn ein Kopplungszustand den Wert „entkoppelt“ aufweist. Die Richtung r, insbesondere die Richtung r der Rotation, ist in einer Ausführung durch die Richtung der relativen Bewegung auf der Master-Systemseite gegeben, während der insbesondere zur Geschwindigkeitssteuerung der Position analoge Abstand D durch den Winkel θ gegeben ist. In andere Worten kann in einer Ausführung eine Geschwindigkeitssteuerung der Rotation analog zur einer Geschwindigkeitssteuerung der Position ausgeführt werden, insbesondere mit den folgenden Gleichungen:
wobei θ
max dem Radius R des virtuellen Kugelvolumens der Geschwindigkeitssteuerung im Positionsfall entspricht.
θ,mR
i2cen,m wird in einer Ausführung mit einer Identitätsmatrix von 3x3 initialisiert. In einer Ausführung wird insbesondere analog wie bei der Position diese Berechnung nur durchgeführt, wenn sich das Master-System bzw. das Endeffektor-Koordinatensystem des Master-systems außerhalb der „Kugel“ befindet (obwohl es sich geometrisch gesehen nicht um eine Kugel handelt). Die, insbesondere vorbestimmte, Grenze für die Aktivierung der Geschwindigkeitssteuerung der Rotation ist in einer Ausführung gegeben durch θ
max d. h., wenn insbesondere θ > θ
max ist bzw. gilt, wird das Master-System, insbesondere der Endeffektor des Master-Systems als außerhalb der Rotations-„Kugel“ befindlich betrachtet, andernfalls wird
0,mR
i2cen,m nicht verändert, insbesondere dann wenn θ < θ
max ist bzw. gilt.
-
In einer Ausführung werden zur Berechnung der gewünschten Drehung des Slave-Systems die (Slave-(Gesamt)system-)Gleichungen derart geändert, dass die neue Drehung mit einbezogen wird:
-
In einer Ausführung umfasst das Verfahren das Überlagern des (verschiedenen) Geschwindigkeits-Steuerns des Slave-Systems.
-
In anderen Worten kann in einer Ausführung das Verfahren
-
In einer Ausführung weist das Verfahren ein Ermitteln einer Kraftrückkopplung vom Slave-System auf das Master-System auf.
-
Diese Kraft setzt sich aus zwei Komponenten zusammen: der Kontaktkraft und der virtuellen Federkraft f
sp außerhalb der Kugel:
-
Die Kontaktkraft fc kann in einer Ausführung entweder direkt von einem externen Kraft-/Drehmomentsensor Slave-Systemseitig gemessen, von Kraft- und/oder Drehmomentsensoren in den Gelenken und/oder Aktuatoren des Systems geschätzt oder als virtuelle Kraft unter Berücksichtigung eines Positionsfehlers des Slave-Systems berechnet werden.
-
Im Rahmen dieser Beschreibung wird nicht erörtert, wie die Kraft fc berechnet wird oder welche Folgen die Verwendung einer der verschiedener Berechnungsmethoden hat, diese Berechnugnsmethoden sind vielmehr im Stand der Technik bekannt.
-
In einer Ausführung ist die Berechnung von fsp so ausgelegt, dass es im richtigen Koordinatensystem liegt und einem Nutzer eine, insbesondere intuitive, Rückmeldung gibt, d. h. dass die Kraftrückkopplung in einer Ausführung derart ausgelegt ist, dass sie einem Nutzer zeigen kann, in welche Richtung das Master-System bewegt werden sollte, um in das virtuelle Kugelvolumens zurückzukehren, eine Geschwindigkeit von Null zu haben und/oder eine Rotationsgeschwindigkeit von Null zu haben. Ferner kann in einer Ausführungsform eine größere Kraftrückkopplung, insbesondere wenn das Master-System außerhalb des virtuellen Kugelvolumens ist, einem Nutzer eine höhere Geschwindigkeit auf der Seite des Slave-Systems anzeigen.
-
In einer Ausführung ist der translatorische Teil der Kraft, die von einer Position des Master-Systems außerhalb des virtuellen Kugelvolumens ausgeht mit dem Subindex []
t gegeben durch:
und wird insbesondere dann angewendet, wenn die Position des Master-Systems außerhalb des virtuellen Kugelvolumens ist.
-
Der Rotationsanteil der Kraft, bezeichnet durch den Subindex []
r ist gegeben durch:
und wird insbesondere dann angewendet, wenn (θ > θ
max,).
-
In einer Ausführung kann das Ermitteln einer Kraftrückkopplung ferner das Ermitteln eines Dämpfungsanteils aufweisen, insbesondere mit:
wobei k
d der Dämpfungsparameter ist.
-
Vorteilhafterweise kann hierdurch ermöglicht werden, dass eine Kraft einer Kraftrückkopplung, die vom Master-System dargestellt werden soll oder wird, gedämpft wird bzw. ist, insbesondere um eine Bedienung zu vereinfachen und/oder eine Gefahr durch eine übermäßige Kraft bei der Kraftrückkopplung zu verringern.
-
Nach einer Ausführungsform der vorliegenden Erfindung wird ein System, insbesondere ein Master-System, bereitgestellt. Das Master-System ist in einer Ausführung dazu eingerichtet ein hierin beschriebenes Verfahren durchzuführen.
-
In einigen Ausführungsformen weist das System oder seine Mittel Mittel zum Erfassen von Steuerungsdaten eines Master-Systems, Mittel zum Erfassen einer relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems, Mittel zum Erfassen einer relativen Rotation des Master-Systems basierend auf den Steuerungsdaten des Master-Systems, Mittel zum Ermitteln einer Skalierung der relativen Rotation und/oder einer Skalierung der relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems, Mittel zum Ermitteln einer Rotation des Slave-Systems basierend auf der Skalierung der relativen Rotation des Master-Systems, Mittel zum Ermitteln einer Position des Slave-Systems basierend auf der relativen Positionsänderung des Master-Systems; und/oder Mittel zum Steuern des Slave-Systems basierend auf der ermittelten Rotation und der ermittelten Position des Slave-Systems, auf.
-
In einer Ausführungsform ist das Master-System ein haptisches Eingabegerät, insbesondere ein haptisches Eingabegerät mit einer Kraftrückkopplung, insbesondere ein haptisches Eingabegerät mit einer Kraftrückkopplung und einer Dämpfung, insbesondere einer Dämpfung der Kraftrückkopplung.
-
Der Begriff „haptisches Eingabegerät“ wie hierin verwendet soll vorzugsweise als ein Eingabegerät verstanden werden, das in einer Ausführung dem Slave-System ähnelt, insbesondere eine verkleinerte Version des Slave-Systems ist, oder ein Eingabegerät, das dazu konfiguriert ist, translatorische und rotatorische Bewegungen, insbesondere Manipulation, aufzuzeichnen bzw. zu erfassen, insbesondere über Mittel zum Erfassen derselben verfügt, die dazu konfiguriert sind, eine Kraftrückkopplung darzustellen.
-
In einer Ausführung weist das haptische Eingabegerät bzw. die Eingabe eine virtuellen und/oder physikalischen Knopf, Schalter oder dergleichen auf, insbesondere umfasst die Eingabe bzw. das haptische Eingabegerät einen virtuellen und/oder physikalischen Knopf, Schalter oder dergleichen, insbesondere zum Ändern und/oder Bestimmten bzw. Einstellen eines Kopplungszustands.
-
Vorteilhafterweise kann hierdurch in einer Ausführungsform ermöglicht werden, dass wenigstens ein Arbeitsschritt mit einem teleoperierten Roboter, anstatt nur in einer simulierten Umgebung, durch Verbesserung des physikalischen Verhaltens des Systems durch insbesondere Hinzufügen einer Dämpfungskraft durchgeführt werden kann.
-
In einer Ausführungsform weist das System ein Slave-System auf, ist insbesondere mit diesem in Datenkommunikation verbunden, insbesondere drahtlos oder drahtgebunden.
-
In einer Ausführung ist das Slave-System ein Roboter, insbesondere umfasst das Slave-System in einer Ausführung wenigstens einen Roboter.
-
In einer Weiterbildung weist das Slave-System eine Kamera auf, insbesondere eine Kamera am Endeffektor des Slave-Systems, insbesondere des Roboters.
-
Die Steuerung des Systems, insbesondere des Master-Systems, weiter insbesondere des haptischen Geräts oder des Master-Roboters, erfolgt in einer Ausführung über einen Kraftregler, wobei die gewünschte Kraft fd,m direkt in den kartesischen Raum gesendet werden kann. In einer Ausführung umfasst das Master-System einen Controller, der insbesondere dazu eingerichtet ist, eine Umwandlung dieser kartesischen Kraft/e in Drehmomente, die, insbesondere direkt, auf Aktuatoren, insbesondere auf Motoren, des Slave-Systems, insbesondere des Slave-Roboters zu wirken.
-
In einer Ausführung umfasst die Steuerung des Slave-Systems, insbesondere des Slave-Roboters, einen Positionsregler, bei dem die wenigstens eine Gelenkposition, insbesondere alle Gelenkpositionen des Slave-Roboters aus einer gewünschten kartesischen Position berechnet werden, insbesondere aus Xd,s. Die Umwandlung von der kartesischen in die Gelenkposition kann in einer Ausführung mit Hilfe beliebiger Methoden der inversen Kinematik und/oder geschwindigkeitsbasierter Steuerungsansätze erfolgen, die insbesondere auch die Redundanz berücksichtigen. Die gewünschte kartesische Position kann in einer Ausführung alternativ oder ergänzend mit Hilfe einer Impedanzsteuerung auf Gelenkmomente des Slave-Systems, insbesondere des Slave-Roboters, abgebildet werden. Diese Erfindung ist in einer Ausführung unabhängig von der Steuerungsmethode, die zur Steuerung der Slave-Systems, insbesondere des Slave-Roboter, verwendet wird.
-
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 das Slave-System, weiter insbesondere das als Maschine ausgebildete Slave-System, betreiben bzw. überwachen kann.
-
Nach einer Ausführung der Erfindung wird ein Computerprogrammprodukt bereitgestellt. 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 die Steuerung bzw. ihr(e) Mittel.
-
In einer Ausführung weist das System wenigstens einen Roboter, insbesondere einen Slave-Roboter, auf.
-
Weitere Vorteile und Merkmale ergeben sich aus den Unteransprüchen und den Ausführungsbeispielen. Hierzu zeigt, teilweise schematisiert:
- 1: ein Verfahren nach einer Ausführung der vorliegenden Erfindung; und
- 2: ein System nach einer Ausführung der vorliegenden Erfindung.
-
1 zeigt ein Verfahren 100 mit den Schritten Erfassen S10 von Steuerungsdaten eines Master-Systems, wobei die Steuerungsdaten des Master-Systems wenigstens einen Parameter einer Steuerung beschreiben, Erfassen S20 einer relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems, Erfassen S30 einer relativen Rotation des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; Ermitteln S40 einer Skalierung der relativen Rotation und/oder einer Skalierung der relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; Ermitteln S50 einer Rotation des Slave-Systems basierend auf der Skalierung der relativen Rotation des Master-Systems; Ermitteln S60 einer Position des Slave-Systems basierend auf der relativen Positionsänderung des Master-Systems; und Steuern S70 des Slave-Systems basierend auf der ermittelten Rotation und der ermittelten Position des Slave-Systems.
-
2 zeigt ein System 10, wobei das System ein Master-System 20 und ein Slave-System 30 aufweist, die miteinander in Datenkommunikation verbunden sind, hier beispielsweise mittels drahtloser Datenkommunikation. Das Master-System 20 weist entsprechende Mittel 40 auf, die dazu eingerichtet sind ein wenigstens einen Schritt des Verfahrens von 1 durchzuführen.
-
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.
-
Bezugszeichenliste
-
- 10
- System
- 20
- Master-System
- 30
- Slave-System
- 40
- Mittel
- 100
- Verfahren
- S10
- Erfassen von Steuerungsdaten
- S20
- Erfassen einer relativen Positionsänderung des Master-Systems
- S30
- Erfassen einer relativen Rotation des Master-Systems
- S40
- Ermitteln einer Skalierung
- S50
- Ermitteln einer Rotation des Slave-Systems
- S60
- Ermitteln einer Position des Slave-Systems
- S70
- Steuern des Slave-Systems