(57)【要約】【課題】ロボットの経路の生成にかかる時間を短縮することができる経路計画装置、方法、及びプログラムを提供する。【解決手段】経路計画装置１０は、ロボットの姿勢及びロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法によりロボットの経路を生成する経路計画部３１と、経路を生成する対象であるロボットＲＢの初期姿勢及びロボットＲＢの目標姿勢を示す姿勢情報と、初期姿勢から目標姿勢までのロボットＲＢの移動に際し障害となる対象障害物に関する障害物情報を取得する取得部３０と、取得部３０で取得した姿勢情報及び障害物情報から定まる制約条件に適した経路計画法でロボットＲＢの経路を生成するように経路計画部３１を制御する制御部３６と、を備える。【選択図】図４
2019214084.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画部と、
経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得部と、
前記取得部で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように前記経路計画部を制御する制御部と、
を備えた経路計画装置。
【請求項２】
前記複数の異なる制約条件は、前記障害物により前記ロボットの移動が制限される度合いについて予め定めた第１の制約条件と、前記第１の制約条件よりも前記障害物により前記ロボットの移動が制限される度合いが小さい第２の制約条件と、であり、
前記経路計画部は、
前記第１の制約条件に適した第１の経路計画法で経路を生成する第１の経路計画部と、
前記第２の制約条件に適した第２の経路計画法で経路を生成する第２の経路計画部と、
を含み、
前記制御部は、
前記対象ロボットの初期姿勢から目標姿勢までの経路のうち、前記対象ロボットの姿勢と前記対象障害物との関係が前記第１の制約条件を満たす区間については、前記第１の経路計画部により経路を生成し、前記対象ロボットの姿勢と前記対象障害物との関係が前記第２の制約条件を満たす区間については、前記第２の経路計画部により経路を生成するように制御する
請求項１記載の経路計画装置。
【請求項３】
前記第２の制約条件は、前記第１の制約条件を満たさない条件であり、
前記制御部は、
前記初期姿勢と前記障害物との関係が前記第１の制約条件を満たす場合には、前記初期姿勢から前記第１の制約条件を満たさない第１の中間姿勢までの第１の区間については、前記第１の経路計画部により経路を生成し、前記初期姿勢と前記障害物との関係が前記第１の制約条件を満たさない場合には、前記第１の区間については、前記第２の経路計画部により経路を生成するように制御し、
前記目標姿勢と前記障害物との関係が前記第１の制約条件を満たす場合には、前記第１の制約条件を満たさない第２の中間姿勢から前記目標姿勢までの第２の区間については、前記第１の経路計画部により経路を生成し、前記目標姿勢と前記障害物との関係が前記第１の制約条件を満たさない場合には、前記第２の区間については、前記第２の経路計画部により経路を生成するように制御し、
前記第１の中間姿勢から前記第２の中間姿勢までの第３の区間については、前記第２の経路計画部により経路を生成するように制御する
請求項２記載の経路計画装置。
【請求項４】
前記制約条件は、前記ロボットと前記障害物との位置関係、前記障害物の種類、及び前記ロボットの初期姿勢から目標姿勢までの前記障害物の数の少なくとも１つに基づいて定められている
請求項１〜３の何れか１項に記載の経路計画装置。
【請求項５】
前記制約条件は、前記障害物の種類から定められ、
前記取得部は、前記障害物情報として前記対象障害物の形状に関する情報を取得し、
前記制御部は、前記対象障害物の形状に基づいて、前記対象障害物の種類を識別する
請求項４記載の経路計画装置。
【請求項６】
コンピュータが、
ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画工程と、
経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得工程と、
前記取得工程で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように制御する制御工程と、
を含む処理を実行する経路計画方法。
【請求項７】
コンピュータを、
ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画部、
経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得部、及び、
前記取得部で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように前記経路計画部を制御する制御部、
として機能させるための経路計画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路計画装置、経路計画方法、及び経路計画プログラムに関する。
【背景技術】
【０００２】
ロボットアームが障害物に干渉しない経路を自動的に生成する経路計画方法として様々な方法が提案されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２１１５７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットの経路を生成する経路計画法にはそれぞれ一長一短がある。例えばロボットアームと障害物との位置関係等によりロボットの移動に際し制限がある場合、不適切な経路計画法を適用してしまうと経路の生成にかかる時間が増大する。この場合、ロボットアームの実動作の開始が遅れてしまう、という問題があった。
【０００５】
本発明は、上記の点に鑑みてなされたものであり、ロボットの経路の生成にかかる時間を短縮することができる経路計画装置、経路計画方法、及び経路計画プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る経路計画装置は、ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画部と、経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得部と、前記取得部で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように前記経路計画部を制御する制御部と、を備える。
【０００７】
また、前記複数の異なる制約条件は、前記障害物により前記ロボットの移動が制限される度合いについて予め定めた第１の制約条件と、前記第１の制約条件よりも前記障害物により前記ロボットの移動が制限される度合いが小さい第２の制約条件と、であり、前記経路計画部は、前記第１の制約条件に適した第１の経路計画法で経路を生成する第１の経路計画部と、前記第２の制約条件に適した第２の経路計画法で経路を生成する第２の経路計画部と、を含み、前記制御部は、前記対象ロボットの初期姿勢から目標姿勢までの経路のうち、前記対象ロボットの姿勢と前記対象障害物との関係が前記第１の制約条件を満たす区間については、前記第１の経路計画部により経路を生成し、前記対象ロボットの姿勢と前記対象障害物との関係が前記第２の制約条件を満たす区間については、前記第２の経路計画部により経路を生成するように制御するようにしてもよい。
【０００８】
また、前記第２の制約条件は、前記第１の制約条件を満たさない条件であり、前記制御部は、前記初期姿勢と前記障害物との関係が前記第１の制約条件を満たす場合には、前記初期姿勢から前記第１の制約条件を満たさない第１の中間姿勢までの第１の区間については、前記第１の経路計画部により経路を生成し、前記初期姿勢と前記障害物との関係が前記第１の制約条件を満たさない場合には、前記第１の区間については、前記第２の経路計画部により経路を生成するように制御し、前記目標姿勢と前記障害物との関係が前記第１の制約条件を満たす場合には、前記第１の制約条件を満たさない第２の中間姿勢から前記目標姿勢までの第２の区間については、前記第１の経路計画部により経路を生成し、前記目標姿勢と前記障害物との関係が前記第１の制約条件を満たさない場合には、前記第２の区間については、前記第２の経路計画部により経路を生成するように制御し、前記第１の中間姿勢から前記第２の中間姿勢までの第３の区間については、前記第２の経路計画部により経路を生成するように制御するようにしてもよい。
【０００９】
また、前記制約条件は、前記ロボットと前記障害物との位置関係、前記障害物の種類、及び前記ロボットの初期姿勢から目標姿勢までの前記障害物の数の少なくとも１つに基づいて定められ得る。
【００１０】
また、前記制約条件は、前記障害物の種類から定められ、前記取得部は、前記障害物情報として前記対象障害物の形状に関する情報を取得し、前記制御部は、前記対象障害物の形状に基づいて、前記対象障害物の種類を識別するようにしてもよい。
【００１１】
本発明に係る経路計画方法は、コンピュータが、ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画工程と、経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得工程と、前記取得工程で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように制御する制御工程と、を含む処理を実行する。
【００１２】
本発明に係る経路計画プログラムは、コンピュータを、ロボットの姿勢及び前記ロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適した複数の異なる経路計画法により前記ロボットの経路を生成する経路計画部、経路を生成する対象である対象ロボットの初期姿勢及び前記対象ロボットの目標姿勢を示す姿勢情報と、前記初期姿勢から前記目標姿勢までの前記対象ロボットの移動に際し障害となる対象障害物に関する障害物情報を取得する取得部、及び、前記取得部で取得した前記姿勢情報及び前記障害物情報から定まる制約条件に適した経路計画法で前記対象ロボットの経路を生成するように前記経路計画部を制御する制御部、として機能させるためのプログラムである。
【発明の効果】
【００１３】
本発明によれば、ロボットの経路の生成にかかる時間を短縮することができる。
【図面の簡単な説明】
【００１４】
【図１】ピックアンドプレース装置の概略構成図である。
【図２】垂直多関節ロボットの一例を示す斜視図である。
【図３】経路計画装置のハードウェア構成の例を示す構成図である。
【図４】経路計画装置の機能構成の例を示すブロック図である。
【図５】ロボットの初期姿勢の一例を示す図である。
【図６】ロボットの目標姿勢の一例を示す図である。
【図７】経路計画法であるＰＲＭについて説明するための図である。
【図８】経路計画法であるＰＲＭについて説明するための図である。
【図９】経路計画法であるＰＲＭについて説明するための図である。
【図１０】経路計画法であるＰＲＭについて説明するための図である。
【図１１】経路計画装置の処理の流れを示すフローチャートである。
【図１２】具体的な経路生成処理の流れを示すフローチャートである。
【図１３】ロボットアームが箱に囲まれているか否かを判定する場合について説明するための図である。
【図１４】ロボットアームが箱に囲まれているか否かを判定する場合について説明するための図である。
【図１５】経路を模式的に表した模式図である。
【図１６】経路を模式的に表した模式図である。
【図１７】モバイルロボットの脱出姿勢について説明するための図である。
【図１８】ヒューマノイド型ロボットの脱出姿勢について説明するための図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されている場合があり、実際の比率とは異なる場合がある。
【００１６】
図１は、本実施形態に係るピックアンドプレース装置１の構成図である。図１に示すように、ピックアンドプレース装置１は、ロボットＲＢ、画像センサＳ、及び経路計画装置１０を備える。
【００１７】
ロボットＲＢは、台２０上に設けられた箱２２に収容された図示しないワークを保持して棚２４まで搬送し、棚２４内に載置する。
【００１８】
本実施形態では、一例としてロボットＲＢのロボットアームの先端にはエンドエフェクタとしてロボットハンドＨが取り付けられており、ロボットハンドＨで箱２２内のワークを把持することによってワークを保持した状態となる。そして、ワークを保持した状態で棚２４まで搬送し、ワークの保持を解除してワークを載置する。なお、ワークを保持する部材は、ロボットハンドＨに限らず、ワークを吸着する吸着パッドでもよい。
【００１９】
箱２２の上方には画像センサＳが設置されている。画像センサＳは、箱２２内に収容された図示しないワークの集合であるワーク集合を静止画として撮影する。
【００２０】
経路計画装置１０は、ロボットＲＢの任意の初期姿勢から目標姿勢までの経路を生成する。ここで、経路とは、ロボットＲＢを初期姿勢から目標姿勢まで動作させる場合の姿勢のリストである。具体的には、経路計画装置１０は、画像センサＳから取得した撮影画像を画像処理し、画像処理の結果に基づいて保持すべきワークの位置及び姿勢を認識する。そして、経路計画装置１０は、ロボットＲＢの箱２２内のワークを撮影するためにロボットＲＢが画像センサＳの視野範囲外の退避位置に退避した退避姿勢を初期姿勢とし、ロボットＲＢが箱２２内でワークを保持する保持姿勢を目標姿勢とする第１の経路と、ロボットＲＢが箱２２内からワークを保持した保持姿勢を初期姿勢とし、ロボットＲＢがワークを棚２４に載置する載置姿勢を目標姿勢とする第２の経路と、ロボットＲＢがワークを棚２４に載置した載置姿勢を初期姿勢とし、箱２２内のワークを撮影するためにロボットＲＢが画像センサＳの視野範囲外の退避位置に退避した退避姿勢を目標姿勢とする第３の経路と、を生成する。なお、棚２４を撮影する画像センサを備えた構成とし、画像センサで撮影された撮影画像に基づいてワークを載置すべき位置を認識するようにしてもよい。そして、経路計画装置１０は、生成した経路に従ってロボットＲＢが動作するように動作指令値をロボットＲＢに出力する。
【００２１】
次に、ロボットＲＢについて説明する。本実施形態では、一例としてロボットＲＢが垂直多関節ロボットである場合について説明するが、水平多関節ロボット（スカラーロボット）、パラレルリンクロボット、モバイルロボット、飛行ロボット（ドローン）、及びヒューマノイド型ロボット等にも本発明を適用可能である。
【００２２】
図２は、垂直多関節ロボットであるロボットＲＢの構成を示す図である。図２に示すように、ロボットＲＢは、ベースリンクＢＬ、リンクＬ１〜Ｌ６、ジョイントＪ１〜Ｊ６を備えた６自由度の６軸ロボットである。なお、ジョイントとは、リンク同士を接続する関節である。また、以下では、リンクＬ１〜Ｌ６及びリンクＬ６に接続されたロボットハンドＨを含めてロボットアームと称する。
【００２３】
ベースリンクＢＬとリンクＬ１とは、図２において鉛直軸Ｓ１を中心として矢印Ｃ１方向に回転するジョイントＪ１を介して接続されている。従って、リンクＬ１は、ベースリンクＢＬを支点として矢印Ｃ１方向に回転する。
【００２４】
リンクＬ１とリンクＬ２とは、図２において水平軸Ｓ２を中心として矢印Ｃ２方向に回転するジョイントＪ２を介して接続されている。従って、リンクＬ２は、リンクＬ１を支点として矢印Ｃ２方向に回転する。
【００２５】
リンクＬ２とリンクＬ３とは、図２において軸Ｓ３を中心として矢印Ｃ３方向に回転するジョイントＪ３を介して接続されている。従って、リンクＬ３は、リンクＬ２を支点として矢印Ｃ３方向に回転する。
【００２６】
リンクＬ３とリンクＬ４とは、図２において軸Ｓ４を中心として矢印Ｃ４方向に回転するジョイントＪ４を介して接続されている。従って、リンクＬ４は、リンクＬ３を支点として矢印Ｃ４方向に回転する。
【００２７】
リンクＬ４とリンクＬ５とは、図２において軸Ｓ５を中心として矢印Ｃ５方向に回転するジョイントＪ５を介して接続されている。従って、リンクＬ５は、リンクＬ４を支点として矢印Ｃ５方向に回転する。
【００２８】
リンクＬ５とリンクＬ６とは、図２において軸Ｓ６を中心として矢印Ｃ６方向に回転するジョイントＪ６を介して接続されている。従って、リンクＬ６は、リンクＬ５を支点として矢印Ｃ６方向に回転する。なお、図２では図示は省略したが、リンクＬ６にロボットハンドＨが取り付けられる。
【００２９】
ジョイントＪ１〜Ｊ６は、予め定めた回転角度の範囲が可動域として各々設定されている。
【００３０】
ロボットＲＢの姿勢は、ジョイントＪ１〜Ｊ６の各々の回転角度によって定まる。従って、ロボットＲＢを動作させるための動作指令値は、ロボットＲＢが取るべき姿勢に対応したジョイントＪ１〜Ｊ６の各々の回転角度である。
【００３１】
図３は、本実施形態に係る経路計画装置１０のハードウェア構成を示すブロック図である。
【００３２】
図３に示すように、経路計画装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３、ストレージ１４、入力部１５、モニタ１６、光ディスク駆動装置１７、及び通信インタフェース１８を有する。各構成は、バス１９を介して相互に通信可能に接続されている。
【００３３】
本実施形態では、ＲＯＭ１２又はストレージ１４には、経路計画を実行する経路計画プログラムが格納されている。ＣＰＵ１１は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、ＣＰＵ１１は、ＲＯＭ１２又はストレージ１４からプログラムを読み出し、ＲＡＭ１３を作業領域としてプログラムを実行する。ＣＰＵ１１は、ＲＯＭ１２又はストレージ１４に記録されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
【００３４】
ＲＯＭ１２は、各種プログラム及び各種データを格納する。ＲＡＭ１３は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ１４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【００３５】
入力部１５は、キーボード１５１、及びマウス１５２等のポインティングデバイスを含み、各種の入力を行うために使用される。モニタ１６は、例えば、液晶ディスプレイであり、各種の情報を表示する。モニタ１６は、タッチパネル方式を採用して、入力部１５として機能してもよい。光ディスク駆動装置１７は、各種の記録媒体(ＣＤ−ＲＯＭ又はブルーレイディスクなど)に記憶されたデータの読み込みや、記録媒体に対するデータの書き込み等を行う。
【００３６】
通信インタフェース１８は、ロボットＲＢ及び画像センサＳ等の他の機器と通信するためのインタフェースであり、例えば、イーサネット（登録商標）、ＦＤＤＩ、Ｗｉ−Ｆｉ（登録商標）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、及びＩＥＥＥ１３９４等の規格が用いられる。
【００３７】
次に、経路計画装置１０の機能構成について説明する。
【００３８】
図４は、経路計画装置１０の機能構成の例を示すブロック図である。
【００３９】
図４に示すように、経路計画装置１０は、機能構成として、取得部３０、経路計画部３１、制御部３６、及び記憶部３８を有する。経路計画部３１は、第１の経路計画部３２及び第２の経路計画部３４を備える。各機能構成は、ＣＰＵ１１がＲＯＭ１２又はストレージ１４に記憶された経路計画プログラムを読み出し、ＲＡＭ１３に展開して実行することにより実現される。
【００４０】
経路計画部３１は、ロボットの姿勢及びロボットの移動に際し障害となる障害物の特徴から定まる複数の異なる制約条件の各々に適し、かつ複数の異なる制約条件の各々で異なる経路計画法によりロボットの経路を生成する。
【００４１】
経路計画部３１は、障害物によりロボットの移動が制限される度合いについて予め定めた第１の制約条件に適した第１の経路計画法で経路を生成する第１の経路計画部３２と、第１の制約条件よりも障害物によりロボットの移動が制限される度合いが小さい第２の制約条件に適した第２の経路計画法で経路を生成する第２の経路計画部３４と、を備える。
【００４２】
なお、本実施形態では、一例として経路計画部３１が第１の経路計画部３２及び第２の経路計画部３４の２つの経路計画部を備えた場合について説明するが、経路計画法が異なる３つ以上の経路計画部を備えた構成としてもよい。
【００４３】
取得部３０は、経路を生成する対象である対象ロボットとしてのロボットＲＢの初期姿勢及びロボットＲＢの目標姿勢を示す姿勢情報と、初期姿勢から目標姿勢までのロボットＲＢの移動に際し障害となる対象障害物に関する障害物情報を取得する。なお、図１に示す台２０、箱２２、及び棚２４は、ロボットＲＢの移動に際し障害となる対象障害物の一例である。
【００４４】
ここで、ロボットＲＢの初期姿勢とは、ロボットＲＢが予め定めた作業を開始する際の姿勢である。また、ロボットＲＢの目標姿勢とは、ロボットＲＢが予め定めた作業を終了した際の姿勢である。例えば図１の例の場合、予め定めた作業は、前述した退避位置から箱２２の中のワークを保持する第１の作業、保持したワークを棚２４に載置する第２の作業、次のワークを保持するために退避位置に退避する第３の作業である。このうち、第２の作業を例として説明する。第２の作業において、ロボットＲＢの初期姿勢とは、例えば図５に示すように、ロボットＲＢのロボットハンドＨが箱２２内のワーク集合ＷＳから選択されたワークＷを保持した際の姿勢である。また、ロボットＲＢの目標姿勢とは、図６に示すように、ロボットハンドＨがワークを棚２４に載置した際の姿勢である。なお、図５に示したロボットＲＢの初期姿勢及び図６に示したロボットＲＢの目標姿勢は何れも一例であり、これに限られるものではない。
【００４５】
また、障害物情報としては、例えば障害物の種類、形状、及び位置等に関する情報が挙げられる。なお、障害物の種類の例としては、例えば図１に示すような板状の台２０、箱２２、棚２４が挙げられる。また、一定の深さ以上の凹みを有する障害物の種類を「ロボットアームが囲まれる可能性がある形状」として定義してもよい。
【００４６】
制約条件は、ロボットの姿勢及びロボットの移動に際し障害となる障害物の特徴から定まる。障害物の特徴とは、例えば障害物の形状、種類、数等である。制約条件は、例えばロボットと障害物との位置関係、障害物の種類、及びロボットの初期姿勢から目標姿勢までの障害物の数の少なくとも１つに基づいて定められている。
【００４７】
具体的には、例えば障害物の種類が箱及び棚等のロボットアームが囲まれ得る形状の障害物であり、ロボットＲＢのロボットハンドＨの少なくとも一部が障害物に囲まれている、ロボットＲＢのロボットハンドＨと障害物との距離が予め定めた閾値以下である、ロボットＲＢの初期姿勢から目標姿勢までの間の障害物の数が予め定めた数以上である等の条件が挙げられるが、これらに限られるものではない。
【００４８】
また、第１の制約条件に適した第１の経路計画法とは、第１の制約条件の下で複数の異なる経路計画法で経路を生成した場合に、他の経路計画法と比較して経路の生成にかかる時間が最も短くなる経路計画法をいう。同様に、第２の制約条件に適した第２の経路計画法とは、第２の制約条件の下で複数の異なる経路計画法で経路を生成した場合に、他の経路計画法と比較して経路の生成にかかる時間が最も短くなる経路計画法をいう。
【００４９】
経路計画法としては種々公知の方法を採用することができる。例えば、経路計画法としては、ＲＲＴ(Ｒａｐｉｄｌｙ  ｅｘｐｌｏｒｉｎｇ  ｒａｎｄｏｍ  ｔｒｅｅ)、ＲＲＴの改良版であるＲＲＴ＊、ＲＲＴ  ｃｏｎｎｅｃｔ、ＥＥＴ（Ｅｘｐｌｏｒｉｎｇ／Ｅｘｐｌｏｉｔｉｎｇ  Ｔｒｅｅ）、ＲＲＴに類似のランダムサンプリング法であるＰＲＭ（Ｐｒｏｂａｂｉｌｉｓｔｉｃ  Ｒｏａｄｍａｐ  Ｍｅｔｈｏｄ）及びその改良版、最適化手法であるＣＨＯＭＰ（Ｃｏｖａｒｉａｎｔ  Ｈａｍｉｌｔｏｎｉａｎ  Ｏｐｔｉｍｉｚａｔｉｏｎ  ｆｏｒ  Ｍｏｔｉｏｎ  Ｐｌａｎｎｉｎｇ）、ＳＴＯＭＰ（Ｓｔｏｃｈａｓｔｉｃ  Ｔｒａｊｅｃｔｏｒｙ  Ｏｐｔｉｍａｚａｔｉｏｎ  ｆｏｒ  Ｍｏｔｉｏｎ  Ｐｌａｎｎｉｎｎｇ）等が挙げられる。
【００５０】
ここで、ロボットＲＢの移動が制限される度合いが比較的大きい条件において、経路の生成にかかる時間が比較的短いとされている経路計画法としてＰＲＭが挙げられる。以下、ＰＲＭによる経路の生成の概略について説明する。
【００５１】
ＰＲＭでは、図７に示すように、コンフィグレーション空間Ｃの障害物Ａ以外の空間にランダムにノードＮを生成する。ここで、コンフィグレーション空間とは、ロボットＲＢのジョイントＪ１〜Ｊ６の回転角度を座標軸とした空間である。
【００５２】
次に、図８に示すように、近傍のノードＮ同士を直線Ｌで接続する。次に、図９に示すように、初期姿勢Ｂ１に近いノードｑ’及び目標姿勢Ｂ２に近いノードｑ”を探索する。次に、図１０に示すように、ノードｑ’とノードｑ”との最短経路Ｋを探索する。
【００５３】
ＰＲＭは、事前にコンフィグレーション空間中に有効な経路を計算しておくため、ロボットＲＢの移動が障害物により制限される度合いが大きくても短い時間で経路を生成できる。
【００５４】
一方、ロボットＲＢの移動が制限される度合いが小さい条件において、経路の生成にかかる時間が比較的短い経路計画法としてＣＨＯＭＰが挙げられる。以下、ＣＨＯＭＰによる経路の生成の概略について説明する。
【００５５】
まず、初期姿勢と目標姿勢とを直線で結ぶ。次に、障害物の避けやすさ及び軌跡の滑らかさを表すパラメータを含む評価関数を設定する。そして、設定した評価関数の勾配を求め、最急降下法により、最適な経路を探索する。
【００５６】
ＣＨＯＭＰは、初期姿勢と目標姿勢を直線で結んでから処理を開始するため、ロボットＲＢの周辺に障害物が少ない場合は短時間で経路が生成できる可能性が高い。
【００５７】
従って、例えば第１の経路計画法としてＰＲＭを採用し、第２の経路計画法としてＣＨＯＭＰを採用することができる。
【００５８】
制御部３６は、取得部３０で取得した姿勢情報及び障害物情報から定まる制約条件に適した経路計画法で対象ロボットの経路を生成するように経路計画部３１を制御する。具体的には、制御部３６は、ロボットＲＢの第１〜３の経路のうち、ロボットＲＢの姿勢と障害物との関係が第１の制約条件を満たす区間については、第１の経路計画部３２により経路を生成し、ロボットＲＢの姿勢と障害物との関係が第２の制約条件を満たす区間については、第２の経路計画部３４により経路を生成するように制御する。
【００５９】
記憶部３８は、経路計画プログラム、ロボットＲＢのベースリンクＢＬ及びリンクＬ１〜Ｌ６の形状データ、ジョイントＪ１〜Ｊ６の可動域に関する情報、ロボットハンドＨの形状データ、ワークの形状データ、障害物の形状及び位置に関する情報等の各種情報を記憶する。
【００６０】
次に、経路計画装置１０の作用について説明する。
【００６１】
図１１は、経路計画装置１０のＣＰＵ１１により実行される経路計画の流れを示すフローチャートである。オペレータにより経路計画の実行が指示されると、ＣＰＵ１１がＲＯＭ１２又はストレージ１４から経路計画プログラムを読み出して、ＲＡＭ１３に展開し実行することにより、経路計画が実行される。
【００６２】
ＣＰＵ１１は、制御部３６として画像センサＳに撮影を指示し、取得部３０として画像センサＳが撮影した撮影画像を取得する（ステップＳ１０）。
【００６３】
ＣＰＵ１１は、制御部３６として、ステップＳ１０で取得した撮影画像に基づいて、箱２２内にワークＷが存在するか否かを判定する（ステップＳ１２）。換言すれば、ＣＰＵ１１は、ワーク集合ＷＳから全てのワークＷを箱２２から棚２４へ搬送したか否かを判定する。具体的には、例えばステップＳ１６で取得した撮影画像に対して画像処理を施し、撮影画像中にワークＷが存在するか否かを判定する。また、最初に箱２２に収容されていたワークの収容数が予め判っている場合には、ワークを搬送した回数が収容数に達したか否かを判定してもよい。
【００６４】
そして、箱２２内にワークＷが存在しない場合、すなわち全てのワークＷを搬送した場合（ステップＳ１０：ＹＥＳ）、本ルーチンを終了する。一方、箱２２内にワークＷが存在する場合、すなわち全てのワークを搬送していない場合（ステップＳ１０：ＮＯ）、ステップＳ１４へ移行する。
【００６５】
ＣＰＵ１１は、制御部３６として、撮影画像に基づいて、保持するワークＷを選択し、選択したワークＷを保持するロボットＲＢの姿勢を算出する（ステップＳ１４）。保持するワークＷの選択基準としては、例えばワーク集合ＷＳの中で最上部にあるワークＷを選択する、ワーク集合ＷＳの中央に存在するワークＷを選択する、他のワークＷと重ならないワークＷを選択する等が挙げられるが、これらに限られるものではない。
【００６６】
保持するワークＷを選択した後、選択したワークＷを保持するためのロボットハンドの姿勢を取得する。これは、例えばワークＷの形状に応じたロボットハンドの姿勢を予め記憶部３８に記憶しておき、記憶部３８から読み出せばよい。次に、取得したロボットハンドの姿勢と、保持するワークＷの位置及び姿勢と、に基づいて、実際にワークＷを保持するためのロボットハンドの位置及び姿勢を算出する。最後に、逆運動学（ＩＫ：Ｉｎｖｅｒｓｅ  Ｋｉｎｅｍａｔｉｃｓ）と呼ばれる公知の手法を用いて、算出したロボットハンドの位置及び姿勢を実現するためのロボットＲＢの姿勢、すなわち目標姿勢を算出する。
【００６７】
ＣＰＵ１１は、制御部３６として、ロボットＲＢが退避位置に退避した退避姿勢を初期姿勢とし、ロボットＲＢが箱２２内でワークを保持する保持姿勢を目標姿勢とする第１の経路を生成する（ステップＳ１６）。
【００６８】
ＣＰＵ１１は、制御部３６として、ロボットＲＢが箱２２内からワークを保持した保持姿勢を初期姿勢とし、ロボットＲＢがワークを棚２４に載置する載置姿勢を目標姿勢とする第２の経路を生成する（ステップＳ１８）。
【００６９】
ＣＰＵ１１は、制御部３６として、ロボットＲＢがワークを棚２４に載置した載置姿勢を初期姿勢とし、ロボットＲＢが退避位置に退避した退避姿勢を目標姿勢とする第３の経路を生成する（ステップＳ２０）。
【００７０】
以下、図１２を参照して、第１〜３の経路の生成処理について説明する。ステップＳ１６〜Ｓ２０では、図１２の処理が各々実行される。なお、以下では、第２の制約条件が第１の制約条件を満たさない条件である場合について説明する。すなわち、第１の制約条件を満たさない場合が第２の制約条件を満たす場合と同じである場合について説明する。
【００７１】
図１２の処理において、ＣＰＵ１１は、取得部３０として、ロボットＲＢの初期姿勢及びロボットＲＢの目標姿勢を表す姿勢情報と、初期姿勢から目標姿勢までのロボットＲＢの移動に際し障害となる障害物に関する障害物情報を取得する（ステップＳ１００）。
【００７２】
ここで、第１の経路を生成する場合は、初期姿勢は退避姿勢であり、目標姿勢は保持姿勢である。また、第２の経路を生成する場合は、初期姿勢は保持姿勢であり、目標姿勢は載置姿勢である。また、第３の経路を生成する場合は、初期姿勢は載置姿勢であり、目標姿勢は退避姿勢である。
【００７３】
なお、第２の経路を生成する場合、目標姿勢、すなわち、ロボットＲＢがワークを棚２４に載置する載置姿勢については、以下のように取得できる。例えば棚２４に設けられた複数の載置場所を予めティーチングしておき、ティーチングした複数の載置場所の位置情報及び複数の載置場所にワークを載置する載置順序を記憶部３８としてのストレージ１４に記憶しておく。そして、載置順序に従って決められた載置場所にワークを載置する場合のロボットＲＢの姿勢を目標姿勢とする。なお、保持するワークを選択する場合と同様に、棚２４を撮影する画像センサを設け、棚２４を撮影した撮影画像に基づいてワークを載置する載置場所を選択してもよい。この場合、選択した載置場所にワークを載置する場合のロボットＲＢの姿勢を目標姿勢とし、前述した第１の経路の目標姿勢を算出する場合と同様に算出すればよい。
【００７４】
前述したように、ロボットＲＢの姿勢はジョイントＪ１〜Ｊ６の各々の回転角度によって定まる。従って、ロボットＲＢの初期姿勢に関する情報とは、初期姿勢に対応するジョイントＪ１〜Ｊ６の回転角度の情報である。また、ロボットＲＢの目標姿勢に関する情報とは、目標姿勢に対応するジョイントＪ１〜Ｊ６の回転角度の情報である。
【００７５】
ロボットＲＢの初期姿勢から目標姿勢までのロボットＲＢの移動に際し障害となる障害物に関する障害物情報は、本実施形態では一例として障害物の形状及び位置を表す情報である。障害物情報は、例えば予めストレージ１４に記憶しておき、ストレージ１４から読み出すことで取得することができる。
【００７６】
ＣＰＵ１１は、制御部３６として、ステップＳ１００で取得した障害物の形状を表す情報に基づいて、障害物の種類を識別する（ステップＳ１０２）。障害物の種類の識別は予め定めたルールに基づいて行う。ルールの例としては、障害物の形状が、高さ方向に一定の深さ以上の凹みを有する形状である場合は、障害物の種類を「箱」とするルールが挙げられる。また、障害物が高さ方向と直交する方向に一定の長さ以上の凹みを有する形状である場合は、障害物の種類を「棚」とするルールが挙げられる。また、障害物が一定の深さ以上の凹みを有する形状である場合は、障害物の種類を「ロボットアームが囲まれ得る形状」とするルールが挙げられる。なお、予め定めたルールは、これらに限られるものではない。また、障害物の種類の識別は、最初にワークを搬送するときに実行すればよい。従って、本ルーチンの実行が２回目以降の場合には、ステップＳ１０２の処理を省略してもよい。
【００７７】
ＣＰＵ１１は、制御部３６として、ロボットＲＢの初期姿勢を第１の中間姿勢に設定すると共に、ロボットＲＢの目標姿勢を第２の中間姿勢に設定する（ステップＳ１０４）。
【００７８】
ＣＰＵ１１は、制御部３６として、ロボットＲＢの初期姿勢が第１の制約条件を満たすか否かを判定する（ステップＳ１０６）。具体的には、障害物の種類が箱又は棚の場合は、ロボットＲＢのロボットアームの少なくとも一部が箱又は棚に囲まれているか否かを判定する。例えば障害物が箱２２の場合、図１３に示すように、箱２２をバウンディングボックス化して簡易な形状の物体２２Ａに変換する。そして、公知の干渉判定技術を用いてロボットアームが物体２２Ａと干渉していると判定した場合は、図１４に示すように、ロボットアームの少なくとも一部が箱２２に囲まれていると判定し、ロボットアームが物体２２Ａと干渉していないと判定した場合は、ロボットアームが箱２２に囲まれていないと判定する。ここで、干渉とは、ロボットと障害物とが接触することをいう。また、公知の干渉判定技術としては、例えば特開２００２−２７３６７５号公報に記載の技術を用いることができる。なお、箱２２を凸包化又はバウンディングスフィア化することにより簡易な形状に変換してもよい。
【００７９】
ロボットＲＢの初期姿勢が第１の制約条件を満たす場合（ステップＳ１０６：ＹＥＳ）、すなわち、例えば第２の経路の生成において、ロボットＲＢの初期姿勢としてロボットアームの少なくとも一部が箱２２に囲まれている場合、ＣＰＵ１１は、第１の経路計画部３２として、ロボットＲＢの初期姿勢からロボットＲＢのロボットアームが箱２２から脱出した後の脱出姿勢までの脱出区間の経路を生成する（ステップＳ１０８）。ここで、ロボットＲＢの脱出姿勢とは、ロボットＲＢが第１の制約条件を満たさない姿勢、すなわち、第２の制約条件を満たす姿勢である。具体的には、脱出姿勢は、ロボットアームが箱２２から脱出し、ロボットアームが箱２２によって囲まれていない姿勢、すなわち箱２２によりロボットＲＢの移動が制限される度合いが小さい姿勢である。
【００８０】
ロボットＲＢの脱出姿勢は、ピックアンドプレースのように、ある程度固定された区間でロボットＲＢが動作する場合は、事前にティーチングして記憶部３８に記憶しておけばよい。この場合、箱２２の中央から鉛直方向上側に、ロボットハンドが完全に箱２２から出ている姿勢を脱出姿勢として記憶部３８に記憶しておけばよい。また、ロボットＲＢが、ある程度固定された区間ではなく任意の空間で動作する場合は、初期姿勢と、目標姿勢又は経路計画で解が出やすい任意の姿勢と、の間で第１の経路計画部３２による経路計画を実行し、第１の制約条件を満たさない姿勢が発生した時点で第１の経路計画部３２による経路計画を打ち切り、その時点の姿勢を脱出姿勢としてもよい。なお、脱出区間は、本発明の第１の区間の一例である。
【００８１】
ＣＰＵ１１は、制御部３６として、第１の中間姿勢を脱出姿勢に設定する（ステップＳ１１０）。
【００８２】
一方、ロボットＲＢが第１の制約条件を満たさない場合（ステップＳ１０６：ＮＯ）、ステップＳ１１２へ移行する。
【００８３】
ＣＰＵ１１は、制御部３６として、ロボットＲＢの目標姿勢が第１の制約条件を満たすか否かを判定する（ステップＳ１１２）。具体的には、障害物の種類が箱又は棚の場合は、ロボットＲＢのロボットアームの少なくとも一部が箱又は棚に囲まれているか否かをステップＳ１０６と同様に判定する。
【００８４】
ロボットＲＢの目標姿勢が第１の制約条件を満たす場合（ステップＳ１１２：ＹＥＳ）、すなわち、例えば第２の経路の生成において、ロボットＲＢの目標姿勢としてロボットアームの少なくとも一部が棚２４に囲まれている場合、ＣＰＵ１１は、第１の経路計画部３２として、ロボットＲＢのロボットアームが棚２４へ突入する直前の突入姿勢から目標姿勢までの突入区間の経路を生成する（ステップＳ１１４）。ここで、ロボットＲＢの突入姿勢とは、ロボットＲＢが第１の制約条件を満たさない姿勢、すなわち、ロボットアームが棚２４に突入する前の棚２４に囲まれていない状態の姿勢である。
【００８５】
ロボットＲＢの突入姿勢は、脱出姿勢と同様に設定することができる。すなわち、ピックアンドプレースのように、ある程度固定された区間でロボットＲＢが動作する場合は、事前にティーチングして記憶部３８に記憶しておけばよい。この場合、棚２４の正面でロボットハンドが完全に棚２４から出ている姿勢を突入姿勢として記憶部３８に記憶しておけばよい。また、ロボットＲＢが、ある程度固定された区間ではなく任意の空間で動作する場合は、目標姿勢と、初期姿勢又は経路計画で解の出やすい任意の姿勢と、の間で第１の経路計画部３２による経路計画を実行し、第１の制約条件を満たさない姿勢が発生した時点で第１の経路計画部３２による経路計画を打ち切り、その時点の姿勢を突入姿勢としてもよい。この方法で突入区間の経路を生成した場合、目標姿勢から突入姿勢に向けての経路が生成されているので、順序を逆にする必要がある。なお、突入区間は、本発明の第２の区間の一例である。
【００８６】
ＣＰＵ１１は、制御部３６として、第２の中間姿勢を突入姿勢に設定する（ステップＳ１１６）。
【００８７】
一方、ロボットＲＢが第１の制約条件を満たさない場合（ステップＳ１１２：ＮＯ）、ステップＳ１１８へ移行する。
【００８８】
ＣＰＵ１１は、第２の経路計画部３４として、第１の中間姿勢から第２の中間姿勢までの搬送区間の経路を生成する（ステップＳ１１８）。なお、搬送区間は、本発明の第３の区間の一例である。
【００８９】
図１１に戻って、ＣＰＵ１１は、ロボットＲＢの第１〜３の経路に基づいてロボットＲＢの動作指令値を生成し、ロボットＲＢに送信する（ステップＳ２２）。これにより、生成された第１〜第３の経路に従ってロボットＲＢが移動する。すなわち、ロボットＲＢが、退避位置から移動して箱２２の中のワークを保持し、棚２４の所定位置に載置した後、退避位置に戻るように動作する。
【００９０】
図１５には、第２の経路において、ロボットＲＢの初期姿勢及び目標姿勢がともに第１の制約条件を満たす場合（ステップＳ１０６：ＹＥＳ、ステップＳ１１２：ＹＥＳ）における経路計画を模式的に表した。図中の「○」は、コンフィグレーション空間におけるロボットＲＢの姿勢を表している。ロボットＲＢの初期姿勢及び目標姿勢がともに第１の制約条件を満たす場合は、図１５に示すように、初期姿勢Ｓから第１の制約条件を満たさない第１の中間姿勢Ｃ１までの脱出区間Ｋ１と、第１の制約条件を満たさない第２の中間姿勢Ｃ２から目標姿勢Ｍまでの突入区間Ｋ３と、については、第１の経路計画部３２により経路を生成する。また、第１の中間姿勢から第２の中間姿勢までの搬送区間Ｋ２については、第２の経路計画部３４により経路を生成する。
【００９１】
また、図１６には、図１１のステップＳ１６で第１の経路を生成する場合のように、ロボットＲＢの目標姿勢のみ第１の制約条件を満たす場合（ステップＳ１０６：ＮＯ、ステップＳ１１２：ＹＥＳ）における経路計画を模式的に表した。この場合、図１６に示すように、第１の中間姿勢Ｃ１は初期姿勢Ｓで置き換えられているため、第１の中間姿勢Ｃ１から第２の中間姿勢Ｃ２までの搬送区間Ｋ２については、第２の経路計画部３４により経路を生成する。また、第１の制約条件を満たさない第２の中間姿勢Ｃ２から目標姿勢Ｍまでの突入区間Ｋ３については、第１の経路計画部３２により経路を生成する。
【００９２】
また、図示は省略するが、図１１のステップＳ２０で第３の経路を生成する場合のように、ロボットＲＢの初期姿勢のみ第１の制約条件を満たす場合（ステップＳ１０６：ＹＥＳ、ステップＳ１１２：ＮＯ）は、初期姿勢Ｓから第１の中間姿勢Ｃ１までの脱出区間Ｋ１は、第１の経路計画部３２により経路を生成する。また、第２の中間姿勢Ｓ２は目標姿勢Ｍで置き換えられているため、第１の中間姿勢から第２の中間姿勢Ｓ２（目標姿勢Ｍ）までの搬送区間Ｋ２については、第２の経路計画部３４により経路を生成する。
【００９３】
また、図示は省略するが、図１１のステップＳ１８で第２の経路を生成する場合のように、ロボットＲＢの初期姿勢及び目標姿勢ともに第１の制約条件を満たさない場合（ステップＳ１０６：ＮＯ、ステップＳ１１２：ＮＯ）は、第１の中間姿勢Ｃ１は初期姿勢Ｓで置き換えられ、第２の中間姿勢Ｓ２は目標姿勢Ｍで置き換えられるため、搬送区間Ｋ２のみとなる。このため、搬送区間Ｋ２については、第２の経路計画部３４により経路を生成する。
【００９４】
このように、本実施形態では、ロボットＲＢの第１〜３の経路において、ロボットＲＢの姿勢と障害物との関係が第１の制約条件を満たす区間については、第１の経路計画部３２により経路を生成し、ロボットＲＢの姿勢と障害物との関係が第１の制約条件を満たさない、すなわち第２の制約条件を満たす区間については、第２の経路計画部３４により経路を生成する。
【００９５】
このため、ロボットＲＢの経路の生成にかかる時間を短縮することができ、ロボットＲＢの動作の開始が遅くなるのを防ぐことができる。
【００９６】
経路計画装置１０は、上記の実施形態に限定されず、種々の改変が可能である。例えば、本実施形態では、図１２のステップＳ１０２で障害物の形状を表す情報に基づいて障害物の種類を識別しているが、障害物の種類を予めストレージ１４に記憶しておいてもよい。この場合、ステップＳ１０２の処理を省略することができる。
【００９７】
また、本実施形態では、ロボットＲＢが垂直多関節ロボットである場合について説明したが、前述したように、他の種類のロボットにも適用可能である。ただし、図１２のステップＳ１０８において脱出姿勢を設定する際には、ロボットの種類によってはロボットの種類に固有の方法で脱出姿勢を設定する必要がある。
【００９８】
例えば図１７に示すようなモバイルロボットＭＲＢを、障害物としての車庫４０から脱出させる経路を生成する場合、「ロボットの前方が車庫の出口」というヒューリスティックな知識に基づいて、モバイルロボットＭＲＢの前方に向かって予め定めた距離だけ離れた位置を脱出姿勢とする。また、モバイルロボットにはレーザレーダ等のセンサが備えられているのが一般的である。このため、レーザレーダ等のセンサを用いて車庫４０の開口部を探索し、探索した開口部の前方に向かって予め定めた距離だけ離れた位置を脱出姿勢としてもよい。なお、飛行ロボットが障害物に囲まれている場合もモバイルロボットＭＲＢと同様に脱出姿勢を設定できる。ただし、障害物の開口部が地面に対して鉛直方向に向けて開口している場合には、鉛直方向に経路が生成され得る点がモバイルロボットＭＲＢの場合と異なる。
【００９９】
また、例えば図１８に示すようなヒューマノイド型ロボットＨＲＢのロボットアームの手先が障害物としての箱４２に囲まれている場合において、ロボットアームを箱４２から脱出させる経路を生成する場合、例えばロボットアームの腕の肘に相当する位置を、脱出姿勢の手の位置とする。
【０１００】
なお、上記各実施形態でＣＰＵがソフトウェア（プログラム）を読み込んで実行した経路計画を、ＣＰＵ以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の製造後に回路構成を変更可能なＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、及びＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、経路計画を、これらの各種のプロセッサのうちの１つで実行してもよいし、同種又は異種の２つ以上のプロセッサの組み合わせ（例えば、複数のＦＰＧＡ、及びＣＰＵとＦＰＧＡとの組み合わせ等）で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【０１０１】
また、上記各実施形態では、経路計画プログラムがストレージ１４又はＲＯＭ１２に予め記憶（インストール）されている態様を説明したが、これに限定されない。プログラムは、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ−ＲＯＭ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、及びＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等の記録媒体に記録された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。さらに、本実施形態では、経路計画及びその他の処理を経路計画装置１０が実行する場合について説明したが、経路計画及びその他の処理を分散環境で実行する形態としてもよい。
【符号の説明】
【０１０２】
１     ピックアンドプレース装置
１０   経路計画装置
３０   取得部
３１   経路計画部
３２   第１の経路計画部
３４   第２の経路計画部
３６   制御部
３８   記憶部
【図１】
2019214084.tif 000003
【図２】
2019214084.tif 000004
【図３】
2019214084.tif 000005
【図４】
2019214084.tif 000006
【図５】
2019214084.tif 000007
【図６】
2019214084.tif 000008
【図７】
2019214084.tif 000009
【図８】
2019214084.tif 000010
【図９】
2019214084.tif 000011
【図１０】
2019214084.tif 000012
【図１１】
2019214084.tif 000013
【図１２】
2019214084.tif 000014
【図１３】
2019214084.tif 000015
【図１４】
2019214084.tif 000016
【図１５】
2019214084.tif 000017
【図１６】
2019214084.tif 000018
【図１７】
2019214084.tif 000019
【図１８】
2019214084.tif 000020