DE112006000313T5 - Bebeinter Roboter und Steuerungsverfahren für denselben - Google Patents

Bebeinter Roboter und Steuerungsverfahren für denselben Download PDF

Info

Publication number
DE112006000313T5
DE112006000313T5 DE112006000313T DE112006000313T DE112006000313T5 DE 112006000313 T5 DE112006000313 T5 DE 112006000313T5 DE 112006000313 T DE112006000313 T DE 112006000313T DE 112006000313 T DE112006000313 T DE 112006000313T DE 112006000313 T5 DE112006000313 T5 DE 112006000313T5
Authority
DE
Germany
Prior art keywords
gravity
center
path
phase
robot
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.)
Granted
Application number
DE112006000313T
Other languages
English (en)
Other versions
DE112006000313B4 (de
Inventor
Keisuke Toyota Suga
Ryosuke Toyota Tajima
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of DE112006000313T5 publication Critical patent/DE112006000313T5/de
Application granted granted Critical
Publication of DE112006000313B4 publication Critical patent/DE112006000313B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
    • B62D57/02Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
    • B62D57/032Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

Bebeinter Roboter, der „Kauer-, Abhebe-, Schwebe-, Lande- und Kauerbewegungen" durch Ändern von Gelenkswinkeln erreicht, wobei eine Zeitspanne vom Beginn der Kauerbewegung bis zum Abheben eine vorherige Bodenphase ist, eine Zeitspanne während des Schwebens eine Luftphase ist, eine Zeitspanne vom Landen bis zur Beendung der Kauerbewegung eine spätere Bodenphase ist, eine Veränderung der Höhe eines Schwerpunkts in Bezug auf die Zeit eine vertikaler Weg ist und eine Veränderung in einer horizontalen Position des Schwerpunkts in Bezug auf die Zeit ein horizontaler Weg ist, wobei der bebeinte Roboter folgende Merkmale aufweist:
eine Einrichtung zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase;
eine Einrichtung zum Berechnen des horizontalen Weges der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, einem Soll-ZMP der vorherigen Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei...

Description

  • Querverweis auf verwandte Anmeldung
  • Die vorliegende Anmeldung beansprucht die Priorität der japanischen Patentanmeldung 2005-028036 , die am 3. Februar 2005 eingereicht wurde, die hiermit durch Bezugnahme vollinhaltlich in diese Anmeldung aufgenommen wird.
  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft einen bebeinten Roboter und ein Verfahren zum Steuern der Bewegung desselben.
  • Technischer Hintergrund
  • Es werden derzeit Roboter entwickelt, die zumindest ein Beinglied aufweisen, die sich durch Wiederholen von Bewegungen fortbewegen, bei denen das Beinglied in der Richtung vorwärts geschwungen wird, in der sich der Roboter fortzubewegen versucht, und bewirkt wird, dass das Beinglied, das vorwärts geschwungen worden ist und nun auf dem Boden aufliegt, zum Tragbein wird. Es ist bekannt, dass bebeinte Roboter wie diese eine stabile Gehbewegung erreichen können, indem man sie basierend auf einem ZMP (Zero Moment Point) steuert. Ein ZMP steht für den Punkt auf dem Boden, an dem die Summe der Momente, die durch externe, auf den Roboter ausgeübte Kräfte (einschließlich Trägheit) hervorgerufen werden, gleich null ist. Selbst in einem Zustand, in dem nur ein Beinglied auf dem Boden aufliegt, fällt der Roboter nicht hin, wenn der ZMP sich innerhalb der Fußfläche des Tragbeins befindet. Im Fall von z. B. einem Roboter, der zwei Beine aufweist, bewegt sich der Roboter, indem ein Beinglied zum Tragbein gemacht wird, wobei das andere Beinglied zum untätigen Bein gemacht wird, und das untätige Beinglied nach vorne geschwungen wird. Wenn sich während diese Zustands, in dem ein Bein auf dem Boden aufliegt, der ZMP innerhalb der Fußfläche des Tragbeins befindet, fällt der Roboter nicht um. Wenn während der Zeit, während der das Beinglied, das als untätiges Bein fungierte, dieses auf dem Boden zum Aufliegen gebracht wird und beide Beinglieder am Boden aufliegen, verschiebt sich der ZMP von innerhalb der Fußfläche des Beinglieds, das bis zu diesem Punkt als Tragbein fungierte, nach innerhalb der Fußfläche des Beinglieds, das erneut am Boden zum Aufliegen gebrachten worden ist, wobei der Roboter nicht umfällt, und es dem Roboter ermöglicht, das eine Beinglied, das als Tragbein fungierte, bis zu diesem Punkt nach vorne zu schwingen. Wenn der Roboter das Beinglied vorwärts schwingt, (das bis zu diesem Punkt als Tragbein fungierte), fällt der Roboter nicht um, wenn der ZMP sich innerhalb der Fußfläche des neuen Tragbeins befindet. Durch Wiederholen der vorstehenden Bewegungen fällt der Roboter nicht um und kann weiterlaufen.
  • Abgesehen vom Gehen führen Menschen eine Vielzahl von Bewegungen aus. Es ist wünschenswert, dass ein Roboter laufen, springen und hüpfen kann und gleichzeitig das Gleichgewicht halten kann. All diese Arte von Bewegungen bestehen aus einer Luftphase (einer Phase, in der der Roboter mitten in der Luft schwebt). In der Luftphase wirkt auf den Roboter lediglich eine Schwerkraft ein, und der ZMP kann nicht definiert werden. Es besteht Bedarf an einer Technologie, die den Roboter vor und nach der Luftphase stabilisiert.
  • Es wird derzeit eine Technologie entwickelt, um Bewegungen eines bebeinten Roboter zu erreichen, wobei diese eine Luftphase beinhalten. Zum Beispiel offenbart die japanische Patentoffenlegungsschrift 2004-142095 eine Technologie, die den Schwerpunktweg für die Bodenphase (die Phase, in der der Roboter mit den Füßen auf dem Boden aufliegt) vor und nach der Luftphase berechnet, wobei der ZMP, der mit einer ZMP-Gleichung berechnet wird (einer Gleichung, die den ZMP anhand der Haltung des Roboters und der darin enthaltenen chronologischen Veränderungen berechnet), an einen Soll-ZMP angeglichen wird. Diese Technologie unterteilt die Bewegung des Roboters in eine Mehrzahl von Zeitintervallen. Für eine Phase, in der eines der Beinglieder in den unterteilten Zeitintervallen auf dem Boden aufliegt und als Tragbein dient (z. B. die Bodenauflagephase), wird eine analytische Lösung des Schwerpunktwegs im Voraus erstellt. Die analytische Lösung ist basierend auf der Annahme berechnet worden, dass (1) der ZMP-Weg keine Beschleunigung aufweist, (2) die Höhe des Schwerpunkt festgelegt ist und (3) das äußere Moment festgelegt ist. Der Schwerpunktweg wird dann berechnet, indem ein Koeffizient dieser analytischen Lösung in Echtzeit angewendet wird. Es ist zu beachten, dass das Wort „Weg" in der vorliegenden Spezifikation sich auf Daten bezieht, die die Veränderungen der Position im Zeitverlauf beschreiben.
  • Daneben offenbart auch die japanische Patentoffenlegungsschrift 2004-167676 eine Technologie, die den Schwerpunktweg berechnet, wobei der ZMP, der mit einer ZMP-Gleichung berechnet wird, an einen Soll-ZMP angeglichen wird. Auch mit dieser Technologie wird eine analytische Lösung des Schwerpunktwegs im Voraus erstellt. Die analytische Lösung ist basierend der Annahme hergeleitet worden, dass (1) der ZMP-Weg keine Beschleunigung aufweist, (2) die Höhe des Schwerpunkts festgelegt ist und (3) das äußere Moment festgelegt ist. Die Parameter dieser analytischen Lösung werden in Echtzeit angewendet. Zusätzlich wird die vorstehende analytische Lösung in der Nähe des Übergangs zwischen dem Nicht-Bodenaufliegezustand und dem Bodenaufliegezustand angepasst, um die Kontinuität des Schwerpunktwegs aufrechtzuerhalten.
  • Offenbarung der Erfindung
  • In der in der japanischen Patentoffenlegungsschrift 2004-14095 und der japanischen Patentoffenlegungsschrift 2004-167676 offenbarten Technologie wird angenommen, dass die Höhe des Schwerpunkts des Roboters im Wesentlichen festgelegt ist, wenn der horizontale Schwerpunktweg in der der Bodenphase erzeugt wird. Wenn tatsächlich die Bedingung, dass die Höhe des Schwerpunkts des Roboters im Wesentlichen festliegt, hinzukommt, besteht die Möglichkeit, den erforderlichen rechnerischen Aufwand zum Berechnen eines Schwerpunktwegs, in dem der ZMP, der mit einer ZMP-Gleichung berechnet wird, an den Soll-ZMP angeglichen wird, zu verdichten. Zusätzlich kann die Höhe des Schwerpunkts des Roboters während einer normalen Gehbewegung im Wesentlichen festgelegt sein. Für eine normale Gehbewegung kann der Schwer punktweg bei geringem rechnerischen Aufwand und mit hoher Zuverlässigkeit mittels der in der der japanischen Patentoffenlegungsschrift 2004-14095 und der japanischen Patentoffenlegungsschrift 2004-167676 offenbarten Technologie berechnet werden.
  • Es bleiben jedoch weiterhin Probleme bestehen, weil die in der japanischen Patentoffenlegungsschrift 2004-142095 und in der japanischen Patentoffenlegungsschrift 2004-167676 offenbarte Technologie zum Berechnen des Schwerpunktwegs in der Bodenphase vor und nach der Luftphase dient. Die Bewegung des Roboters in der Luftphase hängt größtenteils von der Bewegung des Roboters an dem Punkt ab, an dem er von der Bodenphase in die Luftphase wechselt (an dem Punkt, an dem der Roboter abhebt). Zieht man beispielsweise eine Situation in Betracht, in der der Roboter in die Höhe spring, wird die Höhe, die der Roboter erreichen kann, durch die Geschwindigkeit des Roboters in der vertikalen Richtung bestimmt, wenn der Roboter abhebt. Um zu bewirken, dass der Roboter höher springt, muss die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung an dem Punkt erhöht werden, an dem der Roboter den Boden verlässt. Zur Erhöhung der Geschwindigkeit des Schwerpunkts in der vertikalen Richtung an dem Punkt, an dem der Roboter den Boden verlässt, muss der Roboter vor dem Sprung eine Kauerhaltung einnehmen und dann aus dieser Position in die Höhe springen. Um höher springen zu können, muss der Roboter daher vor dem Springen niederkauern und dann aus dieser Position heraus in die Höhe springen. Bei Bezeichnung der Zeitspanne bis zu dem Punkt, an dem der Roboter den Boden verlässt, als die vorherige Bodenphase, damit der Roboter höher springen kann, muss die Position des Schwerpunkts sich in der vertikalen Richtung vertikal in der vorherigen Bodenphase bewegen.
  • Darüber hinaus springt der Roboter um so höher, je schneller die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung an dem Punkt ist, an dem der Roboter von der Luftphase in die Bodenphase wechselt (dem Punkt, an dem der Roboter wieder auf dem Boden landet). Wenn die Höhe des Schwerpunkts in der Bodenphase nach dem erneuten Landen auf dem Boden im Wesentlichen festgelegt ist, dann wirkt eine große Reaktionskraft auf den Boden ein, um ein Moment des Roboters in der vertikalen Richtung aufzuheben, wird die Bewegung des Roboters instabil und der Roboter kann vorn- über kippen. Um die Haltung des Roboters zu stabilisieren, nachdem er wieder auf dem Boden gelandet ist, wird es für ihn notwendig, sich nach dem Landen zusammenzukauern, um dadurch das Moment des Roboters in der vertikalen Richtung sanft zu reduzieren. Bei Bezeichnung der Zeitspanne nach dem Landen als die spätere Bodenphase, muss der Roboter die Position seines Schwerpunkts in der vertikalen Richtung in der späteren Bodenphase vertikal bewegen, damit er stabil landen kann.
  • Wie zuvor angemerkt, muss die Position des Schwerpunkts in der vertikalen Richtung sich vertikal in der vorherigen Bodenphase vor dem Verlassen des Bodens oder in der späteren Bodenphase nach dem Landen bewegen. Dessen ungeachtet wird in der in der japanischen Patentoffenlegungsschrift 2004-142095 und in der japanischen Patentoffenlegungsschrift 2004-167676 offenbarten Technologie der Schwerpunktweg so berechnet, dass die Höhe des Schwerpunkts sich in der vorherigen Bodenphase und der späteren Bodenphase nicht ändert. Mit der in der japanischen Patentoffenlegungsschrift 2004-14095 und der japanischen Patentoffenlegungsschrift 2004-167676 offenbarten Technologie besteht die Möglichkeit, dass der ZMP vom Soll-ZMP abweicht, und dass der Roboter vornüberkippt, wenn bewirkt wird, dass der Roboter eine Kauerbewegung ausführt, um höher zu springen, oder wenn bewirkt wird, dass der Roboter nach dem Landen eine Kauerbewegung ausfährt, um den Aufprall beim Landen zu mindern.
  • Das vorstehend erläuterte Problem wird in der vorliegenden Erfindung gelöst. Es ist eine Aufgabe der vorliegenden Erfindung, eine Technologie zu schaffen, die einen Schwerpunktweg berechnen kann, in dem der ZMP dem Soll-ZMP angeglichen wird, selbst wenn bewirkt wird, dass der Roboter eine Kauerbewegung während einer Bodenphase mit nur einem einzigen Bein ausführt. Die Technologie der vorliegenden Erfindung ist selbst dann wirksam, wenn bewirkt wird, dass der Roboter eine Kauerbewegung ausführt, um hoch zu springen, oder wenn bewirkt wird, dass der Roboter eine Kauerbewegung nach dem Landen ausführt, um den Aufprall beim Landen abzuschwächen. Die vorliegende Erfindung kann natürlich den Schwerpunktweg von der einem Sprung vorhergehenden Bodenphase zur Bodenphase nach dem Sprung berechnen.
  • Die vorliegende Erfindung schafft einen bebeinten Roboter, der „Kauer-, Abhebe- Schwebe-, Lande- und Kauerbewegungen durch Verändern seiner Gelenkwinkel erreicht. Nachstehend wird eine Zeitspanne ab dem Beginn des Kauerns bis zum Abheben als vorherige Bodenphase bezeichnet, eine Zeitspanne während des Schwebens als eine Luftphase, eine Zeitspanne vom Landen bis zur Beendung des Kauerns als spätere Bodenphase, eine Veränderung der Höhe eines Schwerpunkts in Bezug auf die Zeit als vertikaler Weg und eine Veränderung der horizontalen Position des Schwerpunkts in Bezug auf die Zeit als horizontaler Weg. Um die „Kauer-, Abhebe- und Schwebe-" Bewegungen zu erreichen, weist der vorstehend erwähnte Roboter eine Einrichtung zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase, eine Einrichtung zum Berechnen des horizontalen Weges der vorherigen Bodenphase und eine Einrichtung zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel der vorherigen Bodenphase basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der vorherigen Bodenphase auf. Die Einrichtung zum Berechnen des horizontalen Wegs der vorherigen Bodenphase berechnet den horizontalen Weg der vorherigen Bodenphase basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, einem Soll-ZMP der vorherigen Bodenphase und auf horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der vorherigen Bodenphase. Darüber hinaus weist der vorstehend erwähnte Roboter, um die „Lande- und Kauer-" Bewegungen zu erreichen, eine Einrichtung zum Erzeugen des vertikalen Wegs der späteren Bodenphase, eine Einrichtung zum Berechnen des horizontalen Wegs der späteren Bodenphase und eine Einrichtung zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel der späteren Bodenphase basieren auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der späteren Bodenphase auf. Die Einrichtung zum Berechnen des horizontalen Weges der späteren Bodenphase berechnet den horizontalen Weg der späteren Bodenphase basierend auf dem erzeugten vertikalen Weg der späteren Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der späteren Bodenphase handelt, einem Soll-ZMP der späteren Bodenphase und auf horizontalen Geschwindigkeiten des Schwerpunkts bei Beginn und Beendung der späteren Bodenphase. Darüber hinaus weist der vorstehend erwähnte Roboter eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel auf.
  • Der bebeinte Roboter der vorliegenden Erfindung weist eine Einrichtung zum Erzeugen des vertikalen Weges der vorherigen Bodenphase auf und kann eine vertikale Bewegung schaffen, die eine Bewegung erreicht, in der sich der Roboter zusammenkauert und dann abhebt. Der bebeinte Roboter der vorliegenden Erfindung berechnet einen horizontalen Weg unter Berücksichtigung des vertikalen Wegs, in dem der ZMP dem Soll-ZMP angeglichen wird. Wenn der vertikale Weg geschaffen und der horizontale Weg angenommen wird, kann eine chronologische Veränderung in der Haltung des Roboters bereitgestellt werden, die Trägheitskraft berechnet werden und der ZMP berechnet werden. Durch Anwenden dieser Beziehung kann ein horizontaler Weg, in dem der ZMP, der anhand der vorstehend erwähnten Beziehung berechnet wurde, dem Soll-ZMP angeglichen wird, mathematisch berechnet werden. Um den ZMP anhand des vertikalen Wegs und des horizontalen Wegs zu berechnen, sind die vertikale Beschleunigung und Geschwindigkeit und die horizontale Beschleunigung und Geschwindigkeit erforderlich. Wenn der vertikale Weg und der horizontale Weg durch Zeitintervalle diskretisiert werden, kann die Geschwindigkeit anhand von zwei Positionskoordinaten zu Beginn und bei Beendung einer Zeitspanne berechnet werden. Die Beschleunigung kann anhand von drei Positionskoordinaten zu Beginn, an einem dazwischen liegenden Zeitpunkt und bei Beendung der beiden kontinuierlichen Zeitspannen berechnet werden. Werden z. B. diskrete Zeitpunkte mit einer Zeiteinheit Δt als t1, t2, t3 ..., angenommen, kann die Geschwindigkeit zum Zeitpunkt t3 anhand von zwei Positionskoordinaten zu den Zeitpunkten t2 und t3 berechnet werden. Die Beschleunigung zum Zeitpunkt t3 kann anhand von drei Positionskoordinaten zu den Zeitpunkten t1, t2 und t3 berechnet werden. Natürlich handelt es sich bei dem vorstehend erwähnten um ein Beispiel, und die Geschwindigkeit zum Zeitpunkt t2 kann anhand von zwei Positionskoordinaten zu den Zeitpunkten t2 und t3 berechnet werden, und die Beschleunigung zum Zeitpunkt t2 kann anhand von drei Positionskoordinaten zu den Zeitpunkten t1, t2 und t3 berechnet wer den. Ein wichtiger Punkt ist, dass der ZMP anhand von drei Positionskoordinaten berechnet werden kann. Unter Verwendung des vorherigen Beispiels kann der ZMP zum Zeitpunkt t3 anhand von drei Positionskoordinaten zu den Zeitpunkten t1, t2 und t3 berechnete werden. Bei einigen Kriterien kann der ZMP zum Zeitpunkt t2 anhand von drei Positionskoordinaten zu den Zeitpunkten t1, t2 und t3 berechnet werden, oder der ZMP zum Zeitpunkt t1 kann anhand von drei Positionskoordinaten zu den Zeitpunkten t1, t2 und t3 berechnet werden. Ein wichtiger Punkt ist, dass der ZMP anhand von Positionskoordinaten zu drei Zeitpunkten berechnet werden kann. In der vorliegenden Spezifikation steht „eine tridiagonale Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt" für eine Gleichung, die den ZMP anhand von Positionskoordinaten an drei diskreten Zeitpunkten berechnet. Wenn diese tridiagonale Gleichung verwendet wird, kann ein horizontaler Weg berechnet werden, in dem der ZMP, der anhand der vorstehend erwähnten Beziehung berechnet wird, dem Soll-ZMP angeglichen wird. Die horizontale Position des Schwerpunkts an den jeweiligen diskreten Punkten kann berechnet werden.
  • Der Roboter der vorliegenden Erfindung weist eine Einrichtung zum Berechnen des horizontalen Wegs unter Berücksichtigung des vertikalen Wegs auf. Wenn eine vertikale Bewegung, die eine Bewegung erreicht, in der der Roboter sich niederkauert und dann abhebt, geschaffen wird, wird ein Schwerpunktweg, der anhand dieser vertikalen Bewegung vorausgesetzt wird, berechnet. Es kann verhindert werden, dass der ZMP vom Soll-ZMP abweicht, und des kann verhindert werden, dass der Roboter vornüber kippt, wenn eine Bewegung erreicht wird, in der der Roboter sich niederkauert und dann abhebt. Es sind Grenzparameter erforderlich, um einen horizontalen Weg zu berechnen, in dem der ZMP dem Soll-ZMP angeglichen wird. In der vorliegenden Erfindung handelt es sich bei den Grenzparametern um die horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn (dem Beginn der Kauerbewegung) und bei Beendung (dem Punkt des Abhebens) der vorherigen Bodenphase. Der horizontale Weg, der die Grenzparameter erfüllt, wird berechnet, und der horizontale Weg mit der entsprechenden Position und Geschwindigkeit kann berechnet werden.
  • Eine ähnliche Erklärung gilt für den Fall, wenn eine Kauerbewegung erreicht wird, um den Aufprall beim Landen zu mindern. Die vorliegende Erfindung kann eine vertikale Bewegung bereitstellen, die eine Kauerbewegung erreicht, die nach dem Landen ausgeführt wird, um den Aufprall beim Landen zu schwächen. Der bebeinte Roboter der vorliegenden Erfindung berechnet einen horizontalen Weg unter Berücksichtigung des vertikalen Wegs, in dem der ZMP dem Soll-ZMP angeglichen wird. Auch hier kann die vorstehend erwähnte tridiagonale Gleichung verwendet werden, und wenn die Bewegung in der vertikalen Richtung, bei der die Kauerbewegung nach dem Landen geschaffen wird, kann der Schwerpunkt, der bei dieser vertikalen Bewegung vorausgesetzt wurde, berechnet werden. Es kann verhindert werden, dass der ZMP vom Soll-ZMP abweicht, und es kann verhindert werden, dass der Roboter vorüberkippt, wenn eine Kauerbewegung nach dem Landen erreicht wird. Auch in dieser Situation sind Grenzparameter erforderlich, um den horizontalen Weg zu berechnen. In der vorliegenden Erfindung beinhalten die Grenzparameter die horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn (am Punkt des Landens) und bei Beendung (der Beendung der Kauerbewegung) der späteren Bodenphase. Der horizontale Weg, der die Grenzparameter erfüllt, wird berechnet, und es kann der horizontale Weg mit der passenden Position und Geschwindigkeit berechnet werden.
  • Gemäß dem erfindungsgemäßen Roboter kann die Höhe des Schwerpunkts vertikal bewegt werden, um die „Kauer-, Abhebe-, Schwebe- Lande- und Kauer-" Bewegungen zu erreichen. In der vorherigen Bodenphase und späteren Bodenphase, in der es möglich ist, dass der Roboter vornüberkippt, wird ein horizontaler Weg berechnet, in dem der ZMP dem Soll-ZMP angeglichen wird, während die Höhe des Schwerpunkts vertikal bewegt wird, um eine Kauerbewegung zu erreichen. Somit kann verhindert werden, dass der Roboter vornüber kippt, wenn der Roboter den Schwerpunkt vertikal bewegt, um die Kauerbewegung zu erreichen.
  • Wie vorstehend angemerkt, kann ein horizontaler Weg, der einen ZMP erreicht, der dem Soll-ZMP angeglichen ist, berechnet werden, wenn die „tridiagonale Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt" verwen det wird. In dieser Situation weist eine jede der Einrichtungen zum Berechnen des horizontalen Wegs der vorherigen Bodenphase und der späteren Bodenphase vorzugsweise eine Einrichtung zum Lösen von simultanen Gleichungen auf, die zwischen einer tridiagonalen Matrix mit Koeffizienten, die anhand des vertikalen Wegs berechnet werden, und einer horizontalen Wegspalte und einer Abstandspalte, die anhand des Soll-ZMP und den horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase berechnet werden, gebildet werden, um den horizontalen Weg zu berechnen. Es wird derzeit eine Technologie entwickelt, die simultane Gleichungen löst, die mit einer tridiagonalen Matrix bei einer hohen Geschwindigkeit und bei geringer Rechenlast ausgedrückt werden. Um den horizontalen Weg des Schwerpunkts des bebeinten Roboters zu berechnen, werden simultane Gleichungen, die mit einer tridiagonalen Matrix ausgedrückt werden, erzeugt, und die simultanen Gleichungen werden gelöst, um den horizontalen Weg des Schwerpunkts zu berechnen, und somit kann der horizontale Weg mit hoher Geschwindigkeit und bei geringer Rechenlast berechnet werden.
  • Vorzugsweise nimmt eine jeweilige der Einrichtungen zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase und der späteren Bodenphase eine polynomische Interpolation zwischen den vertikalen Positionen und den Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase vor, um den vertikalen Weg zu erzeugen. In der vorherigen Bodenphase, wenn die vertikale Position und die Geschwindigkeit des Schwerpunkts zu Beginn (dem Beginn der Kauerbewegung) und bei Beendung (dem Punkt des Abhebens) bereitgestellt sind, und eine polynomische Interpolation verwendet wird, um die vertikale Position und die Geschwindigkeit des Schwerpunkts dazwischen zu erzeugen, wird der vertikale Weg des Schwerpunkts geglättet. Aufgrund des glatten Übergangs des vertikalen Wegs des Schwerpunkts kann der bebeinte Roboter eine stabile Bewegung erreichen. Darüber hinaus kann die Sprunghöhe des Roboters erreicht werden, weil eine vertikale Geschwindigkeit zum Zeitpunkt des Abhebens ermöglicht wird. Eine Sprungbewegung einer gewünschten Höhe kann ohne Weiteres erreicht werden. Wenn in der späteren Bodenphase die vertikale Position und Geschwindigkeit des Schwerpunkts zu Beginn (dem Punkt des Landens) und bei Beendung (der Beendung der Kauerbewegung) erreicht wird und eine polynomische Interpolation verwendet wird, um die vertikale Position und die Geschwindigkeit dazwischen zu erzeugen, wird der vertikale Weg des Schwerpunkts geglättet. Aufgrund des glatten Übergangs des vertikalen Wegs des Schwerpunkts kann der bebeinte Roboter eine stabile Bewegung erreichen.
  • Die vorliegende Erfindung ist für Bewegungen wirksam, in denen der Roboter aus einer Kauerhaltung aufwärts springt, oder für Bewegungen, in denen der Roboter sich nach dem Landen niederkauert. Bei einer Bewegung, in der Roboter aus einer Kauerhaltung aufwärts springt, oder einer Bewegung, der der sich der Roboter nach dem Landen niederkauert, kann eine Bewegung erreicht werden, die die Höhe des Schwerpunkts des bebeinten Roboters ändert, während ein Beinglied auf dem Boden aufliegt. Um diese Bewegung zu erreichen, wird eine Einrichtung zum Erzeugen eines vertikalen Wegs des Schwerpunkts, eine Einrichtung zum Berechnen eines horizontalen Weges des Schwerpunkts, eine Einrichtung zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel basierend auf dem erzeugten vertikalen Weg des Schwerpunkts und dem berechneten horizontalen Weg des Schwerpunkts und eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel verwendet. Die Einrichtung zum Berechnen des horizontalen Wegs des Schwerpunkts berechnet den horizontalen Weg des Schwerpunkts basierend auf dem erzeugten vertikalen Werg des Schwerpunkts, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, dem Soll-ZMP und auf horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung des vertikalen Wegs. Während einer Bewegung, bei der der Roboter eine Kauerhaltung vor dem Abheben einnimmt, oder während einer Bewegung, in der der Roboter nach dem Landen eine Kauerhaltung einnimmt, berechnet der Roboter den horizontalen Weg des Schwerpunkts, der einen ZMP erreicht, der an den Soll-ZMP angeglichen ist, und der Roboter erreicht den berechneten Weg.
  • Die vorliegende Erfindung ist auch als ein Verfahren verkörpert. Um zu bewirken, dass ein bebeinter Roboter „Kauer-, Abhebe- Schwebe-, Lande- und Kauer-" Bewegungen ausführt, indem dessen Gelenkwinkel verändert werden, führt das Verfahren einen Schritt zum Erzeugen eines vertikalen Wegs einer vorherigen Bodenphase, einen Schritt zum Berechnen eines horizontalen Wegs der vorherigen Bodenphase unter Berücksichtigung des vertikalen Wegs der vorherigen Bodenphase, einen Schritt zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel der vorherigen Bodenphase basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der vorherigen Bodenphase, einen Schritt zum Erzeugen eines vertikalen Wegs einer späteren Bodenphase, einen Schritt zum Berechnen eines horizontalen Wegs der späteren Bodenphase unter Berücksichtigung des vertikalen Wegs der späteren Bodenphase, einen Schritt zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel der späteren Bodenphase basierend auf dem vertikalen Weg und dem berechneten horizontalen Weg der späteren Bodenphase und einen Schritt zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel aus. In dem Schritt zum Berechnen des horizontalen Wegs der vorherigen Bodenphase wird der horizontale Weg der vorherigen Bodenphase basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, dem Soll-ZMP der vorherigen Bodenphase und auf horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der vorherigen Bodenphase berechnet. Desgleichen wird in dem Schritt zum Berechnen des horizontalen Wegs der späteren Bodenphase der horizontale Weg der späteren Bodenphase basierend auf dem erzeugten vertikalen Weg der späteren Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der späteren Bodenphase handelt, dem Soll-ZMP der späteren Bodenphase und auf horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der späteren Bodenphase berechnet. Gemäß dem vorstehend erwähnten Verfahren kann ein Weg, der die Höhe des Schwerpunkts des bebeinten Roboters in Bezug auf die Zeit ändert, und der bewirkt, dass die auszuführenden „Kauer-, Abhebe-, Schwebe-, Lande- und Kauer-" Bewegungen ausgeführt werden, bei geringem rechnerischem Aufwand ausgeführt werden. Ein horizontaler Weg des Schwerpunkts kann berechnet werden, der einen ZMP erreicht, der mit dem Soll-ZMP angeglichen während der Bewegung der Roboters in Echtzeit angeglichen wird.
  • Wie vorstehend angemerkt kann ein horizontaler Weg, der einen ZMP erreicht, der dem Soll-ZMP angeglichen ist, berechnet werden, wenn die „tridiagonale Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, verwendet wird. In dieser Situation weist ein jeder der Schritte zum Berechnen des horizontalen Wegs der vorherigen Bodenphase und der späteren Bodenphase vorzugsweise einen Schritt zum Lösen von simultanen Gleichungen auf, die zwischen einer tridiagonalen Matrix mit Koeffizienten, die anhand des vertikalen Wegs berechnet werden, und einer horizontalen Wegspalte und einer Abstandspalte gebildet werden, die anhand des Soll-ZMP und den horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase berechnet wird, um den horizontalen Weg zu berechnen. Es wird derzeit eine Technologie entwickelt, die simultane Gleichungen löst, die mit einer tridiagonalen Matrix bei hoher Geschwindigkeit und mit geringer rechnerischer Last ausgedrückt werden. Daher werden, um den horizontalen Weg des Schwerpunkts des bebeinten Roboters zu berechnen, simultane Gleichungen, die mit einer tridiagonalen Matrix ausgedrückt werden, erzeugt, und die simultanen Gleichungen werden gelöst, um den horizontalen Weg des Schwerpunkts zu berechnen, und der horizontale Weg kann somit bei hoher Geschwindigkeit und bei geringer Rechenlast berechnet werden.
  • Vorzugsweise wird bei einem jeweiligen der Schritte zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase und der späteren Bodenphase eine polynomische Interpolation zwischen den vertikalen Positionen und den Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase vorgenommen, um den vertikalen Weg zu erzeugen. Wenn in der vorherigen Bodenphase die vertikalen Positionen und Geschwindigkeiten des Schwerpunkts zu Beginn (Beginn der Kauerbewegung) und bei Beendung (dem Punkt des Abhebens) bereitgestellt werden, und eine polynomische Interpolation verwendet wird, um die vertikale Position und Geschwindigkeit des Schwerpunkts dazwischen zu erzeugen, wird der vertikale Weg des Schwerpunkts geglättet. Aufgrund des glatten Übergangs des vertikalen Wegs des Schwerpunkts kann der bebeinte Roboter eine stabile Bewegung erreichen. Darüber hinaus kann eine Sprunghöhe des Roboters ermöglicht werden, weil die vertikale Geschwin digkeit am Punkt des Abhebens bereitgestellt wird. Eine Sprungbewegung von einer gewünschten Höhe kann ohne Weiteres erreicht werden. Wenn in der späteren Bodenphase die vertikalen Positionen und Geschwindigkeiten des Schwerpunkts zu Beginn (dem Punkt der Landung) und der Beendung (der Beendung der Kauerbewegung) bereitgestellt werden, und eine polynomische Interpolation verwendet wird, um die vertikale Position und Geschwindigkeit des Schwerpunkts dazwischen zu erzeugen, wird der vertikale Weg des Schwerpunkts geglättet. Aufgrund des glatten Übergangs des vertikalen Wegs des Schwerpunkts kann der bebeinte Roboter eine stabile Bewegung erreichen.
  • Bei einer Bewegung, in der der Roboter aus einer Kauerhaltung aufwärts springt, oder einer Bewegung, in der der Roboter nach dem Landen eine Kauerhaltung einnimmt, wird es erforderlich, eine Bewegung auszuführen, die den Schwerpunkt in der vertikalen Richtung ändert, während ein Beinglied des bebeinten Roboters auf dem Boden aufliegt. Die vorliegende Erfindung schafft ein Verfahren zum Berechnen des horizontalen Wegs des Schwerpunkts, der einen ZMP erreicht, der dem Soll-ZMP angeglichen ist, entweder während einer Bewegung, in der der Roboter aus einer Kauerbewegung aufwärts springt, oder einer Bewegung, in der der Roboter nach dem Landen eine Kauerhaltung einnimmt. Das Verfahren der vorliegenden Erfindung weist einen Schritt zum Erzeugen eines vertikalen Wegs des Schwerpunkts, einen Schritt zum Berechnen eines horizontalen Wegs des Schwerpunkts unter Berücksichtigung des vertikalen Wegs, einen Schritt zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel basierend auf dem erzeugten vertikalen Weg des Schwerpunkts und dem berechneten horizontalen Weg des Schwerpunkts auf und es wird ein Schritt zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel verwendet. In dem Schritt zum Berechnen des horizontalen Wegs des Schwerpunkts, wird der horizontale Weg des Schwerpunkts basierend auf dem erzeugten vertikalen Weg des Schwerpunkt, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, einem Soll-ZMP und basierend auf horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung des vertikalen Wegs. Gemäß dem vorliegenden Verfahren kann der Roboter den horizonta len Weg des Schwerpunkts, der einen ZMP erreicht, der dem Soll-ZMP angeglichen ist, bei geringem rechnerischem Aufwand berechnen, entweder in einer Bewegung, in der der Roboter aus einer Kauerbewegung aufwärts springt, oder in einer Bewegung, in der der Roboter sich nach dem Landen niederkauert.
  • Durch Verwenden der Technologie der vorliegenden Erfindung kann ein horizontaler Weg des Schwerpunkts, der einen ZMP erreicht, der dem Soll-ZMP angeglichen ist, für eine Bewegung berechnet werden, in der der Roboter aus einer Kauerhaltung aufwärts spring, für eine Bewegung, in der der Roboter sich nach dem Landen niederkauert, oder für eine Abfolge von „Kauer-, Abhebe-, Schwebe-, Lande- und Kauer-" Bewegungen berechnet werden. Eine stabile Roboterhaltung kann sogar dann erreicht werden, wenn eine Veränderung der Höhe des Schwerpunkts normalerweise bewirkt, dass der Roboter seine Stabilität verliert.
  • Kurzbeschreibung der Zeichnung
  • Die vorliegende Erfindung wird durch Bezugnahme auf die nachstehenden Zeichnungen besser verständlich. Der Maßstab, in dem die Komponenten der Zeichnungen dargestellt sind, ist nicht unbedingt eindeutig festgelegt und dient vielmehr als Mittel zur Hervorhebung für eine Beschreibung der grundlegenden Aspekte der vorliegenden Erfindung. In den Zeichnungen beziehen sich identische Bezugszeichen auf identische Bereiche in den unterschiedlichen Zeichnungen.
  • 1 zeigt einen Überblick auf einen Roboter 2 der vorliegenden Erfindung.
  • 2 zeigt einen Überblick auf die Bewegung des Roboters 2 der vorliegenden Erfindung.
  • 3 ist ein Blockdiagramm, das die Komponenten einer Steuerungseinheit 10 des Roboters 2 der vorliegenden Erfindung zeigt.
  • 4 ist ein Flussdiagramm, dass die Prozesse darstellt, die durch die Steuerungseinheit 10 des Roboters 2 der vorliegenden Erfindung ausgeführt werden.
  • 5(a) zeigt den relativen Weg in der vertikalen Richtung des Schwerpunkts des Roboters 2, der durch die Steuerungseinheit 10 erzeugt wird.
  • 5(b) zeigt den relativen Weg in der horizontalen Richtung des Schwerpunkts des Roboters, der durch die Steuerungseinheit 10 erzeugt wird.
  • 6 zeigt einen Bereich des Wegs des Schwerpunkts des Roboters 2, der durch die Steuerungseinheit 10 erzeugt wird.
  • Beste Art und Weise zum Ausführen der Erfindung
  • Die Hauptmerkmale der Ausführungsform, die nachstehend beschrieben sind, sind wie folgt. (Merkmal 1) Ein bebeinter Roboter, der „Kauer-, Abhebe-, Schwebe-, Lande- und Kauer-" Bewegungen durch Ändern von Gelenkwinkeln erreicht, wobei eine Zeitspanne ab Beginn der Kauerhaltung bis zum Abheben eine vorherige Bodenphase darstellt, eine Zeitspanne während des Schwebens eine Luftphase, eine Zeitspanne vom Landen bis zur Beendung der Kauerbewegung eine spätere Bodenphase, eine Veränderung der Höhe eines Schwerpunkts in Bezug auf Zeit einen vertikalen Weg und eine Veränderung in einer horizontalen Position des Schwerpunkts in Bezug auf Zeit einen horizontalen Weg darstellt, wobei der bebeinte Roboter folgende Merkmale aufweist:
    eine Einrichtung zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase,
    eine Einrichtung zum Berechnen des horizontalen Wegs der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, einem Soll-ZMP der vorherigen Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der vorherigen Bodenphase,
    eine Einrichtung zum Berechnen von chronologischen Daten von Sollwerten der Gelenkwinkel der vorherigen Bodenphase basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der vorherigen Bodenphase,
    eine Einrichtung zum Erzeugen eines vertikalen Wegs der späteren Bodenphase,
    eine Einrichtung zum Berechnen eines horizontalen Wegs der späteren Bodenphase, basierend auf dem erzeugten vertikalen Weg der späteren Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der späteren Bodenphase handelt, einem Soll-ZMP der späteren Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der späteren Bodenphase,
    eine Einrichtung zum Berechnen von chronologischen Daten der Sollwerte der Gelenkwinkel der späteren Bodenphase basierend auf dem erzeugten Vertikalen Weg und dem berechneten horizontalen Weg des späteren Bodenphase,
    eine Einrichtung zum Berechnen von chronologischen Daten, die die Haltung während der Luftphase beschreiben, basierend auf dem erzeugten vertikalen Weg und den berechneten horizontalen Wegen der vorherigen Bodenphase und der späteren Bodenphase,
    eine Einrichtung zum Berechnen chronologischer Daten der Sollwerte der Gelenkwinkel der Luftphase basierend auf den berechneten chronologischen Daten, die die Haltung während der Luftphase beschreiben, und
    eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel.
  • Eine Roboterwegberechnungstechnologie gemäß einer Ausführungsform der vorliegenden Erfindung wird unter Bezugnahme auf die Zeichnung beschrieben.
  • 1 zeigt eine Überblick über einen Roboter 2 der vorliegenden Erfindung. Der Roboter 2 weist einen Rumpf 4, ein linkes Beinglied 6, ein rechtes Beinglied 8, eine Steuerungseinheit 10 und eine Steuerung 12 auf. Das eine Ende des linken Beinglieds 6 ist über ein Hüftgelenk schwenkbar mit dem Rumpf 4 verbunden. Das linke Beinglied 6 weist ein Kniegelenk und ein Knöchelgelenk und eine Fußfläche an seiner Spitze auf. Das rechte Beinglied 8 ist über ein Hüftgelenk schwenkbar mit dem Rumpf 4 verbunden. Das rechte Beinglied 8 weist ein Kniegelenk und ein Knöchelgelenk auf und eine Fußfläche an seiner Spitze. Ein jedes Gelenk des Roboters 2 weist ein Stellglied (in den Zeichnungen nicht dargestellt) auf, und diese Stellglieder drehen die Gelenke gemäß den Befehlen von der Steuerungseinheit 10. Referenzpunkte L0, R0 sind jeweils in den Mittelpunkten der Fußflächen des linken Beinglieds 6 und des rechten Beinglieds 8 angeordnet. Die Referenzpunkte L0, R0 sind Punkte, die als Referenzen dienen, wenn ein Bewegungsmuster des Roboters 2 erzeugt werden soll. Ein G in den Zeichnungen weist auf die Position des Schwerpunkts des Roboters 2 hin.
  • Bei der Steuerungseinheit 10 handelt es sich um eine Computervorrichtung mit einer CPU, einem ROM, einem RAM, einer Festplatte und dergleichen. Die Steuerungseinheit 10 ist in der Lage, mit der Steuerung 12 zu kommunizieren, und gibt Befehlswerte von der Steuerung 12 ein, die ein Benutzer bedient. Die Steuerungseinheit 10 berechnet oder erzeugt Bewegungsmuster für den Roboter 2 basierend auf den Befehlswerten, die vom Benutzer eingegeben werden. Die Steuerungseinheit 10 speichert die erzeugten Bewegungsmuster und dreht ein jeweiliges Gelenk, um die gespeicherten Bewegungsmuster zu erreichen. Einzelheiten über die Steuerungseinheit 10 werden nachstehend beschrieben.
  • 2 stellt einen Überblick über die Bewegung dar, die durch den Roboter 2 der vorliegenden Erfindung erreicht werden. Der Roboter 2 der vorliegenden Erfindung bewegt sich in einer Bodenphase aus einer Haltung A1, in der das linke Beinglied 6 das Tragbein ist, und schwingt das rechte Beinglied 8 nach vorne und geht zu einer Haltung A2 über. Der Roboter 2 hebt in einer Haltung A2 ab und geht zu einer Luftphase über. Der Roboter 2 gelangt durch eine Haltung A3 und landet mit dem linken Beinglied 8 in Haltung A4 auf dem Boden. Der Roboter 2 bewegt sich in einer Bodenphase aus der Haltung A4, in der das rechte Beinglied 8 das Tragbein ist, und schwingt das linke Beinglied 6 nach vorne und geht in eine Haltung A5 über. Der Roboter 2 hebt in einer Haltung A5 ab und geht in die Luftphase über. Der Roboter 2 führt eine Haltung A6 aus und landet mit dem linken Beinglied 6 auf dem Boden in einer Haltung A7. Der Roboter 2 bewegt sich in einer Bodenphase aus einer Haltung A7, in der das linke Beinglied 6 das Tragbein ist, und schwingt das rechte Beinglied 8 nach vorne und geht in eine Haltung A8 über. Der Roboter 2 wechselt das Tragbein in einer Haltung A8 vom linken Beinglied 6 auf das rechte Beinglied 8 und bewegt sich in einer Bodenphase aus einer Haltung A8, in der das rechte Beinglied 8 das Tragbein ist, und schwingt das linke Beinglied 6 nach vorne und geht in eine Haltung A9 über.
  • Die gestrichelte Linie in 2 zweigt einen Überblick über den Schwerpunktweg des Roboters 2 während der vorstehend erwähnten Bewegung. In der Bodenphase, unmittelbar bevor der Roboter 2 aufwärts springt (d. h. der Bodenphase aus einer Haltung A1 in eine Haltung A2, und in der Bodenphase aus einer Haltung A4 in eine Haltung A5, entsprechend der vorherigen Bodenphase), bereitet sich der Roboter 2 für den Sprung nach oben vor, indem sein Schwerpunkt gesenkt wird. Darüber hinaus senkt der Roboter 2 in der Bodenphase, unmittelbar, nachdem er auf dem Boden gelandet ist (d. h. in der Bodenphase aus einer Haltung A4 in eine Haltung A5, und in der Bodenphase aus einer Haltung A7 in eine Haltung A8, entsprechend der späteren Bodenphase) seinen Schwerpunkt, um den Landeaufprall, der durch den Sprung hervorgerufen wird, zu mindern.
  • Die vorher erwähnte Bewegung ist ausschließlich zu Veranschaulichungszwecken dargestellt. Der Roboter der vorliegenden Ausführungsform kann eine Vielzahl an Bewegungen erreichen, die eine Bodenphase und eine Luftphase kombinieren. Die Be wegungen, die durch den Roboter erreicht werden, könne durch einen Benutzer frei eingestellt werden. Die Bewegungen können beispielsweise eine Bewegung beinhalten, in der der Roboter auf einem Bein auf- und abhüpft, oder es kann sie dabei um Bewegungen handeln, die keine Luftphase enthalten, sondern vielmehr nur in der Bodenphase wiederholt werden. Die durch den Roboter erreichten Bewegungen können eine Bodenphase nur darstellen oder können sich mit einer Bodenphase und einer Luftphase vermischen. Die vorliegende Erfindung ist dadurch gekennzeichnet, dass der Roboter zu einer Bewegung in der Lage ist, in der der Schwerpunkt sich vertikal bewegt, und beweist ihren Nutzen sogar in Situationen, in denen eine vertikale Bewegung des Schwerpunkts ohne eine Luftphase abläuft.
  • Mit dem Roboter 2 der vorliegenden Erfindung wird die zu erzeugende Bewegung in mehrere Zeitintervalle unterteilt, und in jedem Zeitintervall wird ein ein Bewegungsmuster erzeugt. Bei dem Roboter 2 der vorliegenden Erfindung nimmt man an, dass ein Zeitintervall in der zu erzeugenden Bewegung ab dem Zeitpunkt läuft, an dem das Beinglied, das das Tragbein ist, solange auf dem Boden aufliegt, bis zu dem Punkt, an dem das Beinglied, dass das nächste tragende Glied sein wird, auf dem Boden aufliegt. In diesem Fall bildet ein Zeitintervall eine Bodenphase und eine Luftphase, die auf dieselbe folgt, oder nur eine Bodenphase.
  • In der in 2 gezeigten Bewegung wird angenommen, dass das Intervall 1 ab dem Startpunkt der initialen Bodenphase (d. h. dem Punkt der Haltung A1, dem Punkt, an dem die Kauerbewegung beginnt) bis zu dem Punkt reicht, an dem die Luftphase, die auf die Bodenphase folgt, beendet ist (d. h. dem Punkt der Haltung A4), wird weiter angenommen, dass ein Intervall vom Startpunkt der Bodenphase, die dem Intervall 1 folgt (d. h. dem Punkt einer Haltung A4), bis zu dem Punkt, an dem die Luftphase, die auf die Bodenphase folgt, beendet ist (d. h. dem Punkt der Haltung A7), dass ein Intervall 3 vom Startpunkt der Bodenphase, die auf das Intervall 2 folgt (d. h. dem Punkt einer Haltung A7) bis zu dem Punkt reicht, an dem die Bodenphase beendet ist (d. h. dem Punkt einer Haltung A8), und dass ein Intervall 4 vom Startpunkt der Bodenphase, die auf das Intervall folgt (d. h. dem Punkt einer Haltung A8) bis zu dem Punkt reicht, an dem die Bodenphase beendet ist (d. h. dem Punkt einer Haltung A9). Im Intervall 3 und Intervall 4 ereignet sich keine Luftphase, doch der Schwerpunkt bewegt sich vertikal, und dementsprechend wird die Technik der vorliegenden Erfindung angewendet.
  • Ein Koordinatensystem (x, y, z), das am Boden außerhalb des Roboters 2 festgelegt ist, wird nachstehend als das Koordinatensystem angewendet, das den Weg des Roboters 2 beschreibt. Darüber hinaus wird der Weg des Roboters 2 mit einem Koordinatensystem (x', y', z') beschrieben, das an einem Referenzpunkt auf dem Roboter festgelegt ist. Bei dem Roboter 2 der vorliegenden Ausführungsform, wie in 2 gezeigt ist, wird angenommen, dass der Mittelpunkt der Fußfläche des Tragbeins der Referenzpunkt des Koordinatensystems (x', y', z') ist. In der Luftphase liegt keines der Beinglieder auf dem Boden auf und keines der Beinglieder trägt den Roboter 2, doch der Einfachheit halber wird das Beinglied, das zum Zeitpunkt des Landens das Tragbein sein wird, in der Luftphase als das Tragbein bezeichnet. Bei dem Roboter 2 der vorliegenden Erfindung wird angenommen, dass der Mittelpunkt der Fußfläche des Tragbeins der Referenzpunkt in der Luftphase wie in der Bodenphase ist. In der Luftphase wird der vorstehend erwähnte Referenzpunkt in Bezug auf den Boden sowie der Schwerpunkt des Roboters 2 bewegt. Die Position, Geschwindigkeit, Beschleunigung und der Weg, die mit dem Koordinatensystem (x', y', z') ausgedrückt werden, das in Bezug auf den Referenzpunkt auf dem Roboter 2 festgelegt ist, werden jeweils als die relative Position, relative Geschwindigkeit, relative Beschleunigung und der relative Weg beschreiben.
  • Der Roboter 2 der vorliegenden Ausführungsform erzeugt und speichert ein Bewegungsmuster für ein jeweiliges Zeitintervall, und die gespeicherten Bewegungsmuster werden aufeinander folgend herausgelesen, um die Bewegungen zu implementieren. Wenn ein Befehlswert von einem Benutzer eingegeben wird, während sich der Roboter 2 bewegt, regeneriert der Roboter 2 die Bewegungsmuster, die danach ausgeführt werden sollen, und speichert die Bewegungsmuster gemäß dem neu eingegebenen Befehlswert. Die neu gespeicherten Bewegungsmuster werden in den danach auszuführenden Bewegungen reflektiert. Somit erzeugt der Roboter 2 der vorliegenden Erfindung, während er geht, Bewegungsmuster in Echtzeit.
  • Durch Verwendung des Blockdiagramms von 3 und des Flussdiagramms von 4 erfolgt nachher eine ausführliche Beschreibung des Betriebs der Steuerungseinheit 10.
  • 3 ist ein Blockdiagramm, das die einzelnen Funktionen der Steuerungseinheit 10 darstellt. Die Steuerungseinheit 10 besteht aus einer Benutzerbefehlswerts-Speichereinheit 302, einer Erzeugungseinheit 304 eines vertikalen Wegs des Schwerpunkts in der Luftphase, einer Erzeugungseinheit 306 einer vertikalen Wegs des Schwerpunkts in der Bodenphase, einer Berechnungseinheit 308 eines horizontalen Wegs des Schwerpunkts in der Bodenphase, eine Berechnungseinheit 310 eines horizontalen Wegs des Schwerpunkts in der Luftphase, einer Berechnungseinheit 314 für einen relativen Schwerpunktweg, einer Berechnungseinheit 316 eines relativen Weg des untätigen Beins, eine Berechnungseinheit 318 eines Gelenkwinkel-Sollwerts und einer Gelenkantriebseinheit 320. Weil der Schwerpunktweg hier berechnet und erzeugt wird, werden die Begriffe Berechnung, Erzeugung und Berechnung unterscheidungslos verwendet. Obwohl der Begriff "Erzeugung" verwendet wird, weil der vertikale Weg des Schwerpunkts direkt anhand von Benutzerbefehlswerten berechnet wird, und der Begriff „Berechnung" verwendet wird, weil der horizontale Weg des Schwerpunkts berechnet wird, um die nachstehend beschrieben ZMP-Gleichung zu erfüllen, gibt es zwischen den Begriffen „Erzeugung" und „Berechnung" keine spezielle technische Unterscheidung.
  • Die Benutzer-Befehlswert-Speichereinheit 302 speichert einen Benutzerbefehlswert 352, der von einem Benutzer eingegeben wird. Die Benutzer-Befehlswert-Speichereinheit 302 speichert Daten wie (1) einen Bewegungsmodus 321, (2) eine Sprunghöhe während der Luftphase 322, (3) eine Höhe des Schwerpunkts an einem Punkt der Bewegungsänderung 324, (4) eine Bodenphasendauer (326), (5) einen relativen ZMP-Weg während einer Bodenphase 328, (6) chronologische Daten eines Soll-Winkelmoments bzw. -Dralls bzw. -Impulsmoments 330, (7) eine Geschwindigkeit des Schwerpunkts in der horizontalen Richtung an einem Punkt einer Bewegungsänderung 332, (8) eine Position und Geschwindigkeit der Spitze des Fußes von einem untäti gen Bein am Punkt des Abhebens 334 und dergleichen. Einzelheiten über diese Daten werden nachstehend angegeben.
  • Wenn ein neuer Benutzerbefehlswert 352 eingegeben wird, während sich der Roboter 2 bewegt, ersetzt die Steuerungseinheit 10 den Benutzerbefehlswert, der in der Benutzer-Befehlswert-Speichereinheit 302 gespeichert ist, durch den neu eingegebenen Benutzerbefehlswert. Weil die Steuerungseinheit 10 eine sequentielle Bewegung basierend auf den in der Benutzer-Befehlswert-Speichereinheit 302 gespeicherten Daten berechnet und erzeugt, wird der neue, durch den Benutzer eingegebene Befehlswert in der Bewegung des Roboters 2, die danach erzeugt werden soll, reflektiert. Der Benutzer kann die Bewegung des Roboters 2 durch Verwendung der Steuerung 2, wie z. B. einen Steuerknüppel oder dergleichen, in Echtzeit steuern, um so Befehlswerte einzugeben, während die Bewegung des Roboters beobachtet wird.
  • Die Erzeugungseinheit 304 eines vertikalen Wegs eines Schwerpunkts in der Luftphase, die Erzeugungseinheit 306 eines vertikalen Wegs des Schwerpunkts in der Bodenphase, die Berechnungseinheit 308 eines horizontalen Wegs des Schwerpunkts in der Bodenphase, und die Berechnungseinheit 310 für einen horizontalen Weg des Schwerpunkts in der Luftphase erzeugen den Schwerpunktweg des Roboters 2 in einem jeden Zeitintervall basierend auf den Benutzerbefehlswerten, die in der Benutzer-Befehlswert-Speichereinheit 302 gespeichert sind. Der hier erzeugte Schwerpunktweg wird mit dem Koordinatensystem (x, y, z) ausgedrückt, das außerhalb des Roboters 2 festgelegt ist. In der Bodenphase kann der Schwerpunktweg jedoch als Daten gehandhabt werden, die mit dem Koordinatensystem (x', y', z) ausgedrückt werden, die an dem Referenzpunkt des Roboters 2 festgelegt sind, weil der Referenzpunkt des Roboters 2 (der auf der Fußfläche des Tragbeins positioniert ist) sich nicht in Bezug auf den Boden während der Bodenphase bewegt. Einzelheiten zu den Vorgängen, die durch eine jeweilige Wegerzeugungs- und Berechnungseinheit ausgeführt werden, werden nachstehend ausführlicher beschrieben.
  • Der vertikale Weg 336 des Schwerpunkts in der Luftphase beinhaltet Daten, die den Weg des Schwerpunkts in der vertikalen Richtung in der Luftphase des Roboters 2 ausdrücken. Bezüglich des vertikalen Wegs 336 des Schwerpunkts in der Luftphase wird das Bezugszeichen, das die Zeitintervallsequenz angibt, dem Weg des Schwerpunkts in der vertikalen Richtung in der Luftphase während dieses Zeitintervalls zugeordnet. Jedes Mal, wenn der Schwerpunktweg in der vertikalen Richtung in einem speziellen Zeitintervall mit der Erzeugungseinheit 304 für einen vertikalen Weg des Schwerpunkts in der Luftphase erzeugt wird, wird der vertikale Weg 336 des Schwerpunkts in der Luftphase aufgefrischt.
  • Wie der vertikale Weg 336 des Schwerpunkts in der Luftphase handelt es sich bei dem horizontalen Weg 342 des Schwerpunkts der Luftphase um Daten, die den Weg der Schwerkraft in der horizontalen Richtung in der Luftphase des Roboters 2 ausdrücken. Angesichts des horizontalen Wegs 342 des Schwerpunkts der Luftphase wird das Bezugszeichen, das die Zeitintervallsequenz angibt, dem Weg des Schwerpunkts in der horizontalen Richtung in der Luftphase während dieses Zeitintervalls zugeordnet. Jedes Mal, wenn der Schwerpunktweg in der horizontalen Richtung in einem speziellen Zeitintervall mit der Berechnungseinheit 310 eines horizontalen Wegs des Schwerpunkts in der Luftphase erzeugt wird, wird der horizontale Weg 342 des Schwerpunkts in der Luftphase aufgefrischt.
  • Wie der vertikale Weg 336 des Schwerpunkts in der Luftphase und der horizontale Weg 342 des Schwerpunkts in der Luftphase, sind der vertikale Weg 338 des Schwerpunkts der Bodenphase und der horizontale Weg 340 des Schwerpunkts der Bodenphase ebenfalls Daten, die den Schwerpunktweg des Roboters 2 in der Bodenphase während eines jeden Zeitintervalls ausdrücken. In Bezug auf diese Daten wird das Bezugszeichen, das die Zeitintervallsequenz angibt, dem Weg des Schwerpunkts in der Bodenphase während dieses Zeitintervalls zugeordnet. Jedes Mal, wenn der Schwerpunktweg in einem speziellen Zeitintervall durch die entsprechende Wegerzeugungs- oder -Berechnungseinheit erzeugt wird, werden diese Daten aufgefrischt.
  • Die Berechnungseinheit 314 des relativen Schwerpunktwegs berechnet den relativen Schwerpunktweg 346 des Roboters 2 basierend auf dem Schwerpunkt des Roboters 2, der durch die Erzeugungseinheit 304 des vertikalen Wegs des Schwerpunkts in der Luftphase, die Erzeugungseinheit 306 des vertikalen Wegs des Schwerpunkts in der Bodenphase, die Berechnungseinheit 308 des horizontalen Wegs des Schwerpunkts in der Bodenphase und die Berechnungseinheit 310 des horizontalen Wegs des Schwerpunkts in der Luftphase erzeugt wird, und berechnet den relativen Weg des untätigen Beins 348, der mit der Berechnungseinheit 316 für den relativen Weg des untätigen Beins berechnet wird.
  • Der relative Schwerpunktweg 346 drückt den Weg des Schwerpunkts mit dem Koordinatensystem (x', y', z') aus, dessen ursprünglicher Punkt der Referenzpunkt ist, der auf der Spitze des Fußes des Tragbeins des Roboters 2 vorgesehen ist. Angesichts des relativen Schwerpunktwegs 346 wird das Bezugszeichen, das die Zeitintervallsequenz anzeigt, dem relativen Weg des Schwerpunkts während dieses Zeitintervalls zugeordnet. Jedesmal wenn der relative Weg des Schwerpunkts in einem speziellen Zeitintervall mit der Berechnungseinheit 314 des relativen Schwerpunktwegs berechnet wird, wird der relative Schwerpunktweg 346 aufgefrischt.
  • Die Berechnungseinheit 316 des relativen Wegs des untätigen Beins berechnet den relativen Weg 348 der Fußspitze des untätigen Fußes des Roboters 2 basierend auf dem relativen Schwerpunktweg 346 des Roboters 2, der mit der Berechnungseinheit 314 des relativen Schwerpunktwegs berechnet wird, und den Benutzerbefehlswerten, die in der Benutzer-Befehlswert-Speichereinheit 302 gespeichert sind. Der relative Weg 348 der Fußspitze des untätigen Beins, der hier berechnet wird, wird mit dem Koordinatensystem (x', y', z') ausgedrückt, in dem der Referenzpunkt, der auf der Fußspitze des Tragbeins des Roboters 2 vorgesehen ist, der Ursprungspunkt ist.
  • Bei dem relativen Weg 348 des untätigen Beins handelt es sich um Daten, die den relativen Weg des Referenzpunkts auf der Fußspitze des untätigen Beins des Roboters 2 in einem jeweiligen Zeitintervall ausdrücken. In Bezug auf die Daten weist das Bezugszeichen auf die Zeitintervallsequenz hin, die dem relativen Weg des Referenzpunkts auf der Spitze des Fußes des untätigen Beins in diesem Zeitintervall zugeordnet ist. Jedesmal, wenn der relative Weg in einem speziellen Zeitintervall mit der Berechnungseinheit 316 für den relativen Weg des untätigen Beins berechnet wird, wird der relative Weg 348 des untätigen Beins aufgefrischt.
  • Die Berechnungseinheit 318 für den Gelenkwinkel-Sollwert berechnet die chronologischen Gelenkwinkel-Sollwertdaten 350 für jedes Gelenk des Roboters 2 basierend auf dem relativen Schwerpunktweg 346 des Roboters 2, der mit der Berechnungseinheit 314 für den relativen Schwerpunktweg berechnet wird, und dem relativen Weg 348 des Referenzpunkts auf der Spitze des Fußes des untätigen Beins des Roboters 2, der mit der Berechnungseinheit 316 für den relativen Weg des untätigen Beins berechnet wird. Die chronologischen Gelenkwinkel-Sollwertdaten 350 bestehen aus chronologischen Daten für den Soll-Gelenkwinkel eines jeweiligen Gelenks des Roboters 2.
  • Die Gelenksantriebseinheit 320 rotiert jedes Gelenk des Roboters 2 basierend auf den chronologischen Gelenkwinkel-Sollwertdaten 350.
  • Unter Bezugnahme auf 4 erfolgt eine Beschreibung der Prozesse, die durch die Steuerungseinheit 10 des Roboters 2 der vorliegenden Erfindung ausgeführt werden. Die Prozesse von 4 können eine beliebige Bewegung handhaben, doch bei dem nachstehend beschriebenen Beispiel handelt es sich um eines, bei dem die Prozesse von 4 die in 2 gezeigte Bewegung handhaben.
  • Zunächst wird in Schritt S402 eine Variable k, die die Anzahl des Zeitintervalls anzeigt, bei dem die Bewegung des Roboters erzeugt werden soll, auf 1 gesetzt.
  • Anschließend wird in Schritt S404 der Schwerpunktweg des Intervalls 1 (das anfängliche Intervall) eingestellt. Die Erzeugung des Schwerpunktwegs des Intervalls 1, das bei Schritt S404 ausgeführt wird, ist mit der Erzeugung des Schwerpunktwegs in einem gemeinsamen Intervall k, das nachstehend von Schritt S408 bis Schritt S420 be schrieben wird, identisch, und somit wird auf eine Beschreibung desselben verzichtet. Durch Ausführen des Verfahrensschritts von Schritt S404 werden die Schwerpunktwege in der vertikalen Richtung und der horizontalen Richtung in Intervall 1 erzeugt. Wie in 2 gezeigt ist, besteht ein Intervall 1 aus einer Bodenphase und einer Luftphase. Der Schwerpunktweg, der in Intervall 1 erzeugt wird, wird im vertikalen Weg 336 des Schwerpunkts in der Luftphase, dem vertikalen Schwerpunktweg 338 in der Bodenphase, dem horizontalen Schwerpunktweg 340 in der Bodenphase und dem horizontalen Schwerpunktweg 342 in der Luftphase reflektiert.
  • In Schritt S406 wird der Zahl k, die das Zeitintervall anzeigt, eine 1 hinzuaddiert, in dem die Bewegung erzeugt werden soll.
  • In Schritt S408 wird die Steuerungseinheit 10 den Benutzerbefehlswert bezüglich der Bewegung, die erzeugt werden soll, aus der Benutzerbefehlswert-Speichereinheit 302 herauslesen. Die nachstehenden Parameter können auf die Benutzerbefehlswerte angewendet werden.
    • (1) Bewegungsmodus 321 des Roboters 2
    • (2) Sprunghöhe während der Luftphase 322
    • (3) Höhe (Position in der vertikalen Richtung) des Schwerpunkts an einem Punkt der Bewegungsänderung 324
    • (4) Bodenphasendauer 326
    • (5) Relativer ZMP-Weg während der Bodenphase 328
    • (6) Chronologische Daten des Soll-Winkelmoments während einer Bodenphase und Luftphase 330
    • (7) Geschwindigkeit des Schwerpunkts in der horizontalen Richtung am Punkt der Bewegungsänderung 332
    • (8) Position und Geschwindigkeit der Fußspitze des untätigen Beins beim Abheben 334
  • Bei Punkt (1), dem Bewegungsmodus 321 des Roboters 2 sind die Charakteristika der Bewegung des Roboters 2 während eines jeweiligen Zeitintervalls angegeben. Der Bewegungsmodus 321 des Roboters 2 besteht aus einem Bezugszeichen, das die Zeitintervallsequenz anzeigt, einem Bezugszeichen, das das Vorhandensein oder Nichtvorhandensein einer Luftphase während eines jeweiligen Zeitintervalls anzeigt, und einem Bezugszeichen, dass das linke Bein kennzeichnet, das in der Bodenphase eines jeweiligen Zeitintervalls das Tragbein sein wird, und durch den Benutzer frei bereitgestellt werden kann.
  • Bei Punkt (2), ist die Sprunghöhe während der Luftphase 322 die maximale Höhe, die durch den Schwerpunkt des Roboters 2 erreicht werden kann, wenn die Bewegung des Roboters 2 eine Luftphase beinhaltet, und kann durch einen Benutzer innerhalb der durch die Stellglieder des Roboters 2 zulässigen Möglichkeiten frei bereitgestellt werden.
  • Bei Punkt (3) handelt es sich bei der Höhe (Position in der vertikalen Richtung) des Schwerpunkts an einem Punkt der Bewegungsänderung 324 um die Höhe, die durch den Schwerpunkt des Roboters 2 erreicht werden soll, wenn sich der Roboter 2 zwischen einer Bodenphase und einer Luftphase bewegt oder sich zwischen einer Bodenphase und einer Bodenphase bewegt und kann durch einen Benutzer innerhalb des geometrisch zulässigen Bereichs des Mechanismus des Roboters 2 uneingeschränkt ermöglicht werden.
  • Bei Punkt (4) handelt es sich bei der Bodenphasendauer 326 um die Dauer der Bodenphase in einem jeweiligen Zeitintervall und kann durch einen Benutzer uneingeschränkt ermöglicht werden.
  • Bei Punkt (5) handelt es sich bei dem relativen ZMP-Weg während einer Bodenphase 328 um chronologische Daten über die Position des Soll-ZMP in der Bodenphase in Bezug auf den Referenzpunkt auf der Fußfläche des Tragbeins und dieser kann durch einen Benutzer uneingeschränkt ermöglicht werden. Wenn in der Bodenphase der ZMP sich innerhalb der Fußfläche des Beinglieds befindet, bei dem es sich um das Tragbein handelt, kippt der Roboter 2 nicht um und kann seine Bewegung fortsetzen. Mit dem Roboter 2 der vorliegenden Ausführungsform wird der relative ZMP-Weg während der Bodenphase so eingestellt, dass er in der Mitte der Fußfläche des Tragbeins festgelegt ist. Wenn der relative ZMP-Weg auf diese Weise implementiert ist, kippt der Roboter 2 nicht um und kann eine stabile Bewegung erreichen. Es ist zu beachten, dass der relative ZMP-Weg in der Bodenphase ein beliebiger Weg sein kann, solange er innerhalb der Fußfläche während der Bodenphase beibehalten wird. Es kann beispielsweise ein Weg verwendet werden, bei dem der ZMP sich von der Rückseite der Fußfläche des Tragbeins während der Bodenphase nach vorne verschiebt. Auch hier kippt der Roboter 2 nicht um und kann eine stabile Bewegung erreichen, wenn der relative ZMP-Weg auf diese Weise implementiert wird.
  • Bei Punkt (6) handelt es bei den chronologischen Daten des Soll-Winkelmoments während einer Bodenphase und einer Luftphase 330 um chronologische Daten über das Winkelmoment der Drehbewegung um den Schwerpunkt, die durch den Roboter 2 erreicht werden kann, und diese können durch einen Benutzer innerhalb des Bereichs der durch die Stellglieder des Roboters 2 zulässigen Möglichkeiten uneingeschränkt bereitgestellt werden. Das Winkelmoment des Roboters 2 um die Längsachse (x'-Achse) und die Querachse (y'-Achse) kann so eingestellt werden, dass der Roboter 2 eine gewünschte Haltung erreicht. Das Winkelmoment um die Gier- bzw. Hochachse (z'-Achse) kann so eingestellt werden, dass der Roboter 2 eine gewünschte Drehbewegung erreicht. Mit dem Roboter 2 der vorliegenden Ausführungsform wird das Winkelmoment um die Längsachse, die Querachse und die Hochachse so eingestellt, dass es in allen Zeitintervallen null beträgt.
  • Bei Punkt (7) handelt es sich bei der Geschwindigkeit des Schwerpunkts in der horizontalen Richtung an einem Punkt der Bewegungsänderung 332 um die Geschwindigkeit in der horizontalen Richtung, die durch den Schwerpunkt des Roboters 2 erreicht werden soll, wenn die Bewegung des Roboters 2 zwischen der Bodenphase und der Luftphase oder zwischen einer Bodenphase und einer Bodenphase wechselt wird und kann durch einen Benutzer innerhalb des Bereichs der durch die Stellglieder des Roboters 2 zulässigen Möglichkeiten uneingeschränkt ermöglicht werden.
  • Bei Punkt (8) handelt es sich bei der Position und Geschwindigkeit der Spitze des Fußes des untätigen Beins an einem Punkt des Abhebens 334 um die Position und Geschwindigkeit der Spitze des Fußes des untätigen Beins aus Sicht der Spitze des Fußes des Tragbeins an dem Punkt, in dem der Roboter 2 von der Bodenphase in die Luftphase übergeht, und diese können durch einen Benutzer innerhalb des geometrisch zulässigen Bereichs des Mechanismus des Roboters 2 uneingeschränkt ermöglicht werden.
  • In Schritt S410 von 4 wird bestimmt, ob die Bewegung eines Intervalls k eine Luftphase aufweist oder nicht. Wenn das Intervall k eine Luftphase aufweist (wenn Schritt S410 JA lautet) wird der Prozess bei Schritt S412 fortgesetzt, um eine Bewegung in der Luftphase von Intervall k zu erzeugen. Wenn das Intervall k keine Luftphase aufweist (wenn Schritt S410 NEIN lautet) wird der Prozess bei Schritt S414 fortgesetzt, um eine Bewegung in der Bodenphase des Intervalls k zu erzeugen. Wenn k beispielsweise 2 beträgt, wird der Prozess bei Schritt S412 fortgesetzt, weil die Bewegung des Intervalls 2 eine Luftphase aufweist.
  • In Schritt S412 wird der Schwerpunktweg in der vertikalen Richtung während der Luftphase des Intervalls k erzeugt. In der Luftphase schwebt der Roboter mitten in der Luft und eine Schwerkraft wird auf den Roboter als ein externe Kraft ausgeübt. Daher wird der Schwerpunktweg als Parabel aufgetragen wie unten angezeigt ist, egal wie die Gelenke des Roboters während der Luftphase angesteuert werden.
    Figure 00300001
    wobei g in der vorstehenden Gleichung für die Beschleunigung aufgrund der Schwerkraft steht, vz0 in der vorstehenden Gleichung für die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung am Punkt des Abhebens im Intervall k steht und z0 für die Position des Schwerpunkts in der vertikalen Richtung am Punkt des Abhebens im Intervall k steht. Indem oben vz0 und z0 angegeben werden, kann der Schwerkraftweg in der vertikalen Richtung während der Luftphase erzeugt werden.
  • z0 oben ist die Höhe des Schwerpunkts am Punkt des Abhebens und wird durch einen Benutzer als ein Benutzerbefehlswert in Schritt S408 angegeben.
  • Darüber hinaus handelt es sich bei vz0 oben um die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung am Punkt des Abhebens. vz0 kann anhand der Sprunghöhe des Benutzerbefehlswerts, der in Schritt S408 bereitgestellt wird, berechnet werden. Die Geschwindigkeit der Schwerkraft in der vertikalen Richtung am Punkt des Abhebens vz0 wird nachstehend durch Verwenden der Sprunghöhe h und der Beschleunigung augrund der Schwerkraft g berechnet. vz0 = √2hg
  • Es ist zu beachten, dass anstatt die Sprunghöhe h als einen Benutzerbefehlswert einzugeben, vz0 als ein Benutzerbefehlswert bereitgestellt werden kann.
  • Durch Ausführen eines Schritts S412 kann der Schwerpunktweg des Roboters 2 in der vertikalen Richtung während der Luftphase erzeugt werden. 5(a) ist eine schematische Darstellung des Schwerpunktwegs des Roboters 2 in der vertikalen Richtung. Wenn k beispielsweise 2 beträgt, wird der vertikale Weg 102 der Luftphase des Intervalls 2 in Schritt S412 erzeugt. Darüber hinaus kann die Dauer der Luftphase anhand des Schwerpunktwegs des Roboters 2 in der vertikalen Richtung während der Luftphase, der in Schritt S412 erzeugt wurde, berechnet werden. Die berechnete Zeitspanne der Luftphase wird in den Verfahrensschritten von Schritt S420 bis Schritt S422 verwendet.
  • In Schritt S414 wird der Schwerpunktweg in der vertikalen Richtung während der Bodenphase von Intervall k erzeugt. Der Schwerpunktweg in der vertikalen Rich tung während der Bodenphase k wird erzeugt, um mit dem Schwerpunktweg in der vertikalen Richtung der Bewegung vor und nach der Bodenphase ohne Weiteres verbunden werden zu können.
  • Basierend auf dem zuvor erzeugten Schwerpunktweg in der vertikalen Richtung von Intervall k-1 wird die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung zu Beginn der Bodenphase des Intervalls k an die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung bei Beendung des Intervalls k-1 angeglichen. Wenn k beispielsweise 2 beträgt, wird die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung am Punkt der Beendung 108 des Intervalls 1 basierend auf dem zuvor erzeugten Schwerpunktweg 112 in der vertikalen Richtung in der Luftphase von Intervall 1 bestimmt. und die Position und Geschwindigkeit, die bestimmt wurden, werden die Ausgangsbedingungen für Intervall k sein.
  • Die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung bei Beendung der Bodenphase von Intervall k ist an die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung zu Beginn der darauf folgenden Luft- oder Bodenphase angeglichen.
  • Wenn ein Intervall k eine Luftphase aufweist, kann die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung bei Beendung der Bodenphase anhand des Schwerpunktwegs in der vertikalen Richtung in der Luftphase eingestellt werden, der zuvor in Schritt S412 erzeugt worden war. Wenn k beispielsweise 2 beträgt, bestimmt die Position und Geschwindigkeit des Schwerpunkts in der vertikalen Richtung bei Beendung der Bodenphase 110 die Position und Geschwindigkeit der Schwerkraft in der vertikalen Richtung zu Beginn der Luftphase 110 anhand des Schwerpunktwegs in der vertikalen Richtung 102 während der Luftphase, der zuvor bei Schritt S412 erzeugt worden ist, und die Position und Geschwindigkeit, die bestimmten worden sind, bilden die Bedingungen bei der Beendung der Bodenphase.
  • Wenn ein Intervall k keine Luftphase aufweist und die Beendung der Bodenphase mit dem Beginn der Bodenphase von Intervall k+1 verbunden wird, kann die Position des Schwerpunkts in der vertikalen Richtung bei Beendung von Intervall k von einem Benutzerbefehlswert eingestellt werden, der in Schritt S408 bereitgestellt wird. In dieser Situation kann die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung uneingeschränkt ermöglicht werden. Wenn k beispielsweise 3 beträgt, weist ein Intervall keine Luftphase auf, und die Beendung 116 des Schwerpunktwegs in der vertikalen Richtung in der Bodenphase wird mit dem Schwerpunktweg 115 (der zu diesem Zeitpunkt noch erzeugt werden muss) in der vertikalen Richtung der Bodenphase von Intervall 4, d. h. des nächsten Zeitintervalls, verbunden. In dieser Situation wird die Schwerpunkthöhe 324, die in Schritt S408 angegeben ist, als die Position des Schwerpunkts in der vertikalen Richtung verwendet. Die Geschwindigkeit des Schwerpunkts in der vertikalen Richtung kann uneingeschränkt ermöglicht werden.
  • Basierend auf den Bedingungen zu Beginn und bei Beendung der Bodenphase, die wie vorstehend beschrieben eingestellt wurden, wird eine polynomische Interpolation verwendet, um den Schwerpunktweg in der vertikalen Richtung in der Bodenphase zu erzeugen. Indem die Position und Geschwindigkeit zu Beginn und bei Beendung des Wegs zu restriktiven Bedingungen gemacht werden, und mittels einer Interpolation, die ein Polynom zweiten oder dritten Grades verwendet, wird der Schwerpunktweg in der vertikalen Richtung während der Bodenphase von Intervall k erzeugt. Wenn folglich beispielsweise die Geschwindigkeit in der vertikalen Richtung zu Beginn der Bodenphase null ist, und die Geschwindigkeit in der vertikalen Richtung bei Beendung der Bodenphase v ist, kann eine Geschwindigkeit in der vertikalen Richtung erzeugt werden, die von der Kauerhaltung in der Bodenphase aus zunimmt und bei Beendung die Geschwindigkeit vz0 erreicht.
  • Durch Ausführen des Verfahrensschritt von Schritt S414 kann der Schwerpunktweg in der vertikalen Richtung während der Bodenphase von Intervall k erzeugt werden. Der Schwerpunktweg in der vertikalen Richtung, der durch die vorstehenden Verfahrensschritte erzeugt wurde, wird mit dem Koordinatensystem (x, y, z) ausge drückt, das außerhalb des Roboters festgelegt ist. Weil jedoch die Fußfläche des Tragbeins, auf dem sich der Referenzpunkt des Roboters befindet, sich in der Bodenphase nicht bewegt, kann der vorstehende Weg ohne Weiteres ausgedrückt werden, wie dies beim Koordinatensystem (x', y', z') der Fall ist. In 5(a) ist der Weg, der mit dem Koordinatensystem (x, y, z) ausgedrückt wird, in einer gestrichelten Linie angezeigt, und der mit dem Koordinatensystem (x', y', z') ausgedrückte Weg wird mit einer durchgehenden Linie angezeigt.
  • In Schritt S416 wird der Schwerpunktweg in der horizontalen Richtung während der Bodenphase von Intervall k berechnet. Der Schwerpunktweg in der horizontalen Richtung wird basierend auf dem Schwerpunktweg in der vertikalen Richtung in dieser Bodenphase, dem relativen Soll-ZMP-Weg, den chronologischen Daten für das Soll-Winkelmoment und den Geschwindigkeiten des Schwerpunkts in der horizontalen Richtung zu Beginn und bei Beendung der Bodenphase bestimmt. In Schritt S416 wird der Schwerpunktweg in der horizontalen Richtung berechnet, so dass der relative Ist-ZMP-Weg, der erreicht wird, wenn der Schwerpunktweg in der vertikalen und horizontalen Richtung implementiert wird, an den relativen Soll-ZMP-Weg angeglichen ist.
  • Der Schwerpunktweg in der vertikalen Richtung während der Bodenphase von Intervall k ist bereits in Schritt S414 erzeugt worden. Der relative Soll-ZMP-Weg und die chronologischen Daten für das Winkelmoment werden als Benutzerbefehlswerte in Schritt S408 bereitgestellt. Die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung zu Beginn der Bodenphase wird durch Bestimmen der Geschwindigkeit des Schwerpunkts in der horizontalen Richtung bei Beendung des Intervalls k-1 anhand des zuvor erzeugten Schwerpunktwegs des Intervalls k-1 angegeben. Die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung bei Beendung der Bodenphase wird in Schritt S408 als ein Benutzerbefehlswert bereitgestellt. In Schritt S420 wird der Schwerpunktweg in der horizontalen Richtung in der Bodenphase berechnet, um diese Bedingungen zu erfüllen.
  • Nachstehend erfolgt eine Beschreibung der Berechnung des Schwerpunkts in der horizontalen Richtung während der Bodenphase. Die relative ZMP-Position (px', py'), die der Roboter implementieren wird, kann anhand der relativen Position des Schwerpunkts (x', y', z') des Roboters 2 und der Winkelgeschwindigkeit (ωx', ωy') um den Schwerpunkt des Roboters 2 herum berechnet werden. Der tatsächlich erzeugte ZMP wird anhand der relativen Position des Schwerpunkts des Roboters 2 und der Winkelgeschwindigkeit um den Schwerpunkt des Roboters 2 herum mittels der nachstehenden ZMP-Gleichung berechnet.
  • Figure 00350001
  • Hier zeigt (1) das erste Differential in Bezug auf die Zeit t an, und ( 2 ) zeigt das zweite Differential in Bezug auf die Zeit t an. Darüber hinaus steht m für die Masse des Roboters 2, und fz' für die Bodenreaktionskraft, die auf den Roboter 2 anhand der Fußfläche des Tragbeins ausgeübt wird.
  • z' und z'(2) der Gleichung sind die Position in der vertikalen Richtung und die Beschleunigung in der vertikalen Richtung des Schwerpunkts, der ursprünglich der Spitze des Fußes des Tragbeins des Roboters 2 entstammt. Weil sich die Spitze des Fußes des Tragbeins des Roboters 2 in der Bodenphase nicht bewegt, können z' und z'(2) anhand des Schwerpunkts in der vertikalen Richtung definiert werden, der in Schritt S414 erzeugt wurde, definiert werden.
  • Ix'ωx' (1) und Iy'ωy' ( 1 ) zeigen die Schwerkrafteffekte des Schwerpunkts, der sich um die Spitze des Fußes des Tragbeins in der Bodenphase dreht. In der vorliegenden Aus führungsform beträgt das Winkelmoment um die Wankachse (x'-Achse) und die Nickachse (y'-Achse) bei allen Zeitintervallen null, und betragen Ix'ωx' ( 1 ) und Iy' ωy' (1) null.
  • Eine Gleichung, die die chronologischen Daten für die Position (x', y') des Schwerpunkts in der horizontalen Richtung berechnet, kann mittels der Diskretisierung der vorstehenden ZMP-Gleichung abgeleitet werden. Eine Diskretisierung bezieht sich hier auf die Verwendung eine Zeiteinheit Δt in Bezug auf die Zeit t, wie vorstehend angemerkt wurde. Der nachstehende relationale Ausdruck wird in Bezug auf den Schwerpunktweg in der x'-Richtung erhalten. Px'i = aix'i-1 + bix'i + cix'i+1
  • Hier steht x'i für eine Variable, in der der Schwerpunktweg x'(t) in der x'-Richtung diskretisiert worden ist, und px'i steht für eine Variable, in der der relative ZMP-Weg px'(t) in der x'-Richtung diskretisiert worden ist; i zeigt die Zeitsequenzen an, die durch die Zeiteinheiten aufgeteilt worden sind. Die vorstehend beschriebene Gleichung zeigt an, dass die Koordinaten px'i der ZMP in der x'-Richtung zum Zeitpunkt i anhand der unmittelbare vorhergehenden Koordinate x'i-1 in der x'-Richtung, der aktuellen Koordinate x'i in der x'-Richtung und der unmittelbar darauf folgenden Koordinate x'i+1 in der x'-Richtung berechnet werden kann. Bei den Koeffizienten ai, bi, ci handelt es sich um Koeffizienten, die mittels der nachstehenden Gleichung berechnet werden.
  • Figure 00360001
  • Das vorstehende Δt ist eine Zeitspanne, in der die Diskretisierung der ZMP-Gleichung verwendet wird, und z'i und z'(2) i sind Variablen, in denen die Position und Beschleunigung des Schwerpunkts jeweils diskretisiert worden sind. In der vorliegenden Ausführungsform handelt es sich bei Δt um eine Zeitspanne, in der die Dauer der Bodenphase in n gleiche Anteile geteilt wird.
  • Bei dem Roboter 2 der vorliegenden Ausführungsform wird die Bewegung des Roboters 2 so berechnet, dass der Schwerpunktweg sich zu Beginn und bei Beendung der Bodenphase problemlos verändert. Durch Berechnen der Bewegung auf diese Weise erfährt die Position des Schwerpunkts des Roboters 2 einen glatten Übergang, und der Roboter erreicht eine stabile Bewegung, selbst in Situationen, in denen beispielsweise der Roboter springt und landet oder Situationen, in denen das Tragbein gewechselt wird.
  • Die Geschwindigkeit vx'0 des Schwerpunkts in der x'-Richtung zu Beginn von Intervall k wird unter Verwendung der unterteilten Zeitspanne Δt und der Schwerpunktpositionen x'0, x'1 wie folgt ausgedrückt. vx'0Δt = x'1 – x'0
  • Die Geschwindigkeit vx'0 des Schwerpunkts in der x'-Richtung zu Beginn von Intervall k wird anhand des Schwerpunktwegs von Intervall k – 1 eingestellt, der zuvor berechnet worden ist. Wenn k beispielsweise k 2 ist, wird die Geschwindigkeit vx'0 des Schwerpunkts in der x'-Richtung zu Beginn 108 des Intervalls 2 anhand des Wegs 120 in der horizontalen Richtung von Intervall 1 als die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung bei der Beendung 108 des Intervalls 1 definiert.
  • Desgleichen bezieht sich die Geschwindigkeit vx'n-1 des Schwerpunkts in der x'-Richtung bei der Beendung des Intervalls k auf die unterteilte Zeitspanne Δt und die Schwerpunktpositionen x'n-2, x'n-1 wie folgt: vx'n-1Δt = x'n-1 – x'n-2
  • Die Geschwindigkeit vx'n-1 des Schwerpunkts in der x'-Richtung bei Beendung des Intervalls k ist als Benutzerbefehlswert bei Schritt S408 eingestellt.
  • Durch Einstellung der vorstehend erwähnten Beziehung kann der Schwerpunktweg (x'0, x'1, ..., x'n-1) in der x'-Richtung während der Bodenphase des Intervalls k, bei dem der zu implementierende relative ZMP-Weg gleich dem relativen Soll-ZMP-Weg ist, durch Lösen der nachstehenden Gleichung berechnet werden, die durch eine tridiagonale Matrix dargestellt wird.
  • Figure 00380001
  • In der vorstehenden Gleichung wird die linke Seite durch das Produkt aus einer Matrix und einem Spaltenvektor dargestellt, und die Matrix ist eine tridiagonale Matrix mit Koeffizienten, die anhand des Wegs in der vertikalen Richtung berechnet werden. Eine tridiagonale Matrix ist eine Matrix, in der nur der diagonale Abschnitt und der dazu benachbarte, sub-diagonale Abschnitt signifikante Werte aufweisen, und alle anderen Abschnitte betragen null. Der Spaltenvektor auf der linken Seite ist ein Spaltenvektor, der den Schwerpunktweg (x'0, x'1, ..., x'n-1) in der x'-Richtung anzeigt. Der Spaltenvektor auf der rechten Seite ist ein Spaltenvektor, der den relativen Soll-ZMP-Weg, einen Wert vx'0Δt, bei dem es sich um die Anfangsgeschwindigkeit vx'0 des Schwerpunkts in der x'-Richtung multipliziert mit der Zeiteinheit Δt und in einen Abstand konvertiert handelt, und den Wert vx'n-1Δt aufweist, bei dem es sich um die Beendungsgeschwindigkeit vx'n-1 des Schwerpunkts in der x'-Richtung multipliziert mit der Zeiteinheit Δt und in einen Abstand konvertiert handelt.
  • In der vorstehenden Gleichung kann die unbekannte Menge (x'0, x'1, ..., x'n-1) berechnet werden, indem die inverse Matrix der tridiagonalen Matrix auf der linken Seite berechnet wird, und das Produkt dieser inversen Matrix und der rechten Seite berechnet wird. Daher kann der Schwerpunktweg in der x'-Richtung berechnet werden.
  • Mit der vorstehend erwähnten Berechnung wird der Schwerpunktweg in der horizontalen Richtung nicht durch die Versuch-und-Irrtums-Methode berechnet. Der Schwerpunktweg in der horizontalen Richtung kann direkt berechnet werden, wodurch der relative Soll-ZMP-Weg erfüllt. Die vorstehende Berechnung kann bei geringem rechnerischem Aufwand ausgeführt werden, und die Berechnungseinheit 308 für den horizontalen Schwerpunktweg der Bodenphase kann diese Berechnung mit hoher Geschwindigkeit ausführen.
  • 5(b) zeigt den Schwerpunktweg des Roboters in der horizontalen Richtung. Wenn beispielsweise k 2 ist, wird der horizontale Weg 118 der Bodenphase von Intervall 2 in Schritt S416 erzeugt. In 6 sind Einzelheiten des Wegs (x'0, x'1, ..., x'n-1) in der x'-Richtung gezeigt, der bei Schritt S416 berechnet wird, wenn k 2 ist.
  • Zusätzlich kann der Schwerpunktweg (y'0, ..., y'n-1) in der y'-Richtung während der Bodenphase des Intervalls k auf die gleiche Weise berechnet werden wie der Schwerpunktweg (x'0, x'1, ..., x'n-1) in der x'-Richtung, nämlich anhand der relativen ZMP-Position (py'1, ..., py'n-2) in der y'-Richtung und der Startgeschwindigkeit vy'0 und der Beendungsgeschwindigkeit vy'n-1 in der Bodenphase des Intervalls k.
  • Es ist zu beachten, dass anstelle der vorstehend erwähnten Geschwindigkeiten vx'0, vy'0 in der horizontalen Richtung der Benutzer horizontale Einheit-Vektoren nx', ny' vorsehen kann, die die Richtung, in der der Schwerpunkt sich bewegt, und das Geschwindigkeitsausmaß |v| als Befehlswerte anzeigen. In dieser Situation werden die Geschwindigkeiten vx'0, vy'0 in der horizontalen Richtung mittel der nachstehenden Gleichung berechnet. vx'0 = |v|·nx, vy'0 = |v|·ny.
  • Durch Ausführen der Verfahrensschritte von Schritt S414 und Schritt S416 kann der Schwerpunktweg während der Bodenphase erzeugt werden. Wenn k beispielsweise 2 ist, kann der Schwerpunktweg während der Bodenphase von Intervall 2 erzeugt werden. In der Bodenphase des Intervalls 2 kann eine Bewegung erreicht werden, in der ein Sprung in der Luftphase von Intervall 2 beinhaltet ist, die auf die Bodenphase folgt, und der Schwerpunkt des Roboters 2 kann gesenkt werden. Darüber hinaus wird in der Bodenphase von Intervall 2 auch eine Bewegung erreicht, die den Aufprall beim Landen abschwächen kann, der durch die Luftphase des unmittelbar vorhergehenden Intervalls 1 bewirkt wird, indem der Schwerpunkt gesenkt wird.
  • Durch Erreichen des Schwerpunktwegs, der durch die vorhergehenden Verfahrensschritte erzeugt wird, kann der Roboter 2 den ZMP innerhalb der Fußfläche des Tragbeins beibehalten, während eine Bewegung erreicht wird, die den Schwerpunkt vertikal bewegt.
  • Wenn der Schwerpunktweg durch das vorstehend beschriebene Verfahren erzeugt wird, kann nicht garantiert werden, dass der ZMP, der mit der ZMP-Gleichung berechnet wird, dem Soll-ZMP zu Beginn und bei Beendung der Bodenphase angeglichen ist. Weil die Schwerpunktgeschwindigkeit jedoch zu Beginn und bei Beendung der Bodenphase problemlos in Verbindung gebracht wird, und die Zeitspanne, in der die ZMP-Gleichung nicht erfüllt wird, extrem kurz ist (etwas zweimal die Zeitbreite Δt, die die Diskretisierung der ZMP-Gleichung nutzt), kippt ein Roboter, der die vorstehend erzeugte Bewegung erreicht, nicht um und kann sich stabil bewegen.
  • In Schritt S418 wird bestimmt, ob die Bewegung des Intervalls k eine Luftphase aufweist oder nicht. Wenn das Intervall k eine Luftphase aufweist (wenn Schritt S418 JA lautet), wird der Verfahrensschritt bei Schritt S420 fortgesetzt, um die Bewegung in der Luftphase des Intervalls k zu berechnen. Wenn das Intervall k keine Luftphase aufweist (wenn Schritt S418 NEIN lautet), wird der Verfahrensschritt bei Schritt S422 fortgesetzt. Wenn k beispielsweise 2 ist, wird der Verfahrensschritt bei Schritt S420 fortgesetzt, weil die Bewegung von Intervall 2 eine Luftphase aufweist.
  • Bei Schritt S420 wird der Schwerpunktweg in der horizontalen Richtung während der Luftphase von Intervall k berechnet. In der Luftphase schwebt der Roboter mitten in der Luft, und eine Schwerkraft wirkt auf den Roboter als externe Kraft ein. Daher bewegt sich der Schwerpunkt des Roboters, ungeachtet dessen, wie die Gelenke des Roboters in der Luftphase angesteuert werden, mit einer einheitlichen linearen Bewegung in der horizontalen Richtung, wie nachstehend gezeigt ist. x = vx0t + x0 y = vy0t + y0 vx0, vy0 der vorstehenden Gleichung ist die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung an dem Punkt, an der Roboter in die Höhe spring, und x0, y0 ist die Position des Schwerpunkts in der horizontalen Richtung, an dem Punkt, an dem der Roboter in die Höhe springt. Die vorstehenden vx0, vy0 sind sowohl die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung an dem Punkt, an dem der Roboter in die Höhe springt, als auch die Geschwindigkeit des Schwerpunkts in der horizontalen Richtung an dem Punkt, an dem der Roboter landet. vx0, vy0 entsprechen der Geschwindigkeit des Schwerpunkts in der horizontalen Richtung, wenn der Roboter die Bewegung wechselt, und werden in Schritt S408 als Benutzerbefehlswert bereitgestellt.
  • Die vorstehend erwähnten x0, y0 sind die Position des Schwerpunkts in der horizontalen Richtung an dem Punkt, an dem der Roboter in die Höhe springt, und entsprechen der Position des Schwerpunkts in der horizontalen Richtung bei Beendung der Luftphase von Intervall k, der zuvor in Schritt S416 berechnet wurde.
  • Durch Vorsehen der vorstehend erwähnten vx0, vy0, x0, y0 kann der Schwerpunktweg in der horizontalen Richtung berechnet werden.
  • In Schritt S422 wird der relative Schwerpunktweg in der Luftphase während des Intervalls k-1 berechnet. Der relative Schwerpunktweg in der Luftphase wird anhand der Positionsbeziehung zwischen dem Schwerpunkt und der Spitze des Fußes des Tragbeins berechnet. Weil das Tragbein sich auch in Bezug auf den Boden in der Luftphase bewegt, kommt die Berechnung des relativen Schwerpunktwegs der Berechnung des Wegs der Spitze des Fußes des Tragbeins in Bezug auf den Schwerpunkt gleich. Der Weg der Spitze des Fußes des Tragbeins während der Luftphase kann berechnet werden, um die Wege der Fußspitze des Tragbeins während der Bodenphasen vor und nach der Luftphase ohne Weiteres in Verbindung zu bringen. Weil die relativen Positionen des Schwerpunkts und der Fußspitze des Tragbeins während der Luftphase ohne Weiteres mit den relativen Positionen des Schwerpunkts und der Fußspitze des Tragbeins während der nachfolgenden Bodenphase in Verbindung gebracht werden müssen, wird der relative Schwerpunktweg der Luftphase von Intervall k-1 berechnet, nachdem der relative Schwerpunktweg in der Bodenphase von Intervall k berechnet worden ist. Wenn k beispielsweise 2 ist, werden die relativen Schwerpunktwege 128, 120 während der Luftphase von Intervall 1 in 5(a) und (b) berechnet, nachdem die relativen Schwerpunktwege 106, 118 während der Bodenphase von Intervall 1 erzeugt worden sind.
  • Es ist zu beachten, dass in 5(a) und 5(b) der relative Schwerpunktweg (die gekrümmte Linie, die mit einer durchgehenden Linie gezeigt ist) sich kontinuierlich ändert, weil sich das Tragbein ändert, wenn die Bewegung von der Bodenphase in die Luftphase wechselt. Es ist darauf zu achten, dass die Wege des Schwerpunkts und der Fußspitze des Tragbeins von außerhalb des Roboters 2 besehen jeweils kontinuierliche Wege sind.
  • An dem Punkt, an dem der Roboter 2 in die Höhe springt, kann es vorkommen, dass das Tragbein wechselt, und es kann vorkommen, dass das Tragbein nicht gewech selt wird. Wenn der Roboter mit einem Beinglied als Tragbein in die Höhe springt und mit einem anderen Beinglied als Tragbein landet, nachdem er der Luftphase unterzogen worden ist, wechselt das Tragbein zum Zeitpunkt des Springens. Im Gegensatz dazu, wird das Tragbein zum Zeitpunkt des Springens nicht gewechselt, wenn der Roboter mit einem Beinglied als Tragbein in die Höhe springt und mit dem selben Beinglied als Tragbein landet, nachdem er einer Luftphase unterzogen worden ist.
  • Wenn das Tragbein sich zum Zeitpunkt des Springens ändert, wird der relative Weg des Tragbeins zu Beginn der Luftphase von Intervall k-1 (d. h. der relative Schwerpunktweg) so eingestellt, dass er mit dem relativen Weg des untätigen Beins in Bezug auf den Schwerpunkt bei Beendung der Bodenphase von Intervall k-1 reibungslos in Verbindung gebracht werden kann. Die relative Position und Geschwindigkeit der Spitze des untätigen Beins in Bezug auf den Schwerpunkt bei Beendung der Bodenphase von Intervall k-1 kann anhand der Position und Geschwindigkeit der Spitze des Fußes des untätigen Beins zum Zeitpunkt des Abhebens 334 aus dem Benutzerbefehlswert und anhand des relativen Schwerpunktwegs bei Beendung der Bodenphase von Intervall k-1 berechnet werden.
  • Wenn das Tragbein zum Zeitpunkt des Springens nicht gewechselt wird, wird der relative Weg des Tragbeins zu Beginn der Luftphase von Intervall k-1 (d. h. der relative Schwerpunktweg) so eingestellt, dass der relative Weg des Tragbeins (d. h. der relative Schwerpunktweg) in der Bodenphase von Intervall k-1 reibungslos in Verbindung gebracht werden kann. In anderen Worten werden die relative Position und Geschwindigkeit des Schwerpunkts bei Beendung der Bodenphase von Intervalls k-1 anhand des relativen Schwerpunktwegs während der Bodenphase von Intervall k-1 bestimmt, und als die relative Position und Geschwindigkeit des Schwerpunkts zu Beginn der Luftphase von Intervall k-1 eingestellt.
  • Wenn k beispielsweise 2 ist, wechselt das Tragbein zum Zeitpunkt des Springens der Luftphase von Intervall 1 vom linken Beinglied 6 auf das rechte Beinglied 8. Daher wird zum Berechnen der relativen Schwerpunktwege 128, 120 der Luftphase von Inter vall 1 von 5(a) und (b) die relative Position und Geschwindigkeit des Schwerpunkts zu Beginn 126 dieser Luftphase anhand der Position und Geschwindigkeit der Fußspitze des untätigen Beins zum Zeitpunkt des Abhebens 334 aus dem Benutzerbefehlswerts und der relativen Schwerpunktwege 122, 124 bei Beendung der Bodenphase von Intervall 1 berechnet.
  • Am Landepunkt werden die relativen Schwerpunktwege in der Luftphase von Intervall k berechnet, so dass die relativen Schwerpunktwege zu Beginn der Bodenphase von Intervall k ohne Weiteres in Verbindung gebracht werden können. Die relativen Schwerpunktwege während der Bodenphase von Intervall k werden bereits in Schritt S414 und Schritt S416 bereitgestellt. In anderen Worten werden die relative Position und Geschwindigkeit des Schwerpunkts zu Beginn der Bodenphase von Intervall k anhand der relativen Schwerpunktwege während der Bodenphase von Intervall bestimmt und als die relative Position und Geschwindigkeit des Schwerpunkts bei Beendung der Luftphase von Intervall k-1 eingestellt. Wenn k beispielsweise 2 ist, um die relativen Schwerpunktwege 128, 120 in der Luftphase von Intervall 1 von 5(a) und (b) zu berechnen, werden die relative Position und Geschwindigkeit des Schwerpunkts bei Beeindung 108 dieser Luftphase an die relative Position und Geschwindigkeit des Schwerpunkts zu Beginn 108 dieser Bodenphase von Intervall 2 basierend auf den relativen Schwerpunktwegen 106, 118 während der Bodenphase angeglichen.
  • Der relative Schwerpunktweg in der Luftphase von Intervall k-1 kann durch Verwenden von beispielsweise einer polynomischen Interpolation basierend auf den vorstehend erwähnten Beginn- und Beendungsbedingungen.
  • Bei Schritt S424 von 4 wird der relative Weg der Fußspitze des untätigen Beins während des Intervalls k-1 berechnet. Der relative Weg der Fußspitze des untätigen Beins während des Intervalls k-1 wird berechnet, um die Bewegungen der Beinglieder vor und nach dem Intervall k-1 ohne Weiteres in Verbindung zu bringen.
  • Die relative Position und Geschwindigkeit der Fußspitze des untätigen Beins zu Beginn der Bodenphase von Intervall k-1 sind so eingestellt, dass die Fußspitze des Beinglieds, bei dem es sich zu Beginn von Intervall k-1 um das untätige Bein handelt, basierend auf dem relativen Schwerpunktweg während Intervalls k-2 (d. h. dem relativen Weg des Tragbeins in Bezug auf den Schwerpunkt) und den jeweiligen relativen Schwerpunktwegen des Schwerpunks und des untätigen Beins während des Intervalls k-2 ohne Weiteres bewegt werden kann.
  • Der relative Weg der Fußspitze des untätigen Beins bei Beendung der Bodenphase von Intervall k-1 wird anders gehandhabt, wenn Intervall k-1 eine Luftphase aufweist bzw. wenn es dies nicht tut.
  • Wenn ein Intervall k-1 eine Luftphase aufweist, wird die Position und Geschwindigkeit der Fußspitze des untätigen Beins zum Zeitpunkt des Springens in Schritt S408 als ein Benutzerbefehlswert bereitgestellt. Daher wird die Fußspitze des untätigen Beins bei Beendung der Bodenphase von Intervall k-1 so eingestellt, dass sie an den Benutzerbefehlswert angeglichen ist.
  • Wenn Intervall k-1 keine Luftphase aufweist, wird die Beendung der Bodenphase von Intervall k-1 mit dem Beginn der Bodenphase von Intervall k in Verbindung gebracht. Beim Bewegen von der Bodenphase zur Bodenphase wird das Beinglied, das das Tragbein sein wird, gewechselt. Daher wird bei dem Roboter 2 der vorliegenden Ausführungsform basierend auf der Position und Geschwindigkeit des Schwerpunkts bei Beendung der Bodenphase von Intervall k-1 und der relativen Position und Geschwindigkeit des Schwerpunkts bei Beginn von Intervall k die Position und Geschwindigkeit des untätigen Beins bei Beendung der Bodenphase von Intervall k-1 so eingestellt, dass die Bewegung der Fußspitze des Beinglieds glatt verläuft.
  • Wenn das Intervall k-1 eine Luftphase aufweist, wird der relative Weg der Fußspitze des untätigen Beins während der Luftphase mittels der vorstehenden Werte berechnet. Der relative Weg der Fußspitze des untätigen Beins während der Luftphase wird unterschiedlich gehandhabt, wenn das Tragbein beim Abheben gewechselt und wenn es beim Abheben nicht gewechselt wird.
  • Wenn das Tragbein beim Abheben gewechselt wird, wird die relative Position und Geschwindigkeit der Fußspitze des untätigen Beins in Bezug auf den Schwerpunkt zu Beginn der Luftphase von Intervall k-1 an die relative Position und Geschwindigkeit der Fußspitze des Tragbeins in Bezug auf den Schwerpunkt bei der Beendung der Bodenphase des Intervalls k-1 angeglichen. Die relative Position und Geschwindigkeit der Fußspitze des untätigen Beins bei der Beendung der Luftphase des Intervalls k-1 kann uneingeschränkt ermöglicht werden.
  • Wenn das Tragbein beim Abheben nicht gewechselt wird, wird die relative Position und Geschwindigkeit der Fußspitze des untätigen Beins in Bezug auf den Schwerpunkt zu Beginn der Luftphase von Intervall k-1 an die relative Position und Geschwindigkeit der Fußspitze des untätigen Beins in Bezug auf den Schwerpunkt bei Beendung der Bodenphase von Intervall k-1 angeglichen. Die relative Position und Geschwindigkeit der Spitze des Fußes des untätigen Beins bei Beendung der Luftphase von Intervall k-1 kann uneingeschränkt ermöglicht werden.
  • Die Berechnung des relativen Wegs der Fußspitze des untätigen Beins, die vorstehend beschrieben wurde, kann durch Verwendung von beispielsweise einer polynomischen Interpolation basierend auf den Positions- und Geschwindigkeitsbedingungen zu Beginn und bei Beendung der Bodenphase, und bei Bedarf der Luftphase, ausgeführt werden.
  • Bei Schritt S424 werden die Sollwerte der Gelenkwinkel berechnet, um die relativen Wege des Schwerpunkts und des untätigen Beins zu erreichen, die durch die vorstehend beschriebenen Verfahrensschritte berechnet wurden. Die Sollwerte der Gelenkwinkel können durch eine so genannte umgekehrte kinematische Berechnung berechnet werden. Das relative translatorische Moment des Schwerpunkts Pg, das relative Winkelmoment des Schwerpunkts Lg, die relative Geschwindigkeit vf der Fußspitze des untätigen Beins und die Winkelgeschwindigkeit ωf der Fußspitze des untätigen Bein werden wie folgt ausgedrückt, wobei die Gelenkwinkel-Winkelgeschwindigkeit θ( 1 ) und die jeweiligen Jacobi-Matrizen Jg(θ), Kg(θ), Jf(θ), Kf(θ) verwendet werden. Pg = Jgθ(1) Lg = Kgθ(1) vf = Jfθ(1) ωf = Kfθ(1)
  • Bei der Winkelgeschwindigkeit θ( 1 ) des Gelenkwinkels in der vorstehenden Gleichung handelt es sich um die erste Ableitung des Winkels θ des Gelenkwinkels in Bezug auf die Zeit. Der Winkel θ des Gelenkwinkels ist, wie nachstehend gezeigt, eine Gruppe von Gelenkwinkeln (θ1, θ2, ..., θn-1).
    Figure 00470001
  • Das relative translatorische Moment des Schwerpunkts Pg, der relative Winkelmoment des Schwerpunkts Lg, die relative Geschwindigkeit vf der Fußspitze des untätigen Beins und die Winkelgeschwindigkeit ωf der Fußspitze des untätigen Beins sind jeweils wie folgt angezeigt.
  • Figure 00470002
  • Figure 00480001
  • Die Jacobi-Matrixen für die Fußspitze des untätigen Beins sind für die Anzahl von untätigen Beinen ausreichend vorhanden. Der Roboter 2 der vorliegenden Ausführungsform weist zwei Beinglieder auf, wovon ein Beinglied das untätige Bein ist, und berechnet den Soll-Wert des Gelenkwinkels. Die Gelenkwinkelgeschwindigkeit θ( 1 ), die die Soll-Bewegungen Pg, Lg, vf und ωf des Roboters 1 erfüllt, ist ein redundantes System mit einer zahllosen Anzahl von Lösungen. Mit dem Roboter 2 der vorliegenden Ausführungsform werden chronologische Daten für den Soll-Gelenkwinkel berechnet, wobei die Parameter die relative Soll-Geschwindigkeit des Schwerpunkts als eine erste Teilaufgabe lösen, das Soll-Winkelmoment als eine zweite Teilaufgabe lösen und den relativen Soll-Weg der Fußspitze des untätigen Beins als eine dritte Teilaufgabe lösen. Es ist bereits einmal ein Verfahren vorgeschlagen worden, bei dem die Einschränkungsparameter, die durch die Mehrzahl der vorstehend angegebenen Jacobi-Matrizen ausgedrückt werden, erhalten werden, und ein jeweiliger Parameter priorisiert wird, während die optimale Lösung in Maße erhalten wird, in dem es die Redundanz erlaubt, und somit wird auf eine dahingehende Erläuterung verzichtet.
  • Durch Ausführen der vorstehend erwähnten Verfahrensschritte sind der Schwerpunktweg, das Soll-Winkelmoment und der Weg der Fußspitze des untätigen Beins die Einschränkungsparameter, und die Soll-Werte der Gelenkwinkel können berechnet werden. Auf diese Weise kann ein stabiles Bewegungsmuster des Roboters 2 erzeugt werden. Mittels des vorstehend angemerkten Verfahrens können nicht nur die Beine, sondern auch sämtliche Freiheitsgrade des Roboters, wie Arme, Rumpf, etc., dazu verwendet werden, um Bewegungsmuster zu erzeugen, und es können natürlichere und flexiblere Bewegungsmuster geschaffen werden.
  • Die chronologischen Daten 350 der Gelenkwinkel-Sollwerte, die bei Schritt S426 berechnet werden, sind in der Steuerungseinheit 10 gespeichert. Nach einem Schritt S426 wird der Verfahrensschritt bei Schritt S406 fortgesetzt, und die Verfahrensschritte von Schritt S406 bis Schritt S426 werden wiederholt ausgeführt.
  • Die Steuerungseinheit 10 steuert ein jeweiliges Gelenk des Roboters 2 mit der Gelenkantriebseinheit 320 basierend auf den chronologischen Daten 350 der Gelenkwinkel-Sollwerte parallel zur Ausführung der vorstehend erwähnten Verfahrensschritte von 4. Auf diese Weise erreicht der Roboter basierend auf Benutzerbefehlswerten eine stabile Bewegung.
  • In der vorstehend erwähnten Ausführungsform wurde ein bebeinter Roboter mit zwei Beingliedern beschrieben, doch die vorliegende Erfindung kann auch als ein bebeinter Roboter mit drei oder mehr Beinen oder als ein bebeinter Roboter mit nur einem Bein verkörpert sein.
  • Obwohl eine Ausführungsform der vorliegenden Erfindung ausführlich beschrieben worden ist, handelt es sich dabei einfach nur um eine Veranschaulichung, die den Schutzbereich der Ansprüche nicht einschränkt. In dem spezifischen, vorstehend veranschaulichten Beispiel sind innerhalb des technischen Bereichs der Offenbarung der Ansprüche verschiedene Modifizierungen und Veränderungen beinhaltet.
  • Darüber hinaus weisen die technologischen Elemente, die in der vorliegenden Beschreibung oder der Zeichnung beschrieben sind, entweder allein oder in verschiede nen Kombinationen, einen technologischen Nutzen auf und sind nicht auf die Kombination von Ansprüchen beschränkt, die zum Zeitpunkt der Anmeldung offenbart worden sind. Ferner löst die in der vorliegenden Beschreibung oder Zeichnung dargestellte Technologie eine Mehrzahl von Aufgaben gleichzeitig, und selbst das Lösen von nur einer Aufgabe von diesen Aufgaben ist technologisch von Nutzen.
  • Zusammenfassung
  • Bebeinter Roboter und Steuerungsverfahren für denselben
  • Es wird eine Technologie geschaffen, die einen Schwerpunktweg für einen Roboter berechnen kann, wobei der ZMP dem Soll-ZMP angeglichen wird, selbst wenn bewirkt wird, dass der Roboter eine Kauerbewegung während einer Einzelbein-Bodenphase ausführt. Der Roboter der vorliegenden Erfindung ist ein bebeinter Roboter, der seinen Schwerpunkt in der vertikalen Richtung bewegt, wenn eine Beinglied durch Ändern von Gelenkwinkeln auf dem Boden aufliegt, und weist eine Einrichtung zum Erzeugen des vertikalen Wegs des Schwerpunkts auf, eine Einrichtung zum Berechnen des horizontalen Wegs des Schwerpunkts, basierend auf dem erzeugten vertikalen Weg des Schwerpunkts, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, einem Soll-ZMP und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung des vertikalen Wegs, eine Einrichtung zum Berechnen von chronologischen Daten von Soll-Werten der Gelenkwinkel, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg des Schwerpunkts, und eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Soll-Werte der Gelenkwinkel.

Claims (8)

  1. Bebeinter Roboter, der „Kauer-, Abhebe-, Schwebe-, Lande- und Kauerbewegungen" durch Ändern von Gelenkswinkeln erreicht, wobei eine Zeitspanne vom Beginn der Kauerbewegung bis zum Abheben eine vorherige Bodenphase ist, eine Zeitspanne während des Schwebens eine Luftphase ist, eine Zeitspanne vom Landen bis zur Beendung der Kauerbewegung eine spätere Bodenphase ist, eine Veränderung der Höhe eines Schwerpunkts in Bezug auf die Zeit eine vertikaler Weg ist und eine Veränderung in einer horizontalen Position des Schwerpunkts in Bezug auf die Zeit ein horizontaler Weg ist, wobei der bebeinte Roboter folgende Merkmale aufweist: eine Einrichtung zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase; eine Einrichtung zum Berechnen des horizontalen Weges der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, einem Soll-ZMP der vorherigen Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der vorherigen Bodenphase, eine Einrichtung zum Berechnen von chronologischen Daten von Soll-Werten der Gelenkwinkel der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der vorherigen Bodenphase, eine Einrichtung zum Erzeugen des vertikalen Wegs der späteren Bodenphase, eine Einrichtung zum Berechnen des horizontalen Wegs der späteren Bodenphase, basierend auf dem erzeugten vertikalen Weg der späteren Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der späteren Bodenphase handelt, einem Soll-ZMP der späteren Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der späteren Bodenphase, eine Einrichtung zum Berechnen von chronologischen Daten von Soll-Werten der Gelenkwinkel der späteren Bodenphase, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der späteren Bodenphase, und eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Soll-Werte der Gelenkwinkel.
  2. Bebeinter Roboter nach Anspruch 1, wobei eine jeweilige der Einrichtungen zum Berechnen des horizontalen Wegs der vorherigen Bodenphase und der späteren Bodenphase eine Einrichtung zum Lösen von simultanen Gleichungen aufweist, die zwischen einer tridiagonalen Matrix mit Koeffizienten, die anhand des vertikalen Wegs berechnet werden, und einer horizontale Wegspalte und einer Abstandsspalte gebildet werden, die anhand des Soll-ZMP und der horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase berechnet werden, um den horizontalen Weg zu berechnen.
  3. Bebeinter Roboter 1 nach Anspruch 1, wobei eine jeweilige der Einrichtungen zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase und der späteren Bodenphase eine polynomische Interpolation vornimmt zwischen den vertikalen Positionen und Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase, um den vertikalen Weg zu erzeugen.
  4. Bebeinter Roboter, der einen Schwerpunkt in einer vertikalen Richtung bewegt, wenn ein Beinglied durch Verändern der Gelenkwinkel auf dem Boden aufliegt, wobei der bebeinte Roboter folgende Merkmale aufweist: eine Einrichtung zum Erzeugen eines vertikalen Wegs des Schwerpunkts, eine Einrichtung zum Berechnen eines horizontalen Wegs des Schwerpunkts, basierend auf dem erzeugten vertikalen Weg des Schwerpunkts, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, einem Soll-ZMP und horizontale Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung des vertikalen Wegs, eine Einrichtung zum Berechnen von chronologischen Daten von Soll-Werten der Gelenkwinkel, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg des Schwerpunkts, und eine Einrichtung zum Berechnen von chronologischen Daten von Soll-Werten des Gelenkwinkel basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg des Schwerpunkts, und eine Einrichtung zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Soll-Werte der Gelenkwinkel.
  5. Steuerungsverfahren für einen bebeinten Roboter, der „Kauer-, Abhebe-, Schwebe-, Lande- und Kauerbewegungen" durch Ändern von Gelenkwinkeln erreicht, wobei eine Zeitspanne ab dem Beginn der Kauerbewegung bis zum Abheben eine vorherige Bodenphase ist, eine Zeitspanne während des Schwebens eine Luftphase ist, eine Zeitspanne ab dem Landen bis zur Beendung der Kauerbewegung eine spätere Bodenphase ist, eine Veränderung der Höhe des Schwerpunkts in Bezug auf die Zeit ein vertikaler Weg ist und eine Veränderung einer horizontalen Position des Schwerpunkts in Bezug auf die Zeit ein horizontaler Weg ist, wobei das Steuerungsverfahren folgende Schritte aufweist: einen Schritt zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase; einen Schritt zum Berechnen des horizontalen Wegs der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg der vorherigen Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der vorherigen Bodenphase handelt, einem Soll-ZMP der vorherigen Bodenphase, horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der vorherigen Bodenphase, einen Schritt zum Berechnen von chronologischen Daten von Soll-Werten der Gelenkwinkel der vorherigen Bodenphase, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der vorherigen Bodenphase, einen Schritt zum Erzeugen des vertikalen Wegs der späteren Bodenphase, einen Schritt zum Berechnen des horizontalen Wegs der späteren Bodenphase, basierend auf dem erzeugten vertikalen Weg der späteren Bodenphase, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung der späteren Bodenphase handelt, einem Soll-ZMP der späteren Bodenphase und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der späteren Bodenphase, einen Schritt zum Berechnen der chronologischen Daten der Sollwerte der Gelenkwinkel der späteren Bodenphase, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg der späteren Bodenphase, und einen Schritt zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel.
  6. Steuerungsverfahren für einen bebeinten Roboter nach Anspruch 5, wobei ein jeder der Schritte zum Berechnen des horizontalen Wegs der vorherigen Bodenphase und der späteren Bodenphase einen Schritt zum Lösen von simultanen Gleichungen aufweist, die zwischen einer tridiagonalen Matrix mit Koeffizienten, die anhand des vertikalen Wegs berechnet werden, und einer horizontalen Wegspalte und einer Abstandsspalte, die anhand des ZMP und der horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphase berechnet werden, gebildet sind, um den horizontalen Weg zu berechnen.
  7. Steuerungsverfahren für einen bebeinten Roboter nach Anspruch 5, wobei ein jeweiliger der Schritte zum Erzeugen des vertikalen Wegs der vorherigen Bodenphase und der späteren Bodenphase eine polynomische Interpolation zwischen den vertikalen Positionen und Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung der Bodenphasen vornimmt, um den vertikalen Weg zu erzeugen.
  8. Steuerungsverfahren für einen bebeinten Roboter, der einen Schwerpunkt in einer vertikalen Richtung bewegt, wenn ein Beinglied durch Ändern von Gelenkwinkeln auf dem Boden aufliegt, wobei das Steuerungsverfahren folgende Schritte aufweist: einen Schritt zum Erzeugen eines vertikalen Weges des Schwerpunkts, einen Schritt zum Berechnen eines horizontalen Wegs des Schwerpunkts, basierend auf dem erzeugten vertikalen Wegs des Schwerpunkts, einer tridiagonalen Gleichung, bei der es sich um eine Diskretisierung einer ZMP-Gleichung handelt, einem Soll-ZMP und horizontalen Geschwindigkeiten des Schwerpunkts zu Beginn und bei Beendung des vertikalen Wegs, einen Schritt zum Berechnen von chronologischen Daten von Sollwerten von Gelenkwinkeln, basierend auf dem erzeugten vertikalen Weg und dem berechneten horizontalen Weg des Schwerpunkts, und einen Schritt zum Drehen der Gelenke basierend auf den berechneten chronologischen Daten der Sollwerte der Gelenkwinkel.
DE112006000313.5T 2005-02-03 2006-02-03 Bebeinter Roboter und Steuerungsverfahren für denselben Expired - Fee Related DE112006000313B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005-028036 2005-02-03
JP2005028036A JP4548135B2 (ja) 2005-02-03 2005-02-03 脚式ロボットとその制御方法
PCT/JP2006/302298 WO2006083028A1 (en) 2005-02-03 2006-02-03 Legged robot and control method thereof

Publications (2)

Publication Number Publication Date
DE112006000313T5 true DE112006000313T5 (de) 2008-04-17
DE112006000313B4 DE112006000313B4 (de) 2018-05-09

Family

ID=36570861

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006000313.5T Expired - Fee Related DE112006000313B4 (de) 2005-02-03 2006-02-03 Bebeinter Roboter und Steuerungsverfahren für denselben

Country Status (4)

Country Link
US (1) US7957835B2 (de)
JP (1) JP4548135B2 (de)
DE (1) DE112006000313B4 (de)
WO (1) WO2006083028A1 (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4548135B2 (ja) 2005-02-03 2010-09-22 トヨタ自動車株式会社 脚式ロボットとその制御方法
JP4591419B2 (ja) 2006-07-18 2010-12-01 トヨタ自動車株式会社 ロボットとその制御方法
JP4692443B2 (ja) 2006-09-06 2011-06-01 トヨタ自動車株式会社 脚式ロボット
JP4392037B2 (ja) 2007-09-12 2009-12-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
JP4440956B2 (ja) 2007-09-12 2010-03-24 トヨタ自動車株式会社 脚式ロボット、及びその制御方法
JP2009214255A (ja) * 2008-03-12 2009-09-24 Toyota Motor Corp 脚式ロボット、及びその制御方法
US8860865B2 (en) * 2009-03-02 2014-10-14 Burning Moon, Llc Assisted video creation utilizing a camera
KR101687630B1 (ko) * 2010-01-11 2016-12-20 삼성전자주식회사 보행 로봇 및 그 균형 제어 방법
JP5392125B2 (ja) * 2010-02-05 2014-01-22 トヨタ自動車株式会社 2脚歩行ロボット及びそのための歩容データ生成方法
JP5463991B2 (ja) * 2010-03-18 2014-04-09 トヨタ自動車株式会社 2脚歩行ロボット
US9120512B2 (en) 2010-04-22 2015-09-01 Honda Motor Co., Ltd. Control device and gait generating device for bipedal mobile robot
JP5465074B2 (ja) * 2010-04-22 2014-04-09 本田技研工業株式会社 2足移動ロボットの制御装置
KR101200191B1 (ko) * 2010-07-14 2012-11-13 서울대학교산학협력단 데이터 기반 바이페드 제어 장치 및 방법
CN102381378B (zh) * 2011-08-18 2013-04-24 天津理工大学 可重构的模块化机器人
JP5803751B2 (ja) * 2012-03-07 2015-11-04 トヨタ自動車株式会社 重心軌道生成装置、その生成方法及びプログラム
CN103332231B (zh) * 2013-07-12 2015-08-05 天津理工大学 可移动模块化自重构机器人
US9517561B2 (en) * 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
JP6228097B2 (ja) * 2014-10-06 2017-11-08 本田技研工業株式会社 移動ロボット
WO2016159346A1 (ja) * 2015-04-02 2016-10-06 国立大学法人大阪大学 脚型機構体、歩行ロボット、姿勢制御方法及びプログラム
US9594377B1 (en) * 2015-05-12 2017-03-14 Google Inc. Auto-height swing adjustment
US9586316B1 (en) * 2015-09-15 2017-03-07 Google Inc. Determination of robotic step path
CN105511465B (zh) * 2015-12-02 2017-08-04 歌尔股份有限公司 一种双足机器人的步态控制方法和装置
JP6682341B2 (ja) * 2016-05-10 2020-04-15 パナソニック株式会社 歩行制御方法、歩行制御プログラム及び2足歩行ロボット
CN109693234B (zh) * 2017-10-20 2021-08-27 深圳市优必选科技有限公司 机器人跌倒预测方法、装置、终端设备及计算机存储介质
US20210162589A1 (en) * 2018-04-22 2021-06-03 Google Llc Systems and methods for learning agile locomotion for multiped robots
EP3931068A4 (de) * 2019-02-25 2023-02-08 Agility Robotics, Inc. Verfahren und system zur verbesserung der beinbewegung bei einem roboter
CN109946974B (zh) * 2019-04-12 2022-07-01 山东大学 一种电驱动四足机器人的控制系统
CN111098300B (zh) * 2019-12-13 2021-06-04 深圳市优必选科技股份有限公司 一种机器人平衡控制方法、装置、可读存储介质及机器人
CN113156926B (zh) * 2020-01-22 2024-05-17 深圳市优必选科技股份有限公司 机器人的有限状态机的建立方法、有限状态机和机器人
CN113377113B (zh) * 2021-07-02 2022-01-04 北方工业大学 足式机器人足端轨迹规划方法、系统及控制方法、系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5432417A (en) * 1992-04-30 1995-07-11 Honda Giken Kogyo Kabushiki Kaisha Locomotion control system for legged mobile robot
JP3148828B2 (ja) 1992-04-30 2001-03-26 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
DE69734835T2 (de) * 1996-12-19 2006-07-20 Honda Giken Kogyo K.K. Haltungskontrolleur einen sich auf beinen bewegenden robotern
JP3443077B2 (ja) * 1999-09-20 2003-09-02 ソニー株式会社 ロボットの運動パターン生成装置及び運動パターン生成方法、並びにロボット
WO2002040224A1 (fr) 2000-11-17 2002-05-23 Honda Giken Kogyo Kabushiki Kaisha Dispositif generateur d'un modele de demarche pour robot mobile pourvu de jambes
US6898485B2 (en) * 2000-11-20 2005-05-24 Sony Corporation Device and method for controlling operation of legged robot, and robot device
JP2002239963A (ja) * 2001-02-21 2002-08-28 Sony Corp ロボット装置、ロボット装置の動作制御方法、プログラム及び記録媒体
JP3603279B2 (ja) * 2001-09-26 2004-12-22 独立行政法人科学技術振興機構 二脚歩行式人型ロボット
DE60237041D1 (de) 2001-12-28 2010-08-26 Honda Motor Co Ltd Gangerzeugungsvorrichtung und steuervorrichtung für beweglichen roboter mit beinen
JP3833567B2 (ja) * 2002-05-01 2006-10-11 本田技研工業株式会社 移動ロボットの姿勢制御装置
JP3834629B2 (ja) * 2002-09-26 2006-10-18 独立行政法人産業技術総合研究所 歩行ロボットの歩行歩容生成装置
WO2004030870A1 (ja) * 2002-10-01 2004-04-15 Sony Corporation ロボット装置及びロボット装置の制御方法
JP4483254B2 (ja) 2002-10-01 2010-06-16 ソニー株式会社 ロボット装置及びロボット装置の制御方法
JP3599244B2 (ja) * 2002-11-06 2004-12-08 ソニー株式会社 ロボット装置、ロボット装置の運動制御装置並びに運動制御方法
US7072740B2 (en) * 2002-12-16 2006-07-04 Sony Corporation Legged mobile robot
EP1607191A1 (de) * 2003-03-23 2005-12-21 Sony Corporation Robotervorrichtung und verfahren zur steuerung derselben
JP2005007496A (ja) 2003-06-17 2005-01-13 Toyota Motor Corp 歩容データの作成装置と作成方法
WO2005005108A1 (ja) * 2003-07-11 2005-01-20 Honda Motor Co., Ltd. 2足歩行移動体の関節モーメント推定方法
JP4440761B2 (ja) 2004-12-24 2010-03-24 本田技研工業株式会社 脚式移動ロボットの制御装置
JP4548135B2 (ja) 2005-02-03 2010-09-22 トヨタ自動車株式会社 脚式ロボットとその制御方法
JP4492395B2 (ja) 2005-03-09 2010-06-30 トヨタ自動車株式会社 脚式ロボットとその動作制御方法
JP4591419B2 (ja) 2006-07-18 2010-12-01 トヨタ自動車株式会社 ロボットとその制御方法

Also Published As

Publication number Publication date
WO2006083028A1 (en) 2006-08-10
JP2006212736A (ja) 2006-08-17
JP4548135B2 (ja) 2010-09-22
DE112006000313B4 (de) 2018-05-09
US20090187275A1 (en) 2009-07-23
US7957835B2 (en) 2011-06-07

Similar Documents

Publication Publication Date Title
DE112006000313B4 (de) Bebeinter Roboter und Steuerungsverfahren für denselben
DE60313952T2 (de) Steuerung für mobilen roboter mit beinen
DE69306662T2 (de) Steuerungssystem für die Lagestabilisierung eines beweglichen Roboters, insbesondere eines Roboters mit Beinen
DE112010005024B4 (de) Roboter-Steuer- /Regeleinrichtung
DE102010064270B4 (de) Steuer/Regeleinrichtung für einen Roboter
DE69734835T2 (de) Haltungskontrolleur einen sich auf beinen bewegenden robotern
DE60126153T2 (de) Gangmustererzeugungsvorrichtung für beweglichen roboter mit beinen
DE60020315T2 (de) Beweglicher Roboter mit Beinen und Vorrichtung für sein Hüftgelenk
DE69636447T2 (de) Verfahren und vorrichtung zum steuern der bewegung eines redundanten manipulators
DE102010064267B4 (de) Steuer/Regeleinrichtung für einen mobilen Roboter
DE102012208905B4 (de) Regelungs-/Steuerungsvorrichtung eines mobilen Objekts und Bodenfläche-Schätzvorrichtung
DE69013907T2 (de) Steuersystem für die aufhängung eines landfahrzeugs.
EP3023205B1 (de) Verfahren zum ermitteln einer bewegungsgrenze
DE602004002702T2 (de) Laufender Roboter und Verfahren zu dessen Steuerung
DE102015201832B4 (de) Roboter mit einer Steuer-/Regeleinheit zum Erzeugen einer Gangart
DE112005001917T5 (de) Roboter auf Beinen, Verfahren zur Steuerung eines Roboters auf Beinen und Vorrichtung und Verfahren zur Erzeugung von Gangdaten
DE2337995B2 (de) Steuersystem für ein Tragflügelboot
DE69206268T2 (de) Modellunterstüztes regelungssystem.
DE69205174T2 (de) Automatische trimmsteuerung zur koordinierten kursabweichung für ein drehflügel-flugzeug.
EP1920892B1 (de) Robotersteuerung, Roboter und Verfahren zum Steuern eines Roboters
AT516901B1 (de) Flugsimulator und Verfahren zur Flugsimulation
DE102019132658A1 (de) Aktives fahrzeughöhe-steuerverfahren
DE102015102459B4 (de) Verfahren und Vorrichtung zur Ansteuerung eines Simulators
DE112021004556T5 (de) Flugroboter
DE1406491A1 (de) Flugsteuerungssystem fuer Hubschrauber

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee