(57)【要約】【課題】  エンターテインメント性や有用性を向上させ得るロボット装置の制御方法を提案する。【解決手段】  可動部を駆動する動力源としてのモータの回転を、実行すべき行動内容に応じて制御すると共に、当該モータの回転状態を検出し、検出したモータの回転状態に基づいて、可動部に作用する外力の大きさを推定し、外力の大きさの推定結果に基づいて、外力の大きさと、当該外力によるモータの回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるように、モータの回転を制御し、状況に応じて、制御手段に設定された調整ゲインを変更するようにした。【選択図】        図３５
2006000966.tif 000002
【特許請求の範囲】
【請求項１】
変位自在の可動部が設けられたロボット装置において、
上記可動部を駆動する動力源としてのモータと、
実行すべき行動内容に応じた指令を出力する上位コントローラと、
上記上位コントローラから与えられる上記指令に応じて上記モータの回転を制御する制御手段と、
上記モータの回転状態を検出するセンサ手段と、
上記センサ手段の検出結果に基づいて上記可動部に作用する外力の大きさを推定する外力推定手段と
を具え、
上記制御手段は、
上記外力推定手段の推定結果に基づいて、上記外力の大きさと、当該外力による上記モータの上記回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるように上記モータの回転を制御し、
上記上位コントローラは、
状況に応じて上記制御手段に設定された上記調整ゲインを変更する
ことを特徴とするロボット装置。
【請求項２】
上記可動部は、
上記ロボット装置の手部に設けられた指部であり、
上記上位コントローラは、
当該ロボット装置が外部物体を把持する際に、上記指部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを変更する
ことを特徴とする請求項１に記載のロボット装置。
【請求項３】
上記可動部は、
上記ロボット装置の手部に設けられた指部であり、
上記上位コントローラは、
当該ロボット装置の転倒を検出したときに、上記指部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを変更する
ことを特徴とする請求項１に記載のロボット装置。
【請求項４】
上記上位コントローラとは別個に設けられ、上記外力推定手段の推定結果を監視する外力監視手段を具え、
上記外力監視手段は、
上記外力推定手段により推定された上記外力の大きさが予め設定された大きさよりも大きいときは、上記外力に対する上記可動部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを更新する
ことを特徴とする請求項１に記載のロボット装置。
【請求項５】
変位自在の可動部が設けられたロボット装置の制御方法において、
上記可動部を駆動する動力源としてのモータの回転を、実行すべき行動内容に応じて制御すると共に、当該モータの回転状態を検出する第１のステップと、
検出した上記モータの回転状態に基づいて、上記可動部に作用する外力の大きさを推定する第２のステップと、
上記外力の大きさの推定結果に基づいて、上記外力の大きさと、当該外力による上記モータの上記回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるように、上記モータの回転を制御する第３のステップと、
状況に応じて、上記制御手段に設定された上記調整ゲインを変更する第４のステップと
を具えることを特徴とするロボット装置の制御方法。
【請求項６】
上記可動部は、
上記ロボット装置の手部に設けられた指部であり、
上記第４のステップでは、
当該ロボット装置が外部物体を把持する際に、上記指部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを変更する
ことを特徴とする請求項５に記載のロボット装置の制御方法。
【請求項７】
上記可動部は、
上記ロボット装置の手部に設けられた指部であり、
上記第４のステップでは、
当該ロボット装置の転倒を検出したときに、上記指部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを変更する
ことを特徴とする請求項５に記載のロボット装置の制御方法。
【請求項８】
上記第２又は３のステップにおいて、
上記可動部に作用する外力の大きさの推定結果を監視し、
上記第４のステップにおいて、
推定した上記外力の大きさが予め設定された大きさよりも大きいときは、上記外力に対する上記可動部の剛性を低くするように、上記制御手段に設定された上記調整ゲインを更新する
ことを特徴とする請求項５に記載のロボット装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はロボット装置及びその制御方法に関し、例えばヒューマノイドタイプのロボット装置に適用して好適なものである。
【背景技術】
【０００２】
近年、人間の形態を模したヒューマノイドタイプのロボットの研究開発が多くの企業や各種研究機関において行われている。
【０００３】
この場合、この種のロボット装置においては、各種作業を行う上で『手』の構造は非常に重要であり、より人間に近い動きを望む場合、対象物を掴む、摘む又は握るといった複雑な動作を確実に行い得る構造であることが要求され、またその動きにも各種の工夫が要求される。
【０００４】
そこで、従来、このようなヒューマノイドタイプのロボットの手構造及び当該ロボットの手の制御方法として、指をそれぞれ硬度の異なる骨格層、柔軟層及び表面層の３層構造とすることによって把持能力を向上させることや、かかる指の動きをコンプライアンス制御することによって対象物を確実かつ適切に把持し得るようにすることが本願特許出願人により提案されている（例えば、非特許文献１参照）。
【非特許文献１】特願２００２−３４１０４７
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上述した非特許文献１において開示された従来のロボットにおいては、コンプライアンス制御による外力に対する指部の柔らかさが固定であり、このため外力に対する指部の柔らかさが柔らかく設定されている場合には、スイッチを押すなどの指部に高い剛性が要求される行動や作業を行い得ず、逆に、外力に対する指部の柔らかさが固く設定されている場合には、複雑な外形形状を有する外部物体をその表面に指部を倣わせて柔らかく持つといった、指部に低い剛性が要求される行動や作業を行い得ない問題がある。
【０００６】
しかしながら、今後のロボットの使用環境を考慮すると、このような指部に高い剛性が要求されるような行動及び作業、並びに低い剛性が要求される行動及び作業のいずれについても実用上十分に対応し得るロボットの出現が要求され、逆に、このようなロボットを構築することができれば、ロボットの用途の幅を広げて、その有用性を向上させ得るものと考えられる。
【０００７】
一方、従来のロボットにおいては、上述のように各種作業を行う上で重要な役割を果たす指部の保護については何ら考慮されていないが、一般的にロボットの指部は細身で構造的に壊れ易く、ロボットの転倒時における床面との衝突や、勢い良く手を動かしたときの外部物体との衝突などによって容易に破損するため、かかる事態の発生時に指部を保護する何らかの工夫が望まれる。
【０００８】
本発明は以上の点を考慮してなされたもので、有用性を向上させ得るロボット装置及びその制御方法を提案しようとするものである。
【課題を解決するための手段】
【０００９】
かかる課題を解決するため本発明においては、ロボット装置において、上位コントローラから与えられる指令に応じて、可動部を駆動する動力源としてのモータの回転を制御する制御手段と、モータの回転状態を検出するセンサ手段と、センサ手段の検出結果に基づいて可動部に作用する外力の大きさを推定する外力推定手段とを設け、制御手段が、外力推定手段の推定結果に基づいて、外力の大きさと、当該外力によるモータの回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるようにモータの回転を制御し、上位コントローラが、状況に応じて制御手段に設定された調整ゲインを変更するようにした。
【００１０】
この結果このロボット装置では、いわゆるコンプライアンス制御による外力に対する可動部の柔らかさを状況に応じて切り換えることができる。
【００１１】
また本発明においては、ロボット装置の制御方法において、可動部を駆動する動力源としてのモータの回転を、実行すべき行動内容に応じて制御すると共に、当該モータの回転状態を検出する第１のステップと、検出したモータの回転状態に基づいて、可動部に作用する外力の大きさを推定する第２のステップと、外力の大きさの推定結果に基づいて、外力の大きさと、当該外力によるモータの回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるように、モータの回転を制御する第３のステップと、状況に応じて、制御手段に設定された調整ゲインを変更する第４のステップとを設けるようにした。
【００１２】
この結果このロボット装置の制御方法によれば、いわゆるコンプライアンス制御による外力に対する可動部の柔らかさを状況に応じて切り換えることができる。
【発明の効果】
【００１３】
本発明によれば、変位自在の可動部を有するロボット装置において、上位コントローラから与えられる指令に応じて、可動部を駆動する動力源としてのモータの回転を制御する制御手段と、モータの回転状態を検出するセンサ手段と、センサ手段の検出結果に基づいて可動部に作用する外力の大きさを推定する外力推定手段とを設け、制御手段が、外力推定手段の推定結果に基づいて、外力の大きさと、当該外力によるモータの回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるようにモータの回転を制御し、上位コントローラが、状況に応じて制御手段に設定された調整ゲインを変更するようにしたことにより、いわゆるコンプライアンス制御による外力に対する可動部の柔らかさを状況に応じて切り換えることができ、かくして有用性を向上させ得るロボット装置を実現できる。
【００１４】
また本発明によれば、変位自在の可動部を有するロボット装置の制御方法において、可動部を駆動する動力源としてのモータの回転を、実行すべき行動内容に応じて制御すると共に、当該モータの回転状態を検出する第１のステップと、検出したモータの回転状態に基づいて、可動部に作用する外力の大きさを推定する第２のステップと、外力の大きさの推定結果に基づいて、外力の大きさと、当該外力によるモータの回転状態の変位量とが予め設定された調整ゲインを比例定数とする比例関係となるように、モータの回転を制御する第３のステップと、状況に応じて、制御手段に設定された調整ゲインを変更する第４のステップとを設けるようにしたことにより、いわゆるコンプライアンス制御による外力に対する可動部の柔らかさを状況に応じて切り換えることができ、かくして有用性を向上させ得るロボット装置の制御方法を実現できる。
【発明を実施するための最良の形態】
【００１５】
以下図面について、本発明の一実施の形態を詳述する。
【００１６】
（１）本実施の形態によるロボットの構成
図１及び図２において、１は全体として本実施の形態による２足歩行型のロボットを示し、胴体部ユニット２の上部に頭部ユニット３が配設されると共に、当該胴体部ユニット２の上部左右にそれぞれ同じ構成の腕部ユニット４Ａ、４Ｂがそれぞれ配設され、かつ胴体部ユニット２の下部左右にそれぞれ同じ構成の脚部ユニット５Ａ、５Ｂがそれぞれ所定位置に取り付けられることにより構成されている。
【００１７】
胴体部ユニット２においては、体幹上部を形成するフレーム１０及び体幹下部を形成する腰ベース１１が腰関節機構１２を介して連結することにより構成されており、体幹下部の腰ベース１１に固定された腰関節機構１２の各アクチュエータＡ１、Ａ２をそれぞれ駆動することによって、体幹上部を図３に示す直交するロール軸１３及びピッチ軸１４の回りにそれぞれ独立に回転させ得るようになされている。
【００１８】
また頭部ユニット３は、フレーム１０の上端に固定された肩ベース１５の上面中央部に首関節機構１６を介して取り付けられており、当該首関節機構１６の各アクチュエータＡ３、Ａ４をそれぞれ駆動することによって、図３に示す直交するピッチ軸１７及びヨー軸１８の回りにそれぞれ独立に回転させ得るようになされている。
【００１９】
さらに各腕部ユニット４Ａ、４Ｂは、それぞれ肩関節機構１９を介して肩ベース１５の左右に取り付けられており、対応する肩関節機構１９の各アクチュエータＡ５、Ａ６をそれぞれ駆動することによって図３に示す直交するピッチ軸２０及びロール軸２１の回りにそれぞれ独立に回転させ得るようになされている。
【００２０】
この場合、各腕部ユニット４Ａ、４Ｂは、それぞれ上腕部を形成するアクチュエータＡ７の出力軸に肘関節機構２２を介して前腕部を形成するアクチュエータＡ８が連結され、当該前腕部の先端に手部２３が取り付けられることにより構成されている。
【００２１】
そして各腕部ユニット４Ａ、４Ｂでは、アクチュエータＡ７を駆動することによって前腕部を図３に示すヨー軸２４の回りに回転させ、アクチュエータＡ８を駆動することによって前腕部を図３に示すピッチ軸２５の回りにそれぞれ回転させることができるようになされている。
【００２２】
これに対して各脚部ユニット５Ａ、５Ｂにおいては、それぞれ股関節機構２６を介して体幹下部の腰ベース１１にそれぞれ取り付けられており、それぞれ対応する股関節機構２６の各アクチュエータをＡ９〜Ａ１１それぞれ駆動することによって、図３に示す互いに直交するヨー軸２７、ロール軸２８及びピッチ軸２９の回りにそれぞれ独立に回転させ得るようになされている。
【００２３】
この場合各脚部ユニット５Ａ、５Ｂは、それぞれ大腿部を形成するフレーム３０の下端に膝関節機構３１を介して下腿部を形成するフレーム３２が連結されると共に、当該フレーム３２の下端に足首関節機構３３を介して足部３４が連結されることにより構成されている。
【００２４】
これにより各脚部ユニット５Ａ、５Ｂにおいては、膝関節機構３１を形成するアクチュエータＡ１２を駆動することによって、下腿部を図３に示すピッチ軸３５の回りに回転させることができ、また足首関節機構３３のアクチュエータＡ１３、Ａ１４をそれぞれ駆動することによって、足部３４を図３に示す直交するピッチ軸３６及びロール軸３７の回りにそれぞれ独立に回転させ得るようになされている。
【００２５】
一方、胴体部ユニット２の体幹下部を形成する腰ベース１１の背面側には、図４に示すように、当該ロボット１全体の動作制御を司るメイン制御部４０と、電源回路及び通信回路などの周辺回路４１と、バッテリ４５（図５）となどがボックスに収納されてなる制御ユニット４２が配設されている。
【００２６】
そしてこの制御ユニット４２は、各構成ユニット（胴体部ユニット２、頭部ユニット３、各腕部ユニット４Ａ、４Ｂ及び各脚部ユニット５Ａ、５Ｂ）内にそれぞれ配設された各サブ制御部４３Ａ〜４３Ｄと接続されており、これらサブ制御部４３Ａ〜４３Ｄに対して必要な電源電圧を供給したり、これらサブ制御部４３Ａ〜４３Ｄと通信を行うことができるようになされている。
【００２７】
また各サブ制御部４３Ａ〜４３Ｄは、それぞれ対応する構成ユニット内の各アクチュエータＡ１〜Ａ１４と接続されており、当該構成ユニット内の各アクチュエータＡ１〜Ａ１４をメイン制御部４０から与えられる各種制御コマンドに基づいて指定された状態に駆動し得るようになされている。
【００２８】
さらに頭部ユニット３には、図５に示すように、このロボット１の「目」として機能するＣＣＤ（Charge Coupled Device ）カメラ５０及び「耳」として機能するマイクロホン５１及びタッチセンサ５２などからなる外部センサ部５３と、「口」として機能するスピーカ５４となどがそれぞれ所定位置に配設され、制御ユニット４２内には、バッテリセンサ５５及び加速度センサ５６などからなる内部センサ部５７が配設されている。
【００２９】
そして外部センサ部５３のＣＣＤカメラ５０は、周囲の状況を撮像し、得られた画像信号Ｓ１Ａをメイン制御部に送出する一方、マイクロホン５１は、ユーザから音声入力として与えられる「歩け」、「伏せ」又は「ボールを追いかけろ」等の各種命令音声を集音し、かくして得られた音声信号Ｓ１Ｂをメイン制御部４０に送出するようになされている。
【００３０】
またタッチセンサ５２は、図１及び図２において明らかなように頭部ユニット３の上部に設けられており、ユーザからの「撫でる」や「叩く」といった物理的な働きかけにより受けた圧力を検出し、検出結果を圧力検出信号Ｓ１Ｃとしてメイン制御部４０に送出する。
【００３１】
さらに内部センサ部５７のバッテリセンサ５５は、バッテリ４５のエネルギ残量を所定周期で検出し、検出結果をバッテリ残量検出信号Ｓ２Ａとしてメイン制御部４０に送出する一方、加速度センサ５６は、３軸方向（ｘ軸、ｙ軸及びｚ軸）の加速度を所定周期で検出し、検出結果を加速度検出信号Ｓ２Ｂとしてメイン制御部４０に送出する。
【００３２】
メイン制御部部４０は、外部センサ部５３のＣＣＤカメラ５０、マイクロホン５１及びタッチセンサ５２等からそれぞれ供給される画像信号Ｓ１Ａ、音声信号Ｓ１Ｂ及び圧力検出信号Ｓ１Ｃ等（以下、これらをまとめて外部センサ信号Ｓ１と呼ぶ）と、内部センサ部５７のバッテリセンサ５５及び加速度センサ等からそれぞれ供給されるバッテリ残量検出信号Ｓ２Ａ及び加速度検出信号Ｓ２Ｂ等（以下、これらをまとめて内部センサ信号Ｓ２と呼ぶ）に基づいて、ロボット１の周囲及び内部の状況や、ユーザからの指令、ユーザからの働きかけの有無などを判断する。
【００３３】
そしてメイン制御部４０は、この判断結果と、予め内部メモリ４０Ａに格納されている制御プログラムと、そのとき装填されている外部メモリ５８に格納されている各種制御パラメータとに基づいて続く行動を決定し、決定結果に基づく制御コマンドを対応するサブ制御部４３Ａ〜４３Ｄに送出する。この結果、この制御コマンドに基づき、そのサブ制御部４３Ａ〜４３Ｄの制御のもとに、対応するアクチュエータＡ１〜Ａ１４が駆動され、かくして頭部ユニット３を上下左右に揺動させたり、腕部ユニット４Ａ、４Ｂを上にあげたり、歩行するなどの行動がロボット１により発現されることとなる。
【００３４】
またこの際メイン制御部４０は、必要に応じて所定の音声信号Ｓ３をスピーカ５４に与えることにより当該音声信号Ｓ３に基づく音声を外部に出力させたり、外見上の「目」として機能する頭部ユニット３の所定位置に設けられたＬＥＤに駆動信号を出力することによりこれを点滅させる。
【００３５】
このようにしてこのロボット１においては、周囲及び内部の状況や、ユーザからの指令及び働きかけの有無などに基づいて自律的に行動することができるようになされている。
【００３６】
（２）ロボット１における手部２３の構成
（２−１）手部２３の概略構成
次に、このロボット１における手部２３の構成について説明する。
【００３７】
このロボット１の手部２３には、図６（Ａ）及び（Ｂ）に示すように、それぞれ人間の親指、人差し指、中指、薬指及び小指に相当する第１〜第５の指部６０１〜６０５が設けられている。
【００３８】
この場合、第１の指部６０１は、指先部６１１及び指元部６１２が第１の指関節６１３を介して手部２３の内側に向けて屈折自在に連結されることにより構成されており、指元部６１２の下端部が、手本体部６２の内側面（以下、これを手の平面と呼ぶ）６２Ａにおける下部右端近傍位置（右手）又は下部左端近傍位置（左手）に、第２の指関節６１４を介して手部２３の内側に向けて屈曲自在に連結されている。
【００３９】
また第２〜第５の指部６０２〜６０５は、それぞれ指先部６２１及び中指部６２２が第１の指関節６２３を介して手部２３の内側に向けて屈折自在に連結されると共に、指中部６２２及び指元部６２４が第２の指関節６２５を介して手部２３の内側に向けて屈折自在に連結されることにより構成され、指元部６２４の下端部が、手本体部６２の先端に第３の指関節６２６を介して手部２３の内側に向けて屈曲自在に連結されている。
【００４０】
これによりこのロボット１においては、第１〜第５の指部６０１〜６０５を伸ばし又は屈曲させることで、図６のように手部を開いたり、図７及び図８のように手部２３を閉じたりすることができ、かくして例えば図９及び図１０のようにボール等の対象物６４、６５を掴んだり、図１１のように紙や薄板等の対象物６６を摘むことができるようになされている。
【００４１】
このとき第２〜第５の指部６０１〜６０５は、図６に示すように、手を開いた状態において、これら第２〜第５の指部６０１〜６０５が手部本体６２の下端部１点Ｐを中心として一定角度間隔（例えば15〔°〕間隔）で放射方向に伸びるように手本体部６２に取り付けられている。また第１の指部６０１は、図７に示すように、その中心線Ｋ１が第３の指部の中心線Ｋ２と一定角度θｔｈをもって交差するように手本体部６２に取り付けられている。
【００４２】
これによりこのロボット１においては、第１〜第５の指部６０１〜６０５によって、例えば図９及び図１０のように対象物６４、６５を複数方向から包み込むように把持することができ、かくして大きな対象物から小さな対象物まで広い範囲の大きさの対象物を確実に把持することができるようになされている。
【００４３】
また、かかる第１の指部６０１の角度θｔｈは、図７のように対象物を掴む状態に第１〜第５の指部６０１〜６０５を屈曲させたときに、第１の指部６０１の先端部が第２の指部６０２の先端部及び第３の指部６０３の先端部とそれぞれ接触する角度に選定されており、かくして対象物を摘む際に、図１１のように、少なくとも第１の指部６０１の先端部と、第２の指部６０２の先端部と、第３の指部６０３の先端部との３点によって当該対象物６７を確実に保持し得るようになされている。
【００４４】
なおこの実施の形態の場合、第１〜第５の指部６０１〜６０５の長さは、それぞれ異なる長さに選定されており、これにより第１〜第５の指部６０１〜６０５を広い範囲で接触させながら対象物を把持することができるようになされている。
【００４５】
（２−２）手部２３の具体的構成
ここで、実際上、手本体部６２においては、図１２に示すように、手の平面６２Ａが全体としてほぼ丸四角形状となるように構成されており、その第１の指部６０１の取付け位置を含む下部と、当該手の平面６２Ａ全体の４分の３程度の面積を占める先端部とに凸形状の丘部６２Ａ１、６２Ａ３（図１２（Ａ）において斜線部よりも上側部分及び下側部分）が設けられると共に、これら先端部の丘部６２Ａ１及び下部の丘部６２Ａ３間に凹形状の窪み部６２Ａ２（図１２（Ａ）において斜線部分）が設けられている。
【００４６】
この場合、図１２からも明らかなように、先端部の丘部６２Ａ１及び窪み部６２Ａ２間は滑らかな曲面により繋がれているのに対し、下部の丘部６２Ａ３及び窪み部６２Ａ２間には段差６２Ｂが設けられており、これにより対象物を手の平面６２Ａ上に安定して載せることができ、また対象物を安定して把持することができるようになされている。
【００４７】
また手本体部６２の手の平面６２Ａには、ゴム材等の摩擦係数の大きい材料からなる表面材６３が貼着されており、これにより対象物を把持する際に当該表面材６３と対象物との間に生じる摩擦によってより一層と安定して当該対象物を手の平面６２Ａ内に保持し得るようになされている。
【００４８】
一方、第１の指部６０１においては、図１３（Ａ）及び（Ｂ）に示すように、指先部６１１の骨を構成する樹脂又はアルミ合金等の硬度の高い材料からなる第１の骨格層７０１と、指元部６１１の骨を構成する同じ材料からなる第２の骨格層７０２とを有し、これら第１及び第２の骨格層７０１、７０２が第１の指関節６１３を構成する当該第１の指部６０１の横方向（矢印ａ）と平行に設けられた第１の軸体７１により、一体にかつ屈曲自在に連結されている。
【００４９】
また指元部６１２の下端部には、第２の指関節６１４を構成する第２の軸体７２が当該指元部６１２を第１の軸体７１と平行に貫通するように設けられ、この第２の軸体７２が手本体部６２（図６）の所定位置に設けられた軸受け７３（図６（Ａ））によって軸支されている。
【００５０】
これにより第１の指部６０１においては、図７について上述したように、第３の指部６０３の中心軸ｋ２との角度θｔｈを保ちながら、指先部６１１及び指元部６１２をそれぞれ独立に手部の内６２Ａ側に自在に屈曲させ得るようになされている。
【００５１】
このとき、第１及び第２の骨格層７０１、７０２は、図１３（Ｃ）に示すように、αゲル、ソルボセイン又は発泡ウレタン等の硬度がＨｓ０の柔軟材からなる柔軟層７４により一体に覆われると共に、当該柔軟層７４は、厚さ0.3〜１〔mm〕程度、硬度がＨｓ40〜60程度の例えばゴム、ＰＣＶ又はパリウレタン等の屈曲性のある材料を用いて形成された表面層７５により一体に覆われている。
【００５２】
これによりこのロボット１においては、対象物を把持等する際に、第１の指部６０１の内側面をその対象物の表面形状に応じて凹む方向に弾力的かつ柔軟に変位させて当該対象物に密着させることができることから、当該対象物を確実に把持等することができ、また上述のように第１の指部６０１が第１及び第２の骨格層７０１、７０２、柔軟層７４及び表面層７５の３層構造となっていることから、第１の指部６０１の表面に柔軟性をもたせながらも当該表面が損傷し難く、長期使用にも実用上十分に耐え得るようになされている。
【００５３】
同様に、第２〜第５の指部６０２〜６０５においては、図１４（Ａ）及び（Ｂ）に示すように、指先部６３１の骨を構成する樹脂又はアルミ合金等の硬度の高い材料からなる第１の骨格層８０１と、指中部６３２の骨を構成する同じ材料からなる第２の骨格層８０２と、指元部６３２の骨を構成する同じ材料からなる第３の骨格層８０３とを有し、これら第１〜第３の骨格層８０１〜８０３が、第１の指関節６３３を構成する第１の軸体８１と、第２の指関節６３５を構成する第２の軸体８２とにより、一体にかつ屈曲自在に連結されている。
【００５４】
また指元部６３４の下端部には、第３の指関節６３６を構成する第３の軸体８３が当該指元部６３４を第１及び第２の軸体８１、８２と平行に貫通するように設けられ、この第３の軸体８３が手本体部６２の所定位置に設けられた対応する軸受け８４１〜８４４（図６（Ａ））によって軸支されている。
【００５５】
これにより第２〜第５の指部６０２〜６０５においては、図６について上述したように、指先部６３１、指中部６３２及び指元部６３３をそれぞれ独立に手部２３の内側に向けて自在に屈曲させ得るようになされている。
【００５６】
このとき、第１〜第３の骨格層８０１〜８０３は、図１４（Ｃ）に示すように、第１の指部６０１の場合と同様に、αゲル、ソルボセイン又は発泡ウレタン等の硬度がＨｓ０の柔軟材からなる柔軟層８５により一体に覆われると共に、当該柔軟層８５は、厚さ0.3〜１〔mm〕程度、硬度がＨｓ40〜60程度の例えばゴム、ＰＣＶ又はパリウレタン等の屈曲性のある材料を用いて形成された表面層８６により一体に覆われている。
【００５７】
これによりこのロボット１においては、対象物を把持等する際に、第２〜第５の指部６０２〜６０５の内側面をその対象物の表面形状に応じて凹む方向に弾力的かつ柔軟に変位させて当該対象物に密着させることができることから、当該対象物を確実に把持等することができ、また上述のように第２〜第５の指部６０２〜６０５が第１〜第３の骨格層８０１〜８０３、柔軟層８５及び表面層８６の３層構造となっていることから、第２〜第５の指部６０２〜６０５の表面に柔軟性をもたせながらも当該表面が損傷し難く、長期使用にも実用上十分に耐え得るようになされている。
【００５８】
なおこの実施の形態の場合、図１５に示すように、第１〜第５の指部６０１〜６０５における各指先部６１１、６３１（図１３、図１４）の先端部は、先端に行くほど腹面６０１Ａ〜６０５Ａが背面に近づくように湾曲して形成されると共に、これと対向する第１の骨格層７０１、８０１の先端部７０１Ａ、８０１Ａは、その第１〜第５の指部６０１〜６０５の先端に行くにつれて当該第１〜第５の指部６０１〜６０５の背面側に近づくように、例えば45〔°〕程度の傾斜角を有するテーパ状に形成されている。
【００５９】
これによりロボット１においては、対象物を掴むときに最も力が加わる第１〜第５の指部６０１〜６０５の各指先部６１１、６３１における腹面６０１Ａ〜６０５Ａの先端部を、より一層と当該対象物の表面に沿って凹むように変位させてその接触面積を拡大させることができ、かくして当該対象物と第１〜第５の指部６０１〜６０５との間の摩擦力を向上させて、対象物をより一層確実に把持し得るようになされている。
【００６０】
またこの実施の形態の場合、第１〜第５の指部６０１〜６０５の表面層７５、８６においては、全体としてその断面形状が図１３（Ｃ）及び図１４（Ｃ）に示すように中空の丸四角形状に選定されると共に、各指先部６１１、６３１の腹面形状が丸四角形状に選定されており、これにより第１〜第５の指部６０１〜６０５を対象物と広い接触面積で接触させて、当該対象物を確実に把持することができるようになされている。
【００６１】
このとき第１の指部６０１は第２〜第５の指部６０２〜６０５よりも幅広に形成されており、これにより例えば図１１（Ｂ）のように第１〜第３の指部６０１〜６０３によって３点支持により紙又は薄板等の対象物６７を摘む際にも、１点支持側となる第１の指部６０１の当該対象物６７に対する接触面積を大きくして、当該対象物６７をより安定に保持し得るようになされている。
【００６２】
さらにこの実施の形態の場合、第１〜第５の指部６０１〜６０５における各指先部６１１、６３１の腹面６０１Ａ〜６０５Ａ側には、図１６に示すように、複数の同心円状の凹凸からなる凹凸パターンでなる指紋部８７が摩擦力向上のため設けられており、これにより例えば図１７に示すように、床面８８上に置かれた紙８９を、第１及び第２の指部６０１、６０２の各指紋部８７との間に生じる摩擦を利用して摘み上げ得るようになされている。
【００６３】
また第１〜第５の指部６０１〜６０５における各指紋部８７の中央部には、図１６（Ａ）に示すように、それぞれ所定深さの窪み部８７Ａが設けられており、かくして図１８のように第１〜第５の指部６０１〜６０５の腹面６０１Ａ〜６０５Ａを対象物９０に接触させたときに、これら第１〜第５の指部６０１〜６０５の指紋部８７における窪み部８７Ａ内の空気圧が上昇して当該窪み部８７Ａ内から空気が外部に押し出されて、当該窪み部８７Ａにおいて吸着作用を生じさせ得るようになされている。
【００６４】
これによりこのロボット１においては、対象物をより一層確実に把持することができ、かくして例えば第１〜第５の指部６０１〜６０５の各指紋部８７による摩擦力と、当該各指紋部８７の窪み部８７Ａにおける吸着力と、指先の柔軟性とを利用して、図１９（Ａ）に示すように、ボール９１をその重心ＧＰ位置よりも高い位置において把持することもできるようになされている。
【００６５】
さらにこの実施の形態の場合、第１〜第５の指部６０１〜６０５の表面層７５、８６は無色透明な材料を用いて形成されており、当該表面層７５、８６（図１３（Ｃ）、図１４（Ｃ））における柔軟層７４、８５（図１３（Ｃ）、図１４（Ｃ））との境界面（表面層７５、８６の内面）又は柔軟層７４、８５における表面層７５、８６との境界面（柔軟層７４、８５の表面）にはそのロボット１に固有の識別情報が例えば図２０に示すような２次元バーコードとして印刷されている。
【００６６】
これによりこのロボット１においては、この２次元バーコードに基づいて識別することができ、これによりロボット１間の混同を防止すると共にロボット１の盗難等を抑制することができるようになされている。
【００６７】
他方、第１〜第５の指部６０１〜６０５においては、図１３及び図１４に示すように、それぞれその背面側の先端位置に、例えば樹脂材等の硬度がＨｓ70程度でかつ滑り易い材料からなる爪９２が接着剤等を用いて交換自在に取り付けられている。
【００６８】
この場合、爪９２は、その先端部が第１〜第５の指部６０１〜６０５の先端から僅かに突出するように接着されており、これにより机面上や床面上に置かれた小物や紙を、これら第１〜第５の指部６０１〜６０５の先端から突出する爪９２を引掻けるようにして摘むことができるようになされている。
【００６９】
また爪９２においては、図１３及び図１４からも明らかなように、その先端部は円弧状に形成されており、これにより各方向から爪９２を対象物に均等に引掻け得るように、かつ爪９２を対象物に引掻けるなどする際に当該爪９２に作用する外力を分散させて、当該爪９２を破損し難くし得るようになされている。
【００７０】
また爪９２の先端部は、先に行くほど第１〜第５の指部６０１〜６０５の腹面６０１Ａ〜６０５Ａ側に反るように湾曲して形成されており、これにより例えば図１９（Ｂ）に示すように、床面上にある小物９３を第１の指部６０１の爪９２と、第２の指部６０２の爪９２とにより引掻けるようにして、確実に摘むことができるようになされている。
【００７１】
（３）ロボット１における手部２３の駆動制御
（３−１）システム構成
次に、かかる構造を有する手部２３を駆動制御する駆動制御系のシステム構成について説明する。
【００７２】
このロボット１の場合、手部２３における手本体部６２の内部には、図２１（Ａ）及び（Ｂ）に示すように、第１〜第５の指部６０１〜６０５にそれぞれ対応させて、これら第１〜第５の指部６０１〜６０５を伸ばし又は曲げるように駆動するための第１〜第５のアクチュエータ部１００１〜１００５が収納され、当該手部２３及び前腕部間を連結する手首関節１０１には、手部２３をロール方向（軸θＲの回りの方向）及びピッチ方向（軸θＰの回りの方向）に駆動するため２軸一体型の第６のアクチュエータ部１０２が設けられている。
【００７３】
また第１〜第５のアクチュエータ部１００１〜１００５内には、図２２に示すように、それぞれ当該第１〜第５のアクチュエータ部１００１〜１００５を制御するための第１〜第５の制御装置１０３１〜１０３５が収納されると共に、第６のアクチュエータ部１０２内には、ピッチ軸用及びロール軸用の第６及び第７の制御装置１０４１、１０４２が収納されている。さらにロボット１の前腕部を構成するアクチュエータＡ８（図１、図２１）内には、インテリジェントＨＵＢ１０５が収納され、当該インテリジェントＨＵＢ１０５と、第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２とがディジーチェーン接続されている。
【００７４】
この場合、インテリジェントＨＵＢ１０５は、図２２に示すように、ＵＳＢ（Universal Serial Bus）インターフェース回路１１０、ＣＰＵ（Central Processing Unit）１１１及びシリアル通信用インターフェース回路１１２と、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）等のメモリ１１３とが設けられており、ＵＳＢインターフェース回路１１０を介して上位コントローラ（サブ制御部４３Ｃ（図４））と通信し、またシリアル通信用インターフェース回路１１２を介して第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２とシリアル通信し得るようになされている。
【００７５】
そしてこのインテリジェントＨＵＢ１０５は、８〔ms〕周期で上位コントローラと通信し、上位コントローラから各第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２に対する位置指令値（Ｕ１（Ｎ）〜Ｕ７（Ｎ））などの各種コマンドが与えられると、これら位置指令値（Ｕ１（Ｎ）〜Ｕ７（Ｎ））に基づいて２〔ms〕周期のサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））を生成し、これをディジーチェーン接続された後段の第１の制御装置１０３１に送出するようになされている。
【００７６】
このとき第１の制御装置１０３１は、前段のインテリジェントＨＵＢ１０５からサーボ指令が与えられると、そのうちの自己に対するサーボ指令（Ｒｅｆ１（ｋ））を取り込み、この後はこのサーボ指令に基づいて対応する第１のアクチュエータ部１００１を制御する一方、前段のインテリジェントＨＵＢ１０５から与えられたサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））のうち、自己に対するサーボ指令（Ｒｅｆ１（ｋ））を、当該第１のアクチュエータ部１００１内の後述する対応するＤＣモータの現在位置を表す現在位置データ（Ｐ１（ｋ））に置き換えて、これらを後段の第２の制御装置１０３２に送出する。
【００７７】
同様に、第２〜第７の制御装置１０３２〜１０３５、１０４１、１０４２は、前段の他の第１〜第６の制御装置１０３１〜１０３５、１０４１から現在位置データ及びサーボ指令が与えられると、そのうちの自己に対するサーボ指令（Ｒｅｆ２（ｋ）〜Ｒｅｆ７（ｋ））を取り込み、この後はこのサーボ指令に基づいて対応する第２〜第６のアクチュエータ部１００２〜１００５、１０１を制御する一方、前段の第１〜第６の制御装置１０３１〜１０３５、１０４１から与えられたサーボ指令及び現在位置データのうち、自己に対するサーボ指令を、対応する第２〜第６のアクチュエータ部１００２〜１００５、１０４１、１０４２内の後述するＤＣモータの現在位置を表す現在位置データ（Ｐ２（ｋ）〜Ｐ７（ｋ））に置き換えて、これらをさらに後段の他の第３〜第７の制御装置１０３３〜１０３５、１０４１、１０４２又はインテリジェントＨＵＢ１０５に送出する。
【００７８】
この結果、インテリジェントＨＵＢ１０５には、最後の第７の制御装置１０４２から各ＤＣモータの現在位置データが与えられ、かくしてインテリジェントＨＵＢ１０５は、これら各ＤＣモータの現在位置データを８〔ms〕周期で上位コントローラに送出する。そして、上位コントローラは、これら各ＤＣモータの現在位置データに基づいて、各第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２に対する新たな位置指令値（Ｕ１（Ｎ）〜Ｕ７（Ｎ））を生成し、これを次の周期にインテリジェントＨＵＢ１０５に与える。
【００７９】
このようにしてこのロボット１においては、上位コントローラがインテリジェントＨＵＢ１０５を介して手部２３の容姿制御を行い得るようになされている。
【００８０】
（３−２）第１〜第６のアクチュエータ部１００１〜１００５、１０２の構成
ここで、第１〜第５のアクチュエータ１００１〜１００５においては、図２３に示すように、ギアボックス１２０に固定されたＤＣモータ１２１を動力源として有している。そしてＤＣモータ１２１の出力軸１２１Ａにはギア１２２が取り付けられ、当該ギア１２２がギアボックス１２０内の例えば冠歯車等でなるギア１２３と歯合している。
【００８１】
またギア１２３は、当該ギア１２３を同軸に貫通する回転軸１２４に固定されると共に、当該回転軸１２４はギアボックス１２０内において回転自在に枢支され、かつ当該回転軸１２４の両端部にはそれぞれ握締め用回転軸１２５及び開放用回転軸１２６が同軸に固定されている。
【００８２】
そして握締め用回転軸１２５の周側面には、第１のワイヤ１２７の一端側がＤＣモータ１２１を正転駆動したときに巻き取り得る方向に巻回されると共に、その先端部が固定されている。またこの第１のワイヤ１２７の他端側は、対応する第１〜第５の指部６０１〜６０５の内部腹面側を通って当該第１〜第５の指部６０１〜６０５の内部先端にその端部が固定されている。
【００８３】
これによりロボット１においては、第１〜第５のアクチュエータ部１００１〜１００５のＤＣモータ１２１を正転駆動して第１のワイヤ１２７を握締め用回転軸１２５の周側面に巻き取ることで、当該第１のワイヤ１２７により指先部６１１、６３１をその腹面側に引っ張るようにして、対応する第１〜第５の指部６０１〜６０５を屈曲するように駆動させることができるようになされている。
【００８４】
また開放用回転軸１２６の周側面には、第２のワイヤ１２８の一端部がＤＣモータ１２１を逆転駆動したときに巻き取り得る方向に巻回されると共に、その先端部が固定されている。またこの第２のワイヤ１２８の他端側は、対応する第１〜第５の指部６０１〜６０５の内部背面側を通って当該第１〜第５の指部６０１〜６０５の内部先端にその端部が固定されている。
【００８５】
これによりロボット１においては、第１〜第５のアクチュエータ部１００１〜１００５のＤＣモータ１２１を逆転駆動して第２のワイヤ１２８を開放用回転軸１２６の周側面に巻き取ることで、当該第２のワイヤ１２８により指先部６１１、６３１をその背面側に引っ張るようにして、対応する第１〜第５の指部１００１〜１００５を伸ばすように駆動させることができるようになされている。
【００８６】
さらに開放用回転軸１２６の端面には、位置検出センサ１３０を構成する環状の樹脂マグネット１３１が当該開放用回転軸１２６と同軸に固着されると共に、これと平行にかつ僅かな距離を介して対向するように制御基板１３２が配置され、当該制御基板１３２における樹脂マグネット１３１と対向する所定位置に樹脂マグネット１３１と共に位置検出センサ１３０を構成する第１及び第２のホール素子１３３Ａ、１３３Ｂが搭載されている。
【００８７】
このとき樹脂マグネット１３１は、その回転位置に応じて第１及び第２のホール素子１３３Ａ、１３３Ｂにより検出される磁極密度が変化するように所定パターンで着磁されており、これにより第１及び第２のホール素子１３３Ａ、１３３Ｂからそれぞれ出力される第１及び第２のセンサ信号（以下、これを第１及び第２の位置検出信号と呼ぶ）に基づいて対応するＤＣモータ１２１の現在位置を検出し得るようになされている。
【００８８】
また制御基板１３２には、対応するＤＣモータ１２１を駆動制御する図２２について上述した第１〜第５の制御装置１０３１〜１０３５が形成されている。そして、この第１〜第５の制御装置１０３１〜１０３５には、上述のようにインテリジェントＨＵＢ１０５からのサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）と、上述の位置検出センサ１３０（図２３（Ｂ））の第１及び第２のホール素子１３３Ａ、１３３Ｂから出力される第１及び第２の位置検出信号とが与えられる。かくして第１〜第５の制御装置１０３１〜１０３５は、このサーボ指令と、第１及び第２の位置検出信号とに基づいて対応するＤＣモータ１２１を駆動制御するようになされている。
【００８９】
なおこの実施の形態の場合、第１及び第２のワイヤ１２７、１２８においては、常に一定のテンションをもって握締め用回転軸１２５又は開放用回転軸１２６に巻回されており、これにより例えば第１〜第５の指部６０１〜６０５にその屈曲可能な方向の外力が与えられたときに、これに応じて握締め用回転軸１２５又は開放用回転軸１２６が回転するようになされている。これによりこのロボット１においては、かかる外力が第１〜第５の指部６０１〜６０５に与えられたことを、対応する第１〜第５の制御装置１０３１〜１０３５が位置検出センサ１３０からの第１及び第２の位置検出信号に基づいて容易に認識し得るようになされている。
【００９０】
一方、第６のアクチュエータ１０２においては、図２４に示すように、筐体１４０内部の所定位置に固定された動力源としてのロール軸用のＤＣモータ１４１及びピッチ軸用のＤＣモータ１４２を有している。
【００９１】
この場合、ロール軸用のＤＣモータ１４１の出力軸１４１Ａにはギア１４３が固着されると共に、当該ギア１４３は、ギア１４４、当該ギア１４４と一体形成されたギア１４５、ギア１４６、当該ギア１４６と一体形成されたギア１４７、ギア１４８、当該ギア１４８と一体形成されたギア１４９及びギア１５０を順次介してロール軸用出力軸１５１と連結されている。
【００９２】
このときロール軸用出力軸１５１は、図２１からも明らかなように、ロボット１の前腕部に固定されており、かくしてＤＣモータ１４１を駆動することによって手部２３を全体としてロール方向に回転駆動することができるようになされている。
【００９３】
またピッチ軸用のＤＣモータ１４２の出力軸１４２Ａにはギア１５２が固定されると共に、当該ギア１５２は、ギア１５３、当該ギア１５３と一体形成されたギア１５４、ギア１５５、当該ギア１５５と一体形成されたギア１５６及びギア１５７を順次介してピッチ軸用出力軸１５８と連結されている。
【００９４】
このときピッチ軸用出力軸１５８は、図２１からも明らかなように、手部２３の手部本体６２の後端に固定された第１の軸受け１５８Ａにより固定保持されている。また筐体１４０におけるピッチ軸用出力軸１５８との対向面には当該ピッチ軸用出力軸１５８と同軸に回転軸１６０が回転自在に設けられていると共に、当該回転軸１６０は、図２１からも明らかなように、手部２３の手部本体６２の後端に固定された第２の軸受け１５９Ｂにより固定保持されている。
【００９５】
これによりこのロボット１においては、第６のアクチュエータ部１０２におけるＤＣモータ１４２を回転駆動することによって、手部２３を全体としてピッチ方向に回転駆動することができるようになされている。
【００９６】
さらに第６のアクチュエータ部１０２においては、ロール軸用出力軸１５１の内面側に環状の樹脂マグネット１６２が当該ロール軸用出力軸１５１と同軸に固着されると共に、これと平行にかつ僅かな距離を介して対向するように制御基板１６３が配置され、当該制御基板１６３における樹脂マグネット１６２と対向する所定位置に樹脂マグネット１６２と共に位置検出センサ１６１を構成する第１及び第２のホール素子１６４Ａ、１６４Ｂが搭載されている。
【００９７】
このとき樹脂マグネット１６２は、図２３について上述した樹脂マグネット１３１と同様に、その回転位置に応じて第１及び第２のホール素子１６４Ａ、１６４Ｂにより検出される磁極密度が変化するように所定パターンで着磁されており、これにより第１及び第２のホール素子１６４Ａ、１６４Ｂからそれぞれ出力される第１及び第２のセンサ信号（以下、これを第１及び第２の位置検出信号と呼ぶ）に基づいて対応するＤＣモータ１４１の現在位置を検出し得るようになされている。
【００９８】
また制御基板１６３には、図２２について上述した第６の制御装置１０４１が形成されている。そしてこの第６の制御装置１０４１には、上述のようにインテリジェントＨＵＢ１０５からのサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）と、上述の位置検出センサ１６１（図２４（Ａ））の第１及び第２のホール素子１６４Ａ、１６４Ｂから出力される第１及び第２の位置検出信号とが与えられる。かくして第６の制御装置１０４１は、かかるサーボ指令と、第１及び第２の位置検出信号とに基づいて対応するＤＣモータ１４１を駆動制御するようになされている。
【００９９】
これと同様にして、ピッチ軸用出力軸１５８の内面側には環状の樹脂マグネット１６５が当該ピッチ軸用出力軸１５８と同軸に固着されると共に、これと平行にかつ僅かな距離を介して対向するように制御基板１６６が配置され、当該制御基板１６６における樹脂マグネット１６５と対向する所定位置に樹脂マグネット１６５と共に位置検出センサ１６７を構成する第１及び第２のホール素子１６８Ａ、１６８Ｂが搭載されている。
【０１００】
このとき樹脂マグネット１６５は、図２３について上述した樹脂マグネット１３１と同様に、その回転位置に応じて第１及び第２のホール素子１６８Ａ、１６８Ｂにより検出される磁極密度が変化するように所定パターンで着磁されており、これにより第１及び第２のホール素子１６８Ａ、１６８Ｂからそれぞれ出力される第１及び第２の位置検出信号に基づいて対応するＤＣモータ１４２の現在位置を検出し得るようになされている。
【０１０１】
また制御基板１６６には、図２２について上述した第７の制御装置１０４２が形成されている。そしてこの第７の制御装置１０４２には、上述のようにインテリジェントＨＵＢ１０５からのサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）と、上述の位置検出センサ１６７（図２４（Ａ））の第１及び第２のホール素子から出力される第１及び第２の位置検出信号とが与えられる。かくして第７の制御装置１０４２は、かかるサーボ指令と、第１及び第２の位置検出信号とに基づいて対応するＤＣモータ１４２を駆動制御するようになされている。
【０１０２】
（３−３）第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２の構成
ここで第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２においては、図２５に示すように、制御基板１３２、１６３、１６６上に各種通信及び制御回路等が形成されたモータ制御用ＬＳＩ（Large Scale Integrated circuit）１７０並びに第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂが搭載されると共に、当該制御基板１３２、１６３、１６６にモータ駆動回路１７１が形成されることにより構成されている。
【０１０３】
この場合、第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２では、第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂから出力される上述の第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂと、後述のようにモータ駆動回路１７１により検出された対応するＤＣモータ１２１、１４１、１４２のコイル電流値を表す駆動電流検出信号Ｓ２がモータ制御用ＬＳＩ１７０に与えられる。
【０１０４】
また、第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２においては、電源ラインＬＶｃｃ及びアースラインＬＧＮＤと、送信用及び受信用の２本のシリアル通信ラインＬＲＸＤ、ＬＴＸＤと、クロック入力用の１本の信号ラインＬＣＬＫとを有するケーブル１７２を通じて他の第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２又はインテリジェントＨＵＢ１０５（図２２）と接続されており、かくしてモータ制御用ＬＳＩ１７０がこのケーブル１７２を介して駆動電力を入力し、かつ他の第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２等を介してインテリジェントＨＵＢ１０５と交信することができるようになされている。
【０１０５】
そしてモータ制御用ＬＳＩ１７０は、このケーブル１７２等を介してインテリジェントＨＵＢ１０５から与えられるサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）と、第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂからの第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂと、モータ駆動回路１７１からの駆動電流検出信号Ｓ２とに基づいて、当該ＤＣモータ１２１、１４１、１４２に印加すべき駆動電流値を算出し、当該算出結果に基づき生成したＰＷＭ（Pulse Width Modulation）信号Ｓ３をモータ駆動回路１７１に出力するようになされている。
【０１０６】
かくしてモータ駆動回路１７１は、モータ制御用ＬＳＩ１７０から与えられるＰＷＭ信号Ｓ３に基づいて、対応する値の駆動電流ＩＤを対応するＤＣモータ１２１、１４１、１４２に印加することにより当該ＤＣモータ１２１、１４１、１４２を駆動する。
【０１０７】
またこの際、モータ駆動回路１７１は、そのＤＣモータ１２１、１４１、１４２のコイルに流れる駆動電流の実際値を検出し、当該検出結果を上述のように駆動電流検出信号Ｓ２としてモータ制御用システムＬＳＩ１７０に送出する。
【０１０８】
このようにしてこのロボット１においては、モータ制御用ＬＳＩ１７０及びモータ駆動回路１７１からなる第１〜第７の制御装置１０３１〜１０３５、１０４１、１０４２によって、上位コントローラから与えられたサーボ指令に応じて対応するＤＣモータ１２１、１４１、１４２を駆動させ得るようになされている。
【０１０９】
（３−４）モータ制御用ＬＳＩ１７０及びモータ駆動回路１７１の構成
モータ制御用ＬＳＩ１７０においては、図２６に示すように、演算処理ブロック１８０と、レジスタ１８１と、電流制御部１８９を構成する減算器１８２、電流比例ゲイン乗算器１８３、ＰＷＭ変換ブロック１８４、位置検出ブロック１８５並びに第１及び第２のアナログ／ディジタル変換回路１８６、１８７とから構成されている。
【０１１０】
そして、このモータ制御用ＬＳＩ１７０では、第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂ（図２５）から供給される第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂが第２のアナログ／ディジタル変換回路１８８においてディジタル変換され、得られた第１及び第２の位置検出データＤ１Ａ、Ｄ１Ｂが位置検出ブロック１８５に与えられる。
【０１１１】
位置検出ブロック１８５は、供給される第１及び第２の位置検出データＤ１Ａ、Ｄ１Ｂに基づいて、対応する第１〜第５のアクチュエータ部１００１〜１００５（図２３）内のＤＣモータ１２１（図２３）の現在位置、又は第６のアクチュエータ部１０２（図２４）内の対応するＤＣモータ１４１、１４２（図２４）の回転位置を検出し、かくして得られた上述の現在位置データ（Ｐ１（ｋ）〜Ｐ７（ｋ））（図２２）をレジスタ１８１に格納する。
【０１１２】
演算処理ブロック１８０は、このレスジタ１８１に格納された現在位置データを読み出し、当該読み出した現時位置データと、インテリジェントＨＵＢ１０５から与えられるサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）とに基づいて、対応するＤＣモータ１２１、１４１、１４２（図２５）の出力軸を指定された回転角度にまで回転駆動させるためのトルクを発生させるために必要な電流の目標値（以下、これを目標電流値と呼ぶ）Ｉ０を算出し、得られた目標電流値Ｉ０をレジスタ１８１に格納する。
【０１１３】
一方、レジスタ１８１に格納された目標電流値Ｉ０は減算器１８２により読み出される。このとき減算器１８２には、モータ駆動回路１７１（図２５）から与えられる上述の駆動電流検出信号Ｓ２を第１のアナログ／ディジタル変換回路１８６においてディジタル変換してなる駆動電流検出データＤ３が与えられる。
【０１１４】
かくして減算器１８２は、目標電流値Ｉ０から駆動電流検出データＤ３に基づき得られるそのときの実際のＤＣモータ１２１、１４１、１４２のコイル電流の検出値を減算し、得られた目標電流値Ｉ０に対する差分を表す差分電流値データＤ４を電流比例ゲイン乗算器１８３に送出する。
【０１１５】
電流比例ゲイン乗算器１８３は、差分電流値データＤ４に対し、かかる差分を「０」に収束させるための所定の電流比例ゲインＧｐを乗算し、かくして得られた実際にＤＣモータ１２１、１４１、１４２に印加すべき駆動電流の目標値（以下、これを印加電流目標値と呼ぶ）Ｉ１をＰＷＭ変換ブロック１８４に送出する。
【０１１６】
ＰＷＭ変換ブロック１８４は、供給される印加電流目標値Ｉ１をＰＷＭ変調し、得られたＰＷＭ信号Ｓ３を上述のようにモータ駆動回路１７１に送出する。このときＰＷＭ変換ブロック１８４及びモータ駆動回路１７１間は、第１及び第２の信号ラインにより接続されており、ＰＷＭ変換ブロック１８４は、対応するＤＣモータ１２１、１４１、１４２を正転駆動するときにはＰＷＭ信号Ｓ３を第１の信号ラインを介してモータ駆動回路１７１に送出すると共に、ＰＷＭ信号Ｓ３における論理「１」レベルの信号（以下、これを基準信号と呼ぶ）Ｓ４を他方の第２の信号ラインを介してモータ駆動回路１７１に送出する。
【０１１７】
またＰＷＭ変換ブロック１８４は、対応するＤＣモータ１２１、１４１、１４２を逆転駆動するときにはＰＷＭ信号Ｓ３を第２の信号ラインを介してモータ駆動回路１７１に送出すると共に、基準信号を第１の信号ラインを介してモータ駆動回路１７１に送出する。
【０１１８】
モータ駆動回路１７１においては、図２７に示すように、２個の増幅器１９０Ａ、１９０Ｂからなるゲートドライブ回路１９１と、２個のＭＯＳ（Metal Oxide Semiconductor）型ＮチャンネルＦＥＴ（Field Effect Transistor）１９２１、１９２２及び２個のＭＯＳ型ＰチャンネルＦＥＴ１９２３、１９２４がブリッジ状に接続されてなるインバータ回路１９３とから構成されている。
【０１１９】
そしてモータ駆動回路１７１では、第１の信号ラインが第２のＭＯＳ型ＰチャンネルＦＥＴ１９２４のゲートと、ゲートドライブ回路１９１の第１の増幅器１９０Ａを介してインバータ回路１９３の第１のＭＯＳ型ＮチャンネルＦＥＴ１９２１のゲートとにそれぞれ接続されると共に、第２の信号ラインが第１のＭＯＳ型ＰチャンネルＦＥＴ１９２３のゲートと、ゲートドライブ回路１９１の第２の増幅器１９０Ｂを介してインバータ回路１９３の第２のＭＯＳ型ＮチャンネルＦＥＴ１９２２のゲートとにそれぞれ接続されている。
【０１２０】
またこのモータ駆動回路１７１では、第１のＭＯＳ型ＮチャンネルＦＥＴ１９２１及び第１のＭＯＳ型ＰチャンネルＦＥＴ１９２３の接続中点と、第２のＭＯＳ型ＮチャンネルＦＥＴ１９２２及び第２のＭＯＳ型ＰチャンネルＦＥＴ１９２４の接続中点とがそれぞれ対応するＤＣモータ１２１、１４１、１４２内のコイルと接続されている。
【０１２１】
これによりモータ駆動回路１７１においては、第１又は第２の信号ラインを介してＰＷＭ変換ブロックから与えられるＰＷＭ信号Ｓ３をインバータ回路１９３においてアナログ波形の駆動電流に変換し、これをかかる対応するＤＣモータ１２１、１４１、１４２のコイルに駆動電流として供給することができるようになされている。
【０１２２】
またモータ駆動回路１７１においては、第１のＭＯＳ型ＰチャンネルＦＥＴ１９２３のソース及びグランド間と、第２のＭＯＳ型ＰチャンネルＦＥＴ１９２４のソース及びグランド間とにそれぞれ第１及び第２の電流検出用チップ抵抗Ｒ１、Ｒ２が接続されている。
【０１２３】
そして、この第１の電流検出用チップ抵抗Ｒ１及び第１のＭＯＳ型ＰチャンネルＦＥＴ１９２３の接続中点と、第２の電流検出用チップ抵抗Ｒ２及び第２のＭＯＳ型ＰチャンネルＦＥＴ１９２４の接続中点とがそれぞれ差動増幅器１９４を介してモータ制御用ＬＳＩ１７０（図２６）と接続されており、これによりモータ駆動回路１７１により検出された対応するＤＣモータ１２１、１４１、１４２のコイル電流の検出結果を上述のように駆動電流検出信号Ｓ２としてモータ制御用ＬＳＩ１７０に供給し得るようになされている。
【０１２４】
（３−５）モータ制御用ＬＳＩ１７０の各処理ブロックの具体的構成
次に、モータ制御用ＬＳＩ１７０の演算処理ブロック１８０、位置検出ブロック１８５、ＰＷＭ変換ブロック１８４について、それぞれその構成を詳細に説明する。
【０１２５】
（３−５−１）演算処理ブロック１８０の詳細構成
演算処理ブロック１８０においては、図２６に示すように、ＣＰＵ２００と、各種プログラムが格納されたＲＯＭ２０１と、ＣＰＵ２００のワークメモリとしてのＲＡＭ２０２と、汎用のパラレル通信に対応したパラレル通信用入出力回路２０３と、ディジーチェーン接続された他の第１〜第７の制御装置１００１〜１０３５、１０４１、１０４２（図２２）等との間の入出力インターフェース回路でなるシリアル通信用入出力回路２０４と、サーボ割込みのための１〔ms〕周期のサーボ割込信号Ｓ１０及びＰＷＭ周期である50〔μs〕周期のパルス信号Ｓ１１を発生するカウンタ・タイマ・コントロール回路２０５と、カウンタ・タイマ・コンロトール回路２０５からサーボ割込信号Ｓ１０が正しく発生されているかをＣＰＵ２００が判断するための１〔ms〕周期以上の所定周期の基準信号でなるウォッチドッグ信号Ｓ１２を発生するウォッチドッグ信号発生回路２０６とがＣＰＵバス２０７を介して相互に接続されることにより構成されている。
【０１２６】
そしてＣＰＵ２００は、シリアル通信用入出力回路２０４を介してディジーチェーン接続された他の第１〜第７の制御装置１００１〜１０３５、１０４１、１０４２（図２２）等から電源電圧Ｖｃｃ（図２７）が供給されると、まずＲＯＭ２０１に格納された初期プログラムに基づいて、各種制御ゲインの初期設定処理等の立上り処理を実行する。
【０１２７】
またＣＰＵ２００は、この後、この結果としてカウンタ・タイマ・コントロール回路２０５から与えられるサーボ割込み信号Ｓ１０に基づいて、対応するＤＣモータ１２１、１４１、１４２の回転を制御するためのモータ回転制御処理を１〔ms〕毎に実行する。
【０１２８】
（３−５−２）位置検出ブロック１８５の詳細構成
次に、位置検出ブロック１８５の構成を詳細に説明する。なおその前提として、先に第１〜第５のアクチュエータ部１００１〜１００５における位置検出センサ１３０（図２３）及び第６のアクチュエータ部１０２における各位置検出センサ１６１、１６７（図２４）の構成について説明する。
【０１２９】
各位置検出センサ１３０、１６１、１６７においては、図２８に示すように、樹脂マグネット１３１、１６２、１６５がその周方向に沿って磁束密度φ（θｍ）が次式
【０１３０】
【数１】
2006000966.tif 000003
【０１３１】
のように変化するように着磁されている。なお、この（１）式において、φ０は最大磁束密度を表し、θｍは磁束密度が０となる基準位置Ｐ０からの回転角度を示す。
【０１３２】
一方、位置検出センサ１３０、１６１、１６７の第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂ（図２３、図２４）は、それぞれ図２９に示すように、樹脂マグネット１３１、１６２、１６５と対向し、かつ当該樹脂マグネット１３１、１６２、１６５と同心円上のπ／２だけ回転角度がずれた位置に位置するように制御基板１３２、１６３、１６６（図２３、図２４）に搭載されている。
【０１３３】
そして、このように配置された第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂから出力される上述の第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂは、図３０に示すように、センサゲインをＧ０、第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂの位置における最大磁束密度をφ１とし、上述のθｍを用いて、それぞれ次式
【０１３４】
【数２】
2006000966.tif 000004
【０１３５】
【数３】
2006000966.tif 000005
【０１３６】
のように表すことができる。
【０１３７】
従って、これら第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂに基づいて、以下の手順により樹脂マグネット１３１、１６２、１６５の回転角度θｍを求めることができる。
【０１３８】
すなわち、まずその初期値を０として回転角度演算値θｘを設定し、次式
【０１３９】
【数４】
2006000966.tif 000006
【０１４０】
を演算する。
【０１４１】
そしてＥθｘ＝０とならない場合には、θｘを次式
【０１４２】
【数５】
2006000966.tif 000007
【０１４３】
により算出する。ここで、Ｋｐは比例ゲイン、Ｋｉは積分ゲインをそれぞれ示し、共に正の定数である。
【０１４４】
この算出したθｘを用いて（４）式を再び演算し、この後Ｅθｘ＝０となるまでこれを繰り返す。この結果Ｅθｘはゼロ値に収束してゆき、このときθｘが次式
【０１４５】
【数６】
2006000966.tif 000008
【０１４６】
として与えられる。
【０１４７】
従って、この（６）式と、（５）式により算出されるθｘとに基づいて、次式
【０１４８】
【数７】
2006000966.tif 000009
【０１４９】
のように樹脂マグネットの回転角度θｍを求めることができる。なお（６）式及び（７）式において、Ｎは０以上の整数を表す。
【０１５０】
かかる原理に基づいて位置検出ブロック１８５は、図３１に示すように構成されており、位置検出センサ１３０、１６１、１６７の第１及び第２のホール素子１３３Ａ、１３３Ｂ、１６４Ａ、１６４Ｂ、１６８Ａ、１６８Ｂから出力される第１及び第２の位置検出信号Ｓ１Ａ、Ｓ１Ｂを第２のアナログ／ディジタル変換回路１８７によりディジタル変換してなる第１及び第２の位置検出データＤ１Ａ、Ｄ１Ｂをそれぞれ第１及び第２の乗算器２１０Ａ、２１０Ｂに入力する。
【０１５１】
このとき第１及び第２の乗算器２１０Ａ、２１０Ｂには、それぞれ後述のように先行して算出した回転角度演算値θｘの余弦値（ｃｏｓθｘ）又は正弦値（ｓｉｎθｘ）が第１及び第２の関数変換部２１４Ａ、２１４Ｂから与えられる。
【０１５２】
かくして第１の乗算器２１０Ａは、第１の位置検出データＤ１Ａ及び回転角度演算値θｘの余弦値（ｃｏｓθｘ）を乗算し、乗算結果を減算器２１１に送出する。また第２の乗算器２１０Ｂは、第２の位置検出データＤ１Ｂ及び回転角度演算値θｘの及び正弦値（ｓｉｎθｘ）を乗算し、乗算結果を減算器２１１に送出する。
【０１５３】
減算器２１１は、供給される第１の乗算器２１０Ａの乗算結果から第２の乗算器２１０Ｂの乗算結果を減算することにより（４）式で与えられる演算結果を得、これを第３の乗算器２１２に送出する。
【０１５４】
そしてこの乗算結果には、この後第３の乗算器２１２において、Ｓをラプラス演算子として、次式
【０１５５】
【数８】
2006000966.tif 000010
【０１５６】
で与えられる積分ゲイン及び比例ゲインＫｒが順次乗算され、その後第４の乗算器２１３において１／Ｓ（Ｓはラプラス演算子）が乗算される。
【０１５７】
この結果、第４の乗算器２１３における乗算結果として回転角度演算値θｘが得られ、これが第１及び第２の関数演算器２１４Ａ、２１４Ｂに与えられる。そして第１及び第２の関数演算器２１４Ａ、２１４Ｂは、供給される回転角度演算値θｘの正弦値（ｓｉｎθｘ）及び余弦値（ｃｏｓθｘ）をそれぞれ演算し、演算結果を上述のように第２又は第１の乗算器２１０Ａ、２１０Ｂに与える。
【０１５８】
一方、第４の乗算器２１３から出力される回転角度演算値θｘは、レジスタ１８１（図２６）に格納される。そしてこの回転角度演算値θｘは、この後演算処理ブロック１８０により読み出され、上述のように対応するＤＣモータ１２１、１４１、１４２の現在位置を表す現在位置データ（Ｐ１（ｋ）〜Ｐ７（ｋ））として当該ＤＣモータ１２１、１４１、１４２の制御に利用される。
【０１５９】
なお位置検出ブロック１８５における上述のような回転角度演算値θｘの演算処理は、演算処理ブロック１８０のカウンタ・タイマ・コントロール回路２０５から与えられるパルス信号Ｓ１１に基づいて行われる。従って、この位置検出ブロック１８５から出力される回転角度演算値θｘは、パルス信号Ｓ１１の周期である50〔μs〕毎に更新されることとなる。
【０１６０】
（３−５−３）ＰＷＭ変換ブロック１８４の詳細構成
ＰＷＭ変換ブロック１８４においては、電流比例ゲイン乗算器１８３から供給される乗算結果に基づいて、50〔μs〕周期のパルスのパルス幅を制御することにより、ＰＷＭ変調信号Ｓ３及び基準信号Ｓ４を生成し、これらをモータ駆動回路１７１（図２５）に送出する。
【０１６１】
実際上、ＰＷＭ変換ブロック１８４は、図３１に示すように、電流比例ゲイン乗算器１８３から供給される印加電流目標値Ｉ１（図２６）を図示しない内部レジスタにセットし、印加電流目標値Ｉ１が正のときには、当該印加電流目標値Ｉ１を演算処理ブロック１８０（図２６）のカウンタ・タイマ・コントロール回路２０５から与えられる、50〔μs〕周期のＰＷＭパルス信号Ｓ１１の立上りエッジ毎に第１のＰＷＭパルス信号発生回路２２０Ａ内のダウンカウンタ（図示せず）にセットする。
【０１６２】
そしてこのダウンカウンタは、演算処理ブロック１８０のＣＰＵクロック（0.1〔μs〕）の立上りエッジ毎にカウンタ値を減少させてゼロ値で停止する。従って、第１のＰＷＭパルス信号発生回路２２０Ａの出力は、ダウンカウンタのカウント値がゼロ値になるまで出力が論理「１」レベル、カウンタ値がゼロ値となってからは論理「０」レベルとなる。
【０１６３】
また次のＰＷＭパルス信号Ｓ１１の立上りエッジで再びレジスタに格納された印加電流目標値Ｉ１が第１のＰＷＭパルス信号発生回路２２０Ａのダウンカウンタに再びセットされて上述の処理が繰り返される。
【０１６４】
従って、第１のＰＷＭパルス信号発生回路２２０Ａからは、レジスタに格納される印加電流目標値Ｉ１が更新されるまで、当該印加電流目標値Ｉ１に比例した一定のパルス幅ＴｏｎのＰＷＭ信号Ｓ３が出力され、第２のＰＷＭパルス信号発生回路２２０Ｂからは、論理「０」レベルの基準信号Ｓ４が出力される。
【０１６５】
一方、ＰＷＭ変換ブロック１８４においては、印加電流目標値Ｉ１が負であった場合にはその絶対値を演算して正の整数に変換した後、この印加電流目標値Ｉ１を第２のＰＷＭパルス信号発生回路２２０Ｂ内のダウンカウンタ（図示せず）にセットする。
【０１６６】
この結果このときには、第２のＰＷＭパルス信号発生回路２２０Ｂからは、上述の第１のＰＷＭパルス信号発生回路２２０Ａと同様にして、レジスタに格納される印加電流目標値Ｉ１が更新されるまで、当該印加電流目標値Ｉ１に比例した一定のパルス幅ＴｏｎのＰＷＭ信号Ｓ３が出力される。またこのとき第１のＰＷＭ信号発生回路２２０Ａからは、論理「１」レベルの基準信号Ｓ４が出力される。
【０１６７】
このようにしてＰＷＭ変換ブロック１８４においては、電流比例ゲイン乗算器１８３から供給される演算結果の印加電流目標値Ｉ１に応じたパルス幅のＰＷＭ信号Ｓ３及び基準信号Ｓ４を生成し、これをモータ駆動回路１７１に送出し得るようになされている。
【０１６８】
（４）演算処理ブロック１８０におけるソフトウェア制御
（４−１）ソフトウェア制御の一連の流れ
次に、演算処理ブロック１８０におけるソフトウェア制御について説明する。
【０１６９】
演算処理ブロック１８０のＣＰＵ２００（図２６）は、図３３に示すデータ処理手順に従って、対応するＤＣモータ１２１、１４１、１４２を駆動制御するための各種処理を実行する。
【０１７０】
すなわちＣＰＵ２００は、カウンタ・タイマ・コンロトール回路２０５（図２６）からサーボ割込信号Ｓ１０が与えられるごとにこのデータ処理手順を実行し、まずシリアル通信用入出力回路２０４（図２６）を制御することにより、インテリジェントＨＵＢ１０５（図２２）から送信される上述のサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））（図２２）やこれ以外の各種コマンドを受信させ、これをＲＡＭ２０２（図２６）に格納する（ステップＳＰ１）。
【０１７１】
次いでＣＰＵ２００は、このＲＡＭ２０２に格納したサーボ指令や各種コマンドに対し、例えばデータフォーマット変換処理等の所定のデータ受信処理を施す（ステップＳＰ２）。因みに、インテリジェントＨＵＢ１０５（図２２）との通信は２〔ms〕周期で行われ、従ってインテリジェントＨＵＢ１０５からのサーボ指令等が２〔ms〕ごとに与えられるのに対し、カウンタ・タイマ・コンロトール回路２０５からのサーボ割込信号Ｓ１０は１〔ms〕ごとに与えられるため、上述のようなステップＳＰ１及びステップＳＰ２における受信処理はこのデータ処理手順の実行の２回に１回の割合で行われることとなる。
【０１７２】
続いてＣＰＵ２００は、かかるデータ受信処理により得られた２〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ））と、このときＲＡＭ２０２に格納されている先行して得られた対応するＤＣモータ１２１、１４１、１４２の現在位置データ（Ｐ１（ｋ）〜Ｐ７（ｋ））（図２２）とに基づいて、当該ＤＣモータ１２１、１４１、１４２の１〔ms〕ごとの目標位置を表すサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ７（ｋ）´）を生成する（ステップＳＰ３）。
【０１７３】
なお、ＣＰＵ２００は、電源投入時等の上位コントローラから未だサーボ指令等が与えられていない初期時には、当該サーボ指令に代えて、予めＲＯＭ２０１（図２６）に格納されたシステム初期設定値を読み出し、当該システム設定値に基づいて同様の処理を実行する。
【０１７４】
またＣＰＵ２００は、かかるサーボ指令に代えて、例えば上位コントローラから電流比例ゲイン乗算器１８３（図２６）について上述した電流比例ゲインＧＰや、位置検出ブロック１８５（図２６）の（２）式について上述したセンサゲインＧ０、後述するコンプライアンス制御に関するコンプライアンス調整ゲインＫａｄｊ等の制御ゲインを変更すべきコマンドが与えられたときには、当該コマンドに応じてＲＡＭ２０２に格納されている対応する制御ゲインを変更する。
【０１７５】
一方、ＣＰＵ２００は、上述のようにして１〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ７（ｋ）´）を生成すると、当該サーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ７（ｋ）´）と、このとき位置検出ブロック１８５から与えられる現在位置データ（Ｐ１（ｋ）〜Ｐ７（ｋ））とに基づいて、対応するＤＣモータ１２１、１４１、１４２の回転を制御するための回転制御処理を実行する。具体的には、ＣＰＵ２００は、かかる回転制御処理として、サーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ７（ｋ）´）と、現在位置データ（Ｐ１（ｋ）〜Ｐ７（ｋ））とに基づいて、図２６について上述した電流指令値Ｉ０を算出し、これをレジスタ１８１に格納する（ステップＳＰ４）。
【０１７６】
またＣＰＵ２００は、これと共にかかる位置検出ブロック１８５からの現在位置データや、後述のようなコンプライアンス制御処理において得られた差分ｅ１（図３４）等の内部変数のデータ（以下、モータ内部変数データと呼ぶ）をＲＡＭ２０２（図２６）に格納する。
【０１７７】
そしてＣＰＵ２００は、この後このＲＡＭ２０２に格納された対応するＤＣモータ１２１、１４１、１４２の現在位置データ及びモータ内部変数データ等を外部に送信するためのデータ変換処理等の所定のデータ送信処理を実行し、得られたデータ送信処理後の現在位置データやモータ内部変数データをＲＡＭ２０２に格納する（ステップＳＰ５）。
【０１７８】
そしてＣＰＵ２００は、この後シリアル通信入出力回路２０４（図２６）を制御することにより、かかるＲＡＭ２０２に格納されたデータ送信処理後の現在位置データやモータ内部変数データをディジーチェーン接続された他の第２〜第７の制御装置１０３２〜１０３７、１０４１、１０４２又はインテリジェントＨＵＢ１０５に送信する（ステップＳＰ６）。
【０１７９】
このようにして演算処理ブロック１８０においては、インテリジェントＨＵＢ１０５からのサーボ指令やコマンドに基づいて、対応する各種処理を実行するようになされている。
【０１８０】
（４−２）回転制御処理の具体的内容
ここで、図３３について上述したデータ処理手順のステップＳＰ４での回転制御処理に関し、第１〜第５の制御装置１０３１〜１０３５内のＣＰＵ２００の具体的な処理内容について説明する。
【０１８１】
ＣＰＵ２００は、かかる回転制御処理時、インテリジェントＨＵＢ１０５からのサーボ指令（Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ））に基づき生成した１〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ５（ｋ）´）と、位置検出ブロック１８５により検出された現在位置データ（Ｐ１（ｋ）〜Ｐ５（ｋ））とに基づいて、位置制御処理とコンプライアンス制御処理とを並列的に同時に実行することにより目標電流値Ｉ０を生成する。
【０１８２】
因みに、位置制御とは、１〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ５（ｋ）´）である目標とする回転角度と、現在位置データ（Ｐ１（ｋ）〜Ｐ５（ｋ））に基づき得られるＤＣモータ１２１（図２３）の出力軸の現在の回転角度（現在位置）とを比較して、その差分に基づき対応するＤＣモータ１２１に印加する駆動電流を制御することにより、かかる差分を「０」に収束させる制御をいう。
【０１８３】
またここでのコンプライアンス制御とは、ＤＣモータ１２１に外力が与えられたときに、当該外力の大きさと、ＤＣモータ１２１の変位量とが比例関係となるようにＤＣモータ１２１の変位量を制御することをいう。そしてこのときの比例定数をコンプライアンス調整ゲインといい、当該コンプライアンス調整ゲインが「０」であるときに外力があっても変位量が「０」、つまり高剛性となる。またコンプライアンス調整ゲインが「０」よりも大きくなるにつれて徐々に変位量が大きくなって、低剛性となる。このようにコンプライアンス調整ゲインの大きさに応じてＤＣモータ１２１の外力による変位量を制御でき、例えばロボット１の第１〜第５の指部６０１〜６０５（図６）に外力が作用したときに当該外力によって第１〜第５の指部６０１〜６０５が破損するのを防止したり、ロボット１が対象物を把持する際の柔らかさを制御することができる。こうした柔らかさを制御する方法がコンプライアンス制御である。
【０１８４】
そしてＣＰＵ２００は、かかる位置制御処理及びコンプライアンス制御処理を同時並列的に実行することにより、予め設定されたコンプライアンス調整ゲインに応じた剛性で手部２３の容姿制御を行う。
【０１８５】
実際上、ＣＰＵ２００は、対応するＤＣモータ１２１の回転制御処理時、図３４に示すように、１〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ５（ｋ）´）と、このとき位置検出ブロック１８５から与えられるＤＣモータ１２１の現在位置Ｙｆとの差分ｅ１を計算し（ステップＳＰ１０）、その差分ｅ１に位置比例ゲインＫｐを乗算することにより、対応するＤＣモータ１２１を実際に駆動制御するための目標電流値Ｉ０´を算出する（ステップＳＰ１１）。
【０１８６】
そしてＣＰＵ２００は、この目標電流値Ｉ０´と後述のコンプライアンス調整値Ｔｒｅｆとを加算することにより目標電流値Ｉ０を算出し（ステップＳＰ１２）、これを上述のようにレジスタ１８１（図２６）に格納する。この結果、この目標電流値Ｉ０が減算器１８２（図２６）により読み出され、この後この目標電流値Ｉ０に基づいて、かかる差分ｅ１を「０」とするように上述のような位置制御が行われる。
【０１８７】
一方、ＣＰＵ２００は、これと同時並列的にそのＤＣモータ１２１と同じ特性の数学モデルによるＤＣモータ１２１の現在位置を演算する（ステップＳＰ１３）。
【０１８８】
具体的に、ＣＰＵ２００は、１〔ms〕ごとのサーボ指令（Ｒｅｆ１（ｋ）´〜Ｒｅｆ５（ｋ）´）と、かかる数学モデルにより算出される現在の対応するＤＣモータ１２１の理論的な現在位置（以下、これをモデル現在位置と呼ぶ）ＹＭｆとの差分ｅ２を算出し（ステップＳＰ１３Ａ）、この差分ｅ２に実モデルの位置比例ゲインＫｐと同じ値の位置比例ゲインＫＭｐを乗算することにより、実モデルの目標電流値Ｉ０´と対応する理論的な目標電流値（以下、これをモデル目標電流値と呼ぶ）Ｉ０（ｍ）´を算出する（ステップＳＰ１３Ｂ）。
【０１８９】
そしてＣＰＵ２００は、このモデル目標電流値Ｉ０（ｍ）´に対し、かかる差分ｅ２を「０」に収束させるための電流比例ゲインとして、図２６について上述した電流比例ゲイン乗算器１８３において差分電流値データＤ４に乗算する電流比例ゲインＧｐと同じ値の電流比例ゲインＧＭｐを乗算することにより、実モデルの印加電流目標値Ｉ１（図２６）に対応する理論的な印加電流目標値（以下、これをモデル印加電流目標値と呼ぶ）Ｉ１（ｍ）を算出する（ステップＳＰ１３Ｃ）。
【０１９０】
続いてＣＰＵ２００は、モデル印加電流目標値Ｉ１（ｍ）に対して実モデルの対応するＤＣモータ１２１のモータ定数Ｋｍと同じ値のモータ定数モデルＫＭｍを乗算することにより、このときの実モデルにおけるＤＣモータ１２１の出力トルクＴｍと対応する理論的なＤＣモータ１２１の出力トルクＴＭｍ（以下、これをモデル出力トルクＴＭｍ）を算出する（ステップＳＰ１３Ｄ）。
【０１９１】
さらにＣＰＵ２００は、この後このモデル出力トルクＴＭｍと、後述のように算出される外力の推定トルクでなる外力推定トルクＴｆ＿ｅｓｔとを加算することにより、このときの実モデルにおけるＤＣモータ１２１の出力軸に生じるトルクの理論的な総和でなる総和トルクＴｆと対応する理論的な総和トルク（以下、これをモデル総和トルクと呼ぶ）ＴＭｆを算出する（ステップＳＰ１３Ｅ）。
【０１９２】
そしてＣＰＵ２００は、この後モデル総和トルクＴＭｆに対して、次式
【０１９３】
【数９】
2006000966.tif 000011
【０１９４】
で与えられる数学モデル上での第１〜第５の指部６０１〜６０５の機械的な特性に応じた定数を乗算することにより、上述した対応するＤＣモータ１２１のモデル現在位置ＹＭｆを算出する（ステップＳＰ１３Ｆ）。なお、この（９）式において、ＪＭｙ、ＤＭｙは、それぞれ実モデルにおける第１〜第５のアクチュエータ部１００１〜１００５（図２３）の機構的な慣性モーメントＪｙ又は摩擦係数Ｄｙと同じ値の定数であり、Ｓはラプラス演算子を示す。
【０１９５】
次いでＣＰＵ２００は、位置検出ブロック１８５により検出された実モデルにおけるＤＣモータ１２１の現在位置（以下、適宜、これを実モデル現在位置と呼ぶ）Ｙｆからモデル現在位置ＹＭｆを減算することにより、これら実モデル現在位置Ｙｆ及びモデル現在位置ＹＭｆの差分Ｙｆｅｒを算出する（ステップＳＰ１４）。
【０１９６】
さらにＣＰＵ２００は、この差分Ｙｆｅｒに所定の推定ゲインＫｅｓｔを乗算することにより、対応する第１〜第５の指部６０１〜６０５に作用した外力の推定トルクでなる上述の外力推定トルクＴｆ＿ｅｓｔを算出する。
【０１９７】
ここで、この外力推定トルクＴｆ＿ｅｓｔを上述のようにモデル目標電流値Ｉ０（ｍ）´と加算すると、数学モデルにより算出されるモデル現在位置ＹＭｆが実モデル現在位置Ｙｆと同様に変化し、実モデル現在位置Ｙｆとモデル現在位置ＹＭｆとの差分Ｙｆｅｒが「０」に収束するようになる。
【０１９８】
そして、差分Ｙｆｅｒが「０」に収束したときの外力推定トルクＴｆ＿ｅｓｔが、実際に対応する第１〜第５の指部６０１〜６０５に作用した外力トルクＴｆ＿ｅｘｔと同じ値となることから、この外力トルクＴｆ＿ｅｘｔを外力推定トルクＴｆ＿ｅｓｔとして精度良く求めることができる。
【０１９９】
なお、このときの収束応答時間は推定ゲインＫｅｓｔの大きさによって決定し、この推定ゲインＫｅｓｔが大きいほど、収束応答時間が短くなり、推定ゲインＫｅｓｔが小さいほど収束応答時間が長くなる。
【０２００】
一方、ＣＰＵ２００は、このようにして算出された外力推定トルクＴｆ＿ｅｓｔに上述のコンプライアンス調整ゲインＫａｄｊを乗算することによりコンプライアンス調整値Ｔｒｅｆを算出すると共に、このコンプライアンス調整値Ｔｒｅｆを上述のように位置制御処理により算出した目標電流値Ｉ０´に加算する。
【０２０１】
この結果、対応するＤＣモータ１２１がメイン制御部４０からの位置指令値Ｕ１（Ｎ）〜Ｕ５（Ｎ）（インテリジェントＨＵＢ１０５からのサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ））とは別に、対応する第１〜第５の指部６０１〜６０５に作用する外力の大きさ及びそのとき設定されているコンプライアンス調整ゲインＫａｄｊの大きさに応じて駆動するようになり、かくして当該第１〜第５の指部６０１〜６０５に外力が与えられたときに、当該第１〜第５の指部６０１〜６０５がこの外力に従って当該外力と同じ方向に屈曲するようになる。
【０２０２】
この場合において、コンプライアンス調整ゲインＫａｄｊの値が次式
【０２０３】
【数１０】
2006000966.tif 000012
【０２０４】
を満たすときには、結果的に外力トルクＴｆ＿ｅｘｔと同じトルクがコンプライアンス調整値Ｔｒｅｆとして加算されるため、対応する第１〜第５の指部６０１〜６０５の動きは、位置制御処理による外力に対する反作用力がキャンセルされた動きとなる。かくして、このときその第１〜第５の指部６０１〜６０５は、外力により軽く曲げることができるようになる。
【０２０５】
一方、コンプライアンス調整ゲインＫａｄｊの値が次式
【０２０６】
【数１１】
2006000966.tif 000013
【０２０７】
であるときには、対応する第１〜第５の指部６０１〜６０５の動きは、上述のような位置制御処理による外力に対する反作用力が減衰された動きとなる。かくして、このときその第１〜第５の指部６０１〜６０５は、外力に対してコンプライアンス調整ゲインＫａｄｊに応じた大きさの反作用力をもって曲げることができるようになる。
【０２０８】
このようにコンプライアンス調整ゲインＫａｄｊの値を調整することによって、外力に対する第１〜第５の指部６０１〜６０５の反作用力を制御することができる。そしてこのようなコンプライアンス制御によって、第１〜第５の指部６０１〜６０５に外力が作用したときに、その第１〜第５の指部６０１〜６０５が上位コントローラ（メイン制御部４０（図５））からの位置指令値Ｕ１（Ｎ）〜Ｕ５（Ｎ）に反して外力に応じて動くようになり、これにより外力が作用したことに起因する第１〜第５の指部６０１〜６０５の破損を未然かつ有効に防止したり、外界物をその形状に沿って柔らかく把持することができる。
【０２０９】
（５）ロボット１におけるコンプライアンス制御
（５−１）コンプライアンス制御に関する一連の流れ
次に、ロボット１における実際のコンプライアンス制御に関する一連の流れについて、図３５を用いて説明する。
【０２１０】
このロボット１においては、メイン制御部４０の制御のもとに、対応する第１〜第５の制御装置１０３１〜１０３５におけるコンプライアンス調整ゲインＫａｄｊを状況に応じて変更することにより、通常時には第１〜第５の指部６０１〜６０５に高い剛性をもたせる一方、外部物体の把持時やロボット１の転倒時には第１〜第５の指部６０１〜６０５の剛性を低くして、当該外部物体をその形状に沿って柔らかく把持したり、第１〜第５の指部６０１〜６０５が床面に衝突することに起因する破損を有効に防止することができるようになされている。
【０２１１】
またこのロボット１においては、第１〜第５の指部６０１〜６０５に予想外の外力が作用したときには、メイン制御部４０の制御を離れてインテリジェントＨＵＢ１０５が対応する第１〜第５の制御装置１０３１〜１０３５におけるコンプライアンス調整ゲインＫａｄｊを変更することにより、その第１〜第５の指部６０１〜６０５を反射的に外力に対して柔らかくさせて、当該外力が作用したことに起因する第１〜第５の指部６０１〜６０５の破損を有効に防止できるようになされている。
【０２１２】
すなわちこのロボット１の場合、メイン制御部４０の演算部４０Ｂは、当該ロボット１の電源が投入された初期時、予め外部メモリ５８（図５）に格納されている、第１〜第５の指部６０１〜６０５についての通常時用のコンプライアンス調整ゲインＫａｄｊの規定値（以下、これらを通常時用調整ゲイン規定値と呼ぶ）を読み出し、これらをインテリジェントＨＵＢ１０５に送出する。
【０２１３】
またメイン制御部４０の演算部４０Ｂは、この後、上述のような自律制御処理により決定した次の自己の行動内容等に基づいて、第１〜第５の制御装置１０３１〜１０３５に対する位置指令値Ｕ１（Ｎ）〜Ｕ５（Ｎ）を順次生成し、これを８〔ms〕の通信周期ごとに対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送出する。
【０２１４】
インテリジェントＨＵＢ１０５は、第１〜第５の制御装置１０３１〜１０３５の構成（親指、人指し指、中指、薬指及び小指）を構成比調整部１０５Ｂにおいて管理しており、メイン制御部４０から送信される第１〜第５の指部６０１〜６０５についての各通常時用調整ゲイン規定値を第１〜第５の制御装置１０３１〜１０３５に送信する。かくして第１〜第５の制御装置１０３１〜１０３５は、これら通常時用調整ゲイン規定値のうちの対応するものを取り込み、その値をコンプライアンス調整ゲインＫａｄｊの初期値として設定する。
【０２１５】
またインテリジェントＨＵＢ１０５は、この後８〔ms〕周期でメイン制御部４０から送信される位置指令値Ｕ１（Ｎ）〜Ｕ５（Ｎ）に基づいて２〔ms〕ごとのサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）を生成し、これを２〔ms〕の通信周期ごとに第１〜第５の制御装置１０３１〜１０３５に送信する。かくして第１〜第５の制御装置１０３１〜１０３５は、この後、インテリジェントＨＵＢ１０５から送信されるサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）と、上述のようにして設定したコンプライアンス調整ゲインＫａｄｊとに基づいて、位置制御処理とコンプライアンス制御処理とを並列的に同時に実行する。
【０２１６】
一方、メイン制御部４０の演算部４０Ｂは、外部物体を把持することを次の行動として決定し、実際に当該外部物体をロボット１に把持させる際には、予め外部メモリ５８（図５）に格納されている、第１〜第５の指部６０１〜６０５についての把持時用のコンプライアンス調整ゲインＫａｄｊの規定値（以下、これらを把持時用調整ゲイン規定値と呼ぶ）を読み出す。
【０２１７】
この場合これら把持時用調整ゲイン規定値は、対応する通常時用調整ゲイン規定値に比べて値が大きく選定されており、かくしてコンプライアンス調整ゲインＫａｄｊとしてこれら把持時用調整ゲイン規定値を第１〜第５の制御装置１０３１〜１０３５にそれぞれ設定することにより、第１〜第５の指部６０１〜６０５を通常時に比べて低剛性にすることができるようになされている。
【０２１８】
そしてメイン制御部の演算部４０Ｂは、これら読み出した第１〜第５の指部６０１〜６０５についての把持時調整ゲイン用規定値を、対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送信する。
【０２１９】
またメイン制御部４０の演算部４０Ｂは、ロボット１が転倒状態（ロボット１が転倒し始めてから転倒し終えるまでの状態）時に加速度センサ５６により検出される重力が「０」となることを利用して、加速度センサ５６から供給される加速度検出信号Ｓ２Ｂに基づきロボット１の転倒状態を検出したときには、予め外部メモリ５８に格納されている、第１〜第５の指部６０１〜６０５についての転倒時用のコンプライアンス調整ゲインＫａｄｊの規定値（以下、これらを転倒時用調整ゲイン規定値と呼ぶ）を読み出し、これらをインテリジェントＨＵＢ１０５に送出する。これら転倒時用調整ゲイン規定値も、それぞれ対応する通常時用調整ゲイン規定値に比べて値が大きく選定されている。そして演算部４０Ｂは、これらを対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送信する。
【０２２０】
このときインテリジェントＨＵＢ１０５は、メイン制御部４０から送信される位置指令値Ｕ１（Ｎ）〜Ｕ５（Ｎ）に基づいて２〔ms〕ごとのサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）を順次生成する。そしてインテリジェントＨＵＢ１０５は、このサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）とメイン制御部４０から送信されるコンプライアンス調整ゲインＫａｄｊとを第１〜第５の制御装置１０３１〜１０３５に送信する。
【０２２１】
第１〜第５の制御装置１０３１〜１０３５は、送信されるサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）に基づいて対応するＤＣモータ１２１の回転を制御する一方、把持用調整ゲイン規定値又は転倒時用調整ゲイン規定値が送信されてきたときには、それまで自己内部において設定していたコンプライアンス調整ゲインＫａｄｊの設定値をその値に更新し、当該更新した新たなコンプライアンス調整ゲインＫａｄｊに基づいて対応する第１〜第５の指部６０１〜６０５についてのコンプライアンス制御を実行する。
【０２２２】
この結果、外部物体を把持したときには、当該外部物体から受ける反作用力（外力）が常に把持時用調整ゲイン規定値に応じた一定の大きさとなるように第１〜第５の指部６０１〜６０５が動作するため、外部物体が複雑な形状であってもその形状に倣って第１〜第５の指部６０１〜６０５を屈曲させて当該外部物体を一定圧力で柔らかく把持することができる。またロボット１が転倒して第１〜第５の指部６０１〜６０５が床面に衝突したときにも、これら第１〜第５の指部６０１〜６０５が低剛性であるため、床面から当該第１〜第５の指部６０１〜６０５に与えられる衝突力（外力）に従って当該衝突力の方向に第１〜第５の指部６０１〜６０５が屈曲し、当該衝突力によって第１〜第５の指部６０１〜６０５が破損するのを未然かつ有効に防止することができる。
【０２２３】
他方、第１〜第５の制御装置１０３１〜１０３５は、位置検出ブロック１８５（図２６）により検出した対応するＤＣモータ１２１の現在位置（Ｐ１（ｋ）〜Ｐ５（ｋ））と、図３４について上述した方法より算出した外力推定トルクＴｆ＿ｅｓｔとを、対応する第１〜第５の指部６０１〜６０５についての状態量として２〔ms〕の通信周期ごとにインテリジェントＨＵＢ１０５に送信する。
【０２２４】
インテリジェントＨＵＢ１０５は、第１〜第５の制御装置１０３１〜１０３５から送信される状態量を、８〔ms〕の通信周期ごとに対応するサブ制御部４３Ｃを介してメイン制御部４０に送信する一方、これら状態量のうちの第１〜第５の指部６０１〜６０５についての外力推定トルクＴｆ＿ｅｓｔの値を演算部１０５Ａにおいて常時監視する。
【０２２５】
そしてインテリジェントＨＵＢ１０５の演算部１０５Ａは、第１〜第５の指部６０１〜６０５についての外力推定トルクＴｆ＿ｅｓｔの値が予め格納された所定の閾値以上となったときには、予めメモリ１１３（図２２）に格納されている第１〜第５の指部６０１〜６０５についての反射制御用調整ゲイン規定値のうち、対応する第１〜第５の制御装置１０３１〜１０３５についての反射制御用調整ゲイン規定値を読み出し、これをその第１〜第５の制御装置１０３１〜１０３５に送信する。
【０２２６】
かくしてこのとき第１〜第５の制御装置１０３１〜１０３５は、コンプライアンス調整ゲインＫａｄｊの設定値をその反射制御用調整ゲイン規定値に更新し、当該更新したコンプライアンス調整ゲインＫａｄｊに基づいて対応する第１〜第５の指部６０１〜６０５についてのコンプライアンス制御を実行する。
【０２２７】
この場合において、かかる第１〜第５の指部６０１〜６０５についての反射制御用調整ゲイン規定値は、それぞれ対応する通常時用調整ゲイン規定値よりも大きな値に選定されている。従って、このときその第１〜第５の指部６０１〜６０５が通常時よりも外力に対して柔らかくなるため、当該第１〜第５の指部６０１〜６０５がその外力が作用したことに起因して破損するのを有効に防止することができる。
【０２２８】
（５−２）各部の具体的な処理内容
ここでメイン制御部４０は、上述のようなコンプライアンス制御に関する各種処理を、図３６に示す第１のコンプライアンス制御処理手順ＲＴ１に従って実行する。
【０２２９】
すなわちメイン制御部４０は、ロボット１の電源が投入されると、この第１のコンプライアンス制御処理手順ＲＴ１をステップＳＰ０において開始し、続くステップＳＰ１において、予め外部メモリ５８（図５）に格納されている、図３４について上述したコンプライアンス調整ゲインＫａｄｊ、外力推定ゲインＫｅｓｔ、位置比例ゲインＫｐ，ＫＭｐ及び電流比例ゲインＧＭｐなどの各種制御ゲイン、並びに数学モデルにおけるモータ定数ＫＭｍ、指モデルにおける慣性モーメントＪＭｙ及び摩擦係数ＤＭｙなどの各種機械定数と、第１〜第５の制御装置１０３１〜１０３５の構成（親指、人指し指、中指、薬指及び小指）とを読み出し、これを対応するサブ制御部４３Ｃ（図４、図５）を介してインテリジェントＨＵＢ１０５に送出する。
【０２３０】
またメイン制御部４０は、続くステップＳＰ２において、ロボット１の次の行動として外部物体を把持しようとしているときには、ＣＣＤカメラ５０（図５）から与えられる画像信号Ｓ１Ａ（図５）に基づいて、例えばステレオ測距法等によりその外部物体までの距離を検出する。またメイン制御部４０は、続くステップＳＰ３において、加速度センサ５６（図５）から供給される加速度検出信号Ｓ２Ｂ（図５）に基づいてロボット１の姿勢を検出する。
【０２３１】
そしてメイン制御部４０は、この後ステップＳＰ４に進んで、ステップＳＰ２における検出結果に基づき、そのとき把持対象の外部物体が把持可能な距離内にあるか否かを判断し、肯定結果を得ると、ステップＳＰ６に進んで、外部メモリ５８（図５）から第１〜第５の指部６０１〜６０５についての把持時用調整ゲイン規定値をそれぞれ読み出し、これらを対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送出し、その後ステップＳＰ８に進む。なお、ステップＳＰ２及びステップＳＰ４は、外部物体を把持する予定がない場合には省略される。
【０２３２】
これに対してメイン制御部４０は、ステップＳＰ４等が省略されたときや、ステップＳＰ４において否定結果を得たときには、ステップＳＰ５に進んで、ステップＳＰ３における検出結果に基づいて、現在、ロボット１が転倒状態にあるか否かを判断する。
【０２３３】
そしてメイン制御部４０は、このステップＳＰ５において肯定結果を得ると、ステップＳＰ６に進んで、外部メモリ５８（図５）から第１〜第５の指部６０１〜６０５についての転倒時用調整ゲイン規定値をそれぞれ読み出し、これらを対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送出した後にステップＳＰ８に進む。
【０２３４】
これに対してメイン制御部４０は、ステップＳＰ５において否定結果を得ると、ステップＳＰ７に進んで、第１〜第５の指部６０１〜６０５についての通常時用調整ゲイン規定値（例えば「０」）をそれぞれ読み出し、これらを対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送出した後にステップＳＰ８に進む。なお、第１〜第５の制御装置１０３１〜１０３５においてコンプライアンス調整ゲインＫａｄｊとして既に通常時用調整ゲイン規定値が設定されているときには、このステップＳＰ７は省略される。
【０２３５】
そしてメイン制御部４０は、ステップＳＰ８に進むと、そのときロボット１が実行すべき行動内容に応じて第１〜第５の制御装置１０３１〜１０３５に送信すべき位置指令値Ｕ１（ｋ）〜Ｕ５（ｋ）（図２２）を算出し、これを対応するサブ制御部４３Ｃを介してインテリジェントＨＵＢ１０５に送出する。
【０２３６】
さらにメイン制御部４０は、この後ステップＳＰ２に戻って、さらにこの後ステップＳＰ２〜ステップＳＰ８について同様の処理を８〔ms〕周期で繰り返す。
【０２３７】
このようにしてメイン制御部４０は、状況に応じて第１〜第５の制御装置１０３１〜１０３５におけるコンプライアンス調整ゲインＫａｄｊを変更する。
【０２３８】
一方、インテリジェントＨＵＢ１０５のＣＰＵ１１１（図２２）は、図３７に示す第２のコンプライアンス制御処理手順ＲＴ２に従って、上述のようなコンプライアンス制御に関する各種処理を実行する。
【０２３９】
すなわちＣＰＵ１１１は、ロボット１の電源が投入されると、この第２のコンプライアンス制御処理手順ＲＴ２をステップＳＰ１０において開始し、続くステップＳＰ１１において、メイン制御部４０から上述の各種制御ゲイン及び各種機械定数並びにコンプライアンス調整ゲインＫａｄｊの初期値（通常時用調整ゲイン規定値）と、第１〜第５の制御装置１０３１〜１０３５の構成（親指、人指し指、中指、薬指及び小指）とが送信されるのを待ち受ける。そして、ＣＰＵ１１１は、これらを受信すると、このうち各種制御ゲイン、各種機械定数及びコンプライアンス調整ゲインＫａｄｊの初期値を対応する第１〜第５の制御装置１０３１〜１０３５に送信する一方、第１〜第５の制御装置１０３１〜１０３５の構成を構成比調整部１０５Ｂ（図３５）において管理する。
【０２４０】
そしてＣＰＵ１１１は、この後ステップＳＰ１２に進んで、メイン制御部４０から位置指令値Ｕ１（ｋ）〜Ｕ５（ｋ）やコンプライアンス調整ゲインＫａｄｊの変更値（通常時用調整ゲイン規定値、把持時用調整ゲイン規定値又は転倒時用調整ゲイン規定値）が送信されてきた場合には、これを受信してステップＳＰ１３に進む。またＣＰＵ１１１は、これらが送信されてきていない場合にはそのままステップＳＰ１３に進む。
【０２４１】
そしてＣＰＵ１１１は、ステップＳＰ１３に進むと、最後に受信したメイン制御部４０からの位置指令値Ｕ１（ｋ）〜Ｕ５（ｋ）に基づいて第１〜第５の制御装置１０３１〜１０３５に対するサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）を生成し、これらをそれぞれ対応する第１〜第５の制御装置１０３１〜１０３５に送信する一方、ステップＳＰ１２においてコンプライアンス調整ゲインＫａｄｊの変更値を受信したときには、これを対応する第１〜第５の制御装置１０３１〜１０３５に送信する。
【０２４２】
さらにＣＰＵ１１１は、この後ステップＳＰ１４に進んで、第１〜第５の制御装置１０３１〜１０３５からそれぞれ送信される対応するＤＣモータ１２１（図２３）の現在位置（Ｐ１（ｋ）〜Ｐ５（ｋ））及び外力推定トルクＴｆ＿ｅｓｔ（図３４）を受信し、この後ステップＳＰ１５に進んで、これら受信した第１〜第５の指部６０１〜６０５についての外力推定トルクＴｆ＿ｅｓｔのうちのいずれかが、これら第１〜第５の指部６０１〜６０５についてそれぞれ予め設定された対応する閾値よりも大きいか否かを判断する。
【０２４３】
そしてＣＰＵ１１１は、このステップＳＰ１５において否定結果を得るとステップＳＰ１２に戻り、これに対して肯定結果を得ると、ステップＳＰ１６に進んで、その第１〜第５の指部６０１〜６０５について予め定められた反射制御用調整ゲイン規定値をメモリ１１３（図２２）から読み出して、対応する第１〜第５の制御装置１０３１〜１０３５に送信する。
【０２４４】
さらにＣＰＵ１１１は、この後ステップＳＰ１２に戻って、さらにこの後ステップＳＰ１２〜ステップＳＰ１６について同様の処理を２〔ms〕周期で繰り返す。
【０２４５】
このようにしてインテリジェントＨＵＢ１０５のＣＰＵ１１１は、第１〜第５の指部６０１〜６０５にある一定以上の外力が作用したときに、第１〜第５の制御装置１０３１〜１０３５におけるコンプライアンス調整ゲインＫａｄｊを変更する。
【０２４６】
他方、第１〜第５の制御装置１０３１〜１０３５のＣＰＵ２００（図２６）は、図３８に示す第３のコンプライアンス制御処理手順ＲＴ３に従って、上述のようなコンプライアンス制御に関する各種処理を実行する。
【０２４７】
すなわちＣＰＵ２００は、ロボット１の電源が投入されると、この第３のコンプライアンス制御処理手順ＲＴ３をステップＳＰ２０において開始し、続くステップＳＰ２１において、インテリジェントＨＵＢ１０５から各種制御ゲイン及び各種機械的定数並びにコンプライアンス調整ゲインＫａｄｊが送信されるのを待ち受ける。そしてＣＰＵ２００は、これらを受信すると、これらをそれぞれ対応する制御ゲイン若しくは機械的定数又はコンプライアンス調整ゲインＫａｄｊの初期値として設定する。
【０２４８】
そしてＣＰＵ２００は、この後ステップＳＰ２２に進んで、対応する第１〜第５の指部６０１〜６０５に対する外力推定トルクＴｆ＿ｅｓｔを算出し、さらにこの後ステップＳＰ２３に進んで、インテリジェントＨＵＢ１０５から送信されるサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）やコンプライアンス調整ゲインＫａｄｊの変更値を受信する。そしてＣＰＵ２００は、この後このサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）に基づいて対応するＤＣモータ１２１の回転を制御する一方、コンプライアンス調整ゲインＫａｄｊの変更値が送信されてきた場合には、当該コンプライアンス調整ゲインＫａｄｊの設定値をその変更値に変更する。
【０２４９】
続いてＣＰＵ２００は、ステップＳＰ２４に進んで、ステップＳＰ２２において算出した外力推定トルクＴｆ＿ｅｓｔをインテリジェントＨＵＢ１０５に送信する一方、この後ステップＳＰ２２に戻り、さらにこの後ステップＳＰ２２〜ステップＳＰ２４について同様の処理を１〔ms〕周期で繰り返す。
【０２５０】
このようにして第１〜第５の制御装置１０３１〜１０３５のＣＰＵ２００は、インテリジェントＨＵＢ１０５から送信されるサーボ指令値Ｒｅｆ１（ｋ）〜Ｒｅｆ５（ｋ）及びコンプライアンス調整ゲインＫａｄｊに基づいて対応するＤＣモータ１２１の回転を１〔ms〕で制御する。
【０２５１】
（６）本実施の形態の動作及び効果
以上の構成において、ロボット１は、通常時には、第１〜第５の制御装置１０３１〜１０３５にコンプライアンス調整ゲインＫａｄｊとして通常時用調整ゲイン規定値を設定し、この通常時用調整ゲイン規定値に基づいて第１〜第５の指部６０１〜６０５の外力に対する柔らかさを制御する一方、外部物体の把持時やロボット１の転倒時には、第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊを通常時用調整ゲイン規定値よりも値の大きな把持時用調整ゲイン規定値又は転倒時用調整ゲイン規定値に変更し、この把持時用調整ゲイン規定値又は転倒時用調整ゲイン規定値に基づいて第１〜第５の指部６０１〜６０５の外力に対する柔らかさを制御する。
【０２５２】
従って、このロボット１は、通常時には第１〜第５の指部６０１〜６０５に高い剛性をもたせながら、外部物体の把持時やロボット１の転倒時には第１〜第５の指部６０１〜６０５の剛性を低くすることができるため、指部に高い剛性が要求される作業を行うことができる一方で、複雑な外形形状を有する外部物体をその表面に指部を倣わせて柔らかく持つことが可能であり、さらに転倒時における第１〜第５の指部６０１〜６０５の破損も有効に防止できる。
【０２５３】
またこのロボット１では、第１〜第５の指部６０１〜６０５に一定レベル以上の外力が作用したときに、第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊの設定値を、インテリジェントＨＵＢ１０５の制御のもとに、反射制御用調整ゲイン規定値に変更する。
【０２５４】
従って、このロボット１では、第１〜第５の指部６０１〜６０５に予想外の外力が作用した場合に第１〜第５の指部６０１〜６０５の剛性が反射的に低くなるため、当該外力に起因する第１〜第５の指部６０１〜６０５の破損を有効に防止することができる。
【０２５５】
以上の構成によれば、通常時には、第１〜第５の制御装置１０３１〜１０３５にコンプライアンス調整ゲインＫａｄｊとして通常時用調整ゲイン規定値を設定し、この通常時用調整ゲイン規定値に基づいて第１〜第５の指部６０１〜６０５の外力に対する柔らかさを制御する一方、外部物体の把持時やロボット１の転倒時には、第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊを通常時用調整ゲイン規定値よりも値の大きな把持時用調整ゲイン規定値又は転倒時用調整ゲイン規定値に変更し、この把持時用調整ゲイン規定値又は転倒時用調整ゲイン規定値に基づいて第１〜第５の指部６０１〜６０５の外力に対する柔らかさを制御するようにしたことにより、指部に高い剛性が要求される作業を行うことができる一方で、複雑な外形形状を有する外部物体をその表面に指部を倣わせて柔らかく持つことが可能であり、さらに転倒時における第１〜第５の指部６０１〜６０５の破損も有効に防止でき、かくして第１〜第５の指部６０１〜６０５の破損の有効に防止しながら有用性を向上させ得るロボットを実現できる。
【０２５６】
（７）他の実施の形態
なお上述の実施の形態においては、本発明を図１のように構成された２足歩行型のヒューマノイドタイプのロボット１に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成のロボット装置に広く適用することができる。
【０２５７】
また上述の実施の形態においては、ロボット１が外部物体を把持する際と、ロボット１が転倒状態にあるときにのみ、第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊを変更するようにした場合について述べたが、本発明はこれに限らず、これ以外のタイミングで第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊを変更するようにしても良く、要は、必要な状況時にかかるコンプライアンス調整ゲインＫａｄｊを変更するようにすれば良い。
【０２５８】
この場合において上述の実施の形態においては、ロボット１が外部物体を把持する際には把持対象の外部物体の種類等にかかわりなく、常に第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊを一定の把持時用調整ゲイン規定値に変更するようにした場合について述べたが、本発明はこれに限らず、例えば把持時用調整ゲイン規定値を複数用意しておき、外部物体を把持する際には画像認識処理によりその外部物体を識別し、当該外部物体が卵のような壊れ易いものであるときにはコンプライアンス調整ゲインＫａｄｊとして最も小さい把持時用調整ゲイン規定値を設定する一方で、当該外部物体が固く重みのあるものであるときにはコンプライアンス調整ゲインＫａｄｊとして最も大きい把持時用調整ゲイン規定値を設定するというように、把持対象に応じて把持時用調整ゲイン規定値として異なるものを用いるようにしても良い。
【０２５９】
さらに上述の実施の形態においては、第１〜第５の制御装置１０３１〜１０３５のＣＰＵ２００によって算出された外力推定トルクＴｆ＿ｅｓｔを監視し、当該外力推定トルクＴｆ＿ｅｓｔの値が予め設定された閾値よりも大きいときは、対応する第１〜第５の指部６０１〜６０５の剛性を低くするように、第１〜第５の制御装置１０３１〜１０３５に設定されたコンプライアンス調整ゲインＫａｄｊの設定値を反射制御用調整ゲイン規定値に変更する外力監視手段としての機能をインテリジェントＨＵＢ１０５にもたせるようにした場合について述べたが、本発明はこれに限らず、かかる機能を第１〜第５の制御装置１０３１〜１０３５側（例えばＣＰＵ２００）にもたせるようにしても良い。
【産業上の利用可能性】
【０２６０】
本発明は、ヒューマノイドタイプのロボットのほか、種々の形態のロボット装置に広く適用することができる。
【図面の簡単な説明】
【０２６１】
【図１】本実施の形態によるロボットの外観構成を示す斜視図である。
【図２】本実施の形態によるロボットの外観構成を示す斜視図である。
【図３】本実施の形態によるロボットの外観構成の説明に供する斜視図である。
【図４】ロボットの内部構造の説明に供するブロック図である。
【図５】ロボットの内部構成の説明に供するブロック図である。
【図６】ロボットの手部の外観構成を示す略線的な正面図及び側面図である。
【図７】手部の構成の説明に供する略線的な正面図及び側面図である。
【図８】手部の構成の説明に供する略線的な正面図及び側面図である。
【図９】手部の構成の説明に供する略線的な正面図及び側面図である。
【図１０】手部の構成の説明に供する略線的な正面図及び側面図である。
【図１１】手部の構成の説明に供する略線的な正面図及び側面図である。
【図１２】手本体部の説明に供する略線的な正面図、Ａ１−Ａ１´断面図、Ａ２−Ａ２´断面図である。
【図１３】第１の指部の構成を示す略線的な側面図、背面図及び断面図である。
【図１４】第２〜第５の指部の構成を示す略線的な側面図、背面図及び断面図である。
【図１５】指先の構造の説明に供する断面図である。
【図１６】指先の形状の説明に供する略線的な側面図及び正面図である。
【図１７】紙を掴む動作の説明に供する略線的な側面図である。
【図１８】指紋部の説明に供する略線的な側面図である。
【図１９】把持及び摘みの動作の説明に供する略線的な側面図である。
【図２０】２次元バーコードを示す略線図である。
【図２１】手部の駆動制御系のシステム構成の説明に供する略線的な正面図及び側面図である。
【図２２】インテリジェントＨＵＢ並びに第１〜第７の制御装置の接続関係の説明に供するブロック図である。
【図２３】第１〜第５のアクチュエータ部の構成を略線的に示す正面図及び側面図である。
【図２４】第６のアクチュエータ部の構成を略線的に示す正面図及び側面図である。
【図２５】第１〜第７の制御装置の構成を示すブロック図である。
【図２６】モータ制御用ＬＳＩの構成を示すブロック図である。
【図２７】モータ駆動回路の構成を示す回路図である。
【図２８】樹脂マグネットの着磁パターンの説明に供する概念図である。
【図２９】樹脂マグネットと第１及び第２のホール素子との位置関係を示す略線図である。
【図３０】第１及び第２の位置検出信号の説明に供する波形図である。
【図３１】位置検出ブロックの構成を示すブロック図である。
【図３２】ＰＭＷ変換ブロックの説明に供する概念図である。
【図３３】演算処理ブロックにおけるソフトウェア制御の説明に供する概念図である。
【図３４】演算処理ブロックにおけるＤＣモータの回転制御の説明に供するブロック図である。
【図３５】ロボットのコンプライアンス制御に関する一連の流れの説明に供するブロック図である。
【図３６】第１のコンプライアンス制御処理手順を示すフローチャートである。
【図３７】第２のコンプライアンス制御処理手順を示すフローチャートである。
【図３８】第３のコンプライアンス制御処理手順を示すフローチャートである。
【符号の説明】
【０２６２】
１……ロボット、４０……メイン制御部、６０１〜６０５……指部、１０３１〜１０３５、１０４１、１０４２……制御装置、１０５……インテリジェントＨＵＢ、１１１、２００……ＣＰＵ、１２１、１４１、１４２……ＤＣモータ、１３０、１６１、１６７……位置検出センサ、１７０……モータ制御用ＬＳＩ、１８０……演算処理ブロック、１８５……位置検出ブロック、Ｓ１Ａ、Ｓ１Ｂ……位置検出信号、Ｕ１（Ｎ）〜Ｕ７（Ｎ）……位置指令値、Ｒｅｆ１（ｋ）〜Ｒｅｆ７（ｋ）、Ｒｅｆ１（ｋ）´〜Ｒｅｆ７（ｋ）´……サーボ指令値、Ｐ１（ｋ）〜Ｐ７（ｋ）……現在位置データ。
【図１】
2006000966.tif 000014
【図２】
2006000966.tif 000015
【図３】
2006000966.tif 000016
【図４】
2006000966.tif 000017
【図５】
2006000966.tif 000018
【図６】
2006000966.tif 000019
【図７】
2006000966.tif 000020
【図８】
2006000966.tif 000021
【図９】
2006000966.tif 000022
【図１０】
2006000966.tif 000023
【図１１】
2006000966.tif 000024
【図１２】
2006000966.tif 000025
【図１３】
2006000966.tif 000026
【図１４】
2006000966.tif 000027
【図１５】
2006000966.tif 000028
【図１６】
2006000966.tif 000029
【図１７】
2006000966.tif 000030
【図１８】
2006000966.tif 000031
【図１９】
2006000966.tif 000032
【図２０】
2006000966.tif 000033
【図２１】
2006000966.tif 000034
【図２２】
2006000966.tif 000035
【図２３】
2006000966.tif 000036
【図２４】
2006000966.tif 000037
【図２５】
2006000966.tif 000038
【図２６】
2006000966.tif 000039
【図２７】
2006000966.tif 000040
【図２８】
2006000966.tif 000041
【図２９】
2006000966.tif 000042
【図３０】
2006000966.tif 000043
【図３１】
2006000966.tif 000044
【図３２】
2006000966.tif 000045
【図３３】
2006000966.tif 000046
【図３４】
2006000966.tif 000047
【図３５】
2006000966.tif 000048
【図３６】
2006000966.tif 000049
【図３７】
2006000966.tif 000050
【図３８】
2006000966.tif 000051