CYBERNET

コラム|資料ダウンロード

様々な振動が生じるラインからエアコンプレッサの動作状態を判定する例

IoT DXにおいて、故障予測などをする上では、ライン上および周囲で発生する様々な振動の中から目的の振動を判別できるかが重要になります。
今回はロボットアーム、ベルトコンベア、エアコンプレッサが動作しているラインから、3軸の加速度センサーでエアコンプレッサの動作を検出する処理をBIGDAT@Analysisにて行いました。
以下の写真は、弊社ものづくりDXシステムです。
ロボットのラインを模したDXシステムで、ロボットアームがベルトコンベアに物を乗せ、ベルトコンベアが移動します。
ロボット等を動かすためにエアコンプレッサが定期的に稼働・停止を繰り返しています。
また、ラインには3軸分の加速度センサーが付いております。
今回はこのシステムの中で、加速度センサーの値からエアコンプレッサの稼働/停止の判断ができるかを確認します。

 

元データは加速度センサー生データとエアコンプレッサ動作中フラグ

元データは3軸分の加速度センサーの値です。zの値からzが重力方向であることが分かります。
今回はテスト用に125Hzの生データを記録しましたが、実際にThingWorxに送られるのは1sごとのデータになります。
まずはどのように1sごとにデータを丸めるか検証を行うことになります。
まずは1sごと特徴量(※1)を抽出したcsvに変換し、BIGDAT@Analysisに読み込ませてみます。
(※1. 1sごとの125個の1列のデータから、最小値・最大値・平均値・中央値・標準偏差・RMS(実効値)など計算し、そのデータの1s分の波形の特徴を取ること)

“一括マップ作成”機能で”エアコンプレッサ動作中”属性を指定し、マップの作成終了を待ちます。

Falseのデータが全体にあり、普段よくやる特徴量ではエアコンプレッサ動作のOn/Offは判定できないようです。
とりあえず、深堀らずに前処理をFFTに変えます。

125Hzのデータなので、0から62Hzまでの振幅を計算します。

シンプルに各周波数の値を使用してマップ化した結果です。

T_SNE/COSINEがエアコンプレッサ動作中をうまく表せているようなので、ヒートマップの出力をして詳細の確認をします。

左上の群れはTrue/Falseが共に存在し、また左右の群れにも一部お互いのデータが入っている事が分かります。
これは、特徴量の抽出やFFTなどを窓でデータを処理した場合、その1sの途中でTrueとFalseの切り替えタイミングが入った場合などに両方の周波数の性質を持ったデータが入り込んでしまったためかと思います。

それは後で詳細を確認するとし、以下のような設定で、エアコンプレッサ動作中の検出は可能であることが分かりました。

追加検証

上記により簡単に目的の振動を検出できることは分かりました。
技術コラムらしく、ここからはもうちょっと深掘った話をしていきます。

データ数を減らすために5Hzごとにバンド集約する

1Hzごとの振幅計算していたのを0-4Hz,5-9Hzでデータをまとめます。
方法は色々ありますが、今回は5列分の振幅の二乗和を入れました。

挙動としては1Hzごとと大きな差はないようで、こちらでも問題ないと思われます。データ数1/5になりました。

そもそも、エアコンプレッサ振動の分析をちゃんと行う

BIGDAT@Analysisによるエアコンプレッサ動作中判断については、「何も分析しなかったけど判断できます」で終わりです。
が、ここからもうちょっとちゃんと分析をしてみようと思います。

データを囲んで、目的変数の値を選択し、”着色グリッドとの差分”モードにすれば、差分特徴量が出てきます。25,24,49,48辺りが特徴のようです。

一応、一括相関分析機能でも確認します。

実質yの24Hzだけで判断できると思われます。
[目的変数別色グラフ作成]機能で、y-24/25Hzのフラグ:True/Falseの分布状態を確認してみます。
エアコンプレッサが動いていないFalseが赤です。

最低値部分を見れば、24/25Hzはきっちりエアコンプレッサ=Falseを切り出せそうだと分かりますが、Falseでもけっこう大きい値も取っているように見えます。
グラフを拡大します。

範囲の端の部分が大きな値を示しているようです。
これは1sで計算したため、1sウインドウ内でTrue/Falseの変化があったためと思われます。

本番環境ではここまでやる必要はありませんが、True/Falseの境を明確にする作業をしてみます。
(1)True/Falseの切り替えが途中であったウインドウを”Change”というフラグに変更する。

(2)その前後も”Change”にする(合計3行)、(3)さらにその前後も”Change”に変更する(合計5行)の3パターンです。
その上で、Falseだけにまた着色グラフを出力してみました。

(1)切れ目のみ

(2)切れ目+前後

(3)切れ目+前後x2

一部拡大ですが、(1)切れ目のみだとまだまだTrue/Falseの違いが明確になりませんでした。(2)と(3)は(1)よりはだいぶマシになりますが、部分的に混ざりそうな箇所がちょっとだけ残っているという感じでした。

いったんここでマップ化し、True/Change/Falseが綺麗に分かれるかを確認します。

True/Falseの両方が重なっている箇所(中心の一番上など)が分かれるかと思っていたのですが、そうではなくChangeは全体的にバラついていました。
この後、速度、温度なども含めた間使用マップにするので、その際にちゃんと調べることとします。

この辺はまたさらに手間が必要そうなので、次のコラムにしようと思います。xyzの合計で分析することにより、もっと楽ができないかも調べたいところです。

結論

今回の結果より、

  • FFTによる周波数変換を行うことで、エアコンプレッサ動作は明確に分離可能
  • 特にy軸24Hz付近の成分が支配的であることが分かった
  • 一方で、1秒ウインドウ内でON/OFFが切り替わる場合、特徴が混在する点に注意が必要

という知見が得られました。
また、これらの傾向は詳細な統計知識がなくても、マップ可視化により直感的に発見することが可能でした。

次のコラムでは、もうちょっと数値的な分析をしてみようと思います。

あなたへのおすすめ

お問い合わせ

サイバネットシステム株式会社
製品お問い合わせ窓口

iot@cybernet.co.jp

メールでのお問い合わせも承っております。
販売店契約に関するお問い合わせは、こちらからお願いいたします。

お問い合わせフォームはこちら