(57)【特許請求の範囲】
【請求項１】
産業用ロボットのロボットアームに設けたハンドが把持部品を組み立てる工程において、作業ＩＤで関連付けられた複数の嵌合・挿入作業を予め反復して実施し、前記作業ＩＤ毎に記憶される作業良否及び失敗原因を整理することによって、前記作業ＩＤに関連付けられた実作業の作業結果の判定および失敗原因の推定を行うロボットシステムであって、
前記ハンドに作用する力を検出する力センサから出力される力センサ信号、および／または前記ロボットアームに設けた各関節軸駆動モータから出力される位置検出信号に基づいて、予め定義された１つ以上の特徴量パラメータに相当する物理量を各特徴量として抽出する特徴量抽出手段と、
前記作業ＩＤ毎に、前記抽出された各特徴量、および作業成功又は作業失敗のいずれかを示す作業良否並びに作業失敗の原因を含む第１の履歴データを記録する履歴データ記録手段と、
特徴量存在領域記録手段であって、前記履歴データ記録手段に格納され、前記作業ＩＤ毎に関連付けられた前記第１履歴データに基づいて、前記１つ以上の特徴量パラメータの中から最適な特徴量パラメータのセットを選択して、該選択された各前記特徴量パラメータを座標軸に採用した座標系、および該選択された最適な特徴量パラメータの前記特徴量の存在範囲に基づく前記座標系における特徴量存在領域を決定し、記録する特徴量存在領域記録手段と、を備えており、
各前記特徴量存在領域は、前記第１履歴データに含まれる作業成功を示す前記作業良否又は前記作業失敗の原因に関連付けられており、前記最適な特徴量パラメータのセットは、作業成功を示す前記作業良否に関連付けられた特徴量存在領域と、前記作業失敗の原因に関連付けられた各特徴量存在領域との重複領域に基づいて選択されることを特徴とし、
これにより、作業良否判定手段において、前記特徴量存在領域記録手段に記録された前記特徴量存在領域に基づいて、前記作業ＩＤで関連付けられた実作業の作業結果の判定および失敗原因の推定を行うことを可能とする、ロボットシステム。
【請求項２】
請求項１に記載のロボットシステムにおいて、
前記特徴量パラメータの特徴量の存在範囲に基づく前記特徴量存在領域は、前記履歴記録データ手段に記録された前記第１履歴データの特徴量の平均値と分散に基づいて、予め指定された存在確率となるように算出されることを特徴とする、ロボットシステム。
【請求項３】
請求項１又は２に記載のロボットシステムにおいて、
前記作業良否判定手段は、前記作業ＩＤで関連付けられた実作業について、前記特徴量抽出手段によって抽出される特徴量のうち前記選択された最適な特徴量パラメータについての前記特徴量の前記座標系におけるプロットが、
作業成功を示す前記作業良否に関連付けられた前記特徴量存在領域内にのみ含まれる場合には作業成功と判定し、
前記作業失敗の原因に関連付けられた前記特徴量存在領域内の１つ以上にのみ含まれる場合には、作業失敗と判定するとともに、前記特徴量存在領域が関連付けられている失敗原因を抽出し、または、
前記作業成功を示す前記作業良否に関連付けられた前記特徴量存在領域および前記作業失敗の原因に関連付けられた前記各特徴量存在領域の１つ以上に含まれる、若しくは前記作業成功を示す前記作業良否に関連付けられた前記特徴量存在領域および前記作業失敗の原因に関連付けられた前記各特徴量存在領域のいずれにも含まれない場合には判定不能と判定し、
前記ロボットシステムが備える作業良否・原因表示手段によって表示される、ロボットシステム。
【請求項４】
請求項３に記載のロボットシステムにおいて、
前記作業良否判定手段は、さらに、前記プロットが、前記作業失敗の原因に関連付けられた前記特徴量存在領域内の２つ以上にのみ含まれる場合には、前記プロットを含んでいる前記特徴量存在領域が関連付けられている２つ以上の失敗原因のすべてを抽出して、前記作業良否・原因表示手段によって前記２つ以上の失敗原因が表示される、ロボットシステム。
【請求項５】
請求項３又は４に記載のロボットシステムにおいて、
前記作業良否判定手段が作業成功と判定した場合であって、作業成功を示す前記作業良否に関連付けられた前記特徴量存在領域と、前記作業失敗の原因に関連付けられた各特徴量存在領域とに重複領域がある場合には、該重複領域の大きさと作業成功を示す前記作業良否に関連付けられた前記特徴量存在領域の大きさとに基づいて、作業成功時の判定の確からしさを算出し、
前記作業良否・原因表示手段によって、さらに前記判定の確からしさが表示されるように構成される、ロボットシステム。
【請求項６】
請求項１から５のいずれか一項に記載のロボットシステムであって、
複数の前記特徴量抽出手段によって抽出される前記特徴量についての前記１つ以上の特徴量パラメータは、前記位置検出信号から算出される把持部品の挿入量と、前記力センサ信号における時間微分のピーク値と、前記挿入量と前記力センサ信号から算出される挿入時仕事量と、前記ロボットアームの各関節軸駆動モータの位置検出信号から算出されるハンドの姿勢角の変化量とのいずれか１つ以上を含む、ロボットシステム。
【請求項７】
請求項１から６のいずれか一項に記載のロボットシステムであって、さらに、
履歴記録データ手段は、前記作業ＩＤで関連付けられた実作業について、前記特徴量抽出手段によって抽出される特徴量と前記作業良否判定手段によって前記判定された作業良否と前記推定された失敗原因とを含む第２の履歴データを追加的に記録するように構成され、
特徴量存在領域記録手段は、前記履歴データ記録手段に格納された前記第１履歴データおよび前記第２履歴データに基づいて、各前記特徴量存在領域を更新することができる、ロボットシステム。
【請求項８】
請求項１に記載のロボットシステムであって、さらに、
前記最適な特徴量パラメータのセットは、前記１つ以上の特徴量パラメータのうち所定数の特徴量パラメータのセットの中から、作業成功を示す前記作業良否に関連付けられた特徴量存在領域と前記作業失敗の原因に関連付けられた各特徴量存在領域との重複領域が存在しない、または重複領域が最も小さくなる特徴量パラメータのセットが選択される、ロボットシステム。
【請求項９】
請求項８に記載のロボットシステムであって、さらに、
前記重複領域が存在しない特徴量パラメータのセットが複数ある場合には、作業成功を示す前記作業良否に関連付けられた特徴量存在領域と前記作業失敗の原因に関連付けられた各特徴量存在領域との中心間の距離に基づいて、前記最適な特徴量パラメータのセットが選択される、ロボットシステム。
【請求項１０】
請求項８に記載のロボットシステムであって、さらに、
前記重複領域が存在しない特徴量パラメータのセットがない場合には、前記所定数をインクリメントし、該インクリメントした数の特徴量パラメータのセットの中から、作業成功を示す前記作業良否に関連付けられた特徴量存在領域と前記作業失敗の原因に関連付けられた各特徴量存在領域との重複領域が存在しない、または重複領域が最も小さくなる特徴量パラメータのセットが選択される、ロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばロボットアームとハンドによる把持ワークの嵌合・挿入作業（組み立て作業）において、センサ情報を用いて作業良否、すなわち作業成功／作業失敗を高精度で判定し、かつ作業失敗と判定された場合の作業失敗原因を推定可能なロボットシステムに関する。
【背景技術】
【０００２】
まず、一般的な産業用ロボットについて説明し、次いでこのような産業用ロボットを利用して行われる嵌合・挿入作業における力センサ技術を使用したインピーダンス制御のシステム構成とインピーダンス制御による嵌合・挿入作業の実現方法を説明する。
【０００３】
ここでインピーダンス制御とは、ロボットの手先に外から力を加えた場合に生じる機械的なインピーダンス（慣性、減衰係数、剛性）を、目的とする作業に都合の良い値に設定するための位置と力の制御手法のことである。
【０００４】
当該インピーダンス制御には、ロボットの手先にバネやダンパなどの機械要素を取り付けて手先のインピーダンスを変更する受動インピーダンス法と、手先の位置、速度、力などの測定値を用いたフィードバック制御で手先のインピーダンスを変更する能動インピーダンス法がある。
【０００５】
図１は、従来技術による産業用ロボットの構成図である。図１において、ロボット１０１は、複数の関節軸とリンクを有するマニピュレータである。ここで、「マニピュレータ」(manipulator)とは、互いに連結された分節で構成し、対象物（部品、工具など）をつかむ（掴む）、又は動かすことを目的とした機械を意味する。マニピュレータの各関節軸には、エンコーダつきの駆動モータが内蔵されており、各関節を独立に駆動することができる。コントローラ１０２はロボット１０１の制御部であり、各関節軸駆動モータのエンコーダ信号をもとにフィードバック制御（位置制御系）を構成し、ロボット１０１の運動を制御するための装置である。可搬式教示操作盤１０３は、教示者がロボットを手動（JOG）操作したり、動作プログラムを作成・編集したりするためのインターフェイスである。可搬式教示操作盤１０３は主に操作ボタン群１０３ａと表示画面１０３ｂで構成されている。エンドエフェクタ１０４はロボット１０１の手首部に設けられる。図１の場合は部品を把持するためのハンド（グリッパ）を取り付けているが、これに限定されず、当該エンドエフェクタにはアプリケーションに応じて様々なツールを取り付けることができる。
【０００６】
図２はインピーダンス制御された従来技術における産業用ロボットの構成図を示している。６軸力センサ１０５はロボット１０１の手首に取り付けられており、ＸＹＺ各軸方向の力と各軸回りのモーメントを計測できる。インピーダンス制御部１０６はコントローラ１０２内部に構成され、力センサ１０５と各軸エンコーダからの信号の出力に基づいてフィードバック制御系を構成している。インピーダンス制御部１０６からは各駆動モータのトルク指令または電流指令が出力され、そのトルク（または電流）指令値をもとにアクチュエータ駆動アンプ部１０７が各駆動モータに電力を供給する。動作プログラム記憶部１０８は可搬式教示操作盤１０３で作成（教示）された動作プログラムをコントローラ内部で記憶する。動作プログラム実行部１０９は動作プログラム記憶部１０８に記憶された動作プログラムを解釈・実行し、インピーダンス制御部１０６に動作指令を与える。ワーク１１０ａはエンドエフェクタ１０４によって把持される嵌合部品であり、対象ワーク１１０ｂは、嵌合・挿入される被嵌合部品である。ワーク固定治具１１１は、対象ワーク１１０ｂを固定する。圧縮空気によってシリンダを駆動してワークを固定するのが一般的である。
【０００７】
このような制御システムで、ロボット１０１をインピーダンス制御状態にしてそのパラメータを適切に調整することによって、位置姿勢誤差を許容して部品同士を嵌合することが可能になる。
【０００８】
図３に従来技術におけるインピーダンス制御を実施するための制御ブロック図を示す。図３において、位置制御系１０６ａは、動作プログラム実行部から入力される各関節軸の位置指令とエンコーダから入力される現在位置（フィードバック）とに基づいて、各駆動モータのトルク（または電流指令）をアクチェータ駆動アンプ部１０７に出力する。Frefは力モーメント指令（力モーメント目標値）、Ffbは力モーメント・フィードバック値である。θrefは動作プログラム実行部１０９から送られてくる位置指令（関節座標系）であり、また、δθはインピーダンス制御演算部１０６ｂが計算する位置修正量である。インピーダンス制御演算部１０６ｂでは、まず、FrefとFfbに基づいて、次式にしたがって直交座標系における位置修正量δPが計算される（１０６ｃ）。
【０００９】
δP ＝（Ｍｓ2＋Ｄｓ＋Ｋ）-1（Fref−Ffb）      ・・・（１）
ここで、Ｍ，Ｄ，Ｋはそれぞれ、慣性マトリクス、粘性係数マトリクス、剛性マトリクス（バネ定数）である。通常、これらは対角行列として、各軸方向独立なインピーダンス特性を設定する。また、ｓはラプラス演算子であり、時間に関する一階微分に相当する。
直交座標系における位置修正量δPは、ヤコビ行列Ｊ(θ)を用いて次式により関節座標系の位置修正量δθに分解される（１０６ｄ）。
【００１０】
δθ ＝ Ｊ(θ)-1 δP                          ・・・（２）
このδθをθrefに足し合わせた位置指令θref’を位置制御系１０６ａに与えることによって、外力やモーメントに対して、Ｍ，Ｄ，Ｋで指定された特性を保ちながらロボットが動作する。例えば、Ｋにより外力に対してロボットがバネのように動作し、その際、ＭおよびＤを小さくすることによって軽くスムーズに動作する。
【００１１】
次に、従来技術におけるインピーダンス制御による挿入作業について説明する。
インピーダンス制御によって挿入作業するには、まず、図４（ａ）に示すように、ロボット１０１のハンド１０４で嵌合部品１１０ａを把持し、被嵌合部品１１０ｂの穴の軸上に位置合せする。ここで、図４（ａ）のように、嵌合部品１１０ａの挿入方向をＺ軸方向とし、ＸＹ平面が当該Ｚ軸に対して垂直となるように、Ｘ軸を図示のとおり定義し、Ｘ軸およびＺ軸に垂直になるようにＹ軸を定義する。この状態でロボット１０１を位置制御状態からインピーダンス制御状態に切替え、動作プログラム実行部１０９から適切な力指令をインピーダンス制御部１０６に与えることによって、図４（ｂ）に示すように、ＸＹ方向の位置誤差やＸ軸およびＹ軸回りの回転誤差を吸収しながら、嵌合部品１１０ａを被嵌合部品１１０ｂの穴底まで挿入することができる。このとき、一般的には、ワーク同士が接触してから穴底に到達するまでのハンド１０４の移動量（挿入量）が穴の深さＬに一致するかどうかで、作業良否すなわち、作業成功（挿入量が十分）／作業失敗（挿入量が不十分）を判定することができる。ところが、図４（ｃ）に示すように、嵌合部品１１０ａが細い円筒状の端子コネクタで、被嵌合部品１１０ｂがピン状の端子コネクタの場合、図４（ｄ）および（ｅ）に示すように、挿入量だけでは作業良否を判定できない状況が発生し得る。すなわち、図４（ｄ）および（ｅ）においては、ハンド１０４の移動量は共にＬで同一あるものの、図４（ｄ）の場合は作業成功、図４（ｅ）の場合は作業失敗と判定されるべきである。
【００１２】
作業良否を判定する技術として、特許文献１および特許文献２が開示されている。特許文献１では、作業実行中にセンサからサンプリングしたデータと、予め作成しておいた作業成功時のセンサデータ（許容範囲）を記録した状態監視テーブルとを照合することによって、作業実行状態の正常・異常を判定している。特許文献２では、センサからサンプリングしたデータ（作業状態）に基づいてロボット動作を補正するためのテーブル（動作補正用テーブル）データを自動作成している。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開昭６３−８９２８３号公報
【特許文献２】特開平８−１７４４５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
特許文献１は、状態監視テーブルとして、動作プログラムの各ステップ（例えばMOVEコマンド）実行時の力覚センサおよび触覚センサの出力値の範囲（最小値と最大値）を保持しているだけなので、上述した嵌合・挿入作業のように力覚センサ出力値の範囲が広く（非接触状態から接触状態に変化するため）、ロボットや部品の位置誤差によってセンサ出力値のパターンが上記範囲内で変化する場合には適用できないという問題がある。
【００１５】
特許文献２は、動作補正用テーブルとして、ロボットの位置（軸パラメータ）と力覚センサ値を保持しているので、ロボットの位置に応じて力覚センサ絶対値が変化する原因による作業良否を判定できるようになるが、力覚センサ絶対値には影響を与えない原因による作業良否は判定できないという問題がある。また、教示段階で動作補正用テーブルを自動作成する際、ロボットを手動操作して人間の判断で干渉点、干渉回避点など作業状態（良否）を人為的に作り出しており、実際の生産ラインでロボットが稼動したときの状態を反映したものにはなっていない。そのため、正確に作業良否を判定できないという問題もある。
【課題を解決するための手段】
【００１６】
上記問題を解決するため、本願発明は、以下の発明のような構成上の特徴を有するものである。
なお、本願出願時の明細書の記載を基礎として、特許請求の範囲の記載が補正され得ることは勿論であるが、その際に、以下の各「発明」の内容を訂正することは予定しない（以下の各「発明」は、本願明細書における開示の要点としての意味を持つ）。
【００１７】
請求項１に係る発明は、産業用ロボットのロボットアームに設けたハンドが把持部品を組み立てる工程において、作業ＩＤで関連付けられた複数の嵌合・挿入作業を予め反復して実施し、作業ＩＤ毎に記憶される作業良否及び失敗原因を整理することによって、作業ＩＤに関連付けられた実作業の作業結果の判定および失敗原因の推定を行うシステムであって、ハンドに作用する力を検出する力センサから出力される力センサ信号、および／またはロボットアームに設けた各関節軸駆動モータから出力される位置検出信号に基づいて、予め定義された１つ以上の特徴量パラメータに相当する物理量を各特徴量として抽出する特徴量抽出手段（１１３）と、作業ＩＤ毎に、抽出された各特徴量、および作業成功又は作業失敗のいずれかを示す作業良否並びに作業失敗の原因を含む第１の履歴データを記録する履歴データ記録手段（１１４；１１６）と、特徴量存在領域記録手段（１２３）であって、履歴データ記録手段（１１４；１１６）に格納され、作業ＩＤ毎に関連付けられた第１履歴データに基づいて、１つ以上の特徴量パラメータの中から最適な特徴量パラメータのセットを選択して、該選択された各特徴量パラメータを座標軸に採用した座標系、および該選択された最適な特徴量パラメータの特徴量の存在範囲に基づく座標系における特徴量存在領域を決定し、記録する特徴量存在領域記録手段（１２３）と、を備えており、各特徴量存在領域は、第１履歴データに含まれる作業成功を示す作業良否又は作業失敗の原因に関連付けられており、最適な特徴量パラメータのセットは、作業成功を示す作業良否に関連付けられた特徴量存在領域と、作業失敗の原因に関連付けられた各特徴量存在領域との重複領域に基づいて選択されることを特徴とし、これにより、作業良否判定手段（１１８）において、特徴量存在領域記録手段（１２３）に記録された特徴量存在領域に基づいて、作業ＩＤで関連付けられた実作業の作業結果の判定および失敗原因の推定を行うことを可能とする。
【００１８】
請求項２に係る発明においては、さらに、特徴量パラメータの特徴量の存在範囲に基づく特徴量存在領域は、履歴記録データ手段（１１４；１１６）に記録された第１履歴データの特徴量の平均値と分散に基づいて、予め指定された存在確率となるように算出されることを特徴とする。
【００１９】
請求項３に係る発明においては、さらに、作業良否判定手段（１１８）は、作業ＩＤで関連付けられた実作業について、特徴量抽出手段（１１３）によって抽出される特徴量のうち選択された最適な特徴量パラメータについての特徴量の座標系におけるプロットが、作業成功を示す作業良否に関連付けられた特徴量存在領域内にのみ含まれる場合には作業成功と判定し、作業失敗の原因に関連付けられた特徴量存在領域内の１つ以上にのみ含まれる場合には、作業失敗と判定するとともに、特徴量存在領域が関連付けられている失敗原因を抽出し、または、作業成功を示す作業良否に関連付けられた特徴量存在領域および作業失敗の原因に関連付けられた各特徴量存在領域の１つ以上に含まれる、若しくは作業成功を示す作業良否に関連付けられた特徴量存在領域および作業失敗の原因に関連付けられた各特徴量存在領域のいずれにも含まれない場合には判定不能と判定し、システムが備える作業良否・原因表示手段（１１９）によって表示される。
【００２０】
請求項４に係る発明においては、さらに、作業良否判定手段（１１８）は、プロットが、作業失敗の原因に関連付けられた特徴量存在領域内の２つ以上にのみ含まれる場合には、プロットを含んでいる特徴量存在領域が関連付けられている２つ以上の失敗原因のすべてを抽出して、作業良否・原因表示手段（１１９）によって２つ以上の失敗原因が表示される。
【００２１】
請求項５に係る発明においては、作業良否判定手段（１１８）が作業成功と判定した場合であって、作業成功を示す作業良否に関連付けられた特徴量存在領域と、作業失敗の原因に関連付けられた各特徴量存在領域とに重複領域がある場合には、該重複領域の大きさと作業成功を示す作業良否に関連付けられた特徴量存在領域の大きさとに基づいて、作業成功時の判定の確からしさを算出し、作業良否・原因表示手段（１１９）によって、さらに判定の確からしさが表示されるように構成される。
【００２２】
請求項６に係る発明においては、さらに、複数の特徴量抽出手段（１１３）によって抽出される特徴量についての１つ以上の特徴量パラメータは、位置検出信号から算出される把持部品の挿入量と、力センサ信号における時間微分のピーク値と、挿入量と力センサ信号から算出される挿入時仕事量と、ロボットアームの各関節軸駆動モータの位置検出信号から算出されるハンドの姿勢角の変化量とのいずれか１つ以上を含む。
【００２３】
請求項７に係る発明においては、さらに、履歴記録データ手段（１１４；１１６）は、作業ＩＤで関連付けられた実作業について、特徴量抽出手段（１１３）によって抽出される特徴量と作業良否判定手段（１１８）によって判定された作業良否と推定された失敗原因とを含む第２の履歴データを追加的に記録するように構成され、特徴量存在領域記録手段（１２３）は、履歴データ記録手段（１１４；１１６）に格納された第１履歴データおよび第２履歴データに基づいて、各特徴量存在領域を更新することができる。
【００２４】
請求項８に係る発明においては、さらに、最適な特徴量パラメータのセットは、１つ以上の特徴量パラメータのうち所定数の特徴量パラメータのセットの中から、作業成功を示す作業良否に関連付けられた特徴量存在領域と作業失敗の原因に関連付けられた各特徴量存在領域との重複領域が存在しない、または重複領域が最も小さくなる特徴量パラメータのセットが選択される。
【００２５】
請求項９に係る発明においては、さらに、重複領域が存在しない特徴量パラメータのセットが複数ある場合には、作業成功を示す作業良否に関連付けられた特徴量存在領域と作業失敗の原因に関連付けられた各特徴量存在領域との中心間の距離に基づいて、最適な特徴量パラメータのセットが選択される。
【００２６】
請求項１０に係る発明においては、さらに、重複領域が存在しない特徴量パラメータのセットがない場合には、所定数をインクリメントし、該インクリメントした数の特徴量パラメータのセットの中から、作業成功を示す作業良否に関連付けられた特徴量存在領域と作業失敗の原因に関連付けられた各特徴量存在領域との重複領域が存在しない、または重複領域が最も小さくなる特徴量パラメータのセットが選択される。
【発明の効果】
【００２７】
本発明の実施例は、テスト運転工程において、１つ以上の特徴量パラメータに関する履歴データと、テスト運転時に教示調整員の判断によって得られた作業良否と失敗原因の履歴データとを含む複数のデータをテーブルに格納し、その際さらに、作業成功時の特徴量存在範囲と作業失敗時の特徴量存在範囲とを失敗原因ごとに算出しておく。
【００２８】
これにより、実運転工程において、当該算出された作業成功時の特徴量存在範囲と作業失敗時の特徴量存在範囲とに基づいて、様々な原因に依存する作業良否を正確に判定できるという効果を奏するものである。
【００２９】
また本発明は、作業失敗時には、ロボットを停止させ、挿入不良となった半製品が後工程に流れることを防止することができる。そして、その失敗原因もライン監視員に提示するので、生産ラインを速やかに復旧できるという効果も奏する。
さらに本発明は、特徴量存在範囲の重なり度合いに応じて作業成功時の判定の確からしさを算出して表示するので、判定の信頼性を客観的に把握できるという効果も奏する。
【００３０】
さらに、本発明は、テスト運転時の履歴データから最適な特徴量パラメータを選択することにより、様々な原因に依存する作業良否を正確に判定できるという効果も奏する。
さらに、本発明は、作業実行時に取得する作業良否および失敗原因を含むデータを履歴データとしてフィードバックすることにより、様々な原因に依存する作業良否を正確に判定できるという効果も奏する。
【図面の簡単な説明】
【００３１】
【図１】従来技術における一般的な作業用ロボットの構成図
【図２】従来技術におけるインピーダンス制御された産業用ロボットの構成図
【図３】従来技術におけるインピーダンス制御のブロック図
【図４】従来技術のインピーダンス制御における嵌合・挿入作業の作業良否（成功/失敗）を説明する図
【図５】本発明の実施例の嵌合・挿入作業時の作業良否判定装置の構成図
【図６】本発明の実施例の嵌合・挿入作業時の移動（挿入）量と作用力の時間応答を説明する図
【図７】本発明の実施例の把持部品を組み立てる工程における作業良否の判定および失敗原因の推定を行う全体ステップを説明するフローチャート
【図８】本発明の実施例の特徴量履歴テーブルおよび作業良否・原因履歴テーブルを説明する図
【図９】本発明の実施例の作業失敗状況１とその特徴量の傾向を説明する図
【図１０】本発明の実施例の作業失敗状況２とその特徴量の傾向を説明する図
【図１１】本発明の実施例の作業失敗状況３とその特徴量の傾向を説明する図
【図１２】本発明の実施例の作業失敗状況４とその特徴量の傾向を説明する図
【図１３】本発明の実施例の特徴量の数（種類）と作業良否判定の確からしさの傾向を説明する図
【図１４】本発明の実施例における最適な特徴量パラメータを選択するステップを説明するフローチャート
【図１５】本発明の実施例における作業成功時の特徴量存在範囲と作業失敗時の特徴量存在範囲を説明する図
【発明を実施するための形態】
【００３２】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【００３３】
本実施の形態は、ロボットハンドによる把持ワークの組み立てとして、嵌合・挿入作業時の作業良否（成功/失敗）を判定し、作業失敗時の場合には作業失敗原因を推定することを可能とする作業結果判定を行うロボットシステムである。
【００３４】
図５は、本発明に係わる嵌合・挿入作業時の作業良否判定装置の構成図である。同図において、図１から図３と同一名称には同一符号を付けており、重複説明を省略する。
図５において、作業良否判定装置１１２は、ロボットコントローラ１０２に実装される構成、すなわち特徴量抽出部１１３、特徴量履歴記録部１１４、作業良否・原因履歴記録部１１６、特徴量存在範囲算出部１１７、および作業良否判定部１１８に係る部分と、可搬式教示操作盤１０３に実装される構成、すなわち作業良否・原因入力部１１５および作業良否・原因表示部１１９に係る部分とを備えている。
【００３５】
なお、本実施例においては、上記各構成要素が同一の作業良否判定装置１１２に含まれる構成としているが、これに限定されることはなく、例えば各構成要素がそれぞれ別の装置に含まれ、各装置間でデータを受け渡すように構成することもできる。
【００３６】
作業良否判定装置１１２は、当該装置１１２が備えるプロセッサにより、各構成１１３から１１９に対し、以下に説明する処理を実行させることができる。
特徴量抽出部１１３は、力センサ信号とロボットアームの各関節軸駆動モータの位置検出信号から特徴量パラメータに基づく特徴量を抽出する。
【００３７】
なお、本実施例の作業結果判定システムでは、特徴量パラメータは、１つ以上あり、任意の数のパラメータのセットを予め選択することもできる。具体的な特徴量パラメータとその抽出方法については後述する。
【００３８】
特徴量履歴記録部１１４は、テスト運転時に作業を繰り返し反復して実行したときの特徴量の履歴データを記憶する。作業良否・原因入力部１１５は、テスト運転時に作業を繰り返し実行したときに人間（教示調整員）が判断した作業良否や失敗原因の入力を受ける。可搬式教示操作盤１０３のキー１０３ａや表示画面１０３ｂ（タッチパネル式）を操作して情報を入力することができる。作業良否・原因履歴記録部１１６は、作業良否・原因入力部１１５から入力された作業良否や失敗原因の履歴データを、プログラム実行ステップＩＤおよび作業日時と共に記録する。特徴量存在範囲算出部１１７は、特徴量履歴記録部１１４に記録されている履歴データと作業良否・原因履歴記録部１１６に記録されている履歴データから、作業成功時および作業失敗時の特徴量パラメータに基づく特徴量の存在範囲を算出する。作業良否判定部１１８は、作業実行時に特徴量抽出部１１３から得られる特徴量と特徴量存在範囲算出部１１７で算出され特徴量存在範囲記録部１２２に記録された複数の存在範囲をもとに、特徴量存在領域を決定し、特徴量存在領域記録部１２３に記録して、作業成功または作業失敗とその原因を判断する。作業良否の詳細な判断方法については後述する。作業良否・原因表示部１１９は、作業良否判定部１１８によって判断された作業良否や失敗原因を可搬式教示操作盤１０３の表示画面１０３ｂに表示することができる。当該表示に基づいて、生産ラインの監視員は、作業良否を視覚的に把握することができ、作業失敗時は表示された失敗原因をもとに速やかにラインを復旧できる。
【００３９】
つぎに、上記で説明した作業良否判定装置の動作原理を詳しく説明する。
図６はロボット１０１をインピーダンス制御状態にして、動作プログラム実行部１０９で嵌合・挿入動作を実行したときの挿入方向（Ｚ方向）の作用力Ffbと移動量Pfbの時間応答を示している。時刻Ｔ１で嵌合部品１１０ａと被嵌合部品１１０ｂ同士が接触して嵌合し、時刻Ｔ１以降に挿入が始まり、時刻Ｔ２で嵌合部品１１０ａもしくは被嵌合部品１１０ｂが穴底に接触し、時刻Ｔ３で挿入が完了している。図５の特徴量抽出部１１３では、図６に示した位置（移動量）と力（作用力）の応答から、挿入量Ｌ、作用力の時間微分のピーク値、挿入時の仕事量Ｗ、姿勢角の変化量などの特徴量パラメータに基づく特徴量を抽出する。挿入量Ｌは時刻Ｔ３の移動量Ｚ２から時刻Ｔ１の移動量Ｚ１を引き算することによって算出する。作用力の時間微分のピーク値については、作用力の時間微分を求めその最大値を算出する。挿入時の仕事量Ｗについては、まず、移動量を時間微分して挿入速度を求め次式にもとづいて算出する。
【００４０】
仕事量Ｗ＝∫（挿入速度×作用力）ｄｔ              ・・・（３）
なお、式（３）の積分区間は時刻Ｔ１からＴ３までである。姿勢角の変化量については、挿入完了時（時刻Ｔ３）の把持ワーク（嵌合部品１１０ａ）の姿勢角から、挿入開始時（時刻Ｔ１）の姿勢角を引き算することによって算出する。
【００４１】
なお、本発明の実施例において、特徴量パラメータとして挿入量、力微分ピーク、仕事量、姿勢角を用いて説明しているが、これに限定されない。
次に、図７とともに本発明の実施例の把持部品を組み立てる工程における作業良否の判定および失敗原因の推定を行う全体工程を時系列によるステップ順に説明する。
【００４２】
全体工程は、大きくテスト運転工程（Ｓ７０１からＳ７０３）、実作業工程（Ｓ７０６およびＳ７０７）で構成される。また、テスト運転工程後、実作業工程を開始する際に、特徴量の存在範囲を算出し（Ｓ７０４）、特徴量存在領域の定義を行うことが必要であるが（Ｓ７０５）、この工程は後述するように実作業工程の中で動的に行うことも可能である。
【００４３】
テスト運転工程においては、まず、特徴量抽出部１１３により各検出信号に基づいて予め定義された１つ以上の特徴量パラメータに相当する物理量を各特徴量として抽出する（Ｓ７０１）。当該抽出された各特徴量を特徴量履歴記録部１１４に記録し（Ｓ７０２）、また、作業成功又は作業失敗のいずれかを示す作業良否並びに作業失敗の原因を作業良否・原因入力部から入力されて作業良否・原因履歴記録部１１６に記録する（Ｓ７０３）。テスト運転工程中は、これらのステップ（Ｓ７０１からＳ７０３）が反復して実行される。
【００４４】
テスト運転工程終了後は、テスト運転工程で記録された履歴データに基づいて、特徴量存在範囲算出部１１７により、各特徴量の存在範囲を算出して特徴量存在範囲記録部１２２に記録し（Ｓ７０４）、そして、特徴量パラメータのセットに対する特徴量存在領域を定義・決定して、特徴量存在領域記録部１２３に記録する（Ｓ７０５）。
【００４５】
その後、実作業工程において、作業良否判定部１１８により、特徴量存在領域に基づいて、各実作業の作業結果の判定および失敗原因の推定を行うことになる（Ｓ７０６）。この作業判定結果は、作業良否・原因表示部１１９に表示される（Ｓ７０７）。
【００４６】
図５の特徴量履歴記録部１１４では、図８（ａ）に示すように、特徴量抽出部１１３から得られた作業実行時の各特徴量を、動作プログラムの実行ステップＩＤ、日時（日付・時刻）とともに記録する。作業良否・原因入力部１１５では、ロボットシステムの教示調整員がテスト運転として繰り返し嵌合・挿入作業を実行した際に、その作業良否を教示調整員が判断した結果、および失敗した場合の失敗原因を可搬式教示操作盤から入力する。作業良否・原因履歴記録部１１６では、図８（ｂ）に示すように、作業良否・原因入力部１１５から入力された作業良否と失敗原因を、動作プログラムの実行ステップＩＤ、日時（日付・時刻）とともに記録する。図８（ｂ）のテーブル・データの各行に対応する特徴量は、同図（ａ）のテーブル・データから同一の実行ステップＩＤ、同一の日時の行を検索することによって得ることができる。説明の便宜上、テーブル・データを（ａ）と（ｂ）に分けたが、これらを統合して一つの履歴データ記録手段のテーブル・データとして記録することもできる。
【００４７】
なお、プログラム実行ステップＩＤ（図８（ｂ）の場合「００１００」）は、動作プログラムの先頭ＮＯＰを０００００とし、命令（ＭＯＶＥコマンド等）毎に１ずつ増加する整数の単位で採番されるものである。動作プログラムの具体的内容は図示しないが、「ＮＯＰ」とは「Ｎｏ  Ｏｐｅｒａｔｉｏｎ」を意味し、動作プログラムの先頭であることを示すために必ず付与される命令である。ＮＯＰ以降の動作プログラムは、ロボットを動作させるＭＯＶＥコマンドの他に、ロボットコントローラ１０２と接続された外部機器との入出力命令、条件分岐命令などによって構成される。
【００４８】
テスト運転工程時にテスト運転として繰り返し嵌合・挿入作業を実行した際には、同一のプログラム実行ステップＩＤが採番される。そして、実作業工程時の各作業は、当該プログラム実行ステップＩＤにより関連付けられる。また、作業良否・原因履歴記録部１１６において格納される嵌合・挿入作業の各テーブル・データは、当該プログラム実行ステップＩＤおよび日時（日付・時刻）により一意に特定することができ、すなわち、各作業を特定する作業ＩＤを構成する。
【００４９】
通常の場合、１つのプログラム実行ステップＩＤにつき、テスト運転を、数十回から数百回行う。不具合があればその都度調整し、成功率がほぼ１００％（９９．９％以上）になるようにする。  
【００５０】
つぎに、特徴量存在範囲算出部１１７について詳細を説明する。
まず、図４（ｃ）から（ｅ）に示した嵌合・挿入作業について、作業成功時の特徴量存在範囲と作業失敗時の特徴量存在範囲がどのように算出され、これらの特徴量存在領域が定義されるかを図９から図１２に具体例を示して説明する。
【００５１】
本実施例の作業結果判定システムにおいて、当該特徴量存在領域の定義は、テスト運転終了後、実運転を開始する際に、作業良否判定装置１１２が備えるプロセッサによって実行されるものである。
【００５２】
なお、当該特徴量存在領域の定義に際し、採用される特徴量パラメータのセットは予め設定されているものとする。
図９（ａ）は、嵌合・挿入作業が失敗する状況の例（失敗原因１）を示している。これは、ワーク固定治具１１１のエア圧力が低下したため、被嵌合部品１１０ｂの位置が教示時から若干ずれて、嵌合・挿入に失敗した例である。図９（ｂ）には、その失敗例の特徴量の値のプロットを成功時のプロットと併せて示している。ここでは、特徴量パラメータの例として、挿入量（特徴量１）および力の時間微分のピーク値（特徴量２）を採用している。図９（ｂ）において、プロット５０１は成功時の特徴量の値のプロット、プロット５０２ａは失敗時の特徴量の値のプロットである。失敗時の特徴量プロット５０２ａの方が成功時のプロット５０１よりも力の時間微分のピーク値が大きな値になる理由は、ワーク１１０ｂの位置が微小にずれて接触時の衝撃が大きくなったためである。
【００５３】
この場合、特徴量存在範囲算出部１１７は、図８（ｂ）の履歴テーブル・データから、同一作業（同一の実行ステップＩＤ「００１００」）について「成功」と判断されたものを抽出し、図８（ａ）の履歴テーブル・データを参照して対応する特徴量パラメータ（特徴量１および特徴量２）の特徴量の値を全て取得し、各特徴量について平均値と標準偏差（分散）値を算出して特徴量存在範囲とする。そして、この平均値と分散値から、図９（ｂ）の長方形領域５０３の内側を成功時の特徴量存在領域５０３として定義する。
【００５４】
ここで、「特徴量存在範囲」とは、例えば、特徴量パラメータについての特徴量パラメータに対応する特徴量の値の範囲（from/to）を意味するが、これに限定されない。また、上記の例では、当該特徴量存在範囲に基づいて特徴量存在領域を長方形領域として定義しているが、これに限定されず、２次元座標系における楕円形等の形に基づいて定義してもよい。
【００５５】
図９（ｂ）において、具体的には、特徴量存在領域５０３の横軸（特徴量１）方向については「特徴量１の平均値±α×特徴量１の分散値」、縦軸（特徴量２）方向については「特徴量２の平均値±α×特徴量２の分散値」のように存在領域（上限と下限）を算出する。ここで、αは存在確率を設定するための係数であり、特徴量の存在範囲は、予め指定された存在確率となるように算出される。例えば、プロットが正規分布と仮定すれば、α＝２とすると９５．４４％の存在確率になり、α＝３とすると９９．７３％の存在確率になる。
【００５６】
作業失敗時については、図８（ｂ）の履歴テーブル・データから、同一作業（同一の実行ステップＩＤ「００１００」）について同一の原因で「失敗」と判断されたものを列挙し、図８（ａ）の履歴テーブル・データを参照して対応する特徴量パラメータ（特徴量１および特徴量２）の特徴量の値を全て取得し、各特徴量について平均値と標準偏差（分散）値を計算する。この平均値と分散値から、失敗時の特徴量存在範囲として同様の手順で算出し、図９（ｂ）の５０４ａに示した長方形領域の内側を失敗時の特徴量存在領域５０４ａとして定義する。失敗時の特徴量存在範囲については、失敗原因ごとに特徴量存在範囲を求めていく。作業成功および作業失敗に係る算出された各存在範囲は図８（ｃ）に示すテーブル・データとして特徴量存在範囲算出部１１７が備える特徴量存在範囲記録部１２２（図示せず）に記録される。
【００５７】
なお、特徴量存在範囲記録部１２２における図８（ｃ）に例示する各テーブル・データの「特徴量存在範囲」部には、例えば、特徴量パラメータおよび特徴量パラメータに対応する特徴量の値の範囲（from/to）のセットを格納することができるが、これに限定されない。また、当該特徴量存在範囲に基づいて定義される特徴量存在領域は、さらに特徴量存在領域記録部１２３に格納することができる。
【００５８】
図５の作業良否判定部１１８は、実作業実行時に特徴量抽出部１１３から得られた特徴量のプロットと、図８（ｃ）に記録された特徴量存在範囲に基づく特徴量存在領域とを比較し、どの特徴量存在領域内にあるかをチェックする。そして、得られた特徴量のプロットが成功時の特徴量存在領域内にのみある場合は「成功」と判定し、失敗時の特徴量存在領域内にのみある場合は「失敗」と判定する。両方の特徴量存在領域内に属しているか、そのどちらにも属していない場合は、「判定不能」と判断する。また、「失敗」と判定した場合は、図８（ｃ）のテーブルから失敗原因を検索する。さらに、当該特徴量のプロットが、２つ以上の失敗原因についての特徴量存在領域のいずれにも含まれる場合には、当該２つ以上の失敗原因を検索する。
【００５９】
図５の作業良否・原因表示部１１９では、作業良否判定部１１８で得られた作業良否（成功/失敗）と原因（失敗時のみ）を可搬式教示操作盤１０３の表示画面１０３ｂに表示する。また、作業良否判定部１１８が作業失敗と判断した場合は、動作プログラム実行部１０９に働きかけてロボット１０１を停止させ、挿入不良となった半製品が後工程に流れることを防止することができる。さらに、ロボット１０１が稼動している生産ラインの監視員は、作業良否・原因表示部１１９を見ることでロボットが停止した原因も把握することができるため、生産ラインを速やかに復旧できる。
【００６０】
図１０から図１２は、図９とは異なる失敗状況の例（失敗原因２から４）とその特徴量の値のプロットを示している。図１０から図１２の順に失敗原因と特徴量の傾向を説明する。
【００６１】
図１０（ａ）は被嵌合部分１１０ｂにラッチ１１０ｃがある場合に、ラッチ１１０ｃが十分に嵌り切らない状況を示している。ここでは特徴量パラメータとして、挿入量（特徴量１）および力の時間微分のピーク値（特徴量２）を採用している（図１０（ｂ））。ラッチが不十分な場合は、十分な場合に比べて力の時間変化が緩やかになるため、図１０（ｂ）に示すように失敗時の特徴量の値のプロット５０２ｂは、成功時のプロット５０１よりも力の時間微分のピーク値が小さくなる傾向を示す。特徴量存在領域５０４ｂは、特徴量存在範囲算出部１１７で算出された特徴量存在範囲に基づいて定義された失敗時（失敗原因２）の特徴量存在領域である。ラッチが十分な場合と不十分な場合の挿入量の差は微小であり、部品やハンドの爪が柔軟（例えばプラスティック製）な場合は挿入量のバラツキが大きくなるため、挿入量だけでは区別できなくなる。
【００６２】
図１１（ａ）は、被嵌合部品１１０ｂが傾いた状態でワーク固定治具１１１にセットされた場合に、嵌合部品１１０ａが被嵌合部品１１０ｂの側面を擦っただけで挿入されなかった状況を示している。ここでは特徴量パラメータとして挿入量（特徴量１）および挿入時の仕事量（挿入量３）を採用している（図１１（ｂ））。部品が側面を擦った場合は、正常に挿入される場合に比べて、作用力（抵抗力）が小さくなるため、図１１（ｂ）に示すように失敗時の特徴量の値のプロット５０２ｃは、成功時のプロット５０１よりも挿入時の仕事量が小さくなる傾向を示す。特徴量存在領域５０４ｃは、特徴量存在範囲算出部１１７で算出され、これに基づいて定義された失敗時（失敗原因３）の特徴量存在範囲である。側面を擦っただけで挿入されなかった場合も、図１１（ａ）に示すようにハンド１０４の位置から算出した挿入量（移動量）だけでは、正しく挿入された場合との区別ができなくなることがある。
【００６３】
図１２（ａ）は嵌合部品１１０ａとして柔軟ケースをガイド１１０ｄ付の被嵌合部品１１０ｂに嵌合および挿入する際に、片方のガイド１１０ｄに異物が挟まったため、十分に嵌り切らない状況を示している。ここでは特徴量パラメータとして、挿入量（特徴量１）およびハンド姿勢角の変化量を採用している（図１２（ｂ））。片方のガイド１１０ｄに異物が挟まった場合は若干斜めに傾くため、図１２（ｂ）に示すように失敗時の特徴量の値のプロット５０２ｄは、成功時のプロット５０１よりも姿勢角の変化量が大きくなる傾向を示す。特徴量存在領域５０４ｄは、特徴量存在範囲算出部１１７で算出され、これに基づいて定義された失敗時（失敗原因４）の特徴量存在領域である。柔軟ケースの場合は挿入するために力を加えることによってケースがたわむため、図１１の例と同様に挿入量（ハンド１０４の位置から算出）だけでは成功時との区別が難しくなる。
【００６４】
図９から図１２に示した失敗状況は、いずれも、挿入量という一つの特徴量パラメータだけでは成功と失敗の区別が正確にできない例であるが、力の時間微分のピーク値、挿入時の仕事量、ハンドの姿勢角の変化量という具合に特徴量パラメータの数を増やすことによって、様々な失敗原因を正確に区別できるようになる。また、一つの失敗原因に対して必ずしも一つの特徴量パラメータが必要になるというわけではなく、特徴空間の次元（特徴量の数）Ｎが増えるとその象限数は２のＮ乗で増えるため、最大で２のＮ乗の失敗原因を区別できる。
【実施例２】
【００６５】
図９から図１２に示した例は、２つの特徴量によって、成功時の特徴量存在領域５０３と失敗時の特徴量存在領域５０４ａからｄが確実に区別できる状況を示しているが、場合によっては、成功時の存在領域と失敗時の存在領域に重複領域を有しており、明確な区別が難しい場合がある（図１３（ｂ））。このような領域の重複部分があっても、作業良否判定部１１８は作業実行時に得られる特徴量の値が成功時の特徴量存在範囲内にのみある場合は「成功」と判定する。
【００６６】
このとき、作業良否判定部１１８は、図１３に示すように、当該重複領域の大きさおよび作業成功時の特徴量存在領域の大きさに基づいて、領域の重なり度合いに応じた判定の「確からしさ」（明確な区別ができるかどうか）を算出し、その確からしさも作業良否・原因表示部１１９に表示することもできる。図１３において、特徴量存在領域５０３は、特徴量存在範囲算出部１１７で算出された作業成功時の特徴量存在範囲、同様に、特徴量存在領域５０４は作業失敗時の特徴量存在領域、特徴量プロット５０５は作業実行時の特徴量の値のプロットである。また、図１３（ａ）から（ｃ）はそれぞれ１から３次元の特徴空間の例である。図１３（ａ）の場合、成功時の特徴量存在領域の30％が失敗時の特徴量存在領域と重なり合っているので、特徴量プロット５０５は「成功」と判定されるが、その「確からしさ」は70％と算出される。同様にして図１３（ｂ）の場合の成功判定の「確からしさ」は90％、図１３（ｃ）の成功判定の「確からしさ」は100％と算出される。また、図１３も特徴量パラメータの数を増やすことによって、作業成功時の特徴量存在領域と作業失敗時の存在範囲領域の重複がなくなり、作業良否を明確に区別できるようになることを示している。
【００６７】
本実施例により、作業良否の判定に用いる特徴量パラメータの数を増やすことによって、作業成功時の特徴量存在領域と作業失敗時の存在範囲領域の重複を最小限にすることができ、作業良否（成功／失敗）を明確に区別し、さらに推定される失敗原因の精度を上げることができるようになる。
【実施例３】
【００６８】
本実施例のロボットシステムでは、所定の特徴量パラメータの数に対し、特徴量履歴記録部１１４および作業良否・原因履歴記録部１１６に記録された履歴データに基づいて、作業実行時の作業良否判定において最適な特徴量パラメータとなる特徴量パラメータのセットを選択することができる。
【００６９】
本実施例の作業結果判定システムにおける作業良否判定装置１１２は、特徴量履歴記録部１１４、作業良否・原因履歴記録部１１６、特徴量存在範囲算出部１１７、および特徴量存在領域記録部１２３に結合され、特徴量パラメータ選択部１２０（図示せず）を備える。当該特徴量パラメータ選択部１２０（図示せず）は、特徴量履歴記録部１１４および作業良否・原因履歴記録部１１６に記録された履歴データや特徴量存在範囲算出部１１７で算出された特徴量パラメータに基づく特徴量の存在範囲に基づいて、作業実行時の作業良否判定において最適な特徴量パラメータとなる特徴量パラメータのセットを選択する。また、当該特徴量パラメータ選択部１２０によって選択された最適な特徴量パラメータのセットにより、当該選択された最適な特徴量パラメータを座標軸に採用した座標系を定義し、当該座標系における特徴量存在領域を決定して、特徴量存在領域記録部１２３に記録することができる。
【００７０】
ここで、当該座標系における特徴量存在領域は、それぞれ作業良否や作業失敗時の作業原因に関連付けられている。そして、当該最適な特徴量パラメータのセットは、作業成功時の特徴量存在領域と、作業失敗時の失敗原因に関連付けられる各特徴量存在領域との重複領域に基づいて選択されるものである。
【００７１】
また、当該システムは、最適特徴量パラメータ決定処理における処理データを格納するための特徴量パラメータ記録部１２１（図示せず）を備える。
最適特徴量パラメータ決定処理は、テスト運転終了後、実作業を開始する際に、作業良否判定装置１１２が備えるプロセッサにより実行される。実作業時には、当該最適特徴量パラメータ選択処理により選択された特徴量パラメータのセットに基づいて、作業良否判定装置１１８により作業良否が判定される。
【００７２】
以下に、図１４とともに最適特徴量パラメータ選択処理について詳細に説明する。なお、特徴量パラメータの数（すなわち、次元数）は予め設定されているものとする。以下の説明では、特徴量パラメータ数を「２」として、２つの特徴量パラメータのセットを座標軸に採用した２次元座標系を定義して説明するが、これに限定されない。
【００７３】
まず、２つの特徴量パラメータのセットを任意に選択する（Ｓ１４０１）。図８（ａ）の例では、特徴量履歴記録部１１４に、挿入量、力微分ピーク、仕事量、姿勢角の４つの特徴量パラメータ（特徴量１から４）があり、このうち任意の２つのセットを選択することになる。次に、選択された特徴量パラメータのセットを用いて、特徴量履歴記録部１１４および作業良否・原因履歴記録部１１６に記録された履歴データに基づいて、特徴量存在範囲算出部１１７により「成功」の存在範囲および「失敗」の存在範囲をそれぞれ算出して、各存在領域を定義する（Ｓ１４０２およびＳ１４０３）。「失敗」の存在範囲について、複数の失敗原因があるときは、失敗原因ごとに存在範囲を算出する。次に、当該「成功」および「失敗」の存在領域に重複領域が存在しているかを判断する（Ｓ１４０４）。仮に重複領域が存在していれば、上述した「確からしさ」を算出し、選択されている特徴量パラメータのセットとともに特徴量パラメータ記録部１２１に記憶する（Ｓ１４０５）。重複領域が存在しなければ、「確からしさ」を100%とし、同様に特徴量パラメータのセットとともに記憶する（Ｓ１４０６）。これらＳ１４０２からＳ１４０４までのステップを全ての特徴量パラメータのセットに対して行う（Ｓ１４０７）。次に、特徴量パラメータ記録部１２１に記憶した６通り全ての「確からしさ」の値に基づいて、最適な特徴量パラメータのセットを選択して、特徴量存在領域記録部（１２３）に最適な特徴量パラメータのセットに対応する特徴量存在領域を記録する（Ｓ１４０８）。最適な特徴量パラメータのセットとしては、例えば、「確からしさ」の値が最大のものを選択することができる。
【００７４】
図１５（ａ）は、特徴量パラメータとして特徴量１および特徴量２を選択した場合の「成功」作業領域１５０３および「失敗」作業領域１５０４を示している。同様に、図１５（ｂ）は、特徴量３および特徴量４を選択した場合である。図１５（ａ）の場合は、「確からしさ」の値を90%として特徴量パラメータ記録部１２１に記憶する（Ｓ１４０５）。これに対し、図１５（ｂ）の場合は、「確からしさ」の値を100%として特徴量パラメータ記録部１２１に記憶する（Ｓ１４０６）。このため、最適な特徴量パラメータのセットとしては、各特徴量の存在領域１５０３および１５０４が重複していない（「確からしさ」の値が100%である）、図１５（ｂ）のような特徴量３および４が選択され、そして、特徴量存在領域記録部（１２３）に特徴量３および４のセットに対応する特徴量存在領域１５０３および１５０４が記録される（Ｓ１４０８）。
【００７５】
なお、「確からしさ」の値が100%となる特徴量パラメータのセットが複数あるような場合は、さらに、例えば、図１５（ｃ）のように「成功」作業領域１５０３の中心と「失敗」作業領域１５０４の中心との間の距離ｄを算出して、距離ｄの値が大きい方の特徴量パラメータのセットを最適な特徴量パラメータのセットとして選択してもよい。これ以外にも、図１５（ｄ）のように、「成功」作業領域５０３の大きさ（例えば、面積f1×f2）および「失敗」作業領域５０４の大きさ（例えば、面積g1×g2）に基づいて、例えば、面積比率(g1×g2)/(f1×f2)の値が一番小さくなる特徴量パラメータのセットを最適な特徴量パラメータのセットとして選択してもよい。
【００７６】
また、図１５では１つの失敗原因の場合を説明しているが、失敗原因が複数存在するような場合も同様である。
さらに、本実施例では、特徴量パラメータの数（すなわち、次元数）は予め設定されているものとしたが、別の実施例においては、次元数をインクリメントしながら、重複領域が存在しないような最適な特徴量パラメータのセットを選択するようにしてもよい。例えば、当初次元数を１とし、Ｓ１４０８における最適な特徴量パラメータのセットの選択に際して、重複領域が存在しない特徴量パラメータのセットが存在しない（すなわち、「確からしさ」の値が100%となる特徴量パラメータのセットが検出されない）場合には、次元数をインクリメントして２とし、同様に重複領域が存在しない特徴量パラメータのセット（すなわち、「確からしさ」の値が100%となる特徴量パラメータのセット）を検索する、という具合である。これにより、実作業において、必ず最大数の特徴量パラメータのセットを採用する必要がなく、最小限の特徴量パラメータのセットを採用して作業良否判定および推定を行うことができ、処理効率を向上させることができる。
【００７７】
このように、選択した最適な特徴量パラメータに係る特徴量存在領域のデータは、プログラム実行ステップＩＤや作業良否とともにテーブル・データとして特徴量存在領域記録部１２３に記録される。
【００７８】
本実施例により、特徴量パラメータの数に対し、特徴量履歴記録部１１４および作業良否・原因履歴記録部１１６に記録された履歴データに基づいて、作業実行時の作業良否判定において最適な特徴量パラメータとなる特徴量パラメータのセットを選択することができる。これにより、特徴量存在領域がより正確なものとなり、またこれに伴い、実作業時において判定される作業良否や推定される失敗原因の精度を上げることができる。
【実施例４】
【００７９】
本実施例のロボットシステムでは、作業実行時に作業良否判定部１１８が判定した作業良否に係るデータを、逐次、特徴量履歴記録部１１４および作業良否・原因履歴記録部１１６に追加記録することができ、作業実行時に特徴量抽出手段（１１３）によって抽出される特徴量、作業良否判定手段（１１８）によって判定される作業良否、および推定される失敗原因を含むデータを履歴データとしてフィードバックすることができる。すなわち、特徴量履歴記録部１１４には、テスト運転工程のみならず、作業実行時において特徴量抽出手段（１１３）によって抽出される特徴量が追加記録され、また、作業良否・原因履歴記録部１１６には、テスト運転時において作業良否・原因入力部１１５から入力され格納した作業良否および失敗原因のみならず、作業良否判定部１１８からフィードバックされて判定される作業良否および推定される失敗原因を格納する。この際、図８（ｂ）の「プログラム実行ステップＩＤ」には同一の実行ステップ番号（この場合は「００１００」）を格納し、同様に、「日付・時刻」には作業実行を行った日付および時刻、「作業良否」および「失敗原因」には作業実行時において判定された作業良否および失敗原因を格納する。
【００８０】
そして、特徴量存在範囲算出部１１７は、「成功」作業時の特徴量存在範囲と「失敗」作業時の特徴量存在範囲を逐次または定期的に算出し、各特徴量領域を定期的に定義し直して、特徴量存在範囲記録部１２２および特徴量存在領域記録部１２３に格納されたデータを更新することができる。
【００８１】
なお、特徴量存在範囲算出部１１７が算出する特徴量存在範囲の算出タイミング（逐次または定期）は、可搬式教示操作盤１０３を介して事前に設定され、若しくは実作業時に設定され、作業良否判定装置１１２のプロセッサにより制御される。
【００８２】
本実施例により、特徴量存在領域がより正確なものとなり、またこれに伴い、判定される作業良否や推定される失敗原因の精度を上げることができる。
以上説明したように本発明によれば、複数の特徴量に関する履歴データと、テスト運転時に教示調整員の判断によって得られた作業良否と失敗原因の履歴データから作業成功時の特徴量存在範囲と、作業失敗時の特徴量存在範囲を失敗原因ごとに算出しておくので、様々な原因に依存する作業良否を正確に判定できるという効果を奏する。
【００８３】
また、本発明は、作業失敗時はその失敗原因をライン監視員に提示するので、生産ラインを速やかに復旧できるという効果を奏する。
さらに、本発明は、特徴量存在範囲の重なり度合いに応じて判定の確からしさを算出して表示するので、判定の信頼性を客観的に把握できるという効果を奏する。
【００８４】
さらに、本発明は、テスト運転時の履歴データから最適な特徴量パラメータのセットを選択することにより、特徴量パラメータの全てのセットによらなくても、様々な原因に依存する作業良否を正確に判定できるという効果を奏する。
【００８５】
さらに、本発明は、作業実行時に取得する作業良否および失敗原因を含むデータを履歴データとしてフィードバックすることにより、様々な原因に依存する作業良否を正確に判定できるという効果を奏する。
【産業上の利用可能性】
【００８６】
本発明の嵌合・挿入作業時の作業良否判定装置によって、自動車部品や家電製品など様々な組み立てラインの工程を、生産性を低下させることなくロボットを用いて自動化することができる。
【００８７】
なお、本願明細書において「ロボット」とは、人の代わりに何等かの作業を行う装置のことを指す。主に、ある程度自律的に連続した自動作業を行う、産業用ロボットが代表例であるが、これに限定されない。将来開発される「ロボット（人の代わりに何等かの作業を行う装置）」であって、本願特許請求の範囲の技術的範囲に含まれる発明を利用可能な全ての「ロボット」が含まれるものとする。
【００８８】
本明細書に説明される特定の実施形態が説明された。他の実施形態は、特許請求の範囲内にある。例えば、特許請求の範囲に挙げられた動作は、異なる順番で実行し、依然として望ましい結果を実現することができる。一例として、添付図面に示されるプロセスは、望ましい結果を実現するために、必ずしも、示される特定の順番又は逐次的な順番を必要とするものではない。
【００８９】
また、１つの構成要素が有する機能が２つ以上の物理的構成によって実現されてもよく、２つ以上の構成要素が有する機能が１つの物理的構成によって実現されてもよい。システムの発明は、それぞれの構成要素の有する機能が逐次的に実行される方法の発明として把握することもできるし、その逆も成り立つ。方法の発明においては、各ステップは記載された順序に実行されるものに限定されるものではなく、全体としての機能が矛盾なく実行され得る限りにおいて、自由な順序でそれを実行することができる。これらの発明は、所定のハードウェアと協働して所定の機能を実現させるプログラムとしても成立し、それを記録した記録媒体としても成立する。また本発明は、搬送波上に具現化されたコンピュータ・データ信号であって、そのプログラムのコードを備えたものとしても成立しうる。
【００９０】
本態様の他の実施形態は、対応するシステム、装置、デバイス、コンピュータプログラム製品、及びコンピュータ可読媒体を含む。
審査中の手続補正によって、及び、特許後の訂正審判又は訂正請求において、法的な制限の範囲内で、本発明は、以上の種々の態様に訂正され得る。
【００９１】
なお、特許後の訂正審判又は訂正請求における「実質上特許請求の範囲を変更」の判断は、特許時の請求項に新たな構成要素が追加されたか否か（即ち、いわゆる外的付加が為されたか否か）、又は、特許時の請求項の１つ又はそれより多いいずれかの構成要素を更に限定するものか（即ち、いわゆる内的付加が為されたか）によって判断されるべきでなく、訂正の前後の請求項に係る発明の効果が類似するか否かの観点から為されるべきである。
【００９２】
本明細書は、多数の特定のものを含むが、これらは、特許請求される又は特許請求されることができる範囲に対する制限として解釈されるべきではなく、特定の実施形態に特有の特徴の説明として解釈されるべきである。
【００９３】
別個の実施形態の内容において、本明細書に説明される特定の特徴は、さらに、単一の実施形態において組み合わせて実施することができる。
対照的に、単一の実施形態の内容において説明される種々の特徴は、さらに、多数の実施形態において、又はあらゆる好適な小結合において実施することができる。
【００９４】
さらに、特徴は、特定の組み合わせにおいて作用するように上述され、さらに最初に、そのように特許請求されることがあるが、特許請求される組み合わせからの１つ又はそれ以上の特徴は、幾つかの場合においては、その組み合わせから実行されることができ、特許請求される組み合わせは、小結合又は様々な小結合に向けられることができる。
【００９５】
同様に、動作は、特定の順番で図示されるが、このことは、望ましい結果を実現するために、こうした動作が、示される特定の順番で又は逐次的な順番で実行され、又は、それらのすべての図示される動作が実行されることを必要とするように理解されるべきではない。
【符号の説明】
【００９６】
１０１    ロボット
１０２    コントローラ
１０３    可搬式教示操作盤
１０３ａ  操作ボタン群
１０３ｂ  表示画面
１０４    エンドエフェクタ
１０５    力センサ
１０６    インピーダンス制御部
１０６ａ  位置制御系
１０６ｂ  インピーダンス制御演算部
１０６ｃ  インピーダンスモデル
１０６ｄ  速度分解演算部
１０７    アクチュエータ駆動アンプ部
１０８    動作プログラム記憶部
１０９    動作プログラム実行部
１１０ａ  嵌合部品
１１０ｂ  被嵌合部品
１１０ｃ  ラッチ
１１０ｄ  ガイド
１１１    ワーク固定治具
１１２    作業良否判定装置
１１３    特徴量抽出部
１１４    特徴量履歴記録部
１１５    作業良否・原因入力部
１１６    作業良否・原因履歴記録部
１１７    特徴量存在範囲算出部
１１８    作業良否判定部
１１９    作業良否・原因表示部
１２３    特徴量存在領域記録部
３０１    嵌合・挿入作業実行時の作用力の時間応答
３０２    嵌合・挿入作業実行時の移動（挿入）量の時間応答
５０１    作業成功時の特徴量の値のプロット
５０２ａ  作業失敗状況１での特徴量の値のプロット
５０２ｂ  作業失敗状況２での特徴量の値のプロット
５０２ｃ  作業失敗状況３での特徴量の値のプロット
５０２ｄ  作業失敗状況４での特徴量の値のプロット
５０３    作業成功時の特徴量の存在範囲
５０４    作業失敗時の特徴量の存在範囲
５０４ａ  作業失敗状況１での特徴量の存在範囲
５０４ｂ  作業失敗状況２での特徴量の存在範囲
５０４ｃ  作業失敗状況３での特徴量の存在範囲
５０４ｄ  作業失敗状況４での特徴量の存在範囲
５０５    作業実行時の特徴量の値のプロット
【図１】
0005382359.tif 000002
【図２】
0005382359.tif 000003
【図３】
0005382359.tif 000004
【図４】
0005382359.tif 000005
【図５】
0005382359.tif 000006
【図６】
0005382359.tif 000007
【図７】
0005382359.tif 000008
【図８】
0005382359.tif 000009
【図９】
0005382359.tif 000010
【図１０】
0005382359.tif 000011
【図１１】
0005382359.tif 000012
【図１２】
0005382359.tif 000013
【図１４】
0005382359.tif 000014
【図１５】
0005382359.tif 000015
【図１３】
0005382359.tif 000016