(57)【特許請求の範囲】
【請求項１】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、
ロボット先端に作用する力を取得する力取得手段と、
ロボット先端の位置を取得する位置取得手段と、
前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、
前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、
前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、
前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、
前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、
前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段と、
前記極大値と前記極小値との差と、前記判定基準とに基づいて、ロボットに対する教示点の評価を行う評価手段と、
を備えたことを特徴とする検査装置。
【請求項２】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、
ロボット先端に作用する力を取得する力取得手段と、
ロボット先端の位置を取得する位置取得手段と、
前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、
前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、
前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、
前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、
前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、
前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段と、
を備え、
前記検査範囲指定手段は、前記切り出し手段により切り出されるべき検査範囲を、検査の対象となる座標軸の位置データの先頭から最後までの総移動量に対する割合で指定する
ことを特徴とする検査装置。
【請求項３】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、
ロボット先端に作用する力を取得する力取得手段と、
ロボット先端の位置を取得する位置取得手段と、
前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、
前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、
前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、
前記認識された複数の極値の中から極大値の次の極値が極小値であるという選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、
前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、
前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段と、
を備えたことを特徴とする検査装置。
【請求項４】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査方法であって、
ロボット先端に作用する力とロボット先端の位置との関係を示す波形から切り出されるべき検査範囲を指定する指定ステップと、
前記波形から前記指定ステップで指定された検査範囲の部分波形を切り出す切り出しステップと、
前記切り出しステップで切り出された部分波形における複数の極値を認識する極値認識ステップと、
前記極値認識ステップで認識された複数の極値の中から極大値の次の極値が極小値であるという選定基準に従って検査対象となる極大値と極小値とを選定する選定ステップと、
前記選定ステップで選定された極大値と極小値との差が判定基準を満たすかどうかを判定する判定ステップと、
前記判定ステップでの判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力ステップと、
を含むことを特徴とする検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査装置及び検査方法に関する。
【背景技術】
【０００２】
部品の組み付け作業を行うロボットにおいて、ハンドの先端部に力センサが設けられていて、力センサで検出した力情報を活用して作業の検査を行う方法が提案されている。
【０００３】
特許文献１には、コネクタのピン孔にピンを挿入するコネクタ用ピン挿入装置において、ピンに作用する挿入力の変化パターンを基準の変化パターンと比較してピンがピン孔に適正に挿入されたか否かを判定することが記載されている。これにより、特許文献１によれば、ピンの挿入に全く寄与しないアクチュエータなどの構成要素を使用せずにピンの挿入の適否を検査できるので、装置コストを低減できるとされている。
【０００４】
特許文献２には、押切り端を有する被圧入部材にプランジャによってワーク部材を圧入する圧入システムにおいて、圧入の終了位置を基点としてその手前の複数の位置を複数のチェックポイントとしてそれぞれ設定し、プランジャによる圧入力が複数のチェックポイントのそれぞれで所定の範囲内にあるか否か判定することが記載されている。これにより、特許文献２によれば、押切り端のバラツキによる判定のバラツキがなくなり、正確な圧入判定が行われるとされている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１１９０４６号公報
【特許文献２】特開２００７−２６０９０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の手法では、挿入動作位置がずれたり、ワーク位置がずれる場合やロットの違いにより作用する力の絶対値が異なる場合には、作業の成功を失敗に誤判定してしまい、部品の組み付け作業の成否を正しく検査できない可能性がある。
【０００７】
例えば、特許文献１に記載の手法では、ワークの設置位置が上下方向にずれている場合には挿入力のパターンが基準パターンからずれるため、作業成功時も失敗と誤判定する可能性がある。
【０００８】
あるいは、例えば、特許文献２に記載の手法では、ワークの設置位置が水平方向にずれている場合や、ロットの違いにより作用する反力の絶対値が異なる場合があり、そうした場合には個々のチェックポイントにおける反力の大きさはあらかじめ測定しておいた値とは大きく異なるため、作業成功時も失敗と誤判定する可能性がある。
【０００９】
本発明は、上記に鑑みてなされたものであって、部品の組み付け作業の成否を正しく検査できる検査装置及び検査方法を得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明の１つの側面にかかる検査装置は、ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、ロボット先端に作用する力を取得する力取得手段と、ロボット先端の位置を取得する位置取得手段と、前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段とを備えたことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、検査範囲指定手段で作業成否を判定するための検査範囲を特徴（極値）が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。したがって、部品の組み付け作業の成否を正しく検査できる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１にかかる検査装置の構成を示す図である。
【図２】図２は、実施の形態１にかかる検査装置で検出された力グラフの一例を示す図である。
【図３】図３は、実施の形態１にかかる検査装置の動作を示す図である。
【図４】図４は、実施の形態１にかかる検査装置の動作を示すフローチャートである。
【図５】図５は、実施の形態１における極値認識手段の動作を説明するための図である。
【図６】図６は、実施の形態１にかかる検査装置の動作を示す図である。
【図７】図７は、実施の形態１における表示手段の動作を示す図である。
【図８】図８は、実施の形態２にかかる検査装置の構成を示す図である。
【図９】図９は、実施の形態３にかかる検査装置の構成を示す図である。
【図１０】図１０は、実施の形態３における表示手段の動作を示す図である。
【図１１】図１１は、実施の形態６における表示手段の動作を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本発明にかかる検査装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１４】
実施の形態１．
実施の形態１にかかる検査装置１００について図１を用いて説明する。図１は、検査装置１００の構成を示すブロック図である。
【００１５】
検査装置１００は、ロボット１による部品の組み付け作業（自動組立作業）において、例えば、作業正常完了確認、組み付け不良、ケーブルなどの噛み込みなどを、例えば力センサ２ａや位置センサ３ａで取得した力の変化に関する情報を用いて自動的に検出する。具体的には、検査装置１００は、ロボット１、力取得手段２、位置取得手段３、取得条件指定手段４、検査手段番号選択手段５、検査パラメータ指定手段７、検査範囲指定手段８、切り出し手段９、検査手段６、検査出力手段１０、及び表示手段１１を備える。
【００１６】
ロボット１は、１軸もしくは複数軸のモータ（図示省略）を備えるものであり、その一例として産業用ロボットと呼ばれる６軸垂直多関節ロボット、４軸水平多関節ロボット等がある。
【００１７】
力取得手段２では、ロボット１の先端部近辺もしくはロボットが作業する対象に作用する力とモーメントを検出するための力センサ２ａが取り付けられている。すなわち、力取得手段２は、力センサ２ａで力及びモーメントを検出することにより、ロボット１の先端に作用する力を取得する。力取得手段２は、取得された力を力検出値として、ロボット１及び切り出し手段９経由で検査手段６及び表示手段１１へ供給する。
【００１８】
力検出値は、力センサ２ａが６軸の力センサである場合、３軸方向の力と各軸周りのモーメントであり、力センサ２ａが５軸以下の力センサである場合、３軸方向の力と各軸周りのモーメントのうち、計測できるモーメントである。力取得手段２において力センサ２ａは例えば軸ごと及びモーメントごとに設けられ、各力センサ２ａは、それぞれ力検出値を検査手段６及び表示手段１１に送信する。
【００１９】
位置取得手段３では、ロボット１を駆動する各軸のモータに対応して、エンコーダやレゾルバなどの各軸のモータ位置を測定する位置センサ３ａが取り付けられている。すなわち、位置取得手段３は、位置センサ３ａで各軸のモータ位置を検出し座標変換処理で内部的に処理可能な位置に変換することにより、ロボット１の先端の位置を取得する。位置取得手段３は、取得された位置を位置検出値として、ロボット１及び切り出し手段９経由で検査手段６及び表示手段１１へ供給する。
【００２０】
取得条件指定手段４では、力取得手段２／位置取得手段３による力／位置検出処理で使用するデータのサンプリング周期、検出開始地点、終了地点を指定する。例えばロボット１の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【００２１】
ＦｓＴＣｏｎｄ  Ｏｎ，１
【００２２】
ここで、「ＦｓＴＣｏｎｄ  Ｏｎ」は検出開始地点を指定するためのロボット言語（命令）で、「１」は検査処理で使用するデータ周期の番号である。例えば、番号が「１」の場合、検査処理で使用するデータ周期はＳａｍｐＴミリ秒である。
【００２３】
ＦｓＴｅｓｔ  Ｏｎ，３０
【００２４】
ここで、「ＦｓＴｅｓｔ  Ｏｎ」は動作開始地点からの移動距離の割合で検出開始地点を指定するためのロボット言語（命令）で、「３０」は組み付け動作開始から３０％の地点で力／位置検出が開始することを指定する。
【００２５】
ＦｓＴｅｓｔ  Ｏｆｆ，５０
【００２６】
ここで、「ＦｓＴｅｓｔ  Ｏｆｆ」は動作開始地点からの移動距離の割合で検出終了地点を指定するためのロボット言語（命令）で、「５０」は組み付け動作開始から５０％の地点で力／位置検出が終了することを指定する。
【００２７】
なお、この実施の形態では動作開始地点からの移動距離の割合で力／位置検出の開始地点及び終了地点を指定したが、動作終了地点までの移動距離の割合、動作開始地点からの移動距離、動作終了地点までの移動距離、動作開始からの経過時間などで指定してもよい。
【００２８】
検査手段番号選択手段５は、検査の対象となる座標軸を指定するとともに、ロボット１に行わせる作業の種類に応じて検査手段番号を選択する。検査手段番号は、検査手段６として使用する検査手段を指定するための番号である。すなわち、検査装置１００内には検査手段６の候補として複数の検査手段が存在し、検査手段番号選択手段５は、検査手段番号を選択することにより、複数の検査手段から検査手段６として使用する検査手段を指定する。検査手段番号選択手段５は、検査の対象となる座標軸の情報をその指定した検査手段６へ供給するとともに、検査手段番号を検査パラメータ指定手段７へ供給する。
【００２９】
例えば、ロボット１に行わせる作業が電機部品の樹脂カバー嵌め込みの場合、検査手段番号選択手段５は、検査手段番号として「５１」を選択する。例えば、ロボット１に行わせる作業がコネクタ挿入の場合、検査手段番号選択手段５は、検査手段番号として「５２」を選択する。
【００３０】
また、例えば、ロボット１に行わせる作業が電機部品の樹脂カバー嵌め込みの場合、例えばロボット１の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【００３１】
ＦｓＴＡｌｇｏ，５１，３
【００３２】
ここで、「ＦｓＴＡｌｇｏ」は検査処理で使用する検査手段を指定するためのロボット言語（命令）で、「５１」は使用する検査手段番号であり、「３」は検査手段番号の実行対象（検査対象）となる軸としてＺ軸を指定する。
【００３３】
このように、ロボット１の軸が複数である場合、作業方向の力情報に限定せずに、組み付け作業の種類に応じて作業成否判断のために力情報の特徴が一番鮮明である軸を選択することができる。これにより、検査の信頼性を高めることができる。
【００３４】
検査パラメータ指定手段７は、検査手段番号を検査手段番号選択手段５から受ける。このとき、検査手段番号ごとに検査パラメータの組合せが例えば記憶手段Ｍに予め格納されており、検査パラメータ指定手段７では、記憶手段Ｍを参照し、検査手段番号に対応した検査パラメータの組合せを取得する。検査パラメータ指定手段７は、取得した検査パラメータの組合せを使用すべき検査パラメータとして指定して検査手段６へ供給する。
【００３５】
なお、この実施の形態では指定した検査手段番号を指定し、その後検査手段番号に対応する検査パラメータを取得して使用すべき検査パラメータとして指定しているが、検査手段に必要なパラメータの値をプログラム命令で直接記載してもよい。
【００３６】
検査範囲指定手段８は、切り出し手段９により切り出されるべき検査範囲を指定する。すなわち、検査範囲指定手段８は、検査手段６で例えば嵌め込み作業の成否を判断するために力波形における特徴（極値）を認識させるための検査範囲を指定する。つまり、力取得手段２／位置取得手段３により検出された力／位置検出値の集まりである力／位置データに対して検査手段６で検査すべき検査処理初めのデータと検査処理終了のデータとを指定する。検査処理初めの地点と検査処理終了の地点との指定は、ロボットの直交座標位置で指定することもできるが、組み付け作業で反転動作を含めて検査したい場合は対応出来なくなるため、本実施形態ではロボット１で検出した力／位置データの先頭から最後までの総時間を１００％として、それに対する割合で指定する。力取得手段２／位置取得手段３により検出された力／位置データの先頭が０％となり、最後が１００％となる。例えばロボット１の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【００３７】
ＦｓＴＢａｔ，７０，１００
【００３８】
ここで、「ＦｓＴＢａｔ」は検査処理開始割合および検査処理終了割合を指定するためのロボット言語（命令）で、「７０，１００」は力取得手段２／位置取得手段３により検出された力／位置データの先頭から最後までの総時間の７０％で検査処理開始し、１００％までに終了することを指定する。
【００３９】
切り出し手段９は、力取得手段２により取得された力と位置取得手段３により取得された位置との関係を示す波形から、検査範囲指定手段８により指定された検査範囲の部分波形を切り出す。すなわち、切り出し手段９は、力取得手段２／位置取得手段３により検出された力／位置データから検査範囲指定手段８で指定した検査範囲の部分波形を切り出す。
【００４０】
このように、組み付け作業のロボット１に対して力取得手段２／位置取得手段３により検出された力／位置データ（全体波形）において、作業成否判定できる力情報の特徴点がある部分をＦｓＴＢａｔで指定した検査処理範囲（部分波形）内に入れることができる。すなわち、検査と関係ない情報を除外して処理するので、検査処理時間を短縮することができる。また、全範囲検査を行うと類似特徴が見つかるケースがあるが、範囲を絞り込むことでこのような誤判定を防ぐことができる。
【００４１】
検査手段６は、検査手段番号選択手段５で検査手段番号を選択することにより指定された検査手段である。検査手段６は、例えば、極値認識手段６１及び判定手段６２を有する。検査手段６は、検査の対象となる座標軸の情報を検査手段番号選択手段５から受け、使用すべき検査パラメータを検査パラメータ指定手段７から受ける。検査手段６は、検査の対象となる座標軸に対して検査パラメータを用いた検査処理を行い、例えば組み付け作業が成功しているか失敗しているかの判定結果を検査結果として検査出力手段１０及び表示手段１１へ出力する。検査手段内部の構成および処理手段は検査手段番号ごとに違う。例えば、外れ防止用の爪部がある部品の嵌め込み作業に対応する検査手段の処理手順を後述する。
【００４２】
検査出力手段１０では、検査手段６での判定結果を用いて、ハンドを開閉させたり、作業終了としてＬＥＤを発光させたりすることなどにより、作業の成功又は失敗を示す信号を出力する。このように、検査手段６による判定結果などの検査結果をＩ／Ｏなどを通じて生産管理者や他の制御装置などに知らせることで、組み付け失敗品の発生をリアルタイムに報知することができる。
【００４３】
表示手段１１では、例えば、力取得手段２／位置取得手段３により検出された力／位置データのグラフ表示と、検査手段６での検査結果と、特徴点の力／位置情報とを表示する。例えば、表示手段１１は、力極大値発生時のロボット先端の位置と力の大きさとを表示する。
【００４４】
なお、図１において、ロボット１を除く検査手段番号選択手段５、検査パラメータ指定手段７、検査範囲指定手段８、切り出し手段９、検査手段６、検査出力手段１０、表示手段１１は、例えば１つのコンピュータ（ロボットコントローラ）により構成され、記憶手段Ｍは、各手段で共有する該コンピュータ内のメモリ（ＲＯＭ、ＲＡＭ等を含むものとする）であってもよい。
【００４５】
次に、検査装置１００の動作について説明する。以下では、外れ防止を目的とした爪部がある部品の嵌め込み作業の自動検査を例に挙げて説明する。
【００４６】
組み付け作業検査工程を自動化する前に、検査ための設定をおこなう。具体的には、ロボット１に対して組み付け作業動作を行うプログラムを実行させた後、力取得手段２／位置取得手段３により検出された力／位置データを表示手段１１でグラフ表示させる。表示手段１１でのグラフおよびその出力値によって、検査手段番号選択手段５、検査パラメータ指定手段７、検査範囲指定手段８に対する設定を行う。つまり、組み付け作業動作を行うロボットプログラムを実行して、ロボット１に対して力取得手段２／位置取得手段３により検出された力／位置データのグラフを確認し、検査範囲を指定し、抽出した力波形の特徴に適応する検査手段番号を選択し、選択した検査手段番号に対応するパラメータを設定する。
【００４７】
図２は、嵌め込み作業成功の場合の力検出グラフの一事例である。縦軸は、検出力（検査軸力）であり、横軸は、検査の開始から終了までの時間を１００％とした場合の検査の開始からの時間の割合である。図２に示すように、嵌め込み作業に対応する特徴的な力情報の部分は、カバー部４０における外れ防止用の爪部４１がベース部５０における穴部５１に嵌る（図３（ｄ）参照）瞬間前後の力情報であり、点線枠１２で示した部分である。すなわち、外れ防止用の爪部４１が穴部５１に嵌る途中で力が増加し（図３（ａ）、（ｅ）参照）、爪部４１が穴部５１に嵌る瞬間、検出力がピーク値になる。また、爪部４１が穴部５１に嵌った直後、検出力が減少し（図３（ｂ）、（ｆ）参照）、極小値になった後に再び増加する（図３（ｃ）、（ｇ）参照）。
【００４８】
つまり、外れ防止用の爪部４１がある部品の穴部５１への嵌め込み作業について、嵌め込み成功の場合は爪部４１が穴部５１に嵌った瞬間急激に力センサ値が一時的に減少する現象（以後、力抜け現象と呼ぶ）が生じているがことが図２及び図３で分かる。これは、図３に示すように、摩擦と反力との合力を嵌め込み進む軸方向に受けている状態から急に物理的接触を失うため、嵌め込み進む方向に対して力の顕著な変化を生じるというメカニズムであり、同様の機構ならば発生する現象である。
【００４９】
そして、図２に示すように、嵌め込みで特徴的な力波形の谷部でこのような現象を抽出するために、検査範囲指定手段８で図２に示す点線枠１２を検査範囲として指定する。つまり、検査手段６での検査処理開始の地点Ｐｅｒ１と検査処理終了の地点Ｐｅｒ２とを順次指定する。検査範囲指定手段８による検査範囲指定の目的は、図２に示すように、全体波形に対して検査を行うと、点線枠１２内の部分波形とプロファイルの類似した部分波形が見つかってしまい誤判定が発生する可能性があるので、検査範囲を絞り込むことでそのような誤判定を防ぐことにある。
【００５０】
次に、検査手段番号選択手段５で外れ防止用の爪部４１がある部品の嵌め込み作業に対応する検査手段を選択する。例えば、検査手段番号に「５１」を選択する。検査手段番号「５１」は、図３に示すような外れ防止用の爪部４１がある部品の嵌め込み作業が成功しているのか失敗しているのかを自動的に判定する検査手段を指定する。
【００５１】
検査手段番号５１のシーケンスを説明するためのフローチャートを図４に示す。図４を説明する前に、力検出値の波形の極値を認識する極値認識手段６１の動作を説明する。実際にはノイズなどの影響で変動している波形を極値と見なしてしまう可能性がある。極値認識手段６１は、例えばフィルタを用いたフィルタ処理により力検出値の波形の極値を認識することができるが、フィルタを通すと本来の特徴点が無くなる可能性があったり、判別しにくくなってしまう可能性がある。そこで、極値を精度良く安定的に認識するため、極値認識手段６１に対して次のような条件を設定する。
【００５２】
（ａ）すべて前後で力の増減変化がある点、つまり、図５に示すように離散的な力データ点の導関数における変化率の＋−の符号が変わる点を候補極値として記録する。例えば図５に示す×点が全部の候補極値ＥＶ１〜ＥＶ８である。
【００５３】
（ｂ）今回の力をＦ（ｋ）とし、極値認識連続個数をＦ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈとする。例えば、Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈが３ならば＋＋＋−−−か−−−＋＋＋となる。判定の途中で０（力の増減無し）があった場合、特定の個数例えば２個まで許容するが、下記の式では幾つ入っても良いものとする。この条件（ｂ）は、下記のように、極大値と認識されるための条件（ｂ．１）と極小値と認識されるための条件（ｂ．２）とを含む。
【００５４】
（ｂ．１）Ｆ（ｋ）−Ｆ（ｋ−１）＜０の場合、下記の数式（１）〜（４）を同時に満たしていれば、Ｆ（ｋ−１）は極大値と認識される。
【００５５】
Ｆ（ｋ＋ｉ）−Ｆ（ｋ＋ｉ−１）≧０
（ｉ＝−（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＬ），…，−２，−１）
・・・（１）
【００５６】
Ｆ（ｋ−１）−Ｆ（ｋ−１−Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ−ＺｅｒｏＬ）
≧Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈ                                  ・・・（２）
【００５７】
Ｆ（ｋ＋ｉ）−Ｆ（ｋ＋ｉ−１）≦０
（ｉ＝１，２，…，（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）−１）
・・・（３）
【００５８】
Ｆ（ｋ−１）−Ｆ（ｋ−１＋Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）
≧Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈ                                  ・・・（４）
【００５９】
ただし、ＺｅｒｏＬは極値の力グラフにおける左側で力の増減が無いデータ数であり、ＺｅｒｏＲは極値の力グラフにおける右側で力の増減が無い点である。Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈは、極値認識許容閾値であり、極値前後の差が一定値以上である条件を付加できる。この条件により、認めた極値の左右の力波形の傾きを確保することができる。
【００６０】
各式の意味は例えば次のようなものである。
【００６１】
式（１）：候補極大値が、発生前の（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＬ）回目の力データから候補極大値Ｆ（ｋ−１）までに減ったことがない。
【００６２】
式（２）：候補極大値Ｆ（ｋ−１）と候補極大値発生前の（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＬ）回目の力データとの差がＦ＿Ｓｌｏｐｅ＿Ｈｉｇｈより大きいか等しい。
【００６３】
式（３）：候補極大値Ｆ（ｋ−１）が発生した後、（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）回連続で力データが増えたことがない。
【００６４】
式（４）：候補極大値Ｆ（ｋ−１）と候補極大値発生後の（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）回目の力データとの差がＦ＿Ｓｌｏｐｅ＿Ｈｉｇｈより大きいか等しい。
【００６５】
以上のような条件を満たしていれば、候補極大値Ｆ（ｋ−１）は極大値に認識される。
【００６６】
（ｂ．２）Ｆ（ｋ）−Ｆ（ｋ−１）＞０の場合、下記の数式（５）〜（８）を同時に満たしていれば、Ｆ（ｋ−１）は極小値と認識される。
【００６７】
Ｆ（ｋ＋ｉ）−Ｆ（ｋ＋ｉ−１）≦０
（ｉ＝−（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＬ），…，−２，−１）
・・・（５）
【００６８】
Ｆ（ｋ−１）−Ｆ（ｋ−１−Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ−ＺｅｒｏＬ）
≦−（Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈ）                            ・・・（６）
【００６９】
Ｆ（ｋ＋ｉ）−Ｆ（ｋ＋ｉ−１）≧０
（ｉ＝０，１，２，…，（Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）−１）
・・・（７）
【００７０】
Ｆ（ｋ−１）−Ｆ（ｋ−１＋Ｆ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈ＋ＺｅｒｏＲ）
≦−（Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈ）                            ・・・（８）
【００７１】
図５に示す場合、候補極値ＥＶ２は極値として認識されない。その理由は、候補極値ＥＶ２の前後の力の変化高さｈ１がＦ＿Ｓｌｏｐｅ＿Ｈｉｇｈを超えるが、候補極値ＥＶ２と候補極値ＥＶ３の間に離散力データ上がり点数ｗ１がＦ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈより少ないからである。同じ理由で候補極値ＥＶ３も極値として認識されない。
【００７２】
また、候補極値ＥＶ８も極値として認識されない。その理由は、候補極値ＥＶ７と候補極値ＥＶ８との間に離散力データ下がり点数ｗ２がＦ＿Ｓｌｏｐｅ＿Ｗｉｄｔｈより大きいが、候補極値ＥＶ８の前後の力の変化高さｈ２がＦ＿Ｓｌｏｐｅ＿Ｈｉｇｈより小さいからである。同じ理由で候補極値ＥＶ７も極値として認識されない。
【００７３】
このように、極値認識手段６１は、極値認識連続個数及び極値認識許容閾値の極値認識パラメータを用いて、例えば極値ＥＶ１、ＥＶ４、ＥＶ５、ＥＶ６を認識する。
【００７４】
次に、力抜け現象の有無を判定するシーケンスについて図４を用いて説明する。
【００７５】
まず、判定手段６２は、判定結果をデフォルト値として「失敗」にする（ステップＳ１０）。
【００７６】
その後、切り出し手段９は、力取得手段２／位置取得手段３により検出された力／位置データ（全体波形）から、検査範囲指定手段８で指定された検査範囲の部分波形を切り出す（ステップＳ１１）。例えば、切り出し手段９は、図２に示す点線枠１２内の部分波形を切り出す。切り出し手段９は、切り出した部分波形のデータを極値認識手段６１へ供給する。
【００７７】
極値認識手段６１は、上記の条件（条件（ａ）、（ｂ）、（ｂ．１）、（ｂ．２）、式（１）〜式（８））に従って、力検出値の部分波形における複数の極値を認識する（ステップＳ１２）。極値認識手段６１は、認識した複数の極値のデータを判定手段６２へ供給する。
【００７８】
次に、判定手段６２は、ステップＳ１２で検知した極値の中に極大値と極小値とが共にあるかどうか（すなわち、「極小値個数≧１＆極大値個数≧１」が成立するか否か）を判断し、どちらか少なくとも一方が無い場合（ステップＳ１３でＮｏ）、検査処理を終了する。また、判定手段６２は、両方が存在している場合（ステップＳ１３でＹｅｓ）、極大値の中の最大値Ｆｍａｘを認識する（ステップＳ１４）。
【００７９】
次に、判定手段６２は、極大値の中の最大値Ｆｍａｘの後に極小値が存在しているかどうかを判断し、存在していない場合（ステップＳ１５でＮｏ）、検査処理を終了し、存在している場合（ステップＳ１５でＹｅｓ）、Ｆｍａｘ後の一番近い極小値を特定し、その結果をＦｐｅａｋｍｉｎとする（ステップＳ１６）。
【００８０】
次に、判定手段６２は、ＦｐｅａｋｍｉｎがＦｍａｘ後の初めの極値であるかを判断し、初めの極値でない場合、つまり、ＦｍａｘとＦｐｅａｋｍｉｎとの間に極大値が存在している場合（ステップＳ１７でＮｏ）、検査処理を終了する。また、判定手段６２は、初めの極値である場合、つまり、極大値の最大値Ｆｍａｘが発生した後次の極値が極小値である場合（ステップＳ１７でＹｅｓ）、ＦｍａｘとＦｐｅａｋｍｉｎとの差を計算し、計算結果をＭａｘＭｉｎＤｉｆｆとする（ステップＳ１８）。
【００８１】
例えば、ワーク、教示点によって力波形のバラつきが発生し、ＭａｘＭｉｎＤｉｆｆの値がばらつくと、図６（ａ）〜（ｇ）に示すように、外れ防止用の爪部４２に欠陥を持つ場合に、力抜け現象（爪部４２が穴部５２に嵌った瞬間急激に力センサ値が一時的に減少する現象）を検知できても、ＭａｘＭｉｎＤｉｆｆの値が小さすぎるので、不良品が発生する。そこで、不良品を判断できると共に、バラつきを考慮した範囲での成否の判定を行うための判定閾値ＦＭａｘｍｉｎを導入する。
【００８２】
すなわち、判定手段６２は、ＭａｘＭｉｎＤｉｆｆを判定閾値ＦＭａｘｍｉｎと比較し、ＭａｘＭｉｎＤｉｆｆが判定閾値ＦＭａｘｍｉｎを超えてない場合（ステップＳ１９でＮｏ）、検査処理を終了する。また、判定手段６２は、ＭａｘＭｉｎＤｉｆｆが判定閾値ＦＭａｘｍｉｎを超えた場合（ステップＳ１９でＹｅｓ）、判定結果を成功とし、組み付け作業を成功と判定する（ステップＳ２０）。
【００８３】
その後、検査手段６の判定手段６２は、例えばステップＳ１０〜ステップＳ２０による判定結果を検査結果として検査出力手段１０及び表示手段１１へ供給する。
【００８４】
このように、図３、図６に示すような外れ防止用の爪部４１、４２がある部品の嵌め込み作業が成功しているのか失敗しているのかを自動的に判定できる。
【００８５】
なお、図４に示す処理では、検査パラメータ指定手段７による指定に必要なパラメータは、例えば、極値認識連続個数、極値認識許容閾値、及び判定閾値である。また、図４に示す処理では、極大値の中の最大値Ｆｍａｘと、Ｆｍａｘが発生した後に一番近い極値が極小値である場合の極小値Ｆｐｅａｋｍｉｎとの差に注目したが、作業に応じて、極大値の中の最大値Ｆｍａｘと、Ｆｍａｘが発生した後にある例えば２番目の極小値との差や、極大値の中の最大値Ｆｍａｘが発生した後にある例えば２番目の極大値と、極大値の中の最大値Ｆｍａｘが発生した後にある例えば３番目の極小値との差などに注目しても良い。
【００８６】
以上のように、実施の形態１では、力波形における作業成否の判定に必要な特定部分（部分波形）を切り出し、部分波形における複数の極値を認識し、選定条件に従って複数の極値の中から検査対象となる極大値と極小値とを選定し、極大値と極小値との差が判定基準を満たすかどうかを判定する。このため、ロボット１の作業位置又はワーク位置がずれても、検査範囲指定手段８で作業成否を判定するための検査範囲を特徴（極値）が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。あるいは、図７に示すように組み付け作業が複雑であり、特定領域以外の力パターンが作業毎に変わることで「挿入力の変化パターン」に注目しているだけでは作業成否の判断が困難である場合でも、検査範囲指定手段８で作業成否を判定するための検査範囲を特徴（極値）が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。したがって、部品の組み付け作業の成否を正しく検査できる。
【００８７】
また、実施の形態１では、力の波形の特徴、すなわち検査範囲の部分波形における極値を認識し、選定条件に従って複数の極値の中から検査対象となる極大値と極小値とを選定し、極大値と極小値との差を判定閾値と比べることにより、作業成否を判定する。これにより、作業成否を正確に判定でき、部品の組み付け作業の成否を正しく検査できる。
【００８８】
また、同時に、不良品が合格になるのを防止することができる。すなわち、検査範囲指定手段８で検査と関係ない部分をできるだけ除外するように検査範囲を指定でき、また、極値の設置時に、極値認識パラメータを用いてノイズによる極値を除去する処理を入れることができる。また、ローパスフィルタでは必要な力波形も除去されてしまう場合があったがそれを回避できる。
【００８９】
また、実施の形態１では、表示手段１１が、図７に示すように、パラメータ設定値、作業動作で検出した力データのグラフ、検査範囲、極値認識結果、認識した特徴点、検査結果などを表示できる。これにより、検査手段番号の選択および検査パラメータの設定をしやすく、検査結果を評価しやすくなる。例えば、図７（ｂ）は、図７（ａ）と比べて、極値認識許容閾値Ｆ＿Ｓｌｏｐｅ＿Ｈｉｇｈが大きく設定されている。つまり、極値認識条件が厳しくなると、認識される極値が少なくなることが分かる。このように、パラメータの設定が検査結果に対する影響が分かりやすいため、検査パラメータ指定手段７でパラメータを明確に指定することが出来ると共に、検査パラメータ設定時間を短縮する効果がある。
【００９０】
実施の形態２．
次に、実施の形態２にかかる検査装置２００について説明する。以下では、実施の形態１と異なる部分を中心に説明する。
【００９１】
検査装置２００は、入力手段２２０をさらに備える。また、検査手段番号選択手段５、検査範囲指定手段８、検査パラメータ指定手段７の作用が実施の形態１と異なる。
【００９２】
すなわち、入力手段２２０は、検査パラメータ指定手段７により指定されるべき選定基準及び判定基準の少なくとも一方を変更するための指示を受け付ける。検査パラメータ指定手段７は、その指示に応じて、選定基準及び判定基準の少なくとも一方を変更する。あるいは、入力手段２２０は、検査範囲指定手段８により指定されるべき検査範囲を変更するための指示を受け付けて検査範囲指定手段８へ供給する。検査範囲指定手段８は、その指示に応じて、検査範囲を変更する。
【００９３】
例えば、検査範囲指定手段８から切り出し手段９に送られる上述の命令のパラメータ（検査処理初めのデータと検査処理終了のデータ）を、例えばコンピュータに接続された手動操作盤またはパソコンからなる入力手段Ｉを介して値を書き換える。
【００９４】
例えば、上述のＦｓＴＢａｔのパラメータの値をＦｓＴＢａｔ（７０，１００）と設定すると、切り出し手段９は、力／位置データ（全体波形）の先頭から最後までの総時間の７０％を超過する地点から１００％の地点までのデータ（部分波形）を切り出す。
【００９５】
このように、実施の形態２によれば、入力手段Ｉからの入力により動作直前に命令のパラメータを指定できるため、動作ごとにきめ細かく設定することができる。
【００９６】
実施の形態３．
次に、実施の形態３にかかる検査装置３００について説明する。以下では、実施の形態１と異なる部分を中心に説明する。
【００９７】
検査装置３００は、点数化手段（評価手段）３３０をさらに備える。点数化手段３３０は、極大値と極小値との差と、判定基準とに基づいて、ロボット１に対する教示点の評価を例えば点数化することで行う。
【００９８】
生産現場でワークを交換した場合などによる再教示が必要な場合、検査手段６による検査結果を用いて、作業の再教示点の良し悪しを点数化する。検査結果の評価指標は検査手段番号選択手段５で指定した番号により異なる。例えば、実施の形態１に挙げた外れ防止用の爪部がある部品の嵌め込み作業に言えば、教示点の評価点数を
教示点評価点数＝（ＭａｘＭｉｎＤｉｆｆ）／（ＦＭａｘｍｉｎ）  ・・・（９）
で計算することができる。
【００９９】
ただし、ＭａｘＭｉｎＤｉｆｆは今回実際に特徴点としたものすなわち最大極大値と極小値との差であり、ＦＭａｘｍｉｎは部品ばらつきを考慮した作業成否判定ための判定閾値である。そうすると、教示点評価点数が１．０の場合は、作業を成功と認識する限界である。作業教示点を上手に教示した場合、嵌め込み作業がうまくできて、教示点評価点数が大きくなる。
【０１００】
例えば、図１０（ａ）は、ワーク交換する前に表示手段１１で検査結果を表示した場合の表示内容例を示す。図１０（ａ）の場合、部品ばらつきを考慮した教示点評価の平均値が３．２である。図１０（ｂ）は、再教示した後に表示手段１１で検査結果を表示した場合の表示内容例を示す。図１０（ｂ）の場合、教示点評価は１．１しかないので、図１０（ａ）の３．２と比べてかなり小さいため、教示点が良くないと判断できる。
【０１０１】
このように、実施の形態３によれば、教示点評価の結果を点数化できるため、以前と同等の教示精度に戻す教示作業時間を短くすることができる。
【０１０２】
また、組み付け作業工程で毎回作業の検査結果も点数化できるので、組み付け作業で完成した製品の品質を評価できる。例えば、実施の形態１で説明した爪部がある部品の嵌め込み作業について、外れ防止用の爪部が非常に重要であるので、例えば外れ防止用の爪部に傷がある為、検査結果の点数が小さい場合には、今回組み付けた製品の品質が良くないと判断できる。
【０１０３】
実施の形態４．
次に、実施の形態４にかかる検査装置１００について説明する。以下では、実施の形態１と異なる点を中心に説明する。
【０１０４】
実施の形態１では検査の対象となる座標軸を１軸で指定したが、実施の形態４では、検査処理で使用する手段の番号と検査の対象となる座標軸を複数で設定する。
【０１０５】
例えば、検査手段番号５は、検査の対象となる座標軸をメイン対象軸及びサブ対象軸で分けて複数指定するとともに、使用する検査手段番号を検査の対象となる座標軸ごとに選択する。
【０１０６】
あるいは、例えば、ロボット１の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【０１０７】
ＦｓＴＡｌｇｏ，メイン対象軸検査手段番号，メイン対象軸，サブ対象軸検査手段番号，サブ対象軸
例えば
ＦｓＴＡｌｇｏ，５１，６，５２，３
と記載し、「５１」は使用する検査手段番号であり、「６」は検査手段「５１」の実行対象（検査対象）となるメイン対象軸はＣ軸を指定する。「５２」はサブ対象軸使用する検査手段番号であり、「３」は検査手段「５２」の実行対象（検査対象）となる軸がＺ軸であることを指定する。
【０１０８】
なお、本実施の形態では、サブ対象軸を一つ軸として指定したが、作業に応じて複数軸として指定しても良い。例えば、ロボットプログラム内で
ＦｓＴＡｌｇｏ，５１，６，５２，３，５３，１
と記載してもよい。
【０１０９】
このように、実施の形態４によれば、１軸の力情報を検査することにより作業成否を判断できない場合にも、複数軸の力情報を検査して作業成否が判断されるように対応できる。例えば、ねじ締め作業の検査の場合には、ネジを締め付ける方向の力及びモーメントに対して同時に検査することができることにより、より正確に作業成否を判断することができる。
【０１１０】
実施の形態５．
次に、実施の形態５にかかる検査装置１００について説明する。以下では、実施の形態１と異なる点を中心に説明する。
【０１１１】
検査範囲指定手段８での地点指定の物理意味が実施の形態１と異なる。
【０１１２】
実施の形態１においては、地点の指定を行っているが、力／位置データの先頭から最後までの総時間を１００％として、それに対する割合で指定している。しかし、組み付け動作途中で速度が変化すると、力波形が変わってしまうため、検査範囲指定手段８で指定した検査範囲が嵌め込み動作に合致しない可能性がある。
【０１１３】
一方、本実施の形態５では、地点の指定を行うが、検査手段番号選択手段５で指定した検査軸の位置データの先頭から最後までの総移動量（指定した軸の位置データ間の移動量絶対値を累積したもの）を１００％として、それに対する割合で指定するものとしている。
【０１１４】
検査の対象となる座標軸の位置データの先頭が０％となり、最後が１００％となる。この実施の形態５によれば、組み付け作業途中で速度が変更された場合や反転動作を含めて検査したい場合にも対応できるため、誤判定を防ぐことができるという効果がある。
【０１１５】
また、組み付け動作途中で異常があったかどうかを検知するために、検査範囲指定手段８で検査終了位置及び検査終了位置変動範囲を指定してもよい。
【０１１６】
例えばロボット１の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【０１１７】
ＦｓＴＢａｔ，７０，１００，３，１２６．５，０．３
【０１１８】
ここで、「ＦｓＴＢａｔ」は、検査処理開始割合および検査処理終了割合を指定するためのロボット言語（命令）で、「３」は、ロボット１で検出した位置データのどの座標軸の値を使用するか（例えばＺ軸の値を使用することを）指定する。「７０，１００」は、ロボット１で検出したＺ軸位置データの先頭から最後までの総移動絶対量の７０％で検査処理開始し、１００％までに終了することを指定する。「，１２６．５，０．３」は検出したＺ軸位置データの最後の値が１２６．５±０．３の範囲にあるか否かによって作業が最後までに終了するかどうかを判断することを指定する。「１２６．５」は、ロボット１で検出したＺ軸位置データの先頭から最後までの総移動絶対量の１００％で有る点のＺ軸位置データであり、「０．３」は、ワークずれ、作業終了位置ずれに対応する位置変動量である。
【０１１９】
例えば、図１１に示すように、グラフの横軸はＺ軸の絶対位置移動量の割合である。
【０１２０】
なお、実施の形態では指定した軸の位置データ間の移動量絶対値を累積した総移動量の割合で検査範囲を指定したが、指定した軸の位置データ間の移動量絶対値を累積した総移動量で指定してもよい。
【０１２１】
このように、実施の形態５によれば、組み付け作業の途中で速度が変更された場合や反転動作を含めて検査したい場合にも検査できる効果がある。
【０１２２】
実施の形態６．
次に、実施の形態６にかかる検査装置１００について説明する。以下では、実施の形態１と異なる点を中心に説明する。
【０１２３】
表示手段１１による表示内容が実施の形態１と異なる。表示手段１１は、図１１（ａ）、（ｂ）に示すように、グラフの縦軸が異なるデータを上下に２つ画面で同時に表示する。横軸はどちらのグラフも同じである。グラフの横軸に使用するデータとして選択可能なデータは、例えばＸ，Ｙ，Ｚ，Ａ，Ｂ，Ｃであり、図１１（ａ）、（ｂ）に示すように、それらの中の１つとして「絶対位置移動量の割合」を選択しても良い。また、グラフ縦軸に表示するデータとして選択可能なデータは、例えばＸ，Ｙ，Ｚ，Ａ，Ｂ，Ｃであり、それらの中の１つとして「位置」又は「検査軸力」を選択しても良いし、図１１（ａ）、（ｂ）に示すように、複数選択もできる。
【０１２４】
例えば、図１１（ａ）、（ｂ）に示すように、グラフの横軸はＺ軸の絶対位置移動量の割合であり、図１１（ｂ）に示すグラフの縦軸はＺ軸の力検出出力（検査軸力）であり、図１１（ａ）に示すグラフの縦軸はＺ軸の検出した位置出力である。Ｐｅｒ１とＰｅｒ２とは検査範囲指定手段８で指定した検査範囲のＺ軸絶対位置移動量の開始割合と終了割合とである。Ｚｐｅｒ１はＺ軸絶対位置移動量の割合がＰｅｒ１であるときのロボット１のＺ軸現在位置であり、Ｚｐｅｒ２はＺ軸絶対位置移動量の割合がＰｅｒ２であるときのロボット１のＺ軸現在位置である。
【０１２５】
このように、本実施の形態６では、検査範囲指定手段８での地点指定が軸の絶対位置移動量の割合である場合に、力検出値と位置検出値とを同時に表示することで、組み付け作業特徴点が発生する実際の作業位置を把握しやすくなるため、検査装置を使いやすくなる効果がある。
【産業上の利用可能性】
【０１２６】
以上のように、本発明にかかる検査装置は、部品の組み付け作業の検査に有用である。
【符号の説明】
【０１２７】
Ｍ  記憶手段
１  ロボット
２  力取得手段
３  位置取得手段
４  取得条件指定手段
５  検査手段番号選択手段
６  検査手段
７  検査パラメータ指定手段
８  検査範囲指定手段
９  切り出し手段
１０  検査出力手段
１１  表示手段
６１  極値認識手段
６２  判定手段
１００、２００、３００  検査装置
２２０  入力手段
３２０  点数化手段
【図１】
0005693359.tif 000002
【図２】
0005693359.tif 000003
【図３】
0005693359.tif 000004
【図４】
0005693359.tif 000005
【図５】
0005693359.tif 000006
【図６】
0005693359.tif 000007
【図７】
0005693359.tif 000008
【図８】
0005693359.tif 000009
【図９】
0005693359.tif 000010
【図１０】
0005693359.tif 000011
【図１１】
0005693359.tif 000012