説明

経路計画生成装置および該方法ならびにロボット制御装置およびロボットシステム

【課題】本発明は、コミュニケーションにより生じた動作の遷移をスムーズに行う経路計画を生成し得る経路計画生成装置、該方法、ロボット制御装置およびロボットシステムを提供する。
【解決手段】本発明の経路計画作成部22は、複数のモーションデータを記憶するモーションデータ記憶部31と、動作の遷移の必要が生じた場合に、各モーションデータについて実行中の一の動作での所定の第1姿勢と他の動作での所定の第2姿勢との距離を求める距離演算部32と、第1閾値以下の前記距離を与える他の動作のモーションデータを選択する遷移先選択部33と、第1姿勢までのデータと第2姿勢以降のデータとを連結して新たな経路計画のデータを生成する経路計画部34とを備え、経路計画部34は、第1および第2姿勢間の距離が第1閾値以下でこの第1閾値よりも小さい第2閾値以上である場合に第1および第2姿勢間の経路のデータを確率的ロードマップ法で生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットの経路計画を生成する経路計画生成装置および経路計画生成方法に関する。そして、本発明は、この経路計画生成装置を備えたロボット制御装置およびロボットシステムに関する。
【背景技術】
【0002】
例えば産業用ロボットやロボットカー等のように、人間に代行して、ある程度自律的に連続した作業を行う機械装置、あるいは、例えばヒューマノイド型ロボットやペットロボット等のように、人間や動物等の生体を模した機械装置であるロボット(ロボットシステム)は、近年、盛んに研究および開発されており、様々な産業分野や、人間社会に導入されつつある。このようなロボットの動作は、ロボットの初期姿勢(動作開始時の姿勢)から最終姿勢(動作終了時の姿勢、目標姿勢)に至る連続な複数の姿勢の経路(経路計画)を与えることによって実現される。このような経路計画は、大別、2つの手法によって与えられている。その1つは、複数の動作に応じた複数の経路計画を予め記憶しておき、制御指令が与えられるとこの制御指令に応じた動作の経路計画が前記複数の経路計画の中から選択される。もう1つは、例えば、確率的ロードマップ法(ランダム化ロードマップ法、例えば、非特許文献1および非特許文献2参照)に代表されるように、制御指令が与えられるとこの制御指令に応じた動作の経路計画が自動的に作成される。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】S.M.Lavalle and J.J.Kuffner,Jr.,”Randomized Kinodynamic planning”,Proc of IEEE Int. Conf.on Robotics and Automation,1999
【非特許文献2】James J.Kuffner,Jr.,Steven M.LaValle,”RRT-Connect:An Efficient Approach to Single-Query Path Planning”,In Proc.2000 IEEE Int’l Conf. on Robotics and Automation
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、人間とコミュニケーションを行うロボットでは、そのコミュニケーションとして音声対話だけでなく、インタラクティブな動作としてボディジェスチャも重要である。この人間とのコミュニケーションをすべて想定することは困難であるため、このようなボディジェスチャを実現させる経路計画を、上述した前者のように、すべて予め用意しておくことは、困難である。
【0005】
その一方で、上述した後者の確率的ロードマップ法では、経路計画を予め用意しておく必要はないが、前記確率的ロードマップ法で作成される経路計画は、初期姿勢から最終姿勢に至る最適化された経路、すなわち、略最短経路であるため、例えば人間らしい余韻動作や速度制限を満たした動作等の人間とのコミュニケーションに適した動作(インタラクションに適した動作)を実現することは、困難である。
【0006】
特に、人間とのコミュニケーションでは、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じる場合があるため、人間とのコミュニケーションを実現する経路計画の作成は、一層困難である。
【0007】
本発明は、上述の事情に鑑みて為された発明であり、その目的は、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができる経路計画を生成することができる経路計画生成装置および経路計画生成方法を提供することである。そして、本発明の目的は、この経路計画生成装置を備えるロボット制御装置およびロボットシステムを提供することである。
【課題を解決するための手段】
【0008】
本発明者は、種々検討した結果、上記目的は、以下の本発明により達成されることを見出した。すなわち、本発明の一態様にかかる経路計画生成装置は、ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含むモーションデータを複数の動作に対応付けて複数記憶するモーションデータ記憶部と、前記複数の動作における一の動作の実行中に他の動作へ遷移する必要が生じた場合に、前記モーションデータ記憶部に記憶されている前記複数のモーションデータのそれぞれについて、前記実行中の一の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離を求める距離演算部と、前記距離演算部で求められた距離が所定の第1閾値以下である場合に、前記所定の第1閾値以下の距離を与える前記他のモーションデータを遷移可能なモーションデータとして選択する遷移先選択部と、前記実行中の一の動作に対応するモーションデータにおける前記第1姿勢までのデータと、前記遷移先選択部で選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータを生成する経路計画部とを備え、前記経路計画部は、前記第1姿勢と前記遷移先選択部で選択された他のモーションデータにおける第2姿勢との距離が前記所定の第1閾値以下であって、前記所定の第1閾値よりも小さい所定の第2閾値以上である場合に、前記第1姿勢から前記遷移先選択部で選択された他のモーションデータにおける前記第2姿勢に至る経路のデータを確率的ロードマップ法によって生成することを特徴とする。
【0009】
そして、本発明の他の一態様にかかる経路計画生成方法は、予め与えられているロボットの複数の動作における一の動作の実行中に他の動作へ遷移する必要が生じた場合に、前記ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含む、前記複数の動作にそれぞれ対応する複数のモーションデータのそれぞれについて、前記実行中の一の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離を求める距離演算ステップと、前記距離演算ステップで求められた距離が所定の第1閾値以下である場合に、前記所定の第1閾値以下の距離を与える前記他のモーションデータを遷移可能なモーションデータとして選択する遷移先選択ステップと、前記実行中の一の動作に対応するモーションデータにおける前記第1姿勢までのデータと、前記遷移先選択ステップで選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータを生成する経路計画生成ステップとを備え、前記経路計画生成ステップは、前記第1姿勢と前記遷移先選択ステップで選択された他のモーションデータにおける第2姿勢との距離が前記所定の第1閾値以下であって、前記所定の第1閾値よりも小さい所定の第2閾値以上である場合に、前記第1姿勢から前記遷移先選択ステップで選択された他のモーションデータにおける前記第2姿勢に至る経路のデータを確率的ロードマップ法によって生成することを特徴とする。
【0010】
このような構成の経路計画生成装置および経路計画生成方法では、複数のモーションデータが複数の動作に対応付けて予め与えられる。このため、例えばモーションキャプチャによって、例えば人間らしい余韻動作や速度制限を満たした動作等の人間とのコミュニケーションに適した動作(インタラクションに適した動作)のモーションデータを予め生成しておくことができ、これらモーションデータによってロボットに人間とのコミュニケーションに適した動作を行わせることができる。
【0011】
そして、このような構成の経路計画生成装置および経路計画生成方法では、一の動作の実行中に他の動作へ遷移する必要が生じた場合に、予め与えられている複数のモーションデータのそれぞれについて、この実行中の一の動作に対応するモーションデータにおける遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離が求められ、この求められた距離が所定の第1閾値以下である場合に、この所定の第1閾値以下の距離を与える他のモーションデータが遷移可能なモーションデータとして選択され、そして、この実行中の一の動作に対応するモーションデータにおける第1姿勢までのデータと、この選択された他のモーションデータにおける第2姿勢以降のデータとが連結され、新たな経路計画のデータが生成される。ここで、これら第1姿勢までのデータと第2姿勢以降のデータとの連結に当たって、これら第1姿勢と第2姿勢との距離が前記所定の第1閾値以下であって、前記所定の第1閾値よりも小さい所定の第2閾値以上である場合に、これら第1姿勢から第2姿勢に至る経路のデータが確率的ロードマップ法によって生成される。このため、このような構成の経路計画生成装置および経路計画生成方法は、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じた場合にも、前記予め与えられている複数のモーションデータに基づいて新たな経路計画を生成することができ、しかも、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移する新たな経路計画を自動的に生成することができる。
【0012】
また、他の一態様では、上述の経路計画生成装置において、前記第2姿勢は、前記他の動作における前半部分の姿勢であることを特徴とする。
【0013】
この構成によれば、第2姿勢が他の動作における前半部分の姿勢に限定されることによって、情報処理量が軽減され、より短時間で遷移可能なモーションデータを選択することが可能となる。ひいては、人間とのコミュニケーションの際に、人間の働きかけに対して遅れの少ない応答が可能となり、人間とのコミュニケーションにより適した動作となる。
【0014】
そして、本発明の他の一態様にかかる経路計画生成装置は、ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含むモーションデータを複数の動作に対応付けて複数記憶するモーションデータ記憶部と、前記複数の動作の中から見本動作が見本動作として指定された場合に、前記指定された一の動作に類似する動作を類似動作として前記モーションデータ記憶部に記憶されている前記複数のモーションデータに基づいて前記複数の動作の中から探索する類似動作探索部と、前記類似動作探索部で探索された類似動作で前記ロボットを動作させた場合におけるロボットの所定の部分の軌跡から構成される凸包内に目標位置を設定する目標位置設定部と、前記目標位置設定部で設定された前記目標位置について、前記類似動作探索部で探索された類似動作をWelschの重み関数を用いた重み係数で補間することによって合成する類似動作合成部とを備えることを特徴とする。
【0015】
そして、本発明の他の一態様にかかる経路計画生成方法は、予め与えられているロボットの複数の動作の中から一の動作が見本動作として指定された場合に、前記指定された見本動作に類似する動作を類似動作として、前記ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含む複数のモーションデータに基づいて前記複数の動作の中から探索する類似動作探索ステップと、前記類似動作探索ステップで探索された類似動作で前記ロボットを動作させた場合におけるロボットの所定の部分の軌跡から構成される凸包内に目標位置を設定する目標位置設定ステップと、前記目標位置設定ステップで設定された前記目標位置について、前記類似動作探索ステップで探索された類似動作をWelschの重み関数を用いた重み係数で補間することによって合成する類似動作合成ステップとを備えることを特徴とする。
【0016】
このような構成の経路計画生成装置および経路計画生成方法では、複数のモーションデータが複数の動作に対応付けて予め与えられる。このため、上述したように、前記人間とのコミュニケーションに適した動作のモーションデータを予め生成しておくことができ、これらモーションデータによってロボットに人間とのコミュニケーションに適した動作を行わせることができる。
【0017】
そして、このような構成の経路計画生成装置および経路計画生成方法では、類似動作がWelschの重み関数を用いた重み係数で補間されることによって合成されるので、例えばKovarの再帰的な類似動作探索法のように重み係数の最適化を行う必要がない。このため、このような構成の経路計画生成装置は、情報処理量が軽減され、より短時間で類似動作の合成が可能となる。ひいては、人間とのコミュニケーションの際に、人間の働きかけに対して遅れの少ない応答が可能となり、人間とのコミュニケーションにより適した動作となる。
【0018】
また、他の一態様では、上述の経路計画生成装置において、前記目標位置と前記類似動作合成部で合成された合成動作による合成位置との偏差が所定の第3閾値以上である場合には、確率的ロードマップ法によって前記合成動作を補正する合成動作補正部をさらに備えることを特徴とする。
【0019】
この構成によれば、確率的ロードマップ法によって前記合成動作が補正されるので、より精度よい合成動作を生成することが可能となる。
【0020】
そして、本発明の他の一態様にかかるロボット制御装置は、上述のいずれかの経路計画生成装置と、前記経路計画生成装置から出力されるモーションデータに従った動作をロボットにさせる制御信号を生成して出力する制御信号出力部とを備えることを特徴とする。
【0021】
この構成によれば、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができる経路計画の制御信号をロボットへ出力することができるロボット制御装置が提供される。
【0022】
そして、本発明の他の一態様にかかるロボットシステムは、ロボットと、前記ロボットを制御するロボット制御部とを備え、前記ロボット制御部は、上述のロボット制御装置であることを特徴とする。
【0023】
この構成によれば、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができるロボットシステムが提供される。
【発明の効果】
【0024】
本発明にかかる経路計画生成装置および経路計画生成方法は、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができる経路計画を生成することができる。本発明にかかるロボット制御装置は、前記或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができる経路計画の制御信号をロボットへ出力することができる。そして、本発明にかかるロボットシステムは、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要が生じた場合に、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移することができる。
【図面の簡単な説明】
【0025】
【図1】実施形態におけるロボットシステムの構成を示すブロック図である。
【図2】第1実施形態のロボットシステムにおけるロボット部を示す図である。
【図3】第1実施形態のロボットシステムにおけるロボット制御部の構成を示すブロック図である。
【図4】第1実施形態のロボット制御部におけるモーショングラフを示す図である。
【図5】モーショングラフの生成によって連結されたモーションデータによるロボット部の動作例を示す図である。
【図6】第1実施形態のロボットシステムにおけるロボット制御部の動作を示すフローチャートである。
【図7】第1実施形態のロボットシステムにおける遷移可能なモーションデータの探索処理を説明するための図である。
【図8】第1実施形態のロボットシステムにおける新経路計画生成の処理を示すフローチャートである。
【図9】第1実施形態のロボットシステムにおけるロボット部の動作例を示す図である。
【図10】第2実施形態のロボットシステムにおけるロボット制御部の構成を示すブロック図である。
【図11】第2実施形態のロボットシステムにおけるロボット制御部の動作を示すフローチャートである。
【図12】目標動作および類似動作の一例を説明するための図である。
【図13】偏差補正前における、目標位置に対応する合成動作による位置を示す図である。
【図14】確率的ロードマップ法による補正後の合成動作の一例を説明するための図である。
【発明を実施するための形態】
【0026】
以下、本発明にかかる実施の一形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、適宜、その説明を省略する。また、本明細書において、総称する場合には添え字を省略した参照符号で示し、個別の構成を指す場合には添え字を付した参照符号で示す。
【0027】
(第1実施形態)
図1は、実施形態におけるロボットシステムの構成を示すブロック図である。図2は、第1実施形態のロボットシステムにおけるロボット部を示す図である。図2(A)は、ロボット部1の外観を示し、図2(B)は、ロボット部1をモデル化したシミュレーションモデルの外観を示す。図3は、第1実施形態のロボットシステムにおけるロボット制御部の構成を示すブロック図である。図4は、第1実施形態のロボット制御部におけるモーショングラフを示す図である。図5は、モーショングラフの生成によって連結されたモーションデータによるロボット部1の動作例を示す図である。
【0028】
ロボットシステムSAは、例えば産業用ロボットやロボットカー等のように、人間に代行して、ある程度自律的に連続した作業を行う機械装置、あるいは、例えばヒューマノイド型ロボットやペットロボット等のように、人間や動物等の生体を模した機械装置であって、人間とコミュニケーションを行う装置であり、例えば、図1に示すように、機構のロボット部1と、ロボット部1を制御するロボット制御部2Aとを備えて構成される。
【0029】
ロボット部1は、ある程度自律的に連続した作業を行う機械装置、あるいは、人間や動物等の生体を模した機械装置であるロボット本体であり、例えば、複数のリンク部材(支持部材、線状の部材)と、前記複数のリンク部材のうちの一のリンク部材を他のリンク部材に所定の自由度で連結する1または複数の連結部材と、前記一のリンク部材および前記他のリンク部材を相対的に移動させる1または複数の駆動部と、ロボット制御部2Aから入力された制御信号に基づいて前記駆動部を制御する駆動制御部とを備えて構成される。ロボット部1は、1対のリンク部材と、前記1対のリンク部材を連結する連結部材と、前記1対のリンク部材を互いに相対的に移動させる駆動部とを備えて構成される単関節ロボットであってもよく、あるいは、複数のリンク部材と、前記複数のリンク部材のうちの一のリンク部材を他のリンク部材に連結する複数の連結部材と、前記一のリンク部材および前記他のリンク部材を相対的に移動させる複数の駆動部とを備えて構成される多関節ロボットであってもよい。このようなロボット部1は、一具体例として、図2(A)に示す、(株)ココロのヒューマノイドロボットであるアクトロイドSITを挙げることができる。
【0030】
ロボット制御部2Aは、ロボット部1が所定の動作を行うようにロボット部1を制御する装置であり、例えば、図3に示すように、一の動作の実行中に他の動作へ遷移指令を受け付ける入力部21と、入力部21で前記遷移指令を受け付けた場合に、前記実行中の動作から遷移可能な動作を選択してロボット部1の経路計画を生成する経路計画生成部22と、経路計画生成部22から出力される経路計画に従った動作をロボット部1に行わせる制御信号を生成して出力する制御信号出力部23とを備えて構成される。
【0031】
入力部21は、人間とのコミュニケーションを図るための装置であり、例えば、音声を入力するための音声入力部と、前記音声入力部に入力された音声の意味を解析する音声解析部と、前記音声解析部で解析した音声の意味が実行中の動作と異なる他の動作をロボット部1に要求するものであるか否かを判断し、この判断の結果、前記他の動作を要求するものである場合にイベント信号を出力するイベント出力部とを備えて構成される。また例えば、入力部21は、人間の動作を入力すべく、光学系によって捉えた光像を撮像するカメラ部と、前記カメラ部で撮像された人間の動作の意味を解析する動作解析部と、前記動作解析部で解析した人間の動作の意味が実行中の動作と異なる他の動作をロボット部1に要求するものであるか否かを判断し、この判断の結果、前記他の動作を要求するものである場合にイベント信号を出力するイベント出力部とを備えて構成される。実行中の動作と異なる他の動作をロボット部1に要求するものは、予めロボット制御部2Aに記憶され、登録される。また例えば、入力部21は、キーボードや所定のスイッチを備え、前記他の動作を直接的に入力する入力装置であってもよい。
【0032】
経路計画生成部22は、ロボット部1の経路計画を生成する装置であり、例えば、図3に示すように、モーションデータ記憶部31と、距離演算部32と、遷移先選択部33と、経路計画部34とを備えて構成される。
【0033】
モーションデータ記憶部31は、ロボット部1が行う複数の動作に対応する複数のモーションデータを記憶するものである。前記複数の動作には、例えばあいさつ動作、肯定動作、否定動作および手差し動作等の、人間とのコミュニケーションを図るための動作が含まれる。モーションデータは、ロボット部1を動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含む。モーションデータの各データは、例えば、3次元xyz座標系におけるロボット部1の各関節位置を示すデータであって良く、ロボット部1の各関節角度を各座標軸とする多次元座標系におけるロボット部1の各関節角度を示すデータであって良い。このようなモーションデータの各データが動作(モーション)を特定し識別するための識別子(動作識別子、モーション識別子)に対応付けられて経路計画の経路順にモーションデータ記憶部31に記憶される。
【0034】
ロボット部1の各リンク部材の長さ(各関節間の距離)は、ロボット部1が与えられれば一意に決定されるので、このような3次元xyz座標系におけるデータと、多次元座標系におけるデータとは、相互に変換することが可能であり、また、例えばヒューマノイド型ロボットにおける手先位置の座標やロボットアームにおけるアームの先端位置等のロボット部1における任意の部分(部位)の位置も演算可能である。
【0035】
複数のモーションデータは、モーショングラフを形成可能な形式でモーションデータ記憶部31に記憶される。モーショングラフは、例えば、図4に示すように、モーションデータの各姿勢(初期姿勢、中間姿勢および最終姿勢)が各ノード(初期ノード、中間ノードおよび最終ノード)に割り当てられており、初期姿勢から中間姿勢を介して最終姿勢に至る経路がこれら各ノードを前記経路に従ってアークで結ぶことによって表記された有向グラフである。各ノードは、図4では、○で表記されており、各アークは、矢印付きの線分で表記されている。図4に示すモーショングラフは、17種類の動作に対応する17個のモーションデータから構成されており、図4には、これら17個の各モーションデータを識別し特定するために、ノードを表す○内に、17個の各モーションデータに対応する番号がそのモーション識別子として記載されている。したがって、例えば、モーションデータ記憶部31には、アークを表すアーク情報として、各ノードを識別し特定するための識別子(ノード識別子)と前記ノード識別子のノードにおける連結先のノードのノード識別子が互いに対応付けられて記憶される。
【0036】
そして、モーショングラフでは、図4に示すように、各ノード間の各姿勢における所定の距離がそれぞれ演算され、この演算された各ノード間の各距離が所定の第2閾値th2以下である場合に、連結可能なノードとして、その距離が所定の第2閾値th2以下である1対のノード間にアークが生成されている。例えば、図4に破線で囲うことで示すように、第11番目のモーションデータは、中間姿勢における所定の姿勢(ノードN11−2)で、第2番目のモーションデータにおける中間姿勢における所定の姿勢(ノードN2−2)と連結可能であるとともに、第10番目のモーションデータにおける中間姿勢における所定の姿勢(ノードN10−3)と連結可能である。
【0037】
前記所定の第2閾値th2は、後述の所定の第1閾値th1よりも小さい値であり、次の式1(式1−1、式1−2)に示す1対のノード間の線形補間によって、例えば姿勢が飛ぶような不自然な動作や自己干渉動作等のように、人間とのコミュニケーションを図るための動作として不適当な動作を生じることなく、前記1対のノードにおける一方の姿勢から他方の姿勢へ遷移する場合における中間姿勢のデータを生成可能な値である。
=α(k)Ai+k+(1−α(k))Bj−m+1+k ・・・(1−1)
α(k)=2((k+1)/m)−3((k+1)/m)+1 ・・・(1−2)
ここで、Aは、動作Aにおけるi番目の姿勢であり、Bは、動作Bにおけるj番目の姿勢であり、Cは、k番目の補間動作C(|C|=m)である。
【0038】
一例として、このようなモーショングラフの生成によって連結されたモーションデータによるロボット部1の動作の様子を図5に示す。図5には、第11番目のモーションデータに対応する動作(図5中左側)において、そのノードN11−2の中間姿勢から第2番目のモーションデータに対応する動作におけるノードN2−2の中間姿勢へ遷移し、その中間姿勢以降の、第2番目のモーションデータに対応する動作を行う様子(図5中右側上段)、第10番目のモーションデータに対応する動作におけるノードN10−3の中間姿勢へ遷移し、その中間姿勢以降の、第10番目のモーションデータに対応する動作を行う様子(図5中右側中段)、および、前記ノードN11−2の中間姿勢以降の、第11番目のモーションデータに対応する動作を行う様子(図5中右側下段)が示されている。
【0039】
モーションデータ記憶部31には、各モーショングラフにおける各ノード間の各姿勢における各距離も記憶されることが好ましい。
【0040】
なお、1対のノード間における各姿勢(第1姿勢および第2姿勢)間における所定の距離は、例えば、単関節ロボットである場合には前記第1姿勢の前記関節位置と前記第2姿勢の前記関節位置との間の距離であり、そして、多関節ロボットである場合には前記第1姿勢の各関節位置とこれに対応する前記第2姿勢の各関節位置とのそれぞれの間における各距離の和である。また、前記所定の距離の代わりに、第1姿勢と第2姿勢との類似度が演算されてもよく、ロボット部1が前記アクトロイドSITである場合では、前記空気圧アクチュエータの指令値を用いて類似度が演算されてもよい。類似度は、例えば、前記所定の距離の逆数である。
【0041】
第1実施形態のモーションデータ記憶部31には、ノード識別子と、前記ノード識別子のノードに対応する姿勢の属するモーションのモーション識別子と、前記ノード識別子のノードに対応する姿勢(初期姿勢、中間姿勢、最終姿勢)を表すモーションデータのデータ(座標データおよび経路計画における経路順)と、前記ノード識別子のノードにおける連結先のノードのノード識別子と、前記ノード識別子のノードに対応する姿勢および前記ノード識別子のノードにおける連結先のノードに対応する姿勢間の距離(1対のノード間における各姿勢間の距離)とが互いに対応付けられて記憶される。
【0042】
距離演算部32は、複数の動作における一の動作をロボット部1に実行させている間に他の動作へ遷移する必要が生じると、モーションデータ記憶部31に記憶されている複数のモーションデータのそれぞれについて、この実行中の一の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離を求めるものである。複数の動作における一の動作をロボット部1に実行させている間に他の動作へ遷移する必要が生じたか否かは、本実施形態では、入力部21より前記イベント信号を受け付けた否かによって判断され、入力部21より前記イベント信号を受け付けた場合に、複数の動作における一の動作をロボット部1に実行させている間に他の動作へ遷移する必要が生じた場合と判断される。他のモーションデータは、モーションデータ記憶部31に記憶されている複数のモーションデータのうちの、実行中の一の動作に対応するモーションデータを除くモーションデータである。
【0043】
距離演算部32における前記第1姿勢と前記第2姿勢との間における距離を求めることは、前記第1姿勢と前記第2姿勢との間における距離を実際に演算しても良いが、本実施形態では、上述したように、各姿勢間の各距離が予めモーションデータ記憶部31に記憶されているので、これに対応する距離をモーションデータ記憶部31から読み込むことで実現される。
【0044】
遷移先選択部33は、距離演算部32で求められた距離が所定の第1閾値th1以下である場合に、この所定の第1閾値th1以下の距離を与える前記他のモーションデータを遷移可能なモーションデータとして選択するものである。
【0045】
この所定の第1閾値th1は、前記所定の第2閾値th2よりも大きい値であり、1対の姿勢(第1および第2姿勢)においてどの程度の範囲まで第1姿勢から第2姿勢への遷移を認めるか否かを設定する値であり、その値が大きくなるに従って第1姿勢から第2姿勢への遷移を認める範囲が広くなり、言い換えれば、遷移先のモーションデータの広狭を設定する値であり、その値が大きくなるに従って遷移先のモーションデータが広くなり、多くなる。この所定の第1閾値th1は、ロボットシステム1の仕様等によって適宜に設定される。
【0046】
経路計画部34は、実行中の一の動作に対応するモーションデータにおける前記第1姿勢までのデータと、遷移先選択部33で選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータを生成するものである。そして、注目すべきは、本実施形態の経路計画部34は、前記第1姿勢と遷移先選択部33で選択された他のモーションデータにおける第2姿勢との距離が前記所定の第1閾値th1以下であって前記所定の第2閾値th2以上である場合に、前記第1姿勢から遷移先選択部33で選択された他のモーションデータにおける前記第2姿勢に至る経路のデータを確率的ロードマップ法によって生成する。
【0047】
制御信号出力部23は、経路計画生成部22から入力された経路計画に従った動作をロボット部1にさせるべく、経路計画生成部22から入力される経路計画のデータをロボット部1の構成に応じてロボット部1で処理可能なデータに変換して制御信号として出力する装置である。例えば、ロボット部1の前記駆動部が空気圧アクチュエータである場合には、制御信号出力部23は、空気圧アクチュエータに対応した信号に変換する。また例えば、ロボット部1の前記駆動部が電磁式モータである場合には、制御信号出力部23は、電磁式モータに対応した信号に変換する。
【0048】
このような経路計画生成部22は、例えばマイクロコンピュータ、ノート型パーソナルコンピュータおよびディスクトップ型パーソナルコンピュータ等のコンピュータによって構成可能であり、所定の経路計画生成プログラムを実行させることによってコンピュータに機能的に距離演算部32、遷移先選択部33および経路計画部34が構成される。
【0049】
次に、第1実施形態のロボットシステム2Aの動作について説明する。図6は、第1実施形態のロボットシステムにおけるロボット制御部の動作を示すフローチャートである。図7は、第1実施形態のロボットシステムにおける遷移可能なモーションデータの探索処理を説明するための図である。図8は、第1実施形態のロボットシステムにおける新経路計画生成の処理を示すフローチャートである。図9は、第1実施形態のロボットシステムにおけるロボット部の動作例を示す図である。
【0050】
ロボットシステム2Aは、例えば図略の電源スイッチの投入や起動命令の受付等によって起動し、ロボット部1は、ロボット制御部2Aの制御に従った動作を始める。ロボットシステムSAは、人間に出会うと必要に応じて前記人間とコミュニケーションを図り、モーションデータ記憶部31に記憶されているモーションデータに基づいて前記コミュニケーションの種類に応じた所定の動作を実行する。そして、前記人間とコミュニケーションによって前記所定の動作の実行中に他の動作へ遷移する必要が生じた場合に、この動作の実行中にロボット制御部2Aの入力部21から経路計画生成部22へイベント信号が出力される。このイベント信号が入力されると、ロボット制御部2Aの経路計画生成部22は、次のように動作する。
【0051】
図6において、まず、ステップS11では、距離演算部32によって、モーションデータ記憶部31に記憶されている複数のモーションデータのそれぞれについて、この実行中の前記所定の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離が求められる。
【0052】
より具体的には、図7に示すように、モーションデータ記憶部31に記憶されている複数のモーションデータの中から1つのモーションデータ、例えば動作bのモーションデータが選択され、実行中の動作aに対応するモーションデータにおける前記遷移の必要が生じた時点(要遷移発生時点t1)以降の第1姿勢、例えばノードNa−pの姿勢が選択され、動作bのモーションデータにおける複数の姿勢の中から1つの姿勢、例えばノードNb−1が第2姿勢として選択され、この第1姿勢(ノードNa−p)と第2姿勢(ノードNb−1)との距離が求められる。そして、この距離が動作bのモーションデータにおける各姿勢(ノードNb−1、ノードNb−2、・・・)についてそれぞれ求められ、さらに、この距離がモーションデータ記憶部31に記憶されている各モーションデータについてそれぞれ求められる。
【0053】
前記要遷移発生時点t1の第1姿勢は、要遷移発生時点t1直後の姿勢であってもよく、要遷移発生時点t1と第1姿勢として選択された姿勢との間に1または複数の姿勢があってもよく、要遷移発生時点t1以降の姿勢であればいずれの姿勢であってよい。図7に示す例では、要遷移発生時点t1以降の2番目の姿勢が第1姿勢として選択されている。例えば、前記要遷移発生時点t1の第1姿勢は、新たな経路計画の生成に必要な情報処理時間を考慮して適宜に決定される。
【0054】
前記第1姿勢との間の距離を求める第2姿勢は、動作bのモーションデータ(他のモーションデータ)のすべての各姿勢であってもよいが、動作b(他の動作b)の所定範囲の姿勢(接続可能範囲の姿勢)、例えば図7に示すように、動作b(他の動作)における前半部分の姿勢に限定されてもよい。このように第2姿勢の範囲を限定することによって、情報処理量が軽減され、より短時間で遷移可能なモーションデータを選択することが可能となる。ひいては、人間とのコミュニケーションの際に、人間の働きかけに対して遅れの少ない応答が可能となり、人間とのコミュニケーションにより適した動作となる。
【0055】
続いて、ステップS12では、遷移先選択部33によって、この距離演算部32で求められた距離が所定の第1閾値th1以下であるか否かが判断され、前記距離が所定の第1閾値th1以下である場合に、この所定の第1閾値th1以下の距離を与える前記他のモーションデータが遷移可能なモーションデータとして選択される。
【0056】
続いて、ステップS13では、経路計画部34によって、実行中の前記所定の動作に対応するモーションデータにおける前記第1姿勢までのデータと、遷移先選択部33で選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータが生成される。例えば、図7において、ノードNa−pの第1姿勢がノードNb−qの第2姿勢に遷移可能であるとすると、動作aのモーションデータにおけるノードNa−pまでのデータに、動作bのモーションデータにおけるノードNb−q以降のデータが連結され、新たな経路計画の経路を表すデータが生成される。
【0057】
そして、この新たな経路計画の生成において、経路計画部34によって、図8に示すように、まず、ステップS21では、前記第1姿勢と第2姿勢との間における距離が判断される。この判断の結果、前記距離が第2閾値th2未満である場合では、ステップS22の処理が実行され、上述した式1(式1−1、式1−2)で線形補間によって前記第1姿勢と第2姿勢との間の姿勢のデータが生成されて補完され、前記第1姿勢と第2姿勢とが連結される。一方、前記判断の結果、前記距離が第1閾値th1以下であって第2閾値th2以上である場合では、ステップS23の処理が実行され、確率的ロードマップ法によって前記第1姿勢と第2姿勢との間の姿勢のデータが生成されて補完され、前記第1姿勢と第2姿勢とが連結される。
【0058】
確率的ロードマップ法は、上述の非特許文献1や非特許文献2等に開示されているように公知の手法である。確率的ロードマップ法では、大略、次のように処理される。まず、ロボット部1の作業可能(動作可能)な作業空間の情報や作業不可能(動作不可能)な障害空間の情報が予め与えられ、前記第1姿勢がスタート位置(初期位置)に設定され、前記第2姿勢がゴール位置(目標位置)に設定される。これらスタート位置とゴール位置との間にランダムに複数の中間点が仮設定され、これら複数の中間点の中から所定の評価関数の値、例えば作業可能な程度を示す可操作度に従って最適な中間点が選択される。続いて、スタート位置から前記中間点の位置へ向けて軌道が伸ばされ、干渉(障害、接触)が生じるとその位置で軌道が止められる。同様に、ゴール位置から前記中間点の位置へ向けて軌道が伸ばされ、干渉が生じるとその位置で軌道が止められる。軌道が止まった各位置がそれぞれ新たなスタート位置およびゴール位置とされ、最初のスタート位置から最初のゴール位置まで軌道が連結されるまで、上記処理が繰り返される。
【0059】
なお、ロボット部1が図2(A)に示すアクトロイドSITである場合では、確率的ロードマップ法における前記干渉の判定には、図2(B)に示すOpen Dynamics Engine(ODE)を用いて作成された物理モデルが利用された。
【0060】
そして、新たな経路計画が生成されると、この新たな経路計画に従ってロボット制御部2Aは、ロボット部1を制御し、ロボット部1は、この新たな経路計画に従った動作を行う。
【0061】
第1実施形態のロボットシステム2Aにおけるロボット部1の動作例を図9に示す。図5と図9とを対比すると分かるように、モーショングラフの生成では、自己干渉によって連結することができなかった動作が、図9の紙面右から2列目に示すように、自己干渉を起こすことなく、かつ、違和感のなく連結されている。
【0062】
以上、説明したように、第1実施形態におけるロボットシステムSA、ロボット制御部2Aおよび経路計画生成部22では、複数のモーションデータが複数の動作に対応付けて予めモーションデータ記憶部31に記憶され与えられている。このため、本実施形態におけるロボットシステムSA、ロボット制御部2Aおよび経路計画生成部22は、例えばモーションキャプチャによって、例えば人間らしい余韻動作や速度制限を満たした動作等の人間とのコミュニケーションに適した動作(インタラクションに適した動作)のモーションデータを予め生成しておくことができ、これらモーションデータによってロボットに人間とのコミュニケーションに適した動作を行わせることができる。
【0063】
そして、第1実施形態におけるロボットシステムSA、ロボット制御部2Aおよび経路計画生成部22では、上述のように動作することで新たな経路計画が生成される。このため、本実施形態におけるロボットシステムSA、ロボット制御部2Aおよび経路計画生成部22は、或る1つの動作の実行中に、コミュニケーションによって別の動作へ遷移する必要(割り込み)が生じた場合にも、前記予め与えられている複数のモーションデータに基づいて新たな経路計画を生成することができ、しかも、前記或る1つの動作から前記別の動作へ、よりスムーズに遷移する新たな経路計画を自動的に生成することができる。
【0064】
次に、別の実施形態について説明する。
(第2実施形態)
例えば人間らしい余韻動作や速度制限を満たした動作等の人間とのコミュニケーションに適した動作を実現する手段の1つとして、複数のモーションデータの中に存在する複数の類似動作を用いることによって内挿動作や外挿動作を実現する方法があり、例えば、Kovarらの再帰的な類似動作探索を用いた動作合成方法がある(例えば、文献1;L.Kovar, and M.Gleicher. “Automated extraction and parameterization of motions in large data sets.”,ACM Trans.on Graphics,vol.23,no.3,pp.559-568,2004.参照)。
【0065】
このKovarらの手法では、類似動作の合成を行う際に、例えば予め設定されたロボットの所定の部位における目標3次元位置等の合成動作と目標動作とのパラメータ誤差が最小になるように、重み係数の最適化を行っている。しかしながら、モーショングラフ中に現れる目標動作と想定される動作パラメータのあらゆる組に対して、この最適化計算を行うことは、困難である。特に、ヒューマノイド型ロボットは、多関節であり、その動作は、多様であるから、さらに困難である。
【0066】
本実施形態にかかる経路計画生成部42、これを用いたロボット制御部2BおよびロボットシステムSBは、この点を改善したものであり、より短時間で経路計画を作成することができるものである。
【0067】
第2実施形態のロボットシステムSBは、第1実施形態のロボットシステムSAと同様に、機構のロボット部1と、ロボット部1を制御するロボット制御部2Bとを備えて構成される。ロボット部1は、第1実施形態のロボットシステムSAのロボット部1と同様である。
【0068】
図10は、第2実施形態のロボットシステムにおけるロボット制御部の構成を示すブロック図である。ロボット制御部2Bは、ロボット部1が所定の動作を行うようにロボット部1を制御する装置であり、例えば、図10に示すように、見本動作の選択指示や目標位置(動作パラメータ)の設定指示を受け付ける入力部41と、入力部21で前記見本動作の選択指示を受け付けた場合に、予め与えられているロボット部1の複数の動作の中から前記見本動作に類似する類似動作を探索して合成することによってロボット部1の経路計画を生成する経路計画生成部42と、経路計画生成部42から出力される経路計画に従った動作をロボット部1に行わせる制御信号を生成して出力する制御信号出力部43とを備えて構成される。制御信号出力部43は、第1実施形態のロボットシステムSAの制御信号出力部43と同様である。
【0069】
本実施形態の動作は、一連の複数の姿勢から成る動作であってもよく、また、1つの姿勢であってもよい。1つの姿勢は、一連の複数の姿勢から成る動作のうちで初期姿勢と最終姿勢とが一致する場合(中間姿勢がある場合は中間姿勢もこれら各姿勢に一致する場合)であるから、一連の複数の姿勢から成る動作の一態様である。
【0070】
入力部41は、外部からデータを入力するための装置であり、例えば、キーボードやマウスやタッチペン等の入力装置である。
【0071】
前記見本動作の選択は、例えば、モーション識別子を例えばキーボード等の入力部41から入力することによって行われる。また例えば、ロボット制御部2Bは、モニタ等の画像を表示する画像表示装置をさらに備え、前記画像表示装置に表示された動作の画像を例えばマウスやタッチペン等の入力部41で指定することによって行われる。このように入力部41は、見本動作を受け付ける見本動作入力部として機能する。
【0072】
前記目標位置は、前記類似動作でロボット部1を動作させた場合におけるロボット部1の所定の部分(部位)の軌跡から構成される凸包内(多角形内)に設定される。前記目標位置の設定指示は、例えば、この目標位置の例えば座標値を入力部41から入力することによって行われる。また例えば、ロボット制御部2Bは、モニタ等の画像を表示する画像表示装置をさらに備え、前記画像表示装置に、前記類似動作でロボット部1を動作させた場合におけるロボット部1の所定の部分(部位)の軌跡から構成される凸包を表示させ、その凸包内の位置を例えばマウスやタッチペン等の入力部41で指定することによって行われる。このように入力部41は、目標位置の設定指示を受け付ける目標位置入力部として機能する。
【0073】
経路計画生成部22は、ロボット部1の経路計画を生成する装置であり、例えば、図10に示すように、モーションデータ記憶部51と、類似動作探索部52と、類似動作合成部53と、合成動作補正部54とを備えて構成される。
【0074】
モーションデータ記憶部51は、第1実施形態のモーションデータ記憶部31と同様であり、ロボット部1が行う複数の動作に対応する複数のモーションデータを記憶するものである。
【0075】
類似動作探索部52は、入力部41を介して見本動作を受け付けると、この指定された見本動作に類似する動作を類似動作として、モーションデータ記憶部51に記憶されている複数のモーションデータに基づいて前記複数の動作の中から探索するものである。
【0076】
類似動作探索部52は、例えば、見本動作における各姿勢のそれぞれについて、前記複数の動作における一の動作の各姿勢との間の所定の各距離をそれぞれ求める全姿勢間距離演算部と、前記全姿勢間距離演算部で演算された各距離が予め設定された所定の第4閾値th4以下である場合に、前記一の動作を前記見本動作に類似する動作であると判定する類似判定部とを備え、前記全姿勢間距離演算部による距離演算と前記類似判定部による類似判定とを、モーションデータ記憶部51に記憶されている複数のモーションデータのそれぞれについて行う。すなわち、この類似動作探索では、見本動作の各姿勢および前記一の動作の各姿勢におけるすべての姿勢の組合せについて、その姿勢間の所定の距離が求められ、これら各姿勢間の所定の距離がすべて前記所定の第4閾値th4以下である場合に、前記一の動作が類似動作であると判定される。前記所定の距離は、第1実施形態において説明した前記所定の距離と同様である。また、前記所定の第4閾値th4は、類似範囲を規定する値であり、第4閾値th4の値が大きくに従って類似する度合いが小さくなる。前記所定の第4閾値th4は、例えば、ロボットシステムSBの仕様に応じて適宜に設定される。
【0077】
類似動作合成部53は、入力部41を介して設定された目標位置について、類似動作探索部52で探索された類似動作をWelschの重み関数を用いた重み係数で補間することによって合成するものである。
【0078】
Welschの重み関数wは、類似動作の動作パラメータをp,・・・,pとし、目的とする合成動作の動作パラメータを<p>とすると、式2で表される。
=(exp(−D(<p>,p/c)/Σexp(−D(<p>,p/c)
・・・(2)
ただし、Σは、j=1からkまでの和である。cは、目標位置(動作パラメータ)の分散に関連した定数であり、実験によって適宜に設定される。
【0079】
合成動作補正部54は、目標位置と類似動作合成部53で合成された合成動作による合成位置との偏差が所定の第3閾値th3以上である場合には、上述の確率的ロードマップ法によって前記合成動作を補正するものである。
【0080】
このような経路計画生成部42は、例えばマイクロコンピュータ、ノート型パーソナルコンピュータおよびディスクトップ型パーソナルコンピュータ等のコンピュータによって構成可能であり、所定の経路計画生成プログラムを実行させることによってコンピュータに機能的に類似動作探索部52、類似動作合成部53および合成動作補正部54が構成される。
【0081】
次に、第2実施形態のロボットシステム2Bの動作について説明する。図11は、第2実施形態のロボットシステムにおけるロボット制御部の動作を示すフローチャートである。図12は、目標動作および類似動作の一例を説明するための図である。図12(A)は、目標動作を示し、図12(B)は、その類似動作を示す。図13は、偏差補正前における、目標位置に対応する合成動作による位置を示す図である。図13の横軸は、mm単位で示すx方向の位置座標であり、その縦軸は、mm単位で示すx方向の位置座標である。また、+は、goal of quary motionを表し、×は、goal of synthesized motionを表し、□は、goal of similar motionを表し、△は、goal of corrected motionを表す。図14は、確率的ロードマップ法による補正後の合成動作の一例を説明するための図である。
【0082】
図11において、まず、ステップS31では、入力部41を介して見本動作が入力され、指定される。例えば、ロボット制御部2Bは、前記画像表示装置をさらに備えており、例えば図12(A)に示すようにロボット部1のシミュレーションモデルでロボット部1の所定の動作における初期姿勢(initial pose)から最終姿勢(goal pose)までの一連の各姿勢が前記画像表示装置に表示され、図12(A)に示す例では、前記画像表示装置に表示された各姿勢の画像のうちから、入力部41を用いて初期姿勢Aが見本動作Aとして指定される。これによって入力部41を介して見本動作Aが入力され、指定される。図12ないし図14に示す例は、ロボット部1がアクトロイドSITであってその手先の3次元位置を動作パラメータとする合成動作の生成を行った場合を示している。
【0083】
続いて、ステップS32では、入力部41を介して見本動作Aを受け付けると、類似動作探索部52によって、この指定された見本動作Aに類似する動作が、類似動作として、モーションデータ記憶部51に記憶されている複数のモーションデータに基づいて複数の動作の中から探索される。この類似動作探索処理によって、例えば図4に示す17個の動作に対応する複数のモーションデータの中から、図12(B)に示す5個の動作B,C,D,E,Fが類似動作として探索された。
【0084】
続いて、ステップS33では、類似動作合成部53によって、類似動作探索部52で探索された類似動作に対し、前記式2で表すWelschの重み関数によって、類似動作の重み係数wが演算される。図12に示す例では、類似動作探索部52で探索された各類似動作B,C,D,E,Fに対し、各類似動作B,C,D,E,Fの重み係数wが演算される。
【0085】
続いて、ステップS34では、入力部41を介して目標位置が入力され、設定される。例えば、前記画像表示装置に、ステップS33で探索された類似動作でロボット部1を動作させた場合におけるロボット部1の所定の部分(部位、図12に示す例では手先)の軌跡から構成される凸包が表示され、その凸包内の位置が例えばマウスやタッチペン等の入力部41で指定される。これによって入力部41を介して目標位置が入力され、設定される。
【0086】
続いて、ステップS35では、類似動作合成部53によって、ステップS34で設定された目標位置について、類似動作探索部52で探索された類似動作の重み係数wを用いた補間を行うことによって、この類似動作探索部52で探索された類似動作が合成される。図12に示す例では、これら各類似動作B,C,D,E,Fの重み係数wを用いた補間を行うことによって、各類似動作B,C,D,E,Fが合成される。この結果が図13に示されている。図13に示すように、本来の目標位置から、ユークリッド距離で平均24.64mmの偏差で、合成動作が生成されている。
【0087】
続いて、ステップS36では、合成動作補正部54によって、合成動作の補正が必要であるか否かが判定される。より具体的には、合成動作補正部54によって、目標位置と類似動作合成部53で合成された合成動作による合成位置との偏差が所定の第3閾値th3以上であるか否かが判断され、この判断の結果、前記偏差が前記所定の第3閾値th3以上である場合には、合成動作の補正が必要であると判定され(YES)、一方、前記偏差が前記所定の第3閾値th3未満である場合には、合成動作の補正が必要ではないと判定される(NO)。
【0088】
ステップS36で合成動作の補正が必要であると判定された場合(YES)には、ステップS37の処理が実行される。ステップS37では、合成動作補正部54によって、確率的ロードマップ法によって合成動作が補正される。図12および図13に示す例について合成動作の補正を行うと、すべての目標位置に対し完全に一致する合成動作が生成された。そのうちの2種類の目標3次元位置G,Hの場合に対して合成動作を生成した例を図14に示す。
【0089】
一方、ステップS36で合成動作の補正が必要ではないと判定された場合(NO)には、本合成動作の生成処理が終了される。なお、このステップS36で合成動作の補正が必要ではないと判定された場合(NO)に、合成動作補正部54によって、上述の式1(式1−1、式1−2)による線形補間によって合成動作を補正するように経路計画生成部42が構成されてもよい。
【0090】
以上、説明したように、第2実施形態におけるロボットシステムSB、ロボット制御部2Bおよび経路計画生成部42では、複数のモーションデータが複数の動作に対応付けて予めモーションデータ記憶部51に記憶され与えられている。このため、本実施形態におけるロボットシステムSB、ロボット制御部2Bおよび経路計画生成部42は、例えばモーションキャプチャによって、例えば人間らしい余韻動作や速度制限を満たした動作等の人間とのコミュニケーションに適した動作(インタラクションに適した動作)のモーションデータを予め生成しておくことができ、これらモーションデータによってロボットに人間とのコミュニケーションに適した動作を行わせることができる。
【0091】
そして、第2実施形態におけるロボットシステムSB、ロボット制御部2Bおよび経路計画生成部42では、上述のように動作することで合成動作が生成され新たな経路計画が生成される。このため、本実施形態におけるロボットシステムSB、ロボット制御部2Bおよび経路計画生成部42は、例えばKovarの再帰的な類似動作探索法のように重み係数の最適化を行う必要がなく、情報処理量が軽減され、より短時間で類似動作の合成が可能となる。ひいては、人間とのコミュニケーションの際に、人間の働きかけに対して遅れの少ない応答が可能となり、人間とのコミュニケーションにより適した動作となる。
【0092】
また、目標位置と合成動作による合成位置との偏差を確率的ロードマップ法によって合成動作を補正することで、略解消することができ、より精度よい合成動作を生成することが可能となる。
【0093】
以上説明したように、第1および第2実施形態におけるロボットシステムSA,SB、ロボット制御部2A,2Bおよび経路計画生成部22,42は、予め用意しておいた比較的小規模のモーションデータデータベースと確率的ロードマップ法によるプランニングとを組み合わせることによって、データベースの動作特徴を維持した多様な動作を生成することができる。第1実施形態におけるロボットシステムSA、ロボット制御部2Aおよび経路計画生成部22では、任意のタイミングでも割り込み可能な連結動作が達成され、第2実施形態におけるロボットシステムSB、ロボット制御部2Bおよび経路計画生成部42では、動作群中の類似動作の合成によって、所定の部位を任意の座標へ移動させる動作が達成される。
【0094】
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更および/または改良することは容易に為し得ることであると認識すべきである。したがって、当業者が実施する変更形態または改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態または当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
【符号の説明】
【0095】
S ロボットシステム
1 ロボット部
2 ロボット制御部
21、41 入力部
22、42 経路計画生成部
23、43 制御信号出力部
31、51 モーションデータ記憶部
32 距離演算部
33 遷移先選択部
34 経路計画部
52 類似動作探索部
53 類似動作合成部
54 合成動作補正部

【特許請求の範囲】
【請求項1】
ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含むモーションデータを複数の動作に対応付けて複数記憶するモーションデータ記憶部と、
前記複数の動作における一の動作の実行中に他の動作へ遷移する必要が生じた場合に、前記モーションデータ記憶部に記憶されている前記複数のモーションデータのそれぞれについて、前記実行中の一の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離を求める距離演算部と、
前記距離演算部で求められた距離が所定の第1閾値以下である場合に、前記所定の第1閾値以下の距離を与える前記他のモーションデータを遷移可能なモーションデータとして選択する遷移先選択部と、
前記実行中の一の動作に対応するモーションデータにおける前記第1姿勢までのデータと、前記遷移先選択部で選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータを生成する経路計画部とを備え、
前記経路計画部は、前記第1姿勢と前記遷移先選択部で選択された他のモーションデータにおける第2姿勢との距離が前記所定の第1閾値以下であって前記所定の第1閾値よりも小さい所定の第2閾値以上である場合に、前記第1姿勢から前記遷移先選択部で選択された他のモーションデータにおける前記第2姿勢に至る経路のデータを確率的ロードマップ法によって生成すること
を特徴とする経路計画生成装置。
【請求項2】
前記第2姿勢は、前記他の動作における前半部分の姿勢であること
を特徴とする請求項1に記載の経路計画生成装置。
【請求項3】
ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含むモーションデータを複数の動作に対応付けて複数記憶するモーションデータ記憶部と、
前記複数の動作の中から一の動作が見本動作として指定された場合に、前記指定された見本動作に類似する動作を類似動作として、前記モーションデータ記憶部に記憶されている前記複数のモーションデータに基づいて前記複数の動作の中から探索する類似動作探索部と、
前記類似動作探索部で探索された類似動作で前記ロボットを動作させた場合におけるロボットの所定の部分の軌跡から構成される凸包内に目標位置を設定する目標位置設定部と、
前記目標位置設定部で設定された前記目標位置について、前記類似動作探索部で探索された類似動作をWelschの重み関数を用いた重み係数で補間することによって合成する類似動作合成部とを備えること
を特徴とする経路計画生成装置。
【請求項4】
前記目標位置と前記類似動作合成部で合成された合成動作による合成位置との偏差が所定の第3閾値以上である場合には、確率的ロードマップ法によって前記合成動作を補正する合成動作補正部をさらに備えること
を特徴とする請求項3に記載の経路計画生成装置。
【請求項5】
予め与えられているロボットの複数の動作における一の動作の実行中に他の動作へ遷移する必要が生じた場合に、前記ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含む、前記複数の動作にそれぞれ対応する複数のモーションデータのそれぞれについて、前記実行中の一の動作に対応するモーションデータにおける前記遷移の必要が生じた時点以降の第1姿勢と、他のモーションデータにおける第2姿勢との距離を求める距離演算ステップと、
前記距離演算ステップで求められた距離が所定の第1閾値以下である場合に、前記所定の第1閾値以下の距離を与える前記他のモーションデータを遷移可能なモーションデータとして選択する遷移先選択ステップと、
前記実行中の一の動作に対応するモーションデータにおける前記第1姿勢までのデータと、前記遷移先選択ステップで選択された他のモーションデータにおける前記第2姿勢以降のデータとを連結することによって新たな経路計画のデータを生成する経路計画ステップとを備え、
前記経路計画ステップは、前記第1姿勢と前記遷移先選択ステップで選択された他のモーションデータにおける第2姿勢との距離が前記所定の第1閾値以下であって前記所定の第1閾値よりも小さい所定の第2閾値以上である場合に、前記第1姿勢から前記遷移先選択ステップで選択された他のモーションデータにおける前記第2姿勢に至る経路のデータを確率的ロードマップ法によって生成すること
を特徴とする経路計画生成方法。
【請求項6】
予め与えられているロボットの複数の動作の中から一の動作が見本動作として指定された場合に、前記指定された見本動作に類似する動作を類似動作として、前記ロボットを動作させるためのデータであって、前記動作の初期姿勢を与える初期姿勢のデータ、前記動作の最終姿勢を与える最終姿勢のデータおよび前記初期姿勢から前記最終姿勢に至る間における1また複数の中間姿勢を与える1または複数の中間姿勢のデータを含む複数のモーションデータに基づいて前記複数の動作の中から探索する類似動作探索ステップと、
前記類似動作探索ステップで探索された類似動作で前記ロボットを動作させた場合におけるロボットの所定の部分の軌跡から構成される凸包内に目標位置を設定する目標位置設定ステップと、
前記目標位置設定ステップで設定された前記目標位置について、前記類似動作探索ステップで探索された類似動作をWelschの重み関数を用いた重み係数で補間することによって合成する類似動作合成ステップとを備えること
を特徴とする経路計画生成方法。
【請求項7】
請求項1ないし請求項4のいずれか1項に記載の経路計画生成装置と、
前記経路計画生成装置から出力されるモーションデータに従った動作をロボットにさせる制御信号を生成して出力する制御信号出力部とを備えること
を特徴とするロボット制御装置。
【請求項8】
ロボットと、
前記ロボットを制御するロボット制御部とを備え、
前記ロボット制御部は、請求項7に記載のロボット制御装置であること
を特徴とするロボットシステム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図10】
image rotate

【図11】
image rotate

【図2】
image rotate

【図5】
image rotate

【図9】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2011−56624(P2011−56624A)
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【出願番号】特願2009−209016(P2009−209016)
【出願日】平成21年9月10日(2009.9.10)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【Fターム(参考)】