(57)【要約】【課題】ロボットの設置位置を自動で決定できるロボットの設置位置決定装置を提供することを課題とする。【解決手段】作業部位が通過点を経由して作業を行う関節ロボットの設置位置を決定するロボットの設置位置決定装置１であって、関節ロボットが初期設置位置に設置された場合に通過点を含む作業領域の作業点群を作業部位が届く作業点と届かない作業点とに分類する作業点分類手段６と、その分類結果に基づいて全ての通過点が作業部位の届く作業点となるように初期設置位置から設置位置を変更する設置位置変更手段７とを備え、さらに、通過点間の経路上の各作業点についての可操作度を演算する可操作度演算手段６及び通過点間の経路上の各作業点の可操作度に基づいて通過点間の経路を分割する経路分割手段６を備え、設置位置変更手段７は、経路の分割数が所定数より小さくなるように設置位置を変更すると好適である。【選択図】図１
2008290223.tif 000002
【特許請求の範囲】
【請求項１】
関節ロボットの作業部位が通過点を経由して作業を行うための関節ロボットの設置位置を決定するロボットの設置位置決定装置であって、
関節ロボットが初期設置位置に設置された場合に通過点を含む作業領域の作業点群を作業部位が届く作業点と届かない作業点とに分類する作業点分類手段と、
前記作業点分類手段での分類結果に基づいて、全ての通過点が作業部位の届く作業点となるように初期設置位置から設置位置を変更する設置位置変更手段と
を備えることを特徴とするロボットの設置位置決定装置。
【請求項２】
通過点間の経路上の各作業点についての可操作度を演算する可操作度演算手段を備え、
前記設置位置変更手段は、前記可操作度演算手段で演算した通過点間の経路上の各作業点の可操作度が所定値以上になるように初期設置位置から設置位置を変更することを特徴とする請求項１に記載するロボットの設置位置決定装置。
【請求項３】
前記可操作度演算手段で演算した通過点間の経路上の各作業点の可操作度に基づいて通過点間の経路を分割する経路分割手段を備え、
前記設置位置変更手段は、前記経路分割手段で分割した経路の分割数が所定数より小さくなるように初期設置位置から設置位置を変更することを特徴とする請求項２に記載するロボットの設置位置決定装置。
【請求項４】
関節ロボットの作業部位が通過点を経由して作業を行うための関節ロボットの設置位置を決定するロボットの設置位置決定方法であって、
関節ロボットが初期設置位置に設置された場合に通過点を含む作業領域の作業点群を作業部位が届く作業点と届かない作業点とに分類する作業点分類ステップと、
前記作業点分類ステップでの分類結果に基づいて、全ての通過点が作業部位の届く作業点となるように初期設置位置から設置位置を変更する設置位置変更ステップと
を含むことを特徴とするロボットの設置位置決定方法。
【請求項５】
通過点間の経路上の各作業点についての可操作度を演算する可操作度演算ステップを含み、
前記設置位置変更ステップは、前記可操作度演算ステップで演算した通過点間の経路上の各作業点の可操作度が所定値以上になるように初期設置位置から設置位置を変更することを特徴とする請求項４に記載するロボットの設置位置決定方法。
【請求項６】
前記可操作度演算ステップで演算した通過点間の経路上の各作業点の可操作度に基づいて通過点間の経路を分割する経路分割ステップを含み、
前記設置位置変更ステップは、前記経路分割ステップで分割した経路の分割数が所定数より小さくなるように初期設置位置から設置位置を変更することを特徴とする請求項５に記載するロボットの設置位置決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの設置位置を自動的に決定するロボットの設置位置決定装置及びロボットの設置位置決定方法に関する。
【背景技術】
【０００２】
近年、各種産業用ロボットや人型ロボット等の様々なロボットが開発されている。例えば、ロボットには、多数の関節を有し、関節間がリンクで連結され、各関節の動作によって多数の自由度を持つロボットがある。また、ロボットには、一次元の直線上、二次元の平面内あるいは三次元の空間内に任意に移動（設置）できるロボットがある。このようなロボットに作業を行わせる場合、ロボットを設置する位置が重要であり、作業を行う手先（ハンド部）が作業対象に対して届く位置にロボットを設置することが最低限必要となる。
【０００３】
例えば、特許文献１に記載の産業用ロボットの設置位置の決定方法では、単一または複数の予め定める作業点を処理手段に入力し、産業用ロボットの複数ヶ所の設置位置を予め設定して処理手段に入力し、各設置位置において全ての作業点の作業ができるかどうかを処理手段によって演算し、その演算結果を表示手段によって表示する。さらに、処理手段によって演算して得られる作業可能な設置位置の全てについて、作業点全点の作業時間を処理手段によって演算し、その演算結果を表示手段によって表示する。
【特許文献１】特開平２−２４０９０号公報
【特許文献２】特開平５−１２７７２０号公報
【特許文献３】特開平９−１９６６７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記した設置位置の決定方法の場合、作業可能な設置位置や作業可能な設置位置における各作業点に対する作業時間が表示されるが、実際にロボットを何処に設置するかは表示されている設置位置から作業者が選択する必要がある。また、設置位置の候補についても作業者が予め設定する必要がある。このように設置位置の決定を作業者が行う場合、その作業効率は作業者の経験に依存するところであり、作業者の工数が大きい。
【０００５】
そこで、本発明は、ロボットの設置位置を自動で決定できるロボットの設置位置決定装置及びロボットの設置位置決定方法を提供することを課題とする。
【課題を解決するための手段】
【０００６】
本発明に係るロボットの設置位置決定装置は、関節ロボットの作業部位が通過点を経由して作業を行うための関節ロボットの設置位置を決定するロボットの設置位置決定装置であって、関節ロボットが初期設置位置に設置された場合に通過点を含む作業領域の作業点群を作業部位が届く作業点と届かない作業点とに分類する作業点分類手段と、作業点分類手段での分類結果に基づいて、全ての通過点が作業部位の届く作業点となるように初期設置位置から設置位置を変更する設置位置変更手段とを備えることを特徴とする。
【０００７】
このロボットの設置位置決定装置では、関節ロボットの作業部位（例えば、手先、ハンド）が作業を行う作業領域内に作業部位が作業を行う際の作業点が設定されており、作業部位がこの作業点群の中の点を通過点として各種作業を行う。まず、設置位置決定装置では、作業点分類手段により、初期設置位置に設置された関節ロボットの作業部位が作業点群の各作業点に届くか否かを判定し、作業点群を作業部位が届く作業点と届かない作業点とに分類する。作業部位が届く作業点については、その作業点まで作業部位が移動可能であり、作業部位によって作業を行うことができる。一方、作業部位が届かない作業点については、その作業点まで作業部位が移動できないので、作業部位による作業が不可である。したがって、作業部位が作業を行う際に通過する全ての通過点を作業部位が届く作業点とする必要がある。そこで、設置位置決定装置では、設置位置変更手段により、作業点群の分類結果に基づいて、全ての通過点が作業部位が届く作業点になるように初期設置位置から設置位置を変更する。このように、設置位置決定装置では、作業領域内の作業点群のうち作業部位が届く作業点に基づいて設置位置を決定することにより、設置位置を自動で決定することができる。
【０００８】
なお、初期設置位置は、設置位置決定装置によって自動的に決定されてもよいし、あるいは、作業者によって設定されてもよい。初期設置位置から設置位置を変更する必要がない場合（最初から全ての通過点が作業部位が届く作業点の場合）、設置位置変更手段では初期設置位置自体を設置位置とする（この場合、変更量は０である）。
【０００９】
本発明の上記ロボットの設置位置決定装置では、通過点間の経路上の各作業点についての可操作度を演算する可操作度演算手段を備え、設置位置変更手段は、可操作度演算手段で演算した通過点間の経路上の各作業点の可操作度が所定値以上になるように初期設置位置から設置位置を変更するように構成してもよい。
【００１０】
このロボットの設置位置決定装置では、可操作部演算手段により、通過点間の経路上の各作業点についての可操作度を演算する。可操作度は、ロボットの作業部位の動かし易さである。可操舵度が高いほど、動かし易く、関節ロボットのアクチュエータの負荷が軽減される。一方、可操作度が低いほど、動かし難く、関節ロボットのアクチュエータに負荷が増大される。設置位置決定装置では、設置位置変更手段により、演算した通過点間の経路上の各作業点の可操作度が所定値以上になるように初期位置設置から設置位置を変更する。所定値は、設置位置によって関節ロボットの作業部位をどの程度動かし易くするか否かを決めるための閾値であり、関節ロボットのアクチュエータの負荷の程度、設置位置を決定するための工数等を考慮して設定される。所定値を大きくするほど、関節ロボットの作業部位を動かし易い設置位置となるが（設置位置がより最適な位置となるが）、設置位置を決定し難くなる（設置位置を決定するための工数が増加する）。このように、設置位置決定装置では、通過点間の経路上の各作業点の可操作度を考慮することにより、より最適な設置位置を決定することができる。
【００１１】
本発明の上記ロボットの設置位置決定装置では、可操作度演算手段で演算した通過点間の経路上の各作業点の可操作度に基づいて通過点間の経路を分割する経路分割手段を備え、設置位置変更手段は、経路分割手段で分割した経路の分割数が所定数より小さくなるように初期設置位置から設置位置を変更するように構成してもよい。
【００１２】
このロボットの設置位置決定装置では、経路分割手段により、通過点間の経路上の各作業点の可操作度に基づいて当該経路を分割する。経路が分割される条件としては、例えば、可操作度を演算できない箇所（つまり、作業部位が届かない箇所）、可操作度が閾値未満となる箇所（つまり、作業部位を動かし難い箇所）で分割される。設置位置決定装置では、設置位置変更手段により、分割した経路の分割数が所定数より小さくなるように初期設置位置から設置位置を変更する。所定数は、設置位置によって関節ロボットをどの程度動かし易くするか否かを決めるための閾値であり、関節ロボットのアクチュエータの負荷の程度、設置位置を決定するための工数等を考慮して設定される。所定数を小さくするほど（経路の分割数を少なくするほど）、関節ロボットの作業部位を動かし易い設置位置となるが、設置位置を決定し難くなる。このように、設置位置決定装置では、可操作度に基づく通過点間の経路上の分割数を利用することにより、より最適な設置位置を決定することができる。
【００１３】
本発明の上記ロボットの設置位置決定方法では、関節ロボットの作業部位が通過点を経由して作業を行うための関節ロボットの設置位置を決定するロボットの設置位置決定方法であって、関節ロボットが初期設置位置に設置された場合に通過点を含む作業領域の作業点群を作業部位が届く作業点と届かない作業点とに分類する作業点分類ステップと、作業点分類ステップでの分類結果に基づいて、全ての通過点が作業部位の届く作業点となるように初期設置位置から設置位置を変更する設置位置変更ステップとを含むことを特徴とする。
【００１４】
本発明の上記ロボットの設置位置決定方法では、通過点間の経路上の各作業点についての可操作度を演算する可操作度演算ステップを含み、設置位置変更ステップは、可操作度演算ステップで演算した通過点間の経路上の各作業点の可操作度が所定値以上になるように初期設置位置から設置位置を変更するように構成してもよい。
【００１５】
本発明の上記ロボットの設置位置決定方法では、可操作度演算ステップで演算した通過点間の経路上の各作業点の可操作度に基づいて通過点間の経路を分割する経路分割ステップを含み、設置位置変更ステップは、経路分割ステップで分割した経路の分割数が所定数より小さくなるように初期設置位置から設置位置を変更するように構成してもよい。
【００１６】
この各ロボットの設置位置決定方法は、上記した各ロボットの設置位置決定装置と同様の作用を有し、同様の効果を奏する。
【発明の効果】
【００１７】
本発明は、ロボットの設置位置を自動で決定することができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して、本発明に係るロボットの設置位置決定装置及びロボットの設置位置決定方法の実施の形態を説明する。
【００１９】
本実施の形態では、本発明に係るロボットの設置位置決定装置及びロボットの設置位置決定方法を、多自由度リンク系の三次元空間内に設置可能なロボットの設置位置を決定する設置位置決定装置に適用する。本実施の形態に係る設置位置決定装置は、ロボットの手先（作業部位）の動き易さも考慮したより最適な設置位置を自動的に決定し、その決定した設置位置をロボットの経路を作成する経路作成装置等に出力する。なお、本実施の形態では、設置位置を自動的に決定する設置位置決定装置とは別体で経路作成装置が構成されるが、設置位置決定装置と経路作成装置を一体化したものでもよく、さらに、ロボットのアクチュエータを制御する制御装置も一体化したものでもよい。
【００２０】
図１〜図１１を参照して、本実施の形態に係る設置位置決定装置１について説明する。図１は、本実施の形態に係る設置位置決定装置の構成図である。図２は、ロボットと作業棚の一例である。図３は、ロボットの設置位置の候補（Ｘ−Ｙ平面内）の一例である。図４は、ロボットの設置位置の候補（Ｚ軸方向）の一例である。図５は、ロボットの設置位置の候補（Ｚ軸方向）の他例である。図６は、図１の作業点分類部で分類した初期設置位置でのロボットの手先が届く作業点（Ｘ−Ｙ平面内）の一例である。図７は、通過点の一例である。図８は、隣接する通過点間の作業点の一例である。図９は、全ての通過点間の経路の分割の一例である。図１０は、ロボットの手先の届く作業点の可操舵度のレベル分けの一例である。図１１は、図１の設置位置変更部での設置位置の変更の一例である。
【００２１】
設置位置決定装置１では、初期設置位置を決定し、全ての通過点をロボットの手先が届く作業点とし、その通過点間の経路上の各点の可操作度に基づいて初期設置位置からより最適な設置位置を変更する。この際、設置位置決定装置１では、可操作度に基づいて通過点間の経路を分割し、経路の分割数が所定数より小さくなるように設置位置を変更する。
【００２２】
そのために、設置位置決定装置１は、入力部２、データベース３、記憶部４、初期設置位置決定部５、作業点分類部６、設置位置変更部７、出力部８を備えている。設置位置決定装置１の主要部はコンピュータ上あるいはロボット内の電子制御ユニット等に構成され、特に、初期設置位置決定部５、作業点分類部６、設置位置変更部７はハードディスクあるいはＲＯＭ内に格納された各アプリケーションプログラムをＲＡＭにロードし、ＣＰＵで実行することによって構成される。
【００２３】
なお、本実施の形態では、作業点分類部６が特許請求の範囲に記載する作業点分類手段、可操作度演算手段及び経路分割手段に相当し、設置位置変更部７が特許請求の範囲に記載する設置位置変更手段に相当する。
【００２４】
まず、本実施の形態に適用されるロボットや作業棚及び用語について説明しておく。図２にはロボットの一例を示している。ロボットＲは、多数の関節Ｊ，・・・を備えており、関節間がリンクＬ，・・・で接続されている関節ロボットである。また、ロボットＲは、末端のリンクＬの一端が作業台Ｓに取り付けられ、先端のリンクＬの一端に手先Ｈが取り付けられている。各関節Ｊ，・・・は、アクチュエータが内蔵されており、回転動作をそれぞれ行い、接続される２本のリンク間の角度をそれぞれ変更する。手先Ｈは物体を把持したりあるいは把持した物体を離したりすることができ、ロボットＲはピッキングロボットである。
【００２５】
作業台Ｓは、ロボットＲの設置位置を変更するために、三次元空間内を移動可能である。作業台Ｓは、作業者によって手動で移動できるものでもよいし、あるいは、自律移動できるものでもよい。自律移動の手段としては、例えば、平面内では駆動モータや操舵モータによって走行するものやレール式のもの、高さ方向にはスライド式のものがある。作業台Ｓの上面の中心位置ＳＰがロボットＲの立ち位置（すなわち、設置位置）であり、ロボットＲの位置は、ベース座標系Ｘｂａｓｅ、Ｙｂａｓｅ、Ｚｂａｓｅにおける座標で規定される。また、ロボットＲは、作業対象に対して向きがＺｂａｓｅ軸の回転で規定される。したがって、ロボットＲの設置については、４変数（立ち位置の３変数と向きの１変数）で規定される。
【００２６】
このように、ロボットＲは、関節Ｊ，・・・の各角度とロボットＲの設置の４変数のｎ個の自由度を持つ。この自由度は、ｎ次元座標空間（コンフィグレーション空間）における一点（Ａ１，・・・，Ａｎ）で表される。ロボットＲの手先Ｈの位置ＨＰは、手先座標系Ｘｈ、Ｙｈ、Ｚｈにおける座標で規定される。座標位置ＨＰ（ＸＨ，ＹＨ，ＺＨ）は、コンフィグレーション空間から実際の三次元空間への非線形写像の値として、ＸＨ＝ｆ１（Ａ１，・・・，Ａｎ）、ＹＨ＝ｆ２（Ａ１，・・・，Ａｎ）、ＺＨ＝ｆ３（Ａ１，・・・，Ａｎ）で定義される。したがって、コンフィグレーション空間の（Ａ１，・・・，Ａｎ）を規定すると、（ＸＨ，ＹＨ，ＺＨ）が決まる。また、手先Ｈの姿勢は、手先座標系Ｘｈ、Ｙｈ、Ｚｈの各軸の回転（姿勢）変数（Ｒｘ，Ｒｙ，Ｒｚ）で規定される。したがって、手先Ｈの位置と姿勢は、（ＸＨ，ＹＨ，ＺＨ，Ｒｘ，Ｒｙ，Ｒｚ）の６変数によって規定される。なお、ロボットＲが実際に存在する空間は、三次元空間であり、作業空間と呼ぶ。
【００２７】
作業棚ＷＳは、ロボットＲの作業対象である。作業棚ＷＳには、図２に示すように、例えば、３段の棚ＳＨ，ＳＨ，ＳＨがあり、各棚ＳＨに部品等が置かれている。ロボットＲは、作業棚ＷＳの棚ＳＨに置かれている部品等を他の棚ＳＨに移動させたりあるいは他の場所に移動させたり、また、他の場所に置かれている部品等を作業棚ＷＳの棚ＳＨに移動させる。なお、ロボットＲの作業対象としては、作業棚以外にも様々なものが対象となる。
【００２８】
作業領域ＷＡは、ロボットＲの手先Ｈが作業する際に最大移動可能な範囲である。作業領域ＷＡは、図２に示すように、例えば、作業棚ＷＳの３段の棚ＳＨ，ＳＨ，ＳＨの空間を十分に含む領域が設定される。作業領域ＷＡは、作業者によって入力され、図２に示す例の場合には直方体の作業領域ＷＡの８つの頂点が作業者によって入力される。なお、作業領域としては、直方体以外にも球体等の様々な形状が適用可能である。
【００２９】
作業点は、ロボットＲの手先Ｈが作業領域ＷＡ内で作業を行う点であり、作業領域ＷＡ内の全域に設けられるメッシュの各交点に設定される。このメッシュの間隔は、作業者によって入力される。したがって、設置位置決定装置１では、作業者によって作業領域ＷＡとメッシュの間隔が入力されると、作業点を自動で生成する。なお、メッシュの間隔については、ロボットＲの形状、大きさ、構造等を考慮して予め決められた値としてもよい。
【００３０】
通過点は、ロボットＲの手先Ｈが作業を行う際に通過する点であり、作業点の中から選択される。通過点は、例えば、置かれている部品等を手先Ｈが取る位置、部品等を手先Ｈが置く位置、部品等を把持している手先Ｈが作業棚ＷＳ内を移動するために通過する必要がある位置である。図２には、一番上の棚ＳＨにおける通過点を×印で表示しており、他の棚ＳＨ，ＳＨにおける通過点が非表示となっており、これらの通過点を全て通る手先Ｈの動作軌跡ＭＬも示されている。
【００３１】
基点は、初期設置位置を決定するために用いる手先Ｈの基準となる位置であり、通過点の中の１つである。基点は、作業者によって入力される。初期設置位置は、設置位置を決定するためにロボットＲを最初に置く基準となる設置位置であり、設置位置の候補の中から選択される。初期設置位置は、初期設置位置決定部５で自動で決定するようにしてもよいし、あるいは、設置位置の候補の中から作業者が選択するようにしてもよい。
【００３２】
設置位置の候補は、ロボットＲを設置する位置の候補であり、この中から設置位置が選択される。設置位置の候補は、所定のエリア内に所定の間隔で設定される。このエリアは、作業者によって入力される。所定の間隔については、作業者によって入力されてもよいし、あるいは、ロボットＲの形状、大きさ、構造等を考慮して予め決められた値でもよい。なお、設置位置の候補については、ロボットＲの形状、大きさ、構造及び作業対象（作業棚ＷＳ等）の形状、大きさ、構造等を考慮して設置位置決定装置１において自動で設定するようにしてもよい。なお、設置位置の候補の設定については、エリアと間隔で設定するのではなく、位置座標を直接設定する等の他の方法でもよい。
【００３３】
設置位置の候補としては、例えば、図３に示すように、エリアが円柱形状であり、候補が円柱内に所定の間隔で設定される。図３に示す例の場合、基点ＢＰから鉛直方向に下ろした点ＶＰから所定の方向に所定距離離れた点ＣＰを中心として、作業者によって入力された大きさの円柱ＣＹが上方に形成され、その円柱ＣＹ内に所定の間隔で多数の設置位置の候補ＰＣ，・・・が設定される。図３には円柱ＣＹにおけるＸＹ平面内に設定される設置位置の候補ＰＣ，・・・を示しており、図４には円柱ＣＹにおけるＺ軸方向（高さ方向）に設定される設置位置の候補ＰＣ，・・・を示している。所定の方向は、作業対象（作業棚ＷＳ等）に対するロボットＲの方向であり、予め決められた方向である。所定の方向としては、例えば、ロボットＲが作業対象に対して前を向いている方向である。所定距離は、ロボットＲと作業対象との間の基準となる間隔であり、ロボットＲの形状、大きさ、構造及び作業対象の形状、大きさ、構造等を考慮して予め決めされた距離である。なお、図５に示すように、基点ＢＰを含むＸＹ平面上に基点ＢＰから所定の方向に所定距離離れた点ＣＰを中心として下方に円柱ＣＹを形成するようにしてもよい。
【００３４】
それでは、設置位置決定装置１の各部について説明する。入力部２は、作業者が入力や選択するための手段であり、例えば、マウス、キー、タッチ式である。作業者が入力部２から入力や選択するものとしては、作業領域ＷＡ、作業領域ＷＡ内のメッシュ間隔、設置位置の候補のエリア、設置位置の候補のエリア内の所定の間隔、通過点及び基点である。通過点（基点を含む）については、その通過点における手先Ｈの位置と姿勢の６変数（ＸＨ，ＹＨ，ＺＨ，Ｒｘ，Ｒｙ，Ｒｚ）もそれぞれ入力される。
【００３５】
データベース３は、ハードディスクあるいはＲＡＭの所定の領域に構成される。データベース３には、ロボットＲの形状データ、構造データ、作業棚ＷＳ内の部品の形状データ、ロボットＲが作業を行う環境データ（作業棚ＷＳ、作業台Ｓ等）等が格納される。
【００３６】
記憶部４は、ＲＡＭの所定の領域に構成される。記憶部４には、初期設置位置決定部５、作業点分類部６、設置位置変更部７における各処理結果等が一時記憶される。
【００３７】
初期設置位置決定部５は、初期設置位置を決定する手段である。初期設置位置決定部５では、入力部２から設置位置の候補のエリア情報及び基点が入力されると、設置位置の候補ＰＣ，・・・を設定する。そして、初期設置位置決定部５では、設置位置の候補ＰＣ，・・・毎に、各候補ＰＣの設置位置にロボットＲを設置したと仮定した場合の基点におけるロボットＲの手先Ｈの位置と姿勢（６変数）に対する可操作度をそれぞれ演算する。さらに、初期設置位置決定部５では、全ての設置位置の候補ＰＣ，・・・における各可操作度を比較し、可操作度が最も大きい設置位置の候補ＰＣを初期設置位置として決定する。このように、基点に対する可操作度に基づいて初期設置位置を決定することにより、ロボットＲの手先Ｈが少なくとも基点に届くことが保証される。なお、初期設置位置決定部５では、全ての設置位置の候補ＰＣ，・・・を画面上に表示し、その中から作業者によって選択された候補ＰＣを初期設置位置として決定してもよい。
【００３８】
可操作度は、ロボットＲの手先Ｈを所定の作業点で所定の姿勢で作業させる際のロボットＲの手先Ｈの動かし易さの度合いである。可操作度は、従来の方法によって演算され、０以上の値である。可操舵度の値が大きいほど、ロボットＲの手先Ｈが動かし易く、ロボットＲのアクチュエータの負荷が軽減される。一方、可操作度の値が小さいほど、ロボットＲの手先Ｈが動かし難く、ロボットＲのアクチュエータの負荷が増大される。なお、ロボットＲの手先Ｈが所定の点に届かない場合や所定の姿勢をとれない場合、可操作度を演算できない。
【００３９】
作業点分類部６は、作業領域ＷＡ内の作業点群をロボットＲの手先Ｈが届く作業点と届かない作業点に分類するとともに、通過点間の経路上の作業点の可操作度を演算し、通過点間の経路を分割する。作業点分類部６では、作業点毎に、初期設置位置決定部５で決定された初期設置位置にロボットＲを設置したと仮定した場合にロボットＲの手先Ｈが各作業点に届くか否かを判定する。例えば、作業点毎に、初期設置位置にロボットＲを設置した場合のロボットＲの手先Ｈの位置と姿勢（６変数）に対する可操作度をそれぞれ演算する。そして、０以上の可操作度を演算できた作業点を手先Ｈが届く作業点とし、可操作度を演算できなかった作業点を手先Ｈが届かない作業点とする。
【００４０】
作業点分類部６では、手先Ｈが届く作業点を選択できるように画面上に表示する。例えば、図６に示すように、ロボットＲの手先Ｈが届く作業点ＲＰ，・・・を実線の正方形で画面表示し、選択すると表示色を変更等する。ちなみに、破線の正方形でロボットＲの手先Ｈが届かなかった作業点ＮＰ，・・・を示しており、実際には表示されない。なお、図６には、ある高さ位置でのＸＹ平面にある手先Ｈが届く作業点ＲＰ，・・・を実線の正方形で表示しており、他の高さ位置の手先Ｈが届く作業点ＲＰ，・・・についても同様に表示される。
【００４１】
この際、作業者が、画面上の手先Ｈが届く作業点から通過点を再選択してもよい。ここで、作業者が通過点を改めて指定することによって、全ての通過点がロボットＲの手先Ｈが届く通過点となる。また、作業者は、画面上の手先Ｈの届く作業点を考慮し、最初に入力した一連の作業で行うための通過点群を２つの以上の作業に分けて作業を行う複数の通過点群に分けてもよい。このように、手先Ｈの届く作業点を画面上に表示することによって、作業者によって通過点をより適切な位置に変更できる。ちなみに、最初に入力した通過点が全て手先Ｈが届く作業点の場合、通過点を再度指定する必要はない。例えば、図７に示すように、一連の作業を行うための５つの通過点ＰＰ１，ＰＰ２，ＰＰ３，ＰＰ４，ＰＰ５が作業者によって指定される。
【００４２】
ちなみに、手先Ｈの届く作業点は、その作業点まで手先Ｈが移動可能であり、手先Ｈによって作業を行うことができる。一方、手先Ｈが届かない作業点については、その作業点まで手先Ｈが移動できないので、手先Ｈによる作業が不可である。したがって、手先Ｈが作業を行う際の全ての通過点を、手先Ｈが届く作業点とすることが最低限必要となる。
【００４３】
作業点分類部６では、作業者によって入力された通過点ＰＰ１，・・・，ＰＰｎに対して、各通過点ＰＰｉと次の通過点ＰＰｉ＋１間とを結んだ経路ＲＴｉ上の作業点を設定する。ここでは、手先Ｈの届く作業点の中から、通過点ＰＰｉと通過点ＰＰｉ＋１とを結ぶ線から最も近い作業点が選択される。図８に示す例の場合、通過点ＰＰｉと通過点ＰＰｉ＋１とを結ぶ経路ＲＴｉ上に６つの作業点ＯＰ，・・・が選択される。
【００４４】
作業点分類部６では、全ての通過点ＰＰ１，・・・，ＰＰｎ及び通過点間の経路ＲＴ上の全ての作業点ＯＰ，・・・について、初期設置位置にロボットＲを設置した場合のロボットＲの手先Ｈの位置と姿勢（６変数）に対する可操作度をそれぞれ演算する。また、作業点分類部６では、設置位置変更部７で設置位置の候補ＰＣ，・・・の中から設置位置を変更する毎に、全ての通過点ＰＰ，・・・及び通過点間の経路ＲＴ上の全ての作業点ＯＰ，・・・について、その変更された設置位置の候補ＰＣにロボットＲを設置した場合のロボットＲの手先Ｈの位置と姿勢（６変数）に対する可操作度をそれぞれ演算する。
【００４５】
作業点分類部６では、全ての通過点ＰＰ１，・・・，ＰＰｎ及び通過点間の経路ＲＴ上の全ての作業点ＯＰ，・・・の各可操作度に基づいて、通過点ＰＰ１から通過点ＰＰｎまでの経路を分割する。経路を分割する条件は、可操作度を演算できない箇所（つまり、手先Ｈが届かない箇所）と可操作度が閾値ε未満の箇所である。閾値εは、ロボットＲの手先Ｈが動き易くなるか否か（ロボットＲのアクチュエータの負荷が軽いか否か）を判定するための閾値であり、予め設定される。閾値εを大きくするほど、ロボットＲが動き易くなり、アクチュエータの負荷が軽減されるが、経路の分割数が多くなる。図９に示す例の場合、通過点ＰＰ１から通過点ＰＰ５までの経路（経路ＲＴ１、経路ＲＴ２、経路ＲＴ３、経路ＲＴ４）において、経路ＲＴ１上の作業点ＯＰａで可操作度が閾値ε未満となり、経路ＲＴ２上の作業点ＯＰｂ及び経路ＲＴ４上の作業点ＯＰｃ，ＯＰｄで可操作度が演算できないため、一点鎖線で示す６箇所で分割されて分割数が７となっている。
【００４６】
経路の分割数が小さいほど、ロボットＲの手先Ｈが動き易く（アクチュエータの負荷が少なく）、ロボットＲの設置位置が良い。特に、経路の分割数が１（すなわち、分割される箇所無し）が理想であり、ロボットＲの動きが理想的となる。この際、閾値εが大きくほど、より理想的となる。一方、経路の分割数が大きいほど、ロボットＲの手先Ｈが動き難く、ロボットＲの設置位置が良くない。少なくとも可操作度が演算できないために経路が分割されている箇所がある場合、手先Ｈを移動させることができないので、ロボットＲの設置位置を変更する必要がある。
【００４７】
なお、図９に示すような経路上の各可操作度や経路の分割状況を画面上に表示し、作業者がその経路の分割状況を考慮して通過点を再設定できるようにしてもよい。このように画面表示することにより、作業者によって通過点をより適切な箇所に変更できる。
【００４８】
設置位置変更部７は、初期設置位置からより最適な設置位置に変更するための手段である。設置位置変更部７では、設置位置の候補の中から初期設置位置の近傍から設置位置を順次選択して設置位置を変更し、この変更したロボットＲの設置についての４変数（立ち位置の３変数とロボットＲの向きの１変数）を規定する。ここでは、例えば、乱数を用いて設置位置を順次選択していく。設置位置を変更する毎に、上記したように、作業点分類部６で、全ての通過点ＰＰ，・・・及び通過点間の経路ＲＴ上の全ての作業点ＯＰ，・・・について、その変更された設置位置にロボットＲを設置した場合の可操作度がそれぞれ演算され、経路分割が行われる。
【００４９】
設置位置変更部７では、作業点分類部６での経路の分割数が変更終了分割数未満になったか否かを判定する。経路の分割数が変更終了分割数以上の場合、設置位置変更部７では、設置位置の候補の中から次の設置位置を選択し、設置位置を再度変更する。一方、経路の分割数が変更終了分割数未満になった場合、設置位置変更部７では、設置位置の変更を終了し、最後に選択した設置位置を最終的な設置位置として確定する。なお、経路の分割数が変更終了分割数未満になった場合でも、可操作度が演算できないために経路が分割されている箇所があるときには、設置位置変更部７では、設置位置の候補の中から次の設置位置を選択し、設置位置に再度変更する。
【００５０】
変更終了分割数は、設置位置によってロボットＲをどの程度動かし易くするか否かを決めるための閾値であり、ロボットＲのアクチュエータにかかる負荷の程度、設置位置を決定するための工数等を考慮して予め設定される。また、変更終了分割数は、作業点分類部６での閾値εの大きさも考慮され、閾値εが小さい値ほど小さい値を設定する必要がある。変更終了分割数を小さくして経路の分割数を小さくするほど、ロボットＲの手先Ｈを動かし易い（アクチュエータの負荷が軽減される）設置位置となるが、設置位置を決定し難くなる。設置位置が決定し難くなるとは、変更終了分割数を小さくすることによって設置位置の変更回数が多くなることが予測されるので、設置位置を決定するための工数が増加することである。
【００５１】
出力部８は、設置位置変更部７で最終的に決定した設置位置を出力する手段である。出力部８は、例えば、自律的に移動できる作業台Ｓの場合には決定された設置位置になるような指令信号を作業台Ｓに送信する通信装置であり、手動で移動する作業台Ｓの場合には作業者に知らせるためのモニタやプリンタであり、また、決定された設置位置を示す信号を経路作成装置に送信する通信装置である。
【００５２】
手先Ｈの届く作業点については、可操作度の値によってレベル分けすることができる。可操作度の値が大きいほど、その可操作度レベルの作業点の中から通過点が設定されると、ロボットＲの手先Ｈは動き易く、ロボットＲのアクチュエータの負荷も軽減される。一方、可操作度の値が小さほど、その可操作度レベルの作業点の中から通過点が設定されると、ロボットＲの手先Ｈは動き難く、ロボットＲのアクチュエータの負荷も増大される。図１０には、可操作度の値を３つのレベルＬＶ１，ＬＶ２，ＬＶ３に分けた例を示しており、レベルＬＶ１が可操作度の値が最も小さく、レベルＬＶ３が可操作度の値が最も大きい。
【００５３】
図１１の例で示すように、ロボットＲの設置位置を初期設置位置ＩＰから設置位置変更部７で最終的に決定した設置位置ＥＰに変更することによって、作業者によって指定された通過点ＰＰ１，・・・，ＰＰ５のグループＰＧが、手先Ｈの届く作業点でありかつ可操作度があるレベル以上のグループＯＧ内に全て含まれることになる。つまり、適切な設置位置に変更されることによって、全ての通過点に対してロボットＲの手先Ｈが届いて作業可能であり、各通過点及びその通過点間の経路上の作業点での可操作度が所定のレベル以上となる。どのレベル以上の可操作度とするかは、作業点分類部６の閾値εや設置位置変更部７の変更終了分割数の値によって決まる。これについては、作業を行う際のロボットＲのアクチュエータにかかる負荷の程度と設置位置を決定するための工数等を考慮して決めるとよい。
【００５４】
図１〜図１１を参照して、設置位置決定装置１の動作を説明する。設置位置決定装置１のデータベース３には、ロボットＲの形状データ、構造データ、部品の形状データ、ロボットＲが作業を行う環境データが予め格納されている。
【００５５】
まず、作業者が、入力部２によって、作業領域ＷＡ、作業領域ＷＡ内のメッシュ間隔、設置位置の候補のエリア、設置位置の候補のエリア内の所定の間隔を入力する。すると、初期設置位置決定部５では、作業領域ＷＡを設定し、その作業領域ＷＡ内にメッシュ状の作業点を設定する。そして、初期設置位置決定部５では、その作業領域ＷＡ内の作業点群を画面上に表示する。作業者は、この画面上に表示された作業点群から通過点及び基点を指定し、各通過点での手先Ｈの６変数（ＸＨ，ＹＨ，ＺＨ，Ｒｘ，Ｒｙ，Ｒｚ）を入力する。すると、初期設置位置決定部５では、基点を基準として設置位置の候補のエリアを設定し、そのエリア内に設置位置の候補ＰＣ，・・・を設定する。そして、初期設置位置決定部５では、設置位置の候補ＰＣ，・・・毎に、基点での手先Ｈの６変数に対する可操作度を演算する。さらに、初期設置位置決定部５では、設置位置の候補ＰＣ，・・・毎の可操作度を比較し、可操作度が最も大きい設置位置の候補ＰＣを初期設置位置として決定する。
【００５６】
作業点分類部６では、作業点毎に、初期設置位置にロボットＲを設置した場合にロボットＲの手先Ｈが各作業点に届くか否かを判定し、手先Ｈが届く作業点と届かない作業点とを分類する。そして、作業点分類部６では、手先Ｈが届く作業点を画面上に表示する。この際、必要に応じて、作業者は、この画像上に表示された手先Ｈの届く作業点群から通過点を指定し直す。
【００５７】
次に、作業点分類部６では、手先Ｈが届く作業点群の中から通過点間を結んだ経路上の作業点を設定する。そして、作業点分類部６では、全ての通過点及び通過点間の経路の全ての作業点について、初期設置位置にロボットＲを設置した場合の手先Ｈの６変数に対する可操作度をそれぞれ演算する。さらに、作業点分類部６では、全ての通過点及び通過点間の経路上の全ての作業点の各可操作度に基づいて、全ての通過点間の経路を分割する。
【００５８】
設置位置変更部７では、経路の分割数が変更終了分割数未満か否かを判定する。経路の分割数が変更終了分割数未満と判定した場合、設置位置変更部７では、初期設置位置を最終的な設置位置として決定する。そして、出力部８では、その決定した設置位置を出力する。
【００５９】
一方、経路の分割数が変更終了分割数以上と判定した場合、設置位置変更部７では、設置位置の候補の中から設置位置を選択し、設置位置を変更する。作業点分類部６では、全ての通過点及び通過点間の経路の全ての作業点について、変更された設置位置にロボットＲを設置した場合の手先Ｈの６変数に対する可操作度をそれぞれ演算する。さらに、作業点分類部６では、全ての通過点及び通過点間の経路上の全ての作業点の各可操作度に基づいて、全ての通過点間の経路を分割する。設置位置変更部７では、経路の分割数が変更終了分割数未満か否かを判定する。経路の分割数が変更終了分割数未満と判定した場合、設置位置変更部７では、その変更された設置位置を最終的な設置位置として決定する。そして、出力部８では、その決定した設置位置を出力する。一方、経路の分割数が変更終了分割数以上と判定した場合、設置位置変更部７では、設置位置の候補の中から設置位置を再度選択し、設置位置を再度変更する。このように、作業点分類部６と設置位置変更部７では、経路の分割数が変更終了分割数未満となるまで上記の処理を繰り返し行い、最終的な設置位置を決定する。
【００６０】
この設置位置決定装置１によれば、手先Ｈが届く作業点を利用することにより、設置位置を自動的に決定することができる。特に、設置位置決定装置１では、通過点間の経路上の各点の可操作度演算及びその可操作度に基づく経路分割を行うことにより、ロボットＲの手先Ｈが動き易くなるような（アクチュエータの負荷が低減されるような）より最適な設置位置を決定することができる。また、設置位置決定装置１では、閾値εや変更終了分割数によって、ロボットＲの手先Ｈの動き易さ（アクチュエータの負荷の程度）や設置位置の決定に要する工数等を調整することができる。
【００６１】
以上、本発明に係る実施の形態について説明したが、本発明は上記実施の形態に限定されることなく様々な形態で実施される。
【００６２】
例えば、本実施の形態では多数の関節を有し、関節間がリンクで連結され、各関節の回転動作によって多数の自由度を持ちかつ三次元空間内に設置可能なロボットに適用したが、関節が伸縮動作等の他の動作を行うものでも適用可能であり、一次元上で設置可能なロボットや二次元平面内に設置可能なロボットでも適用可能である。
【００６３】
また、本実施の形態では通過点間を結ぶ経路上に点（作業点）を設定し、これらの全ての作業点について可操作度を求める等の処理を行う構成としたが、通過点を細かく設定し、通過点間が短い場合には通過点間を結ぶ経路上に点を設定する必要はない。
【００６４】
また、本実施の形態では可操作度に基づいて通過点間の経路を分割し、その分割数が所定数未満になるように設置位置を変更するように構成したが、このような経路分割を行わずに、通過点や通過点間の経路上の作業点の可操作度が閾値以上になるように設置位置を変更するようにしてもよいし、あるいは、単純に、通過点や通過点間の経路上の作業点全てが手先が届く作業点になるように設置位置を変更するようにしてもよい。この際、可操作度の閾値は、設置位置によってロボットをどの程度動かし易くするか否かを決めるための閾値であり、ロボットのアクチュエータの負荷の程度や設置位置を決定するための工数等を考慮して設定される。閾値を高くするほど、ロボットの手先を動かし易い設置位置となるが（設置位置がより最適な位置となるが）、設置位置を決定し難くなる（設置位置を決定するための工数が増加する）。
【図面の簡単な説明】
【００６５】
【図１】本実施の形態に係る設置位置決定装置の構成図である。
【図２】ロボットと作業棚の一例である。
【図３】ロボットの設置位置の候補（Ｘ−Ｙ平面内）の一例である。
【図４】ロボットの設置位置の候補（Ｚ軸方向）の一例である。
【図５】ロボットの設置位置の候補（Ｚ軸方向）の他例である。
【図６】図１の作業点分類部で分類した初期設置位置でのロボットの手先が届く作業点（Ｘ−Ｙ平面内）の一例である。
【図７】通過点の一例である。
【図８】隣接する通過点間の作業点の一例である。
【図９】全ての通過点間の経路の分割の一例である。
【図１０】ロボットの手先の届く作業点の可操舵度のレベル分けの一例である。
【図１１】図１の設置位置変更部での設置位置の変更の一例である。
【符号の説明】
【００６６】
１…設置位置決定装置、２…入力部、３…データベース、４…記憶部、５…初期設置位置決定部、６…作業点分類部、７…設置位置変更部、８…出力部
【図１】
2008290223.tif 000003
【図２】
2008290223.tif 000004
【図３】
2008290223.tif 000005
【図４】
2008290223.tif 000006
【図５】
2008290223.tif 000007
【図６】
2008290223.tif 000008
【図７】
2008290223.tif 000009
【図８】
2008290223.tif 000010
【図９】
2008290223.tif 000011
【図１０】
2008290223.tif 000012
【図１１】
2008290223.tif 000013