DE102010064267B4 - Steuer/Regeleinrichtung für einen mobilen Roboter - Google Patents

Steuer/Regeleinrichtung für einen mobilen Roboter Download PDF

Info

Publication number
DE102010064267B4
DE102010064267B4 DE102010064267.3A DE102010064267A DE102010064267B4 DE 102010064267 B4 DE102010064267 B4 DE 102010064267B4 DE 102010064267 A DE102010064267 A DE 102010064267A DE 102010064267 B4 DE102010064267 B4 DE 102010064267B4
Authority
DE
Germany
Prior art keywords
value
force
contact portion
vector
target
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.)
Active
Application number
DE102010064267.3A
Other languages
English (en)
Other versions
DE102010064267A1 (de
Inventor
Atsuo Orita
Masao Kanazawa
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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co Ltd
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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Publication of DE102010064267A1 publication Critical patent/DE102010064267A1/de
Application granted granted Critical
Publication of DE102010064267B4 publication Critical patent/DE102010064267B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Abstract

Steuer/Regeleinrichtung für einen mobilen Roboter, welcher eine Mehrzahl von Gliedern hat, welche durch Gelenke miteinander verbunden sind, und Aktuatoren hat, um die Gelenke anzutreiben, und in welchem ein Kraftübertragungssystem, welches zwischen jedem Gelenk und jedem Aktuator angeordnet ist, mit einem Federelement versehen ist, welches die von dem Aktuator erzeugte Kraft in eine elastische Kraft umwandelt und die elastische Kraft auf das Gelenk ausübt, wobei die Steuer/Regeleinrichtung umfasst: eine Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit, welche einen Bewegungszustandsbetrag-Sollwert bestimmt, der ein Sollwert ist, welcher mit einem vorbestimmten Typ von Bewegungszustandsbetrag des mobilen Roboters in Beziehung steht, welcher einen Wert hat, der von dem Wert von einem verallgemeinerten variablen Vektor des mobilen Roboters abhängt, wobei der Vektor von dem Verlagerungsbetrag von jedem Gelenk des mobilen Roboters und der Position und der Haltung eines vorherbestimmten repräsentativen Glieds des mobilen Roboters in einem globalen Koordinatensystem als den Komponenten davon gebildet ist; eine Soll-Antriebskraft-Bestimmungseinheit, welche den bestimmten Bewegungszustandsbetrag-Sollwert empfängt und eine Sollantriebskraft bestimmt, welche auf jedes Gelenk des mobilen Roboters auszuüben ist, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird unter Verwendung wenigstens des Bewegungszustandsbetrag-Sollwerts; und eine Aktuator-Steuer/Regeleinheit, welche den Betrieb des Aktuators auf der Basis von wenigstens der bestimmten Soll-Antriebskraft steuert/regelt, wobei der Bewegungszustandsbetrag-Sollwert wenigstens einen Sollwert von einer vertikalen Komponente eines Differenzialwerts erster Ordnung von einem Gesamtranslationsimpuls des mobilen Roboters umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit eine Einheit hat, welche den Sollwert von der vertikalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls derart bestimmt, dass der ...

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Bereich der Erfindung
  • Die vorliegende Erfindung betrifft eine Steuer/Regeleinrichtung für einen mobilen Roboter, wie z. B. einen mit Beinen versehenen mobilen Roboter.
  • 2. Beschreibung der verwandten Technik
  • Als eine Technik zur Steuerung/Regelung eines mit Beinen versehenen mobilen Roboters, wie z. B. eines zweibeinigen Gehroboters, ist eine sogenannte Positionssteuerung/regelung allgemein bekannt, welche beispielsweise in der japanischen Patentanmeldung Offenlegungssnummer JP 5-305579 A von dem Anmelder der vorliegenden Anmeldung vorgeschlagen wird. Gemäß der offenbarten Technik wird der Soll-Verlagerungsbetrag von jedem Gelenk eines Roboters sequenziell bestimmt auf der Basis einer gewünschten Bewegung des Roboters (z. B. dem Bewegungsablauf von einer Soll-Position von dem distalen Ende eines Beins des Roboters) und dann wird der Aktuator von jedem Gelenk antreibbar gesteuert/geregelt, um zu bewirken, dass ein Ist-Verlagerungsbetrag mit dem Soll-Verlagerungsbetrag übereinstimmt.
  • Gemäß der oben beschriebenen Positionssteuerung/regelung wird der Ist-Verlagerungsbetrag eines Gelenks konstant gehalten, solange der Soll-Verlagerungsbetrag des Gelenks konstant bleibt, um so in ungünstiger Weise eine geringe Flexibilität in Reaktion auf eine Änderung bei einer auf den Roboter einwirkenden äußeren Kraft zu präsentieren.
  • Als eine Lösung für die ungünstige Inflexibilität ist eine Technik bekannt, welche beispielsweise in der japanischen Patentanmeldung Offenlegungsnummer JP 2007-160446 A offenbart ist. Gemäß der Technik ist ein Federelement zwischen einem Gelenk und einem Aktuator angeordnet, um dem Gelenk Flexibilität zu verleihen und eine gewünschte Antriebskraft für jedes Gelenk, um eine gewünschte Bewegung eines Roboters zu erreichen, wird durch eine inverse dynamische Berechnung bestimmt, um die Ist-Antriebskraft von jedem Gelenk auf die Soll-Antriebskraft desselben durch eine sogenannte Kraftsteuerung/regelung zu steuern/regeln.
  • Bei einem mobilen Roboter, wie z. B. einem zweibeinigen Gehroboter, neigt dann, wenn ein Federelement zwischen einem Gelenk und einem Aktuator vorgesehen ist, wie bei der Technik, welche in der oben erwähnten japanischen Patentanmeldung Offenlegungsnummer JP 2007-160446 A offenbart ist, der Verlagerungsbetrag von jedem Gelenk des Roboters dazu, sich zu verändern in Reaktion auf beispielsweise eine Änderung in einer auf den Roboter einwirkenden äußeren Kraft. Dies bewirkt leicht, dass der Gesamtschwerpunkt von dem Roboter fluktuiert.
  • Insbesondere dann, wenn die Position des Gesamtschwerpunkts des Roboters sich in einer vertikalen Richtung verändert, schwingt folglich der Gesamtschwerpunkt regelmäßig in der vertikalen Richtung, was möglicherweise zu einer Resonanzschwingung führt. Eine solche Schwingung kann es schwierig machen, eine gewünschte Bewegung des Roboters stabil durchzuführen.
  • Aus der US 7,191,036 B2 ist ein Bewegungserzeugungssystem zur Steuerung einer Haltung eines mobilen Roboters mit Beinen bekannt, welcher wenigstens einen Körper und eine Mehrzahl von Beinen hat, die jeweils mit dem Körper durch ein Gelenk verbunden sind. Gemäß dem offenbarten System wird eine gewünschte Bewegung, welche die Roboterbewegung definiert, bestimmt, eine gewünschte Bodenreaktionskraft wird dann basierend auf der bestimmten gewünschten Bewegung unter Verwendung eines dynamischen Modells berechnet, welches die Beziehung zwischen der Roboterbewegung und der Bodenreaktionskraft ausdrückt, und die tatsächlich auf den Roboter einwirkende Bodenreaktionskraft wird basierend auf der berechneten gewünschten Bodenreaktionskraft gesteuert/geregelt.
  • Aus der US 2007/0083290 A1 ist eine Berechnungseinrichtung bekannt, welche eine physikalische Größe in einem Betriebsraum berechnet, welche eine Beziehung beschreibt zwischen einer Kraft und einer Beschleunigung, welche auf eine Verbindungsstruktur einwirkt, die eine Mehrzahl von miteinander verbundenen starren Körpern umfasst.
  • Aus der US 7,482,775 B2 ist eine Roboter-Steuer-/Regeleinrichtung bekannt, welche Bewegungen von einem Roboter steuert/regelt mit einer Lage-Information-Erlangungseinheit, welche Informationen betreffend die Lage des Roboters zu einer Mehrzahl von verschiedenen Zeitpunkten erlangt, und einer Bewegungs-Steuer-/Regeleinheit, welche Bewegungen des Roboters unter Verwendung eines neutralen Netzwerks steuert/regelt, wobei Steuer-/Regelinformationen derart berechnet werden, dass die Bewegung des Roboters eine Referenzstellung erreicht.
  • Aus US 2009/0312867 A1 ist eine Gangart-Erzeugungsvorrichtung eines beweglichen Roboters vom Beintyp bekannt, welche eine gewünschte Gangart erzeugt und den beweglichen Roboter vom Beintyp, der mit mehreren sich von seinem Körper aus erstreckenden Beinen ausgestattet ist, dazu veranlasst, einen Vorgang zum Bewegen eines Objekts auszuführen.
  • Aus der US 7,530,410 B2 ist ein mobiler Roboter mit Beinen sowie ein Roboter-Steuer-/Regelsystem bekannt, welches dazu konfiguriert ist, den Biegewinkel von einem Zeh des Roboters zu einem Zeitpunkt, zu dem das Bein von einem Boden abgehoben wird, zu halten und den Biegewinkel zu einem zweiten Zeitpunkt freizugeben, nachdem das Bein vom Boden abgehoben ist, um den Zeh wieder in eine Ausgangsposition zurückzuführen.
  • Aus der US 2005/0107916 A1 ist eine Roboter-Einrichtung und ein Steuer-/Regelverfahren für die Roboter-Einrichtung bekannt, welches ein Bewegungsmuster in Echtzeit erzeugt und das Gehen eines Roboters passend steuert/regelt, während eine Konsistenz zwischen dynamischen Modellen zur Gehmustererzeugung und verschiedenen adaptiven Steuer-/Regeloperationen sichergestellt wird.
  • ÜBERSICHT DER ERFINDUNG
  • Es ist die Aufgabe der Erfindung, eine Steuer/Regeleinrichtung bereitzustellen, welche es einem mobilen Roboter, welcher ein Federelement hat, das in ein Kraftübertragungssystem eingebaut ist, welches zwischen einem Gelenk und einem das Gelenk antreibenden Aktuator eingebaut ist, ermöglicht, stabil eine gewünschte Bewegung durchzuführen, während der mobile Roboter vom Torkeln oder Schwanken abgehalten wird.
  • Diese Aufgabe wird durch eine Steuer/Regeleinrichtung für einen mobilen Roboter mit den Merkmalen des Anspruchs 1 gelöst.
  • Die Steuer/Regeleinrichtung für einen mobilen Roboter gemäß der vorliegenden Erfindung ist eine Steuer/Regeleinrichtung für einen mobilen Roboter, welcher eine Mehrzahl von Gliedern hat, welche durch Gelenke miteinander verbunden sind, und Aktuatoren hat, um die einzelnen Gelenke anzutreiben, und in welchem ein Kraftübertragungssystem, welches zwischen jedem Gelenk und jedem Aktuator angeordnet ist, mit einem Federelement versehen ist, welches die von dem Aktuator erzeugte Kraft in eine elastische Kraft umwandelt und die elastische Kraft auf das Gelenk ausübt, wobei die Steuer/Regeleinrichtung umfasst:
    eine Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit, welche einen Bewegungszustandsbetrag-Sollwert bestimmt, der ein Sollwert ist, welcher mit einem vorbestimmten Typ von Bewegungszustandsbetrag des mobilen Roboters in Beziehung steht, welcher einen Wert hat, der von dem Wert von einem verallgemeinerten variablen Vektor des mobilen Roboters abhängt, wobei der Vektor von dem Verlagerungsbetrag von jedem Gelenk des mobilen Roboters und der Position und der Haltung eines vorherbestimmten repräsentativen Glieds des mobilen Roboters in einem globalen Koordinatensystem als den Komponenten davon gebildet ist;
    eine Soll-Antriebskraft-Bestimmungseinheit, welche den bestimmten Bewegungszustandsbetrag-Sollwert empfängt und eine Sollantriebskraft bestimmt, welche auf jedes Gelenk des mobilen Roboters auszuüben ist, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird unter Verwendung wenigstens des Bewegungszustandsbetrag-Sollwerts; und
    eine Aktuator-Steuer/Regeleinheit, welche den Betrieb des Aktuators auf der Basis von wenigstens der bestimmten Soll-Antriebskraft steuert/regelt,
    wobei der Bewegungszustandsbetrag-Sollwert wenigstens einen Sollwert von einer vertikalen Komponente eines Differenzialwerts erster Ordnung von einem Gesamtranslationsimpuls des mobilen Roboters umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit eine Einheit hat, welche den Sollwert von der vertikalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls derart bestimmt, dass der Beobachtungswert der vertikalen Position von einem Gesamtschwerpunkt des mobilen Roboters zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz (ein erster Aspekt der Erfindung).
  • Zusätzlich bedeutet gemäß der vorliegenden Erfindung der Begriff ”Position” von dem repräsentativen Glied eine räumliche Position von einem repräsentativen Punkt, welcher relativ zu dem Glied fixiert ist, und der Begriff ”Haltung” von dem repräsentativen Glied bedeutet eine räumliche Orientierung von dem Glied. Das repräsentative Glied kann irgendein Glied von den Gliedern eines mobilen Roboters sein.
  • Gemäß dem ersten Aspekt der Erfindung bestimmt die Soll-Antriebskraft-Bestimmungseinchtung eine Soll-Antriebskraft, welche auf jedes Gelenk des mobilen Roboters auszuüben ist, indem die Verarbeitung von der inversen Dynamikberechnung durchgeführt wird (die inverse Dynamikberechnung bzw. inverse dynamische Berechnung verweist hier auf die Berechnung zur Erzeugung einer Antriebskraft, welche auf jedes Gelenk von dem Roboter ausgeübt werden kann, aus einem Zustandsbetrag, welcher zu steuern/regeln ist (der Sollwert von einem Bewegungszustandsbetrag) und einer auf den Roboter einwirkenden äußeren Kraft) unter Verwendung des Sollwerts eines Bewegungszustandsbetrags, welcher durch die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit bestimmt wird. Durch diese Anordnung wird eine Soll-Antriebskraft, welche es ermöglicht, dass der Sollwert von einem Bewegungszustandsbetrag erreicht wird, bestimmt Ferner wird der Betrieb des Aktuators durch die Aktuatorsteuer/regeleinrichtung auf der Basis von wenigstens der Soll-Antriebskraft gesteuert/geregelt.
  • In diesem Fall umfasst gemäß dem ersten Aspekt der Erfindung der Sollwert von dem Bewegungszustandsbetrag, welcher durch die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit bestimmt wird, den Sollwert von der vertikalen Komponente von dem Differenzialwert erster Ordnung (zeitliche Veränderungsrate) von dem Gesamttranslationsimpuls von dem mobilen Roboter. Der Sollwert von der vertikalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls, und im weiteren Sinne, der Sollwert von der vertikalen Komponente von einer Trägheitskraft (Translationsträgheitskraft), welche durch eine Translationsbewegung des Gesamtschwerpunkts des mobilen Roboters erzeugt wird, werden derart bestimmt, dass der Beobachtungswert von der Position in der vertikalen Richtung von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz. Ferner wird die Soll-Antriebskraft, welche auf jedes Gelenk von dem mobilen Roboter auszuüben ist, derart bestimmt, dass der Sollwert von der vertikalen Komponente von der Translationsträgheitskraft erreicht wird.
  • Der Beobachtungswert von der Position in der vertikalen Richtung von dem Gesamtschwerpunkt von dem mobilen Roboter kann beispielsweise aus dem Messwert von dem Verlagerungsbetrag von jedem Gelenk des mobilen Roboters unter Verwendung eines geometrischen Modells von dem mobilen Roboter abgeschätzt werden.
  • Somit kann gemäß dem ersten Aspekt der Erfindung die Soll-Antriebskraft, welche auf jedes Gelenk auszuüben ist, gesteuert/geregelt werden, während die vertikale Position von einem tatsächlichen Gesamtschwerpunkt von dem mobilen Roboter so gesteuert/geregelt wird, dass sie davon abgehalten wird, von einem vorbestimmten Sollwert abzuweichen. In diesem Fall kann der Sollwert von der vertikalen Position des Gesamtschwerpunkts von dem mobilen Roboter auf einen Wert gesetzt werden, welcher für eine gewünschte Bewegung des mobilen Roboters geeignet ist.
  • Als Ergebnis ermöglicht es der erste Aspekt der Erfindung, eine gewünschte Bewegung des mobilen Roboters stabil zu implementieren, während der mobile Roboter davon abgehalten wird, zu torkeln oder zu schwanken.
  • In dem ersten Aspekt der Erfindung umfasst vorzugsweise der Bewegungszustandsbetrag-Sollwert ferner einen Sollwert von einer horizontalen Komponente von dem Differenzialwert erster Ordnung von einem Gesamttranslationsimpuls von dem mobilen Roboter, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit umfasst ferner eine Einheit, welche den Sollwert von der horizontalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls derart bestimmt, dass der beobachtete Wert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz (ein zweiter Aspekt der Erfindung).
  • Gemäß dem zweiten Aspekt der Erfindung ist der Sollwert von der horizontalen Komponente von dem Differenzialwert erster Ordnung von dem Gesamttranslationsimpuls von dem mobilen Roboter, welcher derart bestimmt wurde, dass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß dem Rückkopplungssteuer/regelgesetzt in dem Sollwert von einem Bewegungszustandsbetrag enthalten.
  • Folglich wird daher der Sollwert von der vertikalen Komponente von der Trägheitskraft (Translationsträgheitskraft), welche durch eine Translationsbewegung von dem Gesamtschwerpunkt von dem mobilen Roboter erzeugt wird, derart bestimmt, dass der Beobachtungswert von der vertikalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, und auch der Sollwert von der horizontalen Komponente von der Translationsträgheitskraft wird derart bestimmt, dass der beobachtete Wert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert. Ferner wird die Soll-Antriebskraft, welche auf jedes Gelenk von dem mobilen Roboter auszuüben ist, derart bestimmt, dass der Sollwert von der vertikalen Komponente von der Translationsträgheitskraft und der Sollwert von der horizontalen Komponente davon erreicht werden.
  • Der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter kann beispielsweise aus dem Messwert von dem Verlagerungsbetrag von jedem Gelenk des mobilen Roboters abgeschätzt werden unter Verwendung eines geometrischen Modells des mobilen Roboters, wie bei dem beobachteten Wert von der vertikalen Position.
  • Somit kann gemäß dem zweiten Aspekt der Erfindung die Soll-Antriebskraft, welche auf jedes Gelenk auszuüben ist, gesteuert/geregelt werden, während die vertikale Position und die horizontale Position, d. h. die räumlichen Positionen, von dem Gesamtschwerpunkt von dem mobilen Roboter davon abgehalten werden, von den vorbestimmten Sollwerten abzuweichen. In diesem Fall können die Sollwerte von der vertikalen Position und der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter auf Werte eingestellt werden, welche für eine gewünschte Bewegung des mobilen Roboters geeignet sind.
  • Als Ergebnis ermöglicht es der zweite Aspekt der Erfindung, eine gewünschte Bewegung des mobilen Roboters stabil zu implementieren, während der Roboter ferner effektiv davon abgehalten wird, zu schwanken bzw. zu torkeln.
  • In dem ersten Aspekt oder dem zweiten Aspekt der Erfindung umfasst der Sollwert von dem Bewegungszustandsbetrag ferner einen Sollwert von dem Differenzialwert erster Ordnung von einem Drehimpuls um einen vorbestimmten Referenzpunkt von dem gesamten mobilen Roboter, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit hat ferner eine Einheit, welche den Sollwert von dem Differenzialwert erster Ordnung von dem Drehimpuls bestimmt, sodass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz (ein dritter Aspekt der Erfindung).
  • Gemäß dem dritten Aspekt der Erfindung werden der Sollwert von dem Differenzialwert erster Ordnung von dem Gesamtdrehimpuls (der Drehimpuls um einen vorbestimmten Referenzpunkt) von dem mobilen Roboter, und durch Fortsetzung der Sollwert von einem Moment einer Trägheitskraft, welche durch eine Bewegung des gesamten mobilen Roboters erzeugt wird (ein Moment, um einen vorbestimmten Referenzpunkt; nachfolgend in manchen Fällen Moment-Trägheitskraft genannt) derart bestimmt, dass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu. vorbestimmten Sollwerten konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz. Ferner wird die Soll-Antriebskraft, welche auf jedes Gelenk von dem mobilen Roboter auszuüben ist, derart bestimmt, dass der Sollwert von der Translationsträgheitskraft und auch der Sollwert Von der Moment-Trägheitskraft erhalten werden.
  • Somit ermöglicht es der dritte Aspekt der Erfindung, eine Soll-Antriebskraft zu steuern/regeln, welche auf jedes Gelenk auszuüben ist, während durch eine Moment-Trägheitskraft die horizontale Position von dem tatsächlichen Gesamtschwerpunkt von dem mobilen Roboter davon abgehalten wird, von einem vorbestimmten Sollwert abzuweichen. Wenn in diesem Fall beispielsweise ein virtuelles invertiertes Pendel mit dem Gesamtschwerpunkt als dessen Massepunkt angenommen wird, dann kann der Sollwert von der horizontalen Position von dem Gesamtschwerpunkt, welcher mit der Moment-Trägheitskraft in Beziehung steht, auf eine Position in der vertikalen Richtung über dem Abstützpunkt von dem invertierten Pendel eingestellt werden (z. B. ein gewünschtes ZMP). Der Sollwert von der horizontalen Position von dem Gesamtschwerpunkt, welcher mit der Moment-Trägheitskraft in Beziehung steht, muss nicht derselbe wie der Sollwert von der horizontalen Position von dem Gesamtschwerpunkt sein, welcher mit der horizontalen Komponente von einer Translationsträgheitskraft in Beziehung steht.
  • Gemäß dem dritten Aspekt der Erfindung kann daher eine gewünschte Bewegung des mobilen Roboters stabil implementiert werden, während ferner der mobile Roboter effektiv davon abgehalten wird, zu schwanken oder zu taumeln.
  • In den ersten bis dritten Aspekten der Erfindung wird insbesondere die Soll-Antriebskraft vorzugsweise bestimmt, wie beispielsweise nachstehend beschrieben.
  • Die Steuer/Regeleinheit für einen mobilen Roboter umfasst ferner:
    eine Grundparametergruppe-Berechnungseinheit, welche eine Grundparametergruppe berechnet, die gebildet ist von einer Trägheitsmatrix, um einen Differenzialwert zweiter Ordnung von dem verallgemeinerten variablen Vektor in einen verallgemeinerten Kraftvektor und einen schwerkraftabhängigen verallgemeinerten Kraftvektorwert umzuwandeln, welcher der Wert von einem verallgemeinerten Kraftvektor ist, welcher durch eine auf jedes Glied von dem mobilen Roboter einwirkende Schwerkraft erzeugt wird, oder eine Grundparametergruppe, welche von der Trägheitsmatrix, dem schwerkraftabhängigen verallgemeinerten Kraftvektor und einem Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektorwert gebildet ist, welcher der Wert von einem verallgemeinerten Kraftvektor ist, welcher durch eine Zentrifugalkraft und eine Coriolis-Kraft, die auf jedes Glied von dem mobilen Roboter wirken, erzeugt wird, auf der Basis von verallgemeinerter variabler Beobachtungsinformation, welche wenigstens den Beobachtungswert von einem tatsächlichen Verlagerungsbetrag von jedem Gelenk von dem mobilen Roboter umfasst;
    eine Kontaktabschnitt-Jacobimatrix-Berechnungseinheit, welche Kontaktzustandsinformation, welche den Kontaktzustand oder die Kontaktzustände von einem oder mehreren Kontaktabschnitten aufweist, welche mit einer Außenwelt in Kontakt kommen, während sich der mobile Roboter bewegt, und die verallgemeinerte variable Beobachtungsinformation empfängt und eine Kontaktabschnitt-Jacobimatrix berechnet, welche eine Jacobimatrix ist, die eine Beziehung ausdrückt zwischen der Bewegungsgeschwindigkeit von einem vorbestimmten Kontaktabschnitt-Verkörperungselement, welches als ein Element gesetzt ist, welches die Bewegung von dem einen oder mehreren Kontaktabschnitten verkörpert, welche mit der Außenwelt in Kontakt sind, und dem Differenzialwert erster Ordnung von dem verallgemeinerten variablen Vektor auf der Basis von wenigstens der empfangenen Kontaktzustandsinformation und der verallgemeinerten variablen Beobachtungsinformation; und
    eine Zustandsbetrag-Jacobimatrix-Berechnungseinheit, welche die verallgemeinerte variable Beobachtungsinformation empfängt und eine Zustandsbetrag-Jacobimatrix berechnet, welche eine Jacobimatrix ist, die eine Beziehung ausdrückt zwischen dem Bewegungszustandsbetrag und dem Differenzialwert erster Ordnung von dem verallgemeinerten variablen Vektor auf der Basis von wenigstens der empfangenen verallgemeinerten variablen Beobachtungsinformation.
  • Ferner empfängt die Soll-Antriebskraft-Bestimmungseinheit die Grundparametergruppe, die Kontaktabschnitt-Jacobimatrix und die Zustandsbetrag-Jacobimatrix, welche berechnet wurden, den Sollwert von einer Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung, welcher der Sollwert von der Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement ist, die verallgemeinerte variable Beobachtungsinformation, und den bestimmten Bewegungszustandsbetrag-Sollwert, verwendet die empfangenen Daten, um einen Komponentenwert, welcher dem Verlagerungsbetrag von jedem Gelenk entspricht, in einem verallgemeinerten Soll-Kraftvektor τcmd zu berechnen, welcher eine Sollvorgabe von einem verallgemeinerten Kraftvektor ist, der die Beziehung von dem nachstehend angegebenen Ausdruck 01 erfüllt, und den berechneten Komponentenwert als eine Sollantriebskraft, welche auf das Gelenk auszuüben ist, bestimmt (ein vierter Aspekt der Erfindung). S' + (Js * M–1 * Tc – Js') * q' = (Js * M–1 * Pc) * (τcmd – τcmpn) Ausdruck 01 wobei
  • q:
    verallgemeinerter variabler Vektor
    q':
    Beobachtungswert eines Differenzialwerts erster Ordnung von q (= dq/dt)
    S:
    Zustandsbetrag
    S':
    Sollwert von einem Differenzialwert erster Ordnung von S (= dS/dt)
    M:
    Trägheitsmatrix
    τcmpn:
    Vektor, welcher definiert ist durch τcmpn ≡ (N + G) – Pc–1 * Cc oder τcmpn ≡ G – Pc–1 * Cc
    G:
    Schwerkraft-abhängiger verallgemeinerter Kraftvektorwert
    N:
    Zentrifugalkraft/Coriolis-Kraft-abhängiger verallgemeinerter Kraftvektorwert
    Pc:
    Matrix, welche definiert ist durch Pc ≡ I – JcT * (Jc#)T
    I:
    Einheitsmatrix
    Jc:
    Kontaktabschnitt-Jacobimatrix
    Jc#:
    Matrix, welche definiert ist durch Jc# ≡ (M–1)T * JcT * RcT
    Rc:
    Matrix, welche definiert ist durch Rc ≡ ((Jc * M–1 * JcT)–1)T
    Cc:
    Vektor, welcher definiert ist durch Cc ≡ –JcT * Rc * C
    C:
    Sollwert von einer Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung (Skalar oder Vektor)
    Tc:
    Matrix, welche definiert ist durch Tc ≡ –JcT * Rc * Jc'
    Jc':
    Matrix, welche erhalten wird, indem Jc einer Differentiation erster Ordnung (= dJc/dt) unterzogen wird
    Js:
    Zustandsbetrag-Jacobimatrix
    Js':
    Matrix, welche erhalten wird, indem Js einer Differentiation erster Ordnung (= dJs/dt) unterzogen wird
  • In der vorliegenden Beschreibung bezeichnet ”*” eine Multiplikation.
  • Zusätzlich ist in dem vierten Aspekt der Erfindung der oben erwähnte verallgemeinerte variable Vektor ein Vektor, dessen Komponenten den Komponenten eines verallgemeinerten variablen Vektors entsprechen (ein Vektor, welcher aus derselben Anzahl von Komponenten wie der von dem verallgemeinerten variablen Vektor gebildet ist). Insbesondere ist der oben erwähnte verallgemeinerte Kraftvektor ein Vektor, dessen Komponenten eine Kraft (eine Translationskraft oder ein Moment) bereitstellen, welche zeitliche Veränderungen in den entsprechenden Komponentenwerten von dem verallgemeinerten variablen Vektor verursacht.
  • Die oben erwähnte verallgemeinerte variable Beobachtungsinformation bedeutet die Information, welche als ihren Bestandteil einen beobachteten Wert hat (insbesondere einen tatsächlichen momentanen Wert oder Ist-Wert der Komponente oder des beobachteten Werts von der zeitlichen Veränderungsrate davon (Differenzialwert erster Ordnung)), welcher mit einem tatsächlichen Wert von der verallgemeinerten variablen Vektorkomponente (einschließlich des Verlagerungsbetrags eines Gelenks) in Beziehung steht. In diesem Fall kann der beobachtete Wert natürlich ein Wert sein, welcher direkt durch einen Sensor erfasst wird. Alternativ kann der beobachtete Wert ein geschätzter Wert sein, welcher gemäß einem geeigneten Modell oder einem Naturgesetz von dem Erfassungswert oder Werten von einem oder mehreren anderen physikalischen Größen, welche mit dem beobachteten Wert in Wechselbeziehung stehen, abgeschätzt ist.
  • Gemäß dem vierten Aspekt der Erfindung werden die oben erwähnte Grundparametergruppe (die Trägheitsmatrix M, der schwerkraftabhängige verallgemeinerte Kraftvektorwert G und der Zentrifugalkraft/Coriolis-Kraft-abhängige verallgemeinerte Kraftvektorwert N, oder M und G), die oben erwähnte Kontaktabschnitt-Jacobimatrix Jc, und die oben erwähnte Zustandsbetrag-Jacobimatrix Js jeweils durch die Grundparametergruppe-Berechnungseinheit, die Kontaktabschnitt-Jacobimatrix-Berechnungseinheit und die Zustandsbetrag-Jacobimatrix-Berechnungseinheit berechnet, als die Parameter, welche notwendig sind, um den verallgemeinerten Soll-Kraftvektor τcmd gemäß dem oben erwähnten Ausdruck 01 zu berechnen.
  • Um zusätzlich die Grundparametergruppe zu beschreiben, wird die Gesamtsumme von dem Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektorwert N und dem Schwerkraft-abhängigen verallgemeinerte Kraftvektorwert G (= N + G) in manchen Fällen beinahe G (N + G ≈ G). In einem solchen Fall müssen nur M und G als die Grundparametergruppe berechnet werden.
  • Ferner bedeutet das oben erwähnte Kontaktabschnitt-Verkörperungselement, welches mit der Kontaktabschnitt-Jacobimatrix Jc in Beziehung steht, ein Element, welches die Bewegung von dem oben erwähnten einen oder mehreren Kontaktabschnitten von dem Roboter verkörpert, welche Beschränkungen unterliegen wird beim Kontakt mit einer Außenwelt (dem oben erwähnten einen oder mehreren Kontaktabschnitten, deren Bewegung oder Bewegungen (z. B. die Positionen oder Haltungswinkel, oder die zeitlichen Veränderungsraten davon) gemäß der Bewegung davon beschränkt sind). Nebenbei bemerkt bedeutet der Begriff ”Haltungswinkel” eine räumliche Orientierung, welche unter Verwendung eines Winkels als der Einheit davon ausgedrückt ist. Das Kontaktabschnitt-Verkörperungselement kann ein tatsächlicher Kontaktabschnitt oder ein spezieller Abschnitt oder ein darin enthaltener Punkt sein. Alternativ kann das Kontaktabschnitt-Verkörperungselement ein virtuelles Element sein, dessen Positionsbeziehung oder Haltungsbeziehung zu einem Kontaktabschnitt eine vorbestimmte Beziehung ist.
  • Ferner ist die oben erwähnte Kontaktzustandsinformation die Information, welche den Zustand von dem Kontakt zwischen dem oben erwähnten einen oder mehreren Kontaktabschnitten und der Außenwelt anzeigt (z. B. die Information darüber, welcher Kontaktabschnitt mit der Außenwelt in Kontakt ist, oder der Zustand von einer Außenkraft, welche infolge des Kontakts von jedem Kontaktabschnitt mit einer Außenwelt ausgeübt wird).
  • Ferner verwendet die Soll-Antriebskraft-Bestimmungseinheit als Eingabedaten die Grundparametergruppe (M, G und N oder M und G), die Kontaktabschnitt-Jacobimatrix Jc und die Zustandsbetrag-Jacobimatrix Js, den Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigungssollwert C, die verallgemeinerte variable Beobachtungsinformation (insbesondere q', welche aus der verallgemeinerten variablen Beobachtungsinformation erkannt wird), und einen Sollwert S' von dem Differenzialwert erster Ordnung von dem vorbestimmten Typ von Zustandsbetrag, um den Komponentenwert zu berechnen, welcher dem Verlagerungsbetrag von jedem Gelenk in einem verallgemeinerten Soll-Kraftvektor τcmd entspricht, welches das Ziel eines verallgemeinerten Kraftvektors ist, der die Beziehung von dem oben erwähnten Ausdruck 01 erfüllt, und den berechneten Komponentenwert als die Soll-Antriebskraft, welche auf das Gelenk auszuüben ist, bestimmt.
  • Somit wird gemäß dem vierten Aspekt der Erfindung die Soll-Antriebskraft, welche auf jedes Gelenk auszuüben ist, unter Verwendung des Sollwerts von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung und dem Sollwert von dem Bewegungszustandsbetrag-Sollwert als den Vorgaben, welche die Bewegung des Roboters beschränken, bestimmt.
  • Hier ist die Bewegung des Kontaktabschnitts die Bewegung eines Teils des Roboters, sodass die Bewegung von jedem Gelenk des Roboters, um den Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung zu erreichen, mit Redundanz vorgesehen ist. Mit anderen Worten ist der Freiheitsgrad der Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement kleiner als der Freiheitsgrad von dem gesamten Roboter (der Freiheitsgrad von dem verallgemeinerten variablen Vektor).
  • Ferner bedeutet der Bewegungszustandsbetrag-Sollwert den Sollwert von dem Differenzialwert erster Ordnung von dem Gesamttranslationsimpuls von dem mobilen Roboter oder den Sollwert von dem Differenzialwert erster Ordnung von einem Drehimpuls, sodass die Bewegung von jedem Gelenk des Roboters, um den Bewegungszustandsbetrag-Sollwert zu erreichen, auch mit Redundanz vorgesehen ist. Mit anderen Worten ist der Freiheitsgrad des Bewegungszustandsbetrags kleiner als der Freiheitsgrad des gesamten Roboters (der Freiheitsgrad eines verallgemeinerten variablen Vektors).
  • Folglich wird die Willkürlichkeit der Bewegung eines Gelenks des Roboters erhöht, indem eine Soll-Antriebskraft bestimmt wird, welche auf jedes Gelenk auszuüben ist, gemäß dem oben erwähnten Ausdruck 01, unter Verwendung des Sollwerts von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung und dem Bewegungszustandsbetrag-Sollwert als den Vorgaben, welche die Bewegung des Roboters beschränken.
  • Zusätzlich, indem die Bewegung des Kontaktabschnitt-Verkörperungselements unter Verwendung des Sollwerts von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung definiert wird, ist es möglich, die Soll-Antriebskraft von jedem Gelenk zu bestimmen, welche es ermöglicht, dass der Bewegungszustandsbetrag-Sollwert erreicht wird gemäß dem oben erwähnten Ausdruck 01, ohne eine äußere Kraft zu identifizieren, welche auf den Roboter an dem oben erwähnten Kontaktabschnitt einwirkt (die äußere Kraft, welche wechselseitig die Antriebskraft beeinflusst, welche auf jedes Gelenk des Roboters auszuüben ist).
  • Zusätzlich zu den Vorteilen, welche durch die ersten bis dritten Aspekte der Erfindung bereitgestellt werden, ermöglicht es somit der vierte Aspekt der Erfindung, die Antriebskraft, welche auf jedes Gelenk auszuüben ist, auf eine Antriebskraft zu steuern/regeln, welche passend ist, um zu bewirken, dass ein Roboter eine gewünschte Bewegung durchführt, während zur selben Zeit die Flexibilität der Bewegung von jedem Gelenk des Roboters erhöht wird.
  • Zusätzlich kann in dem vierten Aspekt der Erfindung, wenn die Matrix von der rechten Seite (Js * M–1 * Pc) von dem oben erwähnten Ausdruck 01 (nachfolgend in manchen Fällen als die Matrix As bezeichnet) eine reguläre Matrix ist, dann der oben erwähnte verallgemeinerte Soll-Kraftvektor τmcd berechnet werden, indem die Berechnung von der Fechten Seite des Ausdrucks 5-22 durchgeführt wird, was später erörtert wird, unter Verwendung einer Matrix Bs (d. h. der inversen Matrix von As), welche gemäß dem Ausdruck 5-21a bestimmt wird, was später erörtert wird. Wenn die Matrix As nicht eine reguläre Matrix ist, dann kann der oben erwähnte verallgemeinerte Soll-Kraftvektor τmcd berechnet werden, indem die Berechnung von der rechten Seite von dem Ausdruck 5-22 durchgeführt wird, was später erörtert wird, unter Verwendung beispielsweise der Matrix Bs, welche gemäß dem Ausdruck 5-21b bestimmt ist, was später erörtert wird.
  • In dem vierten Aspekt der Erfindung, wenn der Freiheitsgrad der Bewegung von dem Kontaktabschnitt-Verkörperungselement größer als der tatsächliche Freiheitsgrad ist, welcher durch einen Kontakt beschränkt wird, dann neigt die Bewegung eines Gelenks des Roboters dazu, leicht den Beschränkungen zu unterliegen basierend auf dem Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung. Aus diesem Grund, um die Willkürlichkeit der Bewegung eines Gelenks des Roboters zu erhöhen, wird die Überschreitung des Freiheitsgrads der Bewegung des Kontaktabschnitt-Verkörperungselements über den tatsächlichen Freiheitsgrad vorzugsweise minimiert. Ferner entwickelt vorzugsweise die Bewegung von dem Kontaktabschnitt-Verkörperungselement keine unstetige Änderung.
  • Die oben beschriebenen Anforderungen berücksichtigend, wenn beispielsweise der Roboter ein zweibeiniger mobiler Roboter ist, welcher sich auf einer Bodenoberfläche bewegt, indem eine Bewegung durchgeführt wird, in welcher die distalen Abschnitte von zwei Beingliedern abwechselnd in Kontakt mit der Bodenoberfläche kommen (d. h. ein Roboter, bei dem die distalen Abschnitte von zwei Beingliedern als die Abschnitte fungieren, welche mit der Außenwelt in Kontakt treten), wird idealerweise die folgende Konstruktion eingesetzt.
  • Das Kontaktabschnitt-Verkörperungselement ist ein Element, dessen Position und Haltung elastische Verlagerungen zeigen basierend auf einer Gesamtbodenreaktionskraft, welche die resultierende Kraft von Bodenreaktionskräften ist, welche auf die zwei Beinglieder einwirken, und auch ein Element ist, in welchem die elastischen Verlagerungsbeträge von der Position und Haltung von dem Kontaktabschnitt-Verkörperungselement derart sind, dass die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem ersten Beinglied, welche durch eine Bodenreaktionskraft verursacht werden, welche auf das erste Beinglied von den zwei Beingliedern einwirkt, und die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem zweiten Beinglied, welche durch eine Bodenreaktionskraft verursacht werden, welche auf das zweite Beinglied von den zwei Beingliedern wirkt, eine Beziehung haben, welche durch den nachstehend angegebenen Ausdruck 02 angezeigt wird und die Kontaktabschnitt-Jacobimatrix-Berechnungseinheit die Kontaktabschnitt-Jacobimatrix Jc berechnet, indem die rechte Seite des nachstehend angegebenen Ausdrucks 03 berechnet wird (ein fünfter Aspekt der Erfindung). Xcc = r at * A1 * X1 + (1 – r at) * A2 * X2 Ausdruck 02 Jc = r at * A1 * J1 + (1 – r at) * A2 * J2 Ausdruck 03 wobei
  • Xcc:
    Vector, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und Haltung von einem Kontaktabschnitt-Verkörperungselement sind
    r at:
    Koeffizient, welcher gemäß Kontaktzustandsinformation gesetzt ist, so dass r at = 0 in einem Zustand gilt, in welchem nur das erste Beinglied mit dem Boden in Kontakt ist, r at = 1 in einem Zustand gilt, in welchem nur das zweite Beinglied mit dem Boden in Kontakt ist, oder r at sich kontinuierlich in einem Bereich verändert, welcher definiert ist durch 0 ≤ r at ≤ 1 in einem Zustand, in welchem sowohl das erste Beinglied als auch das zweite Beinglied mit dem Boden in Kontakt sind
    X1:
    Vektor, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und der Haltung von dem distalen Abschnitt von dem ersten Beinglied sind, welche gemäß einer auf das erste Beinglied einwirkenden Boden-Reaktionskraft erzeugt werden
    X2:
    Vektor, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und der Haltung von dem distalen Abschnitt von dem zweiten Beinglied sind, welche gemäß einer auf das zweite Beinglied einwirkenden Boden-Reaktionskraft erzeugt werden
    A1:
    Matrix zur Umwandlung eines ersten Boden-Reaktionskraft-Vektors, welcher gebildet ist von einer Translationskraft-Komponente und einer Momentenkomponente von einer Boden-Reaktionskraft, welche auf das erste Beinglied einwirkt, in einen Boden-Reaktionskraft-Vektor, welcher auf das Kontaktabschnitt-Verkörperungselement einwirkt
    A2:
    Matrix zur Umwandlung eines zweiten Boden-Reaktionskraft-Vektors, welcher gebildet ist von einer Translationskraft-Komponente und einer Momentenkomponente von einer Boden-Reaktionskraft, welche auf das zweite Beinglied einwirkt, in einen Boden-Reaktionskraft-Vektor, welcher auf das Kontaktabschnitt-Verkörperungselement einwirkt
    J1:
    Jacobimatrix, welche die Beziehung zwischen einem Differenzialwert erster Ordnung X1' von X1 (= dX1/dt) und einem Differenzialwert erster Ordnung q' von einem verallgemeinerten variablen Vektor q durch X1' = J1 * q' ausdrückt
    J2:
    Jacobimatrix, welche die Beziehung zwischen einem Differenzialwert erster Ordnung X2' von X2 (= dX2/dt) und einem Differenzialwert erster Ordnung q' von einem verallgemeinerten variablen Vektor q durch X2' = J2 * q' ausdrückt
  • Gemäß dem fünften Aspekt der Erfindung ist das Kontaktabschnitt-Verkörperungselement als ein Element definiert, dessen Position und Haltung elastische Verlagerungen basierend auf einer Gesamtbodenreaktionskraft entwickeln, welche die resultierende Kraft von den Bodenreaktionskräften ist, die auf die zwei einzelnen Beinglieder einwirken, und auch als ein Element, bei dem die elastischen Verlagerungsbeträge von der Position und Haltung von dem Kontaktabschnitt-Verkörperungselement derart sind, dass die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem ersten Beinglied, welche durch eine Bodenreaktionskraft bewirkt werden, die auf das erste Beinglied von den zwei Beingliedern wirkt, und die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem zweiten Beinglied, welche durch eine Bodenreaktionskraft bewirkt werden, die auf das zweite Beinglied von den zwei Beingliedern einwirkt, eine Beziehung haben, welche durch den oben erwähnten Ausdruck 02 angegeben wird.
  • Gemäß dem Kontaktabschnitt-Verkörperungselement, welches wie oben beschrieben definiert ist, ist entweder in dem Zustand, in welchem der distale Abschnitt von nur einem von den zwei Beingliedern von dem Roboter mit dem Boden (oder einem Fußboden) in Kontakt ist, oder in dem Zustand, in welchem die distalen Abschnitte von beiden Beingliedern mit dem Boden in Kontakt sind, der Freiheitsgrad von der Bewegung davon nur insgesamt sechs Freiheitsgrade, welche aus drei Freiheitsgraden von einer Translationsbewegung und drei Freiheitsgraden von einer Rotationsbewegung zusammengesetzt sind. Dies bedeutet, dass der Freiheitsgrad einer Bewegung eines Kontaktabschnitt-Verkörperungselements derselbe Freiheitsgrad ist wie der von dem distalen Abschnitt von einem einzelnen Beinglied.
  • Wenn somit die Bewegung eines Kontaktabschnitt-Verkörperungselements durch den Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung begrenzt wird, dann wird der resultierende beschränkte Freiheitsgrad des Roboters nur sechs Freiheitsgrade haben. Dies ermöglicht es, die Willkürlichkeit der Bewegung des Roboters weiter zu verbessern, während das Übermaß des Freiheitsgrads der Bewegung von dem Kontaktabschnitt-Verkörperungselement über einen tatsächlichen Freiheitsgrad minimiert wird.
  • Darüber hinaus ermöglicht es die kontinuierliche Veränderung des Koeffizienten r at in dem Bereich von 0 ≤ r at ≤ 1, dass die Stetigkeit der Bewegung des Kontaktabschnitt-Verkörperungselements erreicht wird. Dies wiederum ermöglicht es, die Stabilität der Bewegung des Roboters zu verbessern, während eine Soll-Antriebskraft für jedes Gelenk von dem Roboter von einer unstetigen Änderung abgehalten wird.
  • Ferner wird in dem fünften Aspekt der Erfindung die Kontaktabschnitt-Jacobimatrix Jc, welche mit dem Kontaktabschnitt-Verkörperungselement in Beziehung steht, welches wie oben beschrieben definiert ist, gemäß dem oben erwähnten Ausdruck 03 berechnet. In diesem Fall müssen die Matrizen A1 und A2 und die Jacobi-Matrizen J1 und J2 berechnet werden. Die Matrizen A1 und A2 hängen von dem Kontaktzustand eines Beinglieds ab (d. h. dem Kontaktzustand mit einem Fußboden), sodass die Matrizen A1 und A2 auf der Basis, beispielsweise der vorangehend erwähnten Kontaktzustandsinformation bestimmt werden können.
  • Der Differenzialwert erster Ordnung X1' von X1 (= dX1/dt) kann als übereinstimmend mit der Bewegungsgeschwindigkeit (der Translationsgeschwindigkeit und der Rotationsgeschwindigkeit) von dem distalen Abschnitt von dem ersten Beinglied angesehen werden, und der Differenzialwert erster Ordnung X2' von X2 (= dX2/dt) kann als übereinstimmend mit der Bewegungsgeschwindigkeit (der Translationsgeschwindigkeit und der Rotationsgeschwindigkeit) von dem distalen Abschnitt von dem zweiten Beinglied angesehen werden. Folglich können die Jacobi-Matrizen J1 und J2 des Ausdrucks 03 auf der Basis von der vorangehend erwähnten verallgemeinerten variablen Beobachtungsinformation berechnet werden.
  • Somit kann die Kontaktabschnitt-Jacobimatrix berechnet werden, indem die rechte Seite des oben erwähnten Ausdrucks 03 berechnet wird.
  • In dem vierten Aspekt oder dem fünften Aspekt der Erfindung umfasst die Aktuatorsteuer/regeleinheit vorzugsweise eine Kontaktabschnitt-Außenkraft-Sollwert-Bestimmungseinheit, welche einen Kontaktabschnitt-Außenkraft-Sollwert bestimmt als einen geschätzten Wert von einer Außenkraft, welche auf den Kontaktabschnitt einwirkt, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird, unter Verwendung der Soll-Antriebskraft und des Kontaktabschnitt-Bewegungsbeschleunigung-Sollwerts, welche bestimmt wurden in dem Fall, wo angenommen wird, dass eine Antriebskraft, welche tatsächlich auf jedes Gelenk des mobilen Roboters auszuüben ist, mit der bestimmten Soll-Antriebskraft übereinstimmt und die Ist-Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement mit dem Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung übereinstimmt, und eine Antriebskraftkorrekturbetrag-Berechnungseinheit, welche einen Korrekturbetrag von der Soll-Antriebskraft gemäß einem Rückkopplungssteuer/regelgesetz bestimmt, sodass eine Differenz zwischen dem Kontaktabschnitt-Außenkraft-Sollwert und einem beobachteten Wert von einer Außenkraft, welche tatsächlich auf den Kontaktabschnitt einwirkt, zu null konvergiert, wobei der Betrieb des Aktuators auf der Basis der Soll-Antriebskraft gesteuert/geregelt wird, welche unter Verwendung des Korrekturbetrags korrigiert wurde (ein sechster Aspekt der Erfindung).
  • Gemäß dem sechsten Aspekt der Erfindung wird der abgeschätzte Wert von einer Außenkraft, welche auf den Kontaktabschnitt einwirkt, in dem Fall, wo angenommen wird, dass die Antriebskraft, welche tatsächlich auf jedes Gelenk von dem mobilen Roboter ausgeübt wird, mit der bestimmten Soll-Antriebskraft übereinstimmt und die Ist-Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement mit dem Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung übereinstimmt, als der Kontaktabschnitt-Außenkraft-Sollwert bestimmt. Ferner wird die Soll-Antriebskraft auf der Basis eines Korrekturbetrags korrigiert, welcher gemäß einem Rückkopplungssteuer/regelgesetz bestimmt ist, sodass die Differenz zwischen dem Kontaktabschnitt-Außenkraft-Sollwert und dem Beobachtungswert von einer Außenkraft, welche tatsächlich auf den Kontaktabschnitt einwirkt, zu null konvergiert. Dann wird der Betrieb des Aktuators auf der Basis der korrigierten Soll-Antriebskraft gesteuert/geregelt.
  • Somit ermöglicht es der sechste Aspekt der Erfindung, einen Einfluss eines Fehlers oder dgl. von einem Modell, auf welchem der oben erwähnte Ausdruck 01 basiert, zu kompensieren, um auf diese Weise einen Versatz zwischen einem Kontaktabschnitt-Außenkraft-Sollwert, welcher einer Soll-Antriebskraft entspricht, die gemäß dem oben erwähnten Ausdruck 01 bestimmt ist, und einer Außenkraft, welche tatsächlich auf den Kontaktabschnitt einwirkt, zu verhindern. Dies ermöglicht eine verbesserte Stabilität der Bewegung des Roboters.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein schematisches Diagramm, welches einen Skelettrahmen von einem mobilen Roboter veranschaulicht, bei welchem eine Ausführungsform de vorliegenden Erfindung angewendet wird;
  • 2 ist ein schematisches Diagramm, welches einen Skelettrahmen von einem Gelenkantriebssystem veranschaulicht, welches in dem in 1 gezeigten mobilen Roboter vorgesehen ist;
  • 3 ist ein Blockdiagramm, welches Hauptfunktionen von einer Steuer/Regeleinrichtung von dem in 1 gezeigten mobilen Roboter veranschaulicht;
  • 4 ist ein Blockdiagramm, welches die Funktionen von einer Soll-Gelenkantriebsdrehmoment-Bestimmungseinrichtung veranschaulicht, welche in 3 gezeigt ist;
  • 5(a) bis 5(c) sind Diagramme, um die Verarbeitung in einer ersten Ausführungsform von einer Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung zu beschreiben, welche in 4 gezeigt ist; und
  • 6 ist ein Diagramm, um die Verarbeitung in einer zweiten Ausführungsform der Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung zu beschreiben, welche in 4 gezeigt ist.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • [Erste Ausführungsform]
  • Das Nachfolgende wird eine erste Ausführungsform der vorliegenden Erfindung unter Bezugnahme auf 1 bis 5 beschreiben.
  • 1 veranschaulicht schematisch den Skelettrahmen von einem mobilen Roboter, welcher in der vorliegenden Ausführungsform veranschaulicht ist. Dieser mobile Roboter 1 (nachfolgend einfach als der Roboter 1 bezeichnet) ist ein zweibeiniger mobiler Roboter als ein mit wenigstens einem Bein versehener mobiler Roboter. Der Roboter 1 ist im Wesentlichen gebildet von einem Körperglied 2, einem Paar von rechten und linken Beingliedern 3R, 3L, einem Paar von rechten und linken Armgliedern 4R, 4L und einem Kopf 5.
  • In der vorliegenden Beschreibung wird einem Element auf der rechten Seite, die man wahrnimmt, wenn man der Vorderseite des Roboters 1 zugewandt ist, oder einer Variablen, welche eine Größe angibt, welche dem Element zugeordnet ist, der Buchstabe ”R” angehängt, während einem Element auf der linken Seite, die man wahrnimmt, wenn man der Vorderseite des Roboters 1 zugewandt ist, oder einer Variablen, welche eine Größe angibt, welche dem Element zugeordnet ist, ein Buchstabe ”L” angehängt. Jedoch können die Buchstaben ”R” und ”L” weggelassen werden, ausgenommen, dass es besonders notwendig ist, zwischen der rechten Seite und der linken Seite zu unterscheiden.
  • Das Körperglied 2 ist gebildet von einem Unterkörper 10, welcher den Basiskörper des Roboters 1 bereitstellt, und einem Oberkörper 11, welcher oberhalb des Unterkörpers 10 angeordnet ist. Der Oberkörper 11 ist mit dem Unterkörper 10 durch ein Körperdrehgelenk 12 verbunden, welches einen Rotationsfreiheitsgrad um eine Gierachse (um eine Z-Achse) hat.
  • Das Paar von rechten und linken Beingliedern 3R und 3L haben dieselbe Konstruktion gemein. Insbesondere ist jedes Beinglied 3 versehen mit einem Oberschenkel 14, welcher mit dem Unterkörper 10 durch ein Hüftgelenk 13 verbunden ist, einem Unterschenkel 16, welcher mit dem Oberschenkel 14 durch ein Kniegelenk 15 verbunden ist, und einem Fuß 18, welcher mit dem Unterschenkel 16 durch ein Fußgelenk 17 verbunden ist, als einer Mehrzahl von Gliedern, welche das Beinglied 3 bilden.
  • In diesem Fall ist das Hüftgelenk 13 von drei Gelenken 19, 20 und 21 gebildet, welche jeweils die Rotationsfreiheitsgrade um die Gierachse, um eine Nickachse (um eine Y-Achse) und um eine Rollachse (eine X-Achse) haben. Das Kniegelenk 15 ist von einem Gelenk 22 gebildet, welches einen Rotationsfreiheitsgrad um die Nickachse hat. Das Fußgelenk 17 ist von zwei Gelenken 23 und 24 gebildet, welche jeweils Rotationsfreiheitsgrade um die Nickachse und die Rollachse haben. Somit hat jedes von den Beingliedern 3 in der vorliegenden Ausführungsform eine Bewegungsfreiheit von sechs Freiheitsgraden relativ zu dem Unterkörper 10. Nebenbei bemerkt, bezeichnen die Rotationsachsen (die Rollachse, die Nickachse und die Gierachse) von den Gelenken 19 bis 24 von jedem von den Beingliedern 3 in der obigen Beschreibung die Rotationsachsen in einem Zustand, in welchem das Beinglied 3 in der vertikalen Richtung ausgestreckt ist.
  • Das Paar von rechten und linken Armgliedern 4R und 4L haben dieselbe Konstruktion. Insbesondere ist jedes von den Armgliedern 4 mit einem Oberarm 26 versehen, welcher mit dem Oberkörper 11 durch ein Schultergelenk 25 verbunden ist, einen Unterarm 28, welcher mit dem Oberarm 26 durch ein Ellbogengelenk 27 verbunden ist, und eine Hand 30, welche mit dem Unterarm 28 durch ein Handgelenk 29 verbunden ist, als einer Mehrzahl von Gliedern, welche das Armglied 4 bilden.
  • In diesem Fall ist das Schultergelenk 25 von drei Gelenken 31, 32 und 33 gebildet, welche jeweils die Rotationsfreiheitsgrade um die Nickachse, um die Rollachse und um die Gierachse haben. Das Ellbogengelenk 27 ist von einem Gelenk 34 gebildet, welches einen Rotationsfreiheitsgrad um die Nickachse hat. Das Handgelenk 29 ist von drei Gelenken 35, 36 und 37 gebildet, welche jeweils Rotationsfreiheitsgrade um die Gierachse, um die Nickachse und um die Rollachse haben. Somit hat jedes von den Armgliedern 4 in der vorliegenden Ausführungsform eine Bewegungsfreiheit von sieben Freiheitsgraden relativ zu dem Oberkörper 11. Nebenbei bemerkt, bezeichnen die Drehachsen oder Rotationsachsen (die Rollachse, die Nickachse und die Gierachse) von den Gelenken 31 bis 37 von jedem von den Armgliedern 4 in der obigen Beschreibung die Rotationsachsen in einem Zustand, in welchem die Armglieder 4 in der vertikalen Richtung ausgestreckt sind.
  • Der Kopf 5 ist oberhalb des Oberkörpers 11 angeordnet und mit dem Oberkörper 11 durch ein Halsgelenk 38 verbunden. In diesem Fall besteht das Halsgelenk 38 aus zwei Gelenken 39 und 40, welche jeweils den Rotationsfreiheitsgrad um die Nickachse und um die Gierachse haben. Folglich hat der Kopf 5 eine Bewegungsfreiheit von zwei Freiheitsgraden relativ zu dem Oberkörper 11. Nebenbei bemerkt, bezeichnen die Rotationsachsen (die Nickachse und die Gierachse) von den Gelenken 39 und 40 die Rotationsachsen in einem Zustand, in welchem das Halsgelenk 38 in der vertikalen Richtung ausgestreckt ist.
  • Der Roboter 1, welcher wie oben beschrieben konstruiert ist, implementiert räumliche Bewegungen der Beinglieder 3, indem die sechs Gelenke 19 bis 24 von jedem von den Beingliedern 3 angetrieben werden, um so zu ermöglichen, dass sich der Roboter 1 auf einem Fußboden bewegt. Beispielsweise ermöglicht es eine Bewegung der Beinglieder 3R und 3L in Arten (Schritten) ähnlich den menschlichen Geh- oder Laufbewegungen dem Roboter 1 zu gehen oder zu laufen. In diesem Fall hat jedes von den Gliedern des Roboters 1 sechs Freiheitsgrade für die räumliche Position und Haltung (räumliche Orientierung) desselben.
  • Ferner werden die sieben Gelenke 31 bis 37 von jedem von den Armgliedern 4 angetrieben, um zu bewirken, dass jedes der Armglieder 4 räumliche Bewegungen durchführt, was es einer Hand 30 von jedem Armglied 4 ermöglicht, Arbeit durchzuführen, wie z. B. ein bestimmtes Objekt zu berühren.
  • Da der Unterkörper 10 und der Oberkörper 11, welche das Körperglied 2 bilden, durch das Gelenk 12 verbunden sind, kann das Körperglied 2 in der vorliegenden Ausführungsform verdreht werden, indem das Gelenk 12 angetrieben wird.
  • Ferner kann der Kopf 5 geneigt werden (eine Rotationsbewegung um die Nickachse) oder geschwenkt werden (eine Rotationsbewegung um die Gierachse), indem die Gelenke 39 und 40 von dem Halsgelenk 38 angetrieben werden.
  • Zusätzlich ist der Roboter 1 in der vorliegenden Ausführungsform ein humanoider Roboter, welcher die Armglieder 4R, 4L und den Kopf 5 hat. Alternativ kann der Roboter 1 jedoch ein Roboter ohne die Armglieder 4R, 4L oder den Kopf 5 sein. Werter alternativ kann das Gelenk 12 von dem Körperglied 2 weggelassen werden, um so den Oberkörper 10 und den Unterkörper zu einem Körper zu vereinigen.
  • Obwohl in 1 nicht speziell dargestellt, hat der Roboter 1 ein Gelenkantriebssystem (einen Mechanismus, um die Gelenke anzutreiben), welches Elektromotoren umfasst, die als Aktuatoren dienen, welche eine Antriebskraft ausgeben, um die oben erwähnten Gelenke drehmäßig anzutreiben. Gemäß der vorliegenden Ausführungsform, um jedem Gelenk Flexibilität zu verleihen, ist ein Bewegungskraftübertragungssystem zwischen jedem Gelenk und einem Elektromotor mit einem Federelement versehen, welches die Antriebskraft von dem Elektromotor in eine elastische Kraft umwandelt und die elastische Kraft auf ein Abtriebselement von dem Gelenk ausübt, wie nachfolgend beschrieben.
  • 2 veranschaulicht schematisch den Skelettrahmen von dem Gelenkantriebssystem von jedem Gelenk. Das Gelenkantriebssystem umfasst eine Untersetzungsgetriebeeinheit 52, welche aus einem Harmonic-Drive-Getriebe oder dgl. aufgebaut ist, und einen Torsionsstab 53, welcher ein Federelement ist, als das Antriebskraftübertragungselement zwischen einem Elektromotor 50 und einem angetriebenen Element 51 von dem Gelenk (nachfolgend als das Gelenkabtriebselement 51 bezeichnet). Eine Ausgangswelle 50a von dem Elektromotor 50 ist mit dem Gelenkabtriebselement 51 durch das Zwischenstück von der Untersetzungsgetriebeeinheit 52 und den Torsionsstab 53 in dieser Reihenfolge verbunden. Somit ist das Gelenkantriebssystem derart konstruiert, dass die Antriebskraft(Drehmoment)-Ausgabe von dem Elektromotor 50 zu dem Gelenkabtriebselement 51 über die Untersetzungsgetriebeeinheit 52 und den Torsionsstab 53 der Reihe nach übertragen wird. In diesem Fall wird die Antriebskraft(Drehmoment)-Ausgabe von dem Elektromotor 50 in eine elastische Kraft (Torsionskraft) durch den Torsionsstab 53 umgewandelt und die elastische Kraft wird als ein Antriebsdrehmoment auf das Gelenkabtriebselement 51 ausgeübt.
  • Zusätzlich verkörpert hier der Torsionsstab 53 (Federelement) allgemein ein elastisches Element, welches zwischen der Untersetzungsgetriebeeinheit 52 und dem Gelenkabtriebselement 51 hinzugefügt ist, oder ein elastisches Element, welches von Haus aus in dem Antriebskraftübertragungssystem zwischen dem Elektromotor 50 und dem Gelenkabtriebselement 51 angeordnet ist. Aus diesem Grund, wenn die Untersetzungsgetriebeeinheit 52 von Haus aus ein elastisches Element in einer Ausgangsstufe davon hat, wie bei dem Harmonic-Drive-Getriebe, wie z. B. einem Harmonic Drive (eingetragenes Warenzeichen), dann ist das elastische Element auch in dem Torsionsstab 53 enthalten (Federelement).
  • Das Gelenkabtriebselement 51 ist eines von einem Paar von Elementen, welche relativ und drehbar miteinander durch das Gelenk verbunden sind, welches das Paar von Elementen hat. Beispielsweise ist in dem Gelenkantriebssystem, welches das Gelenk 22 von dem Kniegelenk 15 antreibt, eines von den Gliedern von dem Oberschenkel 14 und dem Unterschenkel 16, das Gelenkabtriebselement 51, während die Gehäuse von dem Elektromotor 50 und der Untersetzungsgetriebeeinheit 52 an dem anderen Glied befestigt sind.
  • Wie oben beschrieben, ist gemäß der vorliegenden Ausführungsform das Gelenkantriebssystem mit dem Torsionsstab 53 versehen, welchet als ein Federelement dient, um jedem Gelenk flexible Bewegungen zu gestatten.
  • Die vorliegende Ausführungsform ist mit einer Steuer/Regeleinrichtung 60, welche aus einer elektronischen Schalteinheit besteht, welche eine CPU, ein RAM, ein ROM und dgl. umfasst, und einer Vielzahl von Sensoren versehen, um die Bewegungen des Roboters 1 zu steuern/regeln, welcher den oben beschriebenen Aufbau hat.
  • In diesem Fall, wie in 1 veranschaulicht, umfassen die Sensoren einen Haltungssensor 61, welcher an dem Unterkörper 10 montiert ist, um die Winkelgeschwindigkeit, den Haltungswinkel (den Neigungswinkel relativ zu der vertikalen Richtung und den Azimuth um die Gierachse) und dgl. von dem Unterkörper 10 zu messen, welcher der Grundkörper von dem Roboter 1 ist, Kraftsensoren 62 (62R und 62L), von denen jeder zwischen dem Fußgelenk 24 und dem Fuß 18 von jedem von den Beingliedern 3 angeordnet ist, um eine äußere Kraft (Bodenreaktionskraft) zu messen, welche auf jeden von den Füßen 18 ausgeübt wird, zu dem Zeitpunkt, in dem er mit dem Boden in Kontakt tritt, und Kraftsensoren 63 (63R und 63L), von denen jeder zwischen dem Handgelenk 29 und der Hand 30 von jedem von den Armgliedern 4 angeordnet ist, um eine äußere Kraft zu messen, welche auf jede von den Händen 30 von einem Objekt, mit welchem die Hand 30 in Kontakt gelangt, ausgeübt wird.
  • Der oben erwähnte Haltungssensor 61 ist beispielsweise gebildet von einem Gyro-Sensor, welcher Winkelgeschwindigkeiten um drei Achsen erfasst, und einem Beschleunigungssensor, welcher die Beschleunigungen in den Richtungen von drei Achsen erfasst. Jeder von den Kraftsensoren 62 und 63 ist beispielsweise gebildet von einem Sechs-Achsen-Kraftsensor, welcher jeweils die Translationskräfte in den Richtungen der drei Achsen und die Momente um die drei Achsen erfasst. Der Beschleunigungssensor, welcher den Haltungssensor 61 bildet, wird auch verwendet, um die Bewegungsgeschwindigkeit des Unterkörpers 10 zu messen.
  • Ferner ist gemäß der vorliegenden Ausführungsform, wie in 2 veranschaulicht, das Gelenkantriebssystem für jedes Gelenk mit einem Drehgeber 64 versehen, welcher als ein Winkelsensor dient, um den Drehwinkel von der Ausgangswelle 50a von dem Elektromotor 50 (den Drehwinkel von einem Rotor) zu erfassen, und einem differenziellen Encoder 65, welcher als ein Winkelsensor dient, welcher die Drehwinkeldifferenz zwischen beiden Enden des Torsionsstabs 53 erfasst.
  • Der differenzielle Encoder 65 in der vorliegenden Ausführungsform ist ein Sensor, welcher ein Paar Scheiben 65a und 65b hat, welche an beiden Enden des Torsionsstabs 53 befestigt sind, und gibt ein Signal basierend auf einem relativen Drehwinkel von einer von den Scheiben 65a und 65b in Relation zu der anderen als ein Signal basierend auf einer Drehwinkeldifferenz zwischen beiden Enden des Torsionsstabs 53 aus.
  • Der Drehgeber 64 und der differenzielle Encoder 65 sind Sensoren, welche verwendet werden, um hauptsächlich den Drehwinkel von der Ausgangswelle 50a von dem Elektromotor 50 (oder den Drehwinkel von einem Ende von dem Torsionsstab 53 benachbart der Untersetzungsgetriebeeinheit 52 (= den Drehwinkel von der Ausgangswelle von der Untersetzungsgetriebeeinheit 52)) und die zeitliche Veränderungsrate (Drehwinkelgeschwindigkeit) davon, den Drehwinkel von dem Gelenkabtriebselement 51, und die zeitliche Veränderungsrate (Drehwinkelgeschwindigkeit) davon und die Drehwinkeldifferenz zwischen beiden Enden des Torsionsstabs 53 (= den Torsionswinkel von dem Torsionsstab 53) zu messen.
  • Anstelle des differenziellen Encoders 65 kann ein Winkelsensor, wie z. B. ein Drehgeber, verwendet werden, welcher den Drehwinkel von dem Gelenkabtriebselement 51 erfasst. Ferner kann anstelle des Drehgebers 64 ein Winkelsensor, wie z. B. ein Drehgeber, verwendet werden, welcher den Drehwinkel von der Ausgangswelle von der Untersetzungsgetriebeeinheit 52 erfasst.
  • In der folgenden Beschreibung kann der Drehwinkel von dem Gelenkabtriebselement 51 von jedem Gelenk von dem Roboter 1 als der Drehwinkel von einem Gelenk oder ein Gelenkwinkel bezeichnet werden.
  • Die Steuer/Regeleinrichtung 60 empfängt Erfassungsausgaben von den oben erwähnten Sensoren (oder Filterwerte), welche erhalten werden, indem die Erfassungsausgaben durch geeignete Filter geleitet werden). Die Steuer/Regeleinrichtung 60 verwendet dann benötigte Messwerte (z. B. die Messwerte von dem Haltungswinkel von dem Unterkörper 10 und die zeitliche Änderungsrate (Winkelgeschwindigkeit) davon, den Messwert von der Bewegungsgeschwindigkeit von dem Unterkörper 10, den Messwert von einer äußeren Kraft, welche auf jeden von den Füße 18 oder den Händen 30 einwirkt, und die Messwerte von dem Drehwinkel von jedem Gelenk und die zeitliche Änderungsrate (Winkelgeschwindigkeit) davon, welche aus den empfangenen Erfassungsausgaben erkannt werden, um den Sollwert von dem Antriebsdrehmoment zu bestimmen, welches auf das Gelenkabtriebselement 51 von jedem Gelenk auszuüben ist, um zu bewirken, dass der Roboter 1 eine gewünschte Bewegung durchführt (nachfolgend als Gelenk-Soll-Antriebsdrehmoment bezeichnet). Die Steuer/Regeleinrichtung 60 führt auch eine Verarbeitung durch, um das Ausgangsdrehmoment von dem Elektromotor 50 von jedem Gelenkantriebssystem auf der Basis von dem Gelenk-Soll-Antriebsdrehmoment zu steuern/regeln.
  • Das Nachfolgende wird detailliert die Steuer/Regelverarbeitung erläutern, welche von der Steuer/Regeleinrichtung 60 durchgeführt wird. In der vorliegenden Ausführungsform wird die Steuer/Regelverarbeitung in dem Fall, wo die gewünschte Bewegung des Roboters 1 eine Bewegung ist, um sich auf einem Fußboden durch Gehen zu bewegen, als ein Beispiel verwendet.
  • Wie in 3 gezeigt, hat die Steuer/Regeleinrichtung 60 einen Gangarterzeuger 71, eine Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 und eine Gelenkantriebssteuer/regeleinrichtung 73 als ihre Haupteinheiten, um Funktionen zu implementieren, indem ein installiertes Programm oder dgl. laufen gelassen wird.
  • Der Gangarterzeuger 71 ist eine Funktionseinheit, welche eine Verarbeitung durchführt, um eine gewünschte Gangart oder Soll-Gangart einschließlich wenigstens einer gewünschten Bewegung des Roboters 1 zu erzeugen. Die gewünschte Bewegung, welche von dem Gangarterzeuger 71 erzeugt wird, umfasst die Zeitreihen von einem Soll-Gelenkwinkel, welcher einen Sollwert von dem Verlagerungsbetrag (Drehwinkel) von jedem Gelenk von dem Roboter 1 anzeigt, und die Zeitreihen von einer Soll-Position von dem Gesamtschwerpunkt von dem Roboter 1 (nachfolgend in manchen Fällen als der Soll-Gesamtschwerpunkt bezeichnet).
  • Die oben erwähnte gewünschte Bewegung oder Sollbewegung wird erzeugt, indem beispielsweise die Gangarterzeugungstechnik verwendet wird, welche von dem Anmelder der vorliegenden Anmeldung in dem offengelegten japanischen Patent H5-305579 1 und dgl. vorgeschlagen wird.
  • Die Gangarterzeugungstechnik wird schematisch erläutert. Die erwartete Aufsprungposition, die erwartete Aufsprunghaltung, die erwartete Aufsprungzeit, welche von jedem von den beiden Füßen 18R und 18L von dem Roboter 1 angestrebt werden, werden hauptsächlich auf der Basis der Bodengeometrieinformation von einer Umgebung, in welcher sich der Roboter 1 bewegt, und den Anforderungen betreffend die Richtungen, in welchen sich der Roboter 1 bewegt, bestimmt.
  • Basierend auf der erwarteten Aufsprungposition/haltung und der erwarteten Aufsprungzeit wird ein Fußposition/haltungsbewegungsablauf bestimmt, welcher der Bewegungsablauf bzw. Trajektorie (ein Zeitreihenmuster) von einer Soll-Position und einer Soll-Haltung von jedem von den Füßen 18 ist. Ferner wird basierend auf dem Fußposition/haltungsbewegungsablauf ein Soll-ZMP-Bewegungsablauf, welcher den Bewegungsablauf von einer gewünschten Position von einem Null-Moment-Punkt (ZMP (Zero Moment Point)) (nachfolgend in manchen Fällen als der Soll-ZMP bezeichnet) bestimmt.
  • Ferner werden die Bewegungsabläufe von Soll-Positionen und Soll-Haltungen von Gliedern (dem Körperglied 2 und dgl.) von anderen als den zwei Beingliedern 3R und 3L von dem Roboter 1 derart bestimmt, dass die Stabilität des Roboters 1 in der Zukunft sichergestellt wird, während zur selben Zeit ein dynamischer Gleichgewichtszustand erfüllt ist, sodass die horizontale Komponente von einem Moment, welches um einen Soll-ZMP durch die resultierende Kraft von der Trägheitskraft erzeugt wird, welche infolge einer Bewegung des gesamten Roboters 1 und der auf den Roboter 1 einwirkenden Schwerkraft erzeugt wird, Null wird.
  • Dann werden basierend auf den Soll-Positionen und den Soll-Haltungen die Soll-Gelenkwinkel von einzelnen Gelenken unter Verwendung eines geometrischen Modells (eines starren Gliedermodells) von dem Roboter 1 bestimmt.
  • Die gewünschte Gangart muss nicht notwendigerweise in Echtzeit erzeugt werden während der Roboter 1 tatsächlich in Bewegung ist. Alternativ kann eine gewünschte Gangart, welche im Voraus (Off-Line) vorbereitet ist, der Steuer/Regeleinrichtung 60 von der Außenseite durch drahtlose Kommunikation oder dgl. zugeführt werden, oder kann in einer Speichereinrichtung (nicht gezeigt) von dem Roboter 1 gespeichert und im Voraus enthalten sein. In diesem Fall ist der Gangarterzeuger 71 nicht erforderlich.
  • Die gewünschte Gangart kann einen Sollwert von einer speziellen Komponente (z. B. einer vertikalen Komponente von einer Translationskraft) von einer Gesamtbodenreaktionskraft (Gesamtbodenreaktionskraft) umfassen, welche auf einen oder beide von den Füßen 18R und 18L einwirkt, oder die Soll-Position von dem Wirkungspunkt von der Gesamtbodenreaktionskraft (d. h. dem Soll-ZMP) zusätzlich zu einer gewünschten Bewegung des Roboters 1. In der vorliegenden Ausführungsform umfasst eine gewünschte Gangartausgabe von dem Gangarterzeuger 71 einen Soll-ZMP.
  • Die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 ist eine Funktionseinheit, welche sequenziell eine Verarbeitung durchführt, um ein Gelenk-Solldrehmoment von jedem Gelenk zu bestimmen, um die vorangehend erwähnte Soll-Bewegung durchzuführen, welche von dem Gangarterzeuger 71 erzeugt ist, um zu erreichen, dass die tatsächliche Bewegung des Roboters 1 der gewünschten Bewegung folgt). Die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 ist eine Funktionseinheit, welche eine Kernverarbeitung durchführt, welche mit der vorliegenden Erfindung in Beziehung steht, wie später detailliert erörtert wird.
  • Die Gelenkantriebssteuer/regeleinrichtung 73 ist eine Funktionseinheit, welche sequenziell eine Verarbeitung durchführt, um das Ausgangsdrehmoment von dem Elektromotor 50 von jedem Gelenkantriebssystem derart zu steuern/regeln, dass ein Gelenk-Soll-Antriebsdrehmoment erreicht wird (insbesondere ein Gelenk-Soll-Antriebsdrehmoment von jedem Gelenk, welches durch ein korrigiertes Gelenk-Soll-Antriebsdrehmoment ↑τ tc_cmd definiert ist, was nachstehend erörtert wird), von jedem Gelenk, welches sequenziell bestimmt wird durch die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 (um zu Bewirken, dass das Antriebsdrehmoment, welches tatsächlich auf das Gelenkabtriebselement 51 von jedem Gelenk ausgeübt wird, einem Gelenk-Soll-Antriebsdrehmoment folgt).
  • Die Gelenkantriebssteuer/regeleinrichtung 73 steuert/regelt das Ausgangsdrehmoment von dem Elektromotor 50 beispielsweise wie nachstehend beschrieben. Die Gelenkantriebssteuer/regeleinrichtung 73 schätzt sequenziell ein Elastizitäts- bzw. Federkraft-Drehmoment ab, welches tatsächlich von dem Torsionsstab 53 erzeugt wird (das Antriebsdrehmoment, welches tatsächlich von dem Torsionsstab 53 auf das Gelenkabtriebselement 51 ausgeübt wird) auf der Basis eines Messwerts von der Drehwinkeldifferenz zwischen beiden Enden des Torsionsstabs 53 (dem Torsionswinkel des Torsionsstabs 53). Ferner setzt die Gelenkantriebssteuer/regeleinrichtung 73 sequenziell die Soll-Drehwinkelgeschwindigkeit von der Ausgangswelle 50a von dem Elektromotor 50 derart fest, dass die Differenz zwischen dem abgeschätzten Wert von dem Elastizitätsdrehmoment und dem Gelenk-Soll-Antriebsdrehmoment zu null konvergiert.
  • Nachfolgend bestimmt die Gelenkantriebssteuer/regeleinrichtung 73 das Soll-Ausgangsdrehmoment von dem Elektromotor 50 derart, dass die Differenz zwischen der Soll-Drehwinkelgeschwindigkeit und dem Messwert von der Drehwinkelgeschwindigkeit von der Ausgangswelle 50a von dem Elektromotor 50 zu null konvergiert. Dann wandelt die Gelenkantriebssteuer/regeleinrichtung 73 das Soll-Ausgangsdrehmoment in einen Sollwert eines Erregerstroms von dem Elektromotor 50 um, und der Ist-Erregerstrom wird basierend auf dem Sollwert einer Rückkopplungssteuerung/regelung unterzogen, um auf diese Weise das Ist-Ausgangsdrehmoment von dem Elektromotor 50 auf das Soll-Ausgangsdrehmoment zu steuern/regeln.
  • In der Steuer/Regelverarbeitung von der Gelenkantriebssteuer/regeleinrichtung 73 kann das Ausgangsdrehmoment von dem Elektromotor gesteuert/geregelt werden, während die Einflüsse von Schwingungen von dem Torsionsstab 53 kompensiert werden, oder die Einflüsse einer äußeren Kraft, welche auf das Gelenkabtriebselement 51 einwirkt, kompensiert werden.
  • Die Verarbeitung von der Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 wird nun detailliert beschrieben.
  • In der nachfolgenden Beschreibung wird ein Vektor (eine Spalte von einer Mehrzahl von Komponenten) bezeichnet, indem ”↑” an den Beginn eines variablen Namens hinzugefügt wird, wie z. B. ”↑A”. Solange nichts anderes angegeben ist, wird ein Vektor ein Längsvektor sein, in welchem Komponenten in Längsrichtung angeordnet sind (Spaltenvektor). In der vorliegenden Beschreibung wird ”*” als ein Multiplikationssymbol verwendet.
  • Wie in 4 veranschaulicht, ist die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 als ihren Hauptfunktionen versehen mit einer Grundparametergruppe-Bestimmungseinrichtung 81, einer Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82, einer Zustandsbetrag-Jacobimatrix-Bestimmurigseinrichtung 83, einer Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84, einer Steuer/Regeleingabe-Bestimmungseinrichtung 85 und einer Compliance-Streuer/Regeleinrichtung 86. 4 veranschaulicht Hauptausgaben von den Funktionseinheiten und die Zielorte, denen die Hauptausgaben zugeführt werden.
  • Die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 führt sequenziell die Verarbeitung durch durch die Funktionseinheiten mit einem vorbestimmten arithmetischen Verarbeitungszyklus, um auf diese Weise sequenziell das Gelenk-Soll-Antriebsdrehmoment von jedem Gelenk zu bestimmen.
  • Die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 führt zuerst die Verarbeitung von der Grundparametergruppe-Bestimmungseinrichtung 81, die Verarbeitung von der Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82, die Verarbeitung von der Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 und die Verarbeitung von der Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 durch.
  • Die Grundparametergruppe-Bestimmungseinrichtung 81 ist eine Funktionseinheit, welche sequenziell eine Verarbeitung durchführt, um einen Parameter von einem Roboterbewegungsmodell zu berechnen, welches ein Modell ist, das die Beziehung (Bewegungsgleichung) zwischen einer Bewegung von dem Roboter 1 und einer Kraft verkörpert.
  • Hier ist das Roboterbewegungsmodell verkörpert durch den folgenden Ausdruck 1-1, wenn eine äußere Kraft (eine Bodenreaktionskraft oder dgl.), welche auf den Roboter 1 von einer Außenwelt einwirkt, null ist. M * ↑q'' + ↑N + ↑G = ↑τ Ausdruck 1-1
  • ↑q'' in diesem Ausdruck 1-1 bezeichnet einen Differenzialwert zweiter Ordnung von einem verallgemeinerten variablen Vektor ↑q von dem Roboter 1 (= d2↑q/dt2), M bezeichnet eine Trägheitsmatrix, ↑N bezeichnet einen Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor, ↑G bezeichnet einen Schwerkraft-abhängigen verallgemeinerten Kraftvektor und ↑τ bezeichnet einen Antriebskraft-abhängigen verallgemeinerten Kraftvektor.
  • Der oben erwähnte verallgemeinerte variable Vektor ↑q in der vorliegenden Ausführungsform ist ein Vektor, welcher aus einer Anordnung von Komponenten besteht, nämlich der Position und der Haltung (die Position und die Haltung, welche in einem globalen Koordinatensystem beobachtet werden) von einem einzelnen repräsentativen Glied des Roboters 1, welches im Voraus ausgewählt ist, und dem Verlagerungsbetrag (Drehwinkel) von jedem Gelenk. Das oben erwähnte repräsentative Glied in der vorliegenden Ausführungsform ist der Unterkörper 10, welcher als der Grundkörper des Roboters 1 dient. Nachfolgend wird der Unterkörper 10 in manchen Fällen als das repräsentative Glied 10 bezeichnet.
  • Hier, in der Beschreibung der vorliegenden Ausführungsform, bedeutet insbesondere der Begriff ”Position” von jedem Glied, einschließlich des repräsentativen Glieds 10 des Roboters 1, die Position in dem globalen Koordinatensystem von einem repräsentativen Punkt, welcher fest relativ zu dem Glied gesetzt ist. In gleicher Weise bedeutet insbesondere der Begriff ”Haltung” von jedem Glied die räumliche Orientierung von dem Glied, welche in dem globalen Koordinatensystem beobachtet wird (die Orientierung, welche bezogen auf die Dimension eines Winkels ausgedrückt ist). In der folgenden Beschreibung wird die Haltung in manchen Fällen als der Haltungswinkel bezeichnet.
  • Das vorangehend erwähnte globale Koordinatensystem ist ein Inertialkoordinatensystem (einschließlich eines Koordinatensystems, welches annähernd als ein Inertialsystem angesehen werden kann), wie z. B. ein Koordinatensystem, welches an einem Boden (einschließlich der Bodenoberfläche) befestigt ist, in einer Umgebung, in welcher sich der Roboter 1 bewegt.
  • Ferner hat sowohl die Position als auch die Haltung (Haltungswinkel) von jedem Glied drei Freiheitsgrade in der vorliegenden Ausführungsform, was es jedem von ihnen erlaubt, durch drei Koordinatenkomponenten ausgedrückt zu werden. Folglich ist die Anzahl der Komponenten von dem verallgemeinerten veriablen Vektor ↑q, d. h. der Freiheitsgrad von ↑q, in der vorliegenden Ausführungsform die Gesamtsumme von dem Gesamtfreiheitsgrad von der Position und der Haltung von dem repräsentativen Glied 10 (= 6) und der Gesamtfreiheitsgrad von allen Gelenken von dem Roboter 1. In dem Roboter 1 von der vorliegenden Ausführungsform, welcher in 1 veranschaulicht ist, ist der Gesamtfreiheitsgrad von allen Gelenken 29. Daher ist der Freiheitsgrad von ↑q 35.
  • Die Trägheitsmatrix M ist eine Matrix (symmetrische Matrix), um den Differenzialwert zweiter Ordnung ↑q'' von dem verallgemeinerten variablen Vektor ↑q in einen verallgemeinerten Kraftvektor umzuwandeln, d. h. eine Matrix, in welcher der Komponentenwert von einem Vektor, welcher erhalten wird, indem eine Trägheitsmatrix mit ↑q'' (= M * ↑q'') multipliziert wird, ein Wert wird, welcher die Dimension einer Kraft hat, welche jeder Komponente von ↑q'' entspricht (eine Translationskraft oder ein Moment).
  • Hier ist jede Komponente von ↑q eine Position oder ein Haltungswinkel oder ein Drehwinkel, sodass jede Komponente von ↑q'' die Dimension von einer translatorischen Beschleunigung oder einer Winkelbeschleunigung hat. Daher bedeutet jeder Komponentenwert von einem Vektor, welcher erhalten wird, indem das Vorzeichen von M * ↑q'' (–M * ↑q'') umgekehrt wird, die Trägheitskraft, welche durch eine Bewegung des Roboters 1 erzeugt wird. In diesem Fall ist in dem Vektor (–M * ↑q'') die Trägheitskraft von einer Komponente, welche dem Differenzialwert zweiter Ordnung entspricht (translatorische Beschleunigung) von der Position von dem repräsentativen Glied 10 eine translatorische Trägheitskraft (eine Trägheitskraft, welche sich in eine translatorische Kraft verwandelt). Die Trägheitskraft von einer Komponente, welche dem Differenzialwert zweiter Ordnung (Winkelbeschleunigung) von der Haltung von dem repräsentativen Glied 10 entspricht, und die Trägheitskraft von der Komponente, welche dem Differenzialwert zweiter Ordnung von dem Drehwinkel (Winkelbeschleunigung) von jedem Gelenk entspricht, sind Trägheitskraftmomente (Trägheitskräfte, welche sich in Momente umwandeln).
  • Die inverse Matrix M–1 von der Trägheitsmatrix M ist eine Diagonalmatrix.
  • Der verallgemeinerte Kraftvektor ist ein Vektor, dessen Komponenten den Komponenten von dem verallgemeinerten variablen Vektor ↑q entsprechen (ein Vektor, welcher aus derselben Anzahl von Komponenten gebildet ist wie der von ↑q). Insbesondere ist der verallgemeinerte Kraftvektor ein Vektor, von dem jede Komponente eine Kraft bereitstellt (eine translatorische Kraft oder ein Moment), welche eine Änderung (Beschleunigung) bewirkt in einem Komponentenwert von ↑q, welcher diesem entspricht. In diesem Fall ist jede Komponente von dem verallgemeinerten Kraftvektor eine Kraft von demselben Typ wie dem von der Trägheitskraft, welcher auf dem Differenzialwert zweiter Ordnung von einer Komponente von ↑q basiert, welche diesem entspricht.
  • Der Zentrifugalkraft/Coriolis-Kraft-abhängige verallgemeinerte Kraftvektor ↑N ist ein verallgemeinerter Kraftvektor, welcher durch eine Zentrifugalkraft und eine Coriolis-Kraft erzeugt wird, welche auf jedes Glied des Roboters einwirken. Ferner ist der Schwerkraft-abhängige verallgemeinerte Kraftvektor ↑G ein verallgemeinerter Kraftvektor, welcher erzeugt wird durch eine Gravitationskraft, welche auf jedes Glied von dem Roboter 1 einwirkt. In der nachfolgenden Beschreibung wird die Summe von ↑N und ↑G (= ↑N + ↑G) in manchen Fällen bezeichnet als der nicht-linearer-Termverallgemeinerter Kraftvektor.
  • Der Antriebskraft-abhängige verallgemeinerte Kraftvektor ↑τ ist ein verallgemeinerter Kraftvektor, welcher erzeugt wird durch eine Antriebskraft von dem Aktuator (dem Elektromotor 50 in der vorliegenden Ausführungsform), welcher jedes Gelenk von dem Roboter 1 antreibt. In dem Roboter 1 gemäß der vorliegenden Ausführungsform sind die Werte von den Komponenten, welche der Position und der Haltung des repräsentativen Glieds 10 in dem Antriebskraft-abhängigen verallgemeinerten Kraftvektor ↑τ entsprechen, immer null. Ferner wird in ↑τ der Wert von der Komponente, welche dem Drehwinkel von jedem Gelenk entspricht, das Antriebsdrehmoment bedeuten, welches auf das Gelenk auszuüben ist (nachfolgend in manchen Fällen als das Gelenkantriebsdrehmoment bezeichnet).
  • Die Parameter, welche durch die Grundparametergruppe-Bestimmungseinrichtung 81 berechnet werden, umfassen die Trägheitsmatrix M, den Zentrifugal/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-linearer-Termverallgemeinerter Kraftvektor (↑N + ↑G)) im Ausdruck 1-1.
  • Zusätzlich, wenn eine äußere Kraft (≠ 0), wie z. B. eine Bodenreaktionskraft, auf den Roboter 1 einwirkt, dann ist das Roboterbewegungsmodell verkörpert durch einen Ausdruck, welcher erhalten wird, indem der Term von dem verallgemeinerten Kraftvektor, welcher von der äußeren Kraft abhängt (Äußere-Kraft-Term) zu dem Ausdruck 1-1 addiert wird (Ausdruck 5-1, welcher später erörtert wird). Jedoch sind die oben erwähnten M, ↑N und ↑G, welche die Parameter sind, welche durch die Grundparametergruppe-Bestimmungseinrichtung 81 berechnet werden, nicht von der äußeren Kraft abhängig und die Werte derselben hängen von dem Bewegungszustand des Roboters 1 ab, wie z. B. dem Drehwinkel und der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon, von jedem Gelenk des Roboters 1. Aus diesem Grund lässt der oben erwähnte Ausdruck 1-1, um die Grundparametergruppe-Bestimmungseinrichtung 81 zu beschreiben, den Äußere-Kraft-Term weg.
  • Um die Parameter M, ↑N und ↑G (oder M und (↑N + ↑G)) zu berechnen, empfängt die Grundparametergruppe-Bestimmungseinrichtung 81 sequenziell den Messwert von der Bewegungsgeschwindigkeit von dem repräsentativen Glied (dem Unterkörper) 10, den Messwert von dem Haltungswinkel von dem repräsentativen Glied 10 und den Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon, und den Messwert von dem Drehwinkel von jedem Gelenk und den Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon. Diese Messwerte sind die Messwerte, welche von der Steuer/Regeleinrichtung 60 auf der Basis von den Erfassungsausgaben von dem Haltungssensor 61, dem Drehgeber 64 und dem differenziellen Encoder 65 erkannt werden.
  • Ferner verwendet die Grundparametergruppe-Bestimmungseinrichtung 81 die eingegebenen Messwerte, um sequenziell die Parameter M, ↑N und ↑G (oder M und (↑N + ↑G)) gemäß einem allgemein bekannten Verfahren zu berechnen, wie z. B. dem rekursiven Newton Euler Algorithmus (RNEA) oder dem Einheitsvektorverfahren.
  • Zusätzlich gibt es manche Fälle, wo die Größe eines Komponentenwerts von ↑N ausreichend klein wird im Vergleich zu der Größe von dem entsprechenden Komponentenwert von dem Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G oder null wird, was zu ↑N + ↑G ≈ ↑G führt. In einem solchen Fall kann ↑N aus dem ↑N und ↑G ignoriert werden (in Bezug darauf, dass der Nicht-Linearer-Term-verallgemeinerte Kraftvektor (↑N + ↑G) mit ↑G übereinstimmt) und nur ↑G kann berechnet werden.
  • Die vorangehend erwähnte Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 ist eine Funktionseinheit, welche eine Verarbeitung durchführt, um sequenziell eine Jacobimatrix (nachfolgend als die Kontaktabschnitt-Jacobimatrix bezeichnet) zu berechnen, welche die Beziehung zwischen der Bewegungsgeschwindigkeit von einem Kontaktabschnitt-Verkörperungselement als ein Element, welches einen Abschnitt von dem Roboter 1 in Kontakt mit der Außenwelt verkörpert (insbesondere einen oder beide Werte von der Translationsgeschwindigkeit und der Drehgeschwindigkeit (Winkelgeschwindigkeit) von dem Kontaktabschnitt-Verkörperungselement) und dem Differenzialwert erster Ordnung (zeitliche Veränderunsgrate) von dem verallgemeinerten variabien Vektor ↑q. Mit anderen Worten ist die Kontaktabschnitt-Jacobimatrix eine Matrix, welche das Verhältnis (Empfindlichkeit oder Ansprechvermögen) von einer Änderung in der räumlichen Position/Haltung ausdrückt (insbesondere einen oder beide Werte von der Position und der Haltung) von dem Kontaktabschnitt-Verkörperungselement bezüglich einer Änderung (winzige Änderung) von jedem Komponentenwert von dem verallgemeinerten variablen Vektor ↑q.
  • Insbesondere bedeutet das Kontaktabschnitt-Verkörperungselement, welches als das Element dient, welches einen Abschnitt von dem Roboter 1 in Kontakt mit der Außenwelt verkörpert, ein substanzielles oder virtuelles Element, dessen Bewegung definiert ist, abhängig von dem Zustand des Kontakts von jedem Kontaktabschnitt in Kontakt mit der Außenwelt (der Bewegungszustand von jedem Kontaktabschnitt zum Zeitpunkt eines Kontakts oder der Zustand von einer auf jeden Kontaktabschnitt einwirkenden äußeren Kraft).
  • Hier ist eine Sollbewegung des Roboters 1, welche in der vorliegenden Ausführungsform beschrieben ist, eine Bewegung, damit der Roboter 1 eine Gehbewegung durchführt, wie oben beschrieben. In diesem Fall verändert sich der Bodenkontaktabschnitt als ein tatsächlicher Abschnitt vom Roboter 1 in Kontakt mit der Außenwelt (der Abschnitt in Kontakt mit einer Bodenoberfläche) mit der Zeit. Insbesondere ist der Bodenkontaktzustand von dem Roboter 1 während einer Gehbewegung derart, dass sich ein Einbein-Bodenkontaktzustand, in welchem nur einer von den Füßen 18R und 18L ein im Kontakt mit dem Boden befindlicher Abschnitt ist, ein Zweibein-Bodenkontaktzustand, in welchem beide Füße mit dem Boden in Kontakt befindliche Abschnitte sind, und ein Einbein-Bodenkontaktzustand, in welchem nur der andere ein mit dem Boden in Kontakt befindlicher Abschnitt ist, der Reihe nach wiederholt. Folglich sollte sich die Position/Haltung von dem Kontaktabschnitt-Verkörperungselement gemäß den Bodenkontaktzuständen von den Füßen 18R und 18L ändern.
  • Somit berechnet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 sequenziell die Kontaktabschnitt-Jacobimatrix, während sie sequenziell den Wert von einem Parameter bestimmt (den Ratenwert r at, welcher später erörtert wird), welcher die Position/Haltung von dem Kontaktabschnitt-Verkörperungselement von dem Roboter 1 gemäß dem Bodenkontaktzustand von den Füßen 18R und 18L definiert. In diesem Fall werden die Position/Haltung von dem Kontaktabschnitt-Verkörperungselement derart bestimmt, dass die Position/Haltung sich nicht unstetig verändern wird, d. h. die Position/Haltung wird sich jeweils immer kontinuierlich verändern, zu dem Zeitpunkt, wenn sich der Bodenkontaktzustand von den Füßen 18R und 18L ändert, oder während der Perioden von dem Einbein-Bodenkontaktzustand und dem Zweibein-Bodenkontaktzustand.
  • Insbesondere werden in dem Einbein-Bodenkontaktzustand die Position/Haltung von dem Kontaktabschnitt-Verkörperungselement als Elemente gesetzt, welche von der Position und der Haltung von dem Fuß 18R oder dem Fuß 18L abhängen, welcher auch immer mit dem Boden in Kontakt ist. In dem Zweibein-Bodenkontaktzustand werden die Position/Haltung von dem Kontaktabschnitt-Verkörperungselement als Elemente gesetzt, welche von der Position und der Haltung von beiden Füßen 18R und 18L abhängen, und wie eine Bodenreaktionskraft auf beide Füße 18R und 18L einwirkt.
  • Das Nachfolgende wird speziell die Verarbeitung von der Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 beschreiben.
  • In der vorliegenden Ausführungsform wird das Kontaktabschnitt-Verkörperungselement als ein Element angesehen, welches ausgebildet ist, indem eine vorbestimmte Anzahl von mehreren Punkten verbunden wird, welche Bewegungsbeschränkungen unterliegen, wenn ein oder beide der Füße 18R und 18L als die Abschnitte, welche in Kontakt mit der Außenwelt sind, mit dem Boden in Kontakt treten (oder mit einem Fußboden in Kontakt treten), und die Bewegungen (translatorische Bewegungen und Drehbewegungen) von dem Kontaktabschnitt-Verkörperungselement werden durch die Bewegungen (translatorische Bewegungen) von der vorbestimmten Anzahl an Punkten ausgedrückt. Nachfolgend wird die vorbestimmte Anzahl von mehreren Punkten als die Kontaktabschnitt-Verkörperungspunkte bezeichnet. Die Anzahl der Kontaktabschnitt-Verkörperungspunkte wird in irgendeinem von den Bodenkontaktzuständen von den Füßen 18R und 18L konstant gehalten.
  • Insbesondere ist das Kontaktabschnitt-Verkörperungselement aus vier Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 aufgebaut in irgendeinem von den Bodenkontaktzuständen von den Füßen 18R und 18L, wie durch schwarze Punkte in den 5(a) bis 5(c) veranschaulicht. In den 5(a) bis 5(c) werden ein oder beide von den mit dem Boden in Kontakt befindlichen Füßen 18R und 18L durch durchgezogene Linien angezeigt, während der Fuß, welcher vom Boden weg ist (sich in der Luft bewegt), durch die Zwei-Punkt-Strichlinie angezeigt ist.
  • In diesem Fall werden die Positionen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4 auf die Positionen festgelegt basierend auf den Bodenkontaktzuständen von den Füßen 18R und 18L.
  • Insbesondere in dem Einbein-Bodenkontaktzustand, in welchem der linke Fuß 18L mit dem Boden in Kontakt ist, während der rechte Fuß 18R vom Boden weg ist (der Zustand, in welchem das linke Bein mit dem Boden in Kontakt ist), werden vier vorbestimmte Punkte a1L, a2L, a3L und a4L, welche im Voraus an vorbestimmten Positionen auf der Unterseite von dem linken Fuß 18L festgelegt sind (die Positionen, welche relativ zu dem linken Fuß 18L befestigt sind) jeweils als die Kontaktabschnitt-Verkörperungspunkte a1, a2, a3 und a4 bestimmt, wie in 5(a) veranschaulicht.
  • Die Positionen von den vier vorbestimmten Punkten a1L bis a4L in der vorliegenden Ausführungsform sind die Positionen von vier Ecken von der Unterseite von dem linken Fuß 18L. Insbesondere sind die Positionen von den vorbestimmten Punkten a1L bis a4L jeweils der Reihe nach die vordere linke Ecke von der Unterseite von dem linken Fuß 18L, die vordere rechte Ecke davon, die hintere linke Ecke davon und die hintere rechte Ecke davon. Folglich sind die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 in dem Zustand, in welchem das linke Bein mit dem Boden in Kontakt ist, auf der Basis der Position und der Haltung von dem linken Fuß 18L definiert.
  • Ferner werden in dem Einbein-Bodenkontaktzustand, in welchem der rechte Fuß 18R mit einem Boden in Kontakt ist, während der Fuß 18L von dem linken Beinglied 3L vom Boden weg ist (der Zustand, in welchem das rechte Bein mit dem Boden in Kontakt ist), vier vorbestimmte Punkte a1R, a2R, a3R und a4R, welche im Voraus an vorbestimmten Positionen an der Unterseite von dem rechten Fuß 18R festgelegt sind (die Positionen, welche relativ zu dem rechten Fuß 18R befestigt sind), jeweils als die Kontaktabschnitt-Verkörperungspunkte a1, a2, a3 und a4 bestimmt, wie in 5(c) veranschaulicht.
  • Wie bei den vier vorbestimmten Punkten a1L bis a4L von dem linken Fuß 18L sind die Positionen von den vier vorbestimmten Punkten a1R bis a4R die Positionen von vier Ecken von der Unterseite von dem rechten Fuß 18R (die Positionen von der vorderen linken Ecke, der vorderen rechten Ecke, der hinteren linken Ecke und der hinteren rechten Ecke). Folglich werden die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 in dem Zustand, in welchem das rechte Bein mit dem Boden in Kontakt ist, auf der Basis von der Position und der Haltung von dem rechten Fuß 18R definiert.
  • Die gegenseitige Positionsbeziehung zwischen den vier vorbestimmten Punkten a1R bis a4R von dem rechten Fuß 18R ist dieselbe wie die gegenseitige Positionsbeziehung zwischen den vier vorbestimmten Punkten a1L bis a4L von dem linken Fuß 18L.
  • In dem Zweibein-Bodenkontaktzustand, in welchem beide Füße 18R und 18L mit dem Boden in Kontakt sind, werden die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 der Reihe nach als eine Position auf einem Liniensegment bestimmt, welches die vorbestimmten Punkte a1R und a1L von beiden Füßen 18R und 18L verbindet, eine Position auf einem Liniensegment, welches die vorbestimmten Punkte a2R, und a2L verbindet, eine Position auf einem Liniensegment, welches die vorbestimmten Punkte a3R, und a31 verbindet und eine Position auf einem Liniensegment, welches die vorbestimmten Punkte a4R und a41 verbindet, wie in 5(b) veranschaulicht.
  • Hier wird in der nachfolgenden Beschreibung ein Liniensegment, welches willkürlich zwei Punkte A und B verbindet, als Liniensegment A_B bezeichnet und die Länge von dem Liniensegment A_B (Liniensegmentlänge) wird mit L(A_B) bezeichnet.
  • In diesem Fall sind die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 in dem Zweibein-Bodenkontaktzustand insbesondere wie nachfolgend definiert.
  • Die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 werden derart bestimmt, dass das Verhältnis von einer Liniensegmentlänge L(a1_a1L) zu einer Liniensegmentlänge L(a1R_a1L), d. h. L(a1_a1L)/L(a1R_a1L), das Verhältnis von einer Liniensegmentlänge L(a2_a2L) zu einer Liniensegmentlänge L(a2R_a2L), d. h. L(a2_a2L)/L(a2R_a2L), das Verhältnis von einer Liniensegmentlänge L(a3_a3L) zu einer Liniensegmentlänge L(a3R_a3L), d. h. L(a3_a3L)/L(a3R_a3L), und das Verhältnis von einer Liniensegmentlänge L(a4_a4L) zu einer Liniensegmentlänge L(a4R_a4L), d. h. L(a4_a4L)/L(a4R_a4L) einen einander gleichen Verhältniswert r at (0 ≤ r at ≤ 1) verkörpern, wie durch den nachstehend angegebenen Ausdruck 2-1a angedeutet.
  • Mit anderen Worten werden die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 derart bestimmt, dass das Verhältnis von einer Liniensegmentlänge L(a1_a1R) zu einer Liniensegmentlänge L(a1R_a1L), d. h. L(a1_a1R)/L(a1R_a1L), das Verhältnis von einer Liniensegmentlänge L(a2_a2R) zu einer Liniensegmentlänge L(a2R_a2L), d. h. L(a2_a2R)/L(a2R_a2L), das Verhältnis von einer Liniensegmentlänge L(a3_a3R) zu einer Liniensegmentlänge L(a3R_a3L), d. h. L(a3_a3R)/L(_a3L), und das Verhältnis von einer Liniensegmentlänge L(a4_a4R) zu einer Liniensegmentlänge L(a4R_a4L), d. h. L(a4_a4R)/L(a4R_a4L) einen einanander gleichen Verhältniswert (1 – r at) verkörpert, wie durch den nachstehend angegeben Ausdruck 2-1b angedeutet. L(a1_a1L)/L(a1R_a1L) = L(a2_a2L)/L(a2R_a2L) = L(a3_a3L)/L(a3R_a3L) = L(a4_a4L)/L(a4R_a4L) = r at Ausdruck 2-1a L(a1_a1R)/L(a1R_a1L) = L(a2_a2R)/L(a2R_a2L) = L(a3_a3R)/L(a3R_a3L) = L(a4_a4R)/L(a4R_a4L) = 1 – r at Ausdruck 2-1b
  • Ferner wird gemäß der vorliegenden Ausführungsform der vorangehend erwähnte Verhältniswert r at, welcher die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 in dem Zustand definiert, in welchem beide Beine mit dem Boden in Kontakt sind, bestimmt auf der Basis von dem Verhältnis von einer vertikalen Komponente Fz_act_R von einer Translationsbodenreaktionskraft (einer Translationskraft von einer Bodenreaktionskraft), welche tatsächlich auf den rechten Fuß 18R wirkt, zu einer vertikalen Komponente Fz_act_L von einer Translationsbodenreaktionskraft, welche tatsächlich auf den linken Fuß 18L wirkt. Insbesondere bestimmt die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 den oben erwähnten Verhältniswert r at gemäß dem nachstehend angegebenen Ausdruck 2-2a oder 2-2b. r at = Fz_act_R/(Fz_act_R + Fz_act_L) Ausdruck 2-2a r at = 1 – Fz_act_L/(Fz_act_R + Fz_act_L) Ausdruck 2-2b
  • Somit werden die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 in dem Zustand, in welchem beide Beine mit dem Boden in Kontakt sind, auf der Basis von den Positionen und den Haltungen von beiden Füßen 18R und 18L und wie eine Bodenreaktionskraft auf beide Füße 18R und 18L wirkt, bestimmt.
  • In dem Ausdruck 2-2a oder 2-2b, wird dann, wenn Fz_act_R null ist, r at null. In diesem Fall werden daher die Kontaktabschnitt-Verkörperungspunkte a1, a2, a3 und a4 jeweils mit den oben erwähnten vorbestimmten Punkten a1L, a2L, a3L und a4L von dem linken Fuß 18L übereinstimmen. In dem Ausdruck 2-2a oder 2-2b, wird dann, wenn Fz_act_L null ist, r at 1 sein. In diesem Fall werden daher die Kontaktabschnitt-Verkörperungspunkte a1, a2, a3 und a4 jeweils mit den oben erwähnten vorbestimmten Punkten a1R, a2R, a3R und a4R von dem rechten Fuß 18R übereinstimmen. Ferner wird Fz_act_R in dem Zustand null sein, in welchem das linke Bein mit dem Boden in Kontakt ist, während Fz_act_L null sein wird in dem Zustand, in welchem das rechte Bein mit dem Boden in Kontakt ist.
  • Folglich wird nicht nur in dem Zustand, in welchem beide Beine mit dem Boden in Kontakt sind, sondern auch in dem Zustand, in welchem das linke Bein mit dem Boden in Kontakt ist, und in dem Zustand, in welchem das rechte Bein mit dem Boden in Kontakt ist, eine Bestimmung des Verhältniswerts r at gemäß dem Ausdruck 2-2a oder 2-2b und eine Bestimmung der Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 auf der Basis von dem vorbestimmten Verhältniswert r at, sodass, der oben erwähnte Ausdruck 2-1a oder 2-1b erfüllt ist, folglich die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 als die oben erwähnten Abschnitte bestimmen in dem Zustand, in welchem das linke Bein mit dem Boden in Kontakt ist und dem Zustand, in welchem das rechte Bein mit dem Boden in Kontakt ist.
  • In der vorliegenden Ausführungsform führt daher die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 eine Verarbeitung durch, um den vorangehend erwähnten Verhältniswert r at als einen Parameter zu bestimmen, welcher die Positionen von den Kontaktabschnitt-Verkörperungspunkten a1, a2, a3 und a4 definiert (folglich die Position und die Haltung von dem Kontaktabschnitt-Verkörperungselement). Das Nachfolgende wird insbesondere beschreiben, wie die Verarbeitung durchgeführt wird.
  • Die Messwerte von den Ist-Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L, welche auf die Füße 18R und 18L einwirken, werden in die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 eingegeben, um den oben erwähnten Verhältniswert r at zu bestimmen (nachfolgend als das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at bezeichnet). Die Messwerte von Fz_act_R und Fz_act_L sind die Messwerte, welche von der Steuer/Regeleinrichtung 60 auf der Basis von hauptsächlich den Erfassungsausgaben von den Kraftsensoren 63R und 63L erkannt werden.
  • Dann berechnet, basierend auf den empfangenen Messwerten von den Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at gemäß dem vorangehenden Ausdruck 2-2a oder dem Ausdruck 2-2b.
  • Die Bestimmung von dem Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, wie oben beschrieben, bestimmt folglich die Positionen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4, sodass diese Positionen sich kontinuierlich verändern. Im Wechsel werden die Position und die Haltung von dem Kontaktabschnitt-Verkörperungselement, welches ausgebildet ist, indem die vier Kontaktabschnitt-Verkörperungspunkte a1 bis a4 verbunden werden, derart bestimmt, dass sich die Position und die Haltung kontinuierlich verändern wird.
  • Zusätzlich werden gemäß der vorliegenden Ausführungsform die Positionen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4 wie oben beschrieben bestimmt, sodass der Fuß 18R oder 18L selbst in Kontakt mit dem Boden dem Kontaktabschnitt-Verkörperungselement in dem Zustand entspricht, in welchem ein Fuß von dem Roboter 1 mit dem Boden in Kontakt ist. Unterdessen entspricht in dem Zustand, in welchem beide Beine von dem Roboter 1 mit dem Boden in Kontakt sind, das Kontaktabschnitt-Verkörperungselement einem virtuellen Element, welches zwischen den zwei Füßen 18R und 18L vorhanden ist.
  • Ferner bestimmt die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 eine Kontaktabschnitt-Jacobimatrix unter Verwendung des Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnisses r at, welches wie oben beschrieben bestimmt wird.
  • In diesem Fall wird gemäß der vorliegenden Ausführungsform die Bewegung von einem Kontaktabschnitt-Verkörperungselement durch die Bewegungen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4 ausgedrückt, sodass die Kontaktabschnitt-Jacobimatrix angegeben wird durch die Matrix Jc, welche die Beziehung verkörpert zwischen einer zeitlichen Veränderungsrate (einem Differenzialwert erster Ordnung) ↑Xc' von einem Vektor ↑Xc, welcher durch eine Anordnung bzw. Abfolge von den Positionen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 als Komponenten (= d↑Xc/dt) ausgebildet ist, d. h. der Vektor ↑Xc', welcher unter Verwendung der Bewegungsgeschwindigkeiten von den einzelnen Kontaktabschnitt-Verkörperungspunkten a1 bis a4 als den Komponenten davon aufgebaut ist, und einem Differenzialwert erster Ordnung ↑q' von dem oben erwähnten verallgemeinerten variablen Vektor ↑q, durch den nachstehend angegebenen Ausdruck 2-3. ↑Xc' = Jc * ↑q' Ausdruck 2-3
  • Der oben erwähnte Vektor ↑Xc bedeutet die Position und die Haltung von einem Kontaktabschnitt-Verkörperungselement, welches aus dem Kontaktabschnitt-Verkörperungspunkten a1 bis a4 gebildet ist, und die zeitliche Veränderungsrate ↑Xc' von ↑Xc bedeutet die Bewegungsgeschwindigkeit von dem Kontaktabschnitt-Verkörperungselement. Nachfolgend wird das ↑Xc als der Kontaktabschnitt-Verkörperungselement-Positionsvektor bezeichnet. Die Bewegungsgeschwindigkeit (Translationsgeschwindigkeit) von jedem von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 hat drei Freiheitsgrade, sodass ↑Xc' als ein Vektor ausgedrückt ist, welcher aus zwölf Komponenten (3 * 4 = 12) gebildet ist.
  • Hier ist der Kontaktabschnitt-Verkörperungselement-Positionsvektor ↑Xc in dem Fall, wo die Kontaktabschnitt-Verkörperungspunkte a1 bis a4 so gesetzt sind, dass sie mit den oben erwähnten vorbestimmten Punkten a1R bis a4R von dem rechten Fuß 18R übereinstimmen, durch ↑Xc_R bezeichnet, während der Kontaktabschnitt-Verkörperungselement-Positionsvektor ↑Xc in dem Fall, wo die Kontaktabschnitt-Verkörperungspunkte a1 bis a4 so gesetzt sind, dass sie mit den oben erwähnten vorbestimmten Punkten a1L bis a4L von dem linken Fuß 18L übereinstimmen, durch ↑Xc_L bezeichnet ist. Ferner wird die Jacobimatrix, welche die Beziehung zwischen einem Differenzialwert erster Ordnung ↑Xc_R' von dem ↑Xc_R (= d↑Xc_R/dt) und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q anzeigt, durch Jc_R bezeichnet, während die Jacobimatrix, welche die Beziehung zwischen dem Differenzialwert erster Ordnung ↑Xc_L' von dem ↑Xc_L (= d↑Xc_L/dt) und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q angibt, mit Jc_L bezeichnet ist. Mit anderen Worten treffen ↑Xc_L' = Jc_L * ↑q' und ↑Xc_R' = Jc_R * ↑q' zu.
  • Zu diesem Zeitpunkt wird die Kontaktabschnitt-Jacobimatrix Jc durch den nachfolgenden Ausdruck 2-4 angegeben. Jc = r at * Jc_R + (1 – r at) * Jc_L Ausdruck 2-4
  • Gemäß der vorliegenden Ausführungsform berechnet daher die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 die Jacobi-Matrizen Jc_R und Jc_L von der rechten Seite von dem Ausdruck 2-4 und die rechte Seite von dem Ausdruck 2-4 wird aus den berechneten Werten von den Jacobi-Matrizen Jc_R und Jc_L und dem Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at berechnet, welches wie oben beschrieben berechnet wird, um auf diese Weise die Kontaktabschnitt-Jacobimatrix Jc zu berechnen.
  • In diesem Fall empfängt die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 die Bewegungsgeschwindigkeit von dem Unterkörper 10, die Messwerte vom den Lagewinkel und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) von dem Unterkörper 10, und die Messwerte von den Drehwinkeln und die zeitlichen Veränderungsraten (Winkelgeschwindigkeiten) von Gelenken von jedem von den Beingliedern 3R und 3L, um die oben erwähnten Jacobi-Matrizen Jc_R und Jc_L zu berechnen. Dann berechnet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 die oben erwähnten Jacobi-Matrizen Jc_R und Jc_L aus den empfangenen Messwerten.
  • Somit wird in der Verarbeitung, welche von der Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 durchgeführt wird, das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at bestimmt auf der Basis von den Messwerten von den Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L, welche auf den Roboter 1 einwirken (im weiteren Sinne auf der Basis der Bodenkontaktzustände von beiden Füßen 18R und 18L). Ferner werden die Jacobi-Matrizen Jc_R und Jc_L auf der Basis der Messwerte von vorbestimmten Komponenten von dem verallgemeinerten variablen Vektor ↑q und dem Differenzialwert erster Ordnung ↑q' davon berechnet. Dann wird die Kontaktabschnitt-Jacobimatrix Jc gemäß dem oben erwähnten Ausdruck 2-4 aus den berechneten Werten von den Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at und den Jacobi-Matrizen Jc_R und Jc_L berechnet.
  • Zusätzlich, wenn der Nenner von der rechten Seite von dem oben erwähnten Ausdruck 2-2a oder 2-2b als im Wesentlichen konstant gehalten betrachtet werden kann, dann kann das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at gemäß einem Ausdruck bestimmt werden, welcher erlangt wird, indem der Nenner von der rechten Seite von dem Ausdruck 2-2a oder 2-2b durch die auf den gesamten Roboter 1 einwirkende Schwerkraft ersetzt wird (= Gesamtmasse des Roboters 1 * Schwerkraftbeschleunigungskonstante).
  • Wenn die oben erwähnte gewünschte Gangart, welche von dem Gangarterzeuger 71 erzeugt und ausgegeben wird (oder eine gewünschte Gangart, welche der Steuer/Regeleinrichtung 60 von der Außenseite her zugeführt wird), jeweils Sollwerte Fz_cmd_R und Fz_cmd_L von den Translationsbodenreaktionskraft-Vertikalkomponenten von den Füßen 18R und 18L umfasst, dann kann das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at gemäß einem Ausdruck bestimmt werden, welcher erlangt wird, indem Fz_act_R und Fz_act_L von dem vorangehenden Ausdruck 2-2a oder 2-2b durch Fz_cmd_R bzw. Fz_cmd_L ersetzt werden.
  • Alternativ kann beispielsweise das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at bestimmt werden, indem ein Filterwert, welcher erhalten wird, indem der Wert von r at, welcher gemäß einem Ausdruck berechnet wurde, der erhalten wird, indem Fz_act_R und Fz_act_L von dem Ausdruck 2-2a oder 2-2b durch Fz_cmd_R bzw. Fz_cmd_L ersetzt wird, Filtern von einer Tiefpasscharakteristik unterzogen wird, und ein Filterwert, welcher erhalten wird, indem der Wert von r at, welcher durch die Berechnung von dem Ausdruck 2-2a oder 2-2b berechnet wurde, Filter von einer Rumpelcharakteristik (einer Hochpasscharakteristik) unterzogen wird, kombiniert (aufaddiert) werden.
  • Mit anderen Worten kann eine Komponente auf einer Niederfrequenzseite von dem Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at auf der Basis von dem Verhältnis von den Sollwerten Fz_cmd_R und Fz_cmd_L bestimmt werden und eine Komponente auf einer Hochfrequenzseite von dem Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at kann auf der Basis von dem Verhältnis von den Messwerten von Fz_act_R und Fz_act_L bestimmt werden und dann können diese bestimmten Komponenten kombiniert werden (aufaddiert werden), um auf diese Weise das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at zu bestimmen.
  • In diesem Fall können zum Filter einer Niederpasscharakteristik und zum Filter einer Hochpasscharakteristik Filter verwendet werden, deren Transferfunktionen beispielsweise jeweils ausgedrückt sind durch 1/(Tc * s + 1) und Tc * s/(Tc * s + 1) (Tc: vorbestimmte Zeitkonstante).
  • In der vorliegenden Ausführungsform wurden die vier Punkte a1 bis a4 als die Kontaktabschnitt-Verkörperungspunkte verwendet, um die Bewegung eines Kontaktabschnitt-Verkörperungselements auszudrücken. Alternativ können jedoch drei oder fünf oder mehr Punkte als die Kontaktabschnitt-Verkörperungspunkte verwendet werden.
  • Die oben erwähnte Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 ist eine Funktionseinheit, welche sequenziell eine Verarbeitung durchführt, um eine Jacobimatrix zu berechnen, welche die Beziehung ausdrückt zwischen einem Zustandsbetrag, welcher als ein Soll-Zustandsbetrag vorbestimmt ist, um den Roboter 1 auf einen Sollwert zu steuern/regeln, welcher geeignet ist, eine stabile Gehbewegung sicherzustellen (nachfolgend in manchen Fällen als der zu steuernde/regelnde Zustandsbetrag bezeichnet) und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q ausdrückt (die Jacobimatrix wird nachfolgend als die Zustandsbetrag-Jacobimatrix bezeichnet).
  • Der Zustandsbetrag, welcher zu steuern/regeln ist, ist ein Zustandsbetrag, dessen Wert sich ändert, während sich der Wert von irgendeiner Komponente von dem verallgemeinerten variablen Vektor ↑q ändert. Insbesondere ist der Zustandsbetrag, welcher zu steuern/regeln ist, ein Zustandsbetrag, dessen Wert (momentaner Wert) erhalten wird, indem eine bestimmte Zustandsbetrag-Jacobimatrix mit dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q multipliziert wird.
  • In der vorliegenden Ausführungsform wird als der zu steuernde/regelnde Zustandsbetrag ein Satz von einem Gesamttranslationsimpuls ↑Ptotal und einem Gesamtdrehimpuls ↑Ltotal von dem Roboter 1 verwendet, welcher in dem globalen Koordinatensystem beobachtet wird (insbesondere ein Gesamtdrehimpuls ↑Ltotal, um einen vorbestimmten Referenzpunkt in dem globalen Koordinatensystem). Das globale Koordinatensystem in der vorliegenden Ausführungsform verwendet beispielsweise ein Koordinatensystem (ein sogenanntes Standbein-Koordinatensystem), dessen Ursprung auf eine Position gesetzt ist, basieren auf der Bodenkontaktposition von dem Fuß von einem Standbein von den Füßen 18R und 18L von dem Roboter 1 (z. B. eine Position in einer Bodenkontaktfläche).
  • Insbesondere ist der Gesamttranslationsimpuls ↑Ptotal ein Translationsimpuls, welcher daraus resultiert, dass der Impuls von dem Schwerpunkt von jedem Glied des Roboters 1 aufaddiert werden (= die Masse von jedem Glied * die Bewegungsgeschwindigkeit von dem Schwerpunkt von dem Glied). Mit anderen Worten bezeichnet ↑Ptotal den Translationsimpuls von dem Gesamtschwerpunkt von dem Roboter 1. ↑Ptotal bezeichnet in der vorliegenden Ausführungsform einen Vektor, welcher drei Freiheitsgrade hat (ein Vektor, welcher gebildet ist von Komponenten in den Richtungen von drei Achsen, nämlich der Rollachse, der Nickachse und der Gierachse).
  • In der folgenden Beschreibung bedeutet die Rollachse eine horizontale Achse in der Längsrichtung des Roboters 1, die Nickachse bedeutet eine horizontale Achse in der seitlichen Richtung des Roboters 1 und die Gierachse bedeutet eine Achse in der vertikalen Richtung (Gravitationsrichtung).
  • Der Gesamtdrehimpuls ↑Ltotal bezeichnet einen Drehimpuls, welcher erhalten wird, indem der Drehimpuls um den oben erwähnten Referenzpunkt, welcher der Translationsbewegung des Schwerpunkts von jedem Glied des Roboters 1 zurechenbar ist (= das Vektorprodukt von dem Positionsvektor von dem Schwerpunkt von jedem Glied relativ zu dem Referenzpunkt und der Translationsimpuls von dem Schwerpunkt), und der Drehimpuls, welcher einer Rotationsbewegung von jedem Glied um den Schwerpunkt zurechenbar ist (= das Trägheitsmoment von jedem Glied * die Winkelgeschwindigkeit um den Schwerpunkt von dem Glied), aufaddiert werden. Der Gesamtdrehimpuls ↑Ltotal in der vorliegenden Ausführungsform ist ein Vektor, welcher zwei Freiheitsgrade hat, mit Ausnahme einer Komponente um die Gierachse (d. h. ein Vektor, welcher gebildet ist von Komponenten um zwei Achsen, nämlich die Rollachse und die Nickachse). Der oben erwähnte Referenzpunkt ist ein Punkt, welcher auf dem oben erwähnten globalen Koordinatensystem voreingestellt ist (z. B. der Ursprung von dem Tragbein-Koordinatensystem).
  • Die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 bestimmt die Zustandsbetrag-Jacobimatrix entsprechend dem oben erwähnten Zustandsbetrag, welcher zu steuern/regeln ist. In diesem Fall ist die Zustandsbetrag-Jacobimatrix eine Matrix Js1, welche die Beziehung verkörpert zwischen einem Vektor ↑S1 (= [V↑P, ↑L]T; nachfolgend als der Zustandsbetragvektor ↑S1 bezeichnet), welcher von dem Gesamttranslationsimpuls ↑Ptotal und dem Gesamtdrehimpuls ↑Ltotal gebildet ist, welche als die Komponenten davon angeordnet sind, und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q gemäß dem unten angegebenen Ausdruck 3-1. ↑S1 = Js1 * ↑q' Ausdruck 3-1
  • In der vorliegenden Ausführungsform ist der Gesamttranslationsimpuls ↑Ptotal ein Vektor, welcher drei Freiheitsgrade hat, und der Gesamtdrehimpuls ↑Ltotal ist ein Vektor, welcher zwei Freiheitsgrade hat. Folglich ist ↑S1 ein Vektor, welcher von fünf Komponenten (3 + 2 = 5) gebildet ist.
  • Um die Zustandsbetrag-Jacobimatrix Js1 zu berechnen, empfängt die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 die Messwerte von der Bewegungsgeschwindigkeit von dem repräsentativen Glied (dem Unterkörper) 10 und den Lagewinkel – und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) davon, und die Messwerte von dem Drehwinkel von jedem Gelenk und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) davon. Dann berechnet die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 die Zustandsbetrag-Jacobimatrix Js1 aus den empfangenen Messwerten.
  • Die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 ist eine Funktionseinheit, welche eine Verarbeitung durchführt, um einen Sollwert zu bestimmen, welcher mit dem zu steuernden/regelnden Zustandsbetrag in Beziehung steht.
  • In der vorliegenden Ausführungsform ist der Sollwert, welcher mit dem Zustandsbetrag in Beziehung steht, welcher zu steuern/regeln ist, ein Sollwert ↑S1'_cmd von der zeitlichen Veränderungsrate (Differenzialwert erster Ordnung) ↑S1' von dem Zustandsbetragvektor ↑S1 (= d↑S1/dt).
  • In diesem Fall ist ↑S1' ein Vektor, welcher den Differenzialwert erster Ordnung ↑Ptotal' von dem Gesamttranslationsimpuls ↑Ptotal von dem Roboter 1 (= d↑Ptotal/dt) und den Differenzialwert erster Ordnung ↑Ltotal' von dem Gesamtdrehimpuls ↑Ltotal (= d↑Ltotal/dt) als seine Komponenten hat (= [↑Ptotal', ↑Ltotal']T). Folglich entspricht der Sollwert ↑S1'_cmd von ↑S1' (nachfolgend als der Zustandsbetrag-Sollwertvektor ↑S1'_cmd bezeichnet) dem Sollwert von der gesamten Trägheitskraft (mit Ausnahme einer Momentenkomponente um die Gierachse), welche durch eine Bewegung des gesamten Roboters 1 erzeugt wird.
  • Insbesondere ist der Zustandsbetrag-Sollwertvektor ↑S1'_cmd ein Vektor, welcher den Sollwert von ↑Ptotal' und den Sollwert von ↑Ltotal' als seine Komponenten hat. Ferner entspricht der Sollwert von ↑Ptotal' von ↑S1'_cmd dem Sollwert von der Gesamttranslationsträgheitskraft, welche durch die Bewegung des gesamten Roboters 1 erzeugt wird (der Sollwert von der Translationsträgheitskraft von dem Gesamtschwerpunkt von dem Roboter 1), während der Sollwert von ↑Ltotal' dem Sollwert von der Gesamtmomentträgheitskraft entspricht (mit Ausnahme der Komponente um die Gierachse), welche durch eine Bewegung des gesamten Roboters 1 erzeugt wird.
  • Ferner bestimmt gemäß der vorliegenden Ausführungsform die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 den oben erwähnten Zustandsbetrag-Sollwertvektor ↑S1'_cmd wie nachstehend beschrieben.
  • Die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 berechnet den Sollwert ↑Ptotal'_cmd von der zeitlichen Änderungsrate ↑Ptotal' von dem Gesamttranslationsimpuls ↑Ptotal und den Sollwert ↑Ltotal'_cmd von der zeitlichen Änderungsrate ↑Ltotal' von dem Gesamtdrehimpuls ↑Ptotal in dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd, indem eine separate arithmetische Verarbeitung durchgeführt wird.
  • Insbesondere die Verarbeitung zur Berechnung von ↑Ptotal'_cmd betrachtend, berechnet die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 eine Differenz ↑Δr gc zwischen einer Soll-Position ↑r gc_cmd von dem Gesamtschwerpunkt von dem Roboter 1 in dem globalen Koordinatensystem und dem Messwert von einer Ist-Position ↑r gc_act (= ↑r gc_cmd – ↑r gc_act), und einen Differenzialwert erster Ordnung ↑Δr gc' von der Differenz ↑Δr gc (= d↑Δ r gc/dt).
  • In diesem Fall wird die Soll-Position ↑r gc_cmd von dem Gesamtschwerpunkt von dem Roboter 1 in die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 eingegeben von dem oben erwähnten Gangarterzeuger 71. Der Messwert von der Ist-Position ↑r gc_act von dem Gesamtschwerpunkt wird sequenziell berechnet von der Steuer/Regeleinrichtung 60 gemäß einem allgemein bekannten Verfahren (z. B. einem Verfahren, welches einen Kalman-Filter verwendet), hauptsächlich aus dem Messwert von dem Drehwinkel von jedem Gelenk, und der berechnete Messwert wird in die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 eingegeben.
  • Nebenbei bemerkt, bezeichnet jeder von ↑r gc_cmd und ↑r gc_act einen Vektor, welcher von Positionen in den Richtungen von drei Achsen gebildet ist, nämlich der Richtung von der Rollachse, der Richtung von der Nickachse und der Richtung von der Gierachse (d. h. ein Positionsvektor, welcher drei Freiheitsgrade hat).
  • Dann berechnet die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 eine Rückkopplung-manipulierte Variable, um die oben erwähnte Differenz ↑Δr gc zu null zu konvergieren, gemäß einem vorbestimmten Rückkopplungssteuer/regelgesetz, und bestimmt die berechnete Rückkopplung-manipulierte Variable als den Sollwert ↑Ptotal'_cmd von ↑Ptotal'.
  • In diesem Fall bestimmt insbesondere die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 ↑Ptotal'_cmd gemäß einem Proportional-Differenzial-Gesetz (PD-Gesetz), sodass die oben erwähnte Differenz ↑Δr gc zu null konvergiert. Mit anderen Worten, bestimmt die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 ↑Ptotal'_cmd gemäß dem folgenden Ausdruck 4-1 aus der Differenz ↑Δr gc und einem Differenzialwert erster Ordnung↑Δr gc' davon. ↑Ptotal'_cmd = Kp1 * ↑Δr gc + Kv1 * ↑Δr gc' Ausdruck 4-1
  • In dem Ausdruck 4-1 bezeichnen Kp1 und Kv1 jeweils eine proportionale Verstärkung und eine differenzielle Verstärkung von im Voraus festgelegten Werten. Diese Verstärkungen Kp1 und Kv1 werden ausgedrückt durch Diagonalmatrizen (Diagonalmatrizen dritter Ordnung in der vorliegenden Ausführungsform).
  • Betreffend die Verarbeitung zur Berechnung von Ltotal'_cmd berechnet die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 eine Differenz ↑Δrg_xy zwischen der horizontalen Position von einem Soll-ZMP von dem Roboter 1 auf, dem globalen Koordinatensystem (die Position in der Richtung der Rollachse und die Position in der Richtung der Nickachse) und dem Messwert von einer horizontalen Ist-Position ↑r gc_act_xy von dem Gesamtschwerpunkt von dem Roboter 1 (= die Komponente von dem oben erwähnten ↑r gc_act in der Richtung der Rollachse und die Komponente davon in der Richtung der Nickachse). In diesem Fall wird die horizontale Position von dem Soll-ZMP von dem Roboter 1 in die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 von dem Gangarterzeuger 71 eingegeben.
  • Ferner berechnet die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 einen Neigungswinkel ↑θpend (ein Neigungswinkel um zwei Achsen, nämlich die Rollachse und die Nickachse) relativ zu der vertikalen Richtung von einem invertierten Pendel in dem Fall, wo der Gesamtschwerpunkt von dem Roboter 1 als der Massenpunkt von dem invertierten Pendel angesehen wird, welches ein Soll-ZMP als seinen Lagerpunkt verwendet, und auch den Differenzialwert erster Ordnung ↑θpend' davon (= d↑θpend/dt) aus der oben erwähnten Differenz ↑Δr g_xy berechnet. Insbesondere, wenn die Komponente von ↑θpend um die Rollachse und die Komponente davon um die Nickachse jeweils bezeichnet werden durch θpend_x und θpend_y, dann werden θpend_x und θpend_y jeweils aus der Komponente ↑Δr g_y von der oben erwähnten Differenz↑Δr g_xy in der Richtung der Nickachse und der Komponente↑Δr g_x davon in der Richtung der Rollachse berechnet, gemäß den Ausdrücken 4-2a und 4-2b, welche nachstehend angegeben sind. θpend_x = tan – 1(Δr g_y/h) ≈ Δr g_y/h Ausdruck 4-2a θpend_y = tan – 1(Δr g_x/h) ≈ Δr g_x/h Ausdruck 4-2b
  • Dann werden die Differenzialwerte erster Ordnung (zeitliche Veränderungsraten) von diesen θpend_x und θpend_y berechnet, um auf diese Weise jede Komponente von ↑θpend_xy' zu berechnen.
  • In den Ausdrücken 4-2a und 4-2b bezeichnet ”h” einen bestimmten Wert, welcher im Voraus als eine mittlere Höhe des Gesamtschwerpunkts des Roboters 1 eingestellt ist.
  • Nachfolgend berechnet gemäß einem vorbestimmten Rückkopplungssteuer/regelgesetz die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 die Rückkopplung-manipulierte Variable (Steuer/Regeleingabe), um den Neigungswinkel ↑θpend (= [θpend_x, θpend_y]T) von dem invertierten Pendel, welches wie oben beschrieben berechnet ist, zu null zu konvergieren und bestimmt die berechnete Rückkopplung-manipulierte Variable als den Sollwert ↑Ltotal'_cmd von ↑Ltotal'.
  • In diesem Fall bestimmt insbesondere die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 ↑Ltotal'_cmd derart, dass der oben erwähnte Neigungswinkel ↑θpend zu null konvergiert, gemäß dem PD-Gesetz (Proportional-Differenzial-Gesetz). Insbesondere bestimmt die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 ↑Ltotal'_cmd gemäß dem folgenden Ausdruck 4-3 aus dem Neigungswinkel ↑θpend und dem Differenzialwert erster Ordnung ↑θpend' davon. ↑Ltotal'_cmd = Kp2 * ↑θpend + Kv2 * ↑θpend' Ausdruck 4-3
  • In dem Ausdruck 4-3 bezeichnen Kp2 und Kv2 jeweils eine proportionale Verstärkung und eine differenzielle Verstärkung von im Voraus gesetzten bestimmten Werten. Diese Verstärkungen Kp2 und Kv2 werden durch Diagonalmatrizen (Diagonalmatrizen zweiter Ordnung in der vorliegenden Ausführungsform) ausgedrückt.
  • Somit werden der Sollwert von ↑Ptotal'_cmd von ↑Ptotal' und der Sollwert ↑Ltotal'_cmd von ↑Ltotal' durch die oben beschriebene Verarbeitung bestimmt, um auf diese Weise den Zustandsbetrag-Sollwertvektor ↑S1'_cmd (= [↑Ptotal'_cmd, ↑Ltotal'_cmd]T) zu bestimmen.
  • In diesem Fall wird gemäß der vorliegenden Ausführungsform ↑Ptotal'_cmd von ↑S1'_cmd derart bestimmt, dass die Position von dem Gesamtschwerpunkt ↑r gc_act von dem Roboter 1 zu der Soll-Position ↑r gc_cmd konvergiert.
  • Ferner wird ↑Ltotal'_cmd von ↑S1'_cmd derart bestimmt, dass in dem Fall, wo der tatsächliche Gesamtschwerpunkt von dem Roboter 1 als der Massepunkt von einem invertierten Pendel angesehen wird, der Neigungswinkel ↑θpend von dem invertierten Pendel zu null konvergiert (mit anderen Worten, dass der tatsächliche Gesamtschwerpunkt von dem Roboter 1 zu einer Position über einem Soll-ZMP in der vertikalen Richtung konvergiert).
  • Zusätzlich sind θpend_x und θpend_y annähernd proportional zu Δr g_y und Δr g_x. Folglich kann die Verarbeitung zur Berechnung von θpend_x und θpend_y weggelassen werden und ↑Ltotal'_cmd_xy kann derart bestimmt werden, dass Δr g_y und Δr g_x zu null konvergieren, gemäß einem Rückkopplungssteuer/regelgesetz (z. B. dem PD-Gesetz). Beispielsweise kann ↑Ltotal'_cmd_xy gemäß einem Ausdruck berechnet werden, in welchem ↑θpend von der rechten Seite des Ausdrucks 4-3 durch einen Vektor [Δr g_y, Δr g_x]T ersetzt wurde.
  • Somit führt die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 die Verarbeitung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 durch, nachdem die Verarbeitung durch die Grundparametergruppebestimmungseinrichtung 81, die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82, die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 und die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 durchgeführt ist.
  • Die Steuer/Regeleingabe-Bestimmungseinrichtung 85 ist eine Funktionseinheit, welche sequentiell die Verarbeitung zur Bestimmung eines Gelenk-Soll-Antriebsdrehmoments von jedem Gelenk des Roboters 1 durchführt, welches benötigt wird, um einen Sollwert zu erreichen, welcher mit einem Zustandsbetrag in Beziehung steht, welcher zu steuern/regeln ist (der oben erwähnte Zustandsbetrag-Sollwertvektor ↑S1'_cmd). Nachfolgend wird ein Vektor, welcher von Gelenk-Soll-Antriebsdrehmomenten von Gelenken gebildet ist, welche durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 bestimmt werden, welche als die Komponenten davon angeordnet sind, durch das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd bezeichnet.
  • In der Beschreibung der vorliegenden Ausführungsform ist ↑τ1_cmd ein Vektor von derselben Ordnung wie der oben erwähnte Antriebskraft-abhängige verallgemeinerte Kraftvektor ↑τ (derselben Ordnung wie der verallgemeinerte variable Vektor ↑q). In diesem Fall sind die Komponenten von ↑τ1_cmd, die Komponenten, welche der Position und der Haltung von dem repräsentativen Glied (dem Unterkörper 10) von dem Roboter 1 entsprechen, beide null.
  • Hier wird der Basisausdruck, welcher für die Verarbeitung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 verwendet wird, nachstehend beschrieben.
  • In dem Fall, wo ein Abschnitt von dem Roboter 1 in Kontakt mit der Außenwelt einer äußeren Kraft unterworfen wird, wird ein Roboterbewegungsmodell, welches die Beziehung zwischen einer Bewegung des Roboters 1 und einer Kraft (eine Bewegungsgleichung), ausgedrückt durch den folgenden Ausdruck 5-1, welcher hergeleitete ist, indem ein Äquivalent von dem Einfluss der äußeren Kraft dem oben erwähnten Ausdruck 1-1 hinzugefügt wird, welcher ein Roboterbewegungsmodell in dem Fall verkörpert, wo die äußere Kraft null ist. M * ↑q'' + ↑N + ↑G + JcT * ↑Fc = ↑τ Ausdruck 5-1
  • In dem Ausdruck 5-1 bezeichnet ↑Fc eine äußere Kraft, welche auf das Kontaktabschnitt-Verkörperungselement einwirkt, welche durch eine äußere Kraft bewirkt wird, die auf den Abschnitt von dem Roboter 1 einwirkt, welcher mit der äußeren Welt in Kontakt ist, d. h. den Fuß 18R und/oder den Fuß 18L in der vorliegenden Ausführungsform (insbesondere eine gesamte äußere Kraft, welche auf den Roboter 1 einwirkt durch die Vermittlung von dem Fuß 18R und/oder dem Fuß 18L, wenn das Kontaktabschnitt-Verkörperungselement ausgedrückt ist als der Abschnitt, auf welchen die äußere Kraft einwirkt). JcT bezeichnet eine transponierte Matrix von der Kontaktabschnitt-Jacobimatrix Jc.
  • Wie nachstehend beschrieben, kann der oben erwähnte Ausdruck 5-1 in den Ausdruck 5-11 transformiert werden, was später erörtert wird, indem die Bewegung eines Kontaktabschnitts des Roboters 1 definiert wird, welcher einer äußeren Kraft ausgesetzt ist, d. h. die Bewegung von dem oben erwähnten Kontaktabschnitt-Verkörperungselement (es wird angenommen, dass die Bewegung einer vorbestimmten Bewegung gleichkommt).
  • Multiplizieren beider Seiten des Ausdrucks 5-1 mit einer Matrix Jc * M–1 ergibt den folgenden Ausdruck 5-2. Jc * ↑q'' + Jc * M–1 * (↑N + ↑G) + Jc * M–1 * JcT * ↑Fc = Jc * M–1 * ↑τ Ausdruck 5-2
  • Unterdessen wird der folgende Ausdruck 5-3 hergeleitet, indem beide Seiten des oben erwähnten Ausdrucks 2-3, welche die Beziehung anzeigt zwischen einem Differenzialwert erster Ordnung ↑Xc' von dem Kontaktabschnitt-Verkörperungselement-Positionsvektor↑Xc als die Bewegungsgeschwindigkeit von dem Kontaktabschnitt-Verkörperungselement und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q, einer Differentiation erster Ordnung unterzogen werden und indem dann eine Ausdrucksbildung. durchgeführt wird. Jc * ↑q'' = ↑Xc'' – Jc' * ↑q' Ausdruck 5-3
  • In diesem Ausdruck 5-3 bezeichnet Jc' einen Differenzialwert erster Ordnung von der oben erwähnten Kontaktabschnitt-Jacobimatrix Jc (= dJc/dt) und ↑q'' bezeichnet einen Differenzialwert zweiter Ordnung von ↑q (= d2↑q/dt2).
  • Ferner wird der folgende Ausdruck 5-4 hergeleitet, indem der Ausdruck 5-3 in den Ausdruck 5-2 substituiert wird. ↑Xc'' – Jc' * ↑q' + Jc * M–1 * (↑N + ↑G) + Jc * M–1 * JcT * ↑Fc = Jc * M–1 * ↑τ Ausdruck 5-4
  • Hier wird eine Gewichtungsmatrix Wat (Diagonalmatrix) verwendet, um eine Matrix Jc# und eine Matrix Rc, welche jeweils durch die folgenden Ausdrücke 5-5 und 5-6 definiert sind, einzuführen. Jc# ≡ WatT * JcT * RcT Ausdruck 5-5 Rc ≡ ((Jc * Wat * JcT)–1)T Ausdruck 5-6
  • Die Matrix Jc#, welche durch den Ausdruck 5-5 definiert ist, bedeutet eine verallgemeinerte gewichtete pseudo-inverse Matrix von der Kontaktabschnitt-Jacobimatrix Jc.
  • In diesem Fall kann als die oben erwähnte Gewichtungsmatrix Wat beispielsweise die inverse Matrix M–1 von der oben erwähnten Trägheitsmatrix M verwendet werden. Wenn Wat = M–1, dann (Jc#)T = Rc * Jc * Wat = Rc * Jc * M–1. Folglich wird der folgende Ausdruck 5-7 hergeleitet, indem beide Seiten von dem vorangehend erwähnten Ausdruck 5-4 mit der Matrix Rc multipliziert werden (vorausgesetzt, dass Wat = M–1).
  • Insbesondere wird der oben erwähnte Ausdruck 5-1 in den nachfolgenden Ausdruck 5-7 unter Verwendung von Matrizen Jc# und Rc transformiert, welche jeweils durch die folgenden Ausdrücke 5-8 und 5-9 definiert sind, welche als Wat = M–1 gemäß den Ausdrücken 5-5 und 5-6 erhalten werden. Rc * ↑Xc'' – Rc * Jc' * ↑q' + (Jc#)T * (↑N + ↑G) + ↑Fc = (Jc#)T * ↑τ Ausdruck 5-7 wobei Jc# ≡ (M–1)T * JcT * RcT Ausdruck 5-8 Rc ≡ ((Jc * M–1 * JcT)–1)T Ausdruck 5-9
  • M–1 bezeichnet eine Diagonalmatrix, sodass (M–1)T = M–1.
  • Hier wird ein Fall angenommen, wo eine Bewegung von dem Kontaktabschnitt-Verkörperungselement definiert ist und der Differenzialwert zweiter Ordnung ↑Xc'' von dem Kontaktabschnitt-Verkörperungselement-Positionsvektor ↑Xc (= d2↑Xc/dt2) derart gesetzt ist, dass er mit einem vorbestimmten Sollwert ↑C übereinstimmt (ein Fall, wo die Bewegungsbeschleunigungen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 jeweils so gesetzt sind, dass sie mit bestimmten vorbestimmten Sollwerten übereinstimmen). Mit anderen Worten wird ein Fall angenommen, wo die Bewegungen der Füße 18R und 18L, welche Kontaktabschnitte sind, derart definiert sind, dass ↑Xc'' ↑C gleicht.
  • In diesem Fall wird der folgende Ausdruck 5-10 aus dem obigen Ausdruck 5-7 hergeleitet. ↑Fc = (Jc#)T * (↑τ – ↑N – ↑G) – Rc * ↑C – Rc * Jc' * ↑q' Ausdruck 5-10
  • Dieser Ausdruck 5-10 wird in den obigen Ausdruck 5-1 eingesetzt und ferner werden eine Matrix Tc, ein Vektor ↑Cc, eine Matrix Pc und ein verallgemeinerter Kraftvektor ↑τcmpn, welche jeweils durch die folgenden Ausdrücke 5-12, 5-13, 5-14 und 5-15 definiert sind, verwendet, um auf diese Weise den folgenden Ausdruck 5-11 bereitzustellen. M * ↑q'' + Tc * ↑q' = Pc * (↑τ – ↑τcmpn) Ausdruck 5-11 wobei Tc ≡ –JcT * Rc * Jc' Ausdruck 5-12 ↑Cc ≡ –JcT * Rc * ↑C Ausdruck 5-13 Pc ≡ I – JcT * (Jc#)T Ausdruck 5-14 ↑τcmpn ≡ (↑N + ↑G) – Pc–1 * ↑Cc Ausdruck 5-15
  • Der obige Ausdruck 5-11 bezeichnet die Bewegungsgleichung von dem Roboter 1, welche Anwendung findet, wenn die Bewegung von einem Kontaktabschnitt-Verkörperungselement spezifiziert wird, in einer Form, welche eine äußere Kraft ↑Fc ausschließt.
  • Ein willkürlicher Zustandsbetrag ↑S, welcher einen Wert hat, der von einem oder mehreren Komponenten von dem oben erwähnten verallgemeinerten variablen Vektor ↑q von dem Roboter 1 abhängt, wird angenommen und es wird auch angenommen, dass die Beziehung zwischen dem ↑S und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q bezeichnet ist durch den folgenden Ausdruck 5-16, indem eine bestimmte Jacobimatrix Js verwendet wird. ↑S = Js * ↑q' Ausdruck 5-16
  • Dieser Ausdruck 5-16 ist eine verallgemeinerte Version von dem obigen Ausdruck 3-1. Obwohl ↑S in dem Ausdruck 5-16 kein Vektor sein muss (kann ein Skalar sein), wird er als ein Vektor bezeichnet aus Bequemlichkeit der Konsistenz mit dem obigen Ausdruck 3-1 in dieser Beschreibung.
  • Hier wird der obige Ausdruck 5-11 in den nachfolgenden Ausdruck 5-20 transformiert unter Verwendung des Vergleichsausdrucks von dem folgenden Ausdruck 5-17, welcher aus dem obigen Ausdruck 5-16 hergeleitet ist. Js * ↑q'' = ↑S' – Js' * ↑q' Ausdruck 5-17 ↑S' + (Js * M–1 * ↑c – Js') * ↑q' = (Js * M–1 * Pc) * (↑τ – ↑τcmpn) Ausdruck 5-20
  • Somit ermöglicht es die Bestimmung der Werte von den Matrizen Js, M, Tc, Js' und Pc in dem Ausdruck 5-20 und der Werte von ↑S', ↑q', und ↑τcmpn, den Antriebskraft-abhängigen verallgemeinerten Kraftvektor ↑τ (im weiteren Sinne, das Gelenkantriebsdrehmoment von jedem Gelenk) gemäß dem obigen Ausdruck 5-20 zu bestimmen.
  • Hier ist die Matrix von der rechten Seite des Ausdrucks 5-20 (Js * M–1 * Pc) (nachfolgend als As ≡ Js * M–1 * Pc definiert) nicht notwendigerweise eine reguläre Matrix (d. h. eine inverse Matrix As–1 von As ist nicht notwendigerweise vorhanden).
  • Daher wird in der vorliegenden Ausführungsform ↑τ gemäß einem Ausdruck 5-22 berechnet, welcher nachstehend angegeben ist, unter Verwendung einer Matrix Bs, welche aus der Matrix As gemäß einem nachstehend angegebenen Ausdruck 5-21a oder 5-21b bestimmt ist.
  • In dem Fall, wo As (≡ Js * M–1 * Pc) eine reguläre Matrix ist; Bs = As–1 Ausdruck 5-21a
  • In dem Fall, wo As (≡ Js * M–1 * Pc) keine reguläre Matrix ist; Bs = AsT * (k * I + As * AsT)–1 Ausdruck 5-21b wobei
  • k:
    eine positive reelle Zahl, welche derart bestimmt ist, dass (k * I + As * AsT) eine reguläre Matrix wird.
    ↑τ = Bs * (↑S' + (Js * M–1 * Tc – Js') * ↑q') + ↑τcmpn Ausdruck 5-22
  • Dieser Ausdruck 5-22 ist der Basisausdruck, welcher verwendet wird, um das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd in der vorliegenden Ausführungsform zu berechnen. In diesem Fall bedeutet die Matrix Bs, welche durch den obigen Ausdruck 5-21b bestimmt ist, eine pseudoinverse Matrix von der Matrix As.
  • In der folgenden Beschreibung wird für eine willkürliche Matrix A ”A–1” eine Matrix bedeuten, welche einer Matrix B entspricht, welche durch den nachfolgenden Ausdruck 5-23 bestimmt ist (eine pseudoinverse Matrix), wenn die Matrix A keine reguläre Matrix ist. Andererseits, wenn die Matrix A eine reguläre Matrix ist, dann wird A–1 eine inverse Matrix von A in ihrer Grundbedeutung bedeuten. Ferner, ob A eine reguläre Matrix ist oder nicht, wird A–1 aus Bequemlichkeit als die inverse Matrix von A bezeichnet. B = AT * (k * I + A * AT)–1 Ausdruck 5-23 wobei
  • k
    eine positive reelle Zahl, welche derart bestimmt ist, dass (k * I + A * AT) eine reguläre Matrix wird.
  • In dem obigen Ausdruck 5-22 bezeichnet die Matrix Bs die inverse Matrix von As (= As–1) in der vorangehend erwähnten Bedeutung.
  • Zusätzlich können beide Seiten von dem obigen Ausdruck 5-20 mit einer geeigneten Matrix multipliziert werden, um einen Ausdruck zur Berechnung von↑τ zu erzeugen. Beispielsweise kann der Ausdruck zur Berechnung von ↑τ in derselben Weise erzeugt werden wie oben beschrieben, auf der Basis eines Ausdrucks, welcher erhalten wird, indem beide Seiten des Ausdrucks 5-20 von links mit einer Matrix Rsc multipliziert werden, welche definiert ist durch Rsc ≡ (Js * PcT * M–1 * JsT)–1)T. In diesem Fall bewirkt Multiplizieren beider Seiten des Ausdrucks 5-20 von links mit der Matrix Rsc, dass beide Seiten des Ausdrucks 5-20 in die Dimension eines verallgemeinerten Kraftvektors umgewandelt wenden. Ferner wird der Ausdruck zur Berechnung von ↑τ ein Ausdruck sein, welcher erhalten wird, indem die Matrix Bs von dem Ausdruck 5-22 durch eine Matrix ((Rsc * Js * M–1 * Pc)–1 * Rsc) ersetzt wird.
  • Basierend auf der obigen Beschreibung wird das Folgende insbesondere die Verarbeitung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 beschreiben.
  • Um das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd zu berechnen, empfängt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 der Reihe nach die Trägheitsmatrix M, den Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-linearer-Termverallgemeinerter Kraftvektor (↑N + ↑G)), welche durch die Grundparametergruppe-Bestimmungseinrichtung 81 bestimmt werden, die Kontaktabschnitt-Jacobimatrix Jc, welche durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 bestimmt wird, die Zustandsbetrag-Jacobimatrix Js1, welche durch die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 bestimmt wird, und den Zustandsbetrag-Sollwertvektor ↑S1'_cmd, welcher von der Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 bestimmt wird. Zusätzlich empfängt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 der Reihe nach die Messwerte von den zeitlichen Änderungsraten (die Differenzialwerte erster Ordnung) ↑q' von dem verallgemeinerten variablen Vektor ↑q (die Messwerte von der Bewegungsgeschwindigkeit von dem Unterkörper 10 und die zeitliche Änderungsrate (Winkelgeschwindigkeit) von dem Haltungswinkel und den Messwert von der zeitlichen Änderungsrate (Winkelgeschwindigkeit von dem Drehwinkel von jedem Gelenk), und erhält auch eine Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C, welche später erörtert wird.
  • Dann bestimmt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 den Wert von jedem Parameter, welcher verwendet wird, um die rechte Seite des Ausdrucks 5-22 zu berechnen, unter Verwendung eines vorbestimmten Eingabewerts, und berechnet die rechte Seite von dem Ausdruck 5-22 unter Verwendung des bestimmten Parameters, um auf diese Weise das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd zu berechnen.
  • Insbesondere führt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 eine Verarbeitung durch, um die Matrizen Tc und Pc und den verallgemeinerten Kraftvektor ↑τcmpn zu berechnen, welche notwendig sind, um den Ausdruck 5-22 zu berechnen, unter Verwendung eines vorbestimmten Eingabewerts.
  • In diesem Fall verwendet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 die Trägheitsmatrix M, den Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-Linearer-Termverallgemeinerter Kraftvektor (↑N + ↑G)) und die Kontaktabschnitt-Jacobimatrix Jc, welche empfangen wurden, um Tc, Pc und ↑τcmpn gemäß den Definitionsgleichungen von den obigen Ausdrücken 5-8, 5-9, 5-12, 5-13, 5-14 und 5-15 zu berechnen.
  • Insbesondere berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 die Matrizen Jc# und Rc gemäß den obigen Definitionsgleichungen 5-8 und 5-9 aus der empfangenen Trägheitsmatrix M und der Kontaktabschnitt-Jacobimatrix Jc. Ferner berechnet aus diesen Matrizen Jc# und Rc und dem empfangenen Jc die Steuer/Regeleingabe-Bestimmungseinrichtung 85 die Matrizen Tc und Pc gemäß den obigen Definitionsgleichungen 5-12 und 5-14. In diesem Fall wird Jc', d. h. die zeitliche Änderungsrate (ein Differenzialwert erster Ordnung) von Jc aus den Zeitreihen von dem empfangenen Jc berechnet.
  • Ferner berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 den Vektor Cc gemäß der Definitionsgleichung von dem obigen Ausdruck 5-13 aus dem empfangenen Jc und dem berechneten Rc und den Sollwert ↑C von dem Differenzialwert zweiter Ordnung ↑Xc'' von dem Kontaktabschnitt-Verkörperungselement-Positionsvektor ↑Xc (die Bewegungsbeschleunigungen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4). Nachfolgend wird der Sollwert ↑C als die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C bezeichnet.
  • Hier werden gemäß der vorliegenden Ausführungsform die Soll-Beschleunigungen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4, welche die Komponenten der Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C sind, für alle Kontaktabschnitt-Verkörperungspunkte a1 bis a4 auf null voreingestellt. Mit anderen Worten werden gemäß der vorliegeriden Ausführungsform die Kontaktabschnitt-Verkörperungspunkte a1 bis a4, welche ein Kontaktabschnitt-Verkörperungselement bilden, welches relativ zu einem Boden stationär bleibt, oder sich mit einer konstanten Geschwindigkeit bewegt, als ein Ziel für die Bewegungen der Füße 18R und 18L etabliert, welche als die Kontaktabschnitte dienen.
  • Dann berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 den Vektor ↑Cc gemäß der Definitionsgleichung von dem obigen Ausdruck 5-13 unter Verwendung der Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C. In der vorliegenden Ausführungsform ist die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C ein Nullvektor, sodass alle Komponenten von dem Vektor ↑Cc null sind. Folglich ist faktisch die Verarbeitung zur Berechnung von ↑Cc unnötig und die Komponenten von ↑Cc können einfach auf null gesetzt werden.
  • Ferner berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 ↑τcmpn gemäß der Definitionsgleichung von dem obigen Ausdruck 5-15 aus dem obigen ↑Cc, dem berechneten Pc und den empfangenen ↑N und ↑G.
  • Die Verarbeitung zur Berechnung von Tc, Pc und ↑τcmpn wird durchgeführt, wie oben beschrieben.
  • Zusätzlich kann in dem Fall, wo ↑N + ↑G ≈ ↑G zu trifft, ↑τcmpn berechnet werden gemäß einem Ausdruck, welcher aus dem obigen Ausdruck 5-15 ohne ↑N abgeleitet ist.
  • Die Steuer/Regeleingabe-Bestimmungseinrichtung 85 führt die Verarbeitung zur Berechnung der Matrix Bs durch, welche für die Berechnung des Ausdrucks 5-22 verwendet wird. In der folgenden Beschreibung wird die Matrix Bs entsprechend dem zu steuernden/regelnden Zustandsbetrag mit Bs1 bezeichnet.
  • In diesem Fall berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 die Matrix Bs1 aus der empfangenen Trägheitsmatrix M und der Zustandsbetrag-Jacobimatrix Js1 und dem oben erwähnten berechneten Wert von Pc. Insbesondere wird die inverse Matrix As–1 von der Matrix (Js1 * M–1 * Pc) (≡ As) als Bs1 bestimmt. Wie oben beschrieben, wenn As keine reguläre Matrix ist, dann ist As–1 eine pseudoinverse Matrix, welche gemäß dem obigen Ausdruck 5-23 berechnet wird.
  • Nachfolgend berechnet die Steuer/Regeleingabe-Bestimmungseinrichtung 85 ↑τ, indem die Berechnung von der rechten Seite von dem obigen Ausdruck 5-22 durchgeführt wird (insbesondere die Berechnung von einem Ausdruck, welcher hergeleitet wird, indem jeweils Bs, ↑S', Js, Js' und ↑q' von der rechten Seite von dem Ausdruck 5-22 durch den Messwert ↑q', Bs1, ↑S1'cmd, Js1 und Js1' ersetzt werden), indem die berechneten Werte von Bs1, Tc und ↑τcmpn, der empfangene Zustandsbetrag-Sollwertvektor ↑S1'_cmd, die Zustandsbetrag-Jacobimatrix Js1 und die Trägheitsmatrix M und der Messwert von ↑q' verwendet werden, und bestimmt den berechneten Wert von ↑τ als das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd. In diesem Fall wird Js1' (= der Differenzialwert erster Ordnung von Js1) aus den Zeitreihen von der Zustandsbetrag-Jacobimatrix Js1 berechnet.
  • In der vorliegenden Ausführungsform ist das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd bestimmt durch die Verarbeitung, welche von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 durchgeführt wird, welche oben beschrieben ist, auf der Basis der berechneten Werte von M, ↑N, ↑G, Jc und Js1 (oder der berechneten Werte von M, ↑G, Jc und Js1), dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd, dem Messwert von ↑q' und der Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C.
  • In diesem Fall wird ↑τ1_cmd derart bestimmt, dass die zeitliche Veränderungsrate ↑S1' von dem Zustandsbetragvektor ↑S1 mit dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd übereinstimmt, während die Bewegungsbeschleunigungen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 so eingestellt werden, dass sie mit der Beschleunigung übereinstimmen, welche durch die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C definiert ist.
  • Zu diesem Zeitpunkt wird, wie oben beschrieben, ↑Ptotal'_cmd vom ↑S1'_cmd derart bestimmt, dass die Position von dem Gesamtschwerpunkt ↑r gc_act von dem Roboter 1 zu der Soll-Position ↑r gc_cmd konvergiert und ↑Ltotal'_cmd von ↑S1'_cmd wird derart bestimmt, dass in dem Fall, wo der tatsächliche Gesamtschwerpunkt von dem Roboter 1 als der Massepunkt von einem invertierten Pendel angesehen wird, der Neigungswinkel ↑θpend von dem invertierten Pendel zu null konvergiert. Folglich wird ↑τ1_cmd derart bestimmt, das der Gesamtschwerpunkt von dem Roboter 1 an einer passenden Position gehalten werden kann.
  • Nachdem die Verarbeitung von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 durchgeführt ist, wie oben beschrieben, führt die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 die Verarbeitung durch die Compliance-Steuer/Regeleinrichtung 86 durch.
  • Die Compliance-Steuer/Regeleinrichtung 86 ist eine Funktionseinheit, welche den Sollwert von der Gesamtbodenreaktionskraft (Gesamtbodenreaktionskraft) bestimmt, welche auf den Roboter 1 einwirkt, auf der Basis von dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, welches von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 bestimmt ist, und führt dann sequenziell eine Verarbeitung zur Korrektur des Gelenk-Soll-Antriebsdrehmoments ↑τ1_cmd durch, um die Differenz zwischen dem bestimmten Sollwert und dem Messwert von der tatsächlichen Gesamtbodenreaktionskraft nahe zu null zu bringen. Nachfolgend wird das Drehmoment, welches erhalten wird, indem das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd durch die Compliance-Steuer/Regeleinrichtung 86 korrigiert wird, als das korrigierte Gelenk-Soll-Antriebsdrehmoment ↑τ1c_cmd bezeichnet. In der vorliegenden Ausführungsform wird das korrigierte Gelenk-Soll-Antriebsdrehmoment ↑τ1 c_cmd verwendet als das endgültige Gelenk-Soll-Antriebsdrehmoment zur Steuerung/Regelung des Elektromotors 50 (das Gelenk-Soll-Antriebsdrehmoment, welches der Gelenk-Antriebssteuer/regeleinrichtung 73 zugeführt wird) bei jedem arithmetischen Verarbeitungszyklus von der Steuer/Regeleinrichtung 60.
  • Um das korrigierte Gelenk-Soll-Antriebsdrehmoment ↑τ1c_cmd zu berechnen, empfängt die Compliance-Steuer/Regeleinrichtung 86 sequenziell den Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-Linearer-Term-verallgemeinerter Kraftvektor (↑N + ↑G)), welcher von der Grundparametergruppe-Bestimmungseinrichtung 81 bestimmt wird, das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, welches von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 bestimmt wird, und das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, welches von der Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 bestimmt wird (oder den Kontaktabschnitt-Verkörperungselement-Positionsvektor ↑Xc, welcher dadurch definiert ist).
  • Zusätzlich empfängt die Compliance-Steuer/Regeleinrichtung 86 sequenziell die Matrizen Rc, Jc' und Jc#, welche von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 berechnet werden, die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C (Nullvektor in der vorliegenden Ausführungsform), die Messwerte von den Ist-Bodenreaktionskräften ↑FM_act_R und ↑FM_act_L, welche jeweils auf die Füße 18R und 18L einwirken, den Messwert von der Bewegungsgeschwindigkeit von dem repräsentativen Glied 10, den Messwert von dem Haltungswinkel von dem repräsentativen Glied (der Unterkörper) 10 von dem Roboter und den Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon, und den Messwert von dem Drehwinkel von jedem Gelenk und den Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon.
  • Die Messwerte von den Bodenreaktionskräften ↑FM_act_R und ↑FM_act_L sind die Messwerte, welche von der Steuer/Regeleinrichtung 60 auf der Basis von den Erfassungsausgaben von den oben erwähnten Kraftsensoren 63R und 63L erkannt werden.
  • Die Compliance-Steuer/Regeleinrichtung 86 berechnet zuerst die rechte Seite von dem obigen Ausdruck 5-10 aus den empfangenen ↑N, ↑G (oder ↑N + ↑G), Rc, Jc', Jc# und ↑τ1_cmd und den Messwert von dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vector ↑q, um auf diese Weise eine Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd als einen Vektor zu berechnen, welcher aus einer Anordnung von den Sollwerten von Kräften (Translationskräften) gebildet ist, welche auf die Kontaktabschnitt-Verkörperungspunkte a1 bis a4 einwirken.
  • Insbesondere wird ↑Fc_cmd gemäß dem nachstehend angegebenen Ausdruck 7-1 berechnet. Die Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd bedeutet einen Schätzwert von einer Kraft (Translationskraft), welche auf den Roboter 1 an den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 in dem Fall auszuüben ist, wo die Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement so eingestellt ist, dass sie mit der Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C übereinstimmt, und das Gelenk-Ist-Antriebsdrehmoment von jedem Gelenk des Roboters 1 ist so eingestellt, dass es mit dem Gelenk-Soll-Antriebsdrehmoment übereinstimmt, welches definiert ist durch ↑τ1_cmd. ↑Fc_cmd = (Jc#)T * (↑τ1_cmd – ↑N – ↑G) – Rc * ↑C – Rc * Jc' * ↑q' Ausdruck 7-1
  • Wenn ↑N + ↑G ≈ ↑G zutrifft, dann kann ↑N in dem Ausdruck 7-1 weggelassen werden.
  • Nachfolgend wandelt die Compliance-Steuer/Regeleinrichtung 86 die Kontaktabschnittverkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd in eine Soll-Gesamtbodenreaktionskraft ↑FMt_cmd um, welche der Sollwert von einer Kraft ist, welche auf den vorbestimmten Gesamtbodenreaktionskraft-Einwirkungspunkt (z. B. einen Soll-ZMP) auszuüben ist, welcher als der Einwirkungspunkt von einer Gesamtbodenreaktionskraft relativ zu dem Roboter 1 dient.
  • In der vorliegenden Ausführungsform ist die Soll-Gesamtbodenreaktionskraft ↑FMt_cmd ein Vektor, welcher aus Translationskraftkomponenten in den Richtungen von drei Achsen und Momentenkomponenten um drei Achsen gebildet ist (ein Vektor, welcher sechs Freiheitsgrade hat). In diesem Fall wird die Translationskraftkomponente von ↑FMt_cmd das Ergebnis der Aufaddierung der Soll-Translationskräfte sein, welche auf die einzelnen Kontaktabschnitt-Verkbrperungspunkte a1 bis a4 einwirken. Ferner wird die Momentenkomponente von ↑FMt_cmd das Ergebnis einer Aufaddierung der Momente sein, welche um den Gesamtbodenreaktionskraft-Einwirkungspunkt herum erzeugt werden durch die Soll-Translationskräfte, welche auf die Kontaktabschnitt-Verkörperungspunkte a1 bis a4 einwirken.
  • Die Umwandlung von ↑Fc_cmd zu ↑FMt_cmd wird bewirkt, indem eine Umwandlungsmatrix, welche eine Komponente hat, die auf der Basis der Positionsbeziehung zwischen jedem von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 und dem oben erwähnten Bodenreaktionskraft-Einwirkungspunkt bestimmt wird, mit ↑Fc_cmd multipliziert wird.
  • Ferner berechnet die Compliance-Steuer/Regeleinrichtung 86 den Messwert von der Gesamtbodenreaktionskraft ↑FMt_act, welcher tatsächlich auf den oben erwähnten Gesamtbodenreaktionskraft-Einwirkungspunkt einwirkt, aus den Messwerten von den Ist-Bodenreaktionskräften ↑FM_act_R und ↑FM_act_L, welche jeweils auf die Füße 18R und 18L einwirken.
  • In diesem Fall ist gemäß der vorliegenden Ausführungsform der Messwert von ↑FM_act_R ein Vektor, welcher gebildet ist von den Translationskraftkomponenten in den Richtungen von drei Achsen und den Momentenkomponenten um drei Achsen, welche auf einen vorbestimmten Bodenreaktionskraft-Einwirkungspunkt einwirken, welcher dem rechten Fuß 18R entspricht. In ähnlicher Weise ist der Messwert von ↑FM_act_L ein Vektor, welcher aus den Translationskraftkomponenten in den Richtungen von drei Achsen und den Momentenkomponenten um drei Achsen gebildet ist, welche auf einen vorbestimmten Bodenreaktionskraft-Einwirkungspunkt einwirken, welcher dem linken Fuß 18L entspricht.
  • Ferner addiert die Compliance-Steuer/Regeleinrichtung 86 das Ergebnis, welches erhalten wird, indem der Messwert von ↑FM_act_R in eine Kraft (ein Satz von einer Translationskraftkomponente und einer Momentenkomponente), welche auf den Gesamtbodenreaktionskraft-Einwirkungspunkt einwirkt, umgewandelt wird, unter Verwendung einer Umwandlungsmatrix, welche eine Komponente hat, die auf der Basis der Positionsbeziehung zwischen dem Gesamtbodenreaktionskraft-Einwirkungspunkt und dem Bodenreaktionskraft-Einwirkungspunkt von dem rechten Fuß 18R bestimmt ist, und das Ergebnis, welches erhalten wird, indem der Messwert von ↑FM_act_L in eine Kraft (ein Satz von einer Translationskraftkomponente und einer Momentenkomponente), welche auf einen Gesamtbodenreaktionskraft-Einwirkungspunkt einwirkt, umgewandelt wird, unter Verwendung einer Umwandlungsmatrix, welche eine Komponente hat, die auf der Basis der Positionsbeziehung zwischen dem Gesamtbodenreaktionskraft-Einwirkungspunkt und dem Bodenreaktionskraft-Einwirkungspunkt von dem linken Fuß 18L bestimmt ist. Somit wird der Messwert von der Gesamtbodenreaktionskraft ↑FMt_act berechnet.
  • Die Translationskraftkomponente von dem Messwert von ↑FMt_act stellt eine Translationskraft von der Gesamtsumme (Vektorsumme) von der Translationskraftkomponente von ↑FM_act_R und der Translationskraftkomponente von ↑FM_act_L bereit. Ferner stellt die Momentenkomponente von ↑FMt_act ein Moment bereit von der Gesamtsumme (Vektorsumme) von dem Moment, welches um den Gesamtbodenreaktionskraft-Einwirkungspunkt herum erzeugt wird von der Momentenkomponente von ↑FM_act_R, der Momentenkomponente von ↑FM_act_L und der Translationskraftkomponente von ↑FM_act_R, und dem Moment, welches um den Gesamtbodenreaktionskraft-Einwirkungspunkt herum von der Translationskraftkomponente von ↑FM_act_L erzeugt wird.
  • Nach der Berechnung der Messwerte von der Soll-Gesamtbodenreaktionskraft ↑FMt_cmd und der Gesamtbodenreaktionskraft ↑FMt_act, wie oben beschrieben, berechnet die Compliance-Steuer/Regeleinrichtung 86 eine Differenz ↑ΔFMt dazwischen (= ↑FMt_cmd – ↑FMt_act). Dann berechnet die Compliance-Steuer/Regeleinrichtung 86 gemäß einem vorbestimmten Rückkopplungssteuer/regelgesetz einen Korrekturbetrag ↑Δτt von dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, welcher als die manipulierte Variable dient, um die Differenz ↑ΔFMt zu null zu konvergieren.
  • Insbesondere wandelt gemäß der vorliegenden Ausführungsform die Compliance-Steuer/Regeleinrichtung 86 einen Vektor Gk*↑ΔFMt um, welcher erhalten wird durch Multiplizieren der Differenz ↑ΔFMt mit einer proportionalen Verstärkung Gk von einem vorbestimmten Wert, in einen Fehler ↑ΔFc relativ zu dem Sollwert (die Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd) von einer Ist-Kraft (Translationskraft), welche auf die Kontaktabschnitt-Verkörperungspunkte a1 bis a4 einwirkt.
  • Die Umwandlung wird bewirkt durch Multiplizieren des Vektors Gk*↑ΔFMt mit einer inversen Matrix von einer Umwandlungsmatrix zur Umwandlung des vorangehend erwähnten ↑Fc_cmd in ↑FMt_cmd. In der vorliegenden Ausführungsform ist die Umwandlungsmatrix zur Umwandlung von ↑Fc_cmd in ↑FMt_cmd keine reguläre Matrix, sodass die inverse Matrix von der Umwandlungsmatrix eine pseudoinverse Matrix ist, welche gemäß dem obigen Ausdruck 5-23 bestimmt wird.
  • Ferner multipliziert die Compliance-Steuer/Regeleinrichtung 86 den Fehler ↑ΔFc mit einer inversen Matrix (Jc#T)–1 von einer Matrix Jc#T, wie durch den folgenden Ausdruck 7-2 angedeutet, um auf diese Weise einen Korrekturbetrag ↑Δτt von einem resultierenden Gelenk-Soll-Antriebsdrehmoment ↑τt_cmd zu berechnen. ↑Δτt = (Jc#T)–1 * ↑ΔFc Ausdruck 7-2
  • Somit wird der Korrekturbetrag ↑Δτt derart bestimmt, dass die Differenz ↑ΔFMt zu null konvergiert, gemäß einem Proportionalgesetz, welches als ein Rückkopplungssteuer/regelgesetz dient.
  • Dann addiert die Compliance-Steuer/Regeleinrichtung 86 den Korrekturbetrag ↑Δτt zu dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, wie durch den nachstehend angegebenen Ausdruck 7-3 angedeutet, um auf diese Weise ein korrigiertes Glenk-Soll-Antriebsdrehmoment ↑τ1c_cmd zu bestimmen. ↑τ1c_cmd = ↑τ1_cmd + ↑Δτt Ausdruck 7-3
  • Die Verarbeitung durch die Compliance-Steuer/Regeleinrichtung 86, welche oben beschrieben ist, korrigiert das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, um die Differenz zwischen der Soll-Gesamtbodenreaktionskraft ↑FMt_cmd, welche die Gesamtbodenreaktionskraft ist, welche dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd entspricht, und den Messwert von der Ist-Gesamtbodenreaktionskraft ↑FMt_act nahe an null zu bringen.
  • Gemäß der vorliegenden Ausführungsform wird das korrigierte Gelenk-Soll-Antriebsdrehmoment ↑τ1c_cmd, welches wie oben bestimmt ist (insbesondere die Komponente von ↑τ1c_cmd, welche dem Drehwinkel von jedem Gelenk entspricht) in die Gelenkantriebssteuer/regeleinrichtung 73 eingegeben.
  • Dies vervollständigt die detaillierte Erläuterung von der Verarbeitung, welche von der Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 durchgeführt wird.
  • Gemäß der oben beschriebenen vorliegenden Ausführungsform wird der Sollwert von dem Differenzialwert erster Ordnung ↑Ptotal' von dem Gesamttranslationsimpuls von dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd derart bestimmt, dass die Position von dem Gesamtschwerpunkt von dem Roboter 1, einschließlich der Position in der vertikalen Richtung zu der Soll-Position von dem Gesamtschwerpunkt von einer gewünschten Gangart konvergiert, welche von dem Gangarterzeuger 71 erzeugt wird. Mit anderen Worten wird der Sollwert von ↑Ptotal' entsprechend dem Sollwert von der Translationsträgheitskraft, welche durch eine Bewegung des Roboters 1 erzeugt wird, derart bestimmt, dass die Ist-Position von dem Gesamtschwerpunkt von dem Roboter 1 zu einer passenden Soll-Position konvergiert.
  • Ferner wird der Sollwert von dem Differenzialwert erster Ordnung ↑Ltotal' von dem Gesamtdrehimpuls in ↑S1'_cmd derart bestimmt, dass die horizontale Position von dem Gesamtschwerpunkt von dem Roboter 1 zu einer Position in der vertikalen Richtung oberhalb eines Soll-ZMP konvergiert, welcher als der Lagerpunkt von einem virtuellen invertierten Pendel dient, welches seinen Massenpunkt an dem Gesamtschwerpunkt hat. Mit anderen Worten wird der Sollwert von ↑Ltotal', welcher dem Sollwert von einer Momententrägheitskraft entspricht, welche durch eine Bewegung des Roboters 1 erzeugt wird, derart bestimmt, dass die horizontale Ist-Position von dem Gesamtschwerpunkt von dem Roboter 1 zu einer Position konvergiert, welche verhindern kann, dass sich das oben erwähnte virtuelle invertierte Pendel neigt.
  • Ferner wird in der vorliegenden Ausführungsform das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd derart bestimmt, dass erlaubt wird, dass der Sollwert von ↑Ptotal und der Sollwert von ↑Ltotal' von dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd erreicht wird.
  • Hier ist bei dem Roboter 1 gemäß der vorliegenden Ausführungsform das Gelenkantriebssystem von jedem Gelenk mit dem Torsionsstab 53 versehen, welcher ein Federelement ist, um so jedes Gelenk flexibel zu machen. Dies neigt dazu, den Drehwinkel von jedem Gelenk leicht zu verändern infolge des Einflusses von einer äußeren Kraft, welche auf den Roboter 1 einwirkt, um auf diese Weise zu bewirken, dass sich die Position von dem Gesamtschwerpunkt (insbesondere die Position desselben in der vertikalen Richtung) leicht verändert.
  • Jedoch wird der Zustandsbetrag-Sollwertvektor ↑S1'_cmd wie oben beschrieben bestimmt, sodass dann, wenn die Ist-Position von dem Gesamtschwerpunkt von dem Roboter 1 von einer Soll-Position abweicht, dann das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd derart bestimmt wird, dass die Abweichung korrigiert wird.
  • Diese Anordnung ermöglicht es, zu verhindern, dass die Ist-Position von dem Gesamtschwerpunkt von dem Roboter 1 von einer geeigneten Soll-Position abweicht. Als Ergebnis ist es, selbst wenn die Gelenke von dem Roboter 1 flexibel sind, möglich, zu verhindern, dass die Haltung des Roboters 1 instabil wird, um auf diese Weise eine höhere Stabilität von den Verhaltensweisen des Roboters 1 zu erlauben.
  • In der vorliegenden Ausführungsform wird das Gelenk-Soll-Antriebsdrehmoment τ1_cmd gemäß dem obigen Ausdruck 5-20 bestimmt. Daher werden die Bewegungen von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 von dem Kontaktabschnitt-Verkörperungselement durch die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C definiert, und dann wird ↑τ1_cmd auf der Basis von dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd bestimmt, welcher ein Sollwert ist, der mit dem zu steuernden/regelnden Zustandsbetrag von dem Roboter 1 in Beziehung steht.
  • Mit dieser Anordnung kann ein geeignetes ↑τ1_cmd, welches erlaubt, dass ↑C und ↑S1'_cmd erreicht werden, bestimmt werden, ohne den Wert von der auf den Roboter 1 einwirkenden äußeren Kraft zu identfizieren, welche für den Einfluss einer Störung oder dgl. anfällig ist. In diesem Fall ist der Gesamtfreiheitsgrad von ↑C und ↑S1'_cmd kleiner als der Gesamtfreiheitsgrad von dem gesamten Roboter 1 (der Freiheitsgrad von dem oben erwähnten verallgemeinerten Kraftvektor ↑q), sodass das Gelenkantriebsdrehmoment ↑τ1_cmd bestimt werden kann ohne die Notwendigkeit, die Drehbewegungen von allen Gelenken des Roboters 1 zu identifizieren. Dies ermöglicht es, die Flexibilität der Bewegungen von den Gelenken des Roboters in Reaktion auf beispielsweise eine Änderung in einer auf den Roboter 1 einwirkenden äußeren Kraft zu erhöhen.
  • Hier wird zusätzlich die Beziehung einer Entsprechung zwischen der oben beschriebenen Ausführungsform und der vorliegenden Erfindung beschrieben.
  • In der vorliegenden Ausführungsform ist die Grundparametergruppe-Bestimmungseinheit in der vorliegenden Erfindung implementiert durch die oben erwähnte Grundparametergruppe-Bestimmungseinrichtung 81. Die Messwerte von der Bewegungsgeschwindigkeit von dem Unterkörper 10, der Haltungswinkel und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) davon, und die Messwerte von dem Drehwinkel von jedem Gelenk und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) davon entsprechen der verallgemeinerten variablen Beobachtungsinformation in der vorliegenden Erfindung.
  • Ferner wird die Kontaktabschnitt-Jacobimatrix-Berechnungseinheit in der vorliegenden Erfindung durch die oben erwähnte Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 implementiert. In diesem Fall entsprechen die Füße 18R und 18L von dem Roboter 1 den Kontaktabschnitten in der vorliegenden Erfindung und das Kontaktabschnitt-Verkörperungselement in der vorliegenden Erfindung ist als das Element gesetzt, welches gebildet ist, indem die oben erwähnten Kontaktabschnitt-Verkörperungspunkte a1 bis a4 verbunden werden. In der vorliegenden Ausführungsform werden die Messwerte von den oben erwähnten Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L als die Kontaktzustandsinformation in der vorliegenden Erfindung verwendet.
  • Die Zustandsbetrag-Jacobimatrix-Berechnungseinheit in der vorliegenden Erfindung wird durch die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 implementiert. Die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 implementiert die Bewegungszustandbetrag-Sollwert-Bestimmungseinheit der vorliegenden Erfindung. In diesem Fall entspricht gemäß der vorliegenden Ausführungsform der Zustandsbetragvektor ↑S, welcher gebildet ist von dem Satz von dem Gesamttranslationsimpuls ↑Ptotal und dem Gesamtdrehimpuls ↑Ltotal, dem Bewegungszustandsbetrag in der vorliegenden Erfindung. Ferner entspricht der Zustandsbetrag-Sollwertvektor ↑S1'_cmd dem Bewegungszustandsbetrag-Sollwert in der vorliegenden Erfindung.
  • Ferner wird die Soll-Antriebskraft-Bestimmungseinheit in der vorliegenden Erfindung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 implementiert. In diesem Fall entspricht das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd dem verallgemeinerten Sollkraftvektor τcmd in der vorliegenden Erfindung und die Komponente von diesem ↑τ1_cmd, welche dem Drehwinkel von jedem Gelenk entspricht, entspricht der Soll-Antriebskraft in der vorliegenden Erfindung. Ferner entspricht die oben erwähnte Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C dem Sollwert von der Kontaktabschnitt-Bewegungsbeschleunigung in der vorliegenden Erfindung.
  • Die Compliance-Steuer/Regeleinrichtung 86 und die Gelenkantriebssteuer/regeleinrichtung 73 implementieren die Aktuatorsteuer/regeleinheit in der vorliegenden Erfindung. Die Verarbeitung, welche von der Compliance-Steuer/Regeleinrichtung 86 durchgeführt wird, implementiert die Kontaktabschnittaußenkraft-Sollwert-Bestimmungseinheit und die Antriebskraftkorrekturbetrag-Berechnungseinheit in der vorliegenden Erfindung. Insbesondere entspricht die Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd dem Kontaktabschnittaußenkraft-Sollwert in der vorliegenden Erfindung und die Kontaktabschnittaußenkraft-Sollwert-Bestimmungseinheit wird durch die Verarbeitung zur Berechnung des ↑Fc_cmd gemäß dem obigen Ausdruck 7-1 implementiert. Ferner entspricht der oben erwähnte Korrekturbetrag ↑Δτt dem Korrekturbetrag von einer Sollantriebskraft in der vorliegenden Erfindung und die Verarbeitung zur Berechnung des Korrekturbetrags ↑Δτt, wie oben beschrieben, implementiert die Antriebskraftkorrekturbetrag-Berechnungseinheit in der vorliegenden Erfindung.
  • [Zweite Ausführungsform]
  • Eine zweite Ausführungsform der vorliegenden Erfindung wird nun hauptsächlich unter Bezugnahme auf 6 beschrieben.
  • Die vorliegende Ausführungsform unterscheidet sich von der ersten Ausführungsform in dem Verfahren zum Einstellen eines Kontaktabschnitt-Verkörperungsselements in der Verarbeitung durch eine Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 von einer Steuer/Regeleinrichtung 60. Folglich ist bei der Verarbeitung durch eine Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 die Verarbeitung durch eine Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82, eine Steuer/Regeleingabe-Bestimmungseinrichtung 85 und eine Compliance-Steuer/Regeleinrichtung 86 teilweise von denen von der ersten Ausführungsform verschieden. Der Rest der Verarbeitung durch die Gelenk-Soll-Antriebsdrehmoment-Bestimmungseinrichtung 72 (die Verarbeitung durch eine Grundparametergruppe-Bestimmungseinrichtung 81, eine Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 und eine Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84), und die Verarbeitung durch einen Gangarterzeuger 71 und eine Gelenkantriebssteuer/regeleinrichtung 73 ist dieselbe wie die in der ersten Ausführungsform.
  • Daher wird die Beschreibung der vorliegenden Ausführungsform hauptsächlich auf die zu der ersten Ausführungsform verschiedenen Aspekte gerichtet und dieselben Gegenstände wie jene von der ersten Ausführungsform werden nicht erneut beschrieben.
  • In der ersten Ausführungsform ist die Bewegung von einem Kontaktabschnitt-Verkörperungselement durch die Bewegungen von den vier Kontaktabschnitt-Verkörperungspunkten a1 bis a4 definiert. Aus diesem Grund, wenn die Bewegung von dem Kontaktabschnitt-Verkörperungselement beschränkt wird, dann wird ein Beschränkungsäquivalent auf zwölf Freiheitsgrade (3 * 4 = 12) von dem Gesamtfreiheitsgrad eines gesamten Roboters 1 (der Freiheitsgrad von dem verallgemeinerten Kraftvektor ↑q) resultieren. Die vorliegende Ausführungsform setzt das Kontaktabschnitt-Verkörperungselement derart, dass der Freiheitsgrad, welcher einer Beschränkung unterliegt, wenn die Bewegung eines Kontaktabschnitt-Verkörperungselements beschränkt wird, kleiner sein wird als der in der ersten Ausführungsform.
  • Gemäß der vorliegenden Ausführungsform ist das Kontaktabschnitt-Verkörperungselement als ein Element definiert, welches der resultierenden Kraft von äußeren Kräften (die resultierende Kraft auf alle Kontaktabschnitte) unterliegt, welche von einer Außenwelt auf jeden Abschnitt von dem Roboter 1 in Kontakt mit der Außenwelt ausgeübt werden. Ferner wird die äußere Kraft, welche von der Außenwelt auf jeden Abschnitt von dem Roboter 1 in Kontakt mit der Außenwelt einwirkt (eine Translationskraft und ein Moment), als eine äußere Kraft angesehen, welche auf einen Kontaktabschnitt von dem Roboter 1 als eine elastische Kraft einwirkt, welche auf die elastischen Verlagerungen zurückzuführen ist von der Position und der Haltung von der Oberfläche des Kontakts zwischen dem Kontaktabschnitt und der Außenwelt (die Verlagerung, welche durch eine elastische Verformung von dem Kontaktabschnitt oder einem Abschnitt in der Außenwelt bewirkt wird). In ähnlicher Weise wird die resultierende Kraft von äußeren Kräften, welche auf ein Kontaktabschnitt-Verkörperungselement einwirken, als eine äußere Kraft angesehen, welche auf ein Kontaktabschnitt-Verkörperungselement als eine elastische Kraft einwirkt, welche auf die elastischen Verlagerungen zurückzuführen ist (elastische Verformung) von der Position und der Haltung von der Oberfläche des Kontakts (virtuelle oder substanzielle Oberfläche des Kontakts) zwischen dem Kontaktabschnitt-Verköperungselement und der Außenwelt.
  • Insbesondere werden gemäß der vorliegenden Ausführungsform dann, wenn sich der Roboter 1 auf einer Bodenoberfläche bewegt, die Kontaktabschnitt-Verkörperungselemente, beispielsweise bei einer Gehbewegung, als die Elemente definiert, auf welche die resultierende Kraft von Bodenreaktionskräften (die Gesamtbodenreaktionskraft), welche auf beide Füße 18R und 18L einwirken, ausgeübt werden.
  • Folglich wird in der vorliegenden Ausführungsform während einer Gehbewegung des Roboters 1, wenn ein Bodenreaktionskraftvektor (ein Vektor, welcher eine Translationskraft und ein Moment als seine Komponenten hat), welcher auf einen Angriffspunkt ausgeübt wird, welcher in der Bodenkontaktfläche vorhanden ist (die Oberfläche des Kontakts mit dem Boden), von dem rechten Fuß 18R mit ↑FM_R = [↑F_R, ↑M_R]T bezeichnet wird, ein Bodenreaktionskraftvektor (ein Vektor, welcher eine Translationskraft und ein Moment als seine Komponenten hat), welche auf einen Angriffspunkt ausgeübt wird, der in der Bodenkontaktfläche vorhanden ist (die Oberfläche des Kontakts mit dem Boden), von dem linken Fuß 18L mit ↑FM_L = [↑F_L, ↑M_L]T bezeichnet wird, und der resultierende Kraftvektor, welcher auf ein Kontaktabschnitt-Verkörperungselement einwirkt (der resultierende Vektor von den Bodenreaktionskraftvektoren [↑F_R, ↑M_R]T und [↑F_L, ↑M_L]T) mit ↑FMt = [↑Ft, ↑Mt]T bezeichnet wird, dann wird die Beziehung zwischen [↑Ft, ↑Mt]T und [↑F_R, ↑M_R]T und [↑F_L, ↑M_L]T durch den folgenden Ausdruck 8-1 angegeben.
  • Figure DE102010064267B4_0002
  • Hier bezeichnet ↑Ft in dem Ausdruck 8-1 einen Translationskraftvektor, welcher gebildet ist von Translationskraftkomponenten in den Richtungen von drei Achsen, von dem resultierenden Vektor ↑FMt, welcher auf ein Kontaktabschnitt-Verkörperungselement einwirkt (nachfolgend als der Gesamtbodenreaktionskraftvektor ↑FMt bezeichnet), ↑Mt bezeichnet einen Momentenvektor, welcher gebildet ist von Momentenkomponenten um drei Achsen, von dem Gesamtbodenreaktionskraftvektor ↑FMt, ↑F_R, bezeichnet einen Translationskraftvektor, welcher gebildet ist von Translationskraftkomponenten in den Richtungen von drei Achsen, von dem Bodenreaktionskraftvektor ↑FM_R, welcher auf den rechten Fuß 18R einwirkt, ↑M_R bezeichnet einen Momentenvektor, welcher gebildet ist von Momentenkomponenten um drei Achsen, von dem Bodenreaktionskraftvektor ↑FM_R, ↑F_L bezeichnet einen Translationskraftvektor, welcher gebildet ist von Translationskraftkomponenten in den Richtungen von drei Achsen, von dem Bodenreaktionskraftvektor ↑FM_L, welcher auf den linken Fuß 18L einwirkt, und ↑M_L bezeichnet einen Momentenvektor, welcher gebildet ist von Momentenkomponenten um drei Achsen, von dem Bodenreaktionskraftvektor ↑FM_L.
  • Ferner bezeichnen die Komponenten von den Matrizen I und O von den Matrizen A_R und A_L in dem Ausdruck 8-1 jeweils eine Einheitsmatrix dritter Ordnung und eine Nullmatrix dritter Ordnung, die Komponente V_R von der Matrix A_R bezeichnet eine Matrix dritter Ordnung, welche derart gesetzt ist, dass V_R * ↑F_R mit einem Vektorprodukt übereinstimmt von dem Positionsvektor von der Bodenkontaktposition von dem rechten Fuß 18R, beobachtet von der Bodenkontaktposition von einem Bodenkontaktabschnitt-Verkörperungselement (nachfolgend durch ↑Vp_R bezeichnet), und ↑F_R (= ↑Vp_R × tF_R), und die Komponente V_L von der Matrix A_L bezeichnet eine Matrix dritter Ordnung, welche derart gesetzt ist, dass V_L * ↑F_R mit einem Vektorprodukt übereinstimmt von dem Positionsvektor von der Bodenkontaktposition von dem linken Fuß 18L, beobachtet von der Position von einem Bodenkontaktabschnitt-Verkörperungselement (nachfolgend durch ↑Vp_L bezeichnet), und ↑F_L (= ↑Vp_L × ↑F_L).
  • Insbesondere ist die Bodenkontaktposition von dem Bodenkontaktabschnitt-Verkörperungselement die Position von dem Angriffspunkt von dem Gesamtbodenreaktionskraftvektor ↑FMt relativ zu dem Bodenkontaktabschnitt-Verkörperungselement. Die Bodenkontaktposition von dem rechten Fuß 18R ist insbesondere die Position von dem Angriffspunkt von dem Bodenreaktionskraftvektor ↑FM_R relativ zu dem rechten Fuß 18R, und die Bodenkontaktposition von dem linken Fuß 18L ist insbesondere die Position von dem Angriffspunkt von dem Bodenreaktionskraftvektor ↑FM_L relativ zu dem linken Fuß 18L.
  • Ferner werden gemäß der vorliegenden Ausführungsform die Bodenreaktionskraftvektoren ↑FM_R und ↑FM_L als die äußeren Kräfte, welche auf die Füße 18 in Kontakt mit der Bodenoberfläche als die Abschnitte von dem Roboter 1 in Kontakt mit der Außenwelt einwirken, als eine auf die Füße 18 einwirkende elastische Kraft aufgefasst, welche den elastischen Verlagerungen von den Positionen und Haltungen von den Kontaktflächen zwischen den Füßen 18 und dem Boden zuschreibbar ist (die Verlagerung, welche durch die elastische Verformung der Füße 18 oder des Bodens bewirkt wird).
  • In ähnlicher Weise wird der Gesamtbodenreaktionskraftvektor ↑FMt als eine äußere Kraft, welche auf ein Kontaktabschnitt-Verkörperungselement in der vorliegenden Ausführungsform einwirkt, als eine äußere Kraft angesehen, welche auf das Kontaktabschnitt-Verkörperungselement in der Form von einer elastischen Kraft einwirkt, welche den elastischen Verlagerungen von der Position und der Haltung (die Verlagerungen, welche durch die elastische Verformung von dem Kontaktabschnitt-Verkörperungselement oder einem Boden verursacht werden) von der Kontaktfläche (eine substanzielle oder virtuelle Kontaktfläche) zwischen dem Kontaktabschnitt-Verkörperungselement und einem Boden zuschreibbar sind.
  • Wenn daher der Vektor, dessen Komponente der elastische Verlagerungsbetrag von der Position und der Haltung von der Bodenkontaktfläche ist, die mit dem Boden in Kontakt befindliche Oberfläche), wenn der rechte Fuß 18R in Kontakt mit dem Boden gelangt (der Betrag von der Translationsverlagerung von der Bodenkontaktfläche von einer Referenzposition und der Betrag von der Drehverlagerung von der Bodenkontaktfläche von einer Referenzhaltung) mit ↑X_R ≡ [↑tXorg_R, ↑Xrot_R]T bezeichnet ist, der Vektor, dessen Komponente der elastische Verlagerungsbetrag von der Position und der Haltung von der Bodenkontaktfläche ist (die mit dem Boden in Kontakt befindliche Oberfläche), wenn der linke Fuß 18L in Kontakt mit dem Boden gelangt (der Betrag der Translationsverlagerung von der Bodenkontaktfläche von einer Referenzposition und der Betrag von der Drehverlagerung von der Boden kontaktoberfläche von einer Referenzhaltung) mit ↑X_L ≡ [↑Xorg_L, ↑Xrot_L]T bezeichnet ist, und der Vektor, dessen Komponente der Betrag der elastischen Verlagerung von der Position und der Haltung von der Bodenkontaktfläche (die mit dem Boden in Kontakt befindliche Oberfläche) von dem Kontaktabschnitt-Verkörperungselement (der Betrag der Translationsverlagerung von der Bodenkontaktfläche von einer Referenzposition und der Betrag der Drehverlagerung von der Bodenkontaktfläche von einer Referenzhaltung) mit ↑Xcc ≡ [↑Xcc'_org, ↑Xcc_rot]T bezeichnet ist, dann werden die Beziehung zwischen ↑FM_R und ↑X_R, die Beziehung zwischen ↑FM_L und ↑X_L, und die Beziehung zwischen ↑FMt und ↑Xcc jeweils durch die folgenden Ausdrücke 8-2, 8-3 und 8-4 angegeben.
  • Figure DE102010064267B4_0003
  • Hier bezeichnet ↑Xorg_R in dem Ausdruck 8-2 einen Translationsverlagerungsbetragvektor von dem elastischen Verlagerungsbetrag ↑X_R in den Richtungen von drei Achsen, ↑Xrot_R bezeichnet den Drehverlagerungsbetragvektor um drei Achsen in dem elastischen Verlagerungsbetrag, ↑X_R, kf_R bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit einer Translationsverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑F_R und jeder Komponente von ↑Xorg_R ausdrückt durch eine Beziehung, welche angegeben ist durch ↑F_R = kf_R * ↑Xorg_R, und km_R bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit der Drehwinkelverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑M_R und jeder Komponente von ↑Xrot_R ausdrückt durch eine Beziehung, welche durch ↑M_R = km_R * ↑Xrot_R angegeben ist.
  • Ferner bezeichnet ↑Xorg_L in dem Ausdruck 8-3 einen Translationsverlagerungsbetragvektor von dem elastischen Verlagerungsbetrag ↑X_L in den Richtungen von drei Achsen, ↑Xrot_L bezeichnet den Drehverlagerungsbetragvektor um drei Achsen in dem elastischen Verlagerungsbetrag ↑X_L, kf_L bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit einer Translationsverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑F_L und jeder Komponente von ↑Xorg_L ausdrückt durch eine Beziehung, welche angegeben ist durch ↑F_L = kf_L * ↑Xorg_L, und km_L bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit einer Drehwinkelverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑M_L und jeder Komponente von ↑Xrot_L durch eine Beziehung ausdrückt, welche angegeben ist durch ↑M_L = km_L * ↑Xrot_L.
  • Ferner bezeichnet ↑Xcc_org in dem Ausdruck 8-4 einen Translationsverlagerungsbetragvektor von dem elastischen Verlagerungsbetrag ↑Xcc in den Richtungen von drei Achsen, Xcc_rot bezeichnet den Drehverlagerungsbetragvektor um drei Achsen in dem elastischen Verlagerungsbetrag ↑Xcc, kfcc bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit der Translationsverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑Ft und jeder Komponente von ↑Xcc_org ausdrückt durch eine Beziehung, welche angegeben ist durch ↑Ft = kfcc * ↑Xcc_org, und kmcc bezeichnet eine Diagonalmatrix dritter Ordnung, welche eine Federkonstante angibt (eine Federkonstante, welche mit der Drehwinkelverlagerung in Beziehung steht), welche die Beziehung zwischen jeder Komponente von ↑Mt und jeder Komponente von ↑Xcc_rot durch eine Beziehung ausdrückt, welche angegeben ist durch ↑Mt = kmcc * ↑Xcc_rot.
  • Ferner stimmt gemäß der vorliegenden Ausführungsform die Bodenkontaktposition (der Angriffspunkt von ↑FMt) von einem Kontaktabschnitt-Verkörperungselement mit der Bodenkontaktposition von dem rechten Fuß 18R überein (der Angriffspunkt von ↑FM_R) in einem Einbein-Bodenkontaktzustand, in welchem nur der rechte Fuß 18R mit dem Boden in Kontakt kommt. In einem Einbein-Bodenkontaktzustand, in welchem nur der linke Fuß 18L mit dem Boden in Kontakt kommt, stimmt die Bodenkontaktposition (der Angriffspunkt von ↑FMt) von einem Kontaktabschnitt-Verkörperungselement mit der Bodenkontaktposition von dem linken Fuß 18L überein (der Angriffspunkt von ↑FM_L). In einem Zweibein-Bodenkontaktzustand, in welchem beide Füße 18R und 18L mit dem Boden in Kontakt kommen, ist die Bodenkontaktposition (der Angriffspunkt von ↑FMt) von einem Kontaktabschnitt-Verkörperungselement an einem internen Teilungspunkt von einem Liniensegment, welches die Bodenkontaktpositionen von den zwei Füßen 18R und 18L verbindet.
  • Insbesondere, auf 6 Bezug nehmend, ist die Beziehung zwischen einem Positionsvektor ↑Vp_R von dem Angriffspunkt von dem Bodenreaktionskraftvektor ↑FM_R, welcher auf den rechten Fuß 18R ausgeübt wird, von dem Angriffspunkt von dem Gesamtbodenreaktionskraftvektor ↑FMt aus beobachtet, welcher auf das Kontaktabschnitt-Verkörperungselement einwirkt, und einem Positionsvektor ↑Vp_L von dem Angriffspunkt von dem Bodenreaktionskraftvektor ↑FM_L, welcher auf den linken Fuß 18L ausgeübt wird, von dem Angriffspunkt von ↑FMcc aus beobachtet, durch den folgenden Ausdruck 8-5 angegeben auf der Basis von dem Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, welches in der ersten Ausführungsform beschrieben ist. r at * ↑Vp_R = – (1 – r at) * ↑Vp_L Ausdruck 8-5
  • Mit anderen Worten ist die Bodenkontaktposition von dem Kontaktabschnitt-Verkörperungselement (der Angriffspunkt von ↑FMcc) eine Position, welche ausgedrückt ist durch |↑Vp_R| : |↑Vp_L| = (1 – r at) : r at auf einem Liniensegment, welches die Bodenkontaktpositionen von beiden Füßen 18R und 18L in dem Zweibein-Bodenkontaktzustand verbindet (auf 6 Bezug nehmend).
  • In der vorliegenden Ausführungsform sind die Bodenkontaktposition (der Angriffspunkt von ↑FMt) von einem Kontaktabschnitt-Verkörperungselement, die Bodenkontaktposition (der Angriffspunkt von ↑FM_R) von dem rechten Fuß 18R und die Bodenkontaktposition (der Angriffspunkt von ↑FM_L) von dem linken Fuß 18L jeweils so eingestellt, dass beispielsweise die Positionen von Punkten, wo die horizontalen Komponenten (Komponenten um die horizontale Achse) von den Bodenreaktionskraftmomenten an dem Angriffspunkt, nämlich ↑Mt, ↑M_R, und ↑M_L null sind, d. h. der ZMP. Das Einstellen jedes Angriffspunkts in dieser Weise führt zu der Beziehung, welche durch den Ausdruck 8-5 angegeben ist.
  • Ferner stimmt gemäß der vorliegenden Ausführungsform der elastische Verlagerungsbetrag ↑Xcc, welcher mit einem Kontaktabschnitt-Verkörperungselement in Beziehung steht (nachfolgend als der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc bezeichnet) mit dem elastischen Verlagerungsbetrag ↑X_R überein, welcher mit dem rechten Fuß 18R in Beziehung steht, in einem Einbein-Bodenkontaktzustand, in welchem nur der rechte Fuß 18R mit dem Boden in Kontakt ist. In ähnlicher Weise stimmt der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc mit dem elastischen Verlagerungsbetrag ↑X_L überein, welcher mit dem linken Fuß 18L in Beziehung steht, in einem Einbein-Bodenkontaktzustand, in welchem nur der linke Fuß 18L mit dem Boden in Kontakt ist. In einem Zweibein-Zustand, in welchem beide Füße 18R und 18L mit dem Boden in Kontakt kommen, wird der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc ein gewichteter mittlerer Verlagerungsbetrag von den elastischen Verlagerungsbeträgen ↑X_R und ↑X_L sein, welche jeweils mit den zwei Füßen 18R und 18L in Beziehung stehen.
  • Insbesondere wird die Beziehung zwischen dem Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc und den elastischen Verlagerungsbeträgen ↑X_R und ↑X_L, welche jeweils mit den Füßen 18R und 18L in Beziehung stehen, durch einen Ausdruck 8-6 angezeigt, welcher nachstehend angegeben ist, wobei r at und (1 - r at) die Gewichtungskoeffizienten sind, wie bei der Beziehung zwischen der Bodenkontaktposition von dem Kontaktabschnitt-Verkörperungselement (der Angriffspunkt von ↑FMt) und den Bodenkontaktpositionen von den Füßen 18R und 18L (die Angriffspunkte von ↑FM_R und ↑FM_L). ↑Xcc = r at * ↑X_R + (1 – r at) * ↑X_L Ausdruck 8-6
  • Ferner entspricht bei der Verarbeitung durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 gemäß der vorliegenden Ausführungsform der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc der Position und der Haltung von dem Kontaktabschnitt-Verkörperungselement. Eine Matrix Jc, welche die Beziehung zwischen der Bewegungsgeschwindigkeit von dem Kontaktabschnitt-Verkörperungselement, d. h. die zeitliche Veränderungsrate (ein Differenzialwert erster Ordnung) ↑Xcc' von ↑Xcc (= ↑Xcc/dt) und einem Differenzialwert erster Ordnung ↑q' von einem verallgemeinerten variablen Vektor ↑q durch den Ausdruck 8-7 anzeigt, welcher nachstehend angegeben ist, wird als die Kontaktabschnitt-Jacobimatrix in der vorliegenden Ausführungsform definiert. ↑Xcc' = Jc * ↑q' Ausdruck 8-7
  • Der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc ist ein Vektor, welcher von sechs Komponenten gebildet ist, nämlich den Komponenten von den Translationsverlagerungsbeträgen in den Richtungen von drei Achsen und den Komponenten von den Drehverlagerungsbeträgen um drei Achsen. Zum Zweck der Bequemlichkeit wird in der Beschreibung der vorliegenden Ausführungsform dasselbe Bezugszeichen Jc wie das in der ersten Ausführungsform für die Kontaktabschnitt-Jacobimatrix verwendet. In der nachfolgenden Beschreibung von der vorliegenden Ausführungsform wird, solange nichts anderes angegeben ist, die Kontaktabschnitt-Jacobimatrix Jc die Jacobimatrix bedeuten, welche die Beziehung zwischen ↑Xcc' und ↑q' durch den Ausdruck 8-7 angibt.
  • Basierend auf dem Obigen wird das Verfahren zur Berechnung der Kontaktabschnitt-Jacobimatrix Jc in der vorliegenden Ausführungsform beschrieben.
  • Als Erstes wird der folgende Ausdruck 8-8 hergeleitet, indem die Ausdrücke 8-2, 8-3 und 8-4 auf den obigen Ausdruck 8-1 angewendet werden.
  • Figure DE102010064267B4_0004
  • Die Gleichung von der ersten Zeile von diesem Ausdruck 8-8 ist durch den folgenden Ausdruck 8-9 bezeichnet. kfcc * ↑Xcc_org = kf_R * ↑Xorg_R + kf_L * ↑Xorg_L Ausdruck 8-9
  • Unterdessen wird der folgende Ausdruck 8-10 aus dem obigen Ausdruck 8-6 hergeleitet. ↑Xcc_org = r at * ↑Xorg_R + (1 – r at) * ↑Xorg_L Ausdruck 8-10
  • Ferner werden die folgenden Ausdrücke 8-11a und 8-11b hergeleitet, indem die obigen Ausdrücke 8-9 und 8-10 verglichen oder gleichgesetzt werden. kf_R = wcc * kfcc Ausdruck 8-11a kf_L = (1 – wcc) * kfcc Ausdruck 8-11b
  • Die Gleichung von der zweiten Zeile von dem obigen Ausdruck 8-8 ist durch den folgenden Ausdruck 8-12 verkörpert. kmcc * ↑Xcc_rot = ↑Vp_R × (kf_R * ↑Xorg_R) + km_R * ↑Xrot_R + ↑Vp_L × (kf_L * ↑Xorg_L) + km_L * ↑Xrot_L Ausdruck 8-12 wobei
    ↑Vp_R × (kf_R * ↑Xorg_R) = V_R * (kf_R * ↑Xorg_R)
    ↑Vp_L × (kf_L * ↑Xorg_L) = V_L * (kf_L * ↑Xorg_L)
  • Hier können unter Bezugnahme auf 6 dann, wenn der Positionsvektor von der Bodenkontaktposition von dem linken Fuß 18L (dem Angriffspunkt von ↑FM_L), welcher von der Bodenkontaktposition von dem rechten Fuß 18R beobachtet wird (dem Angriffspunkt von ↑FM_R) durch ↑V_RL (= ↑Vp_L – ↑Vp_R) bezeichnet wird, die folgenden Ausdrücke 8-13a und 8-13b aus dem obigen Ausdruck 8-5 erhalten werden. ↑Vp_R = –(1 – r at) * ↑V_RL Ausdruck 8-13a ↑Vp_L = r at * ↑V_RL Ausdruck 8-13b
  • Das Anwenden der obigen Ausdrücke 8-13a und 8-13b und der obigen Ausdrücke 8-11a und 8-11b auf den obigen Ausdruck 8-12 führt zu dem folgenden Ausdruck 8-14. kmcc * ↑Xcc_rot = –wcc * (1 – wcc) * ↑V_RL × ↑Xorg_R + km_R * ↑Xrot_R +wcc * (1 – wcc) * ↑V_RL × ↑Xorg_L + km_L * ↑Xrot_L = wcc * (1 – wcc) * ↑V_RL × (↑Xorg_L – ↑Xorg_R) + km_R * ↑Xrot_R + km_L * ↑Xrot_L Ausdruck 8-14
  • In diesem Fall können ↑V_RL und (↑Xorg_L – ↑Xorg_R) als Vektoren angesehen werden, welche parallel zueinander sind, sodass der Wert von dem ersten Term von der rechten Seite von dem Ausdruck 8-14 null sein wird. Daher kann der Ausdruck 8-14 in den Ausdruck 8-15 umgeschrieben werden, welcher nachstehend angegeben ist. kmcc * ↑Xcc_rot = km_R * ↑Xrot_R + km_L * ↑Xrot_L Ausdruck 8-15
  • Ferner wird der folgende Ausdruck 8-16 aus dem obigen Ausdruck 8-6 hergeleitet. ↑Xcc_rot = r at * ↑Xrot_R + (1 – r at) * ↑Xrot_L Ausdruck 8-16
  • Ferner werden die folgenden Ausdrücke 8-17a und 8-17b erhalten, indem die obigen Ausdrücke 8-15 und 8-16 verglichen bzw. gleichgesetzt werden. km_R = r at * kmcc Ausdruck 8-17a km_L = (1 – r at) * kmcc Ausdruck 8-17b
  • Ferner führt das Anwenden der obigen Ausdrücke 8-11a und 8-11b und der obigen Ausdrücke 8-17a und 8-17b auf den obigen Ausdruck 8-8 zu dem folgenden Ausdruck 8-18. ↑Xcc = r at * A_R * ↑X_R + (1 – r at) * A_L * ↑X_L Ausdruck 8-18
  • Dann wird der folgende Ausdruck 8-19 erhalten, indem beide Seiten von dem obigen Ausdruck 8-18 differenziert werden.
  • ↑Xcc' = r at * A_R * ↑X_R' + (1 – r at) * A_L * ↑X_L' Ausdruck 8-19 wobei↑ Xcc' = d↑Xcc/dt, ↑X_R' = d↑X_R/dt, ↑X_L' = d↑X_L/dt
  • Hier werden die zeitlichen Änderungsraten von r at * A_R und (1 – r at) * A_L ausreichend klein sein und r at * A_R und (1 – r at) * A_L werden im Wesentlichen konstant gehalten.
  • In diesem Fall wird ↑X_R' als mit der zeitlichen Veränderungsrate von der Bodenkontaktposition (dem Angriffspunkt von ↑FM_R) von dem rechten Fuß 18R übereinstimmend angesehen, während ↑X_L' als mit der zeitlichen Veränderungsrate von der Bodenkontaktposition (dem Angriffspunkt von ↑FM_L) von dem linken Fuß 18L übereinstimmend angesehen wird.
  • Wenn folglich eine Jacobimatrix, welche die Beziehung zwischen der zeitlichen Veränderungsrate von der Bodenkontaktposition von dem rechten Fuß 18R (den Angriffspunkt von ↑FM_R) und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q angibt, mit Jcc_R bezeichnet wird, und die Jacobimatrix, welche die Beziehung zwischen der zeitlichen Veränderungsrate von der Bodenkontaktposition von dem linken Fuß 18L (Angriffspunkt von ↑FM_L) und dem Differenzialwert erster Ordnung ↑q' von dem verallgemeinerten variablen Vektor ↑q angibt, mit Jcc_L bezeichnet wird, dann wird der folgende Ausdruck 8-20 aus den obigen Ausdrücken 8-7 und 8-19 erhalten. Jc = r at * A_R * Jcc_R + (1 – r at) * A_L * Jcc_L Ausdruck 8-20
  • Gemäß der vorliegenden Ausführungsform berechnet daher die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 Jacobi-Matrizen, nämlich Jcc_R und Jcc_L von der rechten Seite von dem Ausdruck 8-20 und die Matrizen A_R und A_L. Dann berechnet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 die rechte Seite von dem Ausdruck 8-20 aus den berechneten Werten von den Jacobi-Matrizen Jcc_R, Jcc_L und den Matrizen A_R, A_L und das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, welches berechnet wird, wie in der ersten Ausführungsform beschrieben, um auf diese Weise die Kontaktabschnitt-Jacobimatrix Jc zu berechnen.
  • Das Folgende wird detaillierter die Verarbeitung durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 in der vorliegenden Ausführungsform beschreiben.
  • Um das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, die Jacobi-Matrizen Jcc_R, Jcc_L und die Matrizen A_R, A_L zu berechnen, welche zur Berechnung der rechten Seite des obigen Ausdrucks 8-20 verwendet werden, empfängt die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 die Erfassungsausgaben von den Kraftsensoren 63R und 63L (die Messwerte von auf die Füße 18R und 18L einwirkenden Bodenreaktionskräften), die Messwerte von der Bewegungsgeschwindigkeit von dem Unterkörper 10 und den Haltungswinkel und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) davon und die Messwerte von den Drehwinkeln und den zeitlichen Veränderungsraten (Winkelgeschwindigkeiten) von den Gelenken von den Beingliedern 3R und 3L.
  • Nachfolgend berechnet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 den obigen Ausdruck 2-2a oder 2-2b in derselben Weise wie der in der ersten Ausführungsform aus den Messwerten von den Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L, um das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at zu berechnen. Wie in der ersten Ausführungsform beschrieben, kann r at berechnet werden, indem die Sollwerte von den Translationsbodenreaktionskraft-Vertikalkomponenten Fz_act_R und Fz_act_L verwendet werden.
  • Die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 berechnet auch die Positionen von den Angriffspunkten (ZMPs in der vorliegenden Ausführungsform) von den Bodenreaktionskraftvektoren ↑FM_R und ↑FM_L jeweils relativ zu den Füßen 18R und 18L, und die Position von dem Angriffspunkt (ZMP in der vorliegenden Ausführungsform) von dem Gesamtbodenreaktionskraftvektor ↑FMt, welcher ein resultierender Vektor von den Bodenreaktionskraftvektoren ist, auf der Basis von den Messwerten von den Bodenreaktionskräften, welche auf die einzelnen Füße 18R und 18L einwirken. Dann werden basierend auf diesen berechneten Werten von den Positionen von den Angriffspunkten die Matrizen A_R und A_L berechnet, welche durch ”wobei” von dem obigen Ausdruck 8-1 definiert sind.
  • Wenn die gewünschte Gangart, welche von dem oben erwähnten Gangarterzeuger 71 erzeugt und ausgegeben wird (oder die gewünschte Gangart, welche der Steuer/Regeleinrichtung 60 von einer externen Quelle zugeführt wird), jeweils die Sollwerte von den Bodenreaktionskraftvektoren ↑FM_R und ↑FM_L von den Füßen 18R und 18L umfasst, dann können die Sollwerte anstelle der Messwerte von ↑FM_R und ↑FM_L verwendet werden, um die Matrizen A_R und A_L zu berechnen. Alternativ, wenn die gewünschte Gangart die Soll-Positionen von ZMPs umfasst, welche jeweils mit den Bodenreaktionskraftvektoren ↑FM_R und ↑FM_L in Beziehung stehen, und die Soll-Position von einem ZMP, welcher mit dem Gesamtbodenreaktionskraftvektor ↑FMt in Beziehung steht, dann können diese Soll-Positionen verwendet werden, um die Matrizen A_R und A_L zu berechnen.
  • Ferner berechnet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 Jacobi-Matrizen Jcc_R und Jcc_L auf der Basis von den Messwerten von der Bewegungsgeschwindigkeit von dem Unterkörper 10 und dem Haltungswinkel und der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon, den Messwerten von den Drehwinkeln und den zeitlichen Veränderungsraten (Winkelgeschwindigkeiten) von den Gelenken von den Beingliedern 3R und 3L, und die Positionen (oder die Soll-Positionen) von den Angriffspunkten (den ZMPs in der vorliegenden Ausführungsform) von den Bodenreaktionskraftvektoren ↑FM_R und ↑FM_L, welche wie oben beschrieben berechnet sind.
  • Dann verwendet die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, die Jacobi-Matrizen Jcc_R und Jcc_L und die Matrizen A_R und A_L, welche wie oben beschrieben berechnet wurden, um die rechte Seite von dem obigen Ausdruck 8-20 zu berechnen, um auf diese Weise die Kontaktabschnitt-Jacobimatrix Jc zu berechnen. Somit wird die Kontaktabschnitt-Jacobimatrix Jc als die Jacobimatrix, welche die Beziehung zwischen ↑Xcc' und ↑q' durch den obigen Ausdruck 8-7 angibt, berechnet.
  • Dies vervollständigt die detaillierte Erläuterung der Verarbeitung durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 in der vorliegenden Ausführungsform.
  • Die Verarbeitung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 in der vorliegenden Ausführungsform wird nun beschrieben.
  • Wie bei der ersten Ausführungsform empfängt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 in der vorliegenden Ausführungsform der Reihe nach die Trägheitsmatrix M, den Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-linearer-Termverallgemeinerter Kraftvektor (↑N + ↑G)), welche durch die Grundparametergruppe-Bestimmungseinrichtung 81 bestimmt werden, die Kontaktabschnitt-Jacobimatrix Jc, welche durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 bestimmt wird, die Zustandsbetrag-Jacobimatrix Js1, welche durch die Zustandsbetrag-Jacobimatrix-Bestimmungseinrichtung 83 bestimmt wird, und den Zustandsbetrag-Sollwertvektor ↑S1'_cmd, welcher durch die Zustandsbetrag-Sollwert-Bestimmungseinrichtung 84 bestimmt wird. Zusätzlich empfängt die Steuer/Regeleingabe-Bestimmungseinrichtung 85 der Reihe nach 'die Messwerte von den zeitlichen Veränderungsraten (Differenzialwerte erster Ordnung) ↑q' von dem verallgemeinerten variablen Vektor ↑q (die Messwerte von der Bewegungsgeschwindigkeit von dem Unterkörper 10 und die zeitliche Veränderungsrate (Winkelgeschwindigkeit) von dem Haltungswinkel und dem Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) von dem Drehwinkel von jedem Gelenk), und auch eine Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C (den Sollwert ↑C von der Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement).
  • Dann berechnet, wie bei der ersten Ausführungsform, die Steuer/Regeleingabe-Bestimmungseinrichtung 85 die rechte Seite von dem Ausdruck 5-22 unter Verwendung der empfangenen Werte, um auf diese Weise das Gelenk-Sollantriebs-Drehmoment↑τ1_cmd zu berechnen.
  • In der vorliegenden Ausführungsform ist jedoch die Kontaktabschnitt-Jacobimatrix Jc, welche benötigt wird, um die Matrizen Jc#, Rc, Tc, den Vektor ↑Cc und die Matrix Pc zu berechnen, welche jeweils durch die obigen Ausdrücke 5-8, 5-9, 5-12, 5-13 und 5-14 definiert sind, die Jacobimatrix, welche durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 gemäß dem obigen Ausdruck 8-20 berechnet wird.
  • Ferner verwendet gemäß der vorliegenden Ausführungsform die Bewegungsbeschleunigung von einem Kontaktabschnitt-Verkörperungselement den Differenzialwert zweiter Ordnung ↑Xcc'' von dem Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc (= d2↑Xcc/dt2). Folglich ist die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C, welche benötigt wird, um den Vektor ↑Cc zu berechnen, welcher durch den Ausdruck 5-13 definiert ist, der Sollwert von ↑Xcc''. In diesem Fall wird in der vorliegenden Ausführungsform der Sollwert ↑C von ↑Xcc'' auf einen Nullvektor voreingestellt, dessen Komponentenwerte null sind (jedoch ein Nullvektor von sechs Komponenten in der vorliegenden Ausführungsform), wie bei dem einen in der ersten Ausführungsform. Gemäß der vorliegenden Ausführungsform ist daher das Ziel, den Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc konstant zu halten, welcher mit den Bewegungen der Füße 18R und 18L in Beziehung steht, welche als die Kontaktabschnitte dienen.
  • Die Verarbeitung durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 in der vorliegenden Ausführungsform ist dieselbe wie die in der ersten Ausführungsform mit der Ausnahme, dass die Kontaktabschnitt-Jacobimatrix Jc und der Sollwert ↑C, welche verwendet werden, um die rechte Seite des obigen Ausdrucks 5-22 zu berechnen, von denen in der ersten Ausführungsform verschieden sind.
  • Die Verarbeitung von der Compliance-Steuer/Regeleinrichtung 86 in der vorliegenden Ausführungsform wird nun beschrieben.
  • Wie bei der ersten Ausführungsform empfängt die Compliance-Steuer/Regeleinrichtung 86 in der vorliegenden Ausführungsform der Reihe nach den Zentrifugalkraft/Coriolis-Kraft-abhängigen verallgemeinerten Kraftvektor ↑N und den Schwerkraft-abhängigen verallgemeinerten Kraftvektor ↑G (oder den Nicht-Linearer-Term-verallgemeinerter Kraftvektor (↑N + ↑G)), welche durch die Grundparametergruppe-Bestimmungseinrichtung 81 bestimmt ist, das Gelenk-Sollantriebs-Drehmoment ↑τ1_cmd, welches durch die Steuer/Regeleingabe-Bestimmungseinrichtung 85 bestimmt wird, und das Kontaktabschnitt-Verkörperungselement-Bestimmungsverhältnis r at, welches durch die Kontaktabschnitt-Jacobimatrix-Bestimmungseinrichtung 82 bestimmt wird. Ferner empfängt die Compliance-Steuer/Regeleinrichtung 86 der Reihe nach die Matrizen Rc, Jc' und Jc#, welche von der Steuer/Regeleingeabe-Bestimmungseinrichtung 85 berechnet werden, die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C (Nullvektor in der vorliegenden Ausführungsform), die Messwerte von den Ist-Bodenreaktionskräften ↑FM_act_R und ↑FM_act_L, welche jeweils auf die Füße 18R und 18L einwirken, den Messwert von der Bewegungsgeschwindigkeit von dem repräsentativen Glied 10, den Messwert von dem Haltungswinkel von dem repräsentativen Glied (Unterkörper) 10 von dem Roboter 1 und den Messwert von der zeitlichen Veränderungsrate (Differenzialwerte erster Ordnung) davon, und den Messwert von dem Drehwinkel von jedem Gelenk und den Messwert von der zeitlichen Veränderungsrate (Winkelgeschwindigkeit) davon.
  • Dann berechnet wie bei der ersten Ausführungsform die Compliance-Steuer/Regeleinrichtung 86 eine Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd gemäß dem obigen Ausdruck 7-1. In diesem Fall hat die Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd in der vorliegenden Ausführungsform eine Bedeutung als ein abgeschätzter Wert von der äußeren Kraft, welche auf das Kontaktabschnitt-Verkörperungselement auszuüben ist, d. h. der geschätzte Wert von dem Gesamtbodenreaktionskraftvektor ↑FMt in dem Fall, wo die Bewegungsbeschleunigung ↑Xcc' von einem Kontaktabschnitt-Verkörperungselement so eingestellt ist, dass er mit ↑C übereinstimmt und das Gelenk-Ist-Antriebsdrehmoment von jedem Gelenk des Roboters 1 ist so eingestellt, dass es mit einem Gelenk-Soll-Antriebsdrehmoment übereinstimmt, welches definiert ist durch ↑τ1_cmd.
  • In der vorliegenden Ausführungsform stellt daher die Compliance-Steuer/Regeleinrichtung 86 die Kontaktabschnitt-Verkörperungselement-Soll-Einwirkungskraft ↑Fc_cmd, welche gemäß dem obigen Ausdruck 7-1 berechnet ist, direkt als eine Soll-Gesamtbodenreaktionskraft ↑FMt_cmd als den Sollwert von einer Gesamtbodenreaktionskraft ein.
  • Ferner, wie bei der ersten Ausführungsform, berechnet die Compliance-Steuer/Regeleinrichtung 86 den Messwert von einer Ist-Gesamtbodenreaktionskraft ↑FMt_act aus den Messwerten von den Ist-Bodenreaktionskräften ↑FM_act_R und ↑FM_act_L, welche jeweils auf die Füße 18R und 18L einwirken.
  • Dann berechnet die Compliance-Steuer/Regeleinrichtung 86 eine Differenz ↑ΔFMt zwischen der berechneten Soll-Gesamtbodenreaktionskraft ↑FMt_cmd und dem Messwert von der Gesamtbodenreaktionskraft ↑FMt_act (= ↑FMt_cmd – ↑FMt_act) und berechnet einen Korrekturbetrag ↑Δτt von dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, welches als die manipulierte Variable dient, um die Differenz ↑ΔFMt zu null zu konvergieren, gemäß dem folgenden Ausdruck 7-4, welcher dieselbe Form hat wie der obige Ausdruck 7-2. ↑Δτt = (Jc#T)–1 * ↑ΔFMt Ausdruck 7-4
  • In diesem Fall wirkt gemäß der vorliegenden Ausführungsform die Gesamtbodenreaktionskraft ↑FMt direkt auf ein Kontaktabschnitt-Verkörperungselement, sodass der Korrekturbetrag ↑Δτt berechnet wird durch den Ausdruck 7-4, in welchem ↑ΔFc von der rechten Seite von dem obigen Ausdruck 7-2 durch ↑ΔFMt ersetzt wurde. Im Übrigen wird Jc# von dem Ausdruck 7-4 gemäß der Definitionsgleichung von dem obigen Ausdruck 5-8 unter Verwendung der Kontaktabschnitt-Jacobimatrix Jc in der vorliegenden Ausführungsform berechnet.
  • Somit wird ↑Δτt durch ein Proportionalgesetz, welches als ein Rückkopplungssteuer/regelgesetz dient, derart bestimmt, dass die Differenz ↑ΔFMt zu null konvergiert.
  • Nachfolgend bestimmt, wie bei der ersten Ausführungsform, die Compliance-Steuer/Regeleinrichtung 86 ein korrigiertes Gelenk-Soll-Antriebsdrehmoment ↑τ1c_cmd gemäß dem obigen Ausdruck 7-3.
  • Somit wird das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd derart korrigiert, dass die Differenz zwischen der Soll-Gesamtbodenreaktionskraft ↑FMt_cmd, welche die Gesamtbodenreaktionskraft ist, welche dem Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd entspricht, und dem Messwert von der Ist-Gesamtbodenreaktionskraft ↑FMt_act nahe an null gebracht wird.
  • Dies vervollständigt die Beschreibung von der Verarbeitung durch die Compliance-Steuer/Regeleinrichtung 86 in der vorliegenden Ausführungsform.
  • Die vorliegende Ausführungsform ist dieselbe wie die erste Ausführungsform mit Ausnahme der oben beschriebenen Aspekte. Gemäß der vorliegenden Ausführungsform ist das Verfahren zur Bestimmung des Zustandsbetrag-Sollwertvektors ↑S1'_cmd dasselbe wie das von der ersten Ausführungsform, was es somit ermöglicht, die Ist-Position von dem Gesamtschwerpunkt von dem Roboter 1 daran zu hindern, von der korrekten Soll-Position abzuweichen, wie bei der ersten Ausführungsform. Dies wiederum ermöglicht es, die Haltung von dem Roboter 1 daran zu hindern, instabil zu werden, um auf diese Weise die Stabilität von den Verhalten von dem Roboter 1 ungeachtet der flexiblen Gelenke des Roboters 1 zu verbessern.
  • Ferner ist gemäß der vorliegenden Ausführungsform die Bewegungsbeschleunigung ↑Xcc'' von einem Kontaktabschnitt-Verkörperungselement definiert durch die Kontaktabschnitt Verkörperungselement-Soll-Beschleunigung ↑C (Nullvektor in der vorliegenden Ausführungsform), und dann wird ↑τ1_cmd gemäß dem obigen Ausdruck 5-20 auf der Basis von dem Zustandsbetrag-Sollwertvektor ↑S1'_cmd als der Sollwert bestimmt, welcher mit dem Zustandsbetrag in Beziehung steht, welcher von dem Roboter 1 gesteuert/geregelt werden soll.
  • Daher kann, wie bei der ersten Ausführungsform, ein korrekter ↑τ1_cmd bestimmt werden, welcher es ermöglicht, dass ↑C und ↑S1'_cmd realisiert werden, ohne den Wert von der auf den Roboter 1 einwirkenden äußeren Kraft zu identifizieren. In diesem Fall ist auch in der vorliegenden Ausführungsform der gesamte Freiheitsgrad von ↑C und ↑S1'_cmd kleiner als der gesamte Freiheitsgrad von dem gesamten Roboter 1 (der Freiheitsgrad von dem oben erwähnten verallgemeinerten Kraftvektor ↑q), sodass die Flexibilität der Bewegungen der Gelenke des Roboters 1, um Änderungen oder dgl. in einer auf den Roboter 1 einwirkenden äußeren Kraft aufzunehmen, verbessert werden kann, wie bei der ersten Ausführungsform.
  • Zusätzlich ist gemäß der vorliegenden Ausführungsform der Freiheitsgrad von der Bewegungsbeschleunigung ↑Xcc'' von einem Kontaktabschnitt-Verkörpelungselement und die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C kleiner als die in der ersten Ausführungsform (sechs Freiheitsgrade in der vorliegenden Ausführungsform). Folglich können die Beschränkungen auf den Freiheitsgrad von jedem Gelenk des Roboters 1, wenn jeder von den Füßen 18R und 18L mit dem Boden (oder einem Fußboden) in Kontakt kommt, von jenen in der ersten Ausführungsform reduziert werden. Als ein Ergebnis kann die Flexibilität der Bewegungen von den Gelenken von dem Roboter 1 weiter verbessert werden.
  • Hier wird zusätzlich die Beziehung einer Entsprechung zwischen der vorliegenden Ausführungsform und der vorliegenden Erfindung beschrieben.
  • In der vorliegenden Ausführungsform entspricht der Elastische-Kontaktabschnitt-Verkörperungselement-Verlagerungsbetrag ↑Xcc dem elastischen Verlagerungsbetrag Xcc von der Position und der Haltung von dem Kontaktabschnitt-Verkörperungselement in der vorliegenden Erfindung.
  • Ferner entspricht das rechte Beinglied 3R dem ersten Beinglied in der vorliegenden Erfindung, während der rechte Fuß 18R dem distalen Ende von dem ersten Beinglied entspricht. Der elastische Verlagerungsbetrag ↑X_R, welcher mit dem rechten Fuß 18R in Beziehung steht, entspricht dem elastischen Verlagerungsbetrag X1 von der Position und der Haltung von dem distalen Ende von dem ersten Beinglied in der vorliegenden Erfindung.
  • Ferner entspricht das linke Beinglied 3L dem zweiten Beinglied in der vorliegenden Erfindung, während der linke Fuß 18L dem distalen Ende von dem zweiten Beinglied entspricht. Der elastische Verlagerungsbetrag ↑X_L, welcher mit dem linken Fuß 18L in Beziehung steht, entspricht dem elastischen Verlagerungsbetrag X2 von der Position und der Haltung von dem distalen Ende von dem zweiten Beinglied in der vorliegenden Erfindung.
  • Der obige Ausdruck 8-18 entspricht dem obigen Ausdruck 02 in der vorliegenden Erfindung. In diesem Fall entsprechen die Matrizen A_R und A_L von der rechten Seite von dem Ausdruck 8-18 jeweils den Matrizen A1 und A2 in der vorliegenden Erfindung.
  • Ferner entspricht der obige Ausdruck 8-20 dem obigen Ausdruck 03 in der vorliegenden Erfindung. In diesem Fall entsprechen die Jacobi-Matrizen Jcc_R und Jcc_L von der rechten Seite von dem Ausdruck 8-20 jeweils den Jacobi-Matrizen J1 und J2 in der vorliegenden Erfindung.
  • Die Beziehung einer Entsprechung zwischen der vorliegenden Ausführungsform und der vorliegenden Erfindung ist dieselbe wie die Beziehung einer Entsprechung zwischen der ersten Ausführungsform und der vorliegenden Erfindung mit Ausnahme der oben beschriebenen Aspekte.
  • Das Folgende wird einige Modifikationen von den oben beschriebenen Ausführungsformen beschreiben.
  • In jeder von den oben erwähnten Ausführungsformen hat der Roboter 1 einen zweibeinigen Gehroboter, welcher ein mit Beinen versehener mobiler Roboter ist. Jedoch kann der Roboter in der vorliegenden Erfindung ein mobiler Roboter sein, welcher ein anderer als ein mit Beinen versehener mobiler Roboter ist (z. B. ein Roboter, welcher sich auf Rädern bewegt). Alternativ kann der Roboter in der vorliegenden Erfindung ein installierter Roboter sein, von dem irgendeines seiner Glieder an einem Boden oder dgl. festgelegt ist.
  • Die vorliegende Erfindung kann auch auf einen Fall angewendet werden, wo der Roboter 1 läuft oder sich bewegt, und eine Betätigung mit den Händen 30R und/oder 30L zur selben Zeit durchführt, statt auf den Fall begrenzt zu sein, wo der Roboter 1 geht.
  • Ferner kann der Zustandsbetragvektor ↑S als der Bewegungszustandsbetrag alternativ nur aus der vertikalen Komponente von dem Gesamttranslationsimpuls ↑P gebildet sein. Weiter alternativ kann ein Satz von der vertikalen Komponente von ↑P und dem Gesamtdrehimpuls ↑L als der zu steuernde/regelnde Bewegungszustandsbetrag verwendet werden.
  • Ferner wurde in der ersten Ausführungsform die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C auf null gesetzt. Alternativ kann jedoch das Ziel von irgendeiner anderen Art von Bewegung von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 als ↑C gesetzt wenden. Beispielsweise können die Bewegungsmuster von den Kontaktabschnitt-Verkörperungspunkten a1 bis a4 auf sinusförmige Muster gesetzt sein. Zusätzlich kann in dem Fall, wo beispielsweise der Roboter 1 in einem System, wie z. B. einem Aufzug vorhanden ist, in welchem eine Beschleunigung erzeugt wird, die Beschleunigung des Systems (die von einem Inertialkoordinatensystem beobachtete Beschleunigung) der Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C hinzugefügt werden.
  • In ähnlicher Weise kann ein Sollwert, welcher ein anderer als der Nullvektor ist, als die Kontaktabschnitt-Verkörperungselement-Soll-Beschleunigung ↑C in der oben erwähnten zweiten Ausführungsform gesetzt sein.
  • Ferner kann die Compliance-Steuer/Regeleinrichtung 86 weggelassen werden. Insbesondere kann das Gelenk-Soll-Antriebsdrehmoment ↑τ1_cmd, welches von der Steuer/Regeleingabe-Bestimmungseinrichtung 85 bestimmt wird, direkt verwendet werden, um das Antriebsdrehmoment von jedem Gelenk des Roboters 1 zu steuern/regeln.
  • Steuer/Regeleinrichtung für einen mobilen Roboter, bei der der Sollwert von einem Bewegungszustandsbetrag von einem mobilen Roboter wenigstens den Sollwert von einer vertikalen Komponente eines Differenzialwerts erster Ordnung von dem Translationsimpuls von dem gesamten mobilen Roboter umfasst. Der Sollwert wird von einer Zustandsbetrag-Sollwert-Bestimmungseinrichtung derart bestimmt, dass der beobachtete Wert von der vertikalen Position von einem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz. Eine Steuer/Regeleingabe-Bestimmungseinrichtung führt die Verarbeitung einer inversen Dynamikberechnung durch unter Verwendung des Sollwerts von dem Bewegungszustandsbetrag, um auf diese Weise die Sollantriebskraft für jedes Gelenk zu bestimmen. Der Betrieb eines Aktuators wird auf der Basis der bestimmten Sollantriebskraft gesteuert/geregelt.

Claims (8)

  1. Steuer/Regeleinrichtung für einen mobilen Roboter, welcher eine Mehrzahl von Gliedern hat, welche durch Gelenke miteinander verbunden sind, und Aktuatoren hat, um die Gelenke anzutreiben, und in welchem ein Kraftübertragungssystem, welches zwischen jedem Gelenk und jedem Aktuator angeordnet ist, mit einem Federelement versehen ist, welches die von dem Aktuator erzeugte Kraft in eine elastische Kraft umwandelt und die elastische Kraft auf das Gelenk ausübt, wobei die Steuer/Regeleinrichtung umfasst: eine Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit, welche einen Bewegungszustandsbetrag-Sollwert bestimmt, der ein Sollwert ist, welcher mit einem vorbestimmten Typ von Bewegungszustandsbetrag des mobilen Roboters in Beziehung steht, welcher einen Wert hat, der von dem Wert von einem verallgemeinerten variablen Vektor des mobilen Roboters abhängt, wobei der Vektor von dem Verlagerungsbetrag von jedem Gelenk des mobilen Roboters und der Position und der Haltung eines vorherbestimmten repräsentativen Glieds des mobilen Roboters in einem globalen Koordinatensystem als den Komponenten davon gebildet ist; eine Soll-Antriebskraft-Bestimmungseinheit, welche den bestimmten Bewegungszustandsbetrag-Sollwert empfängt und eine Sollantriebskraft bestimmt, welche auf jedes Gelenk des mobilen Roboters auszuüben ist, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird unter Verwendung wenigstens des Bewegungszustandsbetrag-Sollwerts; und eine Aktuator-Steuer/Regeleinheit, welche den Betrieb des Aktuators auf der Basis von wenigstens der bestimmten Soll-Antriebskraft steuert/regelt, wobei der Bewegungszustandsbetrag-Sollwert wenigstens einen Sollwert von einer vertikalen Komponente eines Differenzialwerts erster Ordnung von einem Gesamtranslationsimpuls des mobilen Roboters umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit eine Einheit hat, welche den Sollwert von der vertikalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls derart bestimmt, dass der Beobachtungswert der vertikalen Position von einem Gesamtschwerpunkt des mobilen Roboters zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz.
  2. Steuer/Regeleinrichtung für einen mobilen Roboter nach Anspruch 1, wobei der Bewegungszustandsbetrag-Sollwert ferner einen Sollwert von einer horizontalen Komponente von dem Differenzialwert erster Ordnung von einem Gesamt-Translationsimpuls des mobilen Roboters umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit ferner eine Einheit umfasst, welche den Sollwert von der horizontalen Komponente von dem Differenzialwert erster Ordnung von dem Translationsimpuls derart bestimmt, dass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz.
  3. Steuer/Regeleinrichtung für einen mobilen Roboter nach Anspruch 1, wobei der Bewegungszustandsbetrag-Sollwert ferner einen Sollwert von dem Differenzialwert erster Ordnung von einem Drehimpuls um einen vorbestimmten Referenzpunkt von dem gesamten mobilen Roboter umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit ferner eine Einheit hat, welche den Sollwert von dem Differenzialwert erster Ordnung von dem Drehimpuls derart bestimmt, dass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz.
  4. Steuer/Regeleinheit für einen mobilen Roboter nach Anspruch 2, wobei der Bewegungszustandsbetrag-Sollwert ferner einen Sollwert von dem Differenzialwert erster Ordnung von einem Drehimpuls um einen vorbestimmten Referenzpunkt von dem gesamten mobilen Roboter umfasst, und die Bewegungszustandsbetrag-Sollwert-Bestimmungseinheit ferner eine Einheit hat, welche den Sollwert von dem Differenzialwert erster Ordnung von dem Drehimpuls derart bestimmt, dass der Beobachtungswert von der horizontalen Position von dem Gesamtschwerpunkt von dem mobilen Roboter zu einem vorbestimmten Sollwert konvergiert, gemäß einem Rückkopplungssteuer/regelgesetz.
  5. Steuer/Regeleinheit für einen mobilen Roboter nach Anspruch 1, ferner umfassend: eine Grundparametergruppe-Berechnungseinheit, welche eine Grundparametergruppe berechnet, die gebildet ist von einer Trägheitsmatrix, um einen Differenzialwert zweiter Ordnung von dem verallgemeinerten variablen Vektor in einen verallgemeinerten Kraftvektor und einen schwerkraftabhängigen verallgemeinerten Kraftvektorwert umzuwandeln, welcher der Wert von einem verallgemeinerten Kraftvektor ist, welcher durch eine auf jedes Glied von dem mobilen Roboter einwirkende Schwerkraft erzeugt wird, oder eine Grundparametergruppe, welche von der Trägheitsmatrix, dem schwerkraftabhängigen verallgemeinerten Kraftvektor und einem Zentrifugalkraft/Coriolis-Kraft-abhangigen verallgemeinerten Kraftvektorwert gebildet ist, welcher der Wert von einem verallgemeinerten Kraftvektor ist, welcher durch eine Zentrifugalkraft und eine Coriolis-Kraft, die auf jedes Glied von dem mobilen Roboter wirken, erzeugt wird, auf der Basis von verallgemeinerter variabler Beobachtungsinformation, welche wenigstens den Beobachtungswert von einem tatsächlichen Verlagerungsbetrag von jedem Gelenk von dem mobilen Roboter umfasst; eine Kontaktabschnitt-Jacobimatrix-Berechnungseinheit, welche Kontaktzustandsinformation, welche den Kontaktzustand oder die Kontaktzustände von einem oder mehreren Kontaktabschnitten anzeigt, welche mit einer Außenwelt in Kontakt kommen, während sich der mobile Roboter bewegt, und die verallgemeinerte variable Beobachtungsinformation empfängt und eine Kontaktabschnitt-Jacobimatrix berechnet, welche eine Jacobimatrix ist, die eine Beziehung ausdrückt zwischen der Bewegungsgeschwindigkeit von einem vorbestimmten Kontaktabschnitt-Verkörperungselement, welches als ein Element gesetzt ist, welches die Bewegung von dem einen oder mehreren Kontaktabschnitten verkörpert, welche mit der Außenwelt in Kontakt sind, und dem Differenzialwert erster Ordnung von dem verallgemeinerten variablen Vektor auf der Basis von wenigstens der empfangenen Kontaktzustandsinformation und der verallgemeinerten variablen Beobachtungsinformation; und eine Zustandsbetrag-Jacobimatrix-Berechnungseinheit, welche die verallgemeinerte variable Beobachtungsinformation empfängt und eine Zustandsbetrag-Jacobimatrix berechnet, welche eine Jacobimatrix ist, die eine Beziehung zwischen dem Bewegungszustandsbetrag und dem Differenzialwert erster Ordnung von dem verallgemeinerten variablen Vektor auf der Basis von wenigstens der empfangenen verallgemeinerten variablen Beobachtungsinformation ausdrückt, wobei die Soll-Antriebskraft-Bestimmungseinheit die Grundparametergruppe, die Kontaktabschnitt-Jacobimatrix und die Zustandsbetrag-Jacobimatrix, welche berechnet wurden, den Sollwert von einer Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung, welcher der Sollwert von der Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement ist, die verallgemeinerte variable Beobachtungsinformation, und den bestimmten Bewegungszustandsbetrag-Sollwert empfängt, die empfangenen Daten verwendet, um einen Komponentenwert, welcher dem Verlagerungsbetrag von jedem Gelenk entspricht, in einem verallgemeinerten Soll-Kraftvektor τcmd zu berechnen, welcher eine Sollvorgabe von einem verallgemeinerten Kraftvektor ist, der die Beziehung erfüllt, welche durch den nachstehend angegebenen Ausdruck 01 angegeben ist, und den berechneten Komponentenwert als eine Sollantriebskraft, welche auf das Gelenk auszuüben ist, bestimmt. S'+ (Js * M–1 * Tc – Js') * q' = (Js * M–1 * Pc) * (τcmd – τcmpn) Ausdruck 01 wobei q: verallgemeinerter variabler Vektor q': Beobachtungswert eines Differenzialwerts erster Ordnung von q (= dq/dt) S: Zustandsbetrag S': Sollwert von einem Differenzialwert erster Ordnung von S (= dS/dt) M: Trägheitsmatrix τcmpn: Vektor, welcher definiert ist durch τcmpn ≡ (N + G) – Pc–1 * Cc oder τcmpn ≡ G – Pc–1 * Cc G: Schwerkraft-abhängiger verallgemeinerter Kraftvektorwert N: Zentrifugalkraft/Coriolis-Kraft-abhängiger verallgemeinerter Kraftvektorwert Pc: Matrix, welche definiert ist durch Pc ≡ I – JcT * (Jc#)T I: Einheitsmatrix Jc: Kontaktabschnitt-Jacobimatrix Jc#: Matrix, welche definiert ist durch Jc# ≡ (M–1)T * JcT * RcT Rc: Matrix, welche definiert ist durch Rc ≡ ((Jc * M–1 * JcT)–1)T Cc: Vektor, welcher definiert ist durch Cc ≡ –JcT * Rc * C C: Sollwert von einer Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung (Skalar oder Vektor) Tc: Matrix, welche definiert ist durch Tc ≡ –JcT * Rc * Jc' Jc': Matrix, welche erhalten wird, indem Jc einer Differentialion erster Ordnung (= dJc/dt) unterzogen wird Js: Zustandsbetrag-Jacobimatrix Js': Matrix, welche erhalten wird, indem Js einer Differentialion erster Ordnung (= dJs/dt) unterzogen wird
  6. Steuer/Regeleinrichtung für einen mobilen Roboter nach Anspruch 5, wobei der mobile Roboter ein zweibeiniger mobiler Roboter ist, welcher sich auf einer Bodenoberfläche bewegt, indem er eine Bewegung durchführt, bei welcher die distalen Abschnitte von zwei Beingliedern abwechselnd mit der Bodenoberfläche in Kontakt kommen, das Kontaktabschnitt-Verkörperungselement ein Element ist, dessen Position und Haltung elastische Verlagerungen zeigen basierend auf einer Gesamt-Boden-Reaktionskraft, welche die resultierende Kraft von Boden-Reaktionskräften ist, welche auf die zwei Beinglieder einwirken, und auch ein Element ist, bei dem die elastischen Verlagerungsbeträge von der Position und Haltung von dem Kontaktabschnitt-Verkörperungselement derart sind, dass die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem ersten Beinglied, welche durch eine Boden-Reaktionskraft bewirkt werden, welche auf das erste Beinglied von den zwei Beingliedern einwirkt, und die elastischen Verlagerungsbeträge von der Position und Haltung von dem distalen Abschnitt von einem zweiten Beinglied, welche durch eine Boden-Reaktionskraft verursacht werden, welche auf das zweite Beinglied von den zwei Beingliedern einwirkt, eine Beziehung haben, welche durch den nachstehend angegebenen Ausdruck 02 angegeben ist; und die Kontaktabschnitt-Jacobimatrix-Berechnungseinheit die Kontaktabschnitt-Jacobimatrix Jc berechnet, indem die rechte Seite des nachstehend angegebenen Ausdrucks 03 berechnet wird. Xcc = r at * A1 * X1 + (1 – r at) * A2 * X2 Ausdruck 02 Jc = r at * A1 * J1 + (1 – r at) * A2 * J2 Ausdruck 03 wobei Xcc: Vector, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und Haltung von einem Kontaktabschnitt-Verkörperungselement sind r at: Koeffizient, welcher gemäß Kontaktzustandsinformation gesetzt ist, so dass r at = 0 in einem Zustand gilt, in welchem nur das erste Beinglied mit dem Boden in Kontakt ist, r at = 1 in einem Zustand gilt, in welchem nur das zweite Beinglied mit dem Boden in Kontakt ist, oder r at sich kontinuierlich in einem Bereich verändert, welcher definiert ist durch 0 ≤ r at ≤ 1 in einem Zustand, in welchem sowohl das erste Beinglied als auch das zweite Beinglied mit dem Boden in Kontakt sind X1: Vektor, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und der Haltung von dem distalen Abschnitt von dem ersten Beinglied sind, welche gemäß einer auf das erste Beinglied einwirkenden Boden-Reaktionskraft erzeugt werden X2: Vektor, dessen Komponenten die elastischen Verlagerungsbeträge von der Position und der Haltung von dem distalen Abschnitt von dem zweiten Beinglied sind, welche gemäß einer auf das zweite Beinglied einwirkenden Boden-Reaktionskraft erzeugt werden A1: Matrix zur Umwandlung eines ersten Boden-Reaktionskraft-Vektors, welcher gebildet ist von einer Translationskraft-Komponente und einer Momentenkomponente von einer Boden-Reaktionskraft, welche auf das erste Beinglied einwirkt, in einen Boden-Reaktionskraft-Vektor, welcher auf das Kontaktabschnitt-Verkörperungselement einwirkt A2: Matrix zur Umwandlung eines zweiten Boden-Reaktionskraft-Vektors, welcher gebildet ist von einer Translationskraft-Komponente und einer Momentenkomponente von einer Boden-Reaktionskraft, welche auf das zweite Beinglied einwirkt, in einen Boden-Reaktionskraft-Vektor, welcher auf das Kontaktabschnitt-Verkörperungselement einwirkt J1: Jacobimatrix, welche die Beziehung zwischen einem Differenzialwert erster Ordnung X1' von X1 (= dX1/dt) und einem Differenzialwert erster Ordnung q' von einem verallgemeinerten variablen Vektor q durch X1' = J1 * q' ausdrückt J2: Jacobimatrix, welche die Beziehung zwischen einem Differenzialwert erster Ordnung X2' von X2 (= dX2/dt) und einem Differenzialwert erster Ordnung q' von einem verallgemeinerten variablen Vektor q durch X2' = J2 * q' ausdrückt
  7. Steuer/Regeleinrichtung für einen mobilen Roboter nach Anspruch 5, wobei die Aktuator-Steuer/Regeleinheit eine Kontaktabschnitt-Außenkraft-Sollwert-Bestimmungseinheit umfasst, welche einen Kontaktabschnitt-Außenkraft-Sollwert als einen Schätzwert von einer Außenkraft, welche auf den Kontaktabschnitt einwirkt, bestimmt, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird, unter Verwendung der Sollantriebskraft und des Kontaktabschnitt-Bewegungsbeschleunigungssollwerts, welche bestimmt wurden, in dem Fall, wo angenommen wird, dass eine Antriebskraft, welche tatsächlich auf jedes Gelenk von dem Roboter auszuüben ist, mit der vorbestimmten Soll-Antriebskraft übereinstimmt und die Ist-Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement mit dem Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung übereinstimmt, und eine Antriebskraft-Korrekturbetrag-Berechnungseinheit umfasst, welche einen Korrekturbetrag von der Soll-Antriebskraft gemäß einem Rückkopplungssteuer/regelgesetz bestimmt, so dass eine Differenz zwischen dem Kontaktabschnitt-Außenkraft-Sollwert und einem Beobachtungswert von einer Außenkraft, welche tatsächlich auf den Kontaktabschnitt einwirkt, zu Null konvergiert, und der Betrieb von dem Aktuator auf der Basis von der Soll-Antriebskraft gesteuert/geregelt wird, welche unter Verwendung des Korrekturbetrags korrigiert wurde.
  8. Steuer/Regeleinrichtung für einen mobilen Roboter nach Anspruch 6, wobei die Aktuator-Steuer/Regeleinheit eine Kontaktabschnitt-Außenkraft-Sollwert-Bestimmungseinheit umfasst, welche einen Kontaktabschnitt-Außenkraft-Sollwert als einen Schätzwert von einer Außenkraft, welche auf den Kontaktabschnitt einwirkt, bestimmt, indem eine Verarbeitung einer inversen Dynamikberechnung durchgeführt wird, unter Verwendung der Sollantriebskraft und des Kontaktabschnitt-Bewegungsbeschleunigungssollwerts, welche bestimmt wurden, in dem Fall, wo angenommen wird, dass eine Antriebskraft, welche tatsächlich auf jedes Gelenk von dem Roboter auszuüben ist, mit der vorbestimmten Soll-Antriebskraft übereinstimmt und die Ist-Bewegungsbeschleunigung von dem Kontaktabschnitt-Verkörperungselement mit dem Sollwert von der Kontaktabschnitt-Verkörperungselement-Bewegungsbeschleunigung übereinstimmt, und eine Antriebskraft-Korrekturbetrag-Berechnungseinheit umfasst, welche einen Korrekturbetrag von der Soll-Antriebskraft gemäß einem Rückkopplungssteuer/regelgesetz bestimmt, so dass eine Differenz zwischen dem Kontaktabschnitt-Außenkraft-Sollwert und einem Beobachtungswert von einer Außenkraft, welche tatsächlich auf den Kontaktabschnitt einwirkt, zu Null konvergiert, und der Betrieb von dem Aktuator auf der Basis von der Soll-Antriebskraft gesteuert/geregelt wird, welche unter Verwendung des Korrekturbetrags korrigiert wurde.
DE102010064267.3A 2009-12-28 2010-12-28 Steuer/Regeleinrichtung für einen mobilen Roboter Active DE102010064267B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009-297177 2009-12-28
JP2009297177 2009-12-28
JP2010204855A JP5506618B2 (ja) 2009-12-28 2010-09-13 ロボットの制御装置
JP2010-204855 2010-09-13

Publications (2)

Publication Number Publication Date
DE102010064267A1 DE102010064267A1 (de) 2011-06-30
DE102010064267B4 true DE102010064267B4 (de) 2015-06-25

Family

ID=44188486

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010064267.3A Active DE102010064267B4 (de) 2009-12-28 2010-12-28 Steuer/Regeleinrichtung für einen mobilen Roboter

Country Status (3)

Country Link
US (1) US8612053B2 (de)
JP (1) JP5506618B2 (de)
DE (1) DE102010064267B4 (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
KR101953113B1 (ko) * 2011-05-30 2019-03-05 삼성전자주식회사 로봇 및 그 제어방법
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
JP5907678B2 (ja) * 2011-07-20 2016-04-26 オリンパス株式会社 医療用動作機構およびマニピュレータ
WO2013069291A1 (ja) * 2011-11-10 2013-05-16 パナソニック株式会社 ロボット、ロボットの制御装置、制御方法、及び制御プログラム
JP5623376B2 (ja) * 2011-12-02 2014-11-12 本田技研工業株式会社 脚式移動ロボットの歩容生成装置及びロボットの動作目標生成装置
JP5623375B2 (ja) * 2011-12-02 2014-11-12 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
FR3002047B1 (fr) * 2013-02-08 2015-02-27 Inst Nat Rech Inf Automat Procede de commande d'un robot deformable, module et programme d'ordinateur associes
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9579789B2 (en) 2013-09-27 2017-02-28 Brain Corporation Apparatus and methods for training of robotic control arbitration
US9463571B2 (en) 2013-11-01 2016-10-11 Brian Corporation Apparatus and methods for online training of robots
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9248569B2 (en) 2013-11-22 2016-02-02 Brain Corporation Discrepancy detection apparatus and methods for machine learning
US9358685B2 (en) * 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
JP6388367B2 (ja) * 2014-04-04 2018-09-12 キヤノン株式会社 ロボット制御方法、ロボット装置、プログラム及び記録媒体
US9346167B2 (en) 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
JP6228079B2 (ja) * 2014-07-16 2017-11-08 本田技研工業株式会社 移動ロボットの動作目標生成装置
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
JP6240590B2 (ja) * 2014-11-12 2017-11-29 本田技研工業株式会社 移動ロボットの制御装置
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
US9555846B1 (en) * 2015-03-20 2017-01-31 Google Inc. Pelvis structure for humanoid robot
JP7058929B2 (ja) 2015-10-27 2022-04-25 キヤノン株式会社 駆動装置、ロボット装置、制御方法、物品の製造方法、制御プログラム、および記録媒体
US10471594B2 (en) * 2015-12-01 2019-11-12 Kindred Systems Inc. Systems, devices, and methods for the distribution and collection of multimodal data associated with robots
US9778132B1 (en) * 2015-12-16 2017-10-03 X Development Llc Methods and systems for force sensor calibration
JP6483014B2 (ja) * 2015-12-25 2019-03-13 本田技研工業株式会社 移動ロボットの制御装置
DE102017000063B4 (de) * 2016-01-14 2019-10-31 Fanuc Corporation Robotereinrichtung mit Lernfunktion
US10241514B2 (en) 2016-05-11 2019-03-26 Brain Corporation Systems and methods for initializing a robot to autonomously travel a trained route
US9987752B2 (en) 2016-06-10 2018-06-05 Brain Corporation Systems and methods for automatic detection of spills
US10282849B2 (en) 2016-06-17 2019-05-07 Brain Corporation Systems and methods for predictive/reconstructive visual object tracker
US10016896B2 (en) 2016-06-30 2018-07-10 Brain Corporation Systems and methods for robotic behavior around moving bodies
US10274325B2 (en) 2016-11-01 2019-04-30 Brain Corporation Systems and methods for robotic mapping
US10001780B2 (en) 2016-11-02 2018-06-19 Brain Corporation Systems and methods for dynamic route planning in autonomous navigation
WO2018086393A1 (zh) * 2016-11-10 2018-05-17 深圳市迈步机器人科技有限公司 柔性驱动器、机器人关节、机器人和外骨骼机器人
US10723018B2 (en) 2016-11-28 2020-07-28 Brain Corporation Systems and methods for remote operating and/or monitoring of a robot
US10377040B2 (en) 2017-02-02 2019-08-13 Brain Corporation Systems and methods for assisting a robotic apparatus
US10852730B2 (en) 2017-02-08 2020-12-01 Brain Corporation Systems and methods for robotic mobile platforms
US10293485B2 (en) 2017-03-30 2019-05-21 Brain Corporation Systems and methods for robotic path planning
CN111511510A (zh) * 2018-01-10 2020-08-07 索尼公司 控制设备、控制方法和程序
US11084445B2 (en) * 2019-02-06 2021-08-10 Ford Global Technologies, Llc Energy-absorbing knee bolster
CN110244791B (zh) * 2019-07-11 2020-05-15 北京理工大学 一种双足机器人足部力和力矩跟随控制方法
KR20190117421A (ko) * 2019-09-27 2019-10-16 엘지전자 주식회사 운송 로봇 및 그의 제어 방법
TW202147049A (zh) * 2020-01-28 2021-12-16 日商歐普同股份有限公司 動作控制裝置、動作控制方法、程式
CN112631277B (zh) * 2020-12-08 2022-01-18 中山大学 一种四足机器人站姿转换的平衡控制方法及系统
CN112859593B (zh) * 2020-12-31 2022-05-10 北京理工大学 一种轮腿式机器人机身姿态及足端受力协同控制方法
CN113855474B (zh) * 2021-08-25 2023-10-31 上海傅利叶智能科技有限公司 用于控制两个康复机器人的方法、装置和康复机器人系统
DE102022107587A1 (de) 2022-03-30 2023-10-05 Deutsches Zentrum für Luft- und Raumfahrt e.V. Verfahren zur Gangsteuerung eines Roboters, Regler, Computerprogramm und Robotersystem

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05305579A (ja) * 1992-04-30 1993-11-19 Honda Motor Co Ltd 脚式移動ロボットの歩行制御装置
US20050107916A1 (en) * 2002-10-01 2005-05-19 Sony Corporation Robot device and control method of robot device
US7191036B2 (en) * 2001-04-27 2007-03-13 Honda Giken Kogyo Kabushiki Kaisha Motion generation system of legged mobile robot
US20070083290A1 (en) * 2005-10-12 2007-04-12 Kenichiro Nagasaka Apparatus and method for computing operational-space physical quantity
JP2007160446A (ja) * 2005-12-12 2007-06-28 Honda Motor Co Ltd 脚式移動ロボット制御装置および脚式移動ロボット、並びに、脚式移動ロボット制御方法
US7482775B2 (en) * 2005-12-27 2009-01-27 Fujitsu Limited Robot controller
US7530410B2 (en) * 2004-03-23 2009-05-12 Honda Motor Co., Ltd. Legged mobile robot and control system thereof
US20090312867A1 (en) * 2005-12-12 2009-12-17 Honda Motor Co., Ltd. Gait creation device of leg-type mobile robot

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01210292A (ja) * 1988-02-19 1989-08-23 Toshiba Corp ロボットの環境との接触検出法
US5355064A (en) * 1992-03-04 1994-10-11 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
US5432417A (en) * 1992-04-30 1995-07-11 Honda Giken Kogyo Kabushiki Kaisha Locomotion control system for legged mobile robot
US6243623B1 (en) * 1997-01-31 2001-06-05 Honda Giken Kogyo Kabushiki Kaisha Leg type mobile robot control apparatus
WO1999054095A1 (fr) * 1998-04-20 1999-10-28 Honda Giken Kogyo Kabushiki Kaisha Controleur pour robot mobile muni de jambes
EP1671754B1 (de) * 2000-11-17 2010-01-13 Honda Giken Kogyo Kabushiki Kaisha Gangmustererzeugungssystem für beweglichen Roboter mit Beinen
US7684896B2 (en) * 2001-06-29 2010-03-23 Honda Motor Co., Ltd. System and method of estimating joint loads using an approach of closed form dynamics
US7469166B2 (en) * 2001-06-29 2008-12-23 Honda Motor Co., Ltd. System and method of predicting novel motion in a serial chain system
JP3674778B2 (ja) * 2001-09-27 2005-07-20 本田技研工業株式会社 脚式移動ロボットの脚体関節アシスト装置
EP1470900B1 (de) * 2001-12-28 2010-07-14 Honda Giken Kogyo Kabushiki Kaisha Gangerzeugungsvorrichtung und steuervorrichtung für beweglichen roboter mit beinen
US7319918B2 (en) * 2001-12-28 2008-01-15 Honda Giken Kogyo Kabushiki Kaisha Gait generation device for legged mobile robot
JP4225968B2 (ja) * 2002-04-26 2009-02-18 本田技研工業株式会社 脚式移動ロボットの制御装置
JP4483254B2 (ja) * 2002-10-01 2010-06-16 ソニー株式会社 ロボット装置及びロボット装置の制御方法
JP3599244B2 (ja) * 2002-11-06 2004-12-08 ソニー株式会社 ロボット装置、ロボット装置の運動制御装置並びに運動制御方法
JP4587738B2 (ja) * 2003-08-25 2010-11-24 ソニー株式会社 ロボット装置及びロボットの姿勢制御方法
US8082062B2 (en) * 2005-06-10 2011-12-20 Honda Motor Co., Ltd. Regenerative actuation in motion control
US8924021B2 (en) * 2006-04-27 2014-12-30 Honda Motor Co., Ltd. Control of robots from human motion descriptors
JP4915934B2 (ja) * 2007-04-09 2012-04-11 独立行政法人産業技術総合研究所 脚式移動ロボットの制御装置
JP5506617B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05305579A (ja) * 1992-04-30 1993-11-19 Honda Motor Co Ltd 脚式移動ロボットの歩行制御装置
US7191036B2 (en) * 2001-04-27 2007-03-13 Honda Giken Kogyo Kabushiki Kaisha Motion generation system of legged mobile robot
US20050107916A1 (en) * 2002-10-01 2005-05-19 Sony Corporation Robot device and control method of robot device
US7530410B2 (en) * 2004-03-23 2009-05-12 Honda Motor Co., Ltd. Legged mobile robot and control system thereof
US20070083290A1 (en) * 2005-10-12 2007-04-12 Kenichiro Nagasaka Apparatus and method for computing operational-space physical quantity
JP2007160446A (ja) * 2005-12-12 2007-06-28 Honda Motor Co Ltd 脚式移動ロボット制御装置および脚式移動ロボット、並びに、脚式移動ロボット制御方法
US20090312867A1 (en) * 2005-12-12 2009-12-17 Honda Motor Co., Ltd. Gait creation device of leg-type mobile robot
US7482775B2 (en) * 2005-12-27 2009-01-27 Fujitsu Limited Robot controller

Also Published As

Publication number Publication date
US20110160906A1 (en) 2011-06-30
JP2011152634A (ja) 2011-08-11
JP5506618B2 (ja) 2014-05-28
US8612053B2 (en) 2013-12-17
DE102010064267A1 (de) 2011-06-30

Similar Documents

Publication Publication Date Title
DE102010064267B4 (de) Steuer/Regeleinrichtung für einen mobilen Roboter
DE102010064270B4 (de) Steuer/Regeleinrichtung für einen Roboter
DE112010005024B4 (de) Roboter-Steuer- /Regeleinrichtung
DE102012208905B4 (de) Regelungs-/Steuerungsvorrichtung eines mobilen Objekts und Bodenfläche-Schätzvorrichtung
DE102018103892B4 (de) Mobiler Roboter und Beinanordnung hierfür sowie Verfahren zum Ausführen einer Laufbewegung
DE60126153T2 (de) Gangmustererzeugungsvorrichtung für beweglichen roboter mit beinen
DE60020315T2 (de) Beweglicher Roboter mit Beinen und Vorrichtung für sein Hüftgelenk
DE60313952T2 (de) Steuerung für mobilen roboter mit beinen
DE602004002702T2 (de) Laufender Roboter und Verfahren zu dessen Steuerung
DE60004302T2 (de) Schreitroboter mit Beinen
DE69836765T2 (de) Steuergerät eines mit beinen beweglichen roboters
DE112006000313B4 (de) Bebeinter Roboter und Steuerungsverfahren für denselben
DE112005002207B4 (de) Laufroboter unter Verwendung passiver Änderungen in Gelenkwinkeln und Steuerverfahren davon
DE69636447T2 (de) Verfahren und vorrichtung zum steuern der bewegung eines redundanten manipulators
DE60120363T2 (de) Orientationsbestimmung in einem neigbaren körper mittels einer modifizierten quaternionsdatendarstellung
DE69734835T2 (de) Haltungskontrolleur einen sich auf beinen bewegenden robotern
DE102005044412B4 (de) Kraftsensor-Abnormalitätserfassungssystem für einen mobilen Schreitroboter
DE102013111210A1 (de) Verfahren zum Steuern eines Robotergangs
DE4408351A1 (de) Exoskeletales System
Niiyama et al. Design principle based on maximum output force profile for a musculoskeletal robot
DE60225717T2 (de) Zweibeinige bewegungsvorrichtung und vorrichtung und verfahren zur steuerung des gehens der zweibeinigen bewegungsvorrichtung
DE102010045525A1 (de) Handgelenk eines geschickten humanoiden Roboters
EP2072194B1 (de) Verfahren und Vorrichtung zur modellbasierten Regelung eines Manipulators
EP0892256A1 (de) Einrichtung zur Gewichtsbestimmung von angelenkten Lasten
EP1920892B1 (de) Robotersteuerung, Roboter und Verfahren zum Steuern eines Roboters

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: B25J0005000000

Ipc: B25J0009160000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: B25J0005000000

Ipc: B25J0009160000

Effective date: 20110914

R163 Identified publications notified
R163 Identified publications notified

Effective date: 20141104

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R084 Declaration of willingness to licence