説明

ロボット装置

【課題】 ロボットが外界と多様な物理インタラクションを行なった際にも、体の任意箇所における接触状態と作用力をともに計測する。
【解決手段】 各関節アクチュエータにおける現在の位置、速度、発生力を計測するとともに、機体上の1箇所で加速度及び角速度を計測する。機体上の外界との接触状態を検出して、外力の作用点を特定して、操作空間上でダイナミクス演算により操作空間慣性逆行列及びバイアス加速度を求めることにより、運動方程式上の既知項を算出し、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、外力の作用状態を推定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の関節自由度を持つロボット装置に係り、特に、可動脚などの移動手段を備えたロボット装置に関する。
【0002】
さらに詳しくは、本発明は、地上を自律的に移動して人や物と積極的且つ多様な物理的インタラクションを行なうロボット装置に係り、特に、人や物と物理的インタラクションを行なう際における外界との接触状態や、力の作用状況を把握するロボット装置に関する。
【背景技術】
【0003】
最近、脚式移動ロボットの構造やその安定歩行制御に関する研究開発が進展し、実用化への期待も高まってきている。これら脚式移動ロボットは、クローラ式ロボットに比し不安定で姿勢制御や歩行制御が難しくなるが、階段の昇降や障害物の乗り越えなど、柔軟な歩行・走行動作を実現できるという点で優れている。
【0004】
従来のロボットは、6軸のマニピュレータに代表されるように、主な用途は、産業活動・生産活動などにおける各種の人的作業の代行や支援であった。この場合のロボットは、工場などの構造化された環境内で動作することを前提としており、人や環境との複雑な物理的インタラクションは基本的に行なわない。
【0005】
これに対し、最近では、パートナー型、すなわち人間との「共生」あるいは「エンターティンメント」という用途が注目されてきている。この種のロボットは、環境やものだけでなく、人と接するなど、高度な物理インタラクション能力を備えていることが望まれる。
【0006】
パートナー型ロボットは、6軸マニピュレータなどのように所定の場所に固定されるのではなく、自律的に移動してさまざまなサービスを提供する、いわゆる移動ロボットが一般的である。パートナー型ロボットの代表例はヒューマノイドである。例えば、移動手段を備え、接地・無接地間を遷移する安定な運動パターンを実時間で生成することができるロボット装置について提案がなされている(例えば、特許文献1を参照のこと)。
【0007】
この種のパートナー型ロボットの多くは、姿勢が常に一定となるような使われ方をするとは限らない。場合によっては、ロボットは床上を転げまわったり、転倒したりというように、大きな姿勢変化が発生しうる。また、ロボットが外界と行なうインタラクションの形態は、歩行時における足先と路面の接触や、手先で道具を扱うなどさまざまである。すなわち、外界とインタラクションを行なう部位は特に限定されず、体の任意の箇所で外界と接触しうる。
【0008】
このように人や物と積極的且つ多様な物理的インタラクションを行なうロボットにとっては、外界との接触状態や力の作用状況、すなわち任意の部位に印加される外力を把握することは極めて重要である。
【0009】
ロボットが受ける外力を検出する方法として、該当する部位に6軸力センサなどに代表される力センサを配備し、外力を直接検出することが一般的である。
【0010】
例えば、足首に6軸力センサを取り付け、足底に作用する力の作用点と作用力を検出する脚式移動ロボットの足底接地位置検出装置について提案がなされている(例えば、特許文献2を参照のこと)。このロボットは、足平部の上方に力センサを設け、階段を昇降する際に足底に垂直なZ方向の力成分Fzと、前後のX軸方向の力成分Fxと、左右のY軸方向の軸回りのモーメントMyを検出し、これらの検出力足底に作用する抗力の床反力中心の位置xを逐次求める。そして、力成分Fzの検出値から足底の着床開始時点や離床終了時点を検知し、その検知時点近傍の時間範囲で求めた位置xから足底の着床開始接地位置や離床終了設置位置を求めるようになっている。
【0011】
しかしながら、この種のロボットでは、力センサにより足平の先端に印加された力しか計測することができない。また、力センサよりも先端側に力の作用点が複数ある場合であっても、それらの合力しか検出することができない。このため、それぞれの作用点の場所を正確に特定することができず、各作用点に作用する力を独立に求めることができない。
【0012】
また、圧力に応じて抵抗値や静電容量が変化する材料からなる接触センサや、オン/オフ・スイッチをロボットの表面全体に取り付け、これらの電気的信号の変化を検出することで、外界と接触しているからだの部位を特定する方法について提案がなされている(例えば、非特許文献1〜3を参照のこと)。
【0013】
しかしながら、この種のセンサは、6軸力センサのような一般の力センサに比較して非常に精度が粗く、基本的にオン/オフすなわち外界に接触の有無に関する情報しか取得できない。すなわち、接触部位を特定することはできても、その部位に作用する力を検出することはできない。また、そのセンサ値を基本的にそのまま用いるだけでは、接触部位に作用する力に関する情報を得ることはできず、ロボット全体のダイナミクスのコントロールに活用することはできない。
【0014】
また、分布型触覚センサで取得できる力情報の精度を高めることで、より豊富な外界との接触状態を取得することができる(例えば、非特許文献4を参照のこと)。しかしながら、本出願時の技術水準では、摩擦力と垂直反力を精度良く取得でき、ロボットの機体全体に分布配置できるような小型のセンサは実用レベルにはない。また、今後このようなセンサを実現することができたとしても、入力されるセンサ値の情報量が膨大となるため、そのデータ処理やデータ伝送方法の実現が困難となったり、システムの価格を引き上げたりする結果を招来する可能性がある。
【0015】
【特許文献1】特開2004−167676号公報
【特許文献2】特開平8−338341号公報
【非特許文献1】「ロボット表面多値接触センサの開発と応用」(日本機械学会ロボティクスメカトロニクス講演会98 講演予稿集,1CI1−2,1998)
【非特許文献2】「導電性ゲルを用いたロボット用柔軟触覚センサの開発と応用」(第16 回日本ロボット学会学術講演会予稿集,873−874,1998)
【非特許文献3】「導電性ファブリックを用いた全身被覆型触覚センサスーツ」(日本ロボット学会誌Vol.16,No.1,pp.80−86, 1998)
【非特許文献4】「器用な手の皮膚と触覚」(日本ロボット学会誌Vol.18,No.6,pp.767−771, 2000」
【発明の開示】
【発明が解決しようとする課題】
【0016】
本発明の目的は、可動脚などの移動手段を備え、地上を自律的に移動して人や物と積極的且つ多様な物理的インタラクションを行なうことができる、優れたロボット装置を提供することにある。
【0017】
本発明のさらなる目的は、人や物と物理的インタラクションを行なう際における外界との接触状態や、力の作用状況を好適に把握することができる、優れたロボット装置を提供することにある。
【0018】
本発明のさらなる目的は、人や物と物理的インタラクションを行なう際に、外界と接触する部位を特定し、該接触部位に作用する力を推定して、ロボット全体のダイナミクスを好適にコントロールすることができる、優れたロボット装置を提供することにある。
【0019】
本発明のさらなる目的は、全身(若しくは必要な場所)に分布型触覚センサを配備し、これらのセンサ出力と身体ダイナミクスの組み合わせから、外界と接している部位に印加する外力を好適に推定することができる、優れたロボット装置を提供することにある。
【課題を解決するための手段】
【0020】
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定システムであって、
前記機体の任意の箇所における外界との接触状態を検出する分布型接触状態検出手段と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての外力の作用状態を推定する外力推定手段と、
を具備することを特徴とする外力推定システムである。
【0021】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない(以下、同様)。
【0022】
人や物と積極的且つ多様な物理的インタラクションを行なうロボットにとっては、外界との接触状態や力の作用状況、すなわち任意の部位に印加される外力を把握することは極めて重要である。
【0023】
ロボットが受ける外力を検出する方法として、該当する部位に6軸力センサなどに代表される力センサを配備し、外力を直接検出することが一般的である。しかしながら、力センサを設置した部位に印加される力を直接計測することしかできない。また、力センサよりも先端側に力の作用点が複数ある場合であっても、それらの合力しか検出することができない。このため、それぞれの作用点の場所を正確に特定することができず、各作用点に作用する力を独立に求めることができない。また、高価な力センサを、ロボットの機体全体にわたって高密度で配置することは現実的でない。
【0024】
また、圧力に応じて抵抗値や静電容量が変化する材料からなる接触センサや、オン/オフ・スイッチをロボットの表面全体に取り付け、これらの電気的信号の変化を検出することで、外界と接触しているからだの部位を特定することはできるが、基本的にオン/オフすなわち外界に接触の有無に関する情報しか取得できず、接触部位を特定することはできても、その部位に作用する力を検出することはできない。
【0025】
これに対し、本発明に係る外力推定システムは、オン/オフ情報が取得できる接触センサが機体上の任意の場所に配置されたロボットにおいて、各部位から得られるオン/オフ情報を、ロボットの機体全体のダイナミクス、関節力状態、ロボット全体の運動状態といった他の物理量と組み合わせることで、接触センサ部に作用する力を推定することができる。
【0026】
本発明に係る外力推定システムによれば、機体上の所定の箇所においてロボット装置の運動方程式を設定し、前記既知項算出手段は、操作空間上でダイナミクス演算により操作空間慣性逆行列及びバイアス加速度を求めることにより、運動方程式上の既知項を算出する。そして、前記外力推定手段は、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、外力の作用状態を推定することができる。
【0027】
ここで、前記既知項算出手段において実行する前記の操作空間ダイナミクス演算は、例えば順動力学演算を用いて構成することができる。
【0028】
また、前記外力推定手段は、加速度と外力の間で成立する線形相補性問題を形成してこの問題を解くことにより、外力の作用状態を推定することができる。
【0029】
また、前記運動状態計測手段は、所定の部位における姿勢及び位置を求める。
【0030】
前記外力推定手段は、前記分布型接触状態検出手段により外界との接触が検出された部位に作用する外力を推定する。このとき、前記分布型接触状態検出手段により外界との接触が検出された部位において、当該部位の外形から得られる作用方向についての外力を推定することができる。具体的には、前記分布型接触状態検出手段により外界との接触が検出された部位における垂直反力、並びに摩擦力を推定することができる。
【0031】
また、本発明の第2の側面は、複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定システムであって、
前記機体の任意の領域における外界との接触状態を検出する分布型面接触状態検出手段と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての外力を推定する外力推定手段と、
を具備することを特徴とする外力推定システムである。
【0032】
上述した第1の側面に係る外力推定システムでは、分布型接触状態検出手段により機体の任意の箇所における外界との接触状態を検出するが、第2の側面に係る外力推定システムでは、分布型面接触状態検出手段は、外界との接触状態を領域単位で検出する。このような場合、前記外力推定手段は、前記分布型面接触状態検出手段により外界と接触していることが検出された領域の外形上の点に作用する外力を推定する。さらに、前記分布型面接触状態検出手段により外界と接触していることが検出された領域の外形を構成する各頂点に作用する外力を求め、その重心位置に外力が印加されたものと推定する。
【0033】
また、本発明の第3の側面は、複数の可動関節を備えた機体と、外力が作用する作用点を有するロボット装置に作用する外力を推定する外力推定システムであって、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記作用点における前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての作用点における外力を推定する外力推定手段と、
を具備することを特徴とする外力推定システムである。
【0034】
本発明の第3の側面に係る外力推定システムでは、外力推定の対象となるロボット装置において、外力が作用する作用点があらかじめ設定されているので、分布型の接触状態を検出する手段は必要ない。このような場合、前記既知項算出手段は、外力作用点における操作空間慣性逆行列及びバイアス加速度をダイナミクス演算により求めることにより、運動方程式上の既知項を算出する。そして、前記外力推定手段は、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、所定の外力作用点に印加される外力を推定することができる。
【0035】
また、本発明の第4の側面は、記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
前記機体の任意の箇所における外界との接触状態を検出する分布型接触状態検出手順と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手順と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手順と、
前記ロボット装置の運動方程式を設定する運動方程式設定手順と、
前記アクチュエータ現在状態計測手順により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手順により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手順と、
前記運動方程式上の未知項としての外力の作用状態を推定する外力推定手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【0036】
また、本発明の第5の側面は、複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
前記機体の任意の領域における外界との接触状態を検出する分布型面接触状態検出手順と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手順と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手順と、
前記ロボット装置の運動方程式を設定する運動方程式設定手順と、
前記アクチュエータ現在状態計測手順により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手順により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手順と、
前記運動方程式上の未知項としての外力を推定する外力推定手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【0037】
また、本発明の第6の側面は、複数の可動関節を備えた機体と、外力が作用する作用点を有するロボット装置に作用する外力を推定するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測ステップと、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測ステップと、
前記作用点における前記ロボット装置の運動方程式を設定する運動方程式設定ステップと、
前記アクチュエータ現在状態計測ステップにより得られる各関節アクチュエータの現在状態、及び前記運動状態計測ステップにより得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出ステップと、
前記運動方程式上の未知項としての作用点における外力を推定する外力推定ステップと、
を実行させることを特徴とするコンピュータ・プログラムである。
【0038】
本発明の第4乃至第6の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第4乃至第6の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1乃至第3の各側面に係る外力推定システムと同様の作用効果を得ることができる。
【発明の効果】
【0039】
本発明によれば、人や物と物理的インタラクションを行なう際の外界と接触する部位を特定し、該接触部位に作用する力を推定して、ロボット全体のダイナミクスを好適にコントロールすることができる、優れたロボット装置を提供することができる。
【0040】
本発明によれば、本出願時において入手可能なオン/オフ型の分布型触覚センサと、ロボット全体のダイナミクス演算とを組み合わせて、各触覚センサに作用する力を推定することにより、ロボットが外界と多様な物理インタラクションを行なった際にも、体の任意箇所における接触状態と作用力をともに計測することが可能な外力推定方法を提供することができる。
【0041】
また、本発明に係る外力推定方法を、加速度センサやジャイロといった慣性センサと組み合わせることにより、ロボット全体が移動し、その姿勢が一定に保たれないような状況に対しても。適用可能とすることができる。
【0042】
従来、オン/オフ情報を検出する接触センサしか設置されない系では、そのセンサ出力値を何ら加工せず、オン/オフ情報としてのみ利用していた。これに対し、本発明によれば、各部位から得られるオン/オフ情報を、ロボットの機体全体のダイナミクス、関節力状態、ロボット全体の運動状態といった他の物理量と組み合わせることで、接触センサ部に作用する力を推定することができる。
【0043】
本発明によれば、オン/オフ情報しか取得できない接触センサが配置された機械装置に適用することで、その他の運動状態で、オン状態を検出したセンサの部位に作用する力を推定することができる。すなわち、簡便なシステム構成により多くの力情報を推定することができ、その結果として、推定できる力の情報量に対し安価なシステムを実現することができる。
【0044】
多くの力センサは、希歪体などの脆弱な構造を有する。これに対し、本発明に係る外力推定方法は、オン/オフ情報のみを検出する接触センサと、姿勢センサと、アクチュエータ内部のエンコーダ並びに電流センサなどのセンサ出力に基づいて力を推定するので、全体として脆弱な構造が少なく、ロバストである。したがって、再キャリブレーションなどの手間も発生し難い。
【0045】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【0046】
以下、図面を参照しながら本発明の実施形態について詳解する。
【0047】
A.ロボットの構成
図1には、本発明の一実施形態に係るロボット装置の外観構成を示している。図示のロボット装置は、いわゆる人間型ロボットであり、骨盤部には、移動手段としての2肢の脚体と、腰関節を介して上体が接続されている。上体には、2肢の腕部と、首関節を介して頭部が接続されている。
【0048】
左右の脚体は、それぞれ股関節3自由度と、膝関節1自由度と、足首関節2自由度の、計6自由度を備えている。また、左右の腕部は、それぞれ肩関節3自由度と、肘関節1自由度と、手首関節2自由度の、計6自由度を備えている。首関節及び腰関節は、ともにX、Y、Z 軸回りに3自由度を有するとする。
【0049】
各関節軸を駆動するアクチュエータは、例えばDCブラシレス・モータと減速機、並びに減速機の出力軸の回転位置を検出する位置センサで構成される。これら関節駆動アクチュエータは、ロボット装置全体の動作を統括的にコントロールするホスト・コンピュータと接続され、その位置制御目標値がホスト・コンピュータから与えられるとともに、現在の出力トルクや、関節角度、関節角速度をホスト・コンピュータに送信することができるものとする。
【0050】
図1に示すロボット装置の表面のうち、外界との接触が想定されている各部位には、触覚センサ群t1、t2、…、t17が取り付けられている。図2には、1つの触覚センサ群の構成を示している。同図に示すように、1つの触覚センサ群tは、接触状態をそれぞれ独立して検出することができる複数の触覚センサCSをアレイ状に配置して構成され、触覚センサ群tとしてはいずれの触覚センサCSが接触状態にあるかによって、詳細な接触位置を特定することができる。
【0051】
図3には、触覚センサCSの構成を模式的に示している。触覚センサCSは、2枚の極板P1及びP2で空隙Sを挟んだ構造をしており、一方の極板P1には電位Vccが印加され、他方の極板P2は接地されている。そして、一方の極板P1をパラレル・インターフェース(PIO)経由でマイクロ・コンピュータに入力し、極板間の接触状態すなわち触覚センサCSに外力が作用しているか否かを判定することができる。
【0052】
触覚センサ群t毎に、その近隣に1つのマイクロ・コンピュータを配置して、触覚センサ群を構成するすべての触覚センサCSの検出信号を入力し、これらのオン/オフ状態を収集して、当該部位における外界との接触の有無並びに接触位置をホスト・コンピュータに送信するものとする。
【0053】
また、図1に示すように、ロボット装置の骨盤部には、3軸の加速度センサa1と3軸の角速度センサ(ジャイロ)g1が搭載されている。その近隣には、これらのセンサ値を計測するマイクロ・コンピュータが配備され、その計測結果をホスト・コンピュータに送信するものとする。
【0054】
図4には、図1に示したロボット装置における結線トポロジの構成例を示している。
【0055】
ロボット装置は、胴体部に、3軸の腰関節アクチュエータa1、a2、a3、及び3軸の首関節アクチュエータa16、a17、a18を持ち、これらはホスト・コンピュータに対しシリアル接続されている。各関節アクチュエータは、シリアル・ケーブルを通じて、その位置制御目標値を受け取るとともに、現在の出力トルクや、関節角度、関節角速度をホスト・コンピュータに送信する。
【0056】
また、ロボット装置は、左腕部に、3軸の肩関節アクチュエータa4、a5、a6、1軸の肘関節アクチュエータa7、及び2軸の手首関節アクチュエータa8、a9を持ち、これらはホスト・コンピュータに対しシリアル接続されている。同様に、右腕部には、3軸の肩関節アクチュエータa10、a11、a12、1軸の肘関節アクチュエータa13、及び2軸の手首関節アクチュエータa14、a15を持ち、これらはホスト・コンピュータに対しシリアル接続されている。
【0057】
また、ロボット装置は、左脚部に、3軸の股関節アクチュエータa19、a20、a21、1軸の膝関節アクチュエータa22、及び2軸の足首関節アクチュエータa23、a24を持ち、これらはホスト・コンピュータに対しシリアル接続されている。同様に、右脚部には、3軸の肩関節アクチュエータa25、a26、a27、1軸の肘関節アクチュエータa28、及び2軸の足首関節アクチュエータa29、a30を持ち、これらはホスト・コンピュータに対しシリアル接続されている。
【0058】
各関節で使用されるアクチュエータa1〜a30は、例えばDCブラシレス・モータと減速機、並びに減速機の出力軸の回転位置を検出する位置センサで構成され、外部から与えられた位置制御目標値に従って回転駆動するとともに、現在の出力トルクや、関節角度、関節角速度を出力する。この種の関節アクチュエータについては、例えば本出願人に既に譲渡されている特開2004−181613号公報に記載されている。
【0059】
ロボット装置の右脚部には、右足部触覚センサ群t1、右脛部触覚センサ群t2、右大腿部触覚センサ群t3が配設され、これらはホスト・コンピュータに対しシリアル接続されている。各々の触覚センサ群t1〜t3にはマイクロ・コンピュータが装備されており(前述)、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。同様に、左脚部には、左足部触覚センサ群t9、左脛部触覚センサ群t10、左大腿部触覚センサ群t11が配設され、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を内部のマイクロ・コンピュータで収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。
【0060】
また、ロボット装置の右腕部には、右手首触覚センサ群t4、右前腕部触覚センサ群t5、右上腕部触覚センサ群t6が配設され、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を内部のマイクロ・コンピュータで収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。同様に、左腕部には、左手首触覚センサ群t12、左前腕部触覚センサ群t13、左上腕部触覚センサ群t14が配設され、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を内部のマイクロ・コンピュータで収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。
【0061】
また、ロボット装置の胴体部の左右にはそれぞれ胴部触覚センサ群t7及びt15が取り付けられており、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を内部のマイクロ・コンピュータで収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。
【0062】
また、ロボット装置の頭部の左右にはそれぞれ頭部触覚センサ群t8及びt16が取り付けられており、それぞれ触覚センサ群における触覚センサCSのオン/オフ状態を内部のマイクロ・コンピュータで収集して、シリアル・ケーブルを通じてホスト・コンピュータに送信する。
【0063】
B.外力の推定方法
本発明に係るロボット装置では、オン/オフ型の分布型触覚センサとロボット全体のダイナミクス演算とを組み合わせて外力を推定することができる。すなわち、各部位から得られるオン/オフ情報を、ロボットの機体全体のダイナミクス、関節力状態、ロボット全体の運動状態といった他の物理量と組み合わせることで、接触センサ部に作用する力を推定する。したがって、ロボット装置は、外界と多様な物理インタラクションを行なった際にも、体の任意箇所における接触状態と作用力をともに計測することが可能である。
【0064】
以下では、外界からの力の作用点を検出することができても、その力の大きさを方向が検出することができないシステムにおいて、すべての力の作用点における外力の大きさとその方向を推定する方法について考察する。
【0065】
図5には、図1に示したロボット装置の関節自由度モデルを示している。同図から分かるように、2足歩行の移動ロボットを、骨盤Bを基底とする開リンク木構造として表現することができる。
【0066】
移動ロボットの場合、ロボットがワールド空間中を自由に移動し、姿勢を変化させることができる。したがって、ロボット全体の状態を表すための状態変数として、骨盤Bのオイラー角α=(α,β,γ)Tとその位置p0(p0x,p0y,p0zTを導入する。すると、ロボットはリンク構造物として扱うことができるので、ロボットの運動方程式は、下式(1)のような形で表現することができる。
【0067】
【数1】

【0068】
ここで、qはロボット全体の一般化変数であり、ロボットの運動状態としてのベースの姿勢α及び位置p0を並べたベクトルと、アクチュエータの現在状態としての全関節値を並べてできるベクトルθで構成される。すなわち、qは下式(2)のような形で表現される。
【0069】
【数2】

【0070】
また、上式(1)中で、τは、一般化変数qに対応した一般化力であり、αとp0に対応する成分は(力を発生するアクチュエータが存在しないため)0となり、θに対応する成分は各関節部を駆動するアクチュエータの発生力に等しい。Hは、ロボット全体の慣性行列、bは重力やコリオリ力などを表す。fは外力である。Jは、外力作用方向に発生する速度/dot x(Latexの書式に基づく)と、一般化速度/dot q(Latexの書式に基づく)とを対応付けるヤコビアンであり、下式(3)の通りとなる。
【0071】
【数3】

【0072】
上式(1)を変形すると、下式(4)が得られる。
【0073】
【数4】

【0074】
ここで、Λ-1は、外力作用方向に関する操作空間慣性逆行列であり、下式(5)で表される。
【0075】
【数5】

【0076】
上式(4)において、右辺第1項、同第2項、及び操作空間慣性逆行列Λ-1は、後述する方法によって、現在の運動状態から見積もることができる。しかし、外力作用方向に発生する加速度と外力fは自由な組み合わせが許される訳ではない。垂直反力は多くの場合、ロボットと環境を乖離させる方向にのみ作用し、逆向きには作用しない。摩擦力はこの垂直反力によって決定される摩擦円錐以上の力を作用することはできない。すなわち、以下の式(6)〜(8)に示すような線形相補性問題を形成する。
【0077】
【数6】

【0078】
【数7】

【0079】
【数8】

【0080】
ここで、上式(6)中のcはバイアス加速度、すなわち外力が一切作用しない場合に作用点に発生する加速度であり、下式で表される。
【0081】
【数9】

【0082】
また、上式(7)及び(8)中でそれぞれ存在するfNi及びfFiは、作用点iにおける法線方向の外力及び摩擦力を表す。μiは当該作用点における摩擦係数である。
【0083】
本発明によれば、このような線形相補性問題を解くことによってすべての外力fを推定することができる、という点を十分理解されたい。なお、線形相補性問題の数学的な解法自体については、例えば“Fast Contact Force Computation for Nonpenetrating Rigid Bodies”(SIGGRAPH94,pp.23−34,1994)に記載されているので、ここでは説明を省略する。以下では、ロボットの運動状態から操作空間慣性逆行列Λ-1並びにバイアス加速度cを推定する方法について述べる。
【0084】
操作空間慣性逆行列Λ-1の算出方法:
上式(6)において、右辺から左辺を得ることを考えると、外力やアクチュエータ発生力、重力、速度積に関連する力(コリオリ力など)が作用したときの、外力作用点における外力作用方向の加速度を求める問題として扱うことができる。力から加速度を得る問題は、一般に、順動力学演算として知られており、下式のように表現される。
【0085】
【数10】

【0086】
最も基本的な順動力学演算については、例えば、“Efficient Dynamic Computer Simulation of Robotic Mechanisms”(Journal of Dynamic Systems,Measurement and Control,pp.205−211,1982)を参照されたい。
【0087】
ここで、下式のようにおくと、重力、関節力、速度積に関連する力(コリオリ力など)が発生しない状況において発生する加速度を求めることができる。すなわち、c=0とすることができる。
【0088】
【数11】

【0089】
f=ei、すなわち、i番目の単位外力のみ作用させる条件下で計算を実行すると、Λ-1の第i列を求めることができることが分かる。よって、以下の演算をすべてのiについて実行することよってΛ-1を得ることができる。
【0090】
【数12】

【0091】
バイアス加速度cの算出方法:
逆に、順動力学演算を外力f=0として実行することで、バイアス加速度cを抽出することができる。すなわち、
【0092】
【数13】

【0093】
上記の各式(9)及び(10)から分かるように、操作空間慣性逆行列Λ-1及びバイアス加速度cを算出する際に必要となる情報として、一般化変数q及びその一般化速度/dot q(Latexの書式に基づく)、一般化力τ、重力加速度gがある。以下では、さらにこれらの算出方法について説明する。
【0094】
一般化変数qの算出方法:
一般化変数qの要素のうち、ロボットの実関節に対応する要素については、ロボットの関節角そのものであり、エンコーダによって計測した結果をそのまま用いることができる。
【0095】
ロボット全体の姿勢及び位置に対応した成分、すなわち、骨盤Bのオイラー角αとその位置p0については、基本的に慣性センサ(図1中のa1、g1)によって見積もることができる。しかし、そのすべての成分を決定する必要はない。順動力学の演算結果を積分して位置の履歴を形成する力学シミュレーションへの応用と異なり、本実施形態では、重力方向に対する骨盤Bの姿勢が分かれば十分である。但し、この点についての詳細は順動力学の詳細な演算内容に関わり煩雑になるので、本明細書ではこれ以上説明しない。
【0096】
このような重力ベクトルに対する機体姿勢を、そこに搭載された加速度センサとジャイロの出力から求める方法は、ストラップダウン方式と呼ばれる周知の手法であり、この結果から骨盤のオイラー角αを得ることができる。ストラップダウン方式による姿勢検出方法については、例えば特開平6−201863号公報に記載されている。一方、骨盤の位置p0は特に重要でないことから、ここではp0=0としておく。
【0097】
一般化速度の算出方法:
一般化速度/dot q(Latexの書式に基づく)の要素のうち、ロボットの実関節に対応する要素については、ロボットの関節角速度に等しいので、エンコーダの数値微分やタコメータによって計測した結果をそのまま用いることができる。
【0098】
ロボット全体の姿勢及び位置に対応した成分、すなわち、骨盤Bのオイラー角αの角速度/dot α(Latexの書式に基づく)及びその位置p0の速度/dot p0(Latexの書式に基づく)については、基本的には慣性センサによって見積もることができる。順動力学演算は、各リンク座標系におけるローカル表現に変換することが可能であり、その場合、これらの物理量は、骨盤Bに固定された座標系から見た骨盤Bに配設したセンサ(図5を参照のこと)から得られる角速度及び並進速度によって代替することができる。但し、この点についての詳細は順動力学の詳細な演算内容に関わり煩雑になるので、本明細書では説明を省略する。
【0099】
つまり、骨盤Bのオイラー角αの角速度値/dot α(Latexの書式に基づく)としてジャイロの出力を用いることができ、その位置p0の速度値/dot p0(Latexの書式に基づく)として加速度センサから重力加速度を除去した成分の積分値を用いることができる。加速度センサから重力加速度を除去するには、以下の演算を行なえばよい。
【0100】
【数14】

【0101】
ここで、amは加速度センサの出力であり、RBは前述のストラップダウン方式で得られた骨盤Bの姿勢行列、aは骨盤Bに固定された座標系から見た並進加速度である。原理的には、aを数値積分すれば骨盤Bの位置p0における速度/dot p0(Latexの書式に基づく)を得ることができるが、実際にはドリフトの問題があるため、適切なハイパス・フィルタに積分値を透過させる結果を用いる必要がある。
【0102】
一般化力τの算出方法:
一般化力τの成分のうち、ロボットの実関節に対応する要素については、ロボットのアクチュエータが発するトルクそのものであるから、アクチュエータ内のトルクセンサや電流センサによって計測した結果を用いることができる。
【0103】
ロボット全体の姿勢及び位置に対応した成分については、アクチュエータが存在しないことから、0となる。なお、アクチュエータ内の慣性や摩擦は順動力学演算に含まれ、考慮されるが、高い精度でその値を同定することは難しく、定式化されない要素も少なくない。その値はアクチュエータの減速比とともに大きくなることから、アクチュエータの減速比は極力低くすることが望ましい。総じて、本発明を好適に実現するには、バックドライバビリティの高いアクチュエータを用いることが望ましい。
【0104】
重力加速度gの算出について:
重力加速度に特別な計算は必要ない。順動力学演算では、演算の基底が上向きに重力加速度gで加速しているとモデル化することで重力を考慮する。この値を外部から変更可能とすれば、順動力学演算において重力加速度を変数として扱うことができる。
【0105】
外力の作用方向の定義:
以上の説明で、一般化変数q及びその一般化速度/dot q(Latexの書式に基づく)、一般化力τ、重力加速度gの算出方法が明らかとなった。さらに、上式(6)を解くには、外力の作用点とその方向を定める必要がある。以下では、外力の作用方向の設定方法について説明する。
【0106】
図6には、接触センサCSが設置されている場所に設定された座標系Ccsを示している。座標系は、この点におけるロボット形状の法線方向にz軸を、これと垂直な方向にx軸及びy軸を持つものとする。ロボットの形状は個々のリンクレベルでは変形しないものとすると、各接触センサの設置点におけるx軸、y軸及びx軸の方向は不変であり、あらかじめ算出して固定テーブルとして保持しておくことができる。
【0107】
外力の作用点は、出力がオンとなった接触センサCSの設置位置、すなわち座標系Ccsの位置となる。接触センサCSにおける力の作用方向は、これらの座標軸と反対方向に設定する。すなわち、垂直反力fNの方向は−z軸方向、摩擦力fFx及びfFyの方向は−x軸及び−y軸方向にそれぞれ設定される。順動力学演算がローカル座標系表現で構成されているとすると、外力の作用点及び作用方向についても、外力が作用するリンクに固定された座標系から見た、ローカル座標系表現で用意すればよい。リンクが変形しないことを前提とすれば、いずれも固定値となる。また、この点における摩擦係数についても、このリンクの素材に基づいて予め決定しておくことができ、定数となる。
【0108】
垂直反力と摩擦力の作用方向は、実際には外界の形状にも依存する。したがって、外力推定の精度をより高めたい場合には、各リンクの外形を微分可能な曲線で構成するなどの対策をとってもよい。摩擦係数も厳密には接触対象の素材にも依存するが、ここでは近似的にリンクの素材のみで決定するように構成した。相手の素材も既知であれば、両者の平均を取るなどの処理を行なってもよい。
【0109】
以上の結果、すべての接触センサにおける垂直反力fNと摩擦力fFx及びfFyを連結して並べたベクトルとして、下式(12)に示す外力ベクトル全体が定義される。
【0110】
【数15】

【0111】
上式(12)中で、Mは接触センサの総数である。上述した方法により、上式(6)で示した線形相補性問題式を解くことにより、これらの外力の値がすべて決定することができる。
【0112】
図7には、これまで説明してきた外力推定方法を実現するためのロボット装置の機能構成をブロック図の形式で示している。同図に示すように、本発明に係る外力推定方法を搭載したロボット装置は、接触検出部1、アクチュエータ部2、姿勢検出部3、外力推定部4という4つの機能部ロックに大別される。
【0113】
接触検出部1は、上述した触覚センサ群(図2を参照のこと)と、各触覚センサが取り付けられている位置データ、接触点における外形の法線ベクトル、接線ベクトル、摩擦係数に関するデータを有する。位置データ、法線ベクトル、接線ベクトルに関しては、触覚センサが取り付けられているリンクに固定されたローカル座標系から見た表現で保持する。接触検出部1は、接触センサ群1−1を構成するすべての接触センサのオン/オフ状態を計測し、要求に応じて接触部位の位置データ、法線ベクトル、接線ベクトル、摩擦係数のリストを返答する。
【0114】
アクチュエータ部2は、すべての位置制御型アクチュエータの制御と、その状態検出を行なう。すなわち、角度目標値を実現するようにアクチュエータのトルク出力を調整する位置制御部2−1と、アクチュエータの現在角度を計測する位置検出部2−2、アクチュエータの現在角速度を計測する速度検出部2−3、アクチュエータの出力トルクを計測するトルク検出部2−4を備えている。アクチュエータ部2は、要求に応じてアクチュエータの目標角度を受理したり、現在の角度、角速度、トルク状態を返答したりする。
【0115】
姿勢検出部3は、骨盤部に取り付けられたジャイロ3−1と加速度センサ3−2(図4を参照のこと)の計測を行ない、要求に応じてそれらの値を返答する。
【0116】
外力推定部4は、接触検出部1、アクチュエータ部2、及び姿勢検出部3からの返答結果を基に、各接触センサ部に発生する外力を推定する。以下、その内部構成について説明する。
【0117】
接触部位決定部4−1は、接触検出部1に問い合わせ、現在接触状態すなわちオン状態にある接触センサCSのリストとその位置リストを作成する。
【0118】
外力方向設定部4−2は、接触部位決定部4−1でオン状態として検出された接触センサにおける、法線情報と接線情報を接触検出部1に問い合わせ、垂直反力と摩擦力(x及びyの2方向)の方向を決定する。方向はそれぞれ法線ベクトルと接線ベクトルの逆向きとなる。
【0119】
摩擦係数設定部4−3では、外力の作用点における摩擦係数を設定する。摩擦係数は、リンクの素材に基づいて予め決定しておくことができ、定数となる。摩擦係数は、厳密には接触対象の素材にも依存するが、ここでは近似的にリンクの素材のみで決定するように構成した。相手の素材も既知であれば、両者の平均を取るなどの処理を行なってもよい。
【0120】
骨盤姿勢算出部4−4は、姿勢検出部で計測された骨盤の角速度と加速度情報を基に、ストラップダウン方式に基づく姿勢演算を実行して、骨盤部の姿勢情報を算出する。
【0121】
一般化変数決定部4−5は、骨盤姿勢算出部4−4が作成した骨盤部の姿勢情報と、アクチュエータ部から得られるすべてのアクチュエータの角度情報を基に、一般化変数ベクトルqを作成する。
【0122】
一般化速度決定部4−6は、姿勢検出部3で計測された骨盤の角速度(ジャイロ計測値)と加速度の積分値(実際には既に説明したようにハイパス・フィルタに透過させるのが望ましい)、及びアクチュエータ部2から得られるすべてのアクチュエータの角速度を基に、一般化変数qの速度ベクトルを作成する。
【0123】
一般化力決定部4−7は、アクチュエータ部2から得られるすべてのアクチュエータの出力トルクを基に、一般化力ベクトルτを作成する。
【0124】
順動力学演算部4−8は、下式に示す順動力学演算を実行する演算ユニットである。
【0125】
【数16】

【0126】
引数の値を可変に与えられるように構成されている。返り値として、一般化加速度/ddot q(Latexの書式に基づく)ではなく、外力の作用方向に発生する加速度のベクトルxを返すところが、一般的な順動力学演算と異なるが、内部的には一旦一般化加速度を得て、これを基に各外力方向の加速度を算出するように構成すればよい。
【0127】
操作空間慣性逆行列演算部4−9は、順動力学演算部4−8を用い、上式(9) の演算をすべての外力に関して実行し、操作空間慣性逆行列Λ-1を算出する。すなわち、すべての外力に関して単位外力(ノルムが1の外力)をテスト・フォースとして作用させたときの操作空間加速度(外力作用点に発生する加速度)/ddot x(Latexの書式に基づく)を算出するという処理を繰り返してΛ-1を得る。外力の作用位置や作用方向については、接触部位決定部4−1と外力方向決定部4−2の結果を用いる。
【0128】
バイアス加速度演算部4−10は、順動力学演算部4−8を用い、上式(10)に示した演算を実行し、バイアス加速度cを算出する。この際、一般化変数決定部4−5が作成した一般化変数q、一般化速度決定部4−6が作成した一般化速度/dot q(Latexの書式に基づく)、一般化力決定部4−7が作成した一般化力τを用いる。外力の作用位置や作用方向については、操作空間慣性逆行列演算部4−9と同様に、接触部位決定部4−1、外力方向決定部4−2の結果を用いる。
【0129】
線形相補性問題解決部4−11は、操作空間慣性逆行列算出部4−9によって算出された操作空間慣性逆行列Λ-1、バイアス加速度算出部4−10によって算出されたバイアス加速度cを線形相補性問題式(6)、式(7)、式(8)に設定し、これを解く。式(8)の摩擦係数には、摩擦係数設定部4−3で得られた結果を用いる。この線形相補性問題を解いた結果、すべての外力情報fが決定される。
【0130】
図8には、本発明に係る外力推定を行なうための処理手順をフローチャートの形式で示している。
【0131】
まず、すべての接触センサの状態計測を行なう(ステップS1)。次いで、すべてのアクチュエータの関節角度を計測する(ステップS2)。次いで、すべてのアクチュエータの関節角速度を計測する(ステップS3)。次いで、すべてのアクチュエータの関節トルクを計測する(ステップS4)。
【0132】
次いで、骨盤部Bに設置された加速度センサ及びジャイロを計測する(ステップS5)。そして、ステップS5で得られた結果に対してストラップダウン方式に基づく姿勢演算を行ない、骨盤部の姿勢情報を算出する(ステップS6)。
【0133】
次いで、ステップS1で得られた結果に基づいて、外界と接触を起こしている部位の位置(リンクに固定された座標系から見たローカル表現)をリストアップする(ステップS7)。そして、外界と接触している各点において作用する垂直反力と摩擦力の方向を決定する(ステップS8)。
【0134】
次いで、外界と接触している各点における摩擦係数をデータベースから取り出す(ステップS9)。
【0135】
そして、ステップS2及びステップS6の結果を用いて、一般化変数qの値を決定する(ステップS10)。また、ステップS3及びS5の結果を用いて一般化速度/dot q(Latexの書式に基づく)の値を決定する(ステップS11)。そして、ステップS4の結果を用いて、一般化力τの値を決定する(ステップS12)。
【0136】
次いで、順動力学演算を用いて、すべての外力に関して式(9)を実行して、操作空間慣性逆行列Λ-1を算出する(ステップS13)。また、順動力学演算を用いて式(10)を実行して、バイアス加速度cを算出する(ステップS14)。
【0137】
次いで、ステップS13で得られた操作空間慣性逆行列Λ-1、並びにステップS14で得られたバイアス加速度c、並びにステップS9で得られた摩擦係数を線形相補性問題(式(6)から式(8))に設定する(ステップS15)。
【0138】
そして、ステップS15で設定された線形相補性問題を解いて、すべての外力(垂直反力と摩擦力)を求める。
【0139】
以上の処理を一定周期(例えば制御周期)で実行する(ステップS16)。操作空間慣性逆行列Λ-1の算出など、計算時間を要する部分に関しては、選択的に低い更新レートで実行するように構成してもよい(操作空間慣性逆行列は時間的に急激に変化しない特性を有しているため、特に有効である)。
【0140】
C.変形例
上述した説明では、接触検出部1は、図2に示したように複数の接触センサをアレイ状に配設して構成される触覚センサ群をロボットの全身に配設して構成されており、外界と接触している部位を特定することができることを前提としている。その変形例として、外界と接触している部位ではなく、外界と接触している領域を検出する接触検出部を用いることによっても、同様に本発明に係る外力推定を実現することができる。
【0141】
ここでは、凸領域のいずれかの場所が外界と接触していることを検出できる面接触センサRCS(図9を参照のこと)がロボット表面に分散して配置されている場合について考察する。
【0142】
このような場合、面接触センサRCSの外形上に外力作用点を設定して、これらの点に上述した点接触センサがあるとみなして、同様の方法で外力を推定することができる。図9に示した例では、5つの点の点接触センサに分割して扱う様子を示している。
【0143】
線形相補性問題を解くと、これらすべての点において印加される外力の値が決定される。ここから面接触センサ領域内の1点の作用点xaを得るには、面接触センサが平面とみなすことができる場合に、下式に示すように垂直反力の重心位置を求めればよい。
【0144】
【数17】

【0145】
上式において、fNiは第i頂点の垂直反力、xiは第i頂点の位置を表す。xaへの作用力はすべての頂点xiにおける垂直反力と摩擦力の合力となる。
【0146】
D.変形例2
上述した説明では、接触検出部1により外界と接触している部位又は領域を特定するようになっている。これに対し、接触部位が決まっている、あるいはリンク原点など決められた位置に作用する外力を推定したい場合は、必ずしも接触センサを配置する必要はない。本発明によれば、いずれの方法であれ外力の作用位置を指定しさえすれば、そこに印加される外力を推定することができる。すなわち、接触センサを配置して外力の作用点を検出するのではなく、あらかじめ外力作用位置を指定し、そこに印加される外力を推定することができる。
【0147】
また、本発明に係る外力推定方法は、外力として、「力」だけでなく「モーメント」を求めるように構成することも可能である。具体的には、以下に示す順動力学演算において、力の代わりにモーメントも作用させられるように構成する。また、これに対応する加速度の成分については、並進加速度の代わりに角加速度を算出するように構成すればよい。
【0148】
【数18】

【0149】
このようにすれば、上式(9)において、モーメントに該当する外力fの成分に関しては、単位外力の代わりに単位外モーメントを作用させるなど、上述した外力を推定するのと基本的に同一の手順に従ってモーメントを推定することができる。
【0150】
また、線形相補性問題の拘束条件は、例に挙げた摩擦力や垂直反力に関する拘束条件限らず、線形相補性問題ソルバの構成によってより多様な拘束を扱うこともできる。
【産業上の利用可能性】
【0151】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【0152】
本明細書では、本発明を2足歩行の脚式移動ロボットに適用した実施形態を中心に説明してきたが、本発明の要旨はこれに限定されるものではない。本発明に係る外力推定方法は、基本的にはロボット装置の構造に依存せず、任意の構造に対して適用することができる。具体的には、順動力学演算を構造非依存な高汎用性を有した形態で実装することができる。
【0153】
本発明に係る外力推定方法は、6軸力センサを用いて局所的な箇所への作用力を検出する従来の方法とは異なり、接触センサを配置した任意の箇所に作用する力を推定することができる。したがって、移動ロボットに限らず、機体の至る所で外界と接触を生じるさまざまな機械装置に適用して、その状況を把握するのに有効である。
【0154】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【0155】
【図1】図1は、本発明の一実施形態に係るロボット装置の外観構成を示した図である。
【図2】図2は、触覚センサ群の構成を示した図である。
【図3】図3は、触覚センサCSの構成を模式的に示した図である。
【図4】図4は、図1に示したロボット装置における結線トポロジの構成例を示した図である。
【図5】図5は、図1に示したロボット装置の関節自由度モデルを示した図である。
【図6】図6は、接触センサCS が設置されている場所に設定された座標系Ccsを示した図である。
【図7】図7は、本発明に係る外力推定方法を実現するための機能構成を示したブロック図である。
【図8】図8は、ロボット装置に置ける外力推定を行なうための処理手順を示したフローチャートである。
【図9】図9は、凸領域のいずれかの場所が外界と接触していることを検出できる面接触センサRCSの構成例を示した図である。
【符号の説明】
【0156】
1…接触検出部
2…アクチュエータ部
3…姿勢検出部
4…外力推定部

【特許請求の範囲】
【請求項1】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定システムであって、
前記機体の任意の箇所における外界との接触状態を検出する分布型接触状態検出手段と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての外力の作用状態を推定する外力推定手段と、
を具備することを特徴とする外力推定システム。
【請求項2】
前記既知項算出手段は、操作空間上でダイナミクス演算により操作空間慣性逆行列及びバイアス加速度を求め、
前記外力推定手段は、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、外力の作用状態を推定する、
ことを特徴とする請求項1に記載の外力推定システム。
【請求項3】
前記既知項算出手段は、前記の操作空間ダイナミクス演算を、順動力学演算を用いて行なう、
ことを特徴とする請求項2に記載の外力推定システム。
【請求項4】
前記外力推定手段は、加速度と外力の間で成立する線形相補性問題を形成し、該問題を解くことにより、外力の作用状態を推定する、
ことを特徴とする請求項2に記載の外力推定システム。
【請求項5】
前記運動状態計測手段は、所定の部位における姿勢及び位置を求める、
ことを特徴とする請求項2に記載の外力推定システム。
【請求項6】
前記外力推定手段は、前記分布型接触状態検出手段により外界との接触が検出された部位に作用する外力を推定する、
ことを特徴とする請求項2に記載の外力推定システム。
【請求項7】
前記外力推定手段は、前記分布型接触状態検出手段により外界との接触が検出された部位において、当該部位の外形から得られる作用方向についての外力を推定する、
ことを特徴とする請求項2に記載の外力推定システム。
【請求項8】
前記外力推定手段は、前記分布型接触状態検出手段により外界との接触が検出された部位における垂直反力を推定する、
ことを特徴とする請求項7に記載の外力推定システム。
【請求項9】
前記外力推定手段は、前記分布型接触状態検出手段により外界との接触が検出された部位における摩擦力を推定する、
ことを特徴とする請求項7に記載の外力推定システム。
【請求項10】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定システムであって、
前記機体の任意の領域における外界との接触状態を検出する分布型面接触状態検出手段と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての外力を推定する外力推定手段と、
を具備することを特徴とする外力推定システム。
【請求項11】
前記既知項算出手段は、操作空間上でダイナミクス演算により操作空間慣性逆行列及びバイアス加速度を求め、
前記外力推定手段は、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、外力を推定する、
ことを特徴とする請求項10に記載の外力推定システム。
【請求項12】
前記既知項算出手段は、前記の操作空間ダイナミクス演算を、順動力学演算を用いて行なう、
ことを特徴とする請求項11に記載の外力推定システム。
【請求項13】
前記外力推定手段は、加速度と外力の間で成立する線形相補性問題を形成し、該問題を解いて外力の作用状態を推定する、
ことを特徴とする請求項11に記載の外力推定システム。
【請求項14】
前記外力推定手段は、前記分布型面接触状態検出手段により外界と接触していることが検出された領域の外形上の点に作用する外力を推定する、
ことを特徴とする請求項10に記載の外力推定システム。
【請求項15】
前記外力推定手段は、前記分布型面接触状態検出手段により外界と接触していることが検出された領域の外形を構成する各頂点に作用する外力を求め、その重心位置に外力が印加されたものと推定する、
ことを特徴とする請求項10に記載の外力推定システム。
【請求項16】
複数の可動関節を備えた機体と、外力が作用する作用点を有するロボット装置に作用する外力を推定する外力推定システムであって、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手段と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手段と、
前記作用点における前記ロボット装置の運動方程式を設定する運動方程式設定手段と、
前記アクチュエータ現在状態計測手段により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手段により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手段と、
前記運動方程式上の未知項としての作用点における外力を推定する外力推定手段と、
を具備することを特徴とする外力推定システム。
【請求項17】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定方法であって、
前記機体の任意の箇所における外界との接触状態を検出する分布型接触状態検出ステップと、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測ステップと、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測ステップと、
前記ロボット装置の運動方程式を設定する運動方程式設定ステップと、
前記アクチュエータ現在状態計測ステップにより得られる各関節アクチュエータの現在状態、及び前記運動状態計測ステップにより得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出ステップと、
前記運動方程式上の未知項としての外力の作用状態を推定する外力推定ステップと、
を具備することを特徴とする外力推定方法。
【請求項18】
前記既知項算出ステップでは、操作空間上でダイナミクス演算により操作空間慣性逆行列及びバイアス加速度を求め、
前記外力推定ステップでは、操作空間慣性逆行列及びバイアス加速度の間に前記運動方程式に合致する関係が成立するように、外力の作用状態を推定する、
ことを特徴とする請求項17に記載の外力推定方法。
【請求項19】
前記既知項算出ステップでは、前記の操作空間ダイナミクス演算を、順動力学演算を用いて行なう、
ことを特徴とする請求項18に記載の外力推定方法。
【請求項20】
前記外力推定ステップでは、加速度と外力の間で成立する線形相補性問題を形成し、該問題を解くことにより、外力の作用状態を推定する、
ことを特徴とする請求項18に記載の外力推定方法。
【請求項21】
前記運動状態計測ステップでは、所定の部位における姿勢及び位置を求める、
ことを特徴とする請求項18に記載の外力推定方法。
【請求項22】
前記外力推定ステップでは、前記分布型接触状態検出ステップにより外界との接触が検出された部位に作用する外力を推定する、
ことを特徴とする請求項18に記載の外力推定方法。
【請求項23】
前記外力推定ステップでは、前記分布型接触状態検出ステップにより外界との接触が検出された部位において、当該部位の外形から得られる作用方向についての外力を推定する、
ことを特徴とする請求項18に記載の外力推定方法。
【請求項24】
前記外力推定ステップでは、前記分布型接触状態検出ステップにより外界との接触が検出された部位における垂直反力を推定する、
ことを特徴とする請求項23に記載の外力推定方法。
【請求項25】
前記外力推定ステップでは、前記分布型接触状態検出ステップにより外界との接触が検出された部位における摩擦力を推定する、
ことを特徴とする請求項23に記載の外力推定方法。
【請求項26】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定する外力推定方法であって、
前記機体の任意の領域における外界との接触状態を検出する分布型面接触状態検出ステップと、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測ステップと、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測ステップと、
前記ロボット装置の運動方程式を設定する運動方程式設定ステップと、
前記アクチュエータ現在状態計測ステップにより得られる各関節アクチュエータの現在状態、及び前記運動状態計測ステップにより得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出ステップと、
前記運動方程式上の未知項としての外力を推定する外力推定ステップと、
を具備することを特徴とする外力推定方法。
【請求項27】
前記外力推定ステップでは、前記分布型面接触状態検出ステップにより外界と接触していることが検出された領域の外形上の点に作用する外力を推定する、
ことを特徴とする請求項26に記載の外力推定方法。
【請求項28】
前記外力推定ステップでは、前記分布型面接触状態検出ステップにより外界と接触していることが検出された領域の外形を構成する各頂点に作用する外力を求め、その重心位置に外力が印加されたものと推定する、
ことを特徴とする請求項26に記載の外力推定方法。
【請求項29】
複数の可動関節を備えた機体と、外力が作用する作用点を有するロボット装置に作用する外力を推定する外力推定方法であって、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測ステップと、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測ステップと、
前記作用点における前記ロボット装置の運動方程式を設定する運動方程式設定ステップと、
前記アクチュエータ現在状態計測ステップにより得られる各関節アクチュエータの現在状態、及び前記運動状態計測ステップにより得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出ステップと、
前記運動方程式上の未知項としての作用点における外力を推定する外力推定ステップと、
を具備することを特徴とする外力推定方法。
【請求項30】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
前記機体の任意の箇所における外界との接触状態を検出する分布型接触状態検出手順と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手順と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手順と、
前記ロボット装置の運動方程式を設定する運動方程式設定手順と、
前記アクチュエータ現在状態計測手順により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手順により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手順と、
前記運動方程式上の未知項としての外力の作用状態を推定する外力推定手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【請求項31】
複数の可動関節を備えた機体からなるロボット装置に作用する外力を推定するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
前記機体の任意の領域における外界との接触状態を検出する分布型面接触状態検出手順と、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測手順と、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測手順と、
前記ロボット装置の運動方程式を設定する運動方程式設定手順と、
前記アクチュエータ現在状態計測手順により得られる各関節アクチュエータの現在状態、及び前記運動状態計測手順により得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出手順と、
前記運動方程式上の未知項としての外力を推定する外力推定手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【請求項32】
複数の可動関節を備えた機体と、外力が作用する作用点を有するロボット装置に作用する外力を推定するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
各関節アクチュエータにおける現在の位置、速度、発生力を計測するアクチュエータ現在状態計測ステップと、
前記機体上の少なくとも1箇所において加速度及び角速度を計測する運動状態計測ステップと、
前記作用点における前記ロボット装置の運動方程式を設定する運動方程式設定ステップと、
前記アクチュエータ現在状態計測ステップにより得られる各関節アクチュエータの現在状態、及び前記運動状態計測ステップにより得られる前記ロボット装置の現在状態から、前記運動方程式上の既知項を算出する既知項算出ステップと、
前記運動方程式上の未知項としての作用点における外力を推定する外力推定ステップと、
を実行させることを特徴とするコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2007−30054(P2007−30054A)
【公開日】平成19年2月8日(2007.2.8)
【国際特許分類】
【出願番号】特願2005−212629(P2005−212629)
【出願日】平成17年7月22日(2005.7.22)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】