電流センサを使用し、AIによる予知保全に必要なデータを効率的に収集

著者 Clive "Max" Maxfield(クライブ・マックスフィールド)氏

DigiKeyの北米担当編集者の提供

人工知能(AI)や機械学習(ML)の技術を駆使して、モータ、発電機、ポンプなどの機械の状態を監視したり、迫り来る問題について保守エンジニアに注意を喚起するという点で、モノのインターネット(IoT)は大きな関心を集めています。AI/MLシステムの設計者が予知保全を実装しようとする際に難しいのは、用途に最適のセンサを選択することです。もう1つの問題は、AI/MLアプリケーションの作成について何らかの経験を持つ設計者がそれほど多くないことです。

設計者はAI/MLシステムが機能する際の基になるデータを取得するために、強力なマイクロコントローラ開発プラットフォームと組み合わせた3軸加速度計のような高機能センサを選択しがちです。しかし多くの場合、単純な電流センサを中レベルで低コストのマイクロコントローラ開発プラットフォームと連携して使用することで目標を達成できます。

この記事では、電流センストランスを使用して、AI/MLアプリケーションを簡単に、しかもコスト効率の良い方法で実装するために必要なデータを取得するという考え方を紹介します。また記事では、低コストなArduinoのIoTマイクロコントローラ開発プラットフォームおよびCR Magneticsの電流センストランスを使用して、フィルタ一体型真空ポンプの状態を監視してフィルタの目詰まりをユーザーに知らせるための、電流センサを利用したシンプルな回路について説明します。さらに、連携するAI/MLアプリケーションの作成プロセスについても概説します。

AI/ML用のシンプルなセンサ

設計者はAI/MLアプリケーションが機能する際の基になるデータを取得するために、3軸加速度計のような高機能センサを選択しがちです。しかし、この種のセンサからは大量のデータが生成され、それらを操作することや理解することが難しくなる場合もあります。このような複雑さを避けるには、あらゆる事象には互いに関連性があることを思い出すべきでしょう。身体の一部が負傷すると他の部位に関連痛が感じられることがあるように、モータのベアリングが故障すると、そのモータを駆動するために使われる電流が変化する原因にもなり得ます。同様に、空気取入口が塞がれると、場合により過熱を引き起こすだけでなく、モータの駆動に使われる電流が変化する原因にもなります。

このように、機械動作のある側面を監視することにより、動作の他の側面についても何らかの示唆を得られる場合があります。つまり、かなりシンプルなセンサを使用して関連するパラメータを監視することでも、目標対象の監視とセンシングを実現することができるのです。このようなセンサには、たとえばCR Magneticsが提供する小型で低価格なCR3111-3000スプリットコア電流センストランスなどがあります(図1)。

CR MagneticsのCR3111-3000スプリットコア電流センストランスの画像図1:CR3111-3000スプリットコア電流センストランスは低コストで使いやすい電流検出器として、AI/MLによる予知保全アプリケーションの一次センサに使用できます。(画像提供:CR Magnetics)

CR3111-3000は、最大100Aの電流検出に使用できます(CR31xxファミリの他のデバイスはより低いまたは高い電流に使用できます)。このファミリのデバイスはすべて20Hz~1kHzの周波数範囲をサポートし、大半の産業用途に対応します。また、すべてのCR31xxデバイスがヒンジをともなうスナップロックを採用しており、電流通電ワイヤに干渉せずに取り付けることができます。

Arduino Nano 33 IoT

シンプルなAI/MLアプリケーションの試作に適した低コストなマイクロコントローラ開発プラットフォームの例として、ArduinoのABX00032 Arduino Nano 33 IoTがあります(図2)。Arduino Nano 33 IoTは、256KBのフラッシュメモリと32KBのSRAMを内蔵して48MHzで動作するArm® Cortex®-M0+ 32ビットATSAMD21G18Aプロセッサを搭載しており、さらにWi-FiとBluetooth両方のコネクティビティを備えています。

Arduino ABX00032 Nano 33 IoTの画像図2:Arduino ABX00032 Nano 33 IoTはAI/MLアプリケーションを構築するための低コストなプラットフォームとなり、IoTの一部として既存のデバイスを拡張(および新しいデバイスを作成)できます。(画像提供:Arduino)

データキャプチャ回路

この記事に合わせて使用する回路を、下の図3に示します。CR3111-3000は、測定したマシン駆動用電流を、1000:1の比率で大幅に小さい電流に変換します。

出力の変換に使用する回路の図図3:この回路を使用して、CR3111-3000からの出力をArduino Nano 33IoTの3.3V入力で使用可能な形式に変換します。(画像提供:Max Maxfield氏)

CR3111-3000の2次(出力)コイルに接続されている抵抗R3は負荷抵抗器として機能し、そこを流れる電流の大きさに応じて、その抵抗値に比例した出力電圧を生成します。

抵抗R1とR2は分圧器として機能し、1.65Vの値で「仮想接地」を形成します。これにより、CR3111-3000からの値が正と負にスイングしながらもレールには当たりませんが、それはマイクロコントローラが負の電圧を受け入れないからです。コンデンサC1はRCノイズフィルタの一部を形成しますが、このフィルタは3.3V電源からのノイズを減らして付近の漂遊電界が測定に入り込むのを低減し、これにより分圧器のグランドとしての機能が向上します。

一体型フィルタを備えた真空ポンプを、デモ用のテストベンチのために使用しました。この試作用に、Tripp LiteP006-001 1フィート延長電源コードを電源と真空ポンプの間に挿入しています(図4)。

1フィート延長電源コードの画像図4:電流センサを受け入れるように改造された1フィート延長電源コード。(画像提供:Max Maxfield氏)

試作回路は、筆者が集めたスペアパーツからの部品を使用して実装しています(図5)。すぐに利用できる同等の部品には、次のものがあります。

小型ブレッドボードを使用して実装された試作回路の画像図5:試作回路は、小型ブレッドボードと筆者が集めたスペアパーツからの部品を使用して実装されています。(画像提供:Max Maxfield氏)

電流センサからのリード線については、線の末端にPololu Corp.1931 22-28AWG圧着ピンを圧着しています。そしてこれらのピンを、同じくPololuの5 x 1の黒い長方形ハウジング、1904(2.54mmピッチ)に挿入しています。

AI/MLアプリケーションの作成

AI/MLアプリケーションを作成するために、Cartesiumのウェブサイトから入手できるNanoEdge AI Studioのの無料トライアル版を使用しています(「あらゆる産業システムに人工知能を簡単に実装する手段」もご覧ください)。

NanoEdge AI Studioを起動すると、ユーザーは新規プロジェクトを作成して名前を付けるように求められます。次に、使用するプロセッサ(Arduino Nano 33IoT開発ボードの場合はArm Cortex-M0+)、使用するセンサのタイプ(ここでは電流センサ)、およびこのAI/MLモデル専用に使う最大メモリ量(このデモでは6KBを選択)が求められます。

AI/MLモデルを作成するには、まず動作良好のデータと動作不良のデータの代表サンプルをキャプチャする必要があります(図6)。電流センサからの値を読み取るために、簡単なArduinoスケッチ(プログラム)を作成しました。このデータは、マイクロコントローラのUSBポートから、NanoEdge AI Studioにオンザフライで直接ロードできます。または、このデータをテキストファイルにキャプチャし、編集(実行開始/終了時にスプリアスサンプルを削除)してから、NanoEdge AI Studioにロードすることもできます。

動作良好/正常データ(上)と動作不良/異常データ(下)の比較図図6:動作良好/正常データ(上)と動作不良/異常データ(下)の比較。人間の目には色以外に違いがそれほどないように見えますが、適切なAI/MLモデルではこれらを区別できます。(画像提供:Max Maxfield氏)

動作良好データは、通常モードで稼働する真空ポンプから収集されたものです。動作不良データを収集するために、ポンプのエアフィルタを紙製ディスクで塞ぎました。

NanoEdge AI Studioは、動作良好データと動作不良データを使用して、5億通りの可能な組み合わせから最善のAI/MLライブラリソリューションを生成します。その進行状況は、さまざまな方法で表示できます。たとえば、この例では90%に設定された閾値に対して、正常な信号(青)が異常な信号(赤)からどの程度区別されるかを示す散布グラフなどがあります(図7)。

最大5億通りのAI/MLモデルを評価するNanoEdge AI Studioのグラフ(クリックして拡大)図7:NanoEdge AI Studioは最大5億通りの各種AI/MLモデルを評価し、正常動作のデータと異常動作のデータにおける最適な構成を判断します。初期段階のモデルで成功に至ることは稀で(上グラフ)、ツールが自動的に評価を繰り返すことでソリューションが次第に向上し、このプロセスは開発者が評価を停止するまで続きます(下グラフ)。(画像提供:Max Maxfield氏)

通常は、初期段階のモデルで正常動作のデータと異常動作のデータを区別するのは難しく、システムはアルゴリズム要素のさまざまな組み合わせを評価し、それを繰り返すことでソリューションの精度を向上させます。ここでは、58,252ものライブラリの評価を経て、プロセスが停止されています。得られたライブラリ(モデル)は、わずか2KBのサイズです。

重要な点として、この段階はモデルが訓練されていない状態です。多数のさまざまな要因が、機械がどのように稼働するかに影響します。たとえば、外観が同じ2台の真空ポンプが、1台はコンクリートスラブ、もう1台は吊り床などの異なる場所に取り付けられている場合です。あるいは、一方の機械が高温多湿の環境にあり、もう一方の機械が低温の乾燥した環境にある場合、さらには、一方の機械が長い金属管に接続されており、もう一方は短いプラスチック管に接続されている場合などです。

そこで、次のステップでは、現実に配備済みの機械に取り付けられているマイクロコントローラおよびセンサで実行するアプリケーションにライブラリを組み込みます。さまざまな機械におけるAI/MLモデルは、現実の設備から得た良好動作のデータを使用して自らを訓練します。この自己訓練期間を経た上で、AI/MLモデルに機械の状態監視を任せることが可能になり、異常と傾向を監視して見出し、得られた結果と予測を監督官に報告できます。

まとめ

AI/MLを活用した予知保全によって、エンジニアは実際に故障が生じる前に問題に対処できます。しかし、予知保全システムの実装に使用するハードウェアは、できるだけ簡潔でコスト効率の良いものである必要があります。また、設計者が分析実行に欠かせないソフトウェアにすぐアクセスできることも必要です。

本記事で述べたように、複雑な多軸加速度計および連携するハードウェアを選ぶ代わりに、シンプルで低コストな小型CR3111-3000スプリットコア電流トランスを低コストのマイクロコントローラプラットフォームに接続することにより、必要なセンシングとデータ収集を実施できます。AI/MLツールおよびアルゴリズムの進化にともない、AI/MLのエキスパートでなくても高度なAI/MLモデルを作成し、それをシンプルなセンシングアプリケーションから複雑なアプリケーションにまで幅広く展開できます。

DigiKey logo

免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、DigiKeyの意見、信念および視点またはDigiKeyの公式な方針を必ずしも反映するものではありません。

著者について

Image of Max Maxfield

Clive "Max" Maxfield(クライブ・マックスフィールド)氏

Clive "Max" Maxfield氏は、1980年にイギリスのシェフィールドハラム大学で制御工学の理学士号を取得し、メインフレームコンピュータの中央処理装置(CPU)の設計者としてキャリアをスタートしました。Maxは長年にわたって、シリコンチップから回路基板まで、果ては脳波増幅器からスチームパンクな予測エンジンまであらゆる設計に携わってきました(細かいことは聞かない)。彼はまた、30年以上にわたってEDA(電子設計自動化)の最前線にいます。

また彼は、『Designus Maximus Unleashed』(アラバマ州で発禁)、『Bebop to the Boolean Boogie』(型破りなエレクトロニクス界へのガイド)、『Where Electronics Begins』(EDA関連)、『Instant Access』(FPGA関連)、『How Computers Do Math』(同)をはじめとする多くの書籍の著者や共著者として活動しています。彼のブログ Max's Cool Beans をチェック!

出版者について

DigiKeyの北米担当編集者