6軸モーションセンサーを使い振動を可視化する研究開発を行いました

工場での生産管理を行う上で、人の手を使って定期的に振動計を機械に当て、手書きでグラフに書き込む…そんな振動計測をしている方もいっらしゃるのではないでしょうか?
IoT.kyoto では 2018年 8月、6軸モーションセンサーを使い、振動を常に可視化できる IoT サービスの研究開発を行いました。今回はこの研究開発の担当者にインタビューし、記事にまとめました。

実際に可視化した内容

実際に IoT.kyoto VIS で可視化した振動データ
クリックすると拡大画像が見られます。

 

−−6軸モーションセンサーとはどういった装置ですか?

センサー自体が横のx軸縦のy軸奥行きのz軸を持っているセンサーで、各方向の振動を数値化して検出できる装置です。モーションセンサーを中心とするので、モーションセンサーを人に例えると、床に立っている時は頭の方向がy軸、手を横に広げた方向がx軸になりますし、寝転んだ状態でもやっぱり頭の方向がy軸、手を広げた方向がx軸になります。

今回は振動のみで考えているので、回転のことは考えていません。

 
今回使用している6軸モーションセンサー

 

−−このモーションセンサーを使って研究開発を行った理由は何ですか?

元々、上司が「面白そうなセンサーがある!」と購入したのが始まりです。ただ、当社がお取引しているのは工場関係の企業様が多いので、そこで何か使えないか?と考えました。現在、お取引している企業様では手動で振動計を使って定期的に検査をして、モニターに表示された数字を見て、異常がないか生産管理を行っていらっしゃいます。手作業なので人件費もかかりますし、効率もあまりよくないですよね。

そこで、この機械にセンサーを取り付けて振動の数値を可視化することで、手作業で確認しなくても効率的に生産管理ができるのではないか、お客様の役に立てるのではないかと思い、開発をすることにしました。
 

−−振動データを可視化する処理の流れを教えてください

まずはアーキテクチャを見てください。

 
モーションセンサーのアーキテクチャ

 

処理の流れを簡単に説明しますね。

1. 有線の6軸モーションセンサーゲートウェイ(ネットワークを中継する機器)を直接繋げる

2. 取得したデータをzipファイルに圧縮する

3. ゲートウェイに刺さっている SIMカードからキャリア回線を使い Amazon S3 という AWS のインターネット用のデータストレージサービスにファイルデータを格納する

4. AWS Lambda という AWS のクラウド上でアプリケーションを実行するサービスを使い、「S3 にデータが送られた時に送られたデータの情報を Lambda に渡す」という機能をつけて Lambda が S3 から送られてきた zipファイルを解凍する

5. 解凍したデータを Lambda が1行ずつ確認して AWS のデータベースサービス Dynamo DB にデータを送る

6. IoT.kyoto VIS が Dynamo DB に送られた数値をグラフ化して可視化する

 
今回使用しているゲートウェイ(OpenBlocks IoT)

 

−−この開発を進めていく中で、何か課題は出てきましたか?

モーションセンサーは1秒間に883個のデータを作ります。これを全てデータとして流してしまうと、ゲートウェイ側で処理がしきれず、仮に処理ができてもLambda側でデータが欠落したり、データを送る速度が遅くなってタイムラグが発生してしまいます。
また、1秒間に大量のデータを送るということは1日で膨大な量の通信が起こるということです。そうすると、通信料も1日に数千円、数万円とコストが膨れ上がります。
今回の研究開発は IoT スターターパックで使われるものなので、手軽に始められて、できるだけコストのかからないものにする必要がありました。
 

−−そのコスト削減のために何を行いましたか?

今回はこの1秒間に取得する 883個のデータを1秒間に10個にまとめて可視化することにしました。 IoT.kyoto VIS には1秒間に最大10個のデータを表示できるようにしています。

また、毎秒10個送っていても通信料は増えてしまうので、1分間に1回、60秒なので、60秒 × 10個のデータを圧縮して渡しています。1分に1回なのでリアルタイム性はほぼないんですが、今回重きを置くべきなのはリアルタイム性ではなく、精度だと思っています。本当は機械が不調なのに、調子がいいように見えるという方が困りますよね。なので、今回は1分間に1回、最大600個のデータを送って精度のいいデータが取れるようにしました。
 

−−その他に何か工夫したことはありますか?

通信料を減らそうとかデータを正確に送ろうという点はお客様に使っていただくことを念頭に考えることなんですけど……。このシステムを自分以外の人が担当する場合にメンテナンスなど、他の人が見ても「シンプルでわかりやすいアーキテクチャ」、「複雑なコードもあるけれど、コメントを読めば何をしているか読み解けるコード」を意識して、エンジニア目線でもメンテナンスしやすい、修正しやすい、勉強しやすいシステムにしました。

−−最後に何か伝えたいことはありますか?

開発担当者から見ても、スターターパックとしては豪華なシステムになりました。お客様に今回開発したシステムを使っていただいて、手間のかかる生産管理を更に効率よく、精度よく行っていただけたら、このシステムを作った甲斐があったと思えます。


インタビュー、ありがとうございました。
「お客様が使っている姿を想像できるシステムを作って誰かの役に立ちたい」という言葉が印象的でした。

今回ご紹介した研究開発は IoT スターターパックにて取り扱っています。ぜひ、ご検討ください。