DE102022207662A1 - Kopplungsloser Telebetrieb - Google Patents

Kopplungsloser Telebetrieb Download PDF

Info

Publication number
DE102022207662A1
DE102022207662A1 DE102022207662.1A DE102022207662A DE102022207662A1 DE 102022207662 A1 DE102022207662 A1 DE 102022207662A1 DE 102022207662 A DE102022207662 A DE 102022207662A DE 102022207662 A1 DE102022207662 A1 DE 102022207662A1
Authority
DE
Germany
Prior art keywords
master system
slave
master
control data
rotation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102022207662.1A
Other languages
English (en)
Inventor
Juan David Munoz Osorio
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KUKA Deutschland GmbH
Original Assignee
KUKA Deutschland GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KUKA Deutschland GmbH filed Critical KUKA Deutschland GmbH
Priority to DE102022207662.1A priority Critical patent/DE102022207662A1/de
Priority to PCT/EP2023/069915 priority patent/WO2024022895A1/de
Publication of DE102022207662A1 publication Critical patent/DE102022207662A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40146Telepresence, teletaction, sensor feedback from slave to operator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40184Compliant teleoperation, operator controls motion, system controls contact, force
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40195Tele-operation, computer assisted manual operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

Ein Verfahren für einen Telebetrieb eines Slave-Systems, aufweisend ein Erfassen von Steuerungsdaten eines Master-Systems, wobei die Steuerungsdaten des Master-Systems wenigstens einen Parameter einer Steuerung beschreiben; ein Erfassen einer relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; ein Erfassen einer relativen Rotation des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; 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; ein Ermitteln einer Rotation des Slave-Systems basierend auf der Skalierung der relativen Rotation des Master-Systems; ein Ermitteln einer Position des Slave-Systems basierend auf der relativen Positionsänderung des Master-Systems; und Steuern des Slave-Systems basierend auf der ermittelten Rotation und der ermittelten Position des Slave-Systems.

Description

  • 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: 0, s X d , s = 0, s R 0, m ( 0, m X c , m 0, m X i n i , m ) s + 0, s X i n i , s
    Figure DE102022207662A1_0001
    auf ein Slave-System übertragen werden soll bzw. wird, wobei 0,sXini,s die Ausgangposition des Slave-Systems ist, , 0,mXc,m die aktuelle Position des Master-Systems, 0,mXini,m die initiale Position des Master-Systems, s eine Skalierung darstellt und 0,sXd,s die (gewünschte) Soll-Position darstellt. 0,sR0,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,sRd,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: i n i , m R c , m = 0, m R i n i , m T 0, m R c , m
    Figure DE102022207662A1_0002
    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: i n i , m u c , m , θ = getAxisAngle ( i n i , m R c , m )
    Figure DE102022207662A1_0003
    wobei ini,muc,m, θ die Achse bzw. der Winkel ist.
  • Mit dieser Darstellung kann in einer Ausführung der Winkel durch einen Skalierungsfaktor s0 für die Drehung skalieren und in einer Ausführung, insbesondere anschließend, eine Rotationsmatrix zurückerhalten werden: θ s c = θ s o
    Figure DE102022207662A1_0004
    0, s u c , m = 0, s R 0, m 0, m R i n i , m i n i , m u c , m
    Figure DE102022207662A1_0005
    0, s R i 2 c , m = getRotationMatrix ( 0, s u c , m , θ s c )
    Figure DE102022207662A1_0006
  • 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: 0, s R d , s = 0, s R i 2 c , m 0, s R i n i , s
    Figure DE102022207662A1_0007
    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. 0, m X c e n , m = 0, m X c e n , m + k v ( D R ) ( 0, m X c , m 0, m X i n i , m ) 0, m X c , m 0, m X i n i , m
    Figure DE102022207662A1_0008
    wobei 0,mXcen,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,mXcen,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,sXd,s = 0,sR0,m(0,mXc,m - 0,mXini,m)s + 0,sXini,s eingesetzt wird: 0, s X d , s = 0, s R 0, m ( 0, m X c , m ( 0, m X i n i , m 0, m X c e n , m ) ) s + 0, s X i n i , s
    Figure DE102022207662A1_0009
  • 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: i n i , m u c , m , θ = getAxisAngle ( i n i , m R c , m )
    Figure DE102022207662A1_0010
    0, m u c , m = 0, m R i n i , m i n i , m u c , m
    Figure DE102022207662A1_0011
    θ Δ = k v 0 ( θ θ m a x )
    Figure DE102022207662A1_0012
    0, m R i 2 Δ , m = getRotationMatrix ( 0, m u c , m , θ Δ )
    Figure DE102022207662A1_0013
    0, m R i 2 c e n , m = 0, m R i 2 Δ , m 0, m R i 2 c e n , m
    Figure DE102022207662A1_0014
    wobei θmax dem Radius R des virtuellen Kugelvolumens der Geschwindigkeitssteuerung im Positionsfall entspricht. θ,mRi2cen,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,mRi2cen,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: i n i , m R c , m = ( 0, m R i 2 c e n , m 0, m R i n i , m ) T 0, m R c , m
    Figure DE102022207662A1_0015
    u i n i , m c , m , θ = getAxisAngle ( R i n i , m c , m )
    Figure DE102022207662A1_0016
    θ s c = θ s o
    Figure DE102022207662A1_0017
    u 0, s c , m = R 0, s 0, m R 0, m i 2 c e n , m R 0, m i n i , m u i n i , m c , m
    Figure DE102022207662A1_0018
    R 0, s i 2 c , m = getRotationMatrix ( u 0, s c , m , θ s c )
    Figure DE102022207662A1_0019
  • 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 fsp außerhalb der Kugel: f d , m = f c + f s p
    Figure DE102022207662A1_0020
  • 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: f 0, m s p , t = k s p r i n g , t ( D R ) ( X 0, m c , m X 0, m i n i , m ) X 0, m c , m X 0, m i n i , m
    Figure DE102022207662A1_0021
    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: f 0, m s p , r = k s p r i n g , r ( θ θ m a x ) R 0, m i n i , m u i n i , m c , m
    Figure DE102022207662A1_0022
    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: f d , m = f c + f s p k d 0, m X ˙ c , m
    Figure DE102022207662A1_0023
    wobei kd 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

Claims (10)

  1. Verfahren für einen Telebetrieb eines Slave-Systems, mit den Schritten: - Erfassen von Steuerungsdaten eines Master-Systems, wobei die Steuerungsdaten des Master-Systems wenigstens einen Parameter einer Steuerung beschreiben; - Erfassen einer relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; - Erfassen einer relativen Rotation des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; - Ermitteln einer Skalierung der relativen Rotation und/oder einer Skalierung der relativen Positionsänderung des Master-Systems basierend auf den Steuerungsdaten des Master-Systems; - Ermitteln einer Rotation des Slave-Systems basierend auf der Skalierung der relativen Rotation des Master-Systems; - Ermitteln einer Position des Slave-Systems basierend auf der relativen Positionsänderung des Master-Systems; und - Steuern des Slave-Systems basierend auf der ermittelten Rotation und der ermittelten Position des Slave-Systems.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Steuerungsdaten einen Kopplungszustand zwischen dem Master-System und dem Slave-System beschreiben, wobei das Master-System in einem gekoppelten Zustand des Kopplungszustands eine relative Positionsänderung beschreibt und in einem entkoppelten Zustand eine relative Rotation beschreibt.
  3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren ferner ein Erfassen einer Position des Master-Systems in Relation zu einem virtuellen Kugelvolumen aufweist, basierend auf den Steuerungsdaten des Master-Systems, und ein Ermitteln einer Geschwindigkeit des Slave-Systems basierend auf der erfassten Position des Master-Systems in Relation zu dem virtuellen Kugelvolumen.
  4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren ferner ein Steuern des Slave-Systems basierend auf der ermittelten Geschwindigkeit des Slave-Systems aufweist.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren Erfassen einer Rotation des Master-Systems in Relation zu einem vorbestimmten
  6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren ferner ein Steuern des Slave-Systems basierend auf der ermittelten Rotationsgeschwindigkeit des Slave-Systems aufweist.
  7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren, insbesondere wenigstens einer der Schritte des Verfahrens, insbesondere das Steuern des Slave-Systems, basierend auf wenigstens einer der nachfolgenden Gleichungen durchgeführt wird: X 0, s d , s = R 0, s 0, m ( X 0, m c , m X 0, m i n i , m ) s + X 0, s i n i , s ;
    Figure DE102022207662A1_0024
    X 0, s d , s = R 0, s 0, m ( X 0, m c , m ( X 0, m i n i , m X 0, m c e n , m ) ) s + X 0, s i n i , s ,
    Figure DE102022207662A1_0025
    insbesondere mit X 0, m c e n , m = X 0, m c e n , m + k v ( D R ) ( X 0, m c , m X 0, m i n i , m ) X 0, m c , m X 0, m i n i , m ,
    Figure DE102022207662A1_0026
    weiter insbesondere mit einer Kraftrückkopplung nach f d , m = f c + f s p ,
    Figure DE102022207662A1_0027
    insbesondere mit f 0, m s p , t = k s p r i n g , t ( D R ) ( X 0, m c , m X 0, m i n i , m ) X 0, m c , m X 0, m i n i , m .
    Figure DE102022207662A1_0028
  8. System zum Betreiben und/oder Überwachen eines Slave-Systems, insbesondere eines Roboters, das zur Durchführung eines Verfahrens nach einem der vorhergehenden Ansprüche 1 bis 7 eingerichtet ist, wobei das System ein Master-System, insbesondere ein haptisches Eingabegerät.
  9. System nach dem vorhergehenden Anspruch, wobei das System eine Eingabe, insbesondere ein Eingabegerät aufweist, die dazu eingerichtet ist, einen Kopplungszustand zu ändern.
  10. Computerprogramm oder Computerprogrammprodukt, wobei das Computerprogramm oder Computerprogrammprodukt, insbesondere auf einem computerlesbaren und/oder nicht-flüchtigen Speichermedium gespeicherte, Anweisungen enthält, die bei der Ausführung durch einen oder mehrere Computer oder ein System nach Anspruch 8 den oder die Computer oder das System dazu veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 7 durchzuführen.
DE102022207662.1A 2022-07-26 2022-07-26 Kopplungsloser Telebetrieb Pending DE102022207662A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102022207662.1A DE102022207662A1 (de) 2022-07-26 2022-07-26 Kopplungsloser Telebetrieb
PCT/EP2023/069915 WO2024022895A1 (de) 2022-07-26 2023-07-18 Kopplungsloser telebetrieb

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022207662.1A DE102022207662A1 (de) 2022-07-26 2022-07-26 Kopplungsloser Telebetrieb

Publications (1)

Publication Number Publication Date
DE102022207662A1 true DE102022207662A1 (de) 2024-02-01

Family

ID=87429487

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022207662.1A Pending DE102022207662A1 (de) 2022-07-26 2022-07-26 Kopplungsloser Telebetrieb

Country Status (2)

Country Link
DE (1) DE102022207662A1 (de)
WO (1) WO2024022895A1 (de)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784542A (en) * 1995-09-07 1998-07-21 California Institute Of Technology Decoupled six degree-of-freedom teleoperated robot system
WO2015154172A1 (en) * 2014-04-10 2015-10-15 Quanser Consulting Inc. Robotic systems and methods of operating robotic systems
US10292777B1 (en) * 2015-09-18 2019-05-21 Elytra Technologies, Llc Device and method for controlled motion of a tool
EP3484402A4 (de) * 2016-07-14 2020-03-25 Intuitive Surgical Operations Inc. Sekundäre instrumentensteuerung in einem rechnergestützten telebetriebenen system
US20230311337A1 (en) * 2020-09-07 2023-10-05 The Board Of Trustees Of The Leland Stanford Junior University Compact Paired Parallel Architecture for High-Fidelity Haptic Applications

Also Published As

Publication number Publication date
WO2024022895A1 (de) 2024-02-01

Similar Documents

Publication Publication Date Title
DE602005005306T2 (de) Steuerung der Bahn eines Greifers
EP2987592B1 (de) Verfahren zum programmieren eines industrieroboters und zugehöriger industrieroboter
DE102011079117B4 (de) Verfahren zum Programmieren eines Roboters
WO2020212147A1 (de) Verfahren zum ermitteln einer trajektorie eines roboters
DE102015008144A1 (de) Umschalten einer Steuerung eines Roboters in einen Handführ-Betriebsmodus
DE202008014481U1 (de) Tragbares Roboterkontrollgerät zum Kontrollieren einer Bewegung eines Roboters
EP3578321B1 (de) Verfahren zum verwenden mit einer maschine zum erstellen einer erweiterte-realität-anzeigeumgebung
DE102006061752A1 (de) Roboter und Verfahren zum Programmieren eines Roboters
DE102006007623A1 (de) Roboter mit einer Steuereinheit zum Steuern einer Bewegung zwischen einer Anfangspose und einer Endpose
DE102018200864B3 (de) Verfahren und System zum Steuern eines Roboters
EP3328595A2 (de) Verfahren und system zum steuern eines roboters
DE102014010638A1 (de) Verfahren und Vorrichtung zum Steuern eines Roboters
DE102018004673A1 (de) Robotersystem, das eine Geschwindigkeit anzeigt
DE102015209773B3 (de) Verfahren zur kontinuierlichen Synchronisation einer Pose eines Manipulators und einer Eingabevorrichtung
WO2019224288A1 (de) Richtungsabhängige kollisionsdetektion für einen robotermanipulator
EP3990231B1 (de) System zum vornehmen einer eingabe an einem robotermanipulator
DE102022207662A1 (de) Kopplungsloser Telebetrieb
DE102020209866B3 (de) Verfahren und System zum Betreiben eines Roboters
EP4084937B1 (de) Bewegen einer roboterfesten referenz
DE102019219930B3 (de) Verfahren und System zum Steuern eines Roboters
WO2020169302A1 (de) Verfahren und system zum durchführen einer vorgegebenen aufgabe durch einen roboter
DE102018209870B3 (de) Verfahren und System zum Überführen eines Endeffektors eines Roboters zwischen einer Endeffektorpose und einer weiteren Endeffektorpose
DE102011102314A1 (de) Anwenden von Arbeitsraumgrenzen in einem geschwindigkeitsgesteuerten Robotermechanismus
EP3741515A1 (de) Verfahren zum regeln eines roboters mit einem simulierten roboter
DE102022200943B3 (de) Steuern eines Teleroboters