-
Die vorliegende Erfindung betrifft Verfahren und Mittel zum Handhaben eines Objekts, insbesondere eines schweren, sperrigen oder aus anderen Gründen unhandlichen Objekts, z. B. in einem Lager, einer Produktionsanlage oder dergleichen.
-
Aus
CN 102 581 852 A ist ein Verfahren zum Handhaben eines Objekts bekannt, bei dem ein Eingabewerkzeug an einem von einem Manipulator gehaltenen und durch diesen zu bewegenden Objekt angebracht wird und durch Ziehen oder Drücken eines Betätigungshebels am Eingabewerkzeug eine Bewegung des Objekts gesteuert wird. Eine intuitive Steuerung von Bewegungen des Objekts ist mit diesem Eingabewerkzeug allerdings nur dann möglich, wenn das Eingabewerkzeug so montiert ist, dass die Richtung des Ziehens oder Drückens am Betätigungshebel mit der Richtung einer dadurch gesteuerten Bewegung des Objekts übereinstimmt.
-
Aus
DE 38 83 109 T2 ist ein Objekthandhabungssystem bekannt, bei dem ein Eingabewerkzeug einen würfelförmigen Körper und einen von einer der sechs Flächen des Würfels abstehenden Joystick aufweist. Das Eingabewerkzeug ist mit jeder der fünf anderen Flächen des Würfels auf einer Unterlage platzierbar und ist mit einem Orientierungssensor ausgestattet, der es erlaubt, die nach unten weisende Fläche des Würfels zu identifizieren. Eine Steuereinheit berücksichtigt beim Umsetzen einer von einem Benutzer am Joystick vorgenommenen Eingabe, welche der fünf Würfelflächen unten liegt. Wenn das Eingabewerkzeug mit dem Joystick nach oben, in z-Richtung, aufgestellt ist, wird eine Betätigung des Joysticks in eine Bewegung des gehandhabten Objekts in der x-y-Ebene umgesetzt; wenn es auf der Seite liegt, so dass der Joystick nach oben oder unten ausgelenkt werden kann, dann wird durch diese Auslenkung auch eine Bewegung des Objekts in z-Richtung gesteuert. Eine intuitive Bedienbarkeit ist auch hier nicht sichergestellt, da eine Drehung des Eingabewerkzeugs um die z-Achse nicht erfassbar ist, so dass die Richtung einer vom Benutzer am Eingabewerkzeug in einer horizontalen Richtung vorgenommenen Betätigung und die Richtung der daraufhin von der Steuereinheit gesteuerten Bewegung des Objekts beliebig auseinanderfallen können.
-
Aufgabe der vorliegenden Erfindung ist, ein Verfahren zum Handhaben eines Objekts anzugeben, bei dem eine bequeme, intuitive Steuerbarkeit von Bewegungen des Objekts jederzeit sichergestellt werden kann.
-
Die Aufgabe wird gelöst durch ein Verfahren mit den Schritten:
- a) Verbinden des Objekts mit einem Manipulator und mit einem Eingabewerkzeug, mit dem eine Richtung in einem auf das Eingabewerkzeug bezogenen inneren Koordinatensystem eingebbar ist,
- d) Steuern einer Probebewegung des Manipulators auf Grundlage einer in einem äußeren Koordinatensystem bekannten Richtung;
- e) Ermitteln der Richtung einer aus der Probebewegung des Manipulators resultierenden Bewegung des Eingabewerkzeugs in dem inneren Koordinatensystem;
- f) Ermitteln einer Koordinatentransformation, die die Richtung der resultierenden Bewegung im inneren Koordinatensystem in die bekannte Richtung im äußeren Koordinatensystem transformiert;
- g) Erfassen einer von einem Benutzer an dem Eingabewerkzeug eingegebenen inneren Richtung in dem inneren Koordinatensystem;
- h) Anwenden der Koordinatentransformation auf die erfasste innere Richtung, um eine äußere Richtung zu erhalten; und
- i) Steuern einer Bewegung des Manipulators auf Grundlage der äußeren Richtung.
-
Da das Eingabewerkzeug in beliebiger Orientierung mit dem Objekt und dem Manipulator verbunden werden kann, ist die Beziehung zwischen äußerem und innerem Koordinatensystem zunächst unbekannt. Da jedoch die Richtung der Probebewegung im äußeren Koordinatensystem vorbekannt ist und im inneren Koordinatensystem gemessen werden kann, kann auch die Beziehung zwischen den Koordinatensystemen herausgefunden werden und die vom Benutzer eingegebene Richtung so in das äußere Koordinatensystem transformiert werden, dass die Richtung der von der Steuereinheit in Reaktion auf die Eingabe des Benutzers gesteuerten Bewegung mit der eingegebenen Richtung übereinstimmt. So ist die intuitive Bedienbarkeit des Objekthandhabungssystems gewährleistet.
-
Indem das Eingabewerkzeug mit dem Manipulator und dem von ihm gehandhabten Objekt verbunden wird, sind Orientierungsänderungen des Eingabewerkzeugs nur noch möglich, wenn sie mit einer entsprechenden Orientierungsänderung des Objekts einhergehen und folglich durch eine Steuereinheit des Manipulators veranlasst sind. Derartige Orientierungsänderungen können, anders als bei dem aus
DE 38 83 109 T2 bekannten Eingabewerkzeug, von der Steuereinheit durch eine Aktualisierung der Koordinatentransformation berücksichtigt werden, wenn die Steuereinheit das Objekt anhand von am Eingabewerkzeug vorgenommenen Eingaben des Benutzers bewegt, so dass die Übereinstimmung zwischen der Richtung der Eingabe und der Richtung der daraus resultierenden Bewegung des Objekts auch bei einer Änderung der Orientierung des Eingabewerkzeugs im Raum aufrecht erhalten werden kann.
-
Die Probebewegung kann eine Translation sein. Um deren Richtung zu erfassen, kann das Eingabewerkzeug mit einem Beschleunigungssensor ausgestattet sein, mit dessen Hilfe die Richtung einer zu Beginn der Probebewegung auf das Eingabewerkzeug einwirkenden Beschleunigung bzw. die Richtung einer Verzögerung am Ende der Probebewegung erfasst werden können.
-
Einer bevorzugten Alternative zu Folge ist die Probebewegung eine Rotation, und die bekannte Richtung ist die Richtung der Achse dieser Rotation. Auch eine solche Rotation ist mit einem Beschleunigungssensor erfassbar, indem die Richtung der Erdbeschleunigung in dem inneren Koordinatensystem des Eingabewerkzeugs jeweils vor und nach der Rotation erfasst wird. Die Richtung der Achse der Rotation kann dann problemlos berechnet werden, zum Beispiel durch Bilden eines Kreuzproduktes der zwei erfassten Erdbeschleunigungsvektoren.
-
Um die Richtung im inneren Koordinatensystem möglichst exakt ermitteln zu können, sollte die bekannte Richtung vorzugsweise horizontal sein.
-
Wenn das Eingabewerkzeug eine Basis zum Verbinden mit dem Objekt und einen relativ zu der Basis aus einer Ruhelage heraus bewegbaren Kopf umfasst, dann kann als vom Benutzer eingegebene innere Richtung die Richtung einer Bewegung des Kopfes erfasst werden.
-
Einer alternativen Ausgestaltung zu Folge, die keine Beweglichkeit des Kopfes relativ zur Basis erfordert, kann als eingegebene innere Richtung auch die Richtung einer Kraft oder eines Drehmoments erfasst werden, die/das zwischen dem Kopf und der Basis des Eingabewerkzeugs wirkt.
-
Die bekannte Richtung der Probebewegung kann fest vorgegeben und bei jeder Durchführung des oben beschriebenen Verfahrens dieselbe sein. Dies ist insbesondere dann zweckmäßig, wenn das Verfahren bei jeder Inbetriebnahme des Objekthandhabungssystems bzw. nach dem Verbinden eines Eingabewerkzeugs mit Objekt und Manipulator durchgeführt wird und keinerlei Informationen darüber vorliegen, in welcher Orientierung das Eingabewerkzeug befestigt ist. Alternativ besteht auch die Möglichkeit, zwischen Schritt a) und Schritt d) zusätzlich folgende Schritte auszuführen:
- b) Erfassen einer von dem Benutzer am Eingabewerkzeug eingegebenen inneren Richtung;
- c) Anwenden einer vorgegebenen Koordinatentransformation auf die erfasste innere Richtung,
um so eine Richtung für die Probebewegung zu erhalten, die zwar nicht bei jeder Durchführung des Verfahrens notwendigerweise dieselbe ist, die aber dennoch anhand der vorgegebenen Koordinatentransformation berechenbar und dadurch bekannt ist.
-
Zweckmäßigerweise kann diese vorgegebene Koordinatentransformation insbesondere eine in einer früheren Iteration des Verfahrens ermittelte Koordinatentransformation sein. Dies erhöht die Wahrscheinlichkeit, dass die Richtung der Probebewegung mit der Richtung, in die der Benutzer durch seine Eingabe das Objekt führen will, zumindest weitgehend übereinstimmt, und eine Irritation des Benutzers durch eine Bewegung des Objekts in eine von ihm nicht gewünschte Richtung vermieden wird.
-
Außerdem ermöglichen diese zusätzlichen Schritte insbesondere im Laufe des Betriebs des Objekthandhabungssystems eine fortlaufende Überprüfung, ob die angewandte Koordinatentransformation noch zur Orientierung des Eingabewerkzeugs passt, und gegebenenfalls eine Anpassung der Koordinatentransformation.
-
Zweckmäßigerweise kann eine Störung, z. B. aufgrund fehlender körperlicher Verbindung zwischen Eingabewerkzeug und zu handhabendem Objekt, erkannt werden, wenn eine Bewegung des Eingabewerkzeugs erfasst wird, die nicht durch eine Bewegung des Manipulators verursacht ist oder auf eine Bewegung des Manipulators keine Bewegung des Eingabewerkzeugs erfasst wird.
-
Gegenstand der Erfindung ist ferner ein Objekthandhabungssystem mit einem Manipulator, an dem ein zu handhabendes Objekts zeitweilig befestigbar ist, einem an dem Objekt befestigbaren Eingabewerkzeug und einer Steuereinheit zum Steuern des Manipulators anhand von durch einen Benutzer am Eingabewerkzeug vorgenommenen Eingaben, bei dem das Eingabewerkzeug einen Orientierungssensor zum Erfassen der Orientierung des Eingabewerkzeugs im Raum umfasst und eingerichtet ist, ein Erfassungsergebnis des Orientierungssensors an die Steuereinheit zu übermitteln.
-
Das Eingabewerkzeug kann eine Basis zur Befestigung an dem Objekt und einem Kopf zur Handhabung durch den Benutzer umfassen, wobei der Kopf und die Basis zweckmäßigerweise über einen Eingabesensor körperlich verbunden sind, der eingerichtet ist, wenigstens eine von dem Benutzer zur Eingabe einer Richtung auf den Kopf ausgeübte vektorielle Steuergröße bezogen auf ein inneres Koordinatensystem des Eingabewerkzeugs zu erfassen.
-
Der Orientierungssensor kann ein beliebiger Sensor sein, der die Messung eines Winkels zwischen einer Bezugsrichtung des Eingabeinstruments und einer externen Vorzugsrichtung wie etwa der Richtung der Erdbeschleunigung oder des Erdmagnetfelds ermöglicht. Insbesondere kann der Orientierungssensor ein Beschleunigungssensor sein, dessen Erfassungsergebnis wenigstens die Richtung, eventuell auch den Betrag, einer auf das Eingabewerkzeug einwirkenden Beschleunigung bezogen auf das innere Koordinatensystem des Eingabewerkzeugs quantitativ spezifiziert. Je besser die Auflösung dieses Beschleunigungssensors ist, umso geringer ist die Amplitude der Probebewegung, die für eine hinreichend genaue Bestimmung der Koordinatentransformation erforderlich ist. Eine geringe Amplitude der Probebewegung ist wünschenswert, um ein Anstoßen des Objekts an ein äußeres Hindernis während der Probebewegung zu vermeiden. Die Winkelauflösung des Beschleunigungssensors sollte daher zweckmäßigerweise im Bereich von wenigen Grad oder besser sein.
-
Um die Möglichkeiten der Platzierung des Eingabewerkzeugs am Objekt nicht einzuschränken, sollten Eingabewerkzeug und Steuereinheit zweckmäßigerweise schnurlose Schnittstellen für die Kommunikation miteinander aufweisen.
-
Der Manipulator kann Endeffektor eines Roboterarms mit gelenkig verbundenen Gliedern sein; die Erfindung ist jedoch nicht hierauf beschränkt, sondern beispielsweise auch übertragbar auf einen mittels eines Brückenkrans oder einer Laufkatze beweglichen Manipulator.
-
Ein weiterer Gegenstand der vorliegenden Erfindung ist das Eingabewerkzeug für das oben beschriebene Objekthandhabungssystem. Ein solches Eingabewerkzeug kann zweckmäßigerweise einen auf die Anwesenheit eines Fremdkörpers in einem Bereich der Umgebung des Eingabewerkzeugs ansprechenden Schalter umfassen. Der Zustand eines solchen Schalters ist ein Indiz dafür, ob das Eingabewerkzeug an einem zu handhabenden Objekt befestigt ist oder nicht. Er kann mechanisch, durch Kontakt mit dem Objekt, betätigbar sein, oder berührungslos arbeiten. Unter den berührungslosen Schaltern ist insbesondere ein induktiver Schalter bevorzugt, da dieser in der Lage ist, Gegenstände weitgehend unabhängig von ihrer Stoffzusammensetzung zu erfassen.
-
Zweckmäßigerweise ist ein solcher Schalter an der Basis des Eingabewerkzeugs angeordnet, und der von ihm überwachte Bereich der Umgebung befindet sich an einer vom Kopf abgewandten Seite der Basis.
-
Das Eingabewerkzeug kann durch den Schalter zwischen einem Ruhezustand, in dem Erfassungsergebnisse des Orientierungssensors und/oder des Eingabesensors nicht ausgegeben werden, und einem aktiven Zustand, in dem die Erfassungsergebnisse ausgegeben werden, umschaltbar sein. Eine solche Umschaltung verringert zum einen die Wahrscheinlichkeit, dass Erfassungsergebnisse an die Steuereinheit geliefert werden, während das Eingabewerkzeug nicht am Objekt montiert ist, zum anderen trägt sie zur Minimierung des Energieverbrauchs des Eingabewerkzeugs bei, was insbesondere dann von Vorteil ist, wenn das Eingabewerkzeug seine Betriebsenergie von einer internen Quelle wie etwa einer Batterie oder einem Akkumulator bezieht.
-
Ein weiterer Erfindungsgegenstand ist ein Computerprogrammprodukt mit Programmcodemitteln, die einen Computer befähigen, als Steuereinheit in einem Objekthandhabungssystem der oben beschriebenen Art zu arbeiten oder das oben beschriebene Verfahren auszuführen.
-
Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beigefügten Figuren. Es zeigen:
-
1 eine schematische Ansicht eines erfindungsgemäßen Objekthandhabungssystems;
-
2 einen schematischen Schnitt durch ein Eingabewerkzeug des Objekthandhabungssystems;
-
3 ein Flussdiagramm eines Arbeitsverfahrens der Steuereinheit aus 1 gemäß einer ersten Ausgestaltung;
-
4 eine zweite Ausgestaltung des Verfahrens; und
-
5 eine Weiterbildung des Verfahrens aus 3 bzw. 4.
-
1 zeigt eine schematische Ansicht eines Objekthandhabungssystems zur Handhabung eines Objekts 1. Das Objekt 1 ist hier schematisch als Würfel dargestellt, doch liegt auf der Hand, dass seine Gestalt und materielle Beschaffenheit im Prinzip beliebig sind. Ein Roboterarm 2 umfasst eine in einem hier als äußeres Koordinatensystem bezeichneten Koordinatensystem ortsfeste Basis 3 und eine Mehrzahl von Gliedern 4, die eine Kette zwischen der Basis 3 und einem das Objekt 1 haltenden Endeffektor 5 bilden und die jeweils gelenkig untereinander, mit der Basis 3 bzw. mit dem Endeffektor 5 verbunden sind. Eine Steuereinheit 6, typischerweise ein Mikrocomputer, ist mit dem Roboterarm 2 verbunden, um Bewegungen der Glieder 4 und des Endeffektors 5 in einem – hier als äußeres Koordinatensystem bezeichneten – Koordinatensystem K mit Achsen x, y, z zu steuern, in dem die Basis 3 des Roboterarms 2 unbeweglich ist. Zur Vereinfachung der Notation wird im Folgenden angenommen, dass der Gravitationsvektor in Richtung der negativen z-Achse zeigt.
-
Am Objekt 1 ist ein Eingabewerkzeug 7 zeitweilig befestigt. Das Eingabewerkzeug 7 umfasst eine Basis 8, hier von flachzylindrischer Form, von der eine Stirnseite dem Objekt 1 zugewandt und an diesem befestigt ist und die andere Stirnseite einen von einem Benutzer zu handhabenden Kopf 9 trägt. Der Kopf 9 ist hier ebenfalls von flachzylindrischer Gestalt und etwas kleinerem Durchmesser als die Basis 8.
-
2 zeigt einen schematischen Querschnitt durch das Eingabewerkzeug 7. An der dem Objekt 1 zugewandten Stirnseite 10 sind Mittel zur zeitweiligen Befestigung vorgesehen, hier zum Beispiel doppelseitige Klebebandstreifen 11, die lediglich gegen eine Flanke des Objekts 1 gedrückt werden müssen, um das Eingabewerkzeug 7 daran haften zu lassen, und die, wenn sie verschmutzt und nicht mehr ausreichend haftfähig sind, ausgewechselt werden können.
-
Je nach Art der zu handhabenden Objekte 1 können andere Mittel zur zeitweiligen Befestigung zweckmäßig sein. Wenn beispielsweise die zu handhabenden Objekte hölzerne Frachtkisten sind, könnte die Stirnseite 10 auch anstelle der Klebebandstreifen 11 eine Mehrzahl von Dornen tragen, die sich in die Holzoberfläche hineinbohren und dem Eingabewerkzeug 7 Halt bieten, wenn es von einem Benutzer gegen die Kiste gedrückt wird. Wenn die zu handhabenden Objekte Container oder allgemein Gegenstände aus ferromagnetischem Material sind, kommen als Mittel zum zeitweiligen Befestigen auch Permanent- oder Elektromagnete in Betracht. Wenn die zu handhabenden Objekte Gitterboxen sind, können an der Stirnseite 10 auch Haken vorgesehen sein, um das Eingabewerkzeug an einem Draht einer Wand der Gitterbox aufzuhängen. Weitere Abwandlungen sind denkbar.
-
Der Kopf 9 der in 2 gezeigten Steuereinheit 6 ist mit der Basis 8 über einen Sensor 12 verbunden, durch den eine vom Benutzer auf den Kopf 9 ausgeübte vektorielle Steuergröße erfassbar ist. Je nach Ausführungsform der Verbindung kann der Kopf 9 gegenüber der Basis 8 mehr oder weniger beweglich (z. B. Joystick) oder auch völlig unbeweglich (z. B. Drucksensor) sein.
-
Die von dem Sensor 12 erfasste Steuergröße kann insbesondere eine Kraft oder ein Drehmoment sein. Intuitiv wird eine Zug- oder Druckkraft, die der Benutzer auf den Kopf 9 ausübt, in die Richtung orientiert sein, in der er das Objekt 1 translatieren möchte, bzw. ein von ihm ausgeübtes Drehmoment wird in Richtung der Achse orientiert sein, um die er das Objekt 1 rotieren möchte. Der Sensor 12 kann je nach Bauart für Kraft, für Drehmoment oder für beides empfindlich sein. Er umfasst vorzugsweise für jede zu erfassende Steuergröße drei Sensorkomponenten 14 zum Erfassen von jeweils einer von drei zueinander orthogonalen Komponenten der betreffenden Steuergröße. Diese Sensorkomponenten 14 können beispielsweise optoelektrische Sensoren (PSD), Piezoelemente oder an einem den Kopf 9 mit der Basis 8 verbindenden Stab 13 angeordnete Dehnungsmessstreifen sein. Die drei Raumrichtungen, für die die drei Sensorkomponenten 14 empfindlich sind, bilden zweckmäßigerweise die Achsen eines auf die Steuereinheit 6 bezogenen inneren Koordinatensystems x', y', z', so dass das von den drei Sensorkomponenten 14 gelieferte Tripel von Messwerten aufgefasst werden kann als Vektor der Steuergröße in auf das innere Koordinatensystem x', y', z' bezogener kartesischer Darstellung. Der Einfachheit halber kann angenommen werden, dass die Achse x' dieses inneren Koordinatensystems in Längsrichtung des Stabs 13, die Achse y' quer dazu in der Schnittebene der 2 und die Achse z' senkrecht zur Schnittebene verläuft.
-
Die Basis 8 enthält ferner einen Beschleunigungssensor 15 zum Messen einer vektoriellen Beschleunigung. Wie der Sensor 12 kann auch der Beschleunigungssensor 15 drei Sensorkomponenten umfassen, die jeweils für Beschleunigungen in drei zueinander orthogonalen Raumrichtungen empfindlich sind, wobei diese Raumrichtungen zweckmäßigerweise ebenfalls die Achsrichtungen des inneren Koordinatensystems x', y', z' sein sollten.
-
Eine Funkschnittstelle 16 ist mit den Sensoren 12, 15 verbunden, um deren Erfassungsergebnisse an eine komplementäre Funkschnittstelle 17 der Steuereinheit 6 zu übertragen. Zur Versorgung der Funkschnittstelle 16 und der Sensoren 12, 15 mit Betriebsenergie dient eine austauschbar in der Basis 8 montierte Batterie oder ein Akkumulator 18.
-
In der Ausgestaltung der 2 ist zwischen dem Akkumulator 18 einerseits und den Sensoren 12, 15 und der Funkschnittstelle 16 andererseits ein Schalter 19 vorgesehen, der eine über die Stirnseite 10 vorspringende, durch Kontakt mit dem Objekt 1 betätigbare Taste 20 aufweist. Der Schalter 19 ist geschlossen, wenn die Taste 20 eingedrückt ist. Somit werden die Sensoren 12, 15 und die Funkschnittstelle 16 mit Energie versorgt, wenn das Eingabewerkzeug 7 am Objekt 1 montiert ist und die Taste 20 zurückdrängt, und liefern in diesem Zustand Erfassungsergebnisse an die Steuereinheit 6. Wenn das Eingabewerkzeug 7 vom Objekt 1 gelöst ist und die Taste 20 frei ist, ist der Schalter 19 offen; es werden keine Erfassungsergebnisse geliefert und keine Energie verbraucht.
-
Um die Anbringung des Eingabewerkzeugs 7 am Objekt 1 zu erkennen, können auch andere Typen von Schaltern 19 vorgesehen sein; beispielsweise ein kapazitiver Näherungsschalter, der die Annäherung an ein Objekt 1 anhand einer Veränderung der Dielektrizitätskonstante in seiner Umgebung erkennt. Wenn das Objekt 1 ferromagnetisch ist und die Mittel zum zeitweiligen Befestigen des Eingabewerkzeugs 7 einen Permanentmagneten umfassen, dann kann der Schalter 19 auch durch eine den Permanentmagneten umgebende Spule gebildet sein, die auf eine Veränderung des magnetischen Flusses bei Annäherung des Permanentmagneten an das Objekt 1 reagiert.
-
3 zeigt ein Flussdiagramm eines Arbeitsverfahrens der Steuereinheit 6 gemäß einer ersten Ausgestaltung. Ein Aktivierungsschritt S1 kann darin bestehen, dass die Steuereinheit 6 eingeschaltet wird, oder dass sie beginnt, Daten von dem Eingabewerkzeug 7 zu empfangen, nachdem dieses am Objekt 1 befestigt worden ist.
-
Das Eingabewerkzeug 7 reagiert auf seine Anbringung am Objekt 1 durch Übertragen der drei Komponenten des vom Beschleunigungssensor 15 erfassten, auf das innere Koordinatensystem bezogenen Erdbeschleunigungsvektors an die Steuereinheit 6; diese werden von der Steuereinheit 6 in Schritt S2 empfangen und als Vektor g →'0 abgespeichert.
-
In Schritt S3 steuert die Steuereinheit 6 den Roboterarm 2 an, um in einer Probebewegung das Objekt 1 um eine Achse zu rotieren. Die Richtung dieser Achse ist der Steuereinheit 6 bekannt und kann als zu der Achse paralleler Vektor r → im äußeren Koordinatensystem angegeben werden (wobei im Folgenden zwischen dem Vektor und der durch ihn spezifizierten Achse nicht unterschieden und das Symbol r → für beide verwendet wird.
-
Das Verfahren ist besonders einfach, wenn die Achse r → horizontal gewählt ist. Zur Vereinfachung der Notation kann dann ferner angenommen werden, dass die Probebewegung eine Rotation um die x-Achse des äußeren Koordinatensystems K ist, d. h. dass r → ein Vektor in x-Richtung ist.
-
Diese Rotation hat eine Änderung der Richtung der Erdbeschleunigung im inneren Koordinatensystem des Eingabewerkzeugs 7 zu Folge; der veränderte Erdbeschleunigungsvektor wird in S4 wiederum von der Steuereinheit 6 empfangen und als Vektor g →'1 gespeichert. Die Richtung der Drehachse ist im inneren Koordinatensystem gegeben durch r →' = g →'0 × g →'1 und wird in Schritt S5 berechnet.
-
Die Vektoren g →'0 und g →'1 spannen im inneren Koordinatensystem eine Ebene auf, in der auch sämtliche im Laufe der Drehung auftretenden Erdbeschleunigungsvektoren liegen und auf der das Kreuzprodukt r →' = g →'0 × g →'1 senkrecht steht. Wenn die Achse r → nicht horizontal ist, dann definieren die Erdbeschleunigungsvektoren stattdessen einen Kegel um die Drehachse, und die Kreuzprodukte von zu verschiedenen Zeiten gemessenen Erdbeschleunigungsvektoren haben unterschiedliche Richtungen, die nicht mit der Richtung der Achse übereinstimmen, so dass in diesem Fall die obige Formel nicht gilt. Da zu Beginn, während und am Ende der Drehung erfasste Erdbeschleunigungsvektoren g →'0, g →'0,5 und g →'1. sämtlich den gleichen Betrag haben, stehen jedoch ihre Differenzen senkrecht auf der Drehachse, so dass in diesem Fall die Richtung der Drehachse ist im inneren Koordinatensystem erhalten werden kann durch r →' = (g →'0 – g →'0,5) × (g →'0,5 – g →'1)
= g →'0 × g →'0,5 + g →'0,5 × g →'1 + g →'1 × g →'0
-
Somit entspricht am Ende der Drehung dem normierten Beschleunigungsvektor ∥–g →'1∥ im inneren Koordinatensystem K' der z-Einheitsvektor im äußeren Koordinatensystem K, ∥r →'∥ entspricht dem x-Einheitsvektor, und ∥–g →'1 × r →'∥ dem y-Einheitsvektor.
-
Im nächsten Schritt S6 ermittelt die Steuereinheit
6 diejenige Koordinatentransformation (Drehmatrix) T
1, welche das innere Koordinatensystem K' in das äußere Koordinatensystem K überführt. Die Drehmatrix besteht aus den Komponenten der Einheitsvektoren von K', d. h. wenn die Vektoren in kartesischer Darstellung im inneren Koordinatensystem K' folgende Komponenten haben
dann ist die Drehmatrix für die Koordinatentransformation gegeben durch
-
Die Steuereinheit 6 ist nun in der Lage, vom Benutzer am Kopf 9 vorgenommene Eingaben wie etwa das Ausüben einer Zug- oder Druckkraft oder eines Drehmoments korrekt zu verarbeiten. Dazu empfängt sie im Schritt S7 die vom Sensor 12 im inneren Koordinatensystem erfasste vektorielle Steuergröße d →' , berechnet daraus in Schritt S8 durch Anwenden der Koordinatentransformation T eine entsprechende Eingabe d → = T1d →' im äußeren Koordinatensystem und steuert anschließend in Schritt S9 eine Bewegung in die entsprechende Richtung d →.
-
Wenn die vom Benutzer eingegebene Steuergröße d →' eine Kraft ist, dann veranlasst die Steuereinheit 6 in Schritt S9 eine Translation des Objekts 1 in Richtung der transformierten Kraft d →. Wenn die Steuergröße d →' ein Drehmoment ist, dann veranlasst sie eine Drehung des Objekts 1 um eine in der Richtung d → orientierte Achse. Falls der Sensor 12 ausgelegt ist, um gleichzeitig Kraft und Drehmoment zu erfassen, kann auch die von der Steuereinheit 6 veranlasste Bewegung des Objekts 1 eine Überlagerung von Translation in Richtung der Kraft und Drehung um die durch die Richtung des Drehmoments spezifizierte Achse sein.
-
Wenn die in Schritt S9 gesteuerte Bewegung des Objekts 1 eine reine Translation ist, bleibt diese ohne Auswirkungen auf die Koordinatentransformation T1. Wenn die in Schritt S9 gesteuerte Bewegung eine Rotation ist, dann wird im Laufe der Bewegung auch die Koordinatentransformation T durch Multiplizieren mit der für die Rotation repräsentativen Koordinatentransformation R aktualisiert: Tn+1 = RTn, um sicherzustellen, dass zu jedem Zeitpunkt eine in dem inneren Koordinatensystem erfasste Steuergröße d →' korrekt in das äußere Koordinatensystem umgerechnet und bei der weiteren Steuerung der Bewegung berücksichtigt werden kann.
-
4 zeigt eine alternative Ausgestaltung des Verfahrens. Die Schritte S1, S2 sind dieselben wie mit Bezug auf 3 beschrieben und werden nicht erneut erläutert. Die in Schritt S3 durchgeführte Probebewegung ist hier keine Rotation, sondern eine Translation. Die Richtung dieser Probebewegung ist grundsätzlich beliebig, für die folgende Auswertung ist aber nur der horizontale Anteil relevant, deshalb sollte die Probebewegung vorzugsweise orthogonal zur Erdbeschleunigung, also horizontal, orientiert sein. Zu Beginn der Translation erfährt das Objekt 1 eine Beschleunigung, von deren Vektor a → im äußeren Koordinatensystem zumindest die Richtung bekannt ist. Zur Vereinfachung der Notation wird hier angenommen dass die Probebewegung in Richtung der x-Achse erfolgt, also dieser Vektor a → in Richtung der x-Achse des äußeren Koordinatensystems entspricht.
-
In der Beschleunigungsphase wird die auf den Sensor 15 einwirkende Beschleunigung erneut gemessen und in Schritt S4 als g →'1 an der Steuereinheit 6 gespeichert. Die Richtung der Beschleunigung im inneren Koordinatensystem a →' wird in Schritt S5 als Differenz zwischen g →'1 und g →'0 berechnet.
-
Wenn gewünscht, kann, wenn gegen Ende der Probebewegung das Objekt 1 einer zur Richtung der Probebewegung entgegengesetzten Beschleunigung –a → ausgesetzt ist, auch die dann resultierende, vom Beschleunigungssensor 15 erfasste Gesamtbeschleunigung gemessen und als g →'2 gespeichert werden, um anschließend die Richtung der Beschleunigung im inneren Koordinatensystem a →' aus der Differenz g →'1 – g →'2 zu berechnen.
-
Mit den Vektoren ∥–g →'0∥ und ∥a →'∥ sind die z- und x-Einheitsvektoren des äußeren Koordinatensystems K in der Darstellung des inneren Koordinatensystems bekannt. Der y-Einheitsvektor wird als ∥–g →'1 × r →'∥ abgeleitet. Die Ermittlung der Koordinatentransformation T, die das Koordinatensystem K' in das äußere Koordinatensystem transformiert, erfolgt auf die gleiche Weise wie beim Verfahren der 3. Auch die Schritte S7 bis S8 sind identisch.
-
Die im Falle einer Rotation des Objekts 1 erforderliche Aktualisierung der Koordinatentransformation T kann, wenn nacheinander zahlreiche Rotationen am Objekt 1 vorgenommen werden, zu Fehlern führen, mit der Folge, dass die Richtung, in der das Objekt 1 von der Steuereinheit 6 bewegt wird oder die Achse, um die es gedreht wird, nicht mehr exakt mit der Richtung der vom Benutzer auf das Eingabewerkzeug 7 ausgeübten Kraft bzw. der Richtung des ausgeübten Drehmoments übereinstimmt.
-
Um solche Abweichungen zu vermeiden, kann bei den Verfahren nach 3 und 4 jeweils nach Abschluss einer Bewegung ein Schritt S10 vorgesehen werden, in dem die Erdbeschleunigung g →'0 im inneren Koordinatensystem K' gemessen und ins äußere Koordinatensystem K transformiert wird. Wenn die Richtung des dabei erhaltenen Vektors signifikant von der negativen z-Richtung abweicht, dann ist die Koordinatentransformation T nicht exakt, und das Verfahren springt zurück zu Schritt S3, um die Probebewegung zu wiederholen und die Koordinatentransformation T erneut abzuleiten. Stimmen die Richtungen überein, kehrt das Verfahren direkt zu Schritt S7 zurück, um die nächste Benutzereingabe zu verarbeiten.
-
Fehler der Transformation T, die sich nur auf die x- und y-Komponenten des Transformationsergebnisses auswirken, d. h. eine Abweichung zwischen einem rein horizontal orientierten Vektor der Steuergröße d →' und der daraus von der Steuereinheit 6 abgeleiteten Bewegungsrichtung d →, bleiben in dem oben beschriebenen Schritt S10 unbemerkt.
-
Solche Abweichungen können mit dem Verfahren nach 5 erfasst und behoben werden. Die Schritte S1 bis S9 dieses Verfahrens sind dieselben wie in 3 oder 4. Die Steuereinheit überprüft in Schritt S10' des Verfahrens nach 5, ob die in Schritt S9 gesteuerte Bewegung des Objekts 1 eine Translation oder eine Rotation ist.
-
Im Falle, dass die Bewegung eine Translation in Richtung d → ist, berechnet die Steuereinheit in Schritt S11, wie mit Bezug auf Schritt S5 von 4 beschrieben, die aus dieser Translation resultierende, um die Erdbeschleunigung bereinigte Beschleunigung a →' durch Bilden der Differenz zwischen jeweils eines vor und eines während der Bewegung des Schritts S9 oder jeweils eines in einer Beschleunigungs- und eines in einer Verzögerungsphase der Bewegung vom Sensor 15 aufgenommenen Beschleunigungsmesswerts. Die Richtung dieser Differenz sollte mit der Richtung der vom Sensor 12 erfassten Eingabe d →' übereinstimmen.
-
Wenn in Schritt S12 festgestellt wird, dass diese Richtungen mit hinreichender Genauigkeit übereinstimmen, kehrt das Verfahren unmittelbar zu Schritt S7 zurück, um eine weitere Eingabe des Benutzers zu verarbeiten; im Falle einer signifikanten Abweichung wird die Koordinatentransformation T in Schritt S13 korrigiert. Eine solche Korrektur kann darin bestehen, dass die bisher verwendete Transformation T
n verworfen und basierend auf der im äußeren Koordinatensystem bekannten Richtung d → und der daraus resultierenden, in Schritt S11 gemessenen Beschleunigung
a →' im inneren Koordinatensystem eine aktualisierte Koordinatentransformation T*
n+1 ermittelt wird, für die
gilt; als aktualisierte Transformation T
n+1 kann aber auch z. B. eine gewichtete Summe aus T
n und T*
n+1 verwendet werden. Um T*
n+1 eindeutig analog zur oben mit Bezug auf Schritt S6 beschriebenen Vorgehensweise ermitteln zu können, sollte ein aktueller Messwert der Erdbeschleunigung
g →'0 im inneren Koordinatensystem K' vorliegen; dieser kann z. B. in einem Schritt S8' unmittelbar vor Beginn der Bewegung des Objekts in Schritt S9 gemessen sein.
-
In entsprechender Weise wird, wenn die Bewegung in Richtung d → eine Rotation ist, nach Abschluss der Rotation der Erdbeschleunigungsvektor g →' erneut gemessen (S14), eine daraus resultierende Orientierung der Drehachse r →' im inneren Koordinatensystem berechnet (S15) und die Übereinstimmung ihrer Richtung mit der Richtung der am Eingabewerkzeug 7 vorgenommenen Eingabe d →' geprüft (S16), um im Falle einer übermäßigen Abweichung in Schritt S17 eine Korrektur vorzunehmen.
-
Wird in Schritt S12 oder S16 eine signifikante Abweichung festgestellt, kann optional überprüft werden, ob ein Fehler vorliegt, der durch eine Korrektur der Koordinatentransformation nicht behoben werden kann. Ein derartiger Fehler liegt beispielsweise vor, wenn das Eingabewerkzeug 7 vom Objekt 1 abgefallen oder entfernt wurde, wenn die Kommunikation zwischen Eingabewerkzeug 7 und Steuereinheit 6 unterbrochen wurde oder das Eingabewerkzeug 7 ausgefallen ist. Als Reaktion auf einen solchen erkannten Fehler würde das Verfahren abgebrochen und dem Benutzer ein Fehlerzustandssignal angezeigt werden.
-
Ob das Eingabewerkzeug 7 am Objekt 1 befestigt ist, kann durch einen Vergleich der von dem Sensor 15 erfassten Beschleunigung und dem aus der Steuervorgabe der Steuereinheit 6 resultierenden Beschleunigungswert zur Ansteuerung des Endeffektors 5 überprüft werden. Hierzu bestimmt die Steuereinheit 6 die Abweichung zwischen der gemessenen, um die Erdbeschleunigung bereinigte Beschleunigung und der aus der Steuervorgabe berechneten Beschleunigung. Übersteigt die Abweichung einen bestimmten Schwellwert, kann daraus geschlossen werden, dass das Eingabewerkzeug 7 nicht mehr fest mit dem Objekt 1 verbunden ist.
-
Wurde das Eingabewerkzeug 7 von dem Objekt 1 entfernt oder ist das Eingabewerkzeug 7 von dem Objekt 1 abgefallen, wird es bei einer Bewegung des Objekts 1 nicht mehr mitbewegt. Infolge dessen wird der Sensor 15 des Eingabewerkzeugs 7 keine durch eine Bewegung des Objekts 1 hervorgerufene Beschleunigung erfassen. D. h. die vom Sensor 15 erfassten, um die Erdbeschleunigung bereinigten Werte nehmen den Wert Null an und halten diesen Wert aufrecht, gleich wenn der Endeffektor 5 bzw. das Objekt 1 bewegt wird. Empfängt die Steuereinheit 6 von dem Eingabewerkzeug 7 einen um die Erdbeschleunigung bereinigten Messwert von Null und wird der Endeffektor 5 bzw. das Objekt 1 gleichzeitig bewegt, kann die Steuereinheit 6 dies als Fehler werten.
-
Die Kommunikation zwischen Eingabewerkzeug 7 zu der Steuereinheit 6 kann kontinuierlich überprüft werden, indem das Eingabewerkzeug 7 ein stetiges Prüfsignal an die Steuereinheit 6 sendet. Wird von der Steuereinheit 6 kein Prüfsignal empfangen, kann dies als Unterbrechung der Kommunikation erkannt werden.
-
Ein durch einen fehlerhaften Sensor 15 bedingter Ausfall des Eingabewerkzeugs 7 kann durch Überprüfung des durch die Erdbeschleunigung g hervorgerufenen Beschleunigungssignals erkannt werden. Weicht der Betrag des Beschleunigungsvektors g bzw. g' von ca. 9,81 (m/s2) ab, oder weicht die Richtung des im inneren Koordinatensystem erfassten Beschleunigungsvektors g' (bei Stillstand des Roboters) von einer aufgrund des Gravitationsfeldes zu erwartenden Richtung ab, so kann dies als Ausfall des Eingabewerkzeugs 7 gewertet werden. Die Prüfroutine kann von der Steuereinheit 6 ausgeführt werden.
-
Bezugszeichenliste
-
- 1
- Objekt
- 2
- Roboterarm
- 3
- Basis
- 4
- Glied
- 5
- Endeffektor
- 6
- Steuereinheit
- 7
- Eingabewerkzeug
- 8
- Basis
- 9
- Kopf
- 10
- Stirnseite
- 11
- Klebebandstreifen
- 12
- Sensor
- 13
- Stab
- 14
- Sensorkomponente
- 15
- Sensor
- 16
- Funkschnittstelle
- 17
- Funkschnittstelle
- 18
- Akkumulator
- 19
- Schalter
- 20
- Taste
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- CN 102581852 A [0002]
- DE 3883109 T2 [0003, 0007]