-
Diese Erfindung bezieht sich auf ein System zum Steuern der
Fortbewegung eines Schreitroboters mit Beinen, insbesondere
auf ein System zum Steuern der Fortbewegung eines Zweibein-
Schreitroboters oder dgl., der die Beingelenke zum
Zeitpunkt des Fußsenkens derart nachgebesteuert, daß eine gute
Geländeanpassungsfähigkeit erreicht wird.
-
Der beträchtliche Stoß, den ein Schreitroboter vom
Untergrund empfängt, wenn sein freier Fuß aufsetzt, ist groß
genug, die Fortbewegung des Roboters zu destabilisieren.
Zum Dämpfen des Fußsenkstoßes (das Fußsenken ist das
Ereignis des Aufsetzens oder Landens eines Fußes) schlug der
Anmelder in der früheren japanischen Patentanmeldung Nr. 1-
297199 ein System vor, in dem ein Mittel zum Erfassen des
durch den Stoß mit dem Untergrund verursachten
Fußgelenkmoments in dem Gelenkmechanismus jedes Beins eingebaut ist
und ein zu der Größe des erfaßten Moments proportionales
Geschwindigkeitskommando an einem Fußgelenkantriebsmotor
angelegt wird, um eine Untergrundnachgebeoperation zu
erreichen. Dieses System basiert auf dem Konzept virtueller
Nachgebesteuerung, die unter Verwendung von
Geschwindigkeitsanalysesteuerung implement ierte Anpassungssteuerung
umfaßt. [siehe "Virtual compliance control of multi-degree-
of-freedom robots" (Gesammelte Schriften der Measurement
and Automatic Control Society, Band 22, Nr. 3, März 1986.)]
Obwohl das vorgeschlagene System einen wichtigen Beitrag
zur Stabilisierung der Fortbewegung eines Roboters liefert,
indem es ermöglicht, den Stoß beim Fußsenken bis zu einem
befriedigenden Grad zu absorbieren, weist es nichts desto
trotz den folgenden Nachteil auf.
-
Selbst wenn der beim Landen des Fußes empfangene Stoß groß
wird, wie etwa während schnellen Gehens oder wenn der
Roboter einen schweren Gegenstand trägt, kann der Stoß im
Augenblick des Fußsenkens noch adäquat absorbiert werden,
sofern die Nachgebeoperation schnell ist. Da aber die
Geschwindigkeit, mit der der Boden des Fußes den Untergrund
trifft, unter derartigen Umständen hoch ist, neigt der Fuß
dazu, derart zu wirken, als würde er versuchen, den
Untergrund abzustoßen, so daß von einem Gesamtgesichtspunkt die
Stoßabsorptionswirkung schlechter anstatt besser wird. Eine
Verlangsamung der Nachgebeoperation, um dieses Problem zu
vermeiden, hilft nicht, da es hierdurch unmöglich wird, die
Stoßabsorption im Augenblick des Fußsenkens sanft
durchzuführen und somit bewirkt, daß die Absorption des Stoßes
nicht ausreichend ist. Insofern wie die
Nachgebegeschwindigkeit während des gesamten Fußsenkereignisses konstant
gehalten wird, wird deshalb die Stoßabsorption während
schnellen Gehens, Gehens, während eine schwere Nutzlast
getragen wird, und dergleichen nicht ausreichend sein,
unabhängig davon, welche Nachgebegeschwindigkeit gewählt
ist.
-
In dem Steuersystem gemäß der oben erwähnten früheren
japanischen Patentanmeldung des Anmelders wird das
Umschalten zwischen der Steuerung der Nachgebeoperation zum
Aufnehmen und Dämpfen des Fußsenkstoßes und der folgenden
Positionssteuerung, bei der keine Nachgebeoperation
durchgeführt wird, diskontinuierlich und diese
Diskontinuierlichkeit beeinträchtigt das gleichmäßige Gehen. Zum
Beispiel bewirkt eine Umschaltung, die auftritt, wenn eine
Zehe oder Ferse gerade oberhalb des Untergrunds ist, daß
die Zehe oder Ferse gegen den Untergrund tritt, wodurch das
System einen Stoß erzeugt, der auf andere Weise nicht
auftreten würde.
-
Darüber hinaus wird bei dem Steuersystem gemäß der früheren
Patentanmeldung die Stoßabsorptionssteuerung erst nach dem
Empfang eines Fußsenksignals gestartet. Somit ist es in
Fällen, wie etwa der Fall, daß das Beingliederwerk des
freien Beins mit etwas oberhalb des Untergrunds
Vorstehendem in Kontakt kommt, nicht möglich, die gewünschte
flexible "Weide-im-Wind"-Steuerung des Fußgelenks zu erzielen,
da das System zu diesem Zeitpunkt die Positionssteuerung
durchführt. Falls das Fußgelenk fähig sein sollte, sich zu
derartigen Zeitpunkten gefügig an externe Kräfte
anzupassen, so würde der vom Roboter empfangene Stoß beträchtlich
gemildert und die Gefahr des Umkippens stark vermindert
sein.
-
Ein Schreitroboter mit Beinen, insbesondere ein Zweibein-
Schreitroboter, ist in der japanischen
Patentoffenlegungsschrift Nr. 62-97006 offenbart.
-
Gemäß der vorliegenden Erfindung wird ein System zum
Steuern der Fortbewegung eines Schreitroboters mit zwei Beinen
bereitgestellt, der einen Körper und zwei Beingliederwerke
aufweist, die jeweils mit dem Körper mittels eines
Hüftantriebsgelenks verbunden sind und jeweils aus einem
Fußabschnitt und einem Beinabschnitt zusammengesetzt sind, die
mittels eines Fußantriebsgelenks verbunden sind, das System
umfassend erste Mittel zum Erfassen wenigstens eines
tatsächlichen Winkels jedes Antriebsgelenks und
Servosteuermittel zum Antreiben jedes Antriebsgelenks derart, daß
wenigstens ein Fehler zwischen dem erfaßten tatsächlichen
Winkel und einem Zielwinkel abnimmt;
-
wobei:
-
ein zweites Mittel vorgesehen ist zum Erfassen eines
Moments oder einer Kraft, die auf ein Beingliederwerk wirken,
wenn der Fußabschnitt den Untergrund berührt;
-
ein drittes Mittel vorgesehen ist zum Messen der Zeit nach
dem Anheben des Beingliederwerks vom Untergrund;
-
ein viertes Mittel vorgesehen ist zum Bestimmen einer
Antriebsgeschwindigkeit des Fußantriebsgelenks des
Beingliederwerks durch Multiplizieren des erfaßten Moment- oder
Kraftwerts mit einem Verstärkungsfaktor, der bezüglich der
Zeit variabel festgesetzt ist; und wobei
-
das Servosteuermittel das Fußantriebsgelenk mit der
Antriebsgeschwindigkeit antreibt, um den Fußabschnitt des
Beingliederwerks nachgiebig zu machen.
-
Da der Steuerverstärkungsfaktor im Laufe der Zeit verändert
wird, kann er somit auf einen relativ großen Anfangswert
gesetzt werden, um eine effektive Stoßabsorption über den
gesamten Bereich von Schreitgeschwindigkeiten unabhängig
von dem Gewicht der Nutzlast, die der Roboter trägt, zu
ermöglichen.
-
Mittels der vorliegenden Erfindung, wenigstens in ihren
bevorzugten Formen, wird ein System zum Steuern der
Fortbewegung eines Schreitroboters mit Beinen bereitgestellt,
dessen System zur Steuerung der Nachgebeoperation geeignet
ist, eine Steuerung über den gesamten
Schreitgeschwindigkeitsbereich von langsam bis schnell bereitzustellen und
eine verbesserte Stoßabsorption unabhängig davon, ob der
Roboter eine schwere Nutzlast trägt oder nicht, erreichen
kann, bei der der übergang von der Stoßabsorptionssteuerung
zur Positionssteuerung sanft durchgeführt wird, und das
auch dazu fähig ist, das Fußgelenk des freien Beins zu
steuern, um mit Situationen fertig zu werden, wie etwa jene
gerade oben beschriebene betreffend vorstehende
Gegenstände.
-
Eine Ausführungsform der Erfindung wird nun beispielhaft
und mit Bezugnahme auf die begleitenden Zeichnungen
beschrieben, in denen:
-
Fig. 1 eine Gesamtskelettansicht eines
Zweibein-Schreitroboters gemäß einer Ausführungsform der
vorliegenden Erfindung ist;
-
Fig. 2 eine Seitenansicht ist und die konkrete
Realisierung des in Fig. 1 schematisch veranschaulichten
Roboters vom Knie ab nach unten zeigt;
-
Fig. 3 eine Schnittansicht nach Linie III-III der Fig. 2
ist;
-
Fig. 4 ein detailliertes Blockdiagramm der in Fig. 1
gezeigten Steuereinheit ist;
-
Fig. 5 ein Flußdiagramm ist, das die Funktionsweise der
Steuereinheit der Fig. 4 zeigt;
-
Fig. 6 ein Blockdiagramm ist, das den in Prozeduren des
Flußdiagramms der Fig. 5 durchgeführten
Steueralgorithmus für andere Antriebsgelenke als die
Fußgelenke zeigt;
-
Fig. 7 ein zu Fig. 6 ähnliches Blockdiagramm ist, das
aber den Steueralgorithmus für die Fußgelenke
zeigt;
-
Fig. 8 eine Verstärkung zeigt, die in einer auf
Grundlage des Neigungswinkels des Roboters in dem
Flußdiagramm der Fig. 5 durchgeführten
Rückkoppelungsregelung verwendet wird; und
-
Fig. 9 ein eine Periode zeigendes Timing-Diagramm ist,
in der eine virtuelle Nachgebesteuerung gemäß dem
Flußdiagramm der Fig. 5 durchgeführt wird, und
eine in der Steuerung verwendete Verstärkung
veranschaulicht.
-
Eine Ausführungsform wird nun mit Bezugnahme auf einen
Zweibein-Schreitroboter als eine spezielle Ausführungsform
eines Schreitroboters mit Beinen erklärt. Eine
Gesamtskelettansicht des Zweibein-Schreitroboters ist in Fig. 1
gezeigt. Der durch das Bezugszeichen 1 bezeichnete Roboter
ist mit sechs Gelenken (Achsen) an jedem seines rechten (R)
und linken (L) Beins versehen. Von oben nach unten sind
diese Gelenke (Achsen) : Hüftdrehgelenke (Achsen) 10R, 10L,
Hüftnickrichtungsgelenke (Achsen) 12R, 12L,
Hüftrollrichtungsgelenke (Achsen) 14R, 14L, Knienickrichtungsgelenke
(Achsen) 16R, 16L, Fußgelenknickrichtungsgelenke (Achsen)
18R, 18L und Fußgelenkrollrichtungsgelenke (Achsen) 20R,
20L. Die Nickrichtung ist die durch angegebene Richtung,
und die Rollrichtung ist die durch angegebene Richtung,
wie im rechten unteren Teil der Figur gezeigt. Unterhalb
sind Füße 22R, 22L angebracht, und es ist ein Körper
(Haupteinheit) 24 an der obersten Stelle angeordnet. Der
Körper 24 enthält eine Steuereinheit 26.
-
Bei dieser Anordnung bilden die Gelenke (Achsen) 10R (L),
12R (L) und 14R (L) zusammen ein rechtes (linkes)
Hüftgelenk. Die drei Achsen treffen sich an einem einzelnen
Punkt. Die Gelenke (Achsen) 18R (L) und 20R (L) bilden
zusammen ein rechtes (linkes) Fußgelenk, wobei sich diese
beiden Achsen ebenfalls orthogonal schneiden. Die drei
Nickrichtungsgelenke (Achsen) 12R (L), 16R (L) und 18R (L)
sind zueinander parallel und ihre Positionsbeziehung
untereinander bleibt unabhängig von dem Verhalten der anderen
Gelenke (Achsen) unverändert. Wie veranschaulicht, weist
jedes Bein sechs Freiheitsgrade auf, und jeder Fuß 22R (L)
kann an der gewünschten Position in der gewünschten
Richtung aufgesetzt werden, unabhängig von der Tatsache, daß er
an dem Körper 24 angebracht ist. Genauer: Während des
Gehens können die Beine wie gewünscht als Ganzes bewegt
werden, indem die 12 (6 x 2) Gelenke (Achsen) zum Ändern
ihrer einzelnen Winkel angemessen angetrieben werden, was
das gewünschte Gehen im dreidimensionalen Raum ermöglicht.
Die Hüftgelenke und die Kniegelenke sind durch
Oberschenkel-Gliederwerke 27R, 27L verbunden, und die
Kniegelenke und Fußgelenke sind durch
Unterschenkel-Gliederwerke 28R, 28L verbunden.
-
Die Gelenke sind hauptsächlich durch Motoren und
Untersetzungsgetriebemechanismen gebildet. Der Aufbau des Knies
wird nun im einzelnen mit Bezugnahme auf die Fig. 2 und 3
beschrieben. Obwohl eine detaillierte Beschreibung der
Hüftgelenke nicht gegeben wird, so sollte verstanden
werden, daß sie eine ähnliche Struktur wie die Knie aufweisen.
Da das linke und das rechte Bein seitensymmetrisch sind,
wird im folgenden nur das rechte Bein erklärt.
-
Es wird auf die Fig. 2 und 3 Bezug genommen. Die
Leistungsabgabe eines (nicht gezeigten) Motors, der an einem
Zwischenabschnitt des Oberschenkel-Gliederwerks 27R angebracht
ist, wird über einen Riemen 82 zu der Eingangswelle eines
am Kniegelenk (Achse) 16R installierten
Sinus-Untersetzungsgetriebes 84 übertragen. Das obere Ende des
Unterschenkel-Gliederwerks 28R ist mit einer Ausnehmung 87
ausgebildet, die einen Motor 88 aufnimmt, dessen
Leistungsabgabe durch einen Riemen 90 zu einem an dem Fußgelenk
vorgesehenen Sinus-Untersetzungsgetriebe 92 eingegeben
wird, wodurch das rechte Fußelement 22R um die Achse 18R in
der Nickrichtung angetrieben wird. Der Fuß 22R ist ferner
dazu eingerichtet, um die die Achse 18R orthogonal
schneidende Achse 20R in der Rollrichtung frei zu schwingen. Für
diesen Zweck ist ein Sinus-Untersetzungsgetriebe 94 und ein
Motor 96 zur direkten Zufuhr von Leistung dorthin
vorgesehen.
Jeder der Motoren ist mit einem Drehgeber
versehen. (Nur der Drehgeber 89 für den Motor 88 ist in den
Zeichnungen gezeigt.)
-
Das Fußgelenk ist ferner mit einem sechsdimensionalen
Kraft- und Drehmomentsensor 98 zum Messen der , und -
Komponenten versehen, die durch den Fuß zum Roboter
übertragen werden, und ferner zum getrennten Messen der drei
Richtungskomponenten des Moments, um zu erfassen, ob der
Fuß aufgesetzt hat oder nicht und zum Erfassen der auf das
tragende Bein wirkenden Kraft. Die Unterseite des Fußes ist
näherungsweise flach und ist mit elastischen Elementen 220
aus Gummi oder dgl. versehen, um den zum Zeitpunkt des
Aufsetzens des Fußes empfangenen Stoß zu absorbieren. Die
vier Ecken der Fußunterseite sind ferner mit
Bodenkontaktschaltern 99 (in den Fig; 2 und 3 nicht gezeigt)
herkömmlichen Aufbaus versehen, um die Berührung zwischen dem Fuß
und dem Untergrund zu erfassen. Wie in Fig. 1 gezeigt, ist
ferner ein Paar von Neigungswinkelsensoren 100, 102 an
einer angemessenen Stelle des Körpers 94 vorgesehen, um (a)
die Größe des Winkels und der Winkelgeschwindigkeit der
Neigung relativ zur z-Achse in der x-z-Ebene und (b) die
Größe des Winkels und der Winkelgeschwindigkeit der Neigung
relativ zu der z-Achse in der y-z-Ebene zu erfassen. Die
Ausgangsgrößen der Neigungswinkelsensoren 100, 102 werden
zu der in dem Körper 24 aufgenommenen Steuereinheit 26
gesendet.
-
Wie im detaillierten Blockdiagramm der Fig. 4 gezeigt, ist
die Steuereinheit 26 als ein Mikrocomputer ausgebildet. Die
Ausgangsgrößen der Neigungswinkelsensoren 100, 102 usw.
werden hier in einem A/D-Wandler 104 in Digitalwerte
umgewandelt, dessen Ausgabe über einen Bus 106 zu einem RAM
(Direktzugriffsspeicher) 108 weiterbefördert wird. Die
Ausgaben der Geber 89 usw. werden durch einen Zähler 110 zu
dem RAM 108 gesendet, und die Ausgaben der
Bodenkontaktschalter 99 usw. werden durch einen Wellenformschaltkreis
112 gegeben und im RAM 108 gespeichert. Die Steuereinheit
weist eine CPU (Zentralprozessoreinheit) 114 auf, die - in
einer später zu erklärenden Art und Weise - die
gespeicherten Fortbewegungsdaten liest,
Geschwindigkeitssteuerkommandos auf der Grundlage der Abweichung zwischen den
gespeicherten Fortbewegungsdaten und der von dem Zähler 110
empfangenen gemessenen Werte berechnet, und die berechneten
Geschwindigkeitssteuerkommandos durch einen D/A-Wandler 118
zu einem Servoverstärker 120 für den jeweiligen Motor
weitergibt. Die Geberausgabe wird ferner durch einen F/V-
Wandler 112 zu dem Servoverstärker 120 gesendet, wodurch
eine untergeordnete Schleife zur Geschwindigkeitsregelung
in jedem Motor etabliert ist. Das Bezugszeichen 128
bezeichnet einen Steuerhebel, das Bezugszeichen 130 einen
Nullreferenzschalter zum Bestimmen der (aufrechten)
Ursprungshaltung und das Bezugszeichen 132 einen
Grenzschalter zur Verhinderung eines Überfahrens.
-
Die Funktionsweise des Steuersystems wird nun mit Bezug auf
das Flußdiagramm der Fig. 5 erklärt. Die in dieser Figur
gezeigte Steuerung setzt ein Offline-Festsetzen der
Ziellenkwinkel im voraus und die Verwendung des vorher
erwähnten virtuellen Nachgebesteuerverfahrens voraus.
-
Der Ablauf beginnt mit Schritt 5b, in dem die
verschiedenen Teile des Systems initialisiert werden, und schreitet
dann zu Schritt S12 fort, in dem ein Fortbewegungsmuster
iθt ausgelesen wird. Dieses Muster gibt die
Gelenkwinkelzielwerte für das Gehen des Roboters über eine ideal flache
Oberfläche gleichmäßiger Härte an. Der Präfix "i" gibt die
Gelenknummer, und der Suffix "t" gibt den Gelenkwinkel zur
Zeit an. Die Gelenke sind vom Boden nach oben als 20R=1,
20L=2, ... numeriert. Diese Zeitreihendaten werden im
voraus unter Verwendung eines großen Computers berechnet,
wie vorher erwähnt, und in einem ROM 116 des Mikrocomputers
gespeichert.
-
Die Prozedur schreitet dann zu Schritt S14 vor, in dem die
Parameter kp, kv . .. eingelesen werden. Diese Parameter
sind Rückkopplungsverstärkungsfaktoren, die später im
Detail beschrieben werden. Im folgenden Schritt S16 werden
der Zeitgeberwert , der Zählerwert COUNT und der
Gelenknummerwert (Zählerwert) auf null zurückgesetzt, wonach
das Gehen in Schritt S18 gestartet wird und der Wert des
Zählers zum Zählen der Gelenknummern in Schritt 520 auf 1
gesetzt wird. Der Ablauf schreitet dann zu Schritt S22
fort, in dem die Parameter für den Gelenkwinkel iθt (i=1)
usw. entsprechend der gegenwärtig gesetzten Gelenknummer
aus dem Speicher ausgelesen werden. Die Notation iθt+1, die
im Flußdiagramm erscheint, bezeichnet den Gelenkzielwinkel
für die Zeit t+1, die auf die gegenwärtige Zeit folgt,
nämlich für die Zeit, bei der der nächste Programmzyklus
anfängt. Ein Wert Omega Dt gibt die Zielwinkelgeschwindig
keit an (später zu beschreiben). Ferner ist Ft(Omega w) ein
Merker, der die Zweibein-Abstützperiode anzeigt,
Ft(Omega s) ein Merker, der die Einbein-Abstützperiode
anzeigt, und Ft(C) ein Merker, der die
Stoßabsorptionssteuerperiode anzeigt. Der Mikrocomputer bestimmt auf der
Grundlage der Ausgaben des jeweiligen sechsdimensionalen
Kraft- und Drehmomentsensors 98 und dergleichen, wenn die
Prozedur in dieser Periode ist, und setzt das Merkerbit zu
dieser Zeit auf 1.
-
Als nächstes werden in Schritt S24 die Ausgaben der
Neigungssensoren usw. eingelesen. Hier gibt ein Wert iθR den
tatsächlichen Winkel des i-ten Gelenks an, gibt ein Wert
Omega R die tatsächliche Neigungswinkelgeschwindigkeit an,
und gibt ein Wert M das tatsächliche auf den Fuß wirkende
Moment an. Der Ablauf schreitet dann zu Schritt S26 fort,
in dem der Positionsregelungswert iV1 berechnet wird und
schreitet zu Schritt S28 fort, in dem der
Geschwindigkeitsregelungswert (Vorwärtsregelungswert) iV2 berechnet wird.
Wie in Fig. 6 gezeigt, wird in anderen Worten in dem
Steuersystem gemäß dieser Ausführungsform ein
Geschwindigkeitssteuerwert zu dem betroffenen Servoverstärker 120
ausgegeben, welcher Geschwindigkeitssteuerwert gleich der Summe
eines Rückkopplungswerts, der durch Multiplizieren der
Abweichung Delta θ zwischen dem Gelenkwinkelführungswert
iθt und dem tatsächlichen Gelenkwinkel iθR mit einem
Proportionalitätsverstärkungsfaktor kp erhalten ist, und eines
Rückkopplungswerts, der durch Multiplizieren der Abweichung
zwischen dem Gelenkwinkelführungswert iθt zur Zeit t und
des Gelenkwinkelführungswerts iθt+1 zur Zeit t+1 mit einem
Verstärkungsfaktor kv erhalten ist. Es sollte allerdings
vermerkt werden, daß das Blockdiagramm der Fig. 6 sich auf
andere Gelenke als die Fußgelenke bezieht und daß, wie in
dem Blockdiagramm der Fig. 7 gezeigt, in dem Falle der
Fußgelenke auch Regelungswerte auf Grundlage der
Nachgebesteuerung und dergleichen vorliegen. Dies wird in
genaueren Einzelheiten später beschrieben.
-
Der Prozeß schreitet dann zu Schritt S30 fort, in dem eine
Unterscheidung gemacht wird, ob die Gelenknummer 1 gleich 5
oder größer geworden ist oder nicht, d.h. ob der Steuerwert
eines anderen Gelenks als der Fußgelenke gerade berechnet
wird oder nicht, und da das Ergebnis natürlich negativ ist,
schreitet die Prozedur weiter zu Schritt S32 und zu den
nachfolgenden Schritten, in denen, als erstes, die
Neigungswinkelgeschwindigkeitsrückkopplung und dergleichen
durchgeführt werden. Speziell wird in den Schritten S32 bis
S34 unterschieden, ob der Merker Ft(Omega w) oder der
Merker Ft(Omega s) an ist (ob der Roboter in einem
Zweibein-Abstützzustand oder einem Einbein-Abstützzustand
ist) und - auf Grundlage des Ergebnisses dieser
Entscheidung - schreitet die Prozedur zu Schritt S36 oder S38 fort,
in dem ein dritter Geschwindigkeitsregelungswert iV3
berechnet wird, wie in Fig. 7 gezeigt, in dem die Abweichung
Delta Omega zwischen der Zielneigungswinkelgeschwindigkeit
Omega Dt und der tatsächlichen
Neigungswinkelgeschwindigkeit Omega R mit dem Verstärkungsfaktor k Omega
multipliziert wird.
-
Dies bedeutet, einfach ausgesagt, daß zusätzlich zur
Durchführung der Nachgebesteuerung das Steuersystem auch eine
Stabilitätssteuerung bezüglich des Fußgelenks des
abstützenden Beins verwirklicht, um zu verhindern, daß der
Roboter umkippt, wenn entschieden worden ist, daß die
Neigungswinkelgeschwindigkeit
von dem Zielwert abweicht oder daß
ein externes Moment auf das Fußgelenk wirkt. Speziell
steuert das Steuersystem bei derartigen Gelegenheiten das
Fußgelenk des stützenden Beins gemäß dem Abweichungsgrad
an, um eine Reaktionskraft bezüglich des Untergrunds zu
erzeugen und somit die Haltung des Roboters derart zu
korrigieren, wie es erforderlich ist, um zu verhindern, daß
der Roboter umfällt. Der Verstärkungsfaktor k Omega ist
während der Zweibein-Abstützperiode und während der
Einbein-Abstützperiode wie in Fig. 8 gezeigt definiert.
Fig. 8 zeigt auf ihrer linken Seite ein Beispiel der
Richtung der Neigungswinkelgeschwindigkeitsabweichung Delta
Omega, die auf den Roboter wirkt, wenn der Roboter von
vorne betrachtet wird. In diesem Fall ist die Richtung der
Verstärkung für das Fußgelenk 20L, das aufgrund der Wirkung
der Neigungswinkelgeschwindigkeitsabweichung Delta Omega
belastet ist, wie in der Figur angedeutet. Fig. 8 zeigt auf
ihrer rechten Seite den Zustand des Roboters während des
Abstützens mit einem Bein, wie von vorne gesehen. In diesem
Fall ist das Vorzeichen des Verstärkungsfaktors K Omega
derart definiert, daß das Fußgelenk 20L des abstützenden
Beins in der angezeigten Richtung angetrieben wird. In der
Prozedur gemäß dem Flußdiagramm der Fig. 5 ist der
Steuerwert im Schritt S40 null, wenn gefunden wird, daß der
Roboter weder im Zweibein-Abstützzustand noch im Einbein-
Abstützzustand ist.
-
Der Ablauf schreitet dann zu Schritt S42 fort, in dem der
virtuelle Nachgebesteuerwert bestimmt wird. Wie in Fig. 9
gezeigt, ist speziell eine vorgegebene Periode TCOMP
zwischen dem Fußanheben (das Ereignis des Anhebens eines
Fußes) und des Fußsenkens des freien Beins des Roboters als
die Stoßabsorptionssteuerperiode definiert, und wenn in
Schritt S42 entschieden wird, daß der Ablauf in diese
Periode eingetreten ist, schreitet die Prozedur zu Schritt
S44 fort, in dem der Verstärkungsfaktor kc berechnet wird
als kc = KCOMP f(COUNT), zu Schritt S46, in dem ein
vierter Geschwindigkeitsrückkopplungswert iV4 berechnet
wird, indem kc mit dem erfaßten Moment M multipliziert wird
(wie in Fig. 7 gezeigt) und dann, nach dem Erfassen eines
Fußsenkens in Schritt S48, zu Schritt 50, in dem der
Zählerwert erhöht wird. Mit anderen Worten wird der
Stoßabsorptionsgewinnfaktor als eine Funktion des Zählwerts
COUNT ermittelt und wird, wie in Fig. 9 gezeigt, dieser
Gewinnfaktor vom Zeitpunkt des Fußsenkens über den
Zeitverlauf progressiv auf null vermindert. Wenn in Schritt S42
gefunden wird, daß der Ablauf nicht in der
Stoßabsorptionsperiode ist, geht die Prozedur zu Schritt S52, in dem der
Steuerwert iv4 auf null gesetzt wird, und dann zu Schritt
S54, in dem der Zählerwert auf null zurückgesetzt wird.
-
Als nächstes werden in Schritt S56 alle berechneten
Steuerwerte zusammenaddiert, um eine Summe iVCOMM zu erhalten,
die zu dem Servoverstärker 120 für den betreffenden Motor
ausgegeben wird, wonach der Gelenknummernzähler in Schritt
S58 erhöht wird, in Schritt S60 eine Unterscheidung
durchgeführt wird, ob dies das letzte Gelenk ist und - falls
dies so ist - wird in Schritt S62 der Zählerwert erhöht,
um den nächsten Zielgelenkwinkel auszulesen, und solange in
Schritt 64 nicht gefunden wird, daß das Gehen unterbrochen
werden muß, werden Steuerwerte für die jeweiligen Gelenke
kontinuierlich bestimmt.
-
Wie man aus der gerade beschriebenen Ausführungsform
versteht, wird in der virtuellen Nachgebesteuerung der
Verstärkungsfaktor kc simultan mit der Erfassung des Fußhebens
bestimmt und wird der Verstärkungsfaktor kc mit dem
Zeitablauf nach der Erfassung des Fußsenkens verringert. In der
früheren japanischen Anmeldung des Anmelders wurde der
Gewinnfaktor (auf den mit kp1 Bezug genommen wurde) auf
einen konstanten Wert gesetzt, wie durch die Phantomlinie
in Fig. 9 angezeigt, und die Steuerperiode war auf eine vom
Fußsenken an gerechnete vorgegebenen Periode To'
beschränkt. Im Gegensatz hierzu wird bei der vorliegenden
Ausführungsform der Verstärkungsfaktor kc mit dem
Zeitablauf progressiv vermindert und kann dieser deshalb auf
einen großen Anfangswert gesetzt werden, wodurch es möglich
wird, über den gesamten Bereich von Gehgeschwindigkeiten
und unabhängig von dem Gewicht der Nutzlast, die der
Roboter trägt, den Stoß beim Fußsenken effektiv zu absorbieren.
-
Da der Verstärkungsfaktor kc simultan mit dem Fußheben
(d.h. mit dem Beginn der Nachgebesteuerung) festgesetzt
wird und da der zu dieser Zeit festgesetzte relativ große
Wert bis zum Fußsenken nicht reduziert wird, kann darüber
hinaus jeder unerwartete Stoß, der aufgrund einer Berührung
des Gliederwerks des freien Beins mit einem Hindernis
auftreten mag, zu einem beträchtlichen Grad absorbiert
werden.
-
Da der Gewinnfaktor im Moment des Fußsenkens noch hoch ist,
kann ferner der Stoß beim Fußsenken effektiv absorbiert
werden, und da der Gewinnfaktor danach scharf vermindert
wird, kann ein voll ausreichender Absorptionseffekt
realisiert werden, ohne Regelschwingungen oder dergleichen
auszulösen.
-
Da der Verstärkungsfaktor kc am Ende der
Stoßabsorptionssteuerperiode im wesentlichen null ist, kann ferner der
Übergang zu der folgenden Positionssteuerung sanft
ausgeführt werden.
-
Wenn auch die Erfindung bezüglich eines Beispiels
beschrieben wurde, das eine Neigungswinkelgeschwindigkeitsregelung
umfaßt, versteht es sich, daß das Steuersystem der
Erfindung auf einem fundamental unabhängigen Konzept basiert und
als solches unabhängig von einer derartigen Steuerung
realisiert werden kann, obwohl der Effekt der Erfindung
durch die bessere Gehstabilität verstärkt ist, die man
erhält, wenn die Erfindung zusammen mit einer derartigen
Steuerung realisiert wird.
-
Wenn auch die Erfindung bezüglich eines Beispiels
beschrieben wurde, in dem die Zielgelenkwinkel (und
Zielwinkelgeschwindigkeit) offline berechnet werden, ist die
Erfindung nicht auf eine derartige Anordnung beschränkt, sondern
umfaßt darüber hinaus konzeptuell den Fall, in dem die
Zielgehdaten in Echtzeit berechnet werden.
-
Zusätzlich ist die Erfindung, obwohl sie bezüglich eines
Zweibein-Schreitroboters beschrieben wurde, nicht nur bei
derartigen Robotern anwendbar, sondern auch bei Robotern,
die drei oder mehr Beine aufweisen.
-
Die Erfindung wurde somit mit Bezugnahme auf spezielle
Ausführungsformen gezeigt und beschrieben. Allerdings
sollte vermerkt werden, daß die vorliegende Erfindung
keinesfalls auf die Details der beschriebenen Anordnungen
beschränkt ist, sondern daß Änderungen und Modifikationen
durchgeführt werden können, ohne den Bereich der
anhängenden Ansprüche zu verlassen.