図1は、実施例1に係る作業装置100の全体構成を説明するための図である。図1で例示するように、作業装置100は、作業ロボット10、コントローラ20、カメラ30、判定装置40などを備える。
作業ロボット10は、ロボットハンド11、センサ12などを備える。ロボットハンド11は、対象物に対して所定の作業を行う装置である。センサ12は、ロボットハンド11の力、変位等を検出するセンサであり、一例として、歪ゲージ、力覚センサ、加速度センサなどである。本実施例においては、複数のセンサ12が備わっている。コントローラ20は、所定のタイミングで作業ロボット10に作業指示を行う制御装置である。カメラ30は、作業ロボット10の作業を撮像する装置である。本実施例においては、複数のカメラ30が備わっている。
図2(a)〜図2(d)および図3(a)〜図3(c)は、作業ロボット10の一連の動作の一例を例示する図である。図2(a)で例示するように、作業ロボット10は、ロボットハンド11として1組のロボットハンド11a,11bを備え、複数のセンサ12として歪ゲージ12a,12bを備えている。例えば、ロボットハンド11aの先端部分に歪ゲージ12aが設けられ、ロボットハンド11bの先端部分に歪ゲージ12bが設けられている。まず、ロボットハンド11a,11bは、コネクタ13に勘合するケーブルコネクタ14に向かって移動する(第1移動工程)。
次に、図2(b)で例示するように、ロボットハンド11a,11bは、ケーブルコネクタ14を把持する(把持工程)。次に、図2(c)で例示するように、ロボットハンド11a,11bは、ケーブルコネクタ14を持ち上げることによって、コネクタ13から離し、他のコネクタに向かってケーブルコネクタ14を移動させる(第2移動工程)。次に、図2(d)で例示するように、ロボットハンド11a,11bは、他のコネクタ15にケーブルコネクタ14を差し込む(差込工程)。
次に、図3(a)で例示するように、ロボットハンド11a,11bは、ケーブルコネクタ14の把持を解除する(解除工程)。次に、図3(b)で例示するように、ロボットハンド11a,11bは、ケーブルコネクタ14から離れる方向に移動する(第3移動工程)。最後に、図3(c)で例示するように、ロボットハンド11a,11bは、ケーブルコネクタ14をコネクタ15に差し込む(差込工程)。図3(c)の例では、ロボットハンド11bがケーブルコネクタ14をコネクタ15に差し込んでいる。以上の工程によって、作業が完了する。
ここで、センサ12の検出結果の時系列データの統計的変化量(以下、過渡判別量と称する)の算出手順の一例について説明する。例えば、図4で例示するように、時系列のセンサ信号上の所定のサンプリング周期の各データ点において、その前後の区間の「平均の差」と「標準偏差の差」とを合算することによって過渡判別量を求めることができる。この時の前後の区間(窓幅)は、固定されている。例えば、センサ12の測定データの過渡判別量の加算平均を取り、所定の閾値で切ることにより、過渡判別量が大きい部分は過渡域とし、小さい部分は定常域として弁別を行うことができる。過渡域とは、作業ロボット10が対象物に対して作業を行う時間区間のことである。定常域とは、作業ロボット10が対象物に対する作業を行わない時間区間のことである。ロボットハンド11の単純移動などは、定常域に含まれる。ロボットハンド11による組立作業などは、過渡域に含まれる。
例えば、過渡判別量の大小に基づいて動作状態を定常域/過渡域に自動弁別することができる。しかしながら、この場合、センサ12の測定データ値やその変化が小さな動作(過渡判別量の小さな部分)を過渡域として検出することは困難である。一方、そのような過渡判別量の小さい部分まで単純に過渡域として検出しようとすると、過渡域が増えて識別処理の計算量が無駄に増大するおそれがある。過渡判別量あるいはその閾値を算出する際、算出パラメータが事前に固定されていると、最適な区間弁別を実行することは困難である。この点においても、事前に設定してある閾値では、動作全体の中で相対的に小さな動作が過渡域としての検出から漏れる場合がある。
また、図5(a)で例示するように、複数の異なった作業が連続している場合、過渡判別量の大小だけでは各動作を正しく切り分けて弁別することは困難である。例えば、コネクタの差し込み作業において、(1)コネクタの接触、(2)接触しながらのコネクタ挿入、(3)差し込み完了の際の突き当てと言うように、細かい作業内容は変化して行く。一方で、過渡判別量には小さな変化しか現れない。なお、(1)〜(3)の作業は、図2(d)〜図3(c)の作業に対応する。
したがって、図5(b)で例示するように、コネクタ差し込み作業全体が一つの過渡域として弁別される場合がある。異常判断システムでは、過渡域単位で異常スコアの累積を行っており、異種の動作を混合して異常判断するより、個々の動作ごとに判断を行った方が判断の精度が高くなる。従って、図5(c)で例示するように、個々の動作単位で過渡域の弁別を行うことが要求される。そこで、本実施例に係る作業装置100は、過渡判別量の大小以外の指標を用いて、高い精度で作業区間の弁別を行う。
図6は、判定装置40のブロック図である。図6で例示するように、判定装置40は、データ格納部50、過渡判別量算出部60、弁別部70、良否判定部80および出力部90を備える。過渡判別量算出部60は、窓幅設定部61、構成要素算出部62、および構成比率算出部63を備える。弁別部70は、構成比率取得部71および区間算出部72を備える。良否判定部80は、識別器作成部81および状態判定部82を備える。
データ格納部50は、データを一時的に格納する。定常域および過渡域の弁別時には、データ格納部50は、学習用OKデータを一時的に格納する。学習用OKデータとは、予め作業ロボット10に作業を行わせ、目視等で作業状況が「正常」と判定された場合の各センサ12の時系列の出力値波形(測定データ)である。作業ロボット10の作業の良否判定時には、データ格納部50は、センサ12の出力値の時系列の出力値波形(測定データ)を一時的に格納する。
窓幅設定部61は、データ格納部50に格納された測定データに対して所定のサンプリング周期で注目点を設定し、当該注目点に対して予め決定した窓幅を設定する。
構成要素算出部62は、設定された各窓において、測定データの時系列の統計的変化量の構成要素を算出する。図7(a)は、設定された窓を例示する図である。図7(b)で例示するように、例えば、構成要素算出部62は、設定された各窓において、注目点よりも前(過去)の出力値の平均値ei1および標準偏差σi1を算出し、注目点よりも後(未来)の出力値の平均値ei2および標準偏差σi2を算出する。「i」は、i番目の窓を意味する。次に、構成要素算出部62は、平均値ei1,ei2および標準偏差σi1,σi2から過渡判別量Eiを算出する。過渡判別量Eiは、一例として、下記式(1)で表すことができる。また、Δeiは、平均の変化量であって、下記式(2)で表すことができる。Δσiは、標準偏差の変化量であって、下記式(3)で表すことができる。
Ei=(Δei 2+Δσi 2)0.5 (1)
Δei=|ei2−ei1| (2)
Δσ=|σi2−σi1| (3)
次に、構成要素算出部62は、図7(c)で例示するように、所定の時間間隔後の時刻を次の注目点に設定し、図7(a)および図7(b)で説明した手順で次の窓の各構成要素を算出する。図7(a)〜図7(c)の手順を繰り返すことにより、各構成要素の時系列データを得ることができる。
次に、構成比率算出部63は、構成要素の比率を算出する。構成要素の比率として、過渡判別量に対する平均の変化量の比率または過渡判別量に対する標準偏差の変化量の比率を用いることができる。本実施例においては、一例として、構成比率算出部63は、過渡判別量に対する平均の変化量の比率を算出する。構成要素の比率miは、下記式(4)で表すことができる。
mi=(平均の変化量)i/(過渡判別量)i (4)
図8(a)は、過渡判別量Eの時系列データを例示する。ロボットハンド11が作業を行うと、過渡判別量Eが大きくなる。そこで、過渡判別量Eに閾値を設け、過渡判別量Eが当該閾値以上となる区間を過渡域として弁別する手法が考えられる。しかしながら、この場合、図8(a)の領域Aのように、過渡判別量Eの絶対値は小さいが過渡判別量Eに変化が表れている領域を過渡域として抽出することが困難となる。すなわち、過渡域の弁別漏れが生じ得る。
具体的には、「平均の変化」と「標準偏差の変化」とを足し合わせた合計値が一定であっても、その構成要素(「平均の変化」と「標準偏差の変化」)の比率は作業の推移に応じて変化しているケースもある。例えば、コネクタ差込作業において、最初の接触時には「平均の変化」が大きくなり、接触しながら差し込みを行う最中には「標準偏差の変化」が中心となり、最後に突き当たった際には再び「平均の変化」が大きくなると考えられる。このような比率の変化を基準にすれば、過渡域を作業内容ごとに更に細かく分割することが可能である。
そこで、本実施例においては、構成要素の比率に着目する。構成比率取得部71は、構成比率算出部63から、各窓の構成要素の比率mを取得する。図8(b)は、比率mの時系列データを例示する。図8(b)で例示するように、過渡判別量Eに大きい変化が現れると、領域Bのように比率mに変化が現れる。また、領域Cのように、過渡判別量の絶対値が小さくても、「平均の変化」と「標準偏差の変化」との比率が変化した場合に比率mに大きい変化が現れる。
そこで、区間算出部72は、比率mの変化点を過渡域の境界として検出する。例えば、区間算出部72は、平均的な比率からの乖離度を利用する。具体的には、区間算出部72は、平均値や移動平均値からの比率mの乖離度が閾値以上となる区間を過渡域として抽出する。図8(b)では、点線で移動平均値が表されている。このように過渡域を抽出することで、図8(c)で例示するように、過渡判別量の大小だけでは1つの過渡域としてのみ抽出される区間が、複数の過渡域として抽出することができるようになる。すなわち、過渡域の弁別精度が向上する。
図9は、判定装置40が実行する処理を例示するフローチャートである。図9で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS1)。次に、窓幅設定部61は、データ格納部50に格納された測定データに所定のサンプリング周期で注目点を設定し、各注目点に対して予め決定した窓幅の窓を設定する(ステップS2)。
次に、構成要素算出部62は、設定された各窓において、測定データの統計的変化量の構成要素を算出する(ステップS3)。一例として、構成要素算出部62は、各窓における平均値ei1ei2、標準偏差σi1,σi2および過渡判別量Eiを算出する。次に、構成比率算出部63は、比率miを算出する(ステップS4)。次に、構成比率取得部71は、構成比率算出部63から、各窓の構成要素の比率mを取得する(ステップS5)。次に、区間算出部72は、比率mの変化点を過渡域の境界として検出する(ステップS6)。一例として、区間算出部72は、比率mの移動平均値からの乖離度が閾値以上となる区間を過渡域として抽出し、それ以外を定常域として抽出する。以上の処理により、定常域と過渡域の弁別が完了する。
識別器作成部81は、定常域については、ロボットハンド11によって複数回の正常作業が行われた場合の学習用OKデータの平均値±3σの範囲を基準範囲として算出する。また、識別器作成部81は、過渡域については、識別器を作成する。識別器とは、各過渡域の作業状況の良否を判定する個別の主体のことであり、例えば、SVM(Support Vector Machine)識別器である。識別器を設けることは、各過渡域の作業良否を判定するための個別の基準(基準範囲)を作成することと同義である。各識別器は、例えば、各過渡域におけるセンサ12の事前測定データから抽出される複数の特徴量の相関関係に対して個別の基準を有している。特徴量として、例えば、振幅値、微分波形、積分波形、周波数などが挙げられる。
作業ロボット10の作業の良否判定時には、状態判定部82は、センサ12の出力値の時系列の出力値波形(測定データ)について、各定常域については3σ値に基づく良否判定を行う。すなわち、状態判定部82は、測定データの出力値が上述した±3σの範囲内にあれば正常と判定し、測定データの出力値が±3σの範囲外にあれば異常と判定する。また、状態判定部82は、良否判定の結果を異常スコアとして数値化する。また、状態判定部82は、各過渡域については識別器を用いた良否判定を行う。すなわち、状態判定部82は、測定データの出力値が識別器の基準範囲内にあれば正常と判定し、測定データの出力値が当該基準範囲外にあれば異常と判定する。また、状態判定部82は、良否判定の結果を異常スコアとして数値化する。例えば、状態判定部82は、これらの異常スコアの累積値が閾値を超えた場合に、作業ロボット10の作業が異常であると判定する。出力部90は、状態判定部82の判定結果を出力する。
本実施例によれば、センサ12の検出結果の時系列データの統計的変化量の構成要素の比率を用いて、定常域および過渡域の弁別が行われる。この場合、当該統計的変化量の大小のみに基づく弁別と比較して、過渡域をより細かく設定することができる。例えば、コネクタ差し込み作業において、最初の接触、それに続く挿入、最後の突き当てを別々の過渡域として弁別することが可能になる。それにより、高い精度で作業区間の弁別を行うことができる。
本実施例においては、構成要素算出部62が、対象物に対して作業を行う作業部の力または変位を検出するセンサの時系列出力値の統計的変化量を構成する複数の構成要素の比率を算出する算出部の一例として機能する。区間算出部72が、複数の構成要素の比率に基づいて、作業部が対象物に対して作業を行う過渡域と作業部が対象物に対して作業を行わない定常域とを弁別する弁別部の一例として機能する。
実施例1では、構成要素の比率に着目したが、他の指標に着目してもよい。実施例2では、過渡判別量Eに変化(増減)が生じている部分を過渡域の境界として検出する例について説明する。
図10は、実施例2に係る判定装置40aのブロック図である。図10で例示するように、判定装置40aが図6の判定装置40と異なる点は、過渡判別量算出部60の代わりに過渡判別量算出部60aが備わり、弁別部70の代わりに弁別部70aが備わっている点である。過渡判別量算出部60aが過渡判別量算出部60と異なる点は、構成比率算出部63の代わりに増減値算出部64が備わっている点である。弁別部70aが弁別部70と異なる点は、構成比率取得部71の代わりに増減値取得部73が備わっている点である。実施例1と同じ符号を付した構成要素は、実施例1と同様の機能を果たす。以下、実施例1と異なる点について説明する。
増減値算出部64は、過渡判別量Eの増減値を算出する。本実施例においては、一例として、増減値算出部64は、過渡判別量Eの微分値、平滑化微分値等を算出する。図11(a)は、過渡判別量Eの時系列データを例示する。図8(a)で説明したように、領域Aのように、過渡判別量の絶対値は小さいが過渡判別量に変化が表れている領域を過渡域として抽出することが困難となる。すなわち、過渡域の弁別漏れが生じ得る。
そこで、本実施例においては、過渡判別量Eの増減値に着目する。増減値取得部73は、増減値算出部64から、過渡判別量Eの微分値Dを取得する。図11(b)は、微分値の時系列データを例示する。図11(b)で例示するように、過渡判別量Eに大きい変化が現れると、微分値Dに変化が現れる。また、図11(a)の領域Aのように、過渡判別量Eの絶対値が小さくても、増加度が大きければ微分値Dに変化が現れる。
そこで、区間算出部72は、微分値Dの変化点を過渡域の境界として検出する。例えば、区間算出部72は、正領域とそれに連なる負領域の面積が閾値を超える組み合わせを過渡域として抽出する。また、区間算出部72は、過渡判別量Eの谷の部分で過渡域の分割を行ってもよい。このように過渡域を抽出することで、図11(c)で例示するように、過渡判別量の大小だけでは1つの過渡域としてのみ抽出される区間が、複数の過渡域として抽出することができるようになる。すなわち、過渡域の弁別精度が向上する。
図12は、判定装置40aが実行する処理を例示するフローチャートである。図12で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS11)。次に、窓幅設定部61は、データ格納部50に格納された測定データに所定のサンプリング周期で注目点を設定し、当該注目点に対して予め決定した窓幅の窓を設定する(ステップS12)。
次に、構成要素算出部62は、設定された各窓において、測定データの統計的変化量の構成要素を算出する(ステップS13)。一例として、構成要素算出部62は、各窓における平均値ei1ei2、標準偏差σi1,σi2および過渡判別量Eiを算出する。次に、増減値算出部64は、過渡判別量Eの増減値として微分値Dを算出する(ステップS14)。次に、増減値取得部73は、増減値算出部64から、各窓の微分値Dを取得する(ステップS15)。次に、区間算出部72は、微分値Dの変化点を過渡域の境界として検出する(ステップS16)。一例として、区間算出部72は、微分値の正領域とそれに連なる負領域の面積が閾値を超える組み合わせを過渡域として抽出する。以上の処理により、定常域と過渡域の弁別が完了する。
本実施例によれば、センサ12の検出結果の時系列データの統計的変化量の増減値を用いて、定常域および過渡域の弁別が行われる。この場合、当該統計的変化量の大小のみに基づく弁別と比較して、弁別の過渡域をより細かく設定することができる。例えば、コネクタ差し込み作業において、最初の接触、それに続く挿入、最後の突き当てを別々の過渡域として弁別することが可能になる。それにより、高い精度で作業区間の弁別を行うことができる。
本実施例においては、増減値算出部64が、対象物に対して作業を行う作業部の力または変位を検出するセンサの時系列出力値の統計的変化量の増減値を算出する算出部の一例として機能する。区間算出部72が、統計的変化量の増減値に基づいて、作業部が対象物に対して作業を行う過渡域と作業部が対象物に対して作業を行わない定常域とを弁別する弁別部の一例として機能する。
過渡判別量の大小も考慮して定常域と過渡域とを弁別してもよい。図13は、実施例3に係る判定装置40bのブロック図である。図13で例示するように、判定装置40bが図6の判定装置40と異なる点は、過渡判別量算出部60の代わりに過渡判別量算出部60bが備わり、弁別部70の代わりに弁別部70bが備わっている点である。過渡判別量算出部60bが過渡判別量算出部60と異なる点は、増減値算出部64がさらに備わっている点である。弁別部70bが弁別部70と異なる点は、増減値取得部73、過渡判別量取得部74、重み設定部75がさらに備わっている点である。実施例1,2と同じ符号を付した構成要素は、実施例1,2と同様の機能を果たす。以下、実施例1,2と異なる点について説明する。
図14(a)は、構成要素算出部62が算出した過渡判別量Eを例示する図である。図14(b)は、構成比率算出部63が算出した比率mを例示する図である。図14(b)の点線は、比率mの移動平均値である。図14(c)は、増減値算出部64が算出した微分値Dを例示する図である。
区間算出部72は、過渡判別量Eの正規化値を算出する。図14(d)は、過渡判別量Eの正規化値である。区間算出部72は、比率mの、平均値からの乖離度を算出し、当該乖離度の正規化値を算出する。図14(e)は、移動平均値からの比率mの乖離度の正規化値を例示する図である。区間算出部72は、過渡判別量Eの微分値Dの積算量の正規化値を算出する。図14(f)は、過渡判別量Eの微分値Dの積算量の正規化値を例示する図である。次に、区間算出部72は、重み設定部75が設定する重みに従って、過渡判別量Eの正規化値と、移動平均値からの比率mの乖離度の正規化値と、微分値Dの積算量の正規化値とを重み付き加算する。図14(g)は、重み付き加算値を例示する。本実施例においては、この重み付き加算値を、合成判別量Cとして用いる。区間算出部72は、この合成判別量Cが閾値以上となる区間を過渡域として抽出する。
図15は、判定装置40bが実行する処理を例示するフローチャートである。図15で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS21)。次に、窓幅設定部61は、データ格納部50に格納された測定データに所定のサンプリング周期で注目点を設定し、各注目点に対して予め決定した窓幅を設定する(ステップS22)。
次に、構成要素算出部62は、設定された各窓において、測定データの統計的変化量の構成要素を算出する(ステップS23)。一例として、構成要素算出部62は、各窓における平均値ei1ei2、標準偏差σi1,σi2および過渡判別量Eiを算出する。次に、構成比率算出部63は、比率miを算出する(ステップS24)。次に、増減値算出部64は、過渡判別量Eの増減値として微分値Dを算出する(ステップS25)
次に、区間算出部72は、過渡判別量Eの正規化値と、平均値からの比率mの乖離度の正規化値と、過渡判別量Eの微分値Dの積算量の正規化値とを算出する(ステップS26)。次に、区間算出部72は、重み設定部75が設定する重みに従って、過渡判別量Eの正規化値と、移動平均値からの比率mの乖離度の正規化値と、微分値Dの積算量の正規化値とを重み付き加算することで、合成判別量Cを算出する(ステップS27)。次に、区間算出部72は、合成判別量Cが閾値を超える区間を過渡域として抽出する(ステップS28)。以上の処理により、定常域と過渡域の弁別が完了する。
本実施例によれば、センサ12の検出結果の時系列データの統計的変化量の大小に加えて、当該統計的変化量の構成要素の比率および当該統計的変化量の増減値を用いて、定常域および過渡域の弁別が行われる。この場合、当該統計的変化量の大小のみに基づく弁別と比較して、弁別の過渡域をより細かく設定することができる。すなわち、高い精度で作業区間の弁別を行うことができる。なお、統計的変化量の構成要素の比率および当該統計的変化量の増減値のうち、いずれか一方だけを用いてもよい。例えば、統計的変化量の構成要素の比率だけを用いる場合、増減値算出部64および増減値取得部73は不要である。統計的変化量の増減値だけを用いる場合、構成比率算出部63および構成比率取得部71は不要である。
(変形例3−1)
過渡判別量E、比率mおよび微分値Dのそれぞれから過渡域候補を抽出し、過渡域候補から過渡域を抽出してもよい。区間算出部72は、過渡判別量Eが閾値を超える区間を過渡域候補として抽出する。図16(a)は、過渡判別量Eから抽出された過渡域候補を例示する図である。また、区間算出部72は、移動平均値からの比率mの乖離度が閾値を超える区間を過渡域候補として抽出する。図16(b)は、比率mから抽出された過渡域候補を例示する図である。また、区間算出部72は、微分値Dの正領域とそれに連なる負領域の面積が閾値を超える組み合わせを過渡域として抽出する。図16(c)は、微分値Dから抽出された過渡域候補を例示する図である。区間算出部72は、図16(d)で例示するように、これらの過渡域候補の論理和、論理積などを用いて、過渡域を抽出する。本変形例においては、重み設定部75は備わっていなくてもよい。
図17は、本変形例に係る処理を例示するフローチャートである。図17で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS31)。次に、窓幅設定部61は、データ格納部50に格納された測定データに所定のサンプリング周期で注目点を設定し、各注目点に対して予め決定した窓を設定する(ステップS32)。
次に、構成要素算出部62は、設定された各窓において、測定データの統計的変化量の構成要素を算出する(ステップS33)。一例として、構成要素算出部62は、各窓における平均値ei1ei2、標準偏差σi1,σi2および過渡判別量Eiを算出する。次に、構成比率算出部63は、比率miを算出する(ステップS34)。次に、増減値算出部64は、過渡判別量Eの増減値として微分値Dを算出する(ステップS35)
次に、区間算出部72は、過渡判別量Eが閾値を超える区間を過渡域候補として抽出し、移動平均値からの比率mの乖離度が閾値を超える区間を過渡域候補として抽出し、微分値Dの正領域とそれに連なる負領域の面積が閾値を超える組み合わせを過渡域として抽出する(ステップS36)。次に、区間算出部72は、これらの過渡域候補の論理和、論理積などを用いて、過渡域を抽出する(ステップS37)。
(変形例3−2)
上記各例において、窓幅設定部61は窓幅を可変としてもよい。例えば、窓幅設定部61は、得られる過渡判別量Eが最大となる窓幅を選定する。各窓の注目点よりも前(過去)の幅をL1とし、注目点よりも後(未来)の幅をL2とする。窓幅設定部61は、L1=L2に設定する。図18(a)〜図18(c)で例示するように、窓幅設定部61は、窓幅L1=L2を段階的に徐々に広げる。構成要素算出部62は、各段階において過渡判別量を算出する。窓幅設定部61は、構成要素算出部62が算出した過渡判別量のうち最大となる場合の窓幅L1+L2を窓幅として設定する。例えば、過渡判別量のピーク値で比較することで、過渡判別量の大小を判断することができる。
図19は、窓幅設定部61が窓幅を設定する場合に実行するフローチャートを例示する図である。図19で例示するように、窓幅設定部61は、窓幅L1=L2を未設定の値に設定する(ステップS41)。次に、窓幅設定部61は、測定データの未処理のデータ点を選択する(ステップS42)。次に、構成要素算出部62は、過渡判別量Eを算出する(ステップS43)。次に、窓幅設定部61は、全データ点における過渡判別量Eの計算が終了したか否かを判定する(ステップS44)。ステップS44で「No」と判定された場合、ステップS42から再度実行される。
ステップS44で「Yes」と判定された場合、窓幅設定部61は、過渡判別量の合計を算出する(ステップS45)。次に、窓幅設定部61は、窓幅を全ての設定値に設定したか否かを判定する(ステップS46)。ステップS46で「No」と判定された場合、ステップS41から再度実行される。ステップS46で「Yes」と判定された場合、窓幅設定部61は、過渡判別量合計値の比較を行う(ステップS47)。次に、窓幅設定部61は、窓幅を、過渡判別量合計値が最も高くなる場合の窓幅に決定する(ステップS48)。
窓幅L1と窓幅L2とを独立して決定する場合には、ステップS41〜ステップS46を、窓幅L1と窓幅L2とに対して個別に実行すればよい。
窓幅設定部61は、注目点ごとに窓幅を設定してもよい。図20(a)で例示するように、窓幅設定部61は、注目点ごとに窓幅L1=L2を段階的に徐々に広げる。構成要素算出部62は、各段階において過渡判別量を算出する。窓幅設定部61は、構成要素算出部62が算出した過渡判別量のうち最大となる場合の窓幅L1+L2を窓幅として設定する。
図20(b)は、窓幅設定部61が窓幅を設定する場合に実行するフローチャートを例示する図である。図20(b)で例示するように、窓幅設定部61は、測定データの未処理のデータ点を選択する(ステップS51)。次に、窓幅設定部61は、窓幅L1=L2を未設定の値に設定する(ステップS52)。次に、構成要素算出部62は、過渡判別量Eを算出する(ステップS53)。次に、窓幅設定部61は、窓幅を全ての設定値に設定したか否かを判定する(ステップS54)。ステップS54で「No」と判定された場合、ステップS52から再度実行される。
ステップS54で「Yes」と判定された場合、過渡判別量の比較を行う(ステップS55)。窓幅設定部61は、窓幅を、過渡判別量合計値が最も高くなる場合の窓幅に決定する(ステップS56)。次に、窓幅設定部61は、決定された窓幅における過渡判別量を保存する(ステップS57)。次に、窓幅設定部61は、全データ点の処理が終了したか否かを判定する(ステップS58)。ステップS58で「No」と判定された場合、ステップS51から再度実行される。ステップS58で「Yes」と判定された場合、フローチャートの実行が終了する。
窓幅L1と窓幅L2とを独立して設定する場合には、ステップS52〜ステップS57を個別に実行すればよい。本変形例は、実施例1,2にも適用することができる。
(変形例3−3)
上記各例において、構成要素算出部62は、過渡判別量を算出する際に各構成要素に重み付けを行ってもよい。例えば、構成要素算出部62は、「平均の変化」と「標準偏差の変化」とに重みを設定する。具体的には、構成要素算出部62は、測定データの全注目点において、上記式(2)に従って「平均の変化」および「標準偏差の変化」を算出する。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」の2乗の累積加算値を算出する。「平均の変化」の2乗の累積加算値をAEとし、「標準偏差の変化」の2乗の累積加算値をASとした場合に、係数ke=1とし、係数ks=AE/ASとする。次に、構成要素算出部62は、下記式(5)に従って、重み付けを行った過渡判別量Mを算出する。
Mi=(keΔei 2+ksΔσi 2)0.5 (5)
図21は、この場合に実行されるフローチャートを例示する図である。図21で例示するように、構成要素算出部62は、測定データの未処理のデータ点を選択する(ステップS61)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」を算出する(ステップS62)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」の2乗を累積加算する(ステップS63)。次に、構成要素算出部62は、全てのデータ点の処理が終了したか否かを判定する(ステップS64)。ステップS64で「No」と判定された場合、ステップS61から再度実行される。
ステップS64で「Yes」と判定された場合、構成要素算出部62は、累積加算値の比率に基づいて重み係数を決定する(ステップS65)。「平均の変化」の2乗の累積加算値をAEとし、「標準偏差の変化」の2乗の累積加算値をASとした場合に、係数ke=1とし、係数ks=AE/ASとする。次に、構成要素算出部62は、センサ12の測定データの未処理のデータ点を選択する(ステップS66)。次に、構成要素算出部62は、上記式(5)に従って、過渡判別量Mを算出する(ステップS67)。次に、構成要素算出部62は、全データ点の処理が終了したか否かを判定する(ステップS68)。ステップS68で「No」と判定された場合、ステップS66から再度実行される。ステップS68で「Yes」と判定された場合、フローチャートの実行が終了する。
図22は、窓幅を可変として、過渡判別量に重み付けを行う場合に実行されるフローチャートを例示する図である。図22で例示するように、窓幅設定部61は、窓幅L1=L2を未設定の値に設定する(ステップS71)。次に、構成要素算出部62は、測定データの未処理のデータ点を選択する(ステップS72)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」を算出する(ステップS73)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」の2乗を累積加算する(ステップS74)。次に、構成要素算出部62は、全てのデータ点の処理が終了したか否かを判定する(ステップS75)。ステップS75で「No」と判定された場合、ステップS72から再度実行される。
ステップS75で「Yes」と判定された場合、構成要素算出部62は、累積加算値の比率に基づいて重み係数を算出する(ステップS76)。「平均の変化」の2乗の累積加算値をAEとし、「標準偏差の変化」の2乗の累積加算値をASとした場合に、係数ke=1とし、係数ks=AE/ASとする。次に、構成要素算出部62は、測定データの未処理のデータ点を選択する(ステップS77)。次に、構成要素算出部62は、上記式(5)に従って、過渡判別量Mを算出する(ステップS78)。次に、構成要素算出部62は、全データ点の処理が終了したか否かを判定する(ステップS79)。ステップS79で「No」と判定された場合、ステップS77から再度実行される。
ステップS79で「Yes」と判定された場合、窓幅設定部61は、過渡判別量Mの合計を算出する(ステップS80)。次に、窓幅設定部61は、窓幅を全ての設定値に設定したか否かを判定する(ステップS81)。ステップS81で「No」と判定された場合、窓幅設定部61は、ステップS71から再度実行される。ステップS81で「Yes」と判定された場合、窓幅設定部61は、過渡判別量Mの合計値を比較する(ステップS82)。
次に、窓幅設定部61は、過渡判別量Mの合計値が最大となる設定値に、窓幅を決定する(ステップS83)。次に、構成要素算出部62は、窓幅に対応した重み係数を設定する(ステップS84)。次に、構成要素算出部62は、センサ12の測定データの未処理のデータ点を選択する(ステップS85)。次に、構成要素算出部62は、過渡判別量Mを算出する(ステップS86)。次に、構成要素算出部62は、全データ点の処理が終了したか否かを判定する(ステップS87)。ステップS87で「No」と判定された場合、ステップS85から再度実行される。ステップS87で「Yes」と判定された場合、フローチャートの実行が終了する。
図23は、実施例4に係る判定装置40cのブロック図である。図23で例示するように、判定装置40cが図6の判定装置40と異なる点は、過渡判別量算出部60の代わりに過渡判別量算出部60cが備わり、弁別部70の代わりに弁別部70cが備わっている点である。過渡判別量算出部60cが過渡判別量算出部60と異なる点は、増減値算出部64がさらに備わっている点である。弁別部70bが弁別部70と異なる点は、増減値取得部73、過渡判別量取得部74、重み設定部75、および閾値設定部76がさらに備わっている点である。以下、実施例1と異なる点について説明する。実施例1〜3と同じ符号を付した構成要素は、実施例1〜3と同様の機能を果たす。以下、実施例1〜3と異なる点について説明する。
過渡判別量Eの大小を検出するための閾値を固定した場合、特に小さな過渡判別量Eを検出することが困難となる。そこで、学習用OKデータによって最適な閾値を求め、それに基づいて定常域/過渡域の弁別を行うことが好ましい。閾値設定部76は、図24(a)で例示するように、過渡判別量Eのヒストグラムを作成して、それに対して大津の二値化を行う。この場合には、パラメータの設定を完全に自動化することもできる。定常域部分は過渡判別量Eが小さいため、自動的に過渡域から除外することになる。閾値の自動設定により過渡域を検出した後で、過渡域の空白区間が長い場合には、その区間に対して再帰的に大津の二値化を適用して閾値を設定し、過渡判別量Eの更に小さな過渡判別量Eの部分を定常域として検出することも可能である。
図24(b)は、過渡判別量Eが局所的にみて大きい部分のみを過渡域として検出する方法である。過渡判別量Eの局所ピーク対する割合として弁別閾値を設定することにより、過渡判別量Eの小さい部分を過渡域として検出することができる。この場合、ノイズとして落とすピーク値・ピークに対する閾値の比率・局所ピークを探索する区間サイズなど、幾つかのパラメータ設定が必要となる。なお、この手法は、合成判別量に対して適用することも可能である。
図25(a)および図25(b)は、判定装置40cが実行するフローチャートを例示する図である。図25(a)で例示するように、構成要素算出部62は、全過渡判別量の算出処理を実行する(ステップS91)。図25(b)は、ステップS91の詳細を例示するフローチャートである。図25(b)で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS101)。次に、窓幅設定部61は、測定データの未処理のデータ点を選択する(ステップS102)。
次に、窓幅設定部61は、図19または図20(b)のフローチャートを実行することで、窓幅の設定を行う(ステップS103)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」を算出する(ステップS104)。次に、構成要素算出部62は、過渡判別量Eの構成比率を算出する(ステップS105)。次に、構成要素算出部62は、各データ点の過渡判別量Eを算出する(ステップS106)。次に、構成要素算出部62は、各算出値の格納を行う(ステップS107)。次に、構成要素算出部62は、全てのデータ点の処理が終了したか否かを判定する(ステップS108)。ステップS108で「No」と判定された場合、ステップS102から再度実行される。ステップS108で「Yes」と判定された場合、フローチャートの実行が終了する。
次に、区間算出部72は、測定データの未処理のデータ点を選択する(ステップS92)。次に、過渡判別量取得部74は、過渡判別量Eを取得する(ステップS93)。また、構成比率取得部71は、比率mを取得する(ステップS94)。次に、区間算出部72は、過渡判別量Eおよび比率mを正規化し、重み付け加算する(ステップS95)。次に、閾値設定部76は、図24(a)で説明したように、二値化閾値を自動設定する(ステップS96)。次に、区間算出部72は、定常域と過渡域とを弁別する(ステップS97)。次に、区間算出部72は、全データの処理が終了したか否かを判定する(ステップS98)。ステップS98で「No」と判定された場合、ステップS92から再度実行される。ステップS98で「Yes」と判定された場合、フローチャートの実行が終了する。
図26(a)および図26(b)は、判定装置40cが実行する他のフローチャートを例示する図である。図26(a)で例示するように、構成要素算出部62は、全過渡判別量の算出処理を実行する(ステップS111)。図26(b)は、ステップS111の詳細を例示するフローチャートである。図26(b)で例示するように、データ格納部50は、測定データとして、学習用OKデータを一時的に格納する(ステップS121)。次に、窓幅設定部61は、測定データの未処理のデータ点を選択する(ステップS122)。
次に、窓幅設定部61は、図19または図20(b)のフローチャートを実行することで、窓幅の設定を行う(ステップS123)。次に、構成要素算出部62は、「平均の変化」および「標準偏差の変化」を算出する(ステップS124)。次に、増減値算出部64は、過渡判別量の増減値として微分値Dを算出する(ステップS125)。次に、構成要素算出部62は、各データ点の過渡判別量を算出する(ステップS126)。次に、構成要素算出部62は、各算出値の格納を行う(ステップS127)。次に、構成要素算出部62は、全てのデータ点の処理が終了したか否かを判定する(ステップS128)。ステップS128で「No」と判定された場合、ステップS122から再度実行される。ステップS128で「Yes」と判定された場合、フローチャートの実行が終了する。
次に、区間算出部72は、測定データの未処理のデータ点を選択する(ステップS112)。次に、過渡判別量取得部74は、過渡判別量Eを取得する(ステップS113)。次に、閾値設定部76は、図24(b)で説明したように、局所ピークを用いた閾値設定を行う(ステップS114)。次に、区間算出部72は、ステップS114で設定された閾値を過渡判別量Eに適用することで、定常域と過渡域とを弁別する(ステップS115)。また、ステップS112の実行後、増減値取得部73は、増減値算出部64から増減値として微分値Dを取得する(ステップS116)。次に、区間算出部72は、増減値に基づいて定常域と過渡域とを弁別する(ステップS117)。
ステップS115およびステップS117の実行後、区間算出部72は、ステップS115で弁別された定常域および過渡域と、ステップS117で弁別された定常域および過渡域とを統合する(ステップS118)。例えば、論理和・論理積を用いて統合することができる。次に、区間算出部72は、全データ点の処理が終了したか否かを判定する(ステップS119)。ステップS119で「No」と判定された場合、ステップS112から再度実行される。ステップS119で「Yes」と判定された場合、フローチャートの実行が終了する。
本実施例によれば、センサ12の出力値の変化が小さい場合でも、閾値を適切に設定することにより、過渡判別量Eの小さな動作も的確に過渡域として検出することができる。一方、定常域のノイズレベルの反応から不要な過渡域を生成することは抑制できる。これにより、過渡域用の識別器が生成できなかった動作も複雑な識別器で判定できるようになり、異常判断性能が向上する。
図27(a)は、判定装置40〜40cのハードウェア構成を説明するためのブロック図である。図27(a)を参照して、判定装置40〜40cは、CPU101、RAM102、記憶装置103、表示装置104等を備える。CPU(Central Processing Unit)101は、中央演算処理装置である。
CPU101は、1以上のコアを含む。RAM(Random Access Memory)102は、CPU101が実行するプログラム、CPU101が処理するデータなどを一時的に記憶する揮発性メモリである。記憶装置103は、不揮発性記憶装置である。記憶装置103として、例えば、ROM(Read Only Memory)、フラッシュメモリなどのソリッド・ステート・ドライブ(SSD)、ハードディスクドライブに駆動されるハードディスクなどを用いることができる。記憶装置103は、弁別プログラムを記憶している。表示装置104は、液晶ディスプレイ、エレクトロルミネッセンスパネルなどであり、判定結果を表示する。なお、本実施例においては判定装置40〜40cの各部は、プログラムの実行によって実現されているが、専用の回路などのハードウェアを用いてもよい。
図27(b)は、作業システムについて例示する図である。上記各例においては、判定装置40〜40cは、センサ12から測定データを取得し、カメラ30から画像データを取得している。これに対して、判定装置40〜40cの機能を有するサーバ202が、インターネットなどの電気通信回線201を通じてセンサ12およびカメラ30からデータを取得してもよい。
上記各例において、過渡判別量として、「平均の変化」と「標準偏差の変化」との和を用いたが、他の過渡判別量を用いてもよい。例えば、過渡判別量として、中央値、最小値から最大値までの範囲、四分位範囲(第1四分位〜第3四分位)、歪度、尖度などを用いることができる。過渡判別量として中央値を用いる場合、中央値の変化と標準偏差の変化との比を構成要素の比率として用いることができる。過渡判別量として最小値から最大値までの範囲を用いる場合、平均の変化と(最大値−最小値)の変化との比を構成要素の比率として用いることができる。過渡判別量として四分位範囲を用いる場合、第1四分位の変化と第3四分位の変化との比を構成要素の比率として用いることができる。過渡判別量として歪度を用いる場合、標準偏差の変化と歪度の変化との比を構成要素の比率として用いることができる。過渡判別量として尖度を用いる場合、標準偏差の変化と尖度の変化との比を構成要素の比率として用いることができる。
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。