(57)【要約】  ロボット動作評価装置（１）は、ロボットの動作状態に基づき、ロボットの可動部位である評価部位の動作状態を算出する動作状態算出部（２２）と、当該算出された動作状態に対応する評価部位の動作方向に依存する形状特徴量を算出する形状特徴量算出部（２３）と、その形状特徴量に基づき、当該動作方向に対する前記評価部位の動作状態の危険度を表す評価値を算出する評価値算出部（２４）とを備える。
2017199619.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの動作状態に基づき、前記ロボットの可動部位である評価部位の動作状態を算出する動作状態算出部と、
当該算出された動作状態に対応する前記評価部位の動作方向を基準として前記評価部位の形状を特徴付ける単数または複数の形状特徴量を算出する形状特徴量算出部と、
前記単数または複数の形状特徴量に基づき、前記動作方向に対する前記評価部位の動作状態の危険度を表す評価値を算出する評価値算出部と
を備えることを特徴とするロボット動作評価装置。
【請求項２】
請求項１記載のロボット動作評価装置であって、前記形状特徴量算出部は、前記動作方向に対して垂直な断面または端面における前記評価部位の面積を前記形状特徴量として算出することを特徴とするロボット動作評価装置。
【請求項３】
請求項１記載のロボット動作評価装置であって、
前記形状特徴量算出部は、各々が前記動作方向に対して垂直な断面または端面からなる複数の面における前記評価部位の複数の面積を前記複数の形状特徴量として算出し、
前記複数の面は、前記動作方向において互いに異なる位置に存在する
ことを特徴とするロボット動作評価装置。
【請求項４】
請求項３記載のロボット動作評価装置であって、前記評価値算出部は、前記複数の面積のうち最も小さい面積に基づいて前記評価値を算出することを特徴とするロボット動作評価装置。
【請求項５】
請求項３記載のロボット動作評価装置であって、
前記評価値算出部は、前記複数の面積を複数の重み係数でそれぞれ重み付けし、当該重み付けされた面積の加算値に基づいて前記評価値を算出し、
前記各面積を有する面領域の存在位置が前記動作方向寄りになるほど、当該各面積に割り当てられる当該重み係数の値が大きくなることを特徴とするロボット動作評価装置。
【請求項６】
請求項１記載のロボット動作評価装置であって、前記形状特徴量算出部は、前記評価部位よりも前記動作方向の側に仮想的に配置された投影面に前記評価部位の形状を投影し、当該投影された形状に現れる稜線または頂点に基づいて前記形状特徴量を算出することを特徴とするロボット動作評価装置。
【請求項７】
請求項６記載のロボット動作評価装置であって、前記形状特徴量算出部は、前記稜線を構成する２つの面のなす角度、または、前記頂点を構成する複数の面のうちの２つの面のなす角度を前記形状特徴量として算出することを特徴とするロボット動作評価装置。
【請求項８】
請求項１から請求項７のうちのいずれか１項記載の記載のロボット動作評価装置であって、
前記動作状態算出部は、前記ロボットをモデル化したロボットモデルと前記可動部位をモデル化した可動部位モデルとの間の接続関係を定める接続関係情報を用いて、前記評価部位の当該動作方向を算出し、
前記形状特徴量算出部は、前記可動部位モデルの形状を示す形状情報に基づいて前記形状特徴量を算出する
ことを特徴とするロボット動作評価装置。
【請求項９】
請求項１から請求項８のうちのいずれか１項記載の記載のロボット動作評価装置であって、前記評価値算出部は、前記単数または複数の形状特徴量及び前記評価部位の動作速度に基づき、前記評価値を算出することを特徴とするロボット動作評価装置。
【請求項１０】
請求項１から請求項９のうちのいずれか１項記載のロボット動作評価装置であって、前記ロボットの実際の動作を示す実動作データを入力とし、前記実動作データに基づいて前記ロボットの動作状態を選択する動作選択部を更に備え、
前記動作状態算出部は、前記動作選択部により選択された動作状態に基づき、前記評価部位の当該動作状態を算出することを特徴とするロボット動作評価装置。
【請求項１１】
請求項１から請求項９のうちのいずれか１項記載のロボット動作評価装置であって、
前記ロボットの一連の動作を定める動作プログラムを入力とし、前記動作プログラムから前記ロボットの複数の動作状態を抽出する動作抽出部と、
前記複数の動作状態の中から前記ロボットの動作状態を選択する動作選択部と
を更に備え、
前記動作状態算出部は、前記動作選択部により選択された動作状態に基づき、前記評価部位の当該動作状態を算出することを特徴とするロボット動作評価装置。
【請求項１２】
請求項１１記載のロボット動作評価装置であって、前記評価値算出部により算出された評価値が閾値を超えているか否かを判定する危険動作検出部を更に備えることを特徴とするロボット動作評価装置。
【請求項１３】
請求項１２記載のロボット動作評価装置であって、前記危険動作検出部により前記評価度が閾値を超えていると判定された当該評価部位の当該動作状態を、前記評価値が小さくなるように修正する動作修正部を更に備えることを特徴とするロボット動作評価装置。
【請求項１４】
請求項１１から請求項１３のうちのいずれか１項記載のロボット動作評価装置であって、
前記評価度を視覚的に表す画像情報を危険度マップとして生成するマップ生成部と、
前記危険度マップを表示部に表示させる出力インタフェース部と
を更に備えることを特徴とするロボット動作評価装置。
【請求項１５】
請求項１１から請求項１４のうちのいずれか１項記載のロボット動作評価装置であって、前記ロボットの複数の可動部位の中から少なくとも１つの可動部位を前記評価部位として選択する評価部位選択部を更に備えることを特徴とするロボット動作評価装置。
【請求項１６】
請求項１から請求項１５のうちのいずれか１項記載のロボット動作評価装置であって、前記評価部位は、ロボットハンドを含むことを特徴とすることを特徴とするロボット動作評価装置。
【請求項１７】
請求項１３から請求項１６のうちのいずれか１項記載のロボット動作評価装置であって、ロボットの内部状態及び当該ロボットの外部状態のうちの少なくとも一方の状態を検出する少なくとも１つのセンサから出力された状態検出信号または当該状態検出信号に対応する代替信号を受信するセンサインタフェース部と、
前記状態検出信号または前記代替信号を解析して解析結果を出力するデータ解析部と
を更に備え、
前記評価値算出部は、前記解析結果に基づいて、前記動作方向に対する前記評価部位の動作状態の危険度を表す他の評価値を算出し、
前記危険動作検出部は、前記他の評価値に基づき、当該評価部位の動作状態について危険度が高いか否かを判定し、
前記動作修正部は、前記危険動作検出部により危険度が高いと判定された当該評価部位の当該動作状態を、前記他の評価値が小さくなるように修正する
ことを特徴とするロボット動作評価装置。
【請求項１８】
請求項１７記載のロボット動作評価装置と、
動作命令に従って動作するロボット本体と、
前記ロボット本体に前記動作命令を供給するロボット制御装置と
を備え、
前記ロボット制御装置は、前記ロボット動作評価装置の当該動作修正部で修正された動作状態に基づいて前記動作命令を生成することを特徴とするロボットシステム。
【請求項１９】
情報処理装置において実行されるロボット動作評価方法であって、
ロボットの動作状態に基づき、前記ロボットの可動部位である評価部位の動作状態を算出するステップと、
当該算出された動作状態に対応する前記評価部位の動作方向を基準として前記評価部位の形状を特徴付ける単数または複数の形状特徴量を算出するステップと、
前記単数または複数の形状特徴量に基づき、前記動作方向に対する前記評価部位の動作状態の危険度を表す評価値を算出するステップと
を備えることを特徴とするロボット動作評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの動作状態を評価する情報処理技術に関し、特に、ロボットの動作状態の安全性または危険性を評価する情報処理技術に関する。
【背景技術】
【０００２】
近年、産業用ロボット、医療用ロボット及び生活支援ロボットといった様々な種類のロボットが普及している。ロボットの動作範囲内で人間や動物などの生物がそのロボットと接触すると、事故が生じるおそれがある。このような事故を防止するために、ロボット（特に、産業用ロボット）が生物と接触した場合に、当該生物がロボットから過大な力を受けるのを回避する技術が求められている。たとえば、特許文献１（特開２０１２−４０６２６号公報）には、人間とロボットとの間に接触が起こりうる環境でも人間が過大な力を受けることを回避することができるロボットシステムが開示されている。【０００３】
特許文献１のロボットシステムは、ロボットの一部に取り付けられた力センサと、この力センサの検出値に応じてロボットの動作を制御する制御装置と、人間の作業領域を制限する安全柵（制限部）とを備えている。このロボットシステムでは、制御装置は、人間がロボットと接触したときに力センサの検出値が閾値を越えると、ロボットの動作を停止させ、あるいは、力センサの検出値が小さくなるようにロボットを動作させる。また、安全柵は、複数のロボット部位のうち、人間と接触した際に特に過大な力を与える可能性があるロボット部位との接触を防止するものである。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−４０６２６号公報（たとえば、段落００３６〜００３９）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ロボットの可動部位が人間などの物体（オブジェクト）と接触したとき、当該可動部位がその物体に与える物理的影響の大きさは、ロボットの可動部位の動く方向と、その動く方向から視た当該可動部位の形状とに応じて変わりうる。たとえば、ロボットの可動部位の先端部が細い棒形状を有する場合、当該可動部位がその先端部の長手方向に動いて人間に負荷を与えたときと、当該可動部位がその長手方向と垂直な方向に動いて人間に負荷を与えたときとでは、当該可動部位が物体に与える物理的影響の大きさは全く異なる。【０００６】
特許文献１のロボットシステムでは、ロボットの可動部位の動く方向とその動く方向から視た当該可動部位の形状とが考慮されていない。このため、人間などの物体に与える物理的影響の大きさの違いに関わらず、最も物体に与える物理的影響が大きい状況に合わせた、過度な安全対策を採る必要がある。過度な安全対策としては、たとえば、力センサの設置数の増加、安全柵の高さの拡大、及びロボットの可動範囲の過度な制限が挙げられる。しかしながら、このような安全対策は、コストの増大、あるいはロボットの性能制限を招くという課題がある。【０００７】
上記に鑑みて本発明の目的は、過大な安全対策を必要とせずに、ロボットを運用するシステムの安全性の確保を実現可能とするロボット動作評価装置、ロボット動作評価方法、及びロボットシステムを提供することである。
【課題を解決するための手段】
【０００８】
本発明の一態様によるロボット動作評価装置は、ロボットの動作状態に基づき、前記ロボットの可動部位である評価部位の動作状態を算出する動作状態算出部と、当該算出された動作状態に対応する前記評価部位の動作方向を基準として前記評価部位の形状を特徴付ける単数または複数の形状特徴量を算出する形状特徴量算出部と、前記単数または複数の形状特徴量に基づき、前記動作方向に対する前記評価部位の動作状態の危険度を表す評価値を算出する評価値算出部とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ロボットの評価部位の動作方向を基準として算出された形状特徴量に基づき、評価部位の形状及びその動作方向に依存する危険度を表す評価値を算出することができる。よって、過大な安全対策を必要とせずに、ロボットを運用するシステムの安全性の確保を実現することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明に係る実施の形態１のロボット動作評価装置の概略構成を示すブロック図である。
【図２】実施の形態１に係るロボットの概略構成を示す図である。
【図３】図３Ａ及び図３Ｂは、それぞれロボットハンドの例を示す図である。
【図４】実施の形態１の動作危険度評価部の概略構成を示すブロック図である。
【図５】実施の形態１に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【図６】図６Ａは、ロボットハンドの一例を示す正面図であり、図６Ｂ〜図６Ｅは、ロボットハンドの動作方向に依存する形状特徴量の算出方法を説明するための図である。
【図７】図７Ａ〜図７Ｃは、形状特徴量の他の算出方法を説明するための図である。
【図８】実施の形態１のロボット動作評価装置のハードウェア構成例である情報処理装置の概略構成を示すブロック図である。
【図９】実施の形態１のロボット動作評価装置の他のハードウェア構成例である情報処理装置の概略構成を示すブロック図である。
【図１０】本発明に係る実施の形態２のロボット動作評価装置の概略構成を示すブロック図である。
【図１１】実施の形態２の危険度評価部の概略構成を示すブロック図である。
【図１２】実施の形態２に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【図１３】本発明に係る実施の形態３であるロボット動作評価装置の概略構成を示すブロック図である。
【図１４】実施の形態３に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【図１５】本発明に係る実施の形態４であるロボット動作評価装置の概略構成を示すブロック図である。
【図１６】実施の形態４に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【図１７】マップ生成処理の手順の一例を示す概略図である。
【図１８】図１８Ａ，図１８Ｂ及び図１８Ｃは、危険度マップを含む重畳画像の例を説明するための概略図である。
【図１９】本発明に係る実施の形態５であるロボット動作評価装置の概略構成を示すブロック図である。
【図２０】実施の形態５の危険度評価部の概略構成を示すブロック図である。
【図２１】実施の形態５に係るロボット動作評価処理の手順の一例を示すフローチャートである。
【図２２】本発明に係る実施の形態６のロボット動作評価装置を含むロボットシステムの概略構成を示すブロック図である。
【図２３】実施の形態６の危険度評価部の概略構成を示すブロック図である。
【図２４】実施の形態６に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面を参照しつつ、本発明に係る種々の実施の形態について詳細に説明する。なお、図面全体において同一符号を付された構成要素は、同一構成及び同一機能を有するものとする。
【００１２】
実施の形態１．
図１は、本発明に係る実施の形態１であるロボット動作評価装置１の概略構成を示すブロック図である。図１に示されるように、このロボット動作評価装置１は、現実空間のロボット２をモデル化したロボットモデル及びロボット２の可動部位であるロボットハンドをモデル化したハンドモデル（可動部位モデル）が記憶されているデータベース１０と、このデータベース１０を用いてロボットハンドの動作状態の危険度を表す評価値を算出しその算出結果を示す評価データＯＴを出力する危険度評価部１１と、評価データＯＴを表す画像情報を表示部３に表示させる出力インタフェース部（出力Ｉ／Ｆ部）１２と、操作入力部４からの操作入力ＩＴを危険度評価部１１に伝達する入力インタフェース部（入力Ｉ／Ｆ部）１３とを備えて構成されている。
【００１３】
なお、本明細書において「危険度」とは、ロボット２におけるロボットハンドなどのエンドエフェクタ（ｅｎｄ−ｅｆｆｅｃｔｏｒ）、ロボットアームまたは関節などの可動部位が人間または動物などの物体（オブジェクト）と接触した場合に、当該可動部位がその物体に与える物理的影響を表し、「危険度を表す評価値」とは、当該物理的影響の大きさを表す指標である。エンドエフェクタとは、ロボット２の本体部の先端に取り付けられるツールをいう。後述するように、危険度評価部１１は、ロボット２の可動部位が物体と接触したときは、当該可動部位が物体に与える物理的影響が大きいほど、危険度が大きいと評価することができる。
【００１４】
本実施の形態のロボット２は、対象物を把持するロボットハンド（以下、単に「ハンド」ともいう。）を有する。このロボット２は、垂直多関節型または水平多関節型といった、複数の関節を持つロボットアームを有するロボットでもよいし、あるいは、ロボット２は、直動ステージのような１軸の駆動装置である単軸ロボットでもよい。各関節は、回転関節（Ｒｅｖｏｌｕｔｅ  Ｊｏｉｎｔ）または並進関節（Ｐｒｉｓｍａｔｉｃ  Ｊｏｉｎｔ）で構成されればよい。ロボット２が単軸ロボットである場合は、可動部位の駆動軸上の位置が回転関節の角度に対応するものとみなすことができる。
【００１５】
図２は、実施の形態１に係るロボットシステムの構成例を概略的に示す図である。図２に示されるようにこのロボットシステムは、ロボット動作評価装置１、ロボット２、及び、ロボット２に動作プログラムを供給するプログラム格納部２Ｐを備えている。ロボット２は、垂直多関節型のロボット本体（マニピュレータ）２Ｒと、プログラム格納部２Ｐから取得した動作プログラムに従ってロボット本体２Ｒの動作を制御するロボット制御装置２ＲＣと、ロボット本体２Ｒの周辺の外部状態を検出する外部センサ群２Ｓとを有する。
【００１６】
プログラム格納部２Ｐは、動作プログラムを格納する半導体メモリなどの記憶装置を有する。動作プログラムは、ロボット本体２Ｒの動作を定める一連の動作命令（コード群）からなる。ロボット制御装置２ＲＣは、プログラム格納部２Ｐから取得した動作プログラムを半導体メモリなどの内部メモリＭｅに一時的に記憶し、当該内部メモリＭｅ内の動作プログラムに記述される一連の動作命令に従って制御信号群ＣＴＬを生成する。この制御信号群ＣＴＬは、ロボット本体２Ｒに供給される。なお、ロボット制御装置２ＲＣは、ケーブルを介してプログラム格納部２Ｐと接続されてもよいし、あるいは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの通信ネットワークを介してプログラム格納部２Ｐと接続されてもよい。
【００１７】
図２に示されるロボット本体２Ｒは、ベース部３０と、４本のロボットアームからなる第１〜第４アーム部３１〜３４と、ハンド（図２に図示せず。）とを有する。第１〜第４アーム部３１〜３４は、全体として、ベース部３０の回転軸Φ１の回りに回転自在となるように配置されている。また、第１アーム部３１の基端部は、回転軸Φ２の回りに回転自在となるように配置され、第２アーム部３２の基端部は、第１アーム部３１の先端部に対して回転軸Φ３の回りに回転自在となるように配置され、第３アーム部３３の基端部は、第２アーム部３２に対して回転軸Φ４の回りに回転自在となるように配置され、第４アーム部３４の基端部は、第３アーム部３３の先端部に対して回転軸Φ５の回りに回転自在となるように配置されている。また、第３アーム部３３は、第２アーム部３２の回転軸Φ４の軸方向に沿って伸縮自在となるように第２アーム部３２に取り付けられている。第４アーム部３４の先端部は、ハンドが取り付けられるフランジ部３４ａを構成する。このフランジ部３４ａは、第４アーム部３４の本体に対して回転軸Φ６の回りに回転自在となるように取り付けられている。したがって、図２に示されるロボット本体２Ｒは、６つの回転関節と１つの並進関節とを有する多関節構造を有している。
【００１８】
ロボット本体２Ｒの内部には、第１〜第４アーム部３１〜３４及びフランジ部３４ａを個別に回転させる駆動機構（電磁モータ、減速器及び軸受などの部品）と、第３アーム部３３を伸縮させる駆動機構（電磁モータ、送りネジ及びワイヤなどの部品）、及び、フランジ部３４ａに取り付けられたハンドを駆動する駆動機構（電磁モータ及びコンプレッサなどの部品）が組み込まれている。ロボット制御装置２ＲＣは、これら駆動機構に制御信号ＣＴＬを供給することによってこれら駆動機構の動作を制御する。また、ロボット本体２Ｒの内部には、その内部状態をリアルタイムに検出する内部センサ群（図示せず。）が組み込まれている。当該内部状態としては、たとえば、第１〜第４アーム部３１〜３４及びフランジ部３４ａそれぞれの回転角度及びトルク、並びに、電磁モータを流れる電流量が挙げられる。内部センサ群は、当該内部状態をリアルタイムに検出し、当該検出された内部状態を示す状態検出信号ＩＳをロボット制御装置２ＲＣに供給することができる。ロボット制御装置２ＲＣは、状態検出信号ＩＳを用いてロボット本体２Ｒに対するフィードバック制御あるいはフィードフォワード制御を実行することが可能である。
【００１９】
また、ロボット本体２Ｒの周辺領域には、その周辺領域の状態すなわち外部状態をリアルタイムに検出する外部センサ群２Ｓが配置されている。外部センサ群２Ｓとしては、たとえば、ロボット本体２Ｒの外観及びロボット本体２Ｒの周辺空間を視覚的に表す撮像データを出力する撮像デバイス、ロボット本体２Ｒの周辺に存在する人間などの物体と当該ロボット本体２Ｒとの間の距離を測定するレーザ測距計などの測距センサ、超音波センサ及び圧力センサが使用可能であるが、これらに限定されるものではない。外部センサ群２Ｓは、当該外部状態を検出し、当該検出された外部状態を示す状態検出信号ＥＳをロボット制御装置２ＲＣに供給する。ロボット制御装置２ＲＣは、状態検出信号ＥＳを用いてロボット本体２Ｒに対する制御を行うことができる。たとえば、ロボット制御装置２ＲＣは、撮像デバイスより取得された画像データを解析して３次元空間におけるロボット本体２Ｒの実際の姿勢を算出し、当該算出された姿勢に基づいてロボット本体２Ｒの姿勢を制御することができる。
なお、図２の構成例では、６本の回転軸Φ１〜Φ６を有する垂直多関節型のロボット本体２Ｒが採用されているが、これに限定されるものではない。垂直多関節型のロボット本体２Ｒに代えて、水平多関節型のロボット本体あるいは単軸ロボット本体が採用されてもよい。
【００２０】
フランジ部３４ａに取り付けられるハンドは、対象物を挟み込むまたは吸着することで当該対象物を把持することができる。図３Ａ及び図３Ｂはそれぞれハンドの例を示す図である。図３Ａは、対象物を挟み込む機能を有するハンド２Ｈの正面図であり、図３Ｂは、対象物を吸着する機能を有するハンド２Ｈａの正面図である。図３Ａに示されるハンド２Ｈは、ロボット本体２Ｒのフランジ部３４ａに取り付けられる本体部２ｍと、２本の爪部２ａ，２ｂとを有している。このハンド２Ｈは、制御信号群ＣＴＬに従い、２本の爪部を開閉させることで対象物を把持することができる。このハンド２Ｈに代えて、複数の関節を有する多指ハンドが使用されてもよい。一方、図３Ｂに示されるハンド２Ｈａは、ロボット本体２Ｒのフランジ部３４ａに取り付けられる基端部２ｎと、吸着パッド部２ｃとを有している。吸着パッド部２ｃは、空気圧によって対象物を吸いつけることで当該対象物を把持する吸着ハンドである。本実施の形態では、ハンドが評価部位であるが、これに限定されるものではない。ロボット２におけるハンド以外の可動部位（たとえば、関節）を評価部位としてもよい。
【００２１】
図１を参照すると、危険度評価部１１は、ロボット２の実際の動作状態を示す実動作データＳＤの供給をロボット２から受けている。ロボット動作評価装置１は、ケーブルを介してロボット２と接続されてもよいし、あるいは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）またはＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの通信ネットワークを介してロボット２と接続されてもよい。また、危険度評価部１１は、ロボット２から実動作データＳＤの供給を受ける代わりに、ロボット２の動作を制御する制御装置（図示せず）から実動作データＳＤの供給を受けてもよい。
【００２２】
出力Ｉ／Ｆ部１２は、表示部３に接続されている。表示部３は、たとえば、液晶表示パネルまたは有機ＥＬ表示パネルなどの画像表示デバイスである。出力Ｉ／Ｆ部１２は、危険度評価部１１により生成された評価データＯＴを表示部３に表示させることが可能である。また、操作入力部４は、ユーザによる操作入力を受け付ける入力ボタン及び入力キーを有している。危険度評価部１１は、入力Ｉ／Ｆ部１３を介してユーザによる操作入力を受け付けることができる。
【００２３】
図４は、危険度評価部１１の概略構成を示すブロック図である。図４に示されるように、この危険度評価部１１は、実動作データＳＤに基づいてロボット２の動作状態を選択する動作選択部２１と、この動作選択部２１で選択されたロボット２の動作状態に対応するハンドの動作状態を算出する動作状態算出部２２と、ハンドの動作方向に依存するハンドの形状を特徴付ける形状特徴量を算出する形状特徴量算出部２３と、当該形状特徴量に基づき、ハンドの動作状態の危険度を評価する評価値を算出する評価値算出部２４とを備えている。
【００２４】
データベース１０には、ロボット２をモデル化したロボットモデルと、このロボット２のロボットアームの先端に装着されているハンドをモデル化したハンドモデル（可動部位モデル）と、これらロボットモデルとハンドモデルとの間の接続関係を示す接続関係情報とが予め記憶されている。ロボットモデルは、たとえば、ロボット本体２Ｒの３次元形状を示すデータ、及び、ロボット本体２Ｒの姿勢に対するロボット本体２Ｒの各部位の状態に関係するデータとを有している。ロボット本体２Ｒの３次元形状を示すデータとしては、たとえば、ロボット本体２Ｒの位置及び姿勢を示す情報、並びに、ロボット２のロボットアームを構成する各関節（回転関節または並進関節）の長さ及び太さが挙げられる。ロボット本体２Ｒの各部位の状態に関係するデータとしては、たとえば、ロボット本体２Ｒの位置及び姿勢の情報を用いて、回転関節の回転変位量（関節角）や並進関節の並進変位量を算出するための関係式を示すデータが挙げられる。
【００２５】
一方、ハンドモデルは、ハンドの３次元形状をモデル化したハンド形状モデルを含む。接続関係情報は、ロボットモデルの座標系（以下「ロボット座標系」ともいう。）とハンドモデルの座標系（以下「ハンド座標系」ともいう。）との間の相互変換を可能とする関係式をいう。なお、ロボットモデルの座標系は、たとえば、ロボット本体２Ｒのベース部３０を基準として設定された座標系でもよいし、あるいは、ロボット本体２Ｒのフランジ部３４ａを基準として設定された座標系でもよい。ハンドモデルの座標系としては、たとえば、ハンドの３次元的な形状を表わす３Ｄ−ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ  Ｓｙｓｔｅｍ）データを基準とした座標系を利用できる。
【００２６】
以下、図５を参照しつつ、ロボット動作評価装置１の動作について説明する。図５は、実施の形態１に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【００２７】
動作選択部２１は、実動作データＳＤに基づいてロボット２の動作状態（以下「ロボット動作状態」という。）を選択する（ステップＳＴ２２）。ここで、ロボット動作状態とは、ロボット本体２Ｒに対する各動作命令を最小単位としたときの各動作命令に対応するロボット本体２Ｒの動きの状態である。ロボット本体２Ｒに対する動作命令とは、たとえば、移動前のロボット本体２Ｒの３次元空間における位置姿勢の状態と、移動後のロボット本体２Ｒの３次元空間における位置姿勢の状態とが与えられたとき、ロボット本体２Ｒの位置姿勢が移動前の状態から移動後の状態に変化するようにロボット本体２Ｒの各関節の動作を制御する命令のことである。このとき、３次元空間における位置姿勢の状態を指定する動作命令が与えられてもよいし、あるいは、移動前後のロボット本体２Ｒの各関節の角度を指定する動作命令が与えられてもよい。また、ハンドが対象物を挟み込む機能を有する場合、ロボット動作状態には、ロボット本体２Ｒの動作速度及びハンドの開閉状態も含まれる。ステップＳＴ２２では、１つのロボット動作状態が選択されてもよいし、あるいは、複数のロボット動作状態が選択されてもよい。複数のロボット動作状態が選択された場合には、これらロボット動作状態の各々について、すなわちロボット本体２Ｒに対する動作命令ごとに、後述する評価値を算出する処理（ステップＳＴ２６）が実行される。
【００２８】
本実施の形態では、実動作データＳＤに基づいてロボット動作状態が選択されているが、これに限定されるものではない。実動作データＳＤに基づいてロボット動作状態が選択される代わりに、ユーザによる操作入力ＩＴに基づいてロボット動作状態が選択されてもよいし、あるいは、予め設定されているひな型となる複数の動作状態の中から単数または複数のロボット動作状態が選択されてもよい。
【００２９】
上記ステップＳＴ２２の後、動作状態算出部２２及び形状特徴量算出部２３は、それぞれ、接続関係情報ＣＤ、及びハンドモデルの形状を示す形状情報ＤＤをデータベース１０から取得する（ステップＳＴ２３）。
【００３０】
次に、動作状態算出部２２は、接続関係情報ＣＤを用いて、ロボット動作状態をハンドの動作状態（以下「ハンド動作状態」ともいう。）に変換する（ステップＳＴ２４）。接続関係情報ＣＤは、たとえば、ロボット座標系からハンド座標系への変換行列を有している。この変換行列は、ロボット座標系とハンド座標系との間の回転移動及び並進移動を示す情報を含む４行×４列の行列として表現可能である。ロボット座標系を、この変換行列を用いてハンド座標系に変換することで、変換後のハンド座標系におけるハンド動作状態を得ることができる。
【００３１】
ここで、仮に、ロボット座標系におけるロボット動作状態を基準にして当該ロボット動作状態の危険度が評価されると、ロボット本体２Ｒに取り付けられるハンドが異なっていても、同じ評価が得られてしまう。ハンドの形状によっては、同じロボット動作状態であっても衝突が発生した際の危険性が異なるため、ハンド動作状態を基準として危険度を評価することが効果的である。ただし、評価データＯＴがユーザに提示される際には、ロボット座標系を基準とすることが好ましい。なぜなら、ハンド動作状態を基準として評価データＯＴがユーザに提示されると、具体的にどのロボット動作状態が危険であるかが分かりにくいため、ユーザは改善すべきロボット動作状態を直感的に把握することが難しいからである。よって、出力Ｉ／Ｆ部１２は、ユーザが直感的に理解しやすい形で評価データＯＴがロボット動作状態と関連付けられるように、ロボット座標系を基準とした画像情報を生成して表示部３に表示させることが好ましい。
【００３２】
上記ステップＳＴ２４の後、形状特徴量算出部２３は、形状情報ＤＤを用いて、当該ロボット動作状態に対応するハンドの動作方向を基準としてハンドの形状を特徴付ける形状特徴量を算出する（ステップＳＴ２５）。そして、評価値算出部２４は、当該形状特徴量に基づき、あるいは当該形状特徴量及びハンドの動作速度の組合せに基づき、その動作方向に対するハンド動作状態の危険度を表す評価値を算出し（ステップＳＴ２６）、その評価値を示す評価データＯＴを出力Ｉ／Ｆ部１２に出力する（ステップＳＴ２７）。
【００３３】
たとえば、形状特徴量算出部２３は、ハンドの動作方向に対して垂直な面（ハンドの断面または端面）におけるハンドの断面積または端面積を、その動作方向に依存する形状特徴量として算出することができる。図６Ａは、ハンド２Ｈの一例を示す正面図であり、図６Ｂ〜図６Ｅは、ハンド２Ｈの動作方向Ｄ１に依存する形状特徴量の算出方法を説明するための図である。図６Ａに示されるように、ハンド２Ｈは、本体部２ｍから突出する一対の爪部２ａ，２ｂを有している。ハンド２Ｈは、これら爪部２ａ，２ｂを開閉させることで対象物を把持することができる。図６Ｂに示されるように、動作方向Ｄ１に垂直な６つの面Ｓ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５，Ｓ６（面Ｓ１はハンド２Ｈの端面；面Ｓ２〜Ｓ６はハンド２Ｈの断面）が考えられる。図６Ｃは、断面Ｓ２におけるハンド２Ｈの断面領域ＣＳ２を示し、図６Ｄは、断面Ｓ３におけるハンド２Ｈの断面領域ＣＳ３を示し、図６Ｅは、断面Ｓ６におけるハンド２Ｈの断面領域ＣＳ６ａ，ＣＳ６ｂを示している。端面Ｓ１及び断面Ｓ２，Ｓ３の各々における独立した面領域（端面領域または断面領域）の個数は１つである。これに対し、断面Ｓ４〜Ｓ６の各々における独立した断面領域の個数は２つである。ここで、独立した面領域（以下「セグメント」ともいう。）とは、他の面領域と連結していない面領域をいう。
【００３４】
評価値算出部２４は、形状特徴量に応じた評価値を与える評価関数、及び、形状特徴量とハンド（評価部位）の動作速度とに応じた評価値を与える評価関数を有している。評価値算出部２４は、これら評価関数のいずれかを用いて、ハンドの動作方向に対する当該ハンド（評価部位）の動作状態の危険度を表す評価値を算出することができる（ステップＳＴ２６）。
【００３５】
具体的には、前述の断面積または端面積が小さいほど、またハンドの動作速度が大きいほど評価値が高くなるように評価関数を設計することができる。このとき、ハンドの断面積または端面積は、各断面または各端面における単数または複数の面領域全体の面積として算出されてもよい。あるいは、ハンドの断面積または端面積は、各断面または各端面における独立した面領域（セグメント）ごとに算出されてもよい。本実施の形態では、セグメントごとに、インデックスが割り当てられるものとする。
【００３６】
また、各断面または各端面の面領域がハンドの動作方向寄りに存在するほど、ハンドの衝突時に先に接触する可能性が高いため、その危険度を表す評価値を高くすることができる。あるいは、各断面または各端面において存在する複数のセグメント中で最も面積の小さいセグメントのみに基づいて評価値を算出してもよい。ハンドと衝突する可能性のある物体の種類や評価値の算出目的に応じて評価関数を設計することが望ましい。
【００３７】
評価関数の例としては、下記の式（１）が挙げられる。
2017199619.tif 000003
【００３８】
ここで、Ｄは、危険度を表す評価値、Ｈｓはハンドの動作速度、Ｓｉ，ｊは、ハンド（評価部位）における当該動作方向に垂直な断面または端面のセグメントごとの面積、ｉは、当該断面または端面のインデックス（面番号）、ｊは、セグメントのインデックス（セグメント番号）である。また、ｍｉｎ｛ｘ｝は、集合｛ｘ｝のうち最も小さいｘの値を与える。よって、式（１）は、すべての断面及び端面に存在するセグメントの中で最も面積の小さいセグメントに基づいて評価値Ｄを与えるものである。また、式（１）の評価値Ｄは、ハンドの動作速度に比例している。この式（１）を用いた評価方法では、ハンドの鋭利な爪部２ａ，２ｂが接触する可能性のあるハンド動作状態はすべて危険度が高い状態とみなされる。
【００３９】
また、上式（１）に代えて、次式（２）の重み付け加算式が評価関数として使用されてもよい。
2017199619.tif 000004
【００４０】
ここで、ｗｉは、ｉ番目の断面または端面に割り当てられた重み係数であり、次式（３）が成立する。
2017199619.tif 000005
この重み係数ｗｉは、断面または端面が動作方向側に配置されるほど、大きい値となるような値に設定されている。図６Ｂの例では、端面Ｓ１及び断面Ｓ２〜Ｓ６にそれぞれ対応する重み係数ｗ１〜ｗ６の中で、断面Ｄ６に割り当てられた重み係数ｗ６の値が最も高く、端面Ｄ１に割り当てられた重み係数ｗ１の値が最も低い。
【００４１】
また、評価部位の動作速度を考慮した評価関数が使用されてもよい。今、当該評価部位のｉ番目の断面または端面におけるｊ番目セグメントの動作速度をｖｉ，ｊ（ｖｉ，ｊは３次元ベクトル）で表すものとする。また、動作速度ｖｉ，ｊのノルム（絶対値）が大きいほど、大きくなる値を与える単調増加関数をｆ（ｖｉ，ｊ）で表すものとする。単調増加関数ｆ（ｖｉ，ｊ）の例としては、動作速度ｖｉ，ｊのノルムを変数とする単項式もしくは多項式、または、動作速度ｖｉ，ｊのノルムを変数とする指数関数が挙げられるが、これに限定されるものではない。上式（２）と単調増加関数ｆ（ｖｉ，ｊ）とを用いて、次式（４Ａ）で定義される評価関数を構成することができる。
2017199619.tif 000006
【００４２】
上式（４Ａ）のｑ［ｉ］は、ｉ番目の断面または端面における単数または複数のセグメントの面積Ｓｉ，ｊの集合のうちの最も小さな面積を有するセグメントのインデックスである。具体的には、ｑ［ｉ］は、次式（４Ｂ）で与えられる。
2017199619.tif 000007
【００４３】
あるいは、上式（１）と関数ｆ（ｖｉ，ｊ）とを用いて、次式（５Ａ）で定義される評価関数を構成することもできる。
2017199619.tif 000008
【００４４】
上式（５Ａ）中、ｐは、面積Ｓｉ，ｑ［ｉ］の集合のうちの最も小さな面積を有する端面または断面のインデックスであり、ｑは、ｐ番目の断面または端面における単数または複数のセグメントの面積Ｓｐ，ｊの集合のうちの最も小さな面積を有するセグメントのインデックスである。具体的には、ｐ，ｑは、次式（５Ｂ）で与えられる。
2017199619.tif 000009
【００４５】
あるいは、形状特徴量算出部２３は、ハンドの動作方向に対して逆向きの方向から視たときの当該ハンドの投影形状（たとえば、エッジまたは頂点）を特徴付ける量を、その動作方向に依存する形状特徴量として算出してもよい（ステップＳＴ２５）。ここで、投影形状は、評価部位であるハンドよりも当該ハンドの動作方向の側に仮想的に配置された投影面に当該ハンドを投影することで得られる形状である。この投影面は、ハンドの動作方向と直交する。図７Ａ〜図７Ｃは、形状特徴量の他の算出方法を説明するための図である。図７Ａは、ハンド２Ｈの正面図であり、図７Ｃは、ハンドの第１の動作方向Ｄ１に対して逆向きの方向から視たときのハンドの投影形状を示す投影図であり、図７Ｂは、ハンドの第２の動作方向Ｄ２に対して逆向きの方向から視たときのハンドの投影形状を示す投影図である。形状特徴量算出部２３は、ハンドの投影形状からエッジ（稜線）や頂点を抽出し、これらエッジや頂点を形状特徴量の算出に利用することができる。ここで、エッジとは、投影形状においてステップ状の段差が生じている境界部分のことである。また、頂点とは、複数のエッジの交点となる部分のことである。このようにして、ハンドの動作時に衝突する可能性のあるハンドの稜線及び頂点が抽出される。なお、衝突する可能性のあるハンドのエッジ及び頂点を検出する方法はこれに限ったものではない。ハンドの３Ｄ−ＣＡＤデータが有する情報として含まれる、ハンドを構成するメッシュの法線方向と、ハンドの動作方向とを関連付けることでエッジ及び頂点を抽出する方法など、様々な方法が考えられる。
【００４６】
この場合、形状特徴量算出部２３は、投影形状に現れるエッジを構成する２つの面のなす角度、または、投影形状に現れる頂点を構成する複数の面のうちの２つの面のなす角度を形状特徴量として算出することができる。評価関数としては、その角度が小さいほど、危険度を表す評価値を高くする関数を設計することができる。あるいは、形状特徴量算出部２３は、たとえば、ハンドのエッジや頂点の位置座標及び３次元方向ベクトルを形状特徴量として算出してもよい。評価値を与える評価関数としては、たとえば、ハンドのエッジや頂点の３次元方向とハンドの動作方向とのなす角度が小さいほど、また、エッジや頂点の位置がハンドの動作方向寄りに存在するほど、その評価値を高くする関数を設計することができる。なお、ハンドの頂点の方向ベクトルは、たとえば、頂点を構成する複数のエッジの３次元方向（エッジに沿った方向）を示すベクトルの平均として算出可能である。
【００４７】
ここで、評価関数の設計においては、衝突の可能性のあるすべてのエッジ及び頂点が使用されてもよいし、あるいは、最もハンドの動作方向寄りに存在するエッジもしくは頂点だけが使用されてもよい。また、複数のエッジ及び頂点から危険度を算出する際には、そのエッジまたは頂点が動作方向寄りに存在するほど危険度が高くなるような重み係数が導入されてもよい。
【００４８】
上記した評価結果の出力（図５のステップＳＴ２７）の後、評価を終了しないときは（ステップＳＴ３１のＮＯ）、動作選択部２１が実動作データＳＤに基づいてステップＳＴ２２を実行する。一方、評価を終了するときは（ステップＳＴ３１のＹＥＳ）、危険度評価部１１は、以上のロボット動作評価処理を終了させる。
【００４９】
出力Ｉ／Ｆ部１２は、評価データＯＴをユーザに提示するために、この評価データを画像情報に変換して表示部３に表示させる。画像情報の生成方法としては、たとえば、ロボット動作状態と関連付けて評価値をリスト化する方法、あるいは、シミュレータ上でロボットの動作軌跡を、算出された評価値に応じて色を変えて表示する方法がある。例として、危険度が高い場合は赤色で示し、危険度が低い場合は青色で示す画像情報を生成することができる。危険度の高低は、予め設定された閾値から決定されてもよいし、あるいは、複数のロボット動作状態についてそれぞれ算出された危険度（評価値）の相対評価によって決定されてもよい。閾値は、たとえば、衝突安全に係る規格に則って設定されてもよいし、あるいは、実験的もしくは経験的に得た値が使用されてもよい。
【００５０】
以上に説明したロボット動作評価装置１のハードウェア構成は、たとえば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内蔵のコンピュータ構成を有する情報処理装置により実現可能である。あるいは、ロボット動作評価装置１のハードウェア構成は、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）またはＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）などのＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）を有する情報処理装置により実現されてもよい。
【００５１】
図８は、ロボット動作評価装置１のハードウェア構成例である情報処理装置１Ｈの概略構成を示すブロック図である。この情報処理装置１Ｈは、ＣＰＵ５０ｃを含むプロセッサ５０、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５２、入出力インタフェース（Ｉ／Ｆ）回路５３、及び記録媒体５４を備えて構成されている。これらプロセッサ５０、ＲＡＭ５１、ＲＯＭ５２、入出力Ｉ／Ｆ回路５３及び記録媒体５４は、バス回路などの信号路５５を介して相互に接続されている。記録媒体５４は、上記したデータベース１０を格納する記憶領域として使用可能である。記録媒体５４は、たとえば、ＨＤＤまたはＳＳＤ（ソリッドステートドライブ）で構成可能である。プロセッサ５０は、ＲＯＭ５２から、ロボット評価処理用のコンピュータプログラムを読み出して実行することにより、上記した動作危険度評価部１１の機能を実現することができる。入出力インタフェース回路５３は、上記した出力Ｉ／Ｆ部１２及び入力Ｉ／Ｆ部１３の機能を実現する回路である。
【００５２】
また、図９は、ロボット動作評価装置１の他のハードウェア構成例である情報処理装置１Ｊの概略構成を示すブロック図である。この情報処理装置１Ｊは、信号処理回路６０、入出力インタフェース（Ｉ／Ｆ）回路６１及び記録媒体６２を備えて構成されている。これら信号処理回路６０、入出力Ｉ／Ｆ回路６１及び記録媒体６２は、バス回路などの信号路６３を介して相互に接続されている。記録媒体６２は、上記したデータベース１０を格納する記憶領域として使用可能である。記録媒体６２は、たとえば、ＨＤＤまたはＳＳＤで構成可能である。信号処理回路６０は、上記した動作危険度評価部１１の機能を実現することができる。入出力インタフェース回路６１は、上記した出力Ｉ／Ｆ部１２及び入力Ｉ／Ｆ部１３の機能を実現する回路である。
【００５３】
以上に説明したように実施の形態１のロボット動作評価装置１は、ハンドの動作方向を基準として当該ハンドの形状を特徴付ける形状特徴量を算出し、当該形状特徴量に基づき、ハンドの形状及びその動作方向に依存する危険度を表す評価値を算出することができる。よって、ロボット２の運用時に伴う危険度をロボット動作状態ごとに把握することができるため、安全柵や侵入検知センサの設置位置や要求スペックの決定が容易になり、過大な安全対策とならないように効率的なシステムを構築することが可能となる。また、危険度が高いロボット動作状態の特定及び修正が容易になる。したがって、本実施の形態のロボット動作評価装置１を使用すれば、過大な安全対策を必要とせずに、ロボット２を運用するシステムの安全性の確保を実現することができる。
【００５４】
ここで、従来のロボットシステムの安全対策では、ロボットの可動部位の動く方向とその動く方向から視た当該可動部位の形状とが考慮されていなかった。このため、安全性を確保するためには、最も危険な状況に合わせた、過度な安全対策を採る必要があった。最も危険な状況の例としては、ロボットハンドの先端部が鋭利な形状を有する場合に、当該先端部が人間に対してまっすぐ衝突する状況が考えられる。このような状況では、当該先端部が弱い力で人間に衝突した場合であっても、人間に大きな物理的衝撃を与える可能性がある。このような物理的衝撃を回避するために、従来のロボットシステムは、力センサがそのような弱い力を検出しただけでロボットの動作を制限するので、ロボット本体に対して非効率的な制御を実行するおそれがあった。これに対し、本実施の形態のロボット動作評価装置１を使用すれば、過度な安全対策を必要とせずに、ロボット２を運用するシステムの安全性の確保を実現しつつ、ロボット本体２に対して効率的な制御を実行することが可能となる。
【００５５】
実施の形態２．
次に、本発明に係る実施の形態２について説明する。図１０は、本発明に係る実施の形態２であるロボット動作評価装置１Ａの概略構成を示すブロック図である。図１０に示されるように、このロボット動作評価装置１Ａは、データベース１０と、このデータベース１０を用いてロボットハンドの動作状態の危険度を評価しその評価結果を示す評価データＯＴを出力する危険度評価部１１Ａと、出力Ｉ／Ｆ部１２と、入力Ｉ／Ｆ部１３とを備えて構成されている。
【００５６】
図１１は、実施の形態２の危険度評価部１１Ａの概略構成を示すブロック図である。図１１に示されるように、この危険度評価部１１Ａは、ロボット本体２Ｒの一連の動作を定める動作プログラムＰＤを入力とし、この動作プログラムＰＤからロボット２の複数の動作状態を抽出する動作抽出部２０と、これら複数の動作状態の中からロボット２の動作状態を選択する動作選択部２１と、この動作選択部２１で選択されたロボット２の動作状態に対応するハンドの動作状態を算出する動作状態算出部２２と、ハンドの動作方向に依存する形状特徴量を算出する形状特徴量算出部２３と、当該形状特徴量に基づいて評価値を算出する評価値算出部２４とを備えている。
【００５７】
動作プログラムＰＤは、プログラム格納部２Ｐから危険度評価部１１Ａに供給されている。危険度評価部１１Ａは、ケーブルを介してプログラム格納部２Ｐと接続されてもよいし、あるいは、ＬＡＮまたはＷＡＮなどの通信ネットワークを介してプログラム格納部２Ｐと接続されてもよい。
【００５８】
本実施の形態のロボット動作評価装置１Ａの構成は、図１１の危険度評価部１１Ａが動作抽出部２０を有する点と、この動作抽出部２０から動作選択部２１にロボット２の動作状態を示す動作データが供給される点とを除いて、上記実施の形態１のロボット動作評価装置１の構成と同じである。
【００５９】
以下、図１２を参照しつつ、ロボット動作評価装置１Ａの動作について説明する。図１２は、実施の形態２に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【００６０】
図１２を参照すると、動作抽出部２０は、操作入力ＩＴの指示内容に応じて、動作プログラムＰＤからロボット動作状態を選択するか否かを判定する（ステップＳＴ１０）。すなわち、動作プログラムＰＤからロボット動作状態を選択しないとの指示がある場合には、動作抽出部２０は、動作プログラムＰＤからロボット動作状態を選択しないと判定する（ステップＳＴ１０のＮＯ）。次いで、操作入力ＩＴによるロボット動作状態の指定が無い場合（ステップＳＴ１３のＮＯ）、以上でロボット動作評価処理は終了する。操作入力ＩＴによるロボット動作状態の指定がある場合は（ステップＳＴ１３のＹＥＳ）、動作抽出部２０は、その指定されたロボット動作状態を動作選択部２１に与えるので、動作選択部２１は、その指定されたロボット動作状態を選択する（ステップＳＴ１４）。その後は、ステップＳＴ２３以後の処理が実行される。
【００６１】
一方、動作プログラムＰＤからロボット動作状態を選択する場合（ステップＳＴ１０のＹＥＳ）、動作抽出部２０は、動作プログラムＰＤからロボット２の複数の動作状態を抽出する（ステップＳＴ１１）。具体的には、動作抽出部２０は、入力された動作プログラムＰＤからロボット本体２Ｒに対する動作命令に該当する部分（コード）を検出し、動作速度を含むロボット動作状態を抽出する。次に、動作選択部２１は、それら複数の動作状態の中からロボット動作状態を少なくとも１つ選択する（ステップＳＴ１２）。その後は、ステップＳＴ２３以後の処理が実行される。
【００６２】
評価結果の出力（図１２のステップＳＴ２７）の後、評価を終了しないときは（ステップＳＴ３１のＮＯ）、動作抽出部２０がステップＳＴ１０の判定処理を実行する。一方、評価を終了するときは（ステップＳＴ３１のＹＥＳ）、危険度評価部１１は、以上のロボット動作評価処理を終了させる。
【００６３】
以上に説明したように実施の形態２のロボット動作評価装置１Ａは、動作プログラムＰＤで定められているロボット動作状態に対応するハンドの動作状態の危険度を評価することができる。よって、動作プログラムＰＤに記述されているロボット２の一連の動作で生じる危険度を網羅的に評価することが可能である。また、実際にロボット２を動作させたときにどの動作状態が危険であるかを事前に知ることができる。更に、ユーザが、評価対象のロボット動作状態を複数設定する手間を省くこともできる。
【００６４】
なお、動作プログラムＰＤ中で全く同じ動作状態が複数定められている場合には、それら動作状態のうちの１つだけを選択して評価することで、評価の計算コストを低減することが可能である。
【００６５】
実施の形態３．
次に、本発明に係る実施の形態３について説明する。図１３は、本発明に係る実施の形態３であるロボット動作評価装置１Ｂの概略構成を示すブロック図である。図１３に示されるように、このロボット動作評価装置１Ｂは、上記実施の形態２のロボット動作評価装置１Ａと同様に、データベース１０、危険度評価部１１Ａ、出力Ｉ／Ｆ部１２及び入力Ｉ／Ｆ部１３を備えるとともに、更に、危険動作検出部１４及び動作修正部１５を備えて構成されている。
【００６６】
危険動作検出部１４は、ハンド（評価部位）の動作状態の評価値が閾値を超えているか否かを判定し、その判定結果を示す判定データＤＲを出力Ｉ／Ｆ部１２及び動作修正部１５に出力する。出力Ｉ／Ｆ部１２は、その判定データＤＲを表示部３に表示させることができる。また、動作修正部１５は、危険動作検出部１４により評価値が閾値を超えていると判定された当該動作状態（以下「危険動作状態」ともいう。）を、評価値が小さくなるように修正することにより、修正された動作プログラムＭＰＤを生成することができる。
【００６７】
ここで、閾値としては、ユーザによる操作入力ＩＴにより予め設定された閾値が使用されればよい。あるいは、動作プログラムＰＤに定められている複数のロボット動作状態の危険度の相対評価によって閾値が決定されてもよい。また、閾値としては、たとえば、衝突安全に係る規格に則って設定された値を使用してもよいし、あるいは、実験的もしくは経験的に得た値を使用してもよい。相対評価によって閾値が決定される場合は、動作プログラムＰＤに定められている複数のロボット動作状態の中で最も危険度の高いロボット動作状態が選択されてもよいし、あるいは、危険度の高い順に指定した数だけロボット動作状態が選択されてもよい。
【００６８】
以下、図１４を参照しつつ、ロボット動作評価装置１Ｂの動作について説明する。図１４は、実施の形態３に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【００６９】
図１４を参照すると、危険度評価部１１Ａは、上記実施の形態２の場合と同様に、ステップＳＴ１０〜ＳＴ１４，ＳＴ２３〜２７を実行する。評価結果を示す評価データＯＴが出力されると（ステップＳＴ２７）、危険動作検出部１４は、危険度が高いか否か、すなわち、当該評価データＯＴで示される評価値があらかじめ用意された閾値を超えているか否かを判定する（ステップＳＴ２８）。
【００７０】
ここで、危険度が高いかどうかの判定（ステップＳＴ２８）においては、適宜、拘束条件が付与されてもよい。拘束条件の例として、特定の方向または領域におけるロボット動作状態に対応するハンド動作状態を危険動作状態として判定しないという条件が挙げられる。たとえば、安全柵を設置することが決まっている領域や、物理的に衝突の危険がない特定の方向においては危険度の評価が不要であることがある。その他の条件として、力覚センサや視覚センサなどのセンサによる検出結果のフィードバックを利用したロボット動作状態に対応するハンド動作状態を危険動作状態として判定しないという条件も挙げられる。その理由は、センサによる検出結果のフィードバックを利用したロボット動作状態は、動作プログラムＰＤの実行のたびに異なる動きを呈する可能性があるためである。
【００７１】
危険動作検出部１４は、閾値を超えている評価値が存在しない場合は、危険度が高くないと判定し（ステップＳＴ２８のＮＯ）、ステップＳＴ３１に処理を移行させる。一方、危険動作検出部１４は、閾値を超えている評価値が存在する場合は、危険度が高いと判定する（ステップＳＴ２８のＹＥＳ）。この場合、動作修正部１５は、その危険度が高いと判定された危険動作状態を修正することで、修正された動作プログラムＭＰＤを生成し（ステップＳＴ２９）、ステップＳＴ３１に処理を移行させる。
【００７２】
ステップＳＴ２９では、動作修正部１５は、たとえば、評価値が低くなるように、評価部位（ハンド）の動作速度を遅くする方法、ロボット２の動作モードを直交座標系における直線補間動作と関節補間動作との間で切り替える方法、評価値が低くなるように動作の中間点（たとえば、一時的な動作停止が行われる点）を生成する方法、あるいは、低い評価値に対応するロボット動作状態を組み入れる方法を使用して動作プログラムＰＤを修正することができる。動作の中間点を生成する方法については、ユーザが操作入力部４を操作して中間点の設定をしてもよい。あるいは、複数の中間点が自動的に生成され、これら複数の中間点の中から最も評価値が低くなる中間点が選択されてもよい。また、これらの方法の組み合わせが採用されてもよい。
【００７３】
実施の形態３のロボット動作評価装置１Ｂは、動作プログラムＰＤから危険度の高いハンド動作状態を自動的に検出し、そのハンド動作状態を修正して危険度の低いロボット動作状態を作り出すことができる。そのため、安全対策を講じるためにロボット２の実機を動作させながら動作プログラムＰＤを試行錯誤的に修正する必要がなくなる。これにより、ロボットシステムの立ち上げ期間を短縮化することができる。
【００７４】
実施の形態４．
次に、本発明に係る実施の形態４について説明する。図１５は、本発明に係る実施の形態４であるロボット動作評価装置１Ｃの概略構成を示すブロック図である。図１５は、本発明に係る実施の形態４であるロボット動作評価装置１Ｃの概略構成を示すブロック図である。図１５に示されるように、このロボット動作評価装置１Ｃは、上記実施の形態３のロボット動作評価装置１Ｂと同様に、データベース１０、危険度評価部１１Ａ、出力Ｉ／Ｆ部１２、入力Ｉ／Ｆ部１３、危険動作検出部１４及び動作修正部１５を備えるとともに、更に、マップ生成部１６及び危険度マップ格納部１７を備えて構成されている。
【００７５】
図１６は、実施の形態４に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。図１６のフローチャートは、ステップＳＴ３１のＮＯの場合にステップＳＴ４０のマップ生成処理が実行される点を除いて、図１４のフローチャートと同じである。図１７は、マップ生成処理の手順の一例を示す概略図である。
【００７６】
ステップＳＴ３１にて評価を終了するとの判定がなされたとき（ステップＳＴ３１のＹＥＳ）、この判定に応じて、マップ生成部１６は、評価データＯＴに基づき、評価値を視覚的に表す画像情報を危険度マップとして生成する（ステップＳＴ４１）。この危険度マップは、危険度マップ格納部１７に格納される。たとえば、マップ生成部１６は、シミュレータ上のロボット本体２Ｒの周囲を表す画像領域に重畳すべき画像情報として、評価値に応じた３次元的なベクトルまたは色分布を表す画像情報を危険度マップとして生成することができる。
【００７７】
出力Ｉ／Ｆ部１２は、危険度マップ格納部１７から危険度マップを読み出し、シミュレータ上のロボット本体２Ｒを表す画像情報に当該危険度マップを重畳させて重畳画像を生成し、その重畳画像を表示部３に表示させる（ステップＳＴ４２）。出力Ｉ／Ｆ部１２は、俯瞰図としてシミュレータ上のロボット本体２Ｒの全体像を表す画像に、危険度マップを重畳させればよい。
【００７８】
図１８Ａ〜図１８Ｃは、危険度マップを含む重畳画像の例を説明するための概略図である。図１８Ａは、ハンド２Ｈを有するロボット本体２Ｒの全体像を含む画像ＩＭＧの一例を示す図であり、図１８Ｂは、画像ＩＭＧに対応する危険度マップＲＭの一例を示す図であり、図１８Ｃは、重畳画像ＳＰＩの一例を示す図である。図１８Ａに示されるように、画像ＩＭＧは、ロボット本体２Ｒとその周辺領域とを含む作業領域を当該ロボット本体２Ｒの真上から視た場合の画像である。この画像ＩＭＧは、複数のグリッド領域ＧＲ，…，ＧＲで格子状に区切られている。この例では、マップ生成部１６は、ハンド２Ｈを含むロボット本体２Ｒの可動部位の動作状態について算出された評価値に基づき、各グリッド領域ＧＲごとに危険度レベルを判定し、複数のグリッド領域ＧＲ，…，ＧＲに対してそれぞれ危険度レベルに応じた表示色を割り当てる。そして、マップ生成部１６は、図１８Ｂに示されるように、割り当てられた表示色のグリッド画像ｇｒ，…，ｇｒの配列からなる画像を危険度マップＲＭとして生成する（ステップＳＴ４１）。ここで、図１８Ａのグリッド領域ＧＲと図１８Ｂのグリッド画像ｇｒとは一対一で対応している。すなわち、グリッド領域ＧＲの画像上の位置とこれに対応するグリッド画像ｇｒの画像上の位置とは同じである。その後、出力Ｉ／Ｆ部１２は、画像ＩＭＧに危険度マップＲＭを重畳させて図１８Ｃに示される重畳画像ＳＰＩを生成し、この重畳画像ＳＰＩを表示部３に表示させる（ステップＳＴ４２）。図１８Ｂの例では、「０」〜「４」の５段階の危険度レベルが設定されている。グリッド領域ＧＲの表示色の濃度が高いほど、当該グリッド領域ＧＲに現れる空間領域の危険度が高いことを意味する。ユーザは、表示部３に表示された重畳画像ＳＰＩを視ることで、危険度が高い場所、危険度が低い場所及びロボット動作状態を直感的且つ容易に理解することができる。
【００７９】
なお、ユーザは、図１８Ｂの危険度マップＲＭからは、水平方向（ロボット本体２Ｒの高さ方向に直交する方向）の２次元的な危険度分布を知ることができるが、高さ方向の危険度分布を知ることが難しい。そこで、ユーザが、ロボット本体２Ｒの基端部（たとえば、図２のベース部３０）からの複数の高さ位置をあらかじめ設定しておき、マップ生成部１６が、各高さ位置ごとに危険度マップＲＭを生成することが望ましい。そして、出力Ｉ／Ｆ部１２は、複数の高さ位置にそれぞれ対応する複数枚の危険度マップＲＭの各々を画像ＩＭＧに重畳させて複数の高さ位置にそれぞれ対応する複数枚の重畳画像ＳＰＩを生成し、これら重畳画像ＳＰＩを表示部３に表示させればよい（ステップＳＴ４２）。これにより、ユーザは、３次元的な危険度分布を容易に知ることができる。
【００８０】
あるいは、出力Ｉ／Ｆ部１２は、ロボット２の評価部位の断面または端面を表す画像に危険度マップを重畳させてもよい。あるいは、出力Ｉ／Ｆ部１２は、高さ方向の情報を圧縮して２次元画像として危険度マップを表示部３に表示させてもよい。高さ方向の情報を圧縮する場合には、ある地点の評価値のうち最も評価値が高い情報のみを２次元画像に残してもよいし、評価値のうちの最大値と最小値の両方を２次元画像に残してもよい。このような２次元画像を利用することで、ロボットシステムの設計図との対比が容易になり、当該２次元画像を設計改善の検討材料として利用することができる。これにより、システム設計の負担軽減が可能となる。
【００８１】
危険度マップが表示部３に表示された（ステップＳＴ４２）後は、ロボット動作評価処理が終了する。
【００８２】
以上に説明したように実施の形態４のロボット動作評価装置１Ｃは、ロボット本体２Ｒの周辺領域の危険度合いを可視化することができる。これにより、ユーザは直感的に危険度が高い場所及びロボット動作状態を理解することができるので、安全柵や侵入検知センサの設置位置の検討が容易になる。したがって、安全対策が施されたロボットシステムの立ち上げ期間を短縮化することができる。
【００８３】
実施の形態５．
次に、本発明に係る実施の形態５について説明する。図１９は、本発明に係る実施の形態５であるロボット動作評価装置１Ｄの概略構成を示すブロック図である。図１９に示されるように、このロボット動作評価装置１Ｄは、上記実施の形態４のロボット動作評価装置１Ｃと同様に、出力Ｉ／Ｆ部１２、入力Ｉ／Ｆ部１３、危険動作検出部１４、動作修正部１５、マップ生成部１６及び危険度マップ格納部１７を備えている。また、ロボット動作評価装置１Ｄは、データベース１０Ａ及び危険度評価部１１Ｄを備えている。
【００８４】
データベース１０Ａには、上記したロボットモデルと、ロボット２の可動部位（ハンド及び関節）をモデル化した可動部位モデルと、これらロボットモデルと可動部位モデルとの間の接続関係を示す接続関係情報とが予め記憶されている。ここで、可動部位モデルをデータベース１０Ａに記憶する際に、ロボット２の関節の形状データだけでなく、これに付属する冶具の形状データも併せて記憶しておくことが望ましい。これにより、ロボット２の関節に冶具が設置される場合においても危険度を評価することができる。
【００８５】
図２０は、実施の形態５の危険度評価部１１Ｄの概略構成を示すブロック図である。この危険度評価部１１Ｄの構成は、動作選択部２１と動作状態算出部２２との間に評価部位選択部２１Ｄを有する点を沿いて、上記実施の形態２の危険度評価部１１Ａの構成と同じである。
【００８６】
図２１は、実施の形態５に係るロボット動作評価処理の手順の一例を示すフローチャートである。図２１のフローチャートは、ステップＳＴ１４とＳＴ２５の間にステップＳＴ１５，ＳＴ２３Ｄ，ＳＴ２４Ｄを有する点を除いて、図１６のフローチャートと同じである。
【００８７】
ステップＳＴ１４またはステップＳＴ１２の実行後、評価部位選択部２１Ｄは、ステップＳＴ１４またはＳＴ１５で選択されたロボット動作状態に対応するロボットの可動部位を評価部位として選択する（ステップＳＴ１５）。ここで、評価部位として、ハンドに限らず、ロボット２の関節も選択することができる。その後、動作状態算出部２２及び形状特徴量算出部２３は、それぞれ、接続関係情報ＣＤ、及び可動部位モデルの形状を示す形状情報ＤＤをデータベース１０から取得する（ステップＳＴ２３Ｄ）。その後、動作状態算出部２２は、接続関係情報ＣＤを用いて、ロボット動作状態を当該評価部位の動作状態に変換する（ステップＳＴ２４Ｄ）。次に、形状特徴量算出部２３は、形状情報ＤＤを用いて、当該ロボット動作状態に対応する評価部位の動作方向を基準として当該評価部位の形状を特徴付ける形状特徴量を算出する（ステップＳＴ２５）。この形状特徴量の算出方法は、上述したとおりである。その後のステップＳＴ２６以後の処理は、上述したとおりである。
【００８８】
以上に説明したように実施の形態５のロボット動作評価装置１Ｄは、ロボットハンドに限らず、ロボット２の各関節による衝突の危険度も評価することができる。したがって、ロボット全体の危険度を評価することが可能である。
【００８９】
実施の形態６．
次に、本発明に係る実施の形態６について説明する。図２２は、本発明に係る実施の形態６のロボット動作評価装置１Ｅを含むロボットシステムの概略構成を示す機能ブロック図である。図２２に示されるようにこのロボットシステムは、ロボット動作評価装置１Ｅ、ロボット２Ｅ、及び、ロボット２Ｅに動作プログラムを供給するプログラム格納部２Ｐを備えている。ロボット２Ｅは、ロボット本体（マニピュレータ）２Ｒと、プログラム格納部２Ｐから取得した動作プログラムに従ってロボット本体２Ｒの動作を制御するロボット制御装置２ＲＣｅと、外部センサ群２Ｓとを有する。ロボット２Ｅの構成は、実施の形態１のロボット制御装置２ＲＣに代えて図２２のロボット制御装置２ＲＣｅを有する点を除いて、上記ロボット２の構成と同じである。
【００９０】
ロボット制御装置２ＲＣｅは、実施の形態１のロボット制御装置２ＲＣ（図２）と同様に、内部メモリＭｅ内の動作プログラムに記述される一連の動作命令に従って制御信号群ＣＴＬを生成する。また、ロボット制御装置２ＲＣｅは、ロボット本体２Ｒの内部状態を示す状態検出信号ＩＳを用いてロボット本体２Ｒに対するフィードバック制御あるいはフィードフォワード制御を実行する機能を有し、ロボット本体２Ｒの外部状態を示す状態検出信号ＥＳを用いてロボット本体２Ｒの動作を制御する機能を有する。
【００９１】
本実施の形態のロボット制御装置２ＲＣｅは、更に、状態検出信号ＩＳ，ＥＳをロボット動作評価装置１Ｅに供給する。ロボット動作評価装置１Ｅは、ロボット制御装置２ＲＣｅから供給された状態検出信号ＩＳ，ＥＳを用いて評価部位の動作状態の危険度を評価することができる。ここで、ロボット制御装置２ＲＣｅは、状態検出信号ＩＳ，ＥＳがあらかじめ指定された数値範囲内の検出値を示す場合にのみ、当該状態検出信号ＩＳ，ＥＳをロボット動作評価装置１Ｅに出力してもよい。
【００９２】
あるいは、ロボット制御装置２ＲＣｅは、状態検出信号ＩＳ，ＥＳがあらかじめ指定された数値範囲内の検出値を示す場合に、当該状態検出信号ＩＳ，ＥＳに対応する代替信号をロボット動作評価装置１Ｅに供給してもよい。その種の代替信号を供給するために、ロボット制御装置２ＲＣｅは入出力ユニット（Ｉ／Ｏユニット）を有することができる。たとえば、外部センサ群２Ｓが圧力センサを含む場合、Ｉ／Ｏユニットは、圧力センサによる圧力検出値があらかじめ指定された閾値に到達しないとき、「０」の値を示す２値信号を代替信号としてロボット動作評価装置１Ｅに出力し、圧力検出値が閾値に到達したときは、「１」の値を示す２値信号を代替信号としてロボット動作評価装置１Ｅに出力することができる。また、外部センサ群２Ｓが測距センサを含む場合、Ｉ／Ｏユニットは、測距値があらかじめ指定された条件（たとえば、特定の数値範囲内にあること）を満たしたときは、「１」の値を示す２値信号（オン信号）を代替信号としてロボット動作評価装置１Ｅに出力し、測距値が当該条件を満たさないときは、「０」の値を示す２値信号（オフ信号）を代替信号としてロボット動作評価装置１Ｅに出力することができる。
【００９３】
図２２に示されるように、本実施の形態のロボット動作評価装置１Ｅは、データベース１０Ａを用いて評価部位の動作状態の危険度を評価する危険度評価部１１Ｅと、ロボット２Ｅから状態検出信号ＩＳ，ＥＳを受信するセンサインタフェース部（センサＩ／Ｆ部）１８と、動作修正部１５で生成された修正動作プログラムＭＰＤをロボット２Ｅに送信する出力インタフェース部（出力Ｉ／Ｆ部）１９とを備えている。ロボット動作評価装置１Ｅの構成は、実施の形態５の危険度評価部１１Ｄに代えて図２２の危険度評価部１１Ｅを有する点と、センサＩ／Ｆ部１８及び出力Ｉ／Ｆ部１９を有する点とを除いて、実施の形態５のロボット動作評価装置１Ｄの構成と同じである。
【００９４】
センサＩ／Ｆ部１８は、ロボット２Ｅから状態検出信号ＩＳ，ＥＳを受信すると、これら状態検出信号ＩＳ，ＥＳを示す受信信号ＳＳを危険度評価部１１Ｅに出力する。上記のとおり、ロボット制御装置２ＲＣｅが状態検出信号ＩＳ，ＥＳに対応する代替信号をセンサＩ／Ｆ部１８に供給する場合、センサＩ／Ｆ部１８は、当該代替信号を示す受信信号ＳＳを危険度評価部１１Ｅに出力すればよい。一方、ロボット制御装置２ＲＣｅは、ロボット動作評価装置１Ｅの出力Ｉ／Ｆ部１９からフィードバックされた修正動作プログラムＭＰＤを受信すると、内部メモリＭｅ内の動作プログラムに代えて修正動作プログラムＭＰＤを使用し、この修正プログラムＭＰＤに記述される動作命令に従って制御信号群ＣＴＬを生成する。
【００９５】
図２３は、実施の形態６の危険度評価部１１Ｅの概略構成を示すブロック図である。本実施の形態の危険度評価部１１Ｅは、上記実施の形態５の危険度評価部１１Ｄと同様に、動作抽出部２０、動作選択部２１、評価部位選択部２１Ｄ、動作状態算出部２２及び形状特徴量算出部２３を備えている。本実施の形態の危険度評価部１１Ｅは、入力された受信信号ＳＳを解析してその解析結果を評価値算出部２４Ｅに出力するデータ解析部２５と、当該解析結果及び形状特徴量算出部２３で算出された形状特徴量に基づいて評価部位の危険度を表す２種類の評価値（第１の評価値及び第２の評価値）を算出する評価値算出部２４Ｅとを備えている。
【００９６】
以下、図２４を参照しつつ、ロボット動作評価装置１Ｅの動作について説明する。図２４は、実施の形態６に係るロボット動作評価処理の手順の一例を概略的に示すフローチャートである。
【００９７】
図２４を参照すると、上記実施の形態５に係るロボット動作評価処理の手順（図２１）と同様に、ステップＳＴ１０〜ＳＴ１５，ＳＴ２３Ｄ，ＳＴ２４Ｄ，ＳＴ２５，ＳＴ２６が実行される。ステップＳＴ２６では、評価値算出部２４は、上述したとおり、ステップＳＴ２５で算出された形状特徴量に基づき、または当該形状特徴量及び評価部位の動作速度の双方に基づき、当該評価部位の動作方向に対する当該評価部位の動作状態の危険度を表す評価値を、第１の評価値として算出する。
【００９８】
ステップＳＴ２６Ａでは、データ解析部２５は、入力された受信信号ＳＳを解析してその解析結果を評価値算出部２４Ｅに出力する（ステップＳＴ２６Ａ）。具体的には、外部センサ群２Ｓが撮像デバイス及び測距センサを含む場合、データ解析部２５は、撮像データ及び測距値を解析することにより、ロボット本体２Ｒの周辺領域に存在する人間などの物体の各部位（たとえば、人間の頭部、前腕部、手または脚部などの身体部位）を認識し、当該物体の各部位の現在位置及び当該物体の各部位の速度を算出することができる。更に、データ解析部２５は、当該物体の各部位の将来の位置及び速度を予測したり、その予測位置に当該物体の各部位が存在する確率を算出したりすることもできる。あるいは、外部センサ群２Ｓが、ロボット本体２Ｒの周辺領域の温度分布を測定可能な温度センサを含む場合、データ解析部２５は、当該温度分布を示す測温データを解析して、当該周辺領域のうち人間などの物体にとって危険な空間領域を検出することもできる。
【００９９】
次に、評価値算出部２４Ｅは、データ解析部２５から得た解析結果に基づき、当該評価部位の動作方向に対する当該評価部位の動作状態の危険度を表す第２の評価値を算出する（ステップＳＴ２６Ｂ）。たとえば、評価値算出部２４Ｅは、当該解析結果に基づき、当該評価部位が、ロボット本体２Ｒの周辺領域に存在する人間などの物体と将来衝突する確率Ｐｃ及びその衝突時の物理的衝撃の大きさＦｃを算出し、その算出結果に基づいて第２の評価値を算出することができる。たとえば、第２の評価値は、確率Ｐｃと物理的衝撃の大きさＦｃとの積（＝Ｐｃ×Ｆｃ）として算出可能である。
【０１００】
ここで、データ解析部２５が、ロボット本体２Ｒに接近する物体が人間であることを識別していれば、評価値算出部２４Ｅは、ロボット動作状態に応じて当該人間の身体部位のうちのどの部位がロボット本体２Ｒと衝突する可能性があるか否かを判別し、その判別結果に基づいて衝突時の物理的衝撃の大きさＦｃを評価すればよい。評価値算出部２４Ｅは、ロボット本体２Ｒと衝突する可能性のある身体部位が当該人間の頭部であれば、物理的衝撃の大きさＦｃを比較的大きな値とし、ロボット本体２Ｒと衝突する可能性のある身体部位が当該人間の前腕部であれば、物理的衝撃の大きさＦｃを比較的小さな値とすることができる。物理的衝撃の大きさＦｃの具体的な値としては、種々の方法によってあらかじめ用意された値（たとえば、力積値）が使用されればよい。たとえば、過去の事故事例に基づいて経験的に決定された値が大きさＦｃの具体的な値として使用されればよい。
【０１０１】
また、評価値算出部２４Ｅは、すべてのケースで同一の計算式を用いて第２の評価値を算出しなくてもよい。たとえば、評価値算出部２４Ｅは、衝突時の物理的衝撃の大きさＦｃが一定の値以上であるか否かを判定し、大きさＦｃが一定の値以上であると判定した場合には、確率Ｐｃを１００％としてもよい。あるいは、データ解析部２５によって認識された物体が、評価部位と接触することが予定されている物体（たとえば、ロボットハンドにより把持されることが予定されている作業対象物）である場合、評価値算出部２４Ｅは、危険度を表す第２の評価値を零とすればよい。
【０１０２】
上記ステップＳＴ２６，ＳＴ２６Ａ，ＳＴ２６Ｂの後、評価値算出部２４Ｅは、その評価値を示す評価データＯＴを出力Ｉ／Ｆ部１２と危険動作検出部１４とに出力する（ステップＳＴ２７Ａ）。危険動作検出部１４は、当該評価データＯＴで示される第１の評価値または第２の評価値に基づいて危険度が高いか否かを判定する（ステップＳＴ２８Ａ）。たとえば、第１の評価値のみがあらかじめ用意された第１の閾値を超えた場合、第２の評価値のみがあらかじめ用意された第２の閾値を超えた場合、あるいは、第１の評価値が第１の閾値を超え、且つ第２の評価値が第２の閾値を超えた場合に、危険動作検出部１４は、危険度が高いと判定することができる。
【０１０３】
危険動作検出部１４は、危険度が高いと判定した場合（ステップＳＴ２８ＡのＹＥＳ）、ステップＳＴ２９Ａに処理を移行させる。この場合、動作修正部１５は、その危険度が高いと判定された危険動作状態を修正することで、修正動作プログラムＭＰＤを生成し（ステップＳＴ２９）、ステップＳＴ３１に処理を移行させる。たとえば、ロボット本体２Ｒの評価部位が人間の身体部位と接触する可能性が高いために危険度が高いとの判定がなされた場合、危険動作検出部１４は、動作プラグラムＰＤにおける当該評価部位の動作速度及び当該評価部位の移動予定位置（予定軌道）のうちの少なくとも一方を変更したり、ロボット本体２Ｒの動作を停止させる動作命令を組み入れたりすることで修正動作プログラムＭＰＤを生成することができる。修正動作プログラムＭＰＤは、出力Ｉ／Ｆ部１２及び出力Ｉ／Ｆ部１９に出力される。一方、危険度が高くないと判定した場合（ステップＳＴ２８ＡのＮＯ）、危険動作検出部１４は、ステップＳＴ３１に処理を移行させる。
【０１０４】
その後、評価を終了しないとき（ステップＳＴ３１のＮＯ）、危険度評価部１１Ｅは、ステップＳＴ１０を実行する。一方、評価を終了するとの判定がなされたときは（ステップＳＴ３１のＹＥＳ）、この判定に応じて、マップ生成部１６は、評価データＯＴに基づき、評価値を視覚的に表す画像情報を危険度マップとして生成する（ステップＳＴ４１）。この危険度マップは、危険度マップ格納部１７に格納される。出力Ｉ／Ｆ部１２は、上述したとおり、危険度マップ格納部１７から危険度マップを読み出し、シミュレータ上のロボット本体２Ｒを表す画像情報に当該危険度マップを重畳させて表示部３に表示させる（ステップＳＴ４２）。以上で、ロボット動作評価処理は終了する。
【０１０５】
以上に説明したように実施の形態６のロボット動作評価装置１Ｅにおいては、データ解析部２５は、状態検出信号ＩＳ，ＥＳまたは当該状態検出信号ＩＳ，ＥＳに対応する代替信号を解析する。評価値算出部２４Ｅは、その解析結果に基づいて、評価部位の動作状態の危険度を表す第２の評価値を算出する。危険動作検出部１４は、第２の評価値に基づいて、当該評価部位の動作状態について危険度が高いか否かを判定することができる。危険度が高いとの判定がなされた場合には、動作修正部１５は、動作プログラムＰＤに定められている当該評価部位の動作状態を変更し、当該変更された動作状態を定める修正動作プログラムＭＰＤを生成する。ロボット制御装置２ＲＣｅは、内部メモリＭｅ内の動作プログラムに代えて、フィードバックされた修正動作プログラムＭＰＤを使用し、この修正プログラムＭＰＤに記述される動作命令に従って制御信号群ＣＴＬを生成することができる。したがって、本実施の形態のロボットシステムは、状態検出信号ＩＳ，ＥＳに応じて危険度が低減するようにロボット本体２Ｒの実際の動作状態をリアルタイムに変更することができる。このため、安全性の高いロボットシステムを構築することができる。
【０１０６】
以上、図面を参照して本発明に係る種々の実施の形態について述べたが、これら実施の形態は本発明の例示であり、これら実施の形態以外の様々な形態を採用することもできる。たとえば、実施の形態２〜６のロボット動作評価装置１Ａ〜１Ｅのハードウェア構成は、上記実施の形態１のロボット動作評価装置１と同様に、たとえば、ＣＰＵ内蔵のコンピュータ構成を有する情報処理装置により実現可能である。あるいは、ロボット動作評価装置１Ａ〜１Ｅのハードウェア構成は、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどのＬＳＩを有する情報処理装置により実現されてもよい。また、実施の形態２〜６のロボット動作評価装置１Ａ〜１Ｅの各々のハードウェア構成は、上記実施の形態１のロボット動作評価装置１と同様に、図８に示した情報処理装置１Ｈまたは図９に示した情報処理装置１Ｊのいずれか一方で実現可能である。
【０１０７】
なお、本発明の範囲内において、実施の形態１〜６の自由な組み合わせ、各実施の形態の任意の構成要素の変形、または各実施の形態の任意の構成要素の省略が可能である。
【産業上の利用可能性】
【０１０８】
本発明に係るロボット動作評価装置は、単関節構造または多関節構造を有するロボットのような、単数または複数の可動部位を有するロボットに使用されることに適しているので、製造業及び建設業などの産業用分野で使用される産業用ロボットのみならず、公共施設及び家庭で使用される、サービスロボットなどの非産業用ロボットに適用可能である。このようなロボット動作評価装置を含むロボットシステムも、産業用分野のみならず、非産業用分野で使用され得る。
【符号の説明】
【０１０９】
１，１Ａ，１Ｂ，１Ｃ，１Ｄ，１Ｅ  ロボット動作評価装置、２，２Ｅ  ロボット、２Ｒ  ロボット本体、２Ｓ  外部センサ群、２ＲＣ，２ＲＣｅ  ロボット制御装置、２Ｈ，２Ｈａ  ロボットハンド、２ａ，２ｂ  爪部、２ｍ  本体部、２ｎ  基端部、２ｃ  吸着パッド部、２Ｐ  プログラム格納部、３  表示部、４  操作入力部、１０，１０Ａ  データベース、１１，１１Ａ，１１Ｄ，１１Ｅ  危険度評価部、１２  出力インタフェース部（出力Ｉ／Ｆ部）、１３  入力インタフェース部（入力Ｉ／Ｆ部）、１４  危険動作検出部、１５  動作修正部、１６  マップ生成部、１７  危険度マップ格納部、１８  センサインタフェース部（センサＩ／Ｆ部）、１９  出力インタフェース部（出力Ｉ／Ｆ部）、２０  動作抽出部、２１  動作選択部、２１Ｄ  評価部位選択部、２２  動作状態算出部、２３  形状特徴量算出部、２４，２４Ｅ  評価値算出部、２５  データ解析部、３０  ベース部、３１〜３４  第１〜第４アーム部（ロボットアーム）、３４ａ  フランジ部、Φ１〜Φ６  回転軸。
【図１】
2017199619.tif 000010
【図２】
2017199619.tif 000011
【図３】
2017199619.tif 000012
【図４】
2017199619.tif 000013
【図５】
2017199619.tif 000014
【図６】
2017199619.tif 000015
【図７】
2017199619.tif 000016
【図８】
2017199619.tif 000017
【図９】
2017199619.tif 000018
【図１０】
2017199619.tif 000019
【図１１】
2017199619.tif 000020
【図１２】
2017199619.tif 000021
【図１３】
2017199619.tif 000022
【図１４】
2017199619.tif 000023
【図１５】
2017199619.tif 000024
【図１６】
2017199619.tif 000025
【図１７】
2017199619.tif 000026
【図１８】
2017199619.tif 000027
【図１９】
2017199619.tif 000028
【図２０】
2017199619.tif 000029
【図２１】
2017199619.tif 000030
【図２２】
2017199619.tif 000031
【図２３】
2017199619.tif 000032
【図２４】
2017199619.tif 000033
【国際調査報告】
2017199619.tif 000034
2017199619.tif 000035
2017199619.tif 000036
2017199619.tif 000037