以下、図面を参照して、実施形態について説明する。
図1は、本実施形態に係る状態監視装置の機能構成の一例を示すブロック図である。図1に示すように、状態監視装置10は、監視対象20及び情報処理装置30とそれぞれ通信可能に接続されている。なお、状態監視装置10は、例えば監視対象20と直接接続されている必要はなく、後述する監視対象20に取り付けられているセンサから信号を取得可能に構成されていてもよい。
ここで、監視対象20は、例えば製造工場、プラント、建設現場、教育機関、医療機関または住宅設備等に設けられた装置を含む。本実施形態においては、監視対象20が例えば製造工場の生産ラインにおいて製品を金型でプレス加工する装置(プレス機)であるものとして主に説明する。
状態監視装置10は、例えば監視対象20に取り付けられたセンサを用いて取得される信号に基づいて当該監視対象20の動作状態を判定する。状態監視装置10による判定結果は、情報処理装置30に出力される。
情報処理装置30は、例えば状態監視装置10による判定結果を画像として出力可能なディスプレイまたは音声として出力可能なスピーカ等を備える電子機器であるが、状態監視装置10による判定結果に基づいて所定の処理を実行するものであればよい。すなわち、情報処理装置30は、例えば各種サービスの提供者に対して状態監視装置10による判定結果を出力(通知)可能なサーバ装置等であってもよいし、上記した生産ライン等に制御命令を出力可能な制御装置等であってもよいし、ルータのようなネットワーク機器への制御命令を出力可能なコントローラサーバ等であってもよい。
なお、本実施形態において、状態監視装置10は、上記した情報処理装置30またはその他のサーバ装置等と比較して計算リソースの小さいIoT向けのエッジデバイス(端末)として実現されるものとする。
図1に示す状態監視装置10は、時系列信号取得部11、動作タイミング情報取得部12、第1動作区間検出部13、第2動作区間検出部14、動作状態判定部15及びモデル格納部16を含む。
時系列信号取得部11は、監視対象20の動作状態に関する信号(監視対象20の動作に起因する信号)を取得する機能部である。なお、上記した監視対象20に取り付けられているセンサは継続的に駆動しており、時系列信号取得部11は、当該センサから時系列信号を取得する。
動作タイミング情報取得部12は、監視対象20の動作の開始を表す動作タイミング情報を取得する。
第1動作区間検出部13は、動作タイミング情報取得部12によって取得された動作タイミング情報に基づいて、時系列信号取得部11によって取得された時系列信号から第1動作区間信号を検出する。
第2動作区間検出部14は、第1動作区間検出部13によって検出された第1動作区間信号の波形の特徴に基づいて、当該第1動作区間信号から第2動作区間信号を検出する。
動作状態判定部15は、第2動作区間検出部14によって検出された第2動作区間信号に基づいて、監視対象20の動作状態を判定する。なお、動作状態判定部15による判定結果には、例えば監視対象20が正常な状態にあること(以下、単に「正常」と表記)及び監視対象20が異常な状態にあること(以下、単に「異常」と表記)が含まれる。動作状態判定部15による判定結果は、上記した情報処理装置30に出力される。
モデル格納部16には、上記した動作状態判定部15による判定処理に用いられる学習済みモデル(統計モデル)が予め格納されている。なお、モデル格納部16に格納されている学習済みモデルの詳細については後述する。
図2は、図1に示す状態監視装置10のハードウェア構成の一例を示す。状態監視装置10は、CPU101、不揮発性メモリ102、主メモリ103及び通信デバイス104等を備える。なお、CPU101、不揮発性メモリ102、主メモリ103及び通信デバイス104は、例えばバスを介して相互に接続されている。
CPU101は、状態監視装置10内の様々なコンポーネントの動作を制御するためのプロセッサである。CPU101は、単一のプロセッサであってもよいし、複数のプロセッサで構成されていてもよい。CPU101は、不揮発性メモリ102から主メモリ103にロードされる様々なプログラムを実行する。これらプログラムは、例えばオペレーティングシステム(OS)等を含む。
不揮発性メモリ102は、補助記憶装置として用いられる記憶媒体である。主メモリ103は、主記憶装置として用いられる記憶媒体である。図2においては不揮発性メモリ102及び主メモリ103のみが示されているが、状態監視装置10は、例えばHDD(Hard Disk Drive)及びSSD(Solid State Drive)等の他の記憶装置を備えていてもよい。
なお、本実施形態において、図1に示す時系列信号取得部11、動作タイミング情報取得部12、第1動作区間検出部13、第2動作区間検出部14及び動作状態判定部15の一部または全ては、CPU101(つまり、状態監視装置10のコンピュータ)に所定のプログラム(以下、状態監視プログラムと表記)を実行させること、すなわち、ソフトウェアによって実行されるものとする。この状態監視プログラムは、コンピュータ読み取り可能な記憶媒体に格納して頒布されてもよいし、ネットワークを通じて状態監視装置10にダウンロードされてもよい。なお、これらの各部11〜15の一部または全ては、IC(Integrated Circuit)等のハードウェアによって実現されてもよいし、ソフトウェア及びハードウェアの組み合わせによって実現されてもよい。
通信デバイス104は、上記した監視対象20(に取り付けられたセンサ)及び情報処理装置30等の外部装置と有線通信または無線通信を実行するように構成されたデバイスである。
次に、図3のフローチャートを参照して、本実施形態に係る状態監視装置10が監視対象20の動作状態を監視する際の処理手順の一例について説明する。
ここで、本実施形態において、監視対象20には例えば第1及び第2センサが取り付けられているものとする。
第1センサは、監視対象20の動作状態に関する信号を計測するためのセンサである。第2センサは、監視対象20の動作の開始を表す動作タイミング情報に相当する信号を計測するためのセンサである。第1及び第2センサによって計測される信号には、当該第1及び第2センサによって計測(測定)可能な任意の物理量が含まれる。
具体的には、上記したように監視対象20が生産ラインにおいて製品を金型でプレス加工するプレス機である場合、第1センサとしては、例えば当該プレス加工時に生じる音を計測するマイクロフォンを用いることができる。また、第2センサとしては、例えば光または超音波等を用いて当該第2センサから金型までの距離を計測する測距センサを用いることができる。
なお、上記した第1及び第2センサは、状態監視装置10が監視対象20の動作状態を監視する際には、継続的に駆動しているものとする。
状態監視装置10が監視対象20を監視する場合、時系列信号取得部11は、継続的に駆動している第1センサによって計測された時系列信号の取得を開始する(ステップS1)。時系列信号取得部11は、以下のステップS2以降の処理が実行される間も時系列信号を継続して取得する。なお、上記したように第1センサがマイクロフォンである場合、時系列信号取得部11によって取得される時系列信号は、当該マイクロフォンによって連続的に計測された音の波形を含む信号である。
次に、動作タイミング情報取得部12は、継続的に駆動している第2センサによって計測された信号を取得する。ここで、上記したように監視対象20がプレス機であり、第2センサが当該第2センサから当該プレス機におけるプレス加工に用いられる金型までの距離を計測する測距センサである場合、動作タイミング情報取得部12は、第2センサによって計測された信号に基づいて、例えば第2センサから金型が離れた(つまり、プレス機が動作し、金型が製品にプレスされる)ことを検知することができる。この場合、動作タイミング情報取得部12は、当該監視対象20(プレス機)の動作の開始を表す動作タイミング情報を取得するものとする。なお、動作タイミング情報は、例えば第2センサから金型までの距離が予め定められた値以上になった場合に取得される。
これにより、動作タイミング情報取得部12は、第2センサによって計測された信号を監視することによって、監視対象20の動作が開始するタイミングである(つまり、動作タイミング情報が取得された)か否かを判定する(ステップS2)。
監視対象20の動作が開始するタイミングでないと判定された場合(ステップS2のNO)、ステップS2の処理が繰り返される。
一方、監視対象20の動作が開始するタイミングであると判定された場合(ステップS2のYES)、第1動作区間検出部13は、時系列信号取得部11によって取得された時系列信号を当該第1動作区間検出部13の内部に保持する(ステップS3)。
次に、第1動作区間検出部13は、ステップS2において監視対象20の動作が開始するタイミングであると判定された後、所定時間(予め定められた時間)が経過したか否かを判定する(ステップS4)。
所定時間が経過していないと判定された場合(ステップS4のNO)、ステップS3に戻って処理が繰り返される。
一方、所定時間が経過したと判定された場合(ステップS4のYES)、第1動作区間検出部13は、ステップS3において当該第1動作区間検出部13の内部に保持されている時系列信号を第1動作区間信号として検出する(ステップS5)。
すなわち、本実施形態においては、時系列信号取得部11によって継続的に取得される時系列信号のうち、動作タイミング情報が取得された後、所定時間が経過するまでの区間の時系列信号が、第1動作区間信号として検出(取得)される。なお、所定時間は、例えば予め測定された監視対象20の動作時間に一定の時間をマージンとして上乗せした時間に相当する。
ここで、上記した第1及び第2センサはそれぞれ独立して駆動されているため、動作タイミング情報は時系列信号に対して非同期である。このため、第1動作区間信号は、バッファをもたせることにより、動作タイミング情報が取得されたタイミングよりも少し前のタイミングから所定時間が経過するまでの時系列信号としてもよい。また、第1動作区間信号は、ディレイをもたせることにより、動作タイミング情報が取得されたタイミングよりも少し後のタイミングから所定時間が経過するまでの時系列信号としてもよい。
ステップS5の処理が実行されると、第2動作区間検出部14は、ステップS5において検出された第1動作区間信号の波形の特徴に基づいて、当該第1動作区間信号から第2動作区間信号を検出する(ステップS6)。ステップS6においては、例えば第1動作区間信号(の波形)における所定の閾値を超える立ち上がりまたは立ち下がりのタイミングを起点として、当該起点から所定時間(予め定められた時間)が経過するまでの区間の時系列信号を第2動作区間信号として検出する。なお、第2動作区間信号を検出する際の所定時間は、上記した第1動作区間信号を検出する際の所定時間よりも短い時間であるものとする。
ここで、一般的に動作タイミング情報(第2センサ)のサンプリングの時間分解能は、時系列信号(第1センサ)のサンプリングの時間分解能よりも低い。このため、上記したステップS5においては動作タイミング情報に基づいて比較的粗いサンプリングの時間分解能で第1動作区間信号(概略動作区間信号)が検出され、ステップS6においては当該第1動作区間信号よりも細かいサンプリングの時間分解能で第2動作区間信号(詳細動作区間信号)が検出される。
次に、動作状態判定部15は、ステップS6において検出された第2動作区間信号及びモデル格納部16に格納されている学習済みモデルに基づいて、監視対象20の動作状態を判定する(ステップS7)。
以下、ステップS7の処理について詳細に説明する。まず、本実施形態におけるモデル格納部16に格納されている学習済みモデル(以下、第1学習済みモデルと表記)は、例えば数理モデルまたは物理モデルであり、より具体的にはニューラルネットワークである。
本実施形態において、第1学習済みモデルは、例えば監視対象20が正常な状態にある(監視対象20の状態がよい)ときの第2動作区間信号を用いて学習することによって生成される。なお、「監視対象20が正常な状態にあるとき」とは、例えば監視対象20の稼働開始時(監視対象20が納品されて最初に稼働する時)または当該監視対象20に対するメンテナンスが行われた直後等をいう。
また、第1学習済みモデルの学習のための第2動作区間信号は、上記した状態監視装置10(第2動作区間検出部14)において取得されたものであってもよいし、当該状態監視装置10の外部で用意されたものであってもよい。なお、第1学習済みモデルの学習処理は処理量が多いため、当該第1学習済みモデルは、状態監視装置10(エッジデバイス)ではなく、外部のサーバ装置等で生成されてもよい。
ここで、本実施形態における第1学習済みモデルは、入力層と出力層が同じとなるように学習され、例えばオートエンコーダとして機能する。このような第1学習済みモデルによれば、例えば当該第1学習済みモデルに対して入力される入力信号(入力データ)に対して、当該入力信号を再現するような出力信号(出力データ)が出力される。
すなわち、第1学習済みモデルを用いた場合、監視対象20の動作状態が「正常」であれば、当該第1学習済みモデルからは入力信号(第2動作区間信号)と同一または類似する出力信号が出力される。一方、監視対象20の動作状態が「異常」であれば、第1学習済みモデルからは入力信号(第2動作区間信号)と類似しない出力信号が出力される。
このため、動作状態判定部15は、ステップS6において検出された第2動作区間信号(時系列信号)を入力信号として学習済みモデルに入力し、当該第1学習済みモデルから出力された出力信号を得る。具体的には、例えば第2動作区間信号(入力信号)としてXt1,Xt2,…,Xtnが第1学習済みモデルに入力された場合、当該第1学習済みモデルからは出力信号としてYt1,Yt2,…,Ytnが出力される。なお、Xti(i=1,2,…,n)は第2動作区間信号に含まれる時刻tiにおける信号値である。一方、Yti(i=1,2,…,n)は、Xtiを第1学習済みモデルに入力した際に出力される信号値(出力信号)である。この場合におけるnは1以上の整数である。
次に、動作状態判定部15は、第1学習済みモデルに対する入力信号と当該第1学習済みモデルから出力された出力信号との誤差に基づいて監視対象20の異常度を算出する。なお、異常度としては、例えば入力信号と出力信号との平均二乗誤差(MSE)を用いることができる。このように算出される異常度は、第1学習済みモデルの生成時(つまり、第1学習済みモデルが学習した第2動作区間信号が検出された時点)と比べて現在の監視対象20の動作状態が変化している(悪くなっている)ほど大きな値となる。
動作状態判定部15は、上記した異常度が予め定められた値(異常閾値)未満である場合、監視対象20の動作状態が「正常」であると判定する。一方、動作状態判定部15は、異常度が予め定められた値(異常閾値)以上である場合、監視対象20の動作状態が「異常」であると判定する。
本実施形態においては、上記したようにオートエンコーダとして機能する第1学習済みモデルを用いて監視対象20の動作状態を判定することができる。
なお、ここでは第1学習済みモデルを用いる場合について説明したが、例えばLSTM(Long Short-Term Memory)構造を有する再帰型ニューラルネットワークを学習済みモデル(以下、第2学習済みモデルと表記)として用いてもよい。この場合、第2学習済みモデル(LSTM)は、予測モデルとして構築される。
第2学習済みモデルは、上記した第1学習済みモデルと同様に、監視対象20が正常な状態にあるときの第2動作区間信号を用いて学習することによって生成される。また、第2学習済みモデルは、例えば第2動作区間信号(入力信号)が当該第2学習済みモデルに入力された場合に、当該第2学習済みモデルから出力信号として予測信号値が出力されるように学習される。
すなわち、上記した第2学習済みモデル(予測モデル)に入力信号として例えばXti(Xt1,Xt2,…Xtn)が入力された場合には、監視対象20の動作状態が「正常」であれば、当該第2学習済みモデルからは出力信号としてXti+1(つまり、Xtiの次の信号値)と同一または類似する予測信号値が出力される(つまり、出力信号が予測値と類似する)。一方、監視対象20の動作状態が「異常」であれば、第2学習済みモデルからは出力信号としてXti+1とは類似しない予測信号値が出力される(つまり、出力信号が予測値と類似しない)。
上記したように第2学習済みモデルに例えばXtiが入力された場合、動作状態判定部15は、上記したXti+1と当該第2学習済みモデルから出力される予測信号値との誤差(予測誤差)を異常度として算出し、当該異常度に基づいて監視対象20の動作状態を判定することができる。なお、異常度としては、上記した平均二乗誤差(MSE)を用いることができる。このように算出される異常度は、第2学習済みモデルの生成時(つまり、第2学習済みモデルが学習した第2動作区間信号が検出された時点)と比べて現在の監視対象20の動作状態が変化している(悪くなっている)ほど大きな値となる。
なお、ここでは学習済みモデル(第1または第2学習済みモデル)に対してステップS6において検出された第2動作区間信号が入力されるものとして説明したが、当該学習済みモデルの入力信号は、当該第2動作区間信号に対して前処理が施された信号であってもよい。具体的には、ステップS6において検出された第2動作区間信号に対して平均を0とし、かつ、分散を1にする正規化処理を実行することにより得られる信号を学習済みモデルに対する入力信号としてもよい。なお、正規化処理以外にも、例えば所定範囲外の値を取り除くような処理または周波数変換等の処理が実行されてもよい。
上記したステップS7における判定結果は、状態監視装置10(動作状態判定部15)から例えば外部の情報処理装置30に出力される。なお、状態監視装置10から情報処理装置30に出力される判定結果は、例えば監視対象の動作状態(「正常」または「異常」)のみであってもよいし、上記した異常度(異常度合いを示す連続値)等を含むものであってもよい。
状態監視装置10から外部の情報処理装置30に出力された判定結果は、例えば当該情報処理装置30(例えば、ディスプレイ等)に表示することができる。図4は、情報処理装置30に表示された判定結果の一例である。なお、図4においては、監視対象20が例えばプレス機であり、当該プレス機が動作する(製品を金型でプレス加工する)都度の当該監視対象20の動作状態の判定結果が表示された例を示している。具体的には、図4においては、製品に対して付加されている加工番号と当該製品を金型でプレス加工した際に算出された異常度とが対応づけて表示されている。管理者は、図4に示すような判定結果を確認することによって、所定の加工番号が付加された製品を金型でプレス加工する際に、監視対象20が「異常」と判定される動作をしていることを容易に把握することができる。
上記したように本実施形態においては、監視対象20の動作状態に関する時系列信号を第1センサ(例えば、マイクロフォン)から取得し、当該監視対象20の動作の開始を表す動作タイミング情報を取得し、当該動作タイミング情報に基づいて時系列信号から第1動作区間信号を検出する。また、本実施形態においては、第1動作区間信号の波形の特徴に基づいて、第1動作区間信号から第2動作区間信号を検出し、当該第2動作区間信号に基づいて監視対象20の動作状態を判定する。
具体的には、動作タイミング情報は、第1センサよりもサンプリングの時間分解能が低い第2センサ(例えば、測距センサ)を用いて取得される。また、第1センサから取得された時系列信号のうち、少なくとも動作タイミング情報が取得された後、予め定められた時間が経過するまでの区間の時系列信号が第1動作区間信号として検出される。
本実施形態においては、このような構成により、リアルタイムに監視対象20の動作状態を判定することが可能となる。
ここで、例えば図5に示すように第1センサによって計測される時系列信号を用いて監視対象20を常時監視する構成(以下、本実施形態の比較例と表記)を想定する。なお、図5に示す例では、時刻t11〜t19までの各々の区間において時系列信号に基づいて監視対象20の動作状態を判定している。
一般に、生産ラインにおいては製品が例えば数秒程度の間隔で連続的に流されるが、当該間隔は一定ではない場合が多い。また、ロットの終了や不良品が検知されること等により生産ラインにおける流れが一時中断する場合もある。
例えば図5に示す時刻t14〜t16のように監視対象20の動作間隔が一時的に短くなると、監視対象20の1回の動作に起因する時系列信号(の波形)が時刻t14〜t15の区間と時刻t15〜t16の区間とに分断されるため、上記した比較例においては正確な動作状態の判定が困難となる。また、比較例によれば、例えば図5に示す時刻t16〜t17のように監視対象20が動作していない区間でも不要な処理(動作状態の判定処理)が実行される可能性がある。
これに対して、本実施形態に係る状態監視装置10においては、図6に示すように時刻t1〜t7の各々から所定時間が経過するまでのそれぞれの区間の時系列信号(第2動作区間信号)を検出して監視対象20の動作状態を判定する。これによれば、上記した比較例(時系列信号を常時監視する構成)と比較して、例えば第2動作区間信号が検出された後、次の動作タイミング信号が検出されるまで動作状態の判定処理を実行する時間を確保することができるため、例えば当該判定処理において遅延が生じたような場合であっても、監視対象20の動作状態の判定(監視)のリアルタイム性を向上させる(維持する)ことができる。また、本実施形態においては、比較例と比較して処理量を低減させ、状態監視装置10における消費電力を削減することも可能である。更に、本実施形態においては動作タイミング情報を用いて確実に監視対象20における動作の開始を把握することによって、監視対象20の動作状態の監視漏れを回避することも可能である。
また、上記した比較例においては監視対象20の動作状態を判定するための各区間における時系列信号に時間方向のばらつきが生じるが、本実施形態においては、当該ばらつきを小さくすることが可能であり、結果として動作状態の判定(つまり、異常判定)精度を向上させることができる。
なお、比較例においては上記した時間方向のばらつきによる影響を抑制するために例えば時系列信号を振幅スペクトルまたはパワースペクトルに変換して利用し、時系列信号の位相情報を利用しない場合があるが、本実施形態においては、このような位相情報を含めることができるため、動作状態の判定精度を更に向上させることができる。
また、本実施形態においては、監視対象20が正常な状態にあるときに検出された第2動作区間信号を学習することによって生成された学習済みモデルを用いて監視対象の動作状態を判定する。なお、本実施形態においては、例えば監視対象が正常な状態にある場合に第2動作区間信号(入力信号)と同一または類似する出力信号を出力する第1学習済みモデルを用いる。これによれば、第1学習済みモデルに入力された第2動作区間信号と当該第1学習済みモデルから出力された出力信号との誤差に基づいて算出される異常度が予め定められた値以上である場合に、監視対象の動作状態が異常であると判定することができる。
ここでは、第1学習済みモデルを用いる場合について説明したが、学習済みモデルとしては上記した第2学習済みモデルを用いてもよいし、他の学習済みモデルを用いてもよい。
なお、本実施形態においては動作タイミング情報に基づいて時系列信号取得部11によって継続的に取得されている時系列信号から第1動作区間信号が検出されるものとして説明したが、例えば動作タイミング情報が取得されたタイミングで第1センサを駆動し、第1動作区間信号を当該第1センサから取得する構成としてもよい。このような構成においては、第1動作区間信号が取得された(つまり、動作タイミング情報が取得された後、所定時間が経過した)場合に、第1センサの駆動は停止される。これによれば、第1センサを常時駆動しておく必要がないため、監視対象20の動作状態を監視する際の消費電力を低減することができる。
また、本実施形態における監視対象20の動作状態の判定結果には「正常」及び「異常」が含まれるが、当該判定結果が「正常」である場合、学習済みモデルが第2動作区間検出部14によって検出された第2動作区間信号を更に学習する構成としてもよい。なお、学習済みモデルが外部のサーバ装置で生成される(つまり、外部のサーバ装置で学習処理が実行される)場合には、状態監視装置10は第2動作区間検出部14によって検出された第2動作区間信号を当該サーバ装置に送信し、当該サーバ装置において学習済みモデルが当該第2動作区間信号を学習する。このように第2動作区間信号を学習した学習済みモデルは、当該サーバ装置から状態監視装置10に送信される。これによれば、モデル格納部16に格納されている学習済みモデルを、外部のサーバ装置において更に学習した学習済みモデル(つまり、判定結果が「正常」である場合に第2動作区間検出部14によって検出された第2動作区間信号を更に学習した学習済みモデル)に更新することができる。
なお、上記した監視対象20の動作状態の判定結果を蓄積しておき、予め定められたタイミングで当該判定結果に基づく学習(バッチ学習)を行う構成としても構わない。
ところで、本実施形態においては、第1動作区間検出部13によって検出された第1動作区間信号のうち、予め定められた値を超える立ち上がりまたは立下りを起点として、当該起点から予め定められた時間が経過するまでの区間の時系列信号を第2動作区間信号として検出するものとして説明したが、当該第2動作区間信号の検出処理としては、他の処理が実行されてもよい。
具体的には、第2動作区間信号の検出においては、例えば第2動作区間信号として検出されるべき時系列信号に関するテンプレートを予め用意しておき、当該テンプレートに基づいて第2動作区間信号を検出してもよい。
以下、上記したテンプレートを用いて第2動作区間信号を検出する構成(以下、本実施形態の第1変形例と表記)について説明する。
図7は、本実施形態の第1変形例に係る状態監視装置10の機能構成の一例を示すブロック図である。なお、図1に示す本実施形態に係る状態監視装置10と同様の部分については同一参照符号を付してその詳しい説明を省略する。ここでは、図1と異なる部分について主に述べる。
図7に示すように、本実施形態の第1変形例に係る状態監視装置10は、テンプレート格納部17を含む。
テンプレート格納部17には、第2動作区間信号として検出されるべき時系列信号に相当する波形(以下、テンプレート波形と表記)及び当該第2動作区間信号として検出されるべき時系列信号の時間長(以下、テンプレート時間長と表記)が規定されたテンプレートが格納されている。
本実施形態の第1変形例においては、第1動作区間検出部13によって検出された第1動作区間信号のうち、上記したテンプレートとの類似度に基づいて特定される区間の時系列信号を第2動作区間信号として検出する。
次に、図8のフローチャートを参照して、本実施形態の第1変形例に係る状態監視装置10において第2動作区間信号を検出する際の処理手順の一例について説明する。なお、第2動作区間信号を検出する処理以外の処理(つまり、図3に示すステップS6以外の処理)は上述した本実施形態に係る状態監視装置10の処理と同様であるため、ここではその詳しい説明を省略する。すなわち、本実施形態の第1変形例に係る状態監視装置10においても図3に示す処理が実行されるが、この場合、当該図3に示すステップS6の処理に代えて図7に示す処理が実行される。
まず、第2動作区間検出部14は、テンプレート格納部17に格納されているテンプレートを取得する(ステップS11)。
次に、第2動作区間検出部14は、ステップS11において取得されたテンプレートに基づいて、図3に示すステップS5において検出された第1動作区間信号の所定の起点位置からテンプレート時間長を有する区間の時系列信号を切り出す(ステップS12)。なお、第1動作区間信号の起点位置は、例えば当該第1動作区間信号(時系列信号)の先頭である。
ステップS12の処理が実行されると、第2動作区間検出部14は、当該ステップS12において切り出された時系列信号とテンプレート波形との類似度を算出する(ステップS13)。なお、ステップS13においては、類似度として例えば相互相関係数が算出される。
図7に示す処理においては、上記した起点位置を予め定められた単位時間毎に(サンプリング周期単位の精度で)順次変化させて上記したステップS12及びS13の処理を繰り返す。
次に、全ての起点位置についてステップS12及びS13の処理が実行されたか否かが判定される(ステップS14)。
全ての起点位置について処理が実行されていないと判定された場合(ステップS14のNO)、ステップS12に戻って処理が繰り返される。
一方、全ての起点位置について処理が実行されたと判定された場合(ステップS14のYES)、第2動作区間検出部14は、上記したステップS13において算出されたテンプレート波形との類似度が最も高い時系列信号を第2動作区間信号として検出する(ステップS15)。換言すれば、ステップS15においては、最も高い類似度が算出された際の起点位置から所定時間(テンプレート時間長)が経過するまでの時系列信号が第2動作区間信号として検出される。
すなわち、図8に示す処理によれば、第1動作区間信号から時間をずらしながら時系列信号を抽出し、当該抽出された時系列信号とテンプレートとの類似度を算出する処理が逐次的に実行される。これにより、算出された類似度が最も高い時系列信号を第2動作区間信号として検出することができる。
なお、図9は、図8に示す処理を概念的に示す図である。図9に示す例では、第1動作区間信号の先頭を0secとした場合に、0.1secの位置を起点位置として時系列信号を切り出した場合にテンプレート波形との類似度が最大となることが示されている。この場合には、類似度が最大となる第1動作区間信号の0.1secの位置を起点位置として第2動作区間信号が検出される。
上記したようにテンプレートを用いて第2動作区間信号が検出される場合には、図3において説明したように単に第1動作区間信号における立ち上がり及び立ち下がりに基づいて第2動作区間信号を検出する構成と比較して、検出されるべき時系列信号(テンプレート)と類似する第2動作区間信号を検出することが可能となる。すなわち、本実施形態の第1変形例においては、適切な第2動作区間信号を検出することが可能であり、当該第2動作区間信号を用いた監視対象20の動作状態の判定精度を向上させることが可能となる。
なお、上記した生産ラインにおいては複数種類の製品(つまり、監視対象20の動作の対象物)に対するプレス加工等が行われる場合があり、この場合、状態監視装置10は、製品の種類に応じて異なる時系列信号を取得する。このため、上記したようにテンプレートを用いて第2動作区間信号を検出する構成の場合には、製品の種類毎にテンプレートを切り替えることが好ましいが、当該テンプレートの切り替えを例えば人手により行うことは煩雑である。
そこで、例えば製品の種類に応じた複数のテンプレートを予め用意しておき、生産ラインにおいて流れる製品に適したテンプレートを自動的に選択して第2動作区間信号を検出する構成(以下、本実施形態の第2変形例と表記)とすることができる。
以下、本実施形態の第2変形例について説明する。なお、本実施形態の第2変形例に係る状態監視装置10の機能構成は、本実施形態の第1変形例におけるテンプレート格納部17に製品の種別に応じた複数のテンプレートが予め格納されている点以外は、図7と同様である。
図10のフローチャートを参照して、本実施形態の第2変形例に係る状態監視装置10において第2動作区間信号を検出する際の処理手順の一例について説明する。
まず、第2動作区間検出部14は、テンプレート格納部17に格納されている複数のテンプレートのうちの1つのテンプレート(以下、対象テンプレートと表記)を取得する(ステップS21)。なお、テンプレート格納部17に格納されている複数のテンプレートの各々は、例えばテンプレート波形及びテンプレート時間長自体は異なるものの、当該テンプレート波形及びテンプレート時間長が規定されている点は共通している。
次に、第2動作区間検出部14は、対象テンプレートを用いて、上述した図8に示すステップS12〜S14の処理に相当するステップS22〜S24の処理を実行する。なお、ステップS24において全ての起点位置について処理が実行されていないと判定された場合(ステップS24のNO)、ステップS22に戻って処理が繰り返される。
一方、ステップS24において全ての起点位置について処理が実行されたと判定された場合、第2動作区間検出部14は、テンプレート格納部17に格納されている全てのテンプレートについてステップS22〜S24の処理が実行されたか否かを判定する(ステップS25)。
全てのテンプレートについて処理が実行されていないと判定された場合(ステップS25のNO)、ステップS21に戻って処理が繰り返される。この場合、ステップS21においては、ステップS22〜S24の処理が実行されていないテンプレートが対象テンプレートとして取得されて、当該ステップS22〜S24の処理が実行される。すなわち、本実施形態の第2変形例においては、製品の種別に応じた複数のテンプレートの全てについて類似度を算出するステップS22〜S24の処理が実行される。
一方、全てのテンプレートについて処理が実行されたと判定された場合(ステップS25のYES)、第2動作区間検出部14は、複数のテンプレートの各々についてステップS22において切り出された時系列信号毎にステップS23において算出された類似度のうち、当該類似度が最も高い時系列信号を第2動作区間信号として検出する(ステップS26)。
上記したように本実施形態の第2変形例においては、監視対象20の動作の対象物(第1及び第2対象物)毎に第2動作区間信号として検出されるべき時系列信号に関するテンプレート(第1及び第2テンプレート)を用意しておき、このテンプレートの各々との類似度に基づいて特定される区間の時系列信号を第2動作区間信号として検出する。本実施形態の第2変形例においては、このような構成により、監視対象20の動作の対象物(例えば、プレス機においてプレス加工される製品等)に応じた適切なテンプレート(つまり、類似度が高いテンプレート)を用いて特定される区間の時系列信号を第2動作区間信号として検出することが可能となるため、当該第2動作区間信号を用いた監視対象20の動作状態の判定精度を向上させることが可能となる。
なお、本実施形態の第2変形例においては、上記したように製品の種類に応じて異なる時系列信号(第2動作区間信号)が取得されるため、当該監視対象20の動作状態を判定する際に当該監視対象20の動作の対象物(製品の種類)に対応した学習済みモデルを用いることが好ましい。
具体的には、例えば監視対象20の動作の対象物が第1及び第2対象物を含む場合には、第1対象物に対応する学習済みモデル及び第2対象物に対応する学習済みモデルがモデル格納部16に格納されていればよい。
この場合において、例えば第2動作区間検出部14によって検出された第2動作区間信号が第1対象物に応じたテンプレート(第1テンプレート)との類似度に基づいて特定される区間の時系列信号である場合には、第1対象物に対応する学習済みモデルを用いて監視対象20の動作状態が判定される。一方、例えば第2動作区間検出部14によって検出された第2動作区間信号が第2対象物に応じたテンプレート(第2テンプレート)との類似度に基づいて特定される区間の時系列信号である場合には、第2対象物に対応する学習済みモデルを用いて監視対象20の動作状態が判定される。
なお、第1対象物に対応する学習済みモデルとは、監視対象20が正常な状態にあり、かつ、当該監視対象20が第1対象物に対して動作する場合に検出された第2動作区間信号を学習することによって生成される学習済みモデルである。一方、第2対象物に対応する学習済みモデルとは、監視対象が正常な状態にあり、かつ、当該監視対象が第2対象物に対して動作する場合に検出された第2動作区間信号を学習することによって生成される学習済みモデルである。
このような構成によれば、監視対象20の動作の対象物に応じた適切な学習済みモデルを用いて当該監視対象20の動作状態を判定することが可能となるため、当該判定精度を更に向上させることが可能となる。
なお、本実施形態においては、監視対象20の動作状態に関する信号を計測するための第1センサがマイクロフォンであるものとして説明したが、第1センサは、マイクロフォン以外であってもよい。マイクロフォン以外の第1センサとしては、例えば加速度センサ、振動センサ及びAE(Acoustic Emission)センサ等を用いることができる。この場合、例えばプレス機がプレス加工する際に生じる加速度、振動及びAEを計測することができる。
更に、監視対象20の種類によっては、第1センサは、例えばドップラーセンサまたは測距センサであってもよい。第1センサとしてドップラーセンサを用いる場合、当該ドップラーセンサから監視対象20に向けて電波を放射し、当該監視対象20からの反射波を当該ドップラーセンサにおいて検出することにより、当該監視対象20の位置または動きを計測することができる。また、第1センサとして測距センサを用いる場合、例えば光または超音波等を用いて、当該測距センサと監視対象20との間の距離(すなわち、監視対象20の位置または動き)を計測することができる。
なお、ここで説明した第1センサは一例であり、第1センサは例えば監視対象20が動作する際に生じる音、振動、光及び電波のうちの少なくとも1つ(の信号)を計測するものであればよい。また、上記したように様々なセンサを第1センサとして用いることが可能であるが、いずれのセンサを第1センサとして用いるかは監視対象20(の種類)に応じて適宜選択されればよい。
更に、本実施形態においては、監視対象20の動作の開始を表す動作タイミング情報に相当する信号を計測するための第2センサが測距センサであるものとして説明したが、第2センサは、加速度センサであってもよい。この場合、動作タイミング情報取得部12は、加速度センサによって計測される加速度に応じて監視対象20の姿勢または動きに関する動作タイミング情報を取得することができる。
また、第2センサは、ドップラーセンサまたは測距センサであってもよい。第2センサとしてドップラーセンサを用いる場合、動作タイミング情報取得部12は、当該ドップラーセンサによって計測される監視対象20の位置または動きに関する動作タイミング情報を取得することができる。また、第2センサとして測距センサを用いる場合、当該測距センサによって計測される当該測距センサと監視対象20との間の距離に関する動作タイミング情報を取得することができる。
また、本実施形態においては、動作タイミング情報を取得するために第2センサを用いるものとして説明したが、動作タイミング情報は監視対象20の動作の開始を表すものであればよい。このため、例えば監視対象20が所定のプログラムにより動作を制御されている場合には、当該監視対象20の動作を制御するための信号を動作タイミング情報として取得する構成であってもよい。
なお、上記した本実施形態においては、監視対象20が製造工場の生産ラインにおいて用いられるプレス機であるものとして主に説明したが、当該監視対象20は、例えば回転機等の他の装置であってもよい。更に、監視対象20は、上記した製造工場、プラント、建設現場、教育機関、医療機関または住宅設備等に設けられた装置以外であってもよく、例えば屋外、屋内及び車内等の空間であってもよいし、例えば人物及び動物等の生体であってもよい。
本実施形態においては、監視対象20(装置)の動作が開始するタイミングで時系列信号(第1及び第2動作区間信号)を検出して当該監視対象20の動作状態を判定するものとして説明したが、監視対象20が空間である場合には、例えば当該空間における環境が変化したタイミングで時系列信号を検出して、当該環境の状態等を判定することができる。また、監視対象20が生体である場合には、当該生体が所定の動作を行うタイミングで時系列信号を検出して当該生体の状態を判定することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。