(57)【特許請求の範囲】
【請求項１】
作業者が作業を行う領域を推定する作業領域推定装置であって、
作業者の動作情報を取得する第１動作取得部と、
作業者の向き情報を取得する向き取得部と、
前記向き情報と作業者の人体モデルとに基づいて、作業者の可動域を演算する可動域演算部と、
前記動作情報と前記可動域とに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備えることを特徴とする作業領域推定装置。
【請求項２】
請求項１に記載の作業領域推定装置において、
前記向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含み、
前記作業領域演算部は、前記胴体の向き情報と前記頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成されていることを特徴とする作業領域推定装置。
【請求項３】
作業者が作業を行う領域を推定する作業領域推定装置であって、
作業者の動作情報を取得する第１動作取得部と、
作業者の向き情報を取得する向き取得部と、
前記動作情報と前記向き情報と作業者の人体モデルとに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備え、
前記向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含み、
前記作業領域演算部は、前記胴体の向き情報と前記頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成されていることを特徴とする作業領域推定装置。
【請求項４】
請求項１〜３のいずれか１つに記載の作業領域推定装置において、
作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部を備えることを特徴とする作業領域推定装置。
【請求項５】
請求項４に記載の作業領域推定装置において、
前記位置情報および前記姿勢情報の少なくともいずれか一方から前記人体モデルを演算する人体モデル演算部を備えることを特徴とする作業領域推定装置。
【請求項６】
作業者が作業を行う領域を推定する作業領域推定装置であって、
作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部と、
前記位置情報および前記姿勢情報の少なくともいずれか一方から作業者の人体モデルを演算する人体モデル演算部と、
作業者の動作情報を取得する第１動作取得部と、
作業者の向き情報を取得する向き取得部と、
前記動作情報と前記向き情報と前記人体モデルとに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備えることを特徴とする作業領域推定装置。
【請求項７】
請求項４〜６のいずれか１つに記載の作業領域推定装置において、
前記状態取得部は、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを取得し、その取得したデータを用いて前記位置情報および前記姿勢情報の少なくともいずれか一方を算出するように構成されていることを特徴とする作業領域推定装置。
【請求項８】
請求項４〜７のいずれか１つに記載の作業領域推定装置において、
前記向き取得部は、前記位置情報および前記姿勢情報の少なくともいずれか一方と前記人体モデルとに基づいて、前記向き情報を演算するように構成されていることを特徴とする作業領域推定装置。
【請求項９】
請求項４〜８のいずれか１つに記載の作業領域推定装置において、
前記第１動作取得部は、前記位置情報および前記姿勢情報の少なくともいずれか一方と前記人体モデルとに基づいて、前記動作情報を演算するように構成されていることを特徴とする作業領域推定装置。
【請求項１０】
請求項１〜９のいずれか１つに記載の作業領域推定装置において、
前記人体モデルが記録された人体モデル記録部を備えることを特徴とする作業領域推定装置。
【請求項１１】
請求項１〜１０のいずれか１つに記載の作業領域推定装置と、
制御対象を制御する制御部とを備えることを特徴とする制御装置。
【請求項１２】
請求項１１に記載の制御装置において、
前記制御部は、作業者の動作が予測される領域の外側で、前記制御対象を動作させるように構成されていることを特徴とする制御装置。
【請求項１３】
請求項１１に記載の制御装置において、
前記向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含み、
前記作業領域演算部は、前記胴体の向き情報と前記頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成され、
前記制御部は、前記動作可能性が所定値以上の領域の外側で、前記制御対象を動作させるように構成されていることを特徴とする制御装置。
【請求項１４】
請求項１１〜１３のいずれか１つに記載の制御装置において、
作業者の動作が予測される領域の内側に、前記制御対象が進入した場合の安全性を判断する安全性判断部を備えることを特徴とする制御装置。
【請求項１５】
請求項１４に記載の制御装置において、
前記制御部は、前記安全性判断部により安全であると判断された場合に、作業者の動作が予測される領域の内側で、前記制御対象を動作させることが可能に構成されていることを特徴とする制御装置。
【請求項１６】
請求項１４または１５に記載の制御装置において、
前記制御部は、前記安全性判断部により安全ではないと判断された場合に、前記制御対象を安全性の確保が可能な状態にすることにより、作業者の動作が予測される領域の内側での前記制御対象の動作を許容するように構成されていることを特徴とする制御装置。
【請求項１７】
請求項１４〜１６のいずれか１つに記載の制御装置において、
前記安全性判断部は、前記動作情報に基づいて安全性を判断するように構成されていることを特徴とする制御装置。
【請求項１８】
請求項１４〜１７のいずれか１つに記載の制御装置において、
前記制御対象の動作情報を取得する第２動作取得部を備え、
前記安全性判断部は、前記制御対象の動作情報に基づいて安全性を判断するように構成されていることを特徴とする制御装置。
【請求項１９】
請求項１１〜１８のいずれか１つに記載の制御装置と、
作業者に装着される検出装置とを備えることを特徴とする制御システム。
【請求項２０】
請求項１９に記載の制御システムにおいて、
前記検出装置は、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを検出するように構成され、
前記作業領域推定装置は、作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部を含み、
前記状態取得部は、前記検出装置の検出結果を取得し、その取得した検出結果を用いて前記位置情報および前記姿勢情報の少なくともいずれか一方を算出するように構成されていることを特徴とする制御システム。
【請求項２１】
作業者が作業を行う領域を推定する作業領域推定方法であって、
作業者の動作情報を取得するステップと、
作業者の向き情報を取得するステップと、
前記向き情報と作業者の人体モデルとに基づいて、作業者の可動域を演算するステップと、
前記動作情報と前記可動域とに基づいて、作業者の動作が予測される領域を演算するステップとを備えることを特徴とする作業領域推定方法。
【請求項２２】
作業者が作業を行う領域を推定する作業領域推定方法であって、
作業者の動作情報を取得するステップと、
作業者の胴体の向き情報と、作業者の頭部の向き情報とを含む作業者の向き情報を取得するステップと、
前記動作情報と前記作業者の向き情報と作業者の人体モデルとに基づいて、作業者の動作が予測される領域を演算するステップと、
前記胴体の向き情報と前記頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するステップとを備えることを特徴とする作業領域推定方法。
【請求項２３】
作業者が作業を行う領域を推定する作業領域推定方法であって、
作業者の位置情報および姿勢情報の少なくともいずれか一方を取得するステップと、
前記位置情報および前記姿勢情報の少なくともいずれか一方から作業者の人体モデルを演算するステップと、
作業者の動作情報を取得するステップと、
作業者の向き情報を取得するステップと、
前記動作情報と前記向き情報と前記人体モデルとに基づいて、作業者の動作が予測される領域を演算するステップとを備えることを特徴とする作業領域推定方法。
【請求項２４】
請求項２１〜２３のいずれか１つに記載の作業領域推定方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業領域推定装置、制御装置、制御システム、作業領域推定方法およびプログラムに関する。
【背景技術】
【０００２】
従来、工場の生産ラインが知られている（たとえば、特許文献１参照）。
【０００３】
特許文献１の生産ラインは、車両の組立工程などに用いられるものであり、車両を搬送する車両用コンベアと、車両の搬送方向に沿って作業者を移動させる作業者用コンベアと、作業者用コンベアを制御するコントローラと、作業者に装着されるセンサとを備えている。センサは、作業者の向きと、作業者の移動の加速度とを検出する機能を有する。そして、コントローラは、作業者の向きおよび移動の加速度に応じて、作業者用コンベアの作動方向および作動速度を制御するように構成されている。これにより、作業者が歩行での移動を強いられることがほとんどないので、作業者の歩行疲労を軽減することが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２３０５４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、工場の生産ラインなどにおいて、産業機械および作業者が作業を行う状況下では、作業者が作業を行う領域を推定することが望まれる。たとえば、作業者が作業を行う領域を推定することができれば、作業者の邪魔になる（産業機械の動作と作業者の動作とが干渉する）状況を抑制しながら、産業機械の作業領域を広くすることができるので、安全性を確保しつつ生産性を向上させることが可能である。
【０００６】
本発明は、上記の課題を解決するためになされたものであり、本発明の目的は、作業者が作業を行う領域を推定することが可能な作業領域推定装置、制御装置、制御システム、作業領域推定方法およびプログラムを提供することである。
【課題を解決するための手段】
【０００７】
本発明による作業領域推定装置は、作業者が作業を行う領域を推定するものであり、作業者の動作情報を取得する第１動作取得部と、作業者の向き情報を取得する向き取得部と、向き情報と作業者の人体モデルとに基づいて、作業者の可動域を演算する可動域演算部と、動作情報と可動域とに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備える。
【０００８】
このように構成することによって、作業者の意図が反映された情報である向き情報に基づいて、動作が予測される領域を推定することにより、作業者が作業を行う領域を高い精度で推定することができる。
【０００９】
上記作業領域推定装置において、向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含み、作業領域演算部は、胴体の向き情報と頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成されていてもよい。
【００１０】
本発明による作業領域推定装置は、作業者が作業を行う領域を推定するものであり、作業者の動作情報を取得する第１動作取得部と、作業者の向き情報を取得する向き取得部と、動作情報と向き情報と作業者の人体モデルとに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備える。向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含む。作業領域演算部は、胴体の向き情報と頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成されている。
【００１１】
上記作業領域推定装置において、作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部を備えていてもよい。
上記状態取得部を備える作業領域推定装置において、位置情報および姿勢情報の少なくともいずれか一方から人体モデルを演算する人体モデル演算部を備えていてもよい。
本発明による作業領域推定装置は、作業者が作業を行う領域を推定するものであり、作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部と、位置情報および姿勢情報の少なくともいずれか一方から作業者の人体モデルを演算する人体モデル演算部と、作業者の動作情報を取得する第１動作取得部と、作業者の向き情報を取得する向き取得部と、動作情報と向き情報と人体モデルとに基づいて、作業者の動作が予測される領域を演算する作業領域演算部とを備える。
【００１２】
上記状態取得部を備える作業領域推定装置において、状態取得部は、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを取得し、その取得したデータを用いて位置情報および姿勢情報の少なくともいずれか一方を算出するように構成されていてもよい。
【００１３】
上記状態取得部を備える作業領域推定装置において、向き取得部は、位置情報および姿勢情報の少なくともいずれか一方と人体モデルとに基づいて、向き情報を演算するように構成されていてもよい。
【００１４】
上記状態取得部を備える作業領域推定装置において、第１動作取得部は、位置情報および姿勢情報の少なくともいずれか一方と人体モデルとに基づいて、動作情報を演算するように構成されていてもよい。
【００１６】
上記作業領域推定装置において、人体モデルが記録された人体モデル記録部を備えていてもよい。
【００１７】
本発明による制御装置は、上記作業領域推定装置と、制御対象を制御する制御部とを備える。
【００１８】
上記制御装置において、制御部は、作業者の動作が予測される領域の外側で、制御対象を動作させるように構成されていてもよい。
【００１９】
上記制御装置において、向き情報は、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含み、作業領域演算部は、胴体の向き情報と頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するように構成され、制御部は、動作可能性が所定値以上の領域の外側で、制御対象を動作させるように構成されていてもよい。なお、所定値は、たとえば、予め設定された値であり、動作可能性が高いと判断される境界値である。
【００２０】
上記制御装置において、作業者の動作が予測される領域の内側に、制御対象が進入した場合の安全性を判断する安全性判断部を備えていてもよい。
【００２１】
上記安全性判断部を備える制御装置において、制御部は、安全性判断部により安全であると判断された場合に、作業者の動作が予測される領域の内側で、制御対象を動作させることが可能に構成されていてもよい。
【００２２】
上記安全性判断部を備える制御装置において、制御部は、安全性判断部により安全ではないと判断された場合に、制御対象を安全性の確保が可能な状態にすることにより、作業者の動作が予測される領域の内側での制御対象の動作を許容するように構成されていてもよい。
【００２３】
上記安全性判断部を備える制御装置において、安全性判断部は、動作情報に基づいて安全性を判断するように構成されていてもよい。
【００２４】
上記安全性判断部を備える制御装置において、制御対象の動作情報を取得する第２動作取得部を備え、安全性判断部は、制御対象の動作情報に基づいて安全性を判断するように構成されていてもよい。
【００２５】
本発明による制御システムは、上記制御装置と、作業者に装着される検出装置とを備える。
【００２６】
上記制御システムにおいて、検出装置は、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを検出するように構成され、作業領域推定装置は、作業者の位置情報および姿勢情報の少なくともいずれか一方を取得する状態取得部を含み、状態取得部は、検出装置の検出結果を取得し、その取得した検出結果を用いて位置情報および姿勢情報の少なくともいずれか一方を算出するように構成されていてもよい。
【００２７】
本発明による作業領域推定方法は、作業者が作業を行う領域を推定するものであり、作業者の動作情報を取得するステップと、作業者の向き情報を取得するステップと、向き情報と作業者の人体モデルとに基づいて、作業者の可動域を演算するステップと、動作情報と可動域とに基づいて、作業者の動作が予測される領域を演算するステップとを備える。
本発明による作業領域推定方法は、作業者が作業を行う領域を推定するものであり、作業者の動作情報を取得するステップと、作業者の胴体の向き情報と、作業者の頭部の向き情報とを含む作業者の向き情報を取得するステップと、動作情報と作業者の向き情報と作業者の人体モデルとに基づいて、作業者の動作が予測される領域を演算するステップと、胴体の向き情報と頭部の向き情報とに基づいて、作業者の動作が予測される領域内における動作可能性を重み付け評価するステップとを備える。
本発明による作業領域推定方法は、作業者が作業を行う領域を推定するものであり、作業者の位置情報および姿勢情報の少なくともいずれか一方を取得するステップと、位置情報および姿勢情報の少なくともいずれか一方から作業者の人体モデルを演算するステップと、作業者の動作情報を取得するステップと、作業者の向き情報を取得するステップと、動作情報と向き情報と人体モデルとに基づいて、作業者の動作が予測される領域を演算するステップとを備える。
【００２８】
本発明によるプログラムは、上記した作業領域推定方法をコンピュータに実行させるためのものである。
【発明の効果】
【００２９】
本発明の作業領域推定装置、制御装置、制御システム、作業領域推定方法およびプログラムによれば、作業者が作業を行う領域を推定することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態による制御システムの構成を示したハードウェアブロック図である。
【図２】図１の制御システムにおける制御装置の機能ブロック図である。
【図３】本実施形態の制御システムの動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００３１】
以下、本発明の一実施形態について図面を参照して説明する。
【００３２】
まず、図１および図２を参照して、本発明の一実施形態による制御システム１００の構成について説明する。
【００３３】
制御システム１００は、図１に示すように、ロボット５０を制御する制御装置１と、作業者に装着される検出装置２とを備えている。この制御システム１００は、たとえば、工場の生産ラインなどにおいて作業者の作業領域（動作が予測される領域）を推定し、その作業者の作業領域に応じてロボット５０を制御するように構成されている。なお、ロボット５０は、たとえば工場の生産ラインなどに設置されるロボットアームであり、本発明の「制御対象」の一例である。
【００３４】
検出装置２は、作業者の各部位に取り付けられており、各検出装置２は、取り付けられた部位についての動作を検出するために設けられている。なお、図１では２つの検出装置２を示したが、作業者の全身の動作を検出するためにより多数の検出装置２が設けられていてもよい。作業者に対する検出装置２の取付位置の一例としては、頭部、両肩部、両腕部（上腕、前腕、手）、背中部、腰部、および、両脚部（腿、脛、足）である。
【００３５】
この検出装置２は、加速度データを検出する加速度センサ２ａと、角速度データを検出する角速度センサ２ｂと、加速度センサ２ａおよび角速度センサ２ｂの検出結果を制御装置１に出力する出力部２ｃとを含んでいる。なお、検出装置２は、たとえば無線で制御装置１に接続されているが、有線で制御装置１に接続されていてもよい。
【００３６】
制御装置１は、作業者の向き情報および動作情報を取得し、その向き情報および動作情報と人体モデルとに基づいて作業者の作業領域を推定するように構成されている。そして、制御装置１は、作業者の作業領域の外側でロボット５０を動作させるように構成されている。さらに、制御装置１は、作業者の作業領域の内側にロボット５０が進入した場合の安全性を判断し、安全である場合に作業領域内へのロボット５０の進入を許容するようになっている。なお、作業者の人体モデルとは、たとえば、作業者の身体の各部位についての寸法をデータベース化したものである。
【００３７】
制御装置１は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、入出力部１４とを含んでいる。ＣＰＵ１１は、ＲＯＭ１２に記憶されたプログラム１２ａなどに基づいて演算処理を実行するように構成されている。ＲＯＭ１２は、不揮発性のメモリであり、プログラム１２ａやそのプログラム１２ａの実行の際に用いられる設定値などを記憶している。なお、プログラム１２ａにはロボット５０の制御プログラムなどが含まれている。ＲＡＭ１３は、揮発性のメモリであり、ＣＰＵ１１による演算結果や検出装置２の検出結果などを一時的に記憶する機能を有する。入出力部１４には、複数の検出装置２、ロボット５０、および、制御装置１の設定変更などを行うためのツール装置６０などが接続されている。
【００３８】
また、制御装置１は、図２に示すように、作業者情報取得部２１と、人体モデル演算部２２と、人体モデル記録部２３と、向き演算部２４と、可動域演算部２５と、動作演算部２６と、作業者用の作業領域演算部２７と、ロボット情報取得部２８と、ロボット動作演算部２９と、ロボット５０用の作業領域演算部３０と、安全性判断部３１と、ロボット制御部３２とを含んでいる。なお、作業者情報取得部２１、人体モデル演算部２２、向き演算部２４、可動域演算部２５、動作演算部２６、作業領域演算部２７、ロボット情報取得部２８、ロボット動作演算部２９、作業領域演算部３０、安全性判断部３１およびロボット制御部３２は、ＣＰＵ１１がプログラム１２ａを実行することにより実現される。また、人体モデル記録部２３は、ＲＯＭ１２の記憶領域の一部によって構成されている。
【００３９】
また、作業者情報取得部２１、人体モデル演算部２２、人体モデル記録部２３、向き演算部２４、可動域演算部２５、動作演算部２６および作業領域演算部２７により、作業者の作業領域を推定する作業領域推定部４０が構成されている。なお、作業領域推定部４０は、本発明の「作業領域推定装置」の一例である。
【００４０】
作業者情報取得部２１は、各検出装置２の検出結果が入力されるように構成されている。すなわち、作業者情報取得部２１は、作業者の各部位の加速度データおよび角速度データを経時的に取得している。そして、作業者情報取得部２１は、その加速度データおよび角速度データを用いて位置情報および姿勢情報を算出するように構成されている。つまり、作業者情報取得部２１は、作業者の部位毎についての位置情報および姿勢情報を経時的に取得している。なお、位置情報は、たとえば３次元座標の座標値であり、姿勢情報は、たとえば各座標軸に対する回転角である。また、作業者情報取得部２１は、本発明の「状態取得部」の一例である。
【００４１】
人体モデル演算部２２は、作業者情報取得部２１により取得した位置情報および姿勢情報に基づいて、作業者の人体モデルを演算するために設けられている。この人体モデル演算部２２は、作業者の各部位の位置情報および姿勢情報の経時変化から、各部位の寸法を算出することにより人体モデルを作成するようになっている。なお、人体モデル演算部２２による人体モデルの演算時に、作業者に対して所定の動作を行うように促すようにしてもよい。
【００４２】
人体モデル記録部２３には、作業者の人体モデルが記録されている。この人体モデル記録部２３には、人体モデル演算部２２の演算結果である人体モデルが記録されていてもよいし、ツール装置６０を用いて作業者によって入力された人体モデルが記録されていてもよい。すなわち、本実施形態では、人体モデル記録部２３に対する人体モデルの記録方法が２つあり、いずれの方法で記録されていてもよい。
【００４３】
向き演算部２４は、作業者情報取得部２１により取得した位置情報および姿勢情報と、人体モデル記録部２３に記録された人体モデルとに基づいて、作業者の向き情報を演算するために設けられている。この向き情報には、たとえば、作業者の胴体の向き情報と、作業者の頭部の向き情報とが含まれている。なお、胴体の向きとは、たとえば、胴体の正面が向いている方向であり、位置および姿勢の経時変化からその向きの変化をトレースすることが可能である。同様に、頭部の向きとは、たとえば、頭部の正面が向いている方向であり、位置および姿勢の経時変化からその向きの変化をトレースすることが可能である。なお、向き演算部２４は、本発明の「向き取得部」の一例である。
【００４４】
可動域演算部２５は、作業者の可動域を演算するために設けられている。この可動域演算部２５は、向き演算部２４により演算された作業者の向き情報と、人体モデル記録部２３に記録された人体モデルとに基づいて、作業者の可動域を演算するように構成されている。なお、可動域とは、作業者の周囲を取り囲む所定の領域であり、現在の状態から作業者が身体を移動させることが可能な領域である。たとえば、肩部が固定されている場合において、腕部の可動域は、腕部を延ばして届く範囲である。
【００４５】
動作演算部２６は、作業者の動作情報を演算するために設けられている。この動作演算部２６は、人体モデル記録部２３に記録された人体モデルに対して、作業者情報取得部２１により取得した位置情報および姿勢情報を入力することにより、作業者の各部位の動作情報を演算するように構成されている。すなわち、作業者の各部位の位置および姿勢の経時変化から各部位の動作を演算するようになっている。なお、動作演算部２６は、本発明の「第１動作取得部」の一例である。
【００４６】
作業領域演算部２７は、作業者の作業領域を演算するために設けられている。具体的には、作業領域演算部２７は、可動域演算部２５により演算された可動域と、動作演算部２６により演算された動作情報とに基づいて、作業領域を演算するように構成されている。
【００４７】
ロボット情報取得部２８には、ロボット５０から各種情報５０ａが入力されている。各種情報５０ａは、たとえば、ロボット５０に関する位置情報、速度情報、加速度情報および経路情報などであり、ロボット５０に設けられたセンサ（図示省略）によって検出される。
【００４８】
ロボット動作演算部２９は、ロボット５０の動作情報を演算するために設けられている。このロボット動作演算部２９は、たとえば、ロボット情報取得部２８により取得した各種情報５０ａと、ロボット５０を制御する制御プログラムとに基づいて、ロボット５０の動作情報を演算するようになっている。なお、ロボット動作演算部２９は、本発明の「第２動作取得部」の一例である。
【００４９】
作業領域演算部３０は、ロボット５０の作業領域（動作が予測される領域）を演算するために設けられている。この作業領域演算部３０は、たとえば、ロボット動作演算部２９の演算結果に基づいて、ロボット５０の作業領域を演算するように構成されている。
【００５０】
安全性判断部３１は、作業者の作業領域の内側にロボット５０が進入した場合の安全性を判断するために設けられている。この安全性判断部３１は、作業者の作業領域とロボット５０の作業領域とが干渉する（重なり合う）か否かを判断するとともに、作業者の作業領域とロボット５０の作業領域とが干渉すると判断した場合に、安全性の判断を行うように構成されている。
【００５１】
具体的には、安全性判断部３１は、作業者の作業領域とロボット５０の作業領域とが干渉すると判断した場合に、作業者の動作情報とロボット５０の動作情報とに基づいて、作業者とロボット５０とが衝突するか否かを判断するように構成されている。さらに、安全性判断部３１は、作業者とロボット５０とが衝突すると判断した場合に、その衝突時の衝撃力を演算するように構成されている。なお、衝撃力は、たとえば、作業者の動作情報およびロボット５０の動作情報に基づいて演算される。すなわち、作業者の動作情報およびロボット５０の動作情報に基づいて安全性が判断される。そして、安全性判断部３１は、作業者とロボット５０とが衝突しないと判断した場合、および、衝撃力が所定値未満の場合に、安全であると判断し、衝撃力が所定値以上の場合に、安全ではないと判断するようになっている。なお、この所定値は、たとえば、予め設定された値であって、作業者が痛みを感じない程度の値であってもよいし、作業者がけがをしない程度の値であってもよい。
【００５２】
ロボット制御部３２は、ロボット５０に対して動作指示を出力するために設けられている。このロボット制御部３２は、作業者の作業領域の外側でロボット５０を動作させるように構成されている。さらに、ロボット制御部３２は、安全性判断部３１により安全であると判断された場合に、作業者の作業領域の内側でロボット５０を動作させることが可能である。たとえば、ロボット制御部３２は、作業者の作業領域とロボット５０の作業領域とが干渉しない場合、および、安全性判断部３１により安全であると判断された場合に、ロボット５０を制御プログラムに基づいて動作させ、安全性判断部３１により安全ではないと判断された場合に、ロボット５０を停止させて作業者の作業領域に進入しないようになっている。なお、ロボット制御部３２は、本発明の「制御部」の一例である。
【００５３】
−制御システムの動作−
次に、図３を参照して、本実施形態の制御システム１００の動作について説明する。この動作には、制御装置１による作業領域推定方法が含まれている。
【００５４】
なお、以下の各ステップはＣＰＵ１１（図１参照）がプログラム１２ａ（図１参照）を実行することにより行われる。すなわち、プログラム１２ａは、以下の各ステップを制御装置１（図１参照）に実行させるためのものであり、制御装置１が読み取り可能な記録媒体であるＲＯＭ１２（図１参照）に格納されている。
【００５５】
また、人体モデル記録部２３（図２参照）には作業者の人体モデルが予め記録されている。この人体モデルは、人体モデル演算部２２（図２参照）により記録されていてもよいし、ツール装置６０（図２参照）を用いて記録されていてもよい。また、作業者の各部位には検出装置２が装着されている。
【００５６】
まず、図３のステップＳ１において、作業者とロボット５０（図２参照）との協調動作が開始されたか否かが判断される。たとえば、作業者が開始ボタン（図示省略）を操作した場合に、協調動作が開始されたと判断される。そして、協調動作が開始されたと判断された場合には、ステップＳ２に移る。その一方、協調動作が開始されていないと判断された場合には、ステップＳ１が繰り返し行われる。すなわち、協調動作が開始されるまで制御装置１が待機する。
【００５７】
次に、ステップＳ２において、作業者情報取得部２１（図２参照）により、作業者の部位毎についての位置情報および姿勢情報が取得される。具体的には、各検出装置２から入力される加速度データおよび角速度データに基づいて、各部位の位置情報および姿勢情報が算出される。
【００５８】
次に、ステップＳ３において、向き演算部２４（図２参照）により、作業者の向き情報が演算される。具体的には、作業者の位置情報および姿勢情報と人体モデル記録部２３に記録された人体モデルとに基づいて、作業者の胴体および頭部の向き情報が演算される。
【００５９】
次に、ステップＳ４において、可動域演算部２５（図２参照）により、作業者の可動域が演算される。具体的には、作業者の向き情報と人体モデルとに基づいて、作業者の可動域が演算される。
【００６０】
次に、ステップＳ５において、動作演算部２６（図２参照）により、作業者の各部位の動作情報が演算される。具体的には、人体モデル記録部２３に記録された人体モデルに対して各部位の位置情報および姿勢情報が入力されることにより、作業者の各部位の動作情報が演算される。
【００６１】
次に、ステップＳ６において、作業領域演算部２７（図２参照）により、作業者の作業領域が演算される。具体的には、作業者の可動域および動作情報から作業領域が演算される。
【００６２】
次に、ステップＳ７において、ロボット情報取得部２８（図２参照）により、ロボット５０の各種情報５０ａ（図２参照）が取得される。そして、ステップＳ８において、ロボット動作演算部２９（図２参照）により、ロボット５０の動作情報が演算される。その後、ステップＳ９において、作業領域演算部３０（図２参照）により、ロボット５０の作業領域が演算される。
【００６３】
次に、ステップＳ１０において、安全性判断部３１（図２参照）により、作業者の作業領域とロボット５０の作業領域とが干渉するか否かが判断される。この判断は、ステップＳ６で算出された作業者の作業領域と、ステップＳ９で算出されたロボット５０の作業領域とに基づいて行われる。そして、作業者の作業領域とロボット５０の作業領域とが干渉すると判断された場合には、ステップＳ１１に移る。その一方、作業者の作業領域とロボット５０の作業領域とが干渉しないと判断された場合には、ステップＳ１２に移る。
【００６４】
そして、ステップＳ１１では、安全性判断部３１により、安全性の判断が行われる。具体的には、ステップＳ５で算出された作業者の動作情報と、ステップＳ８で算出されたロボット５０の動作情報とに基づいて、作業者とロボット５０とが衝突するか否かが判断される。さらに、作業者とロボット５０とが衝突すると判断された場合には、作業者の動作情報とロボット５０の動作情報とに基づいて、衝突時の衝撃力が演算される。そして、安全性判断部３１は、作業者とロボット５０とが衝突しないと判断した場合、および、衝撃力が所定値未満の場合に、安全であると判断し、衝撃力が所定値以上の場合に、安全ではないと判断する。
【００６５】
次に、ステップＳ１２では、ロボット制御部３２（図２参照）により、ロボット５０が制御される。具体的には、作業者の作業領域とロボット５０の作業領域とが干渉しないと判断された場合、および、安全であると判断された場合に、ロボット５０を制御プログラムに基づいて動作させる。すなわち、安全である場合には、作業者の作業領域の内側でロボット５０を動作させる。また、安全ではないと判断された場合には、作業者の作業領域にロボット５０を進入させないために、たとえばロボット５０を停止させる。
【００６６】
次に、ステップＳ１３において、作業者とロボット５０との協調動作が終了されたか否かが判断される。たとえば、作業者が終了ボタン（図示省略）を操作した場合に、協調動作が終了されたと判断される。そして、協調動作が終了されたと判断された場合には、エンドに移る。その一方、協調動作が終了されていないと判断された場合には、ステップＳ２に戻る。
【００６７】
−効果−
本実施形態では、上記のように、作業者の向き情報を演算する向き演算部２４と、その向き情報と人体モデルとに基づいて作業者の可動域を演算する可動域演算部２５と、作業者の動作情報を演算する動作演算部２６と、可動域と動作情報とに基づいて作業者の作業領域を演算する作業領域演算部２７とが設けられている。このように構成することによって、作業者の意図が反映された情報である向き情報に基づいて作業領域を推定することにより、作業者の作業領域を高い精度で推定することができる。さらに、作業者の動作情報を考慮することにより、作業領域の推定精度をより向上させることができる。すなわち、動作情報を用いて、可動域から絞り込んだ作業領域を推定することができる。
【００６８】
また、本実施形態では、作業者の作業領域の外側でロボット５０を動作させるロボット制御部３２が設けられている。このように構成することによって、ロボット５０および作業者が協調して作業を行う状況下において、ロボット５０が作業者に衝突するのを抑制することができるので、安全性の向上を図ることができる。また、作業者に対してロボット５０を限界まで接近させることが可能であることから、ロボット５０の作業領域を広くすることができるので、生産性の向上を図ることができる。
【００６９】
また、本実施形態では、作業者の作業領域の内側にロボット５０が進入した場合の安全性を判断する安全性判断部３１が設けられている。このように構成することによって、安全である場合に、作業者の作業領域の内側にロボット５０を進入可能にすることにより、ロボット５０の作業領域をより広くすることができるので、安全性の低下を抑制しながら、生産性をより向上させることができる。
【００７０】
−他の実施形態−
なお、今回開示した実施形態は、すべての点で例示であって、限定的な解釈の根拠となるものではない。したがって、本発明の技術的範囲は、上記した実施形態のみによって解釈されるものではなく、特許請求の範囲の記載に基づいて画定される。また、本発明の技術的範囲には、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
【００７１】
たとえば、本実施形態では、ロボット５０がロボットアームである例を示したが、これに限らず、制御対象が部品を搬送する搬送装置などであってもよい。すなわち、制御対象はたとえば産業機械である。
【００７２】
また、本実施形態では、複数の検出装置２により作業者の全身の動作を検出する例を示したが、これに限らず、作業者の局部（たとえば、上半身）の動作のみを検出するようにしてもよい。
【００７３】
また、本実施形態では、ＣＰＵ１１がプログラム１２ａを実行することにより、作業者情報取得部２１、人体モデル演算部２２、向き演算部２４、可動域演算部２５、動作演算部２６、作業者用の作業領域演算部２７、ロボット情報取得部２８、ロボット動作演算部２９、ロボット５０用の作業領域演算部３０、安全性判断部３１およびロボット制御部３２が実現される例を示したが、これに限らず、作業者情報取得部、人体モデル演算部、向き演算部、可動域演算部、動作演算部、作業者用の作業領域演算部、ロボット情報取得部、ロボット動作演算部、ロボット用の作業領域演算部、安全性判断部およびロボット制御部がそれぞれハードウェアで構成されていてもよい。
【００７４】
また、本実施形態では、加速度データおよび角速度データに基づいて、位置情報および姿勢情報を算出する例を示したが、これに限らず、速度データ、角加速度データ、圧力データおよび磁気データなどに基づいて、位置情報および姿勢情報を算出するようにしてもよい。すなわち、検出装置２が加速度データおよび角速度データを検出する例を示したが、これに限らず、検出装置は、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを検出するように構成されていればよい。
【００７５】
また、本実施形態では、作業者情報取得部２１が、加速度データおよび角速度データを取得し、その加速度データおよび角速度データを用いて位置情報および姿勢情報を算出する例を示したが、これに限らず、作業者情報取得部が、加速度データ、角速度データ、速度データ、角加速度データ、圧力データおよび磁気データのうちの少なくとも１つを取得し、その取得したデータを用いて位置情報および姿勢情報の少なくともいずれか一方を算出するようにすればよい。
【００７６】
また、本実施形態では、人体モデル演算部２２が位置情報および姿勢情報に基づいて作業者の人体モデルを演算する例を示したが、これに限らず、人体モデル演算部が位置情報または姿勢情報に基づいて作業者の人体モデルを演算するようにしてもよい。
【００７７】
また、本実施形態では、制御装置１に人体モデル演算部２２が設けられるとともに、ツール装置６０から人体モデルを入力可能に構成する例を示したが、これに限らず、人体モデル演算部２２が設けられていれば、ツール装置６０から人体モデルを入力できないようにしてもよいし、ツール装置６０から人体モデルを入力可能であれば、人体モデル演算部２２が設けられていなくてもよい。
【００７８】
また、本実施形態では、人体モデル記録部２３が設けられる例を示したが、これに限らず、作業者の人体モデルを外部から入手可能であれば、人体モデル記録部が設けられていなくてもよい。
【００７９】
また、本実施形態では、向き演算部２４が、作業者の位置情報および姿勢情報と人体モデルとに基づいて作業者の向き情報を演算する例を示したが、これに限らず、向き演算部が、作業者の位置情報または姿勢情報と人体モデルとに基づいて作業者の向き情報を演算するようにしてもよいし、人体モデルによらず、位置情報および姿勢情報の少なくともいずれか一方に基づいて作業者の向き情報を演算するようにしてもよい。また、作業者の向き情報を取得する向き取得部が設けられていれば、向き演算部が設けられていなくてもよい。
【００８０】
また、本実施形態では、向き演算部２４が、作業者の胴体の向き情報と、作業者の頭部の向き情報とを演算する例を示したが、これに限らず、向き演算部が、作業者の胴体の向き情報のみを演算するようにしてもよい。
【００８１】
また、本実施形態では、可動域演算部２５が設けられる例を示したが、これに限らず、可動域演算部が設けられていなくてもよい。この場合には、作業領域演算部が、作業者の向き情報および動作情報と人体モデルとに基づいて作業領域を推定するようにしてもよい。
【００８２】
また、本実施形態では、動作演算部２６が、位置情報および姿勢情報と人体モデルとから動作情報を演算する例を示したが、これに限らず、動作演算部が、位置情報または姿勢情報と人体モデルとから動作情報を演算するようにしてもよいし、人体モデルによらず、位置情報および姿勢情報の少なくともいずれか一方に基づいて動作情報を演算するようにしてもよい。また、作業者の動作情報を取得する第１動作取得部が設けられていれば、動作演算部が設けられていなくてもよい。
【００８３】
また、本実施形態において、作業領域演算部２７が、作業領域内における動作可能性が高い領域を推定するようにしてもよい。具体的には、作業領域演算部２７が、向き演算部２４により演算された作業者の向き情報（胴体および頭部の向き情報）に基づいて、作業領域内における動作可能性を重み付け評価するようにしてもよい。そして、作業領域演算部２７は、重み付け値（動作可能性）が所定値以上の領域を、動作可能性が高い領域であると推定するようにしてもよい。なお、所定値は、たとえば、予め設定された値であり、動作可能性が高いと判断される境界値である。重み付け評価の具体例としては、作業者は頭部が向いている方向側の領域で作業を行う可能性が高いことから、その領域の重み付け値を高くし、その領域から離れるほど重み付け値を低くする。この場合には、ロボット制御部３２が、動作可能性が高い領域の外側でロボット５０を動作させるようにしてもよい。
【００８４】
また、本実施形態では、ロボット動作演算部２９および作業領域演算部３０が設けられる例を示したが、これに限らず、制御装置のＲＯＭにロボットの動作情報および作業領域が予め記録されている場合には、ロボット動作演算部および作業領域演算部が設けられていなくてもよい。この場合には、図３のフローチャートにおけるステップＳ８およびＳ９を省略することが可能である。
【００８５】
また、本実施形態では、制御装置１のＲＯＭ１２にロボット５０の制御プログラムが記録されている例を示したが、これに限らず、制御装置のＲＯＭにロボットの制御プログラムが記録されていなくてもよい。すなわち、自律的に動作するロボットに対して、そのロボットが作業者の作業領域に進入すると安全ではない場合に、ロボットの進入を制御装置が禁止するようにしてもよい。この場合には、ロボットの各種情報から動作情報を演算するとともに、ロボットの作業領域を演算する。そして、作業者の作業領域とロボットの作業領域とが干渉する場合において、作業者の動作情報とロボットの動作情報とから安全ではないと判断される場合に、ロボットに対して停止指示などを出力するようにすればよい。
【００８６】
また、本実施形態では、安全性判断部３１により安全ではないと判断された場合に、ロボット制御部３２がロボット５０を停止させる例を示したが、これに限らず、安全性判断部により安全ではないと判断された場合に、作業者の作業領域の外側でロボットにその他の作業を行わせるようにしてもよい。また、安全性判断部により安全ではないと判断された場合に、ロボットを安全性の確保が可能な状態にすることにより、作業領域の内側でのロボットの動作を許容するようにしてもよい。なお、安全性の確保が可能な状態にするとは、たとえば、衝突時の衝撃力が所定値未満になるように、ロボットの動作速度を低下させることである。
【００８７】
また、本実施形態では、安全性判断部３１が、作業者の動作情報およびロボット５０の動作情報に基づいて安全性を判断する例を示したが、これに限らず、安全性判断部が、作業者の動作情報またはロボットの動作情報に基づいて安全性を判断するようにしてもよい。
【００８８】
また、本実施形態では、安全性判断部３１が設けられる例を示したが、これに限らず、安全性判断部が設けられていなくてもよい。この場合には、作業者の作業領域の外側でロボットを動作させることが好ましい。
【００８９】
また、本実施形態では、開始ボタンが操作された場合に、協調動作が開始されたと判断する例を示したが、これに限らず、作業者が所定の区画に進入した場合に、協調動作が開始されたと判断するようにしてもよい。同様に、終了ボタンが操作された場合に、協調動作が終了されたと判断する例を示したが、これに限らず、作業者が所定の区画から退出した場合に、協調動作が終了されたと判断するようにしてもよい。
【００９０】
また、本実施形態のフローチャートでは、作業者の作業領域を演算した後に、ロボット５０の作業領域を演算する例を示したが、これに限らず、作業者の作業領域とロボットの作業領域とを同時に演算してもよいし、ロボットの作業領域を演算した後に、作業者の作業領域を演算するようにしてもよい。同様に、作業者の動作情報を演算した後に、ロボット５０の動作情報を演算する例を示したが、これに限らず、作業者の動作情報とロボットの動作情報とを同時に演算してもよいし、ロボットの動作情報を演算した後に、作業者の動作情報を演算するようにしてもよい。すなわち、図３のフローチャートは、一例であってその手順に限定されるものではない。
【産業上の利用可能性】
【００９１】
本発明は、作業領域推定装置、制御装置、制御システム、作業領域推定方法およびプログラムに利用可能である。
【符号の説明】
【００９２】
１      制御装置（コンピュータ）
２      検出装置
１２ａ  プログラム
２１    作業者情報取得部（状態取得部）
２２    人体モデル演算部
２３    人体モデル記録部
２４    向き演算部（向き取得部）
２５    可動域演算部
２６    動作演算部（第１動作取得部）
２７    作業領域演算部
２９    ロボット動作演算部（第２動作取得部）
３１    安全性判断部
３２    ロボット制御部（制御部）
４０    作業領域推定部（作業領域推定装置）
５０    ロボット（制御対象）
１００  制御システム
【図１】
0006504072.tif 000002
【図２】
0006504072.tif 000003
【図３】
0006504072.tif 000004