-
Die
vorliegende Erfindung betrifft einen Roboter und ein Verfahren zum
anlernen von Bewegungsabläufen
des Roboters.
-
Herkömmliche
in der industriellen Fertigung eingesetzte Roboter haben meist einen
ortsfesten Fuß,
an dem ein mit einer Mehrzahl von Freiheitsgraden beweglicher Arm
montiert ist, der unter der Kontrolle einer elektronischen Steuerschaltung
vorgegebene Bewegungsabläufe
ausführt.
Um eine Gefährdung
von Menschen durch die Bewegungen eines solchen Roboters auszuschließen, ist
letzter häufig
in einen Käfig
eingeschlossen, der Menschen daran hindert, versehentlich in den
Bewegungsbereich des Roboterarms zu gelangen.
-
In
den letzten Jahren ist vermehrt Bedarf von Robotern aufgekommen,
die in der Lage sind, mit Menschen zu interagieren oder diese bei
ihrer Arbeit unmittelbar zu unterstützen, ohne dabei eine Gefährdung für die Menschen
darzustellen. Dabei geht ein Entwicklungstrend dahin, Roboter, die
sich autonom bewegen können,
mit vielfältigen
Sensoren und einem hohen Maß an
künstlicher
Intelligenz auszustatten, um sie zu befähigen, Hindernisse, die sich
in ihrem Bewegungsbereich befinden, insbesondere Menschen, dynamisch
zu erkennen und ihre Bewegungen an das Vorhandensein dieser Hindernisse anzupassen,
um Kollisionen zu vermeiden. Häufig verfügen derartige
Roboter über
ein in elektronischer Form gespeichertes geometrisches Modell ihrer
Umgebung, das es ihnen ermöglicht,
durch Abgleich eines von ihren Sensoren erfassten Abbilds ihrer
Umge bung ihren Standort innerhalb des Modells zu lokalisieren. Eine
andere Entwicklungsrichtung sind die so genannten „Cobots", Geräte, die
keine autonomen Bewegungen ausführen,
sondern Bewegungen, die ihnen von einer Bedienungsperson vorgegeben
werden, in Art eines Servomechanismus oder Kraftverstärkers nachvollziehen,
wobei sie in der Lage sind, wesentlich größere Kräfte auszuüben als die Bedienungsperson
dies kann und auf diese Weise z.B. schwere Lasten flexibel zu befördern und
zu platzieren. Bei einem Cobot ohne Bewegungsautonomie kann zwar
davon ausgegangen werden, dass ein Benutzer den Cobot nicht so führen wird,
dass er sich selbst dabei verletzt; es besteht jedoch das Problem, dass
er durch die starken Kräfte,
die der Cobot ausüben
kann, durchaus eine weitere Person verletzen kann, die sich unbemerkt
im Bewegungsraum des Cobots aufhält.
-
Aufgabe
der vorliegenden Erfindung ist, die Betriebssicherheit von Robotern
allgemein, sowohl von aktiv bewegten als auch von passiv bewegten,
zu verbessern.
-
Die
Aufgabe wird gelöst
durch einen Roboter mit den Merkmalen des Anspruchs 1. Das Informatikmodell
befähigt
diesen Roboter jederzeit zu entscheiden, ob er sich in einer gegebenen
Region aufhalten darf oder nicht und seine Bewegungen daran anzupassen.
-
Die
Art der Anpassung kann davon abhängen,
wie weit die in dem Informatikmodell definierte Berechtigung des
Roboters geht, sich in einer bestimmten Region aufzuhalten. Im einfachsten
Fall können.
als mögliche
Werte der Berechtigung lediglich die Erlaubnis bzw. das Verbot,
sich in einer gegebenen Region zu bewegen, vorgesehen sein. Bei
einem aktiv beweglichen Roboter kann die Steuerung beispielsweise
eingerichtet sein, Antriebsmittel des Roboters beim Eintritt in
eine Region mit Bewegungsverbot anzuhalten, so dass der Roboter
an der Grenze einer solchen Region zum Stehen kommt. In analoger
Weise kann bei einem passiv, durch eine von außen einwirkende Antriebskraft,
beweglichen Roboter die Steuerung eingerichtet sein, um, z.B. durch Betätigen von
Bremsmitteln, eine durch die Antriebskraft angetriebene Bewegung
des Roboters eine Region mit Bewegungsverbot zu blockieren.
-
Vorzugsweise
ist bei einem solchen passiv beweglichen Roboter die Steuerung eingerichtet,
einer von außen
einwirkenden Antriebskraft eine Bremskraft entgegenzusetzen, wenn
sich der Roboter in einem Grenzbereich zwischen einer Region mit Bewegungserlaubnis
und einer Region mit Bewegungsverbot bewegt. Auf diese Weise wird
für eine Bedienungsperson
unmittelbar erfahrbar, dass der Roboter sich an der Grenze einer
Region mit Bewegungsverbot befindet, ohne dass ein abrupte Blockade
des Roboters möglicherweise
zu einer Verletzungsgefahr bei der Bedienungsperson selbst führt, und
die Bedienungsperson ist so in der Lage, die Richtung der auf den
Roboter ausgeübten
Antriebskraft zu ändern,
um diesen aus dem Grenzbereich zurück in die Region mit Bewegungserlaubnis
zu bewegen. Um die Rückkehr
in die Region mit Bewegungserlaubnis zu erleichtern, kann vorgesehen sein,
dass die Steuerung die Bremskraft nur dann ausübt, wenn sich der Roboter in
dem Grenzbereich zur Region mit Bewegungsverbot hin bewegt, nicht aber
bei einer Bewegung von dieser Region fort.
-
Die
Annäherung
des Roboters an eine Region mit Bewegungsverbot ist für einen
Benutzer insbesondere dann intuitiv spürbar, wenn die Steuerung eingerichtet
ist, bei einer Bewegung des Roboters von einer Region mit Bewegungserlaubnis
in eine Region mit Bewegungsverbot in einem Grenzbereich zwischen
den Regionen nicht nur eine Bremskraft, sondern eine Rückstellkraft
entgegenzusetzen, die den Roboter in der Region mit Bewegungserlaubnis hält.
-
Eine
erhebliche Vereinfachung der Führung des
Roboters durch einen Benutzer ergibt sich, wenn die Steuerung ferner
eingerichtet ist, eine Bewegung in einer von der Richtung der Antriebskraft
abweichenden Richtung entlang der Grenze der Re gion mit Bewegungsverbot
zu gestatten. Dies lässt
den Roboter an der Grenze wie an einer virtuellen Wand entlang gleiten.
Diese Eigenschaft kann insbesondere bei Transportrobotern vorteilhaft
eingesetzt werden, wie später
noch deutlich wird.
-
Es
ist auch möglich,
hinsichtlich des Umfangs der Bewegungsberechtigung des Roboters zwischen
einer „vollen
Bewegungserlaubnis" und
einer „eingeschränkten Bewegungserlaubnis" zu differenzieren.
Dies ist insbesondere bei einem aktiv beweglichen Roboter sinnvoll,
um die Bewegungsgeschwindigkeit des Roboters in einer Region mit
eingeschränkter
Bewegungserlaubnis auf einen niedrigeren Wert zu begrenzen als in
einer Region mit voller Bewegungserlaubnis.
-
Herkömmliche
Anlernverfahren, bei denen ein Roboter von einem Benutzer auf einer
zu reproduzierenden Bewegungsbahn geführt wird, sind nicht geeignet,
um dem Roboter die Grenzen von Regionen mit unterschiedlicher Bewegungsberechtigung beizubringen.
Hierfür
hat sich als zweckmäßig erwiesen,
eine von dem Informatikmodell abgeleitete Karte der Arbeitsumgebung
auf einem Anzeigeschirm einer interaktiven Benutzerschnittstelle
anzuzeigen, Daten, die wenigstens eine Grenze zwischen Regionen spezifizieren, über die
Benutzerschnittstelle zu empfangen, und die spezifizierte Grenze
in der Karte anzuzeigen. Wenn ein solches Informatikmodell beispielsweise
Positionen von fest eingebauten Geräten in der Arbeitsumgebung
des Roboters enthält,
ist es für
einen Benutzer bequem möglich,
in gleicher Weise wie durch Zeichnen mit einem Computergraphikprogramm
die Grenzen der Regionen relativ zu den in der Karte eingezeichneten
Geräten
einzugeben und die Korrektheit der Eingabe anhand der Anzeige der
spezifizierten Grenzen zu überprüfen.
-
Bei
einem aktiv angetriebenen Roboter lässt sich die Eingabe der Grenzen
der Regionen mit unterschiedlicher Bewegungsberechtigung vorteilhaft mit
einer späteren
Programmierung von Bewegungsabläufen
durch Führen
des Roboters entlang dieser Bewegungsabläufe kombinieren, indem nämlich der
Roboter bereits in der Lernphase, in der der Benutzer ihn auf den
gewünschten
Bewegungsabläufen
führt,
die dabei eingenommenen Positionen fortlaufend mit den Regionen
unterschiedlicher Bewegungsregionen vergleicht und je nach Ausgestaltung
die Bewegung blockiert, eine Bremskraft ausübt oder eine Rückstellkraft
ausübt,
wenn er feststellt, dass er sich in einem Grenzbereich zwischen
einer Region mit Bewegungserlaubnis und einer Region mit Bewegungsverbot
befindet.
-
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 schematisch einen erfindungsgemäßen passiv
beweglichen Roboter in verschiedenen Stadien einer Bewegung in einem
von zwei Bereichen mit Bewegungsverbot umgebenden Bereich mit Bewegungserlaubnis;
-
2 schematisch eine interaktive
Benutzerschnittstelle; und
-
3 Schritte der Erzeugung
eines geometrischen Modells mit der Benutzerschnittstelle aus 2; und
-
4 einen stationären, aktiv
beweglichen Roboter gemäß der Erfindung
in verschiedenen Stadien einer Bewegung.
-
1 zeigt in einer schematischen
Draufsicht einen Transportroboter 1 in verschiedenen Stadien
einer Bewegung. Der Transportroboter 1 hat ein Fahrgestell
mit einer Mehrzahl von Rollen 2, 3, wobei wenigstens
eine Rolle 3 durch einen Motor 4 lenkbar ist.
Der Motor 4 untersteht der Kontrolle einer Steuerschaltung 5,
die ihrerseits mit einer Anzahl von Sensoren 6 verbunden
ist, die der Steuerschaltung 5 Informationen liefern, die
es ihr ermöglichen,
die Position des Transportrobo ters 1 innerhalb eines in
ihr gespeicherten Informatikmodells der Umgebung des Roboters 1 zu
lokalisieren. Das Informatikmodell kennt insbesondere die Position
eines Ziels 7, auf das eine (in nicht dargestellter Weise)
auf den Transportroboter 1 geladene Fracht befördert werden
soll, sowie den Verlauf von Grenzen 8 zwischen einem Bereich 9 mit
Bewegungserlaubnis, in dem sich der Transportroboter 1 im
Prinzip beliebig bewegen darf, und Regionen 10 mit Bewegungsverbot,
in die der Transportroboter 1 nicht eindringen darf.
-
In
einer einfachen Ausgestaltung sind die Rollen 2, 3 des
Transportroboters 1 sämtlich
nicht motorisiert, und um den Transportroboter 1 zu bewegen,
muss er von einer Bedienungsperson geschoben werden. Der Transportroboter
könnte
jedoch auch mit einem Servoantrieb versehen sein, der auf einen
von einem Benutzer in einer Schieberichtung ausgeübten Druck
reagiert, in dem er den Transportroboter in diese Richtung in Bewegung
setzt.
-
Solange
der Transportroboter 1 von beiden Grenzen 8 entfernt
ist, wie in der ganz linken Stellung der 1 gezeigt, nimmt die Steuerschaltung 5 keinen
Einfluss auf die Richtung, in die ein Benutzer den Transportroboter 1 schiebt.
Die vordere Rolle 3 ist um eine vertikale Achse frei schwenkbar,
und ein Benutzer kann den Transportroboter 1 durch Ausüben eines
Drehmoments oder einer außermittigen
Schubkraft an dessen Rückseite
frei lenken, in z. B. von Einkaufswägen in Supermärkten bekannter
Weise.
-
Die
Bewegungsrichtung des Roboters 1 ist durch die Orientierung
der Rolle 3 festgelegt, wie durch einen gestrichelten Pfeil 11 in
der Fig. angegeben. Wenn der Roboter 1 in Richtung des
Pfeils 11 weiterbewegt wird, erreicht er schließlich eine
mittig in der 1 dargestellte
Stellung, in der er eine der Grenzen 8 berührt. Die
Steuerschaltung 5, die die Position des Roboters 1 fortlaufend überwacht,
erkennt die Grenzberührung
und reagiert darauf, indem sie den Motor 4 an steuert, um
die Rolle 3 im Uhrzeigersinn zu schwenken, so dass eine
Fahrtrichtung des Roboters parallel zur Grenze 8, wie durch
den Pfeil 12 angedeutet, resultiert. Einer von einem Benutzer
ausgeübten
Schubkraft in Richtung des Pfeils 11 weicht der Roboter
also aus, als ob er an einer virtuellen Wand entlang glitte. Auf
eine von der Bedienungsperson ausgeübte Lenkkraft, die den Roboter von
der Grenze 8 fort zurück
in die erlaubte Region 9 führt, reagiert die Steuerschaltung 5,
indem sie die Rolle 3 wieder freigibt, so dass der Benutzer
den Roboter 1 in der Region 9 wieder uneingeschränkt lenken
kann.
-
Die
in 1 gezeigten Grenzen
konvergieren mit einer leichten Krümmung gegen das Ziel 7, das
der Roboter 1 erreichen soll. Wenn der Benutzer den Roboter 1 nach
Kontakt mit der ersten Grenze 8 in der von der Steuerschaltung 5 eingestellten
Richtung 12 geradlinig weiterschiebt, löst sich der Roboter 1 infolge
der Krümmung
der Grenze 8 schließlich von
Letzterer, um, wie auf der rechten Seite der Figur dargestellt,
schließlich
gegen die zweite Grenze 8 zu stoßen. Hier reagiert die Steuerschaltung 5 mit
einer entsprechenden Reaktion, was dazu führt, dass der Roboter 1 schließlich exakt
das Ziel 7 erreicht, ohne dass der Benutzer sich um eine
exakte Lenkung kümmern
muss.
-
Das
Ziel 7 liegt, da es vom Roboter nicht gerammt werden darf,
in der Region 10 mit Bewegungsverbot, allerdings nah an
deren Grenze 8, so dass der Roboter bis in unmittelbare
Nähe des
Ziels gelangen kann. Wenn der Roboter sich bei der Anfahrt auf das
Ziel 7 der Grenze 8 unter einem großen, in
etwa senkrechten Winkel nähert,
ist es nicht sinnvoll, dass die Steuerschaltung 5 in die
Lenkung eingreift und die Rolle 3 dreht. Anders als bei
der oben betrachteten streifenden Annäherung an die Grenze 8 betätigt die
Steuerschaltung 5 in diesem Fall Bremsen der Rollen 2 oder 3,
um den Roboter rechtzeitig vor einem Zusammenstoß mit dem Ziel zum Stehen zu bringen.
Eine solche Steuerung kann realisiert werden, indem die Steuerschaltung
bei jeder Annäherung
an die Grenze 8 anhand des Annäherungswinkels unter einer
Lenkbewegung und einem Bremsen auswählt, oder indem die Region 9,
in der der Roboter sich bewegen darf, in dem geometrischen Modell der
Steuerschaltung unterteilt wird in eine Region mit unbeschränkter Bewegungsberechtigung
und eine dem Ziel 7 vorgelagerte Region 13 mit
eingeschränkter
Bewegungsberechtigung, in der der Roboter nur gebremst bewegbar
ist.
-
2 ist eine schematische
Ansicht einer Mensch-Maschine-Schnittstelle,
die es erlaubt, Definitionen von Regionen mit Bewegungserlaubnis
bzw. Bewegungsverbot oder von Grenzen zwischen solchen Regionen
einzugeben. Bei dieser Schnittstelle kann es sich beispielsweise
um einen üblichen
Arbeitsplatzrechner mit einem Bildschirm 14 und einer Maus 15 oder
einem äquivalenten
graphischen Eingabewerkzeug handeln. Der Arbeitsplatzrechner verfügt über eine
(nicht dargestellte) Schnittstelle zur Steuerschaltung 5,
die es ihm ermöglicht,
wenn vorhanden, ein Informatikmodell einer Arbeitsumgebung, in der
der Roboter 1 eingesetzt werden soll, aus dessen Steuerschaltung 5 zu
lesen bzw. ein an dem Arbeitsplatzrechner geändertes oder neu definiertes
Modell in die Steuerschaltung 5 zu laden.
-
Auf
dem Bildschirm 14 ist schematisch eine aus einem solchen
Modell abgeleitete Karte der Arbeitsumgebung gezeigt. Die Karte
zeigt hier eine Mehrzahl von Zielen 7, welche anzufahren
der Transportroboter 1 in der Lage sein muss, sowie Umrisse einer
Mehrzahl von Hindernissen 16, z.B. von in der Arbeitsumgebung
fest installierten Maschinen, mit denen der Roboter 1 nicht
zusammenstoßen
darf. Die Darstellung der Ziele und Hindernisse auf dem Bildschirm 14 kann
ein Benutzer als Referenz für
die Festlegung der Grenzen zwischen Regionen 9 bzw. 10 nutzen,
in denen sich der Roboter aufhalten bzw. nicht aufhalten darf. Eine
solche Festlegung erfolgt vorzugsweise in von Computergraphikprogrammen her
bekannter Weise durch Auswählen
eines Typs von Graphik-Objekt wie etwa einem Kreis, einem Rechteck 17,
einem Polygonzug oder einer kontinuierlich gekrümmten Kurve, und sukzessives
Festlegen der Koordinaten von für
die Definition eines solchen Objekts im Einzelfall benötigten Punkten
mit Hilfe der Maus 15. Selbstverständlich können die Objekte dabei auch
räumlich
angeordnet sein, beispielsweise als Graphik-Objekt in der Form eines
Polyeders. Wobei mittels einer räumlichen
Anordnung der Graphik-Objekte 3D-Bewegungen beschrieben werden können, z.B.
die Bewegung des Roboterarms.
-
3A bis D zeigen
schematisch Etappen der Konstruktion der Regionen mit Bewegungserlaubnis
bzw. Bewegungsverbot für
einen Transportroboter 1. Ausgangspunkt der Konstruktion
ist in 3A eine Region 10 mit
Bewegungsverbot, die, wie durch Schraffur angedeutet, den gesamten
Arbeitsbereich des Roboters 1 ausfüllt. Eine nicht schraffierte
Region 9, in der sich der Roboter bewegen darf, wird schrittweise
durch Hineinzeichnen von flächigen
graphischen Objekten in die dargestellte Karte der Arbeitsumgebung
definiert, wie anhand der Abfolge der 3B, C, D zu erkennen,
in denen zunächst
ein rechteckiger allgemeiner Verkehrsbereich und dann von diesem
allgemeinen Verkehrsbereich ausgehend sich trichterförmig zu
diversen Zielen hin verjüngende
Wege gezeichnet werden.
-
Selbstverständlich könnte auch
umgekehrt zu Beginn der Konstruktion die gesamte Arbeitsumgebung
als Region mit Bewegungserlaubnis angenommen werden, oder aus einer
Region mit Bewegungserlaubnis kann durch Hineinzeichnen eines flächigen Graphikobjektes
eine Region mit Bewegungsverbot herausgeschnitten werden.
-
4 zeigt ein schematisches
Beispiel eines Roboters 21 vom Typ mit einem stationären Standfuß und einem
daran angelenkten beweglichen Arm 22, der vorgesehen ist,
um unter der Kontrolle einer Steuerschaltung, die diverse interne
Motoren des Roboters 21 ansteuert, vorgegebene Bewegungen auszuführen.
-
Es
ist bekannt, derartigen Robotern die auszuführenden Bewegungen beizubringen,
indem der Roboterarm von einer Bedienungsperson in der gewünschten
Weise geführt
wird und die Steuerschaltung im Laufe der Bewegung auftretende Stellungen des
Arms aufzeichnet, um sie später
zu reproduzieren. Auch für
einen solchen Roboter ist es möglich, im
Arbeitsbereich des Roboters eine Region 9, in der sich
der Roboter bewegen darf, bzw. eine Region 10 zu definieren,
in der er sich nicht bewegen darf. Dies kann mit der gleichen Schnittstelle
wie anhand der 2 beschrieben
und dem gleichen Verfahren wie anhand der 3 beschrieben, geschehen. Wenn nach dem
Definieren der Regionen 9 und 10 ein Benutzer
dem Roboter durchzuführende
Bewegungen beibringt, vergleicht die Steuerschaltung die dabei eingenommenen
Positionen des Roboters 21 ständig mit der vorhergegebenen
Definition der Regionen und verhindert jede Bewegung des Roboters 21,
die diesen in die Region 10 mit Bewegungsverbot führen würde. Im
in 4 gezeigten Beispiel
hat die Region 10 mit Bewegungsverbot einen Vorsprung,
der sich in Richtung des Fußes
des Roboters 21 erstreckt, und der Roboter 21 soll
eine Bewegung zwischen Orten 24, 25 beiderseits
des Vorsprungs 22 ausführen. Wenn
eine Bedienungsperson 26, die sich z.B. im Bereich des
Vorsprungs 22 aufhalten kann, die am Ort 24 befindliche
Hand 27 des Roboters zu sich heranzieht, um sie zum Ort 25 zu
führen,
blockiert die Steuerschaltung die Bewegung des Roboters 21,
sobald die Hand 27 in der in der Figur mit 21a bezeichneten
Stellung die Grenze der verbotenen Region 10 erreicht.
In dieser Stellung lässt
die Steuerschaltung nur noch eine Bewegung des Roboters 21 entlang der
Grenze des Bereichs 10 zu, so dass die Bedienungsperson 26 die
Hand 27 entlang der Grenze der Region 10, z.B. über die
in der Figur mit 21b, 21c bezeichneten Stellungen,
zum Ort 25 führen
muss. Auf diese Weise ist sichergestellt, dass die Steuerschaltung 5 als
durchzuführende
Bewegungen nur solche lernt, die die verbotene Region 10 umgehen, Um
zu verhindern, dass die Bedienungsperson den Roboter aus der ihm
erlaubten Region herausführt,
ist es im Prinzip ausreichend, wenn die Steuerschaltung bei Erreichen
der Grenze zwischen den Regionen 9 und 10 Bewegungen,
die aus der erlaubten Region herausführen, abrupt sperrt. Bevorzugt
ist allerdings eine Steuerung, bei der die Steuerschaltung Bremseinrichtungen
der einzelnen Gelenke des Roboters allmählich aktiviert, wenn der Roboter
in einen Grenzbereich zwischen den Regionen 9 und 10 eindringt,
wobei die Bremskraft mit zunehmender Annäherung an die verbotene Region 10 immer
stärker
gemacht werden kann, bis hin zu einer vollständigen Sperrung der Beweglichkeit.
-
Die
Ausübung
einer solchen Bremskraft verhindert zwar, dass die Bewegung des
Roboters bei Erreichen der verbotenen Region abrupt gestoppt werden
muss, sie führt
jedoch nicht notwendigerweise dazu, dass der Roboter von allein
in die erlaubte Region 9 zurückkehrt. Bei einem mit Hilfe
von eigenen Motoren autonom bewegten Roboter wie dem hier betrachteten
kann jedoch auch vorgesehen werden, dass die Steuerschaltung, wenn
der Roboter in einen Grenzbereich zwischen erlaubter und verbotener
Region eindringt, die Motoren des Roboters ansteuert, um eine Rückstellkraft
zu erzeugen, die entgegen einer vom Benutzer ausgeübten Führungskraft
den Roboter in die erlaubte Region 9 hält. Eine solche für die Bedienungsperson 26 wahrnehmbare Rückstellkraft
macht der Bedienungsperson 26 in sehr einfacher und intuitiver
Weise deutlich, welche Bewegungen dem Roboter 21 erlaubt
sind und welche nicht, und welche Bewegungen zwischen den Orten 24 und 25 sie
folglich dem Roboter beibringen darf.
-
Selbstverständlich ist
es im Zusammenhang mit dem in 4 dargestellten
Ausführungsbeispiel der
Erfindung auch denkbar, anstelle eines Roboters mit stationärem Standfuß Arbeitsmaschinen
in unterschiedlichsten Ausführungsformen
einzusetzen. Beispielsweise eignen sich besonders Arbeitsmaschinen
mit Roboterarm in Verbindung mit einer mobilen Plattform.