説明

検査装置及び検査方法

【課題】部品の組み付け作業の成否を正しく検査できる検査装置を得ること。
【解決手段】検査装置は、ロボット先端に作用する力を取得する力取得手段と、ロボット先端の位置を取得する位置取得手段と、前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段とを備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、検査装置及び検査方法に関する。
【背景技術】
【0002】
部品の組み付け作業を行うロボットにおいて、ハンドの先端部に力センサが設けられていて、力センサで検出した力情報を活用して作業の検査を行う方法が提案されている。
【0003】
特許文献1には、コネクタのピン孔にピンを挿入するコネクタ用ピン挿入装置において、ピンに作用する挿入力の変化パターンを基準の変化パターンと比較してピンがピン孔に適正に挿入されたか否かを判定することが記載されている。これにより、特許文献1によれば、ピンの挿入に全く寄与しないアクチュエータなどの構成要素を使用せずにピンの挿入の適否を検査できるので、装置コストを低減できるとされている。
【0004】
特許文献2には、押切り端を有する被圧入部材にプランジャによってワーク部材を圧入する圧入システムにおいて、圧入の終了位置を基点としてその手前の複数の位置を複数のチェックポイントとしてそれぞれ設定し、プランジャによる圧入力が複数のチェックポイントのそれぞれで所定の範囲内にあるか否か判定することが記載されている。これにより、特許文献2によれば、押切り端のバラツキによる判定のバラツキがなくなり、正確な圧入判定が行われるとされている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004−119046号公報
【特許文献2】特開2007−260905号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来の手法では、挿入動作位置がずれたり、ワーク位置がずれる場合やロットの違いにより作用する力の絶対値が異なる場合には、作業の成功を失敗に誤判定してしまい、部品の組み付け作業の成否を正しく検査できない可能性がある。
【0007】
例えば、特許文献1に記載の手法では、ワークの設置位置が上下方向にずれている場合には挿入力のパターンが基準パターンからずれるため、作業成功時も失敗と誤判定する可能性がある。
【0008】
あるいは、例えば、特許文献2に記載の手法では、ワークの設置位置が水平方向にずれている場合や、ロットの違いにより作用する反力の絶対値が異なる場合があり、そうした場合には個々のチェックポイントにおける反力の大きさはあらかじめ測定しておいた値とは大きく異なるため、作業成功時も失敗と誤判定する可能性がある。
【0009】
本発明は、上記に鑑みてなされたものであって、部品の組み付け作業の成否を正しく検査できる検査装置及び検査方法を得ることを目的とする。
【課題を解決するための手段】
【0010】
上述した課題を解決し、目的を達成するために、本発明の1つの側面にかかる検査装置は、ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、ロボット先端に作用する力を取得する力取得手段と、ロボット先端の位置を取得する位置取得手段と、前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段とを備えたことを特徴とする。
【発明の効果】
【0011】
本発明によれば、検査範囲指定手段で作業成否を判定するための検査範囲を特徴(極値)が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。したがって、部品の組み付け作業の成否を正しく検査できる。
【図面の簡単な説明】
【0012】
【図1】図1は、実施の形態1にかかる検査装置の構成を示す図である。
【図2】図2は、実施の形態1にかかる検査装置で検出された力グラフの一例を示す図である。
【図3】図3は、実施の形態1にかかる検査装置の動作を示す図である。
【図4】図4は、実施の形態1にかかる検査装置の動作を示すフローチャートである。
【図5】図5は、実施の形態1における極値認識手段の動作を説明するための図である。
【図6】図6は、実施の形態1にかかる検査装置の動作を示す図である。
【図7】図7は、実施の形態1における表示手段の動作を示す図である。
【図8】図8は、実施の形態2にかかる検査装置の構成を示す図である。
【図9】図9は、実施の形態3にかかる検査装置の構成を示す図である。
【図10】図10は、実施の形態3における表示手段の動作を示す図である。
【図11】図11は、実施の形態6における表示手段の動作を示す図である。
【発明を実施するための形態】
【0013】
以下に、本発明にかかる検査装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0014】
実施の形態1.
実施の形態1にかかる検査装置100について図1を用いて説明する。図1は、検査装置100の構成を示すブロック図である。
【0015】
検査装置100は、ロボット1による部品の組み付け作業(自動組立作業)において、例えば、作業正常完了確認、組み付け不良、ケーブルなどの噛み込みなどを、例えば力センサ2aや位置センサ3aで取得した力の変化に関する情報を用いて自動的に検出する。具体的には、検査装置100は、ロボット1、力取得手段2、位置取得手段3、取得条件指定手段4、検査手段番号選択手段5、検査パラメータ指定手段7、検査範囲指定手段8、切り出し手段9、検査手段6、検査出力手段10、及び表示手段11を備える。
【0016】
ロボット1は、1軸もしくは複数軸のモータ(図示省略)を備えるものであり、その一例として産業用ロボットと呼ばれる6軸垂直多関節ロボット、4軸水平多関節ロボット等がある。
【0017】
力取得手段2では、ロボット1の先端部近辺もしくはロボットが作業する対象に作用する力とモーメントを検出するための力センサ2aが取り付けられている。すなわち、力取得手段2は、力センサ2aで力及びモーメントを検出することにより、ロボット1の先端に作用する力を取得する。力取得手段2は、取得された力を力検出値として、ロボット1及び切り出し手段9経由で検査手段6及び表示手段11へ供給する。
【0018】
力検出値は、力センサ2aが6軸の力センサである場合、3軸方向の力と各軸周りのモーメントであり、力センサ2aが5軸以下の力センサである場合、3軸方向の力と各軸周りのモーメントのうち、計測できるモーメントである。力取得手段2において力センサ2aは例えば軸ごと及びモーメントごとに設けられ、各力センサ2aは、それぞれ力検出値を検査手段6及び表示手段11に送信する。
【0019】
位置取得手段3では、ロボット1を駆動する各軸のモータに対応して、エンコーダやレゾルバなどの各軸のモータ位置を測定する位置センサ3aが取り付けられている。すなわち、位置取得手段3は、位置センサ3aで各軸のモータ位置を検出し座標変換処理で内部的に処理可能な位置に変換することにより、ロボット1の先端の位置を取得する。位置取得手段3は、取得された位置を位置検出値として、ロボット1及び切り出し手段9経由で検査手段6及び表示手段11へ供給する。
【0020】
取得条件指定手段4では、力取得手段2/位置取得手段3による力/位置検出処理で使用するデータのサンプリング周期、検出開始地点、終了地点を指定する。例えばロボット1の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【0021】
FsTCond On,1
【0022】
ここで、「FsTCond On」は検出開始地点を指定するためのロボット言語(命令)で、「1」は検査処理で使用するデータ周期の番号である。例えば、番号が「1」の場合、検査処理で使用するデータ周期はSampTミリ秒である。
【0023】
FsTest On,30
【0024】
ここで、「FsTest On」は動作開始地点からの移動距離の割合で検出開始地点を指定するためのロボット言語(命令)で、「30」は組み付け動作開始から30%の地点で力/位置検出が開始することを指定する。
【0025】
FsTest Off,50
【0026】
ここで、「FsTest Off」は動作開始地点からの移動距離の割合で検出終了地点を指定するためのロボット言語(命令)で、「50」は組み付け動作開始から50%の地点で力/位置検出が終了することを指定する。
【0027】
なお、この実施の形態では動作開始地点からの移動距離の割合で力/位置検出の開始地点及び終了地点を指定したが、動作終了地点までの移動距離の割合、動作開始地点からの移動距離、動作終了地点までの移動距離、動作開始からの経過時間などで指定してもよい。
【0028】
検査手段番号選択手段5は、検査の対象となる座標軸を指定するとともに、ロボット1に行わせる作業の種類に応じて検査手段番号を選択する。検査手段番号は、検査手段6として使用する検査手段を指定するための番号である。すなわち、検査装置100内には検査手段6の候補として複数の検査手段が存在し、検査手段番号選択手段5は、検査手段番号を選択することにより、複数の検査手段から検査手段6として使用する検査手段を指定する。検査手段番号選択手段5は、検査の対象となる座標軸の情報をその指定した検査手段6へ供給するとともに、検査手段番号を検査パラメータ指定手段7へ供給する。
【0029】
例えば、ロボット1に行わせる作業が電機部品の樹脂カバー嵌め込みの場合、検査手段番号選択手段5は、検査手段番号として「51」を選択する。例えば、ロボット1に行わせる作業がコネクタ挿入の場合、検査手段番号選択手段5は、検査手段番号として「52」を選択する。
【0030】
また、例えば、ロボット1に行わせる作業が電機部品の樹脂カバー嵌め込みの場合、例えばロボット1の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【0031】
FsTAlgo,51,3
【0032】
ここで、「FsTAlgo」は検査処理で使用する検査手段を指定するためのロボット言語(命令)で、「51」は使用する検査手段番号であり、「3」は検査手段番号の実行対象(検査対象)となる軸としてZ軸を指定する。
【0033】
このように、ロボット1の軸が複数である場合、作業方向の力情報に限定せずに、組み付け作業の種類に応じて作業成否判断のために力情報の特徴が一番鮮明である軸を選択することができる。これにより、検査の信頼性を高めることができる。
【0034】
検査パラメータ指定手段7は、検査手段番号を検査手段番号選択手段5から受ける。このとき、検査手段番号ごとに検査パラメータの組合せが例えば記憶手段Mに予め格納されており、検査パラメータ指定手段7では、記憶手段Mを参照し、検査手段番号に対応した検査パラメータの組合せを取得する。検査パラメータ指定手段7は、取得した検査パラメータの組合せを使用すべき検査パラメータとして指定して検査手段6へ供給する。
【0035】
なお、この実施の形態では指定した検査手段番号を指定し、その後検査手段番号に対応する検査パラメータを取得して使用すべき検査パラメータとして指定しているが、検査手段に必要なパラメータの値をプログラム命令で直接記載してもよい。
【0036】
検査範囲指定手段8は、切り出し手段9により切り出されるべき検査範囲を指定する。すなわち、検査範囲指定手段8は、検査手段6で例えば嵌め込み作業の成否を判断するために力波形における特徴(極値)を認識させるための検査範囲を指定する。つまり、力取得手段2/位置取得手段3により検出された力/位置検出値の集まりである力/位置データに対して検査手段6で検査すべき検査処理初めのデータと検査処理終了のデータとを指定する。検査処理初めの地点と検査処理終了の地点との指定は、ロボットの直交座標位置で指定することもできるが、組み付け作業で反転動作を含めて検査したい場合は対応出来なくなるため、本実施形態ではロボット1で検出した力/位置データの先頭から最後までの総時間を100%として、それに対する割合で指定する。力取得手段2/位置取得手段3により検出された力/位置データの先頭が0%となり、最後が100%となる。例えばロボット1の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【0037】
FsTBat,70,100
【0038】
ここで、「FsTBat」は検査処理開始割合および検査処理終了割合を指定するためのロボット言語(命令)で、「70,100」は力取得手段2/位置取得手段3により検出された力/位置データの先頭から最後までの総時間の70%で検査処理開始し、100%までに終了することを指定する。
【0039】
切り出し手段9は、力取得手段2により取得された力と位置取得手段3により取得された位置との関係を示す波形から、検査範囲指定手段8により指定された検査範囲の部分波形を切り出す。すなわち、切り出し手段9は、力取得手段2/位置取得手段3により検出された力/位置データから検査範囲指定手段8で指定した検査範囲の部分波形を切り出す。
【0040】
このように、組み付け作業のロボット1に対して力取得手段2/位置取得手段3により検出された力/位置データ(全体波形)において、作業成否判定できる力情報の特徴点がある部分をFsTBatで指定した検査処理範囲(部分波形)内に入れることができる。すなわち、検査と関係ない情報を除外して処理するので、検査処理時間を短縮することができる。また、全範囲検査を行うと類似特徴が見つかるケースがあるが、範囲を絞り込むことでこのような誤判定を防ぐことができる。
【0041】
検査手段6は、検査手段番号選択手段5で検査手段番号を選択することにより指定された検査手段である。検査手段6は、例えば、極値認識手段61及び判定手段62を有する。検査手段6は、検査の対象となる座標軸の情報を検査手段番号選択手段5から受け、使用すべき検査パラメータを検査パラメータ指定手段7から受ける。検査手段6は、検査の対象となる座標軸に対して検査パラメータを用いた検査処理を行い、例えば組み付け作業が成功しているか失敗しているかの判定結果を検査結果として検査出力手段10及び表示手段11へ出力する。検査手段内部の構成および処理手段は検査手段番号ごとに違う。例えば、外れ防止用の爪部がある部品の嵌め込み作業に対応する検査手段の処理手順を後述する。
【0042】
検査出力手段10では、検査手段6での判定結果を用いて、ハンドを開閉させたり、作業終了としてLEDを発光させたりすることなどにより、作業の成功又は失敗を示す信号を出力する。このように、検査手段6による判定結果などの検査結果をI/Oなどを通じて生産管理者や他の制御装置などに知らせることで、組み付け失敗品の発生をリアルタイムに報知することができる。
【0043】
表示手段11では、例えば、力取得手段2/位置取得手段3により検出された力/位置データのグラフ表示と、検査手段6での検査結果と、特徴点の力/位置情報とを表示する。例えば、表示手段11は、力極大値発生時のロボット先端の位置と力の大きさとを表示する。
【0044】
なお、図1において、ロボット1を除く検査手段番号選択手段5、検査パラメータ指定手段7、検査範囲指定手段8、切り出し手段9、検査手段6、検査出力手段10、表示手段11は、例えば1つのコンピュータ(ロボットコントローラ)により構成され、記憶手段Mは、各手段で共有する該コンピュータ内のメモリ(ROM、RAM等を含むものとする)であってもよい。
【0045】
次に、検査装置100の動作について説明する。以下では、外れ防止を目的とした爪部がある部品の嵌め込み作業の自動検査を例に挙げて説明する。
【0046】
組み付け作業検査工程を自動化する前に、検査ための設定をおこなう。具体的には、ロボット1に対して組み付け作業動作を行うプログラムを実行させた後、力取得手段2/位置取得手段3により検出された力/位置データを表示手段11でグラフ表示させる。表示手段11でのグラフおよびその出力値によって、検査手段番号選択手段5、検査パラメータ指定手段7、検査範囲指定手段8に対する設定を行う。つまり、組み付け作業動作を行うロボットプログラムを実行して、ロボット1に対して力取得手段2/位置取得手段3により検出された力/位置データのグラフを確認し、検査範囲を指定し、抽出した力波形の特徴に適応する検査手段番号を選択し、選択した検査手段番号に対応するパラメータを設定する。
【0047】
図2は、嵌め込み作業成功の場合の力検出グラフの一事例である。縦軸は、検出力(検査軸力)であり、横軸は、検査の開始から終了までの時間を100%とした場合の検査の開始からの時間の割合である。図2に示すように、嵌め込み作業に対応する特徴的な力情報の部分は、カバー部40における外れ防止用の爪部41がベース部50における穴部51に嵌る(図3(d)参照)瞬間前後の力情報であり、点線枠12で示した部分である。すなわち、外れ防止用の爪部41が穴部51に嵌る途中で力が増加し(図3(a)、(e)参照)、爪部41が穴部51に嵌る瞬間、検出力がピーク値になる。また、爪部41が穴部51に嵌った直後、検出力が減少し(図3(b)、(f)参照)、極小値になった後に再び増加する(図3(c)、(g)参照)。
【0048】
つまり、外れ防止用の爪部41がある部品の穴部51への嵌め込み作業について、嵌め込み成功の場合は爪部41が穴部51に嵌った瞬間急激に力センサ値が一時的に減少する現象(以後、力抜け現象と呼ぶ)が生じているがことが図2及び図3で分かる。これは、図3に示すように、摩擦と反力との合力を嵌め込み進む軸方向に受けている状態から急に物理的接触を失うため、嵌め込み進む方向に対して力の顕著な変化を生じるというメカニズムであり、同様の機構ならば発生する現象である。
【0049】
そして、図2に示すように、嵌め込みで特徴的な力波形の谷部でこのような現象を抽出するために、検査範囲指定手段8で図2に示す点線枠12を検査範囲として指定する。つまり、検査手段6での検査処理開始の地点Per1と検査処理終了の地点Per2とを順次指定する。検査範囲指定手段8による検査範囲指定の目的は、図2に示すように、全体波形に対して検査を行うと、点線枠12内の部分波形とプロファイルの類似した部分波形が見つかってしまい誤判定が発生する可能性があるので、検査範囲を絞り込むことでそのような誤判定を防ぐことにある。
【0050】
次に、検査手段番号選択手段5で外れ防止用の爪部41がある部品の嵌め込み作業に対応する検査手段を選択する。例えば、検査手段番号に「51」を選択する。検査手段番号「51」は、図3に示すような外れ防止用の爪部41がある部品の嵌め込み作業が成功しているのか失敗しているのかを自動的に判定する検査手段を指定する。
【0051】
検査手段番号51のシーケンスを説明するためのフローチャートを図4に示す。図4を説明する前に、力検出値の波形の極値を認識する極値認識手段61の動作を説明する。実際にはノイズなどの影響で変動している波形を極値と見なしてしまう可能性がある。極値認識手段61は、例えばフィルタを用いたフィルタ処理により力検出値の波形の極値を認識することができるが、フィルタを通すと本来の特徴点が無くなる可能性があったり、判別しにくくなってしまう可能性がある。そこで、極値を精度良く安定的に認識するため、極値認識手段61に対して次のような条件を設定する。
【0052】
(a)すべて前後で力の増減変化がある点、つまり、図5に示すように離散的な力データ点の導関数における変化率の+−の符号が変わる点を候補極値として記録する。例えば図5に示す×点が全部の候補極値EV1〜EV8である。
【0053】
(b)今回の力をF(k)とし、極値認識連続個数をF_Slope_Widthとする。例えば、F_Slope_Widthが3ならば+++−−−か−−−+++となる。判定の途中で0(力の増減無し)があった場合、特定の個数例えば2個まで許容するが、下記の式では幾つ入っても良いものとする。この条件(b)は、下記のように、極大値と認識されるための条件(b.1)と極小値と認識されるための条件(b.2)とを含む。
【0054】
(b.1)F(k)−F(k−1)<0の場合、下記の数式(1)〜(4)を同時に満たしていれば、F(k−1)は極大値と認識される。
【0055】
F(k+i)−F(k+i−1)≧0
(i=−(F_Slope_Width+ZeroL),…,−2,−1)
・・・(1)
【0056】
F(k−1)−F(k−1−F_Slope_Width−ZeroL)
≧F_Slope_High ・・・(2)
【0057】
F(k+i)−F(k+i−1)≦0
(i=1,2,…,(F_Slope_Width+ZeroR)−1)
・・・(3)
【0058】
F(k−1)−F(k−1+F_Slope_Width+ZeroR)
≧F_Slope_High ・・・(4)
【0059】
ただし、ZeroLは極値の力グラフにおける左側で力の増減が無いデータ数であり、ZeroRは極値の力グラフにおける右側で力の増減が無い点である。F_Slope_Highは、極値認識許容閾値であり、極値前後の差が一定値以上である条件を付加できる。この条件により、認めた極値の左右の力波形の傾きを確保することができる。
【0060】
各式の意味は例えば次のようなものである。
【0061】
式(1):候補極大値が、発生前の(F_Slope_Width+ZeroL)回目の力データから候補極大値F(k−1)までに減ったことがない。
【0062】
式(2):候補極大値F(k−1)と候補極大値発生前の(F_Slope_Width+ZeroL)回目の力データとの差がF_Slope_Highより大きいか等しい。
【0063】
式(3):候補極大値F(k−1)が発生した後、(F_Slope_Width+ZeroR)回連続で力データが増えたことがない。
【0064】
式(4):候補極大値F(k−1)と候補極大値発生後の(F_Slope_Width+ZeroR)回目の力データとの差がF_Slope_Highより大きいか等しい。
【0065】
以上のような条件を満たしていれば、候補極大値F(k−1)は極大値に認識される。
【0066】
(b.2)F(k)−F(k−1)>0の場合、下記の数式(5)〜(8)を同時に満たしていれば、F(k−1)は極小値と認識される。
【0067】
F(k+i)−F(k+i−1)≦0
(i=−(F_Slope_Width+ZeroL),…,−2,−1)
・・・(5)
【0068】
F(k−1)−F(k−1−F_Slope_Width−ZeroL)
≦−(F_Slope_High) ・・・(6)
【0069】
F(k+i)−F(k+i−1)≧0
(i=0,1,2,…,(F_Slope_Width+ZeroR)−1)
・・・(7)
【0070】
F(k−1)−F(k−1+F_Slope_Width+ZeroR)
≦−(F_Slope_High) ・・・(8)
【0071】
図5に示す場合、候補極値EV2は極値として認識されない。その理由は、候補極値EV2の前後の力の変化高さh1がF_Slope_Highを超えるが、候補極値EV2と候補極値EV3の間に離散力データ上がり点数w1がF_Slope_Widthより少ないからである。同じ理由で候補極値EV3も極値として認識されない。
【0072】
また、候補極値EV8も極値として認識されない。その理由は、候補極値EV7と候補極値EV8との間に離散力データ下がり点数w2がF_Slope_Widthより大きいが、候補極値EV8の前後の力の変化高さh2がF_Slope_Highより小さいからである。同じ理由で候補極値EV7も極値として認識されない。
【0073】
このように、極値認識手段61は、極値認識連続個数及び極値認識許容閾値の極値認識パラメータを用いて、例えば極値EV1、EV4、EV5、EV6を認識する。
【0074】
次に、力抜け現象の有無を判定するシーケンスについて図4を用いて説明する。
【0075】
まず、判定手段62は、判定結果をデフォルト値として「失敗」にする(ステップS10)。
【0076】
その後、切り出し手段9は、力取得手段2/位置取得手段3により検出された力/位置データ(全体波形)から、検査範囲指定手段8で指定された検査範囲の部分波形を切り出す(ステップS11)。例えば、切り出し手段9は、図2に示す点線枠12内の部分波形を切り出す。切り出し手段9は、切り出した部分波形のデータを極値認識手段61へ供給する。
【0077】
極値認識手段61は、上記の条件(条件(a)、(b)、(b.1)、(b.2)、式(1)〜式(8))に従って、力検出値の部分波形における複数の極値を認識する(ステップS12)。極値認識手段61は、認識した複数の極値のデータを判定手段62へ供給する。
【0078】
次に、判定手段62は、ステップS12で検知した極値の中に極大値と極小値とが共にあるかどうか(すなわち、「極小値個数≧1&極大値個数≧1」が成立するか否か)を判断し、どちらか少なくとも一方が無い場合(ステップS13でNo)、検査処理を終了する。また、判定手段62は、両方が存在している場合(ステップS13でYes)、極大値の中の最大値Fmaxを認識する(ステップS14)。
【0079】
次に、判定手段62は、極大値の中の最大値Fmaxの後に極小値が存在しているかどうかを判断し、存在していない場合(ステップS15でNo)、検査処理を終了し、存在している場合(ステップS15でYes)、Fmax後の一番近い極小値を特定し、その結果をFpeakminとする(ステップS16)。
【0080】
次に、判定手段62は、FpeakminがFmax後の初めの極値であるかを判断し、初めの極値でない場合、つまり、FmaxとFpeakminとの間に極大値が存在している場合(ステップS17でNo)、検査処理を終了する。また、判定手段62は、初めの極値である場合、つまり、極大値の最大値Fmaxが発生した後次の極値が極小値である場合(ステップS17でYes)、FmaxとFpeakminとの差を計算し、計算結果をMaxMinDiffとする(ステップS18)。
【0081】
例えば、ワーク、教示点によって力波形のバラつきが発生し、MaxMinDiffの値がばらつくと、図6(a)〜(g)に示すように、外れ防止用の爪部42に欠陥を持つ場合に、力抜け現象(爪部42が穴部52に嵌った瞬間急激に力センサ値が一時的に減少する現象)を検知できても、MaxMinDiffの値が小さすぎるので、不良品が発生する。そこで、不良品を判断できると共に、バラつきを考慮した範囲での成否の判定を行うための判定閾値FMaxminを導入する。
【0082】
すなわち、判定手段62は、MaxMinDiffを判定閾値FMaxminと比較し、MaxMinDiffが判定閾値FMaxminを超えてない場合(ステップS19でNo)、検査処理を終了する。また、判定手段62は、MaxMinDiffが判定閾値FMaxminを超えた場合(ステップS19でYes)、判定結果を成功とし、組み付け作業を成功と判定する(ステップS20)。
【0083】
その後、検査手段6の判定手段62は、例えばステップS10〜ステップS20による判定結果を検査結果として検査出力手段10及び表示手段11へ供給する。
【0084】
このように、図3、図6に示すような外れ防止用の爪部41、42がある部品の嵌め込み作業が成功しているのか失敗しているのかを自動的に判定できる。
【0085】
なお、図4に示す処理では、検査パラメータ指定手段7による指定に必要なパラメータは、例えば、極値認識連続個数、極値認識許容閾値、及び判定閾値である。また、図4に示す処理では、極大値の中の最大値Fmaxと、Fmaxが発生した後に一番近い極値が極小値である場合の極小値Fpeakminとの差に注目したが、作業に応じて、極大値の中の最大値Fmaxと、Fmaxが発生した後にある例えば2番目の極小値との差や、極大値の中の最大値Fmaxが発生した後にある例えば2番目の極大値と、極大値の中の最大値Fmaxが発生した後にある例えば3番目の極小値との差などに注目しても良い。
【0086】
以上のように、実施の形態1では、力波形における作業成否の判定に必要な特定部分(部分波形)を切り出し、部分波形における複数の極値を認識し、選定条件に従って複数の極値の中から検査対象となる極大値と極小値とを選定し、極大値と極小値との差が判定基準を満たすかどうかを判定する。このため、ロボット1の作業位置又はワーク位置がずれても、検査範囲指定手段8で作業成否を判定するための検査範囲を特徴(極値)が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。あるいは、図7に示すように組み付け作業が複雑であり、特定領域以外の力パターンが作業毎に変わることで「挿入力の変化パターン」に注目しているだけでは作業成否の判断が困難である場合でも、検査範囲指定手段8で作業成否を判定するための検査範囲を特徴(極値)が含まれるように広く指定できるので、作業成否を判断するための力波形の特徴を確実に含めた検査範囲の部分波形に対して部品の組み付け作業の成否を判定できる。したがって、部品の組み付け作業の成否を正しく検査できる。
【0087】
また、実施の形態1では、力の波形の特徴、すなわち検査範囲の部分波形における極値を認識し、選定条件に従って複数の極値の中から検査対象となる極大値と極小値とを選定し、極大値と極小値との差を判定閾値と比べることにより、作業成否を判定する。これにより、作業成否を正確に判定でき、部品の組み付け作業の成否を正しく検査できる。
【0088】
また、同時に、不良品が合格になるのを防止することができる。すなわち、検査範囲指定手段8で検査と関係ない部分をできるだけ除外するように検査範囲を指定でき、また、極値の設置時に、極値認識パラメータを用いてノイズによる極値を除去する処理を入れることができる。また、ローパスフィルタでは必要な力波形も除去されてしまう場合があったがそれを回避できる。
【0089】
また、実施の形態1では、表示手段11が、図7に示すように、パラメータ設定値、作業動作で検出した力データのグラフ、検査範囲、極値認識結果、認識した特徴点、検査結果などを表示できる。これにより、検査手段番号の選択および検査パラメータの設定をしやすく、検査結果を評価しやすくなる。例えば、図7(b)は、図7(a)と比べて、極値認識許容閾値F_Slope_Highが大きく設定されている。つまり、極値認識条件が厳しくなると、認識される極値が少なくなることが分かる。このように、パラメータの設定が検査結果に対する影響が分かりやすいため、検査パラメータ指定手段7でパラメータを明確に指定することが出来ると共に、検査パラメータ設定時間を短縮する効果がある。
【0090】
実施の形態2.
次に、実施の形態2にかかる検査装置200について説明する。以下では、実施の形態1と異なる部分を中心に説明する。
【0091】
検査装置200は、入力手段220をさらに備える。また、検査手段番号選択手段5、検査範囲指定手段8、検査パラメータ指定手段7の作用が実施の形態1と異なる。
【0092】
すなわち、入力手段220は、検査パラメータ指定手段7により指定されるべき選定基準及び判定基準の少なくとも一方を変更するための指示を受け付ける。検査パラメータ指定手段7は、その指示に応じて、選定基準及び判定基準の少なくとも一方を変更する。あるいは、入力手段220は、検査範囲指定手段8により指定されるべき検査範囲を変更するための指示を受け付けて検査範囲指定手段8へ供給する。検査範囲指定手段8は、その指示に応じて、検査範囲を変更する。
【0093】
例えば、検査範囲指定手段8から切り出し手段9に送られる上述の命令のパラメータ(検査処理初めのデータと検査処理終了のデータ)を、例えばコンピュータに接続された手動操作盤またはパソコンからなる入力手段Iを介して値を書き換える。
【0094】
例えば、上述のFsTBatのパラメータの値をFsTBat(70,100)と設定すると、切り出し手段9は、力/位置データ(全体波形)の先頭から最後までの総時間の70%を超過する地点から100%の地点までのデータ(部分波形)を切り出す。
【0095】
このように、実施の形態2によれば、入力手段Iからの入力により動作直前に命令のパラメータを指定できるため、動作ごとにきめ細かく設定することができる。
【0096】
実施の形態3.
次に、実施の形態3にかかる検査装置300について説明する。以下では、実施の形態1と異なる部分を中心に説明する。
【0097】
検査装置300は、点数化手段(評価手段)330をさらに備える。点数化手段330は、極大値と極小値との差と、判定基準とに基づいて、ロボット1に対する教示点の評価を例えば点数化することで行う。
【0098】
生産現場でワークを交換した場合などによる再教示が必要な場合、検査手段6による検査結果を用いて、作業の再教示点の良し悪しを点数化する。検査結果の評価指標は検査手段番号選択手段5で指定した番号により異なる。例えば、実施の形態1に挙げた外れ防止用の爪部がある部品の嵌め込み作業に言えば、教示点の評価点数を
教示点評価点数=(MaxMinDiff)/(FMaxmin) ・・・(9)
で計算することができる。
【0099】
ただし、MaxMinDiffは今回実際に特徴点としたものすなわち最大極大値と極小値との差であり、FMaxminは部品ばらつきを考慮した作業成否判定ための判定閾値である。そうすると、教示点評価点数が1.0の場合は、作業を成功と認識する限界である。作業教示点を上手に教示した場合、嵌め込み作業がうまくできて、教示点評価点数が大きくなる。
【0100】
例えば、図10(a)は、ワーク交換する前に表示手段11で検査結果を表示した場合の表示内容例を示す。図10(a)の場合、部品ばらつきを考慮した教示点評価の平均値が3.2である。図10(b)は、再教示した後に表示手段11で検査結果を表示した場合の表示内容例を示す。図10(b)の場合、教示点評価は1.1しかないので、図10(a)の3.2と比べてかなり小さいため、教示点が良くないと判断できる。
【0101】
このように、実施の形態3によれば、教示点評価の結果を点数化できるため、以前と同等の教示精度に戻す教示作業時間を短くすることができる。
【0102】
また、組み付け作業工程で毎回作業の検査結果も点数化できるので、組み付け作業で完成した製品の品質を評価できる。例えば、実施の形態1で説明した爪部がある部品の嵌め込み作業について、外れ防止用の爪部が非常に重要であるので、例えば外れ防止用の爪部に傷がある為、検査結果の点数が小さい場合には、今回組み付けた製品の品質が良くないと判断できる。
【0103】
実施の形態4.
次に、実施の形態4にかかる検査装置100について説明する。以下では、実施の形態1と異なる点を中心に説明する。
【0104】
実施の形態1では検査の対象となる座標軸を1軸で指定したが、実施の形態4では、検査処理で使用する手段の番号と検査の対象となる座標軸を複数で設定する。
【0105】
例えば、検査手段番号5は、検査の対象となる座標軸をメイン対象軸及びサブ対象軸で分けて複数指定するとともに、使用する検査手段番号を検査の対象となる座標軸ごとに選択する。
【0106】
あるいは、例えば、ロボット1の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【0107】
FsTAlgo,メイン対象軸検査手段番号,メイン対象軸,サブ対象軸検査手段番号,サブ対象軸
例えば
FsTAlgo,51,6,52,3
と記載し、「51」は使用する検査手段番号であり、「6」は検査手段「51」の実行対象(検査対象)となるメイン対象軸はC軸を指定する。「52」はサブ対象軸使用する検査手段番号であり、「3」は検査手段「52」の実行対象(検査対象)となる軸がZ軸であることを指定する。
【0108】
なお、本実施の形態では、サブ対象軸を一つ軸として指定したが、作業に応じて複数軸として指定しても良い。例えば、ロボットプログラム内で
FsTAlgo,51,6,52,3,53,1
と記載してもよい。
【0109】
このように、実施の形態4によれば、1軸の力情報を検査することにより作業成否を判断できない場合にも、複数軸の力情報を検査して作業成否が判断されるように対応できる。例えば、ねじ締め作業の検査の場合には、ネジを締め付ける方向の力及びモーメントに対して同時に検査することができることにより、より正確に作業成否を判断することができる。
【0110】
実施の形態5.
次に、実施の形態5にかかる検査装置100について説明する。以下では、実施の形態1と異なる点を中心に説明する。
【0111】
検査範囲指定手段8での地点指定の物理意味が実施の形態1と異なる。
【0112】
実施の形態1においては、地点の指定を行っているが、力/位置データの先頭から最後までの総時間を100%として、それに対する割合で指定している。しかし、組み付け動作途中で速度が変化すると、力波形が変わってしまうため、検査範囲指定手段8で指定した検査範囲が嵌め込み動作に合致しない可能性がある。
【0113】
一方、本実施の形態5では、地点の指定を行うが、検査手段番号選択手段5で指定した検査軸の位置データの先頭から最後までの総移動量(指定した軸の位置データ間の移動量絶対値を累積したもの)を100%として、それに対する割合で指定するものとしている。
【0114】
検査の対象となる座標軸の位置データの先頭が0%となり、最後が100%となる。この実施の形態5によれば、組み付け作業途中で速度が変更された場合や反転動作を含めて検査したい場合にも対応できるため、誤判定を防ぐことができるという効果がある。
【0115】
また、組み付け動作途中で異常があったかどうかを検知するために、検査範囲指定手段8で検査終了位置及び検査終了位置変動範囲を指定してもよい。
【0116】
例えばロボット1の動作を記述するロボットプログラム内で下記のような命令を実行して指定する。
【0117】
FsTBat,70,100,3,126.5,0.3
【0118】
ここで、「FsTBat」は、検査処理開始割合および検査処理終了割合を指定するためのロボット言語(命令)で、「3」は、ロボット1で検出した位置データのどの座標軸の値を使用するか(例えばZ軸の値を使用することを)指定する。「70,100」は、ロボット1で検出したZ軸位置データの先頭から最後までの総移動絶対量の70%で検査処理開始し、100%までに終了することを指定する。「,126.5,0.3」は検出したZ軸位置データの最後の値が126.5±0.3の範囲にあるか否かによって作業が最後までに終了するかどうかを判断することを指定する。「126.5」は、ロボット1で検出したZ軸位置データの先頭から最後までの総移動絶対量の100%で有る点のZ軸位置データであり、「0.3」は、ワークずれ、作業終了位置ずれに対応する位置変動量である。
【0119】
例えば、図11に示すように、グラフの横軸はZ軸の絶対位置移動量の割合である。
【0120】
なお、実施の形態では指定した軸の位置データ間の移動量絶対値を累積した総移動量の割合で検査範囲を指定したが、指定した軸の位置データ間の移動量絶対値を累積した総移動量で指定してもよい。
【0121】
このように、実施の形態5によれば、組み付け作業の途中で速度が変更された場合や反転動作を含めて検査したい場合にも検査できる効果がある。
【0122】
実施の形態6.
次に、実施の形態6にかかる検査装置100について説明する。以下では、実施の形態1と異なる点を中心に説明する。
【0123】
表示手段11による表示内容が実施の形態1と異なる。表示手段11は、図11(a)、(b)に示すように、グラフの縦軸が異なるデータを上下に2つ画面で同時に表示する。横軸はどちらのグラフも同じである。グラフの横軸に使用するデータとして選択可能なデータは、例えばX,Y,Z,A,B,Cであり、図11(a)、(b)に示すように、それらの中の1つとして「絶対位置移動量の割合」を選択しても良い。また、グラフ縦軸に表示するデータとして選択可能なデータは、例えばX,Y,Z,A,B,Cであり、それらの中の1つとして「位置」又は「検査軸力」を選択しても良いし、図11(a)、(b)に示すように、複数選択もできる。
【0124】
例えば、図11(a)、(b)に示すように、グラフの横軸はZ軸の絶対位置移動量の割合であり、図11(b)に示すグラフの縦軸はZ軸の力検出出力(検査軸力)であり、図11(a)に示すグラフの縦軸はZ軸の検出した位置出力である。Per1とPer2とは検査範囲指定手段8で指定した検査範囲のZ軸絶対位置移動量の開始割合と終了割合とである。Zper1はZ軸絶対位置移動量の割合がPer1であるときのロボット1のZ軸現在位置であり、Zper2はZ軸絶対位置移動量の割合がPer2であるときのロボット1のZ軸現在位置である。
【0125】
このように、本実施の形態6では、検査範囲指定手段8での地点指定が軸の絶対位置移動量の割合である場合に、力検出値と位置検出値とを同時に表示することで、組み付け作業特徴点が発生する実際の作業位置を把握しやすくなるため、検査装置を使いやすくなる効果がある。
【産業上の利用可能性】
【0126】
以上のように、本発明にかかる検査装置は、部品の組み付け作業の検査に有用である。
【符号の説明】
【0127】
M 記憶手段
1 ロボット
2 力取得手段
3 位置取得手段
4 取得条件指定手段
5 検査手段番号選択手段
6 検査手段
7 検査パラメータ指定手段
8 検査範囲指定手段
9 切り出し手段
10 検査出力手段
11 表示手段
61 極値認識手段
62 判定手段
100、200、300 検査装置
220 入力手段
320 点数化手段

【特許請求の範囲】
【請求項1】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査装置であって、
ロボット先端に作用する力を取得する力取得手段と、
ロボット先端の位置を取得する位置取得手段と、
前記取得された力と前記取得された位置との関係を示す波形から検査範囲の部分波形を切り出す切り出し手段と、
前記切り出し手段により切り出されるべき検査範囲を指定する検査範囲指定手段と、
前記切り出し手段により切り出された部分波形における複数の極値を認識する極値認識手段と、
前記認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定し、前記極大値と前記極小値との差が判定基準を満たすかどうかを判定する判定手段と、
前記判定手段に用いられるべき選定基準及び判定基準を指定する検査パラメータ指定手段と、
前記判定手段による判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力手段と、
を備えたことを特徴とする検査装置。
【請求項2】
前記検査範囲指定手段により指定されるべき検査範囲を変更するための、あるいは、前記検査パラメータ指定手段により指定されるべき選定基準及び判定基準の少なくとも一方を変更するための指示を受け付ける入力手段をさらに備えた
ことを特徴とする請求項1に記載の検査装置。
【請求項3】
前記極大値と前記極小値との差と、前記判定基準とに基づいて、ロボットに対する教示点の評価を行う評価手段をさらに備えた
ことを特徴とする請求項1に記載の検査装置。
【請求項4】
検査の対象となる座標軸をメイン対象軸及びサブ対象軸で分けて複数指定するとともに、使用する検査手段番号を検査の対象となる座標軸ごとに選択する手段をさらに備えた
ことを特徴とする請求項1に記載の検査装置。
【請求項5】
前記検査範囲指定手段は、前記切り出し手段により切り出されるべき検査範囲を、検査の対象となる座標軸の位置データの先頭から最後までの総移動量に対する割合で指定する
ことを特徴とする請求項1に記載の検査装置。
【請求項6】
ロボットによる部品の組み付け作業が成功しているのか失敗しているのかを検査する検査方法であって、
ロボット先端に作用する力とロボット先端の位置との関係を示す波形から切り出されるべき検査範囲を指定する指定ステップと、
前記波形から前記指定ステップで指定された検査範囲の部分波形を切り出す切り出しステップと、
前記切り出しステップで切り出された部分波形における複数の極値を認識する極値認識ステップと、
前記極値認識ステップで認識された複数の極値の中から選定基準に従って検査対象となる極大値と極小値とを選定する選定ステップと、
前記選定ステップで選定された極大値と極小値との差が判定基準を満たすかどうかを判定する判定ステップと、
前記判定ステップでの判定結果に応じて、作業の成功又は失敗を示す信号を出力する検査出力ステップと、
を備えたことを特徴とする検査方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate