(57)【特許請求の範囲】
【請求項１】
ロボットアームを制御して把持対象物を把持するロボットアーム制御装置であって、
前記把持対象物を把持したときのロボットアームの姿勢状態毎に、前記ロボットアームの位置を複数の方向に夫々摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出する頑健性算出手段と、
前記複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択する選択手段と、
を備え、
前記所定の誤差は、前記ロボットアームの制御誤差、ロボットの移動方向による誤差、ロボットが移動する路面状況による誤差、及び把持対象物の移動方向による誤差、のうち少なくとも１つを含む、
ことを特徴とするロボットアーム制御装置。
【請求項２】
請求項１記載のロボットアーム制御装置であって、
前記把持対象物の位置を計測する計測手段を更に備え、
前記選択手段は、前記複数のロボットアームの姿勢状態の中から、前記計測手段の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とがより近くなる、前記ロボットアームの姿勢状態を優先的に選択する、ことを特徴とするロボットハンド制御装置。
【請求項３】
請求項１又は２記載のロボットアーム制御装置であって、
前記頑健性算出手段は、前記ロボットアームの姿勢状態毎に、前記ロボットアームの位置を所定方向に摂動させて、夫々の方向で把持状態が維持できる最大の摂動の位置を算出し、該算出した各最大の摂動の位置に基づいて頑健性が高い方向を算出する、
ことを特徴とするロボットハンド制御装置。
【請求項４】
請求項１乃至３のうちいずれか１項記載のロボットアーム制御装置であって、
前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定する姿勢状態設定手段を更に備える、ことを特徴とするロボットアーム制御装置。
【請求項５】
請求項１乃至４のうちいずれか１項記載のロボットアーム制御装置であって、
前記選択手段により選択された前記ロボットアームの位置へ、前記ロボットアームを移動させるための最適な軌道を算出する軌道算出手段を更に備える、ことを特徴とするロボットアーム制御装置。
【請求項６】
請求項１乃至５のうちいずれか１項記載のロボットアーム制御装置であって、
前記ロボットアームを駆動する駆動手段と、
前記駆動手段を制御して、前記選択手段に選択された前記ロボットアームの姿勢状態に基づいて、前記把持対象物を前記ロボットアームに把持させる制御手段と、
を更に備えることを特徴とするロボットアーム制御装置。
【請求項７】
請求項１乃至６のうちいずれか１項記載のロボットアーム制御装置であって、
前記ロボットアームの姿勢状態は、前記ロボットアームの位置、ロボットアームの各指の姿勢角度、前記ロボットアームの各指を駆動するトルク、前記ロボットアームの初期姿勢、のうち少なくとも１つを含む、ことを特徴とするロボットアーム制御装置。
【請求項８】
請求項１乃至７のうちいずれか１項記載のロボットアーム制御装置であって、
前記姿勢状態設定手段により設定された前記複数のロボットアームの姿勢状態を記憶する記憶手段を更に備える、ことを特徴とするロボットアーム制御装置。
【請求項９】
ロボットアームを制御して把持対象物を把持するロボットアーム制御装置の制御方法であって、
前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定するステップと、
前記設定されたロボットアームの姿勢状態毎に、前記ロボットアームの位置を摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出するステップと、
前記設定された複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択するステップと、
を含み、
前記所定の誤差は、前記ロボットアームの制御誤差、ロボットの移動方向による誤差、ロボットが移動する路面状況による誤差、及び把持対象物の移動方向による誤差、のうち少なくとも１つを含む、
ことを特徴とするロボットアーム制御装置の制御方法。
【請求項１０】
ロボットアームを制御して把持対象物を把持するロボットアーム制御装置のプログラムであって、
前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定する処理と、
前記設定されたロボットアームの姿勢状態毎に、前記ロボットアームの位置を摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出する処理と、
前記設定された複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択する処理と、
をコンピュータに実行させ、
前記所定の誤差は、前記ロボットアームの制御誤差、ロボットの移動方向による誤差、ロボットが移動する路面状況による誤差、及び把持対象物の移動方向による誤差、のうち少なくとも１つを含む、
ことを特徴とするロボットアーム制御装置のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットアームを制御して把持対象物を最適に把持できるロボットアーム制御装置、制御方法及びプログラムに関するものである。
【背景技術】
【０００２】
近年、ロボットアームを制御して把持対象物を把持するロボットアーム制御装置が知られている（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−０２６８７５号公報
【特許文献２】特開２００８−３６７３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１に示すロボットアーム制御装置においては、例えば、計測装置の誤差、ロボットアームの制御誤差などのロボットアームを制御する際に生じる様々な誤差がない理想的な条件に基づいて制御を行っている。この為、これら誤差の影響により把持対象物の把持に失敗するなどの問題が生じる可能性がある。
【０００５】
これに対し、理想位置とのズレ量を計測し、その補正を行う制御装置が知られている（例えば、特許文献２参照）。当該制御装置においては、上記ズレ量の計測及び補正演算が必要となり、コスト増加な要因となり得る。
【０００６】
本発明は、このような問題点を解決するためになされたものであり、把持対象物を最適に把持できるロボットアーム制御装置、制御方法及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明の一態様は、ロボットアームを制御して把持対象物を把持するロボットアーム制御装置であって、前記把持対象物を把持したときのロボットアームの姿勢状態毎に、前記ロボットアームの位置を複数の方向に夫々摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出する頑健性算出手段と、前記複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択する選択手段と、を備える、ことを特徴とするロボットアーム制御装置である。この一態様によれば、把持対象物を最適に把持することができる。
【０００８】
この一態様において、前記把持対象物の位置を計測する計測手段を更に備え、前記選択手段は、前記複数のロボットアームの姿勢状態の中から、前記計測手段の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とがより近くなる、前記ロボットアームの姿勢状態を優先的に選択してもよい。これにより、把持状態の頑健性が高く計測手段の誤差の影響を受け難い姿勢状態が優先的に選択されるため、把持対象物を最適に把持できる。
【０００９】
この一態様において、前記所定の誤差は、前記ロボットアームの制御誤差、ロボットの移動方向による誤差、ロボットが移動する路面状況による誤差、及び把持対象物の移動方向による誤差、のうち少なくとも１つを含んでいてもよい。これにより、把持状態の頑健性が高く、ロボットアームの制御誤差、ロボットの移動方向による誤差、ロボットが移動する路面状況による誤差、把持対象物の移動方向による誤差、などの所定の誤差の影響を受け難い姿勢状態が優先的に選択されるため、把持対象物を最適に把持できる。
【００１０】
この一態様において、前記頑健性算出手段は、前記ロボットアームの姿勢状態毎に、前記ロボットアームの位置を所定方向に摂動させて、夫々の方向で把持状態が維持できる最大の摂動の位置を算出し、該算出した各最大の摂動の位置に基づいて頑健性が高い方向を算出してもよい。
【００１１】
この一態様において、前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定する姿勢状態設定手段を更に備えていてもよい。これにより、ロボットアームの姿勢状態を容易に複数設定することができる。
【００１２】
この一態様において、前記選択手段により選択された前記ロボットアームの位置へ、前記ロボットアームを移動させるための最適な軌道を算出する軌道算出手段を更に備えていてもよい。
【００１３】
この一態様において、前記ロボットアームを駆動する駆動手段と、前記駆動手段を制御して、前記選択手段に選択された前記ロボットアームの姿勢状態に基づいて、前記把持対象物を前記ロボットアームに把持させる制御手段と、を更に備えていてもよい。
【００１４】
この一態様において、前記ロボットアームの姿勢状態は、前記ロボットアームの位置、ロボットアームの各指の姿勢角度、前記ロボットアームの各指を駆動するトルク、前記ロボットアームの初期姿勢、のうち少なくとも１つを含んでいてもよい。
【００１５】
この一態様において、前記姿勢状態設定手段により設定された前記複数のロボットアームの姿勢状態を記憶する記憶手段を更に備えていてもよい。これにより、複数のロボットアームの姿勢状態を保持し、適宜読み込むことができる。
【００１６】
他方、上記目的を達成するための本発明の一態様は、ロボットアームを制御して把持対象物を把持するロボットアーム制御装置の制御方法であって、前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定するステップと、前記設定されたロボットアームの姿勢状態毎に、前記ロボットアームの位置を摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出するステップと、前記設定された複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択するステップと、を含む、ことを特徴とするロボットアーム制御装置の制御方法であってもよい。この一態様によれば、把持対象物を最適に把持することができる。
【００１７】
また、上記目的を達成するための本発明の一態様は、ロボットアームを制御して把持対象物を把持するロボットアーム制御装置のプログラムであって、前記把持対象物を把持したときのロボットアームの姿勢状態を複数設定する処理と、前記設定されたロボットアームの姿勢状態毎に、前記ロボットアームの位置を摂動させたときに該摂動に対して把持状態の頑健性が高い方向を算出する処理と、前記設定された複数のロボットアームの姿勢状態の中から、所定の誤差が大きい方向と前記頑健性算出手段により算出された頑健性が高い方向とが近くなる、前記ロボットアームの姿勢状態を選択する処理と、をコンピュータに実行させることを特徴とするロボットアーム制御装置のプログラムであってもよい。この一態様によれば、把持対象物を最適に把持することができる。
【発明の効果】
【００１８】
本発明によれば、把持対象物を最適に把持できるロボットアーム制御装置、制御方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施の形態１に係るロボットアーム制御装置の概略的なシステム構成を示すブロック図である。
【図２】本発明の実施の形態１に係るロボットアームの概略的構成を示す図である。
【図３】（ａ）ロボットアームのハンド部の位置を上下方向へ摂動させた状態を示す図である。（ｂ）ロボットアームのハンド部の位置を前後方向へ摂動させた状態を示す図である。（ｃ）ロボットアームのハンド部の位置を回転方向へ摂動させた状態を示す図である。（ｄ）ロボットアームのハンド部の位置を左右方向へ摂動させた状態を示す図である。（ｅ）ロボットアームのハンド部の位置を回転方向へ摂動させた状態を示す図である。
【図４】把持状態の頑健性が高い方向を算出する方法を説明するための図である。
【図５】本発明の実施の形態１に係るロボットハンド制御装置の制御処理フローを示すフローチャートである。
【発明を実施するための形態】
【００２０】
実施の形態１．
以下、図面を参照して本発明の実施の形態について説明する。図１は、本発明の実施の形態１に係るロボットアーム制御装置の概略的なシステム構成を示すブロック図である。本実施の形態１に係るロボットアーム制御装置１は、ロボットアーム２を制御して把持対象物を最適に把持するものである。
【００２１】
ロボットアーム制御装置１は、ロボットアーム２の姿勢状態を設定する姿勢状態設定部１１と、設定されたロボットアーム２の姿勢状態を記憶するデータベース１２と、ロボットアーム２の摂動に対する把持状態の頑健性を算出する頑健性算出部１３と、把持対象物の位置を計測する計測装置１４と、設定された複数の把持フレームの中から、最適な把持フレームを選択する選択部１５と、ロボットアーム２の軌道を算出する軌道算出部１６と、ロボットアーム２を制御する制御部１７と、を備えている。
【００２２】
なお、ロボットアーム制御装置１は、例えば、演算処理、制御処理等と行うＣＰＵ（Central Processing Unit）と、ＣＰＵによって実行される演算処理プログラム、制御処理プログラム等が記憶されたＲＯＭ（Read Only Memory）と、処理データ等を一時的に記憶するＲＡＭ（Random Access Memory）と、を有するマイクロコンピュータを中心にして、ハードウェア構成されている。また、これらＣＰＵ、ＲＯＭ、及びＲＡＭは、データバス等によって相互に接続されている。
【００２３】
ロボットアーム２は、例えば、ロボット１００の胴体１０１などに回転可能に連結されたアーム部２１と、アーム部２１の先端に回転可能に連結されたハンド部２２と、を有している（図２）。
【００２４】
アーム部２１は、複数のリンク部２１１と、各リンク部２１１を回転可能に連結する複数の関節部２１２（手首関節部、肘関節部、肩関節部など）と、を有している。各関節部２１２には各関節部２１２を回転駆動するアクチュエータ（駆動手段）と、各関節部２１２の回転を検出する回転センサと、が夫々設けられている。
【００２５】
ハンド部２２は、複数の指部（親指部、人指し指部、中指部、薬指部など）２２１と、各指部２２１が回転可能に連結された掌部２２２と、を有している。各指部２２１には複数の関節部２２３が設けられており、各関節部２２３には各関節部２２３を回転駆動するアクチュエータ（駆動手段）と、各関節部２２３の回転を検出する回転センサと、が夫々設けられている。
【００２６】
ロボットアーム２は、ロボットアーム制御装置１からの制御信号に応じて、各関節部２１２、２２３のアクチュエータを回転駆動して、アーム部２１及びハンド部２２を所望に位置に移動させ、各指部２２１及び掌部２２２を用いて、把持対象物を把持することができるように構成されている。なお、上記ロボットアーム２の構成は一例であり、これに限らず、任意の構成が適用可能である。
【００２７】
姿勢状態設定部１１は、姿勢状態設定手段の一具体例であり、把持対象物を安定的に把持したときのロボットアーム２の姿勢状態を複数設定する。例えば、姿勢状態設定部１１は、ロボットアーム２のハンド部２２に把持対象物を実際に把持させ、そのときの検出センサにより検出された検出値に基づいたロボットアーム２の姿勢状態を、把持フレーム（把持フレーム１、・・・把持フレームｎ：ｎ＝１０〜１０００程度）として夫々設定し、データベース１２に記憶させる。なお、各把持フレームは、各姿勢状態における、例えば、ロボットアーム２のハンド部２２の位置、ロボットアーム２のハンド部２２の各指部２２１の姿勢角度、ロボットアーム２のハンド部２２の各指部２２１を駆動するトルク、ロボットアーム２の初期姿勢、などを含む。
【００２８】
姿勢状態設定部１１は、ロボットアーム２のハンド部２２に把持対象物を実際に把持させることなく、コンピュータシミュレーションにより仮想演算を行い、各ロボットアーム２の姿勢状態を算出するようにしてもよい。
【００２９】
データベース１２は、記憶手段の一具体例であり、姿勢状態設定部１１により設定された複数の把持フレームを記憶するものであり、例えば、ＲＯＭやＲＡＭなどから構成されている。
【００３０】
頑健性算出部１３は、頑健性算出手段の一具体例であり、姿勢状態設定部１１によりデータベース１２に設定されたロボットアーム２の把持フレーム毎に、ロボットアーム２のハンド部２２の位置を上下方向（図３（ａ））、前後方向（図３（ｂ））、回転方向（図３（ｃ）及び（ｅ））、左右方向（図３（ｄ））、などの任意の方向に、様々な大きさの摂動を与え、そのとき把持状態が破綻しないか否かを判定することで、それら摂動に対して把持状態の頑健性（ロバスト性）が高い方向を算出する。なお、頑健性算出部１３は、姿勢状態設定部１１から出力される各把持フレームを直接読み込んでもよい。
【００３１】
例えば、頑健性算出部１３は、把持フレーム毎に、ロボットアーム２のハンド部２２の位置を上下方向、左右方向、前後方向、回転方向等に摂動させて、夫々の方向で把持状態が維持できる最大の摂動の位置（ｘ、ｙ、ｚ）を算出して、各把持フレームが各方向でどの程度頑健性を有しているかを算出する。頑健性算出部１３は、例えば、算出した各最大の摂動の位置（ｘ、ｙ、ｚ）を楕円近似し、近似された楕円の長軸方向を把持状態の頑健性が高い方向として算出する（図４）。
【００３２】
なお、上記頑健性の算出方法は一例であり、これに限らず、任意の方法が適用可能である。例えば、頑健性算出部１３は、把持フレーム毎に、ロボットアーム２のハンド部２２の位置を上下方向、左右方向、前後方向、回転方向等に摂動させて、そのとき夫々の方向で把持状態が維持できる摂動量（摂動距離）を算出し、算出した各摂動量のうち最大となる摂動量の方向を、頑健性が高い方向として算出してもよい。
【００３３】
また、頑健性算出部１３は、把持フレーム毎に、ロボットアーム２のハンド部２２の位置を上下方向、左右方向、前後方向、回転方向等に摂動させて、夫々の方向で把持状態が維持できる最大の摂動の位置（ｘ、ｙ、ｚ）を算出し、算出した各最大の摂動の位置（ｘ、ｙ、ｚ）を、非線形関数などを用いて近似し、近似された形状に基づいて、把持状態の頑健性が高い方向を算出してもよい。
【００３４】
頑健性算出部１３には選択部１５が接続されており、頑健性算出部１３は算出した各把持フレームの頑健性の高い方向を選択部１５に対して夫々出力する。
【００３５】
計測装置１４は、計測手段の一具体例であり、例えば、ステレオカメラなどを用いて把持対象物の３次元位置（ｘ、ｙ、ｚ）を計測する。計測装置１４には軌道算出部１６が接続されており、計測装置１４は、計測した把持対象物の３次元位置を軌道算出部１６に対して出力する。
【００３６】
選択部１５は、選択手段の一具体例であり、姿勢状態設定部１１により設定された複数の把持フレームの中から、最適な把持フレームを選択する。
【００３７】
ところで、計測装置１４は、一般的に、どの方向に対しても均等に誤差を有している訳ではなく、誤差が大きい方向と小さい方向とが存在する。例えば、計測装置１４がカメラである場合には、カメラの撮影方向によって、その誤差が大きい方向と小さい方向とが存在する。
【００３８】
そこで、選択部１５は、姿勢状態設定部１１により設定された複数の把持フレームの中から、計測装置１４の誤差（所定の誤差）が大きい方向と頑健性算出部１３により算出された頑健性が高い方向とが近くなる、把持フレームを選択する。
【００３９】
例えば、選択部１５は、計測装置１４の誤差が大きい方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。これにより、把持状態の頑健性が高く計測装置１４の誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。
【００４０】
なお、上記計測装置１４の誤差が大きい方向は、例えば、データベース１２などに予め記憶されており、選択部１５は、データベース１２から上記計測装置１４の誤差が大きい方向を読込み、上記演算を行う。選択部１５には軌道算出部１６が接続されており、選択部１５は選択した把持フレームを軌道算出部１６に対して出力する。
【００４１】
軌道算出部１６は、軌道算出手段の一具体例であり、計測装置１４から出力される把持対象物の位置と、選択部１５からの出力される把持フレームと、に基づいて、選択部１５に選択された把持フレームのロボットアーム２の位置へ、ロボットアーム２を移動させるための最適な軌道を算出する。
【００４２】
制御部１７は、制御手段の一具体例であり、ロボットアーム２のアーム部２１に設けられたアクチュエータを制御して、軌道算出部１６により算出された軌道に従ってロボットアーム２を移動させ、選択部１５に選択された把持フレームに従って、把持対象物をロボットアーム２のハンド部２２に把持させる。
【００４３】
次に、本実施の形態１に係るロボットハンド制御装置の制御方法について、詳細に説明する。図５は、本実施の形態１に係るロボットハンド制御装置の制御処理フローを示すフローチャートである。
【００４４】
まず、姿勢状態設定部１１は、ロボットアーム２のハンド部２２に把持対象物を実際に把持させ、検出センサにより検出された検出値に基づいて、そのときのロボットアーム２の姿勢状態を把持フレームとして夫々設定し（ステップＳ１０１）、データベース１２に記憶させる。
【００４５】
次に、頑健性算出部１３は、姿勢状態設定部１１によりデータベース１２に設定されたロボットアーム２の把持フレーム毎に、ロボットアーム２のハンド部２２の位置を上下方向、左右方向、前後方向、回転方向等に摂動させて、夫々の方向で把持状態が維持できる最大の摂動の位置（ｘ、ｙ、ｚ）を算出する（ステップＳ１０２）。そして、頑健性算出部１３は、算出した各最大の摂動の位置（ｘ、ｙ、ｚ）を楕円近似し、近似された楕円の長軸方向を把持状態の頑健性が高い方向として算出し（ステップＳ１０３）、選択部１５に対して夫々出力する。
【００４６】
その後、選択部１５は、姿勢状態設定部１１により設定された複数の把持フレームの中から、計測装置１４の誤差が大きい方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択し（ステップＳ１０４）、軌道算出部１６に対して出力する。
【００４７】
軌道算出部１６は、選択部１５に選択された把持フレームが示すロボットアーム２の位置へ、ロボットアーム２を移動させるための最適な軌道を算出する（ステップＳ１０５）。
【００４８】
制御部１７は、ロボットアーム２のアーム部２１に設けられたアクチュエータを制御して、軌道算出部１６により算出された軌道に従ってロボットアーム２を移動させ、選択部１５に選択された把持フレームに従って、把持対象物をロボットアーム２のハンド部２２に把持させる（ステップＳ１０６）。
【００４９】
以上、本実施の形態１に係るロボットアーム制御装置１において、選択部１５は、計測装置１４の誤差が大きい方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。これにより、把持状態の頑健性が高く、計測装置１４の誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。
【００５０】
実施の形態２．
本発明の実施の形態２に係るロボットアーム制御装置１において、選択部１５は、姿勢状態設定部１１により設定された複数の把持フレームの中から、例えば、ロボットアーム２のアーム部２１の撓み等に起因してロボットアーム２の制御誤差（所定の誤差）が大きい方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。
【００５１】
選択部１５は、上記ロボットアーム２のアーム部２１の撓み等に起因したロボットアーム２の制御誤差が大きい方向を、例えば、予めデータベース１２等に記憶されているロボットアームモデル（ロボットアーム２のアーム部２１の長さ、質量、剛性などを含む）に基づいて算出する。
【００５２】
以上、本実施の形態２に係るロボットアーム制御装置１によれば、把持状態の頑健性が高く、ロボットアーム２の制御誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。
【００５３】
なお、上記実施の形態２において、選択部１５は、上記計測装置１４の誤差が大きい方向および上記ロボットアーム２の制御誤差が大きい方向と、頑健性算出部１３により算出された頑健性が高い方向と、に基づいて、把持フレームを選択してもよい。
【００５４】
例えば、選択部１５は、把持フレーム毎に、計測装置１４の誤差が大きい方向と頑健性が高い方向とに基づいて評価値を算出し、ロボットアーム２の制御誤差が大きい方向と頑健性が高い方向とに基づいて評価値を算出し、これら評価値を加算して総合評価値を算出し、その総合評価値が良好となる把持フレームを優先的に選択してもよい。
【００５５】
また、選択部１５は、把持フレーム毎に、計測装置１４の誤差が大きい方向と、ロボットアーム２の制御誤差が大きい方向と、頑健性が高い方向と、に基づいて評価値を算出し、各評価値を比較し、その評価値が良好となる把持フレームを優先的に選択してもよい。さらに、選択部１５は、上記評価値を周知の評価関数などを用いて算出するようにしてもよい。
【００５６】
本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【００５７】
上記実施の形態において、計測装置１４の誤差及びロボットアーム２の制御誤差の影響を受け難い把持フレームを優先的に選択しているが、これに限らず、例えば、ロボット１００の移動方向による誤差、ロボット１００が移動する路面状況（凹凸等）による誤差、把持対象物の移動方向による誤差、などの所定の誤差による影響を受け難い把持フレームを優先的に選択してもよい。
【００５８】
例えば、ロボット１００の移動方向による誤差は、通常、ロボット１００が移動する方向には大きく、それ以外の方向には小さくなる。そこで、選択部１５は、その誤差が大きくなるロボット１００の移動方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。これにより、把持状態の頑健性が高く、ロボット１００の移動方向による誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。
【００５９】
また、路面状況による誤差は、例えば、路面の凹凸などにより上下方向に誤差が大きくなる。選択部１５は、その誤差が大きくなる上下方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。これにより、把持状態の頑健性が高く、路面状況による誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。
【００６０】
さらに、把持対象物の移動方向による誤差は、把持対象物が、例えば、ベルトコンベアなどの上に載せられ搬送される場合、そのベルトコンベアの搬送方向（移動方向）に大きくなる。そこで、選択部１５は、その誤差が大きくなる把持対象物の搬送方向と頑健性算出部１３により算出された頑健性が高い方向とがより近くなる、把持フレームを優先的に選択する。これにより、把持状態の頑健性が高く、把持対象物の移動方向による誤差の影響を受け難い把持フレームが優先的に選択されるため、把持対象物を最適に把持できる。なお、上記所定の誤差を任意に組み合わせて、把持フレームを優先的に選択してもよい。
【００６１】
上記実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、例えば、姿勢状態設定部１１、頑健性算出部１３、選択部１５、軌道算出部１６、制御部１７、などが行う処理を、ＣＰＵにコンピュータプログラムを実行させることにより実現することも可能である。
【００６２】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。
【００６３】
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【産業上の利用可能性】
【００６４】
本発明は、ロボットアームを制御して把持対象物を最適に把持できるロボットアーム制御装置に適用可能である。
【符号の説明】
【００６５】
１    ロボットアーム制御装置
２    ロボットアーム
１１    姿勢状態設定部
１２    データベース
１３    頑健性算出部
１４    計測装置
１５    選択部
１６    軌道算出部
１７    制御部
２１    アーム部
２２    ハンド部
【図１】
0005776456.tif 000002
【図２】
0005776456.tif 000003
【図３】
0005776456.tif 000004
【図４】
0005776456.tif 000005
【図５】
0005776456.tif 000006