(57)【要約】【課題】多関節ロボットの関節角を計測するエンコーダの検出値を正しく校正する技術を提供する。【解決手段】多関節ロボットは、第１リンクと第２リンクを接続する第１関節と、その第１アクチュエータと、その回転角変化量を検出する第１エンコーダと、第１関節の回転限界を規制する当接対と、第２リンクと第３リンクを接続する第２関節と、その第２アクチュエータと、その回転角変化量を検出する第２エンコーダと、第２関節の回転限界を規制する当接対と、両アクチュエータを制御し、第１アクチュエータが第１所定トルクを出力しており、同時に第２アクチュエータが第２所定トルクを出力している状態を実現する基準姿勢実現手段と、基準姿勢における第１エンコーダの検出値を第１基準角に校正する手段と、基準姿勢における第２エンコーダの検出値を第２基準角に校正する手段を備える。【選択図】図４
2006150556.tif 000002
【特許請求の範囲】
【請求項１】
第１リンクと、
第１リンクに対して第１関節によって回転可能に接続されている第２リンクと、
第１関節を回転させる第１アクチュエータと、
第１アクチュエータの回転角変化量を検出する第１エンコーダと、
当接することによって第１関節の回転限界を規制する第１当接対と、
第２リンクに対して第２関節によって回転可能に接続されている第３リンクと、
第２関節を回転させる第２アクチュエータと、
第２アクチュエータの回転角変化量を検出する第２エンコーダと、
当接することによって第２関節の回転限界を規制する第２当接対と、
第１アクチュエータと第２アクチュエータの両者を制御し、第１アクチュエータが第１所定トルクを出力しており、同時に、第２アクチュエータが第２所定トルクを出力している状態を実現する基準姿勢実現手段と、
基準姿勢における第１エンコーダの検出値を第１基準角に校正する第１校正手段と、
基準姿勢における第２エンコーダの検出値を第２基準角に校正する第２校正手段と、
を備えていることを特徴とする多関節ロボット。
【請求項２】
基準姿勢実現手段は、所定時間に亘って基準姿勢を維持し、
第１校正手段は、前記所定時間後に校正し、
第２校正手段は、前記所定時間後に校正することを特徴とする請求項１の多関節ロボット。
【請求項３】
基準姿勢実現手段が動作する前に動作する仮姿勢実現手段が付加されており、
仮姿勢実現手段は、第１アクチュエータが出力しているトルクを監視しながら第１アクチュエータを動作させて第１アクチュエータが出力しているトルクが増大した時に第１アクチュエータを停止させるとともに、第２アクチュエータが出力しているトルクを監視しながら第２アクチュエータを作動させて第２アクチュエータが出力しているトルクが増大した時に第２アクチュエータを停止させることを特徴とする請求項１又は２の多関節ロボット。
【請求項４】
基準姿勢実現手段が動作する前に動作する仮姿勢実現手段が付加されており、
仮姿勢実現手段は、第１アクチュエータが出力しているトルクを監視しながら第１アクチュエータを作動させて第１アクチュエータが出力しているトルクが増大した時に第１アクチュエータを微小角反転させてから停止させるとともに、第２アクチュエータが出力しているトルクを監視しながら第２アクチュエータを作動させて第２アクチュエータが出力しているトルクが増大した時に第２アクチュエータを微小角反転させてから停止させることを特徴とする請求項１又は２の多関節ロボット。
【請求項５】
仮姿勢実現手段は、第１アクチュエータと第２アクチュエータの少なくとも一方を高速で回転させ、
基準姿勢実現手段は、第１アクチュエータと第２アクチュエータの少なくとも一方を低速で回転させることを特徴とする請求項３又は４の多関節ロボット。
【請求項６】
仮姿勢実現手段は、回転角を基準にして第１アクチュエータと第２アクチュエータを制御し、
基準姿勢実現手段は、トルクを基準にして第１アクチュエータと第２アクチュエータを制御することを特徴とする請求項３から５のいずれかの多関節ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のリンクが複数の関節によって回転可能に連結されている多関節ロボットに関する。特に、各関節の関節角を計測することによって多関節ロボットの姿勢を計測する技術に関する。
【背景技術】
【０００２】
多関節ロボットは、複数のリンクと複数の関節を備えている。多関節ロボットは、各関節の関節角（一方のリンクに対する他方のリンクの回転角）を調節することによって姿勢を変え、歩いたり、物を持ったり、物を操作したりする。
多関節ロボットは、各関節の関節角を検出し、検出した関節角を指示された関節角と比較しながら関節角を調節している。ロボットが指示された姿勢をとって正確に動作するためには、関節角を正確に検出することが必要とされる。
関節角を検出するために、エンコーダが利用される。エンコーダのなかには２種類が存在し、角度の絶対値を検出するアブソリュートエンコーダと、回転角変化量を検出する通常のエンコーダが存在する。通常のエンコーダは、１°回転したとか２°回転したとかいった回転角変化量を検出することができるが、直接的には角度の絶対値を検出することができない。通常のエンコーダで角度の絶対値を計測するためには、回転角変化量を検出するのに先立って、角度の絶対値を測定しておく必要がある。しかも、計測には誤差が避けられないことから、適宜なタイミングで角度の絶対値を測定して校正する必要がある。アブソリュートエンコーダは、高価で大型なことから、多関節ロボットの関節角は通常のエンコーダで検出されることが多い。そこで、関節角を計測するエンコーダの校正技術が必要とされている。
【０００３】
特許文献１には、可動体を機械的ストッパに当接させ、その時にエンコーダを校正する技術が記載されている。特許文献１の技術では、可動体を回転させるアクチュエータが出力しているトルクを監視しながらアクチュエータを動作させる。可動体が機械的ストッパに当接すると、アクチュエータが出力しているトルクが増大する。アクチュエータが出力しているトルクを監視することによって、可動体が機械的ストッパに当接した状態を検出することができる。可動体が機械的ストッパに当接した状態では、可動体と機械的ストッパの位置関係が予め判明している位置関係に調整されており、エンコーダで検出されるはずの角度が判明している。特許文献１の技術では、アクチュエータが出力しているトルクを監視することによって可動体が機械的ストッパに当接している状態を検出し、その時にエンコーダの検出値を校正する。
【特許文献１】特開平９−１３８７０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
多関節ロボットは複数の関節を備えている。通常は、各関節に、当接することによって関節の回転限界を規制する当接対（いわゆるストッパ）が設けられている。当接対が所定のトルクで当接しているときの関節角は、予め判明している関節角であり、その時に校正すれば、エンコーダの検出値を正確に校正できるはずである。
しかしながら、当接対が当接しているトルクは、その関節を回転させるアクチュエータが出力しているトルクだけでは決まらず、他のリンクの姿勢が影響する。また、当接対には機械的なたわみが影響することから、当接対が当接しているというだけでは予め判明している関節角に調整されていることが保証されない。機械的なたわみを考慮すると、当接対が当接しているトルクを所定の値に調整しておいてから校正しなければならない。
例えば、腰リンクに股関節によって大腿リンクが接続されており、大腿リンクに膝関節によって下腿リンクが接続されており、股関節の関節角を検出するエンコーダを校正する場合を想定する。従来の技術では、股関節を回転させるアクチュエータによって大腿リンクを例えば前方に振り上げ、アクチュエータトルクが増大したときに、大腿リンクが最大に振り上げられたとして、股関節のエンコーダを校正する。しかしながら、従来の技術では、股関節のストッパが所定のトルクで当接しあっている状態で校正することにならない。大腿リンクを回転させるアクチュエータのトルクが同一であっても、膝関節が伸びている状態と膝関節が曲がっている状態では、股関節の回転限界を規制する当接対が当接するトルクは異なってくる。膝関節が伸びているときは下腿リンクを下げようとする重力モーメントが大きいのに対し、膝関節が曲がっているときは下腿リンクを下げようとする重力モーメントが小さい。当接対の当接力には重力モーメントが影響するので、大腿リンクを回転させるアクチュエータの出力トルクが一定であっても、当接対の当接力は膝関節の関節角によって変動する。関節の回転限界を規制する当接対の当接力が変動すれば、一定の関節角に調整されていることが保障されず、エンコーダの検出値を校正することができない。
本発明は、上記の課題を解決する。本発明では、多関節ロボットの関節角を計測するエンコーダの検出値を正しく校正する技術を提供する。
【課題を解決するための手段】
【０００５】
本発明によって具現化される多関節ロボットは、第１リンクと、第１リンクに対して第１関節によって回転可能に接続されている第２リンクと、第１関節を回転させる第１アクチュエータと、第１アクチュエータの回転角変化量を検出する第１エンコーダと、当接することによって第１関節の回転限界を規制する第１当接対と、第２リンクに対して第２関節によって回転可能に接続されている第３リンクと、第２関節を回転させる第２アクチュエータと、第２アクチュエータの回転角変化量を検出する第２エンコーダと、当接することによって第２関節の回転限界を規制する第２当接対と、第１アクチュエータと第２アクチュエータの両者を制御し、第１アクチュエータが第１所定トルクを出力しており、同時に第２アクチュエータが第２所定トルクを出力している状態を実現する基準姿勢実現手段と、基準姿勢における第１エンコーダの検出値を第１基準角に校正する第１校正手段と、基準姿勢における第２エンコーダの検出値を第２基準角に校正する第２校正手段を備えていることを特徴とする。
【０００６】
第１アクチュエータを動作させて第１当接対を当接させた場合、第１関節の関節角は第１当接対が当接しているトルクによって決まる。その第１当接対が当接しているトルクは、第１アクチュエータが出力しているトルクと第２関節の関節角によって決まる。一方、第２アクチュエータを動作させて第２当接対を当接させた場合、第２関節の関節角は第２当接対が当接しているトルクによって決まる。その第２当接対が当接しているトルクは、第２アクチュエータが出力しているトルクと、第１関節の関節角によって決まる。以上の関係から、第１アクチュエータと第２アクチュエータのそれぞれが出力しているトルクから、第１当接対が当接しているトルクと第２当接対が当接しているトルクがそれぞれ決まる。
このロボットでは、第１アクチュエータが第１所定トルクを出力しており、同時に第２アクチュエータが第２所定トルクを出力している基準姿勢が実現される。この基準姿勢では、第１当接対が所定のトルクで当接しているとともに、第２当接対がまた別の所定のトルクで当接している状態が実現される。基準姿勢を実現しているロボットでは、第１関節の関節角が予め判明している第１基準角に調整されているとともに、第２関節の関節角が予め判明している第２基準角に調整されている。このときの各エンコーダの検出値を各基準角に校正することによって、各エンコーダの検出値を正しく校正することができる。
この多関節ロボットによると、各関節の関節角を正確に計測することができ、指示された姿勢をとりながら正しい動作を実施することができる。
【０００７】
基準姿勢実現手段は所定時間に亘って基準姿勢を維持することが好ましい。この場合、第１校正手段はその所定時間後に校正することが好ましく、第２校正手段もその所定時間後に校正することが好ましい。
基準姿勢を所定時間に亘って維持することによって、各当接対のあたりをなじませることができ、各関節の関節角が基準角により正しく調整されるようになる。その後に各校正手段が校正を実施することによって、各エンコーダによる検出値をより正しく校正することができる。
【０００８】
上記のロボットでは、基準姿勢実現手段が動作する前に動作する仮姿勢実現手段が付加されていることが好ましい。仮姿勢実現手段は、第１アクチュエータが出力しているトルクを監視しながら第１アクチュエータを動作させて第１アクチュエータが出力しているトルクが増大した時に第１アクチュエータを停止させるとともに、第２アクチュエータが出力しているトルクを監視しながら第２アクチュエータを作動させて第２アクチュエータが出力しているトルクが増大した時に第２アクチュエータを停止させることが好ましい。
仮姿勢基準手段が動作することによって、第１当接対が当接しているとともに第２当接対が当接している仮姿勢が実現される。先に仮姿勢を実現しておくことによって、基準姿勢実現手段が動作したときに、第１アクチュエータの出力トルクが第１所定トルクに到達するタイミングと第２アクチュエータの出力トルクが第２所定トルクに到達するタイミングを比較的に一致させることができる。先に所定トルクに到達したアクチュエータが、長時間に亘って所定トルクを出力し続けるようなことを避けることができる。アクチュエータに過剰な負担をかけてしまうことがない。
【０００９】
あるいは仮姿勢実現手段は、第１アクチュエータが出力しているトルクを監視しながら第１アクチュエータを作動させて第１アクチュエータが出力しているトルクが増大した時に第１アクチュエータを微小角反転させてから停止させるとともに、第２アクチュエータが出力しているトルクを監視しながら第２アクチュエータを作動させて第２アクチュエータが出力しているトルクが増大した時に第２アクチュエータを微小角反転させてから停止させることが好ましい。
この場合でも、仮姿勢基準手段が動作することによって、第１当接対が当接しているとともに第２当接対が当接している仮姿勢が実現される。このとき、アクチュエータを微小角反転させておくと、仮姿勢を維持するために必要なトルクを低減することができる。仮姿勢を維持する際に、アクチュエータに過剰な負担をかけてしまうことがない。このときの微小角には、例えば所定の角度を定めてもよいし、アクチュエータが出力しているトルクを所定値だけ低下させる角度を定めてもよい。
【００１０】
仮姿勢実現手段は、第１アクチュエータと第２アクチュエータの少なくとも一方を高速で回転させ、基準姿勢実現手段は、第１アクチュエータと第２アクチュエータの少なくとも一方を低速で回転させることが好ましい。
仮姿勢を実現する際にはアクチュエータの動作速度を高め、基準姿勢を実現する際にはアクチュエータの動作速度を低めることによって、短い所要時間で正しい基準姿勢を実現することができる。
【００１１】
仮姿勢実現手段は回転角を基準にして第１アクチュエータと第２アクチュエータを制御することが好ましく、基準姿勢実現手段はトルクを基準にして第１アクチュエータと第２アクチュエータを制御することが好ましい。
仮姿勢を実現する際には、回転角に対してトルクの変化が少ないことから、回転角を基準にすることで、各アクチュエータを正しく制御することができる。基準姿勢を実現する際には、回転角に対してトルクの変化が大きいことから、トルクを基準にすることで、アクチュエータを正しく制御することができる。
【発明の効果】
【００１２】
本発明により、多関節ロボットの関節角を計測するエンコーダの検出値を正しく校正することが可能となり、多関節ロボットに教示した姿勢をとらせながら正しい動作を実施させることが可能となる。
【発明を実施するための最良の形態】
【００１３】
最初に、以下に説明する実施例の主要な形態を列記する。
（形態１）  ロボットは、ヒューマノイドロボットである。
（形態２）  モータには、回転角変化量を検出するエンコーダが取り付けられている。
（形態３）  制御回路は、エンコーダの出力信号から関節の関節角の変化量を計算し、計算した関節角の変化量を積算している。
（形態４）  制御回路は、駆動回路を介してモータを制御する。
（形態５）  制御回路は、位置を基準にしてモータを制御することもできるし、トルクを基準にしてモータを制御することもできる。
（形態６）  モータの駆動回路は、モータの出力トルクを所定の制限トルク以下に制限するトルク制限機能を備えている。
【実施例】
【００１４】
（実施例１）
本発明を実施した実施例について図面を参照しながら説明する。図１は、本実施例のロボット２の外観を示す模式図である。ロボット２は、主に、頭部４と胴部６ａと腰部６ｂと右腕部８と左腕部１０と左脚部１２と右脚部１４を備えている。胴部６ａと腰部６ｂは回転可能に接続されている。頭部４と右腕部８と左腕部１０は、胴部６ａに揺動可能に接続されている。左脚部１２と右脚部１４は、腰部６ｂに揺動可能に接続されている。図１に示すように、ロボット２は人を模して作られているヒューマノイドロボットである。
【００１５】
図１、図２を参照しながら、ロボット２の基本的な構成について、左脚部１２を例に挙げて説明する。左脚部１２は、腰部（リンク）６ｂに股関節３１を介して回転可能に連結されている大腿リンク２１と、大腿リンク２１に膝関節３２を介して回転可能に連結されている下腿リンク２２と、下腿リンク２２に足首関節３３を介して回転可能に連結されている足平リンク２３とを備えている。ロボット２は、複数のリンクが複数の関節によって回転可能に連結されている多関節ロボットである。
図１、図２では、股関節３１が１自由度の関節として図示されているが、実際には３自由度（ピッチ軸、ロール軸、ヨー軸）の関節である。また、足首関節３３が１自由度の関節として図示されているが、実際には２自由度（ロール軸、ピッチ軸）の関節である。ここでは説明の明瞭化を目的として、股関節３１や足首関節３３が１自由度の関節として取り扱うこととする。
【００１６】
図２に示すように、ロボット２は、腰部リンク６ｂに対して大腿リンク２１を回転させる第１モータ６１と、大腿リンク２１に対して下腿リンク２２を回転させる第２モータ６２と、下腿リンク２２に対して足平リンク２３を回転させる第３モータ６３を備えている。即ち、第１モータ６１は股関節３１を回転させるアクチュエータである。第２モータ６２は膝関節３２を回転させるアクチュエータである。第３モータ６３は足首関節３３を回転させるアクチュエータである。各モータ６１〜６３は、各関節３１〜３３の近傍に設置されている。なお、各モータ６１〜６３は、図示しない減速器を介して各関節３１〜３３に接続されている。
第１モータ６１には、第１モータ６１の回転角変化量を検出する第１エンコーダ７１が設けられている。第２モータ６２には、第２モータ６２の回転角変化量を検出する第２エンコーダ７２が設けられている。第３モータ６３には、第３モータ６３の回転角変化量を検出する第３エンコーダ７３が設けられている。エンコーダ７１〜７３は、いわゆるインクリメンタルエンコーダである。エンコーダ７１〜７３は、後述する処理部４０の制御回路４２に接続されている。
【００１７】
図３は、左脚部１２の股関節３１の構成を示している。図３に示すように、股関節３１では、大腿リンク２１側に爪部２６が形成されており、腰部リンク６ｂ側に当接部２８ａ、２８ｂが形成されている。図３から明らかなように、当接部２８ａ、２８ｂは、大腿リンク２１の爪部２６の回転経路上に位置している。あるいは、爪部２６が、腰部リンク６ｂの当接部２８ａ、２８ｂの回転経路上に位置しているとも言える。股関節３１では、この爪部２６と当接部２８ａ、２８ｂによって、股関節３１の回転限界を規制する機械的なストッパ（当接対）が構成されている。腰部リンク６ｂに対して大腿リンク２１がＲ１方向に回転していくと、関節角が略角度θ１となったときに爪部２６が当接部２８ａに当接する。それにより、腰部リンク６ｂに対して大腿リンク２１がさらにＲ１方向に回転することが機械的に阻止される。また腰部リンク６ｂに対して大腿リンク２１がＲ２方向に回転していくと、関節角が略角度θ２となったときに爪部２６が当接部２８ｂに当接する。それにより、腰部リンク６ｂに対して大腿リンク２１がさらにＲ２方向に回転することが機械的に阻止される。機械的ストッパ２６、２８ａ、２８ｂによって、股関節３１の関節角が角度θ１〜角度θ２の範囲に規制されている。
【００１８】
例えば爪部２６が当接部２８ｂに当接すると、爪部２６や当接部２８ｂには機械的なたわみが生じる。そのことから、股関節３１において爪部２６が当接部２８ｂに当接しているときの正確な関節角は、爪部２６が当接部２８ｂに当接しているトルク（押付力）によって変化する。逆に言えば、爪部２６を当接部２８ｂに所定のトルクで当接させることによって、股関節３１の関節角が角度θ２となる状態を実現することができる。
図３には、股関節３１の関節角を変化させる第１モータ６１と、第１モータ６１に設けられているエンコーダ７１が図示されている。
膝関節３２や足首関節３３も、図３に示す構成と略同様の構成が採用されている。図示省略するが、膝関節３２や足首関節３３にも、同様に爪部２６と当接部２８ａ、２８ｂからなる機械的ストッパ（当接対）が設けられている。膝関節３２では、機械的ストッパによって、関節角が角度θ３〜角度θ４に規制されている。足首関節３３では、機械的ストッパによって、関節角が角度θ５〜角度θ６に規制される。
【００１９】
ロボット２は、各モータ６１〜６３の動作を調節する処理部４０を備えている。処理部４０は、ロボット２の胴部６ａに内蔵されている。処理部４０は、第１モータ６１を駆動する第１駆動回路５１と、第２モータ６２を駆動する第２駆動回路５２と、第３モータ６３を駆動する第３駆動回路５３を備えている。また処理部４０は、駆動回路５１〜５３に制御指令を出力する制御回路４２を備えている。
制御回路４２は、各エンコーダ７１〜７３の出力信号に基づいて、各関節３１〜３３の関節角を検出する。その詳細については後述する。制御回路４２は、検出した各関節３１〜３３の関節角と各関節３１〜３３の目標関節角とを比較しながら、各駆動回路５１〜５３に制御指令を与える。各駆動回路５１〜５３は、制御指令に基づいて各モータ６１〜６３の動作を調節する。
なお駆動回路５１〜５３は、モータ６１〜６３の出力トルクを制限トルク以下に制限するトルク制限機能を備えている。駆動回路５１〜５３は、制御回路４２から制限トルクを超えるような指令を受けた場合でも、モータ６１〜６３の出力トルクを制限トルク以下に制限する。制限トルクは、各関節３１〜３３に適当な値を設定することができる。
【００２０】
次に、制御回路４２が各関節３１〜３３の関節角を検出する処理について説明する。各関節３１〜３３における処理は基本的に同じであることから、ここでは股関節３１を例に挙げて説明する。制御回路４２は、第１エンコーダ７１の出力信号から、第１モータ６１の回転角変化量を検出する。制御回路４２には、第１モータ６１の回転角変化量と股関節３１の関節角変化量の関係が予め教示されている。その関係に基づいて、制御回路４２は、検出した第１モータ６１の回転角変化量から、股関節３１の関節角変化量を計算する。制御回路４２は、計算した股関節３１の関節角変化量を積算することによって、股関節３１の関節角を計測している。第１エンコーダ７１の出力信号から、直接的に股関節３１の関節角を計測することはできない。
【００２１】
ロボット２では、各関節の関節角の計測値を、各関節の実際の関節角に整合させるために、以下に説明する原点校正処理を実施する。原点校正処理は、主に制御回路４２の指令に基づいて行われる。図４は、原点校正処理の流れを示すフローチャートである。ロボット２は、例えば電源投入時等に原点校正処理を実施する。原点校正処理の実施する際には、ロボット２を図示しない支持スタンド等で支持しておくとよい。例えば、胴部６ａに複数ワイヤを接続し、そのワイヤ群の他端を支持スタンドに固定して、ロボット２を宙吊りの状態としておくとよい。
ステップＳ２では、制御回路４２が各駆動回路５１〜５３に指令して、各関節３１〜３３の関節角を所定方向に変化させる。例えば股関節３１では、図３に示すＲ２方向に変化させる。即ち、股関節３１の関節角が角度θ２に近づく方向に変化させる。このとき爪部２６は、当接部２８ｂに接近していく。同様に、膝関節３２では、例えば関節角が角度θ４に近づく方向に変化させる。この場合、膝関節３１の爪部２６は、膝関節３１の当接部２８ｂに接近していくとする。足首関節３３では、例えば関節角が角度θ６に近づく方向に変化させる。この場合、足首関節３３の爪部２６は、足首関節３３の当接部２８ｂに接近していくとする。各関節３１〜３３の関節角を変化させる速度は、各関節３１〜３３において爪部２６が当接部２８ｂに当接したときに、それらを損傷しない程度にまで速めることができる。爪部２６が当接部２８ｂに当接するまでの間、関節角の変化に対して各モータ６１〜６３の出力トルクの変化は少ないことから、各モータの回転速度を一定にするなど、各モータ６１〜６３の制御は回転角を基準にして行うとよい。
【００２２】
ステップＳ４ａでは、第１モータ６１が出力しているトルクが、所定の閾値に到達したのか否かを判定する。第１モータ６１の出力トルクは、例えば第１モータ６１の電流値に基づいて検出することができる。
図５を参照して、第１モータ６１の出力トルクＴの経時変化について説明する。図５に示すように、爪部２６が当接部２８ｂに当接するまで（時刻ｔ１以前）は、出力トルクＴは比較的に低い。爪部２６が当接部２８ｂに当接し始める（時刻ｔ１）と、出力トルクＴが増大し始める。出力トルクＴが徐々に増大するのは、爪部２６や当接部２８ｂ等が機械的にたわむことに起因している。出力トルクＴが所定の閾値Ｔｘとなった時点（時刻ｔ２）で、爪部２６が当接部２８ｂに当接していると判断することができる。このステップでは、股関節３１の爪部２６が当接部２８ｂに当接したことが確認される。なお、第１モータ６１ａが出力しているトルクを閾値と比較することにかえて、第１モータ６１ａが出力しているトルクが所定幅だけ増大したことを検出するようにしてもよい。あるいは、第１モータ６１ａが出力しているトルクが、所定の増大率以上で増大したことを検出するようにしてもよい。いずれにしても、股関節３１の爪部２６が当接部２８ｂに当接したことを確認することができる。
このステップの処理には、第１駆動回路５１のトルク制限機能を利用することができる。トルク制限機能の制限トルクに閾値Ｔｘを設定しておくと、第１モータ６１の出力トルクＴが過剰に増大することを防止することができる。また、トルク制限機能が作動したことを検出することによって、第１モータ６１の出力トルクＴが閾値Ｔｘを超えたことを知ることができる。
爪部２６が当接部２８ｂに当接している場合、股関節３１の関節角は爪部２６と当接部２８ｂが当接しているトルク（押付力）によって変化する。そして爪部２６と当接部２８ｂが当接しているトルクは、第１モータ６１の出力トルクＴのみによって決まらず、膝関節３２や足首関節３３の関節角にも依存して変化する。例えば膝関節３２が伸びている状態と曲がっている状態では、下腿リンク２２や足平リンク２３等に作用する重力が、大腿リンク２１を股関節３１の回りに回転させようとするモーメントが変化するからである。従って、第１モータ６１の出力トルクＴが閾値Ｔｘとなっていても、爪部２６と当接部２８ｂが当接しているトルクは一定とはならず、股関節３１の関節角は角度θ２に対して誤差を持つ。ロボット２では、この段階においてその誤差を許容することができる。
【００２３】
ステップＳ６ａでは、制御回路４２が駆動回路５１に指令して、股関節３１の関節角をステップＳ２とは反対方向に微小角Δθだけ変化させる。即ち、爪部２６が当接部２８ｂから離反する方向に変化させる。ただし、微小角Δθは非常に小さいので、爪部２６が当接部２８ｂと接触し続けることもある。図５に示すように、関節角を微小角Δθだけ変化させることによって、第１モータ６１の出力トルクは減少する（時刻ｔ３）。
ステップＳ８ａでは、股関節３１の関節角を、ステップＳ６ａで微小角Δθだけ戻した角度に保持する。即ち、股関節３１の関節角は、ほぼ角度θ２−Δθに保持される。ステップＳ６ａの処理によって第１モータ６１の出力トルクＴが低減されているので、股関節３１の関節角を保持する際に第１モータ６１にかかる負担は少ない。以上の処理によって、股関節３１の関節角がほぼ仮の基準角度θ２−Δθに調整される。
【００２４】
上記のステップＳ４ａ〜Ｓ８ａと並行して、ステップＳ４ｂ〜Ｓ８ｂの処理と、ステップＳ４ｃ〜Ｓ８ｃの処理が実施されている。ステップＳ４ｂ〜Ｓ８ｂでは、ステップＳ４ａ〜Ｓ８ａと同様の処理が、膝関節３２に対して行われる。ステップＳ８ｂの処理が完了した時点で、膝関節３２の関節角はほぼ角度θ４−Δθ（仮の基準角度）に調整されている。一方、ステップＳ４ｃ〜Ｓ８ｃでは、ステップＳ４ａ〜Ｓ８ａと同様の処理が、足首関節３３に対して行われる。ステップＳ８ｃの処理が完了した時点で、足首関節３３の関節角はほぼ角度θ６−Δθ（仮の基準角度）に調整されている。このときのロボット２の姿勢を仮姿勢ということがある。なおステップＳ４ａ、Ｓ４ｂ、Ｓ４ｃでは、各モータ６１〜６３でそれぞれ異なる閾値が用いられる。
図５に示すように、第１モータ６１の出力トルクＴは、股関節３１の関節角を保持している間（時刻ｔ３〜ｔ４）にも変化する。これは、この間に他の関節３２、３３の関節角が変化していることに起因している。
ステップＳ１０では、すべての関節３１〜３３で関節角が保持状態であるのか否かが確認される。即ち、すべての関節３１〜３３の関節角が仮の基準角度に調整されており、ロボット２が仮姿勢を実現しているのか否かが判定される。このステップでイエスとなると、次のステップＳ１２に進む。
【００２５】
ステップ１２では、制御回路４２が各駆動回路５１〜５３に指令して、各関節３１〜３３の関節角をステップＳ２と同じ方向に変化させる。即ち、各関節３１〜３３の爪部２６は再び当接部２８ｂ側に移動する。このステップでは、各関節３１〜３３の関節角を変化させる速度を、比較的に遅くすることが好ましい。また関節角の変化に対して各モータ６１〜６３の出力トルクは急激に変化することから、出力トルクの変化率を一定にするなど、各モータ６１〜６３の制御はトルクを基準にして行うとよい。
ステップＳ１４ａでは、第１モータ６１の出力トルクＴが、所定の閾値Ｔｘに到達したのか否かを判定する。図５に示すように、爪部２６が当接部２８ｂ側に移動することによって、第１モータ６１の出力トルクＴは再び増大する。出力トルクＴが所定の閾値Ｔｘとなった時点（時刻ｔ５）で、爪部２６が当接部２８ｂに当接していると判断することができる。
ステップＳ１４ａとほぼ同時に、ステップＳ１４ｂが実施される。ステップＳ１４ｂでは、第２モータ６２の出力トルクが、所定の閾値に到達したのか否かを判定する。出力トルクが所定の閾値となった時点で、爪部２６が当接部２８ｂに当接していると判断することができる。
ステップＳ１４ａ、１４ｂとほぼ同時に、ステップＳ１４ｃが実施される。ステップＳ１４ｃでは、第３モータ６３の出力トルクが、所定の閾値に到達したのか否かを判定する。出力トルクが所定の閾値となった時点で、爪部２６が当接部２８ｂに当接していると判断することができる。
【００２６】
ステップ１０までの処理によってロボット２が仮姿勢を実現していることから、ステップＳ１４ａ、１４ｂ、１４ｃはほぼ同時にイエスとなる。即ち、各モータ６１〜６３がそれぞれの閾値と等しいトルクを出力している状態が実現される。ロボット２では、この状態のときに実現される姿勢を基準姿勢という。
股関節３１の関節角は、股関節の爪部２６と当接部２８ｂ（ストッパ）が当接しているトルクによって決まる。その股関節３１のストッパ２６、２８ｂが当接しているトルクは、第１モータ６１が出力しているトルクと、膝関節３２の関節角と、足首関節３３の関節角によって決まる。同様に、膝関節３２の関節角は、膝関節３２のストッパ２６、２８ｂが当接しているトルクによって決まる。その膝関節３２のストッパ２６、２８ｂが当接しているトルクは、第２モータ６２が出力しているトルクと、股関節３１の関節角と、足首関節３３の関節角によって決まる。また同様に、足首関節３３の関節角は、足首関節３３のストッパ２６、２８ｂが当接しているトルクによって決まる。その足首関節３３のストッパ２６、２８ｂが当接しているトルクは、第３モータ６３が出力しているトルクと、股関節３１の関節角と、膝関節３３の関節角によって決まる。以上の関係から、各モータ６１〜６３が出力しているトルクの組み合わせによって、各関節３１〜３３のストッパ２６、２８ｂが当接しているトルクの組み合わせが一意に定まる。従って、各モータ６１〜６３がそれぞれの閾値に等しいトルクを出力していると、各関節３１〜３３のストッパ２６、２８ｂがそれぞれ所定のトルクで当接している状態となる。この状態では、各関節３１〜３３の関節角がそれぞれ所定角（基準角）に正確に調節される。ロボット２では、股関節３１の基準角が角度θ２であり、膝関節３２の基準角が角度θ４であり、足首関節３３の基準角が角度θ６となるように、モータ３１〜３３の出力トルクの閾値（ステップＳ１４ａ、１４ｂ、１４ｃ）が設定されている。
【００２７】
ステップＳ１６ａでは、所定時間Δｔの間、第１モータ６１の出力トルクＴを閾値Ｔｘに維持する。このステップによって、股関節３１のストッパ２６、２８ｂのあたりをなじませる。このとき駆動回路５１の制限トルクに閾値Ｔｘが設定してあると、トルク制限機能を利用して第１モータ６１の出力トルクＴを閾値Ｔｘに維持することができる。
ステップＳ１６ａとほぼ同時に、ステップＳ１６ｂとステップＳ１６ｃが実施される。ステップＳ１６ｂでは、所定時間Δｔの間、第２モータ６２の出力トルクを閾値に維持して、膝関節３２でのストッパ２６、２８ｂのあたりをなじませる。ステップＳ１６ｃでは、所定時間Δｔの間、第３モータ６３の出力トルクを閾値に維持して、足首関節３３のストッパ２６、２８ｂのあたりをなじませる。これらのステップＳ１６ａ、Ｓ１６ｂ、Ｓ１６ｃがほぼ同時に行われることによって、各モータ６１〜６３の出力トルクが同時にそれぞれの閾値となる状態が確実に実現される。
ステップＳ１８ａでは、制御回路４２が、エンコーダ７１による股関節３１の関節角の検出値を角度θ２に校正する。このステップによって、エンコーダ７１による股関節３１の関節角の検出値と股関節３１の実際の関節角とが正しく整合する。
ステップＳ１８ａと並行して、ステップＳ１８ｂとステップＳ１８ｃが実施される。ステップＳ１８ｂでは、制御回路４２が、エンコーダ７２による膝関節３２の関節角の検出値を角度θ４に校正する。このステップによって、エンコーダ７２による膝関節３２の関節角の検出値と膝関節３２の実際の関節角とが正しく整合する。ステップＳ１８ｃでは、制御回路４２が、エンコーダ７３による足首関節３３の関節角の検出値を角度θ６に校正する。このステップによって、エンコーダ７３による足首関節３３の関節角の検出値と足首関節３３の実際の関節角とが正しく整合する。
【００２８】
ステップＳ２０ａでは、制御回路４２が股関節３１の関節角を所定の初期姿勢角に調節する。初期姿勢角とは、所定の初期姿勢を実現するときの関節角であり、例えば直立姿勢を実現するときの関節角が予め教示されている。制御回路４２は、エンコーダ７１の出力信号に基づいて、股関節３１の関節角を初期姿勢角に調節する。股関節３１の関節角は、初期姿勢角に正しく調節される。
ステップＳ２０ａと並行して、ステップＳ２０ｂとステップＳ２０ｃが実施される。ステップＳ２０ｂでは、制御回路４２が膝関節３２の関節角を所定の初期姿勢角に調節する。膝関節３２の関節角は、初期姿勢角に正しく調節される。ステップＳ２０ｃでは、制御回路４２が足平関節３３の関節角を所定の初期姿勢角に調節する。足首関節３３の関節角は、初期姿勢角に正しく調節される。
ステップ２２では、すべての関節３１〜３３で初期姿勢角が実現されているのか否かが確認される。即ち、ロボット２が初期姿勢（直立姿勢）をとっているのか否かが判定される。このステップでイエスとなると、原点校正処理は終了する。
【００２９】
上述の原点校正処理を実施することによって、各関節３１〜３３の関節角の計測値と、各関節３１〜３３の実際の関節角が整合する。ロボット２では、同様の原点校正処理を、右腕部８や左腕部１０や右脚部１４についても実施する。原点校正処理は、関節角が互いに影響しあう関節群毎に実施するとよい。また、関節群毎の原点構成処理を、同時に実施するとよい。ロボット２では、各関節の関節角を正確に計測することができ、指示された姿勢をとりながら正確な動作を実施することができる。
ロボット２では、作業差が介在することなく原点校正を行うことができる。それにより、作業者に危険な作業を強いることがない。
【００３０】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【００３１】
【図１】ロボットの外観を示す模式図。
【図２】ロボットの構成を模式的に示す図。
【図３】股関節の構成を示す図。
【図４】原点校正処理の流れを示すフローチャート。
【図５】第１モータの出力トルクの経時変化を示すグラフ。
【符号の説明】
【００３２】
２・・ロボット
４・・頭部
６ａ・・胴部
６ｂ・・腰部（腰部リンク）
８・・右腕部
１０・・左腕部
１２・・左脚部
１４・・右脚部
２１・・大腿リンク
２２・・下腿リンク
２３・・足平リンク
２６・・爪部
２８ａ、２８ｂ・・当接部
３１・・股関節
３２・・膝関節
３３・・足首関節
４０・・制御部
４２・・制御回路
５１、５２、５３・・駆動回路
６１、６２、６３・・モータ
７１、７２、７３・・エンコーダ
【図１】
2006150556.tif 000003
【図２】
2006150556.tif 000004
【図３】
2006150556.tif 000005
【図４】
2006150556.tif 000006
【図５】
2006150556.tif 000007