Amazon Web Services ブログ

AWS IoT SiteWise を使用して産業機器データの状況を把握し、インサイトを作り出す (Part 1)

この記事は Jan Borch によって書かれた Create insights by contextualizing industrial equipment data using AWS IoT SiteWise (Part 1) を翻訳したものです。

はじめに

製造業では、さまざまな施設にある機器やロボットから、一元化された AWS クラウドベースの IoT データレイクにデータを収集したいと考えるお客様が増えています。しかし、産業機器によって生成されるデータは、多くの場合、温度や圧力の時系列データのような、加工されていないデータポイントです。これらの未加工のデータストリームを産業データレイクに直接供給すると、取り込んだ機器データからデータアナリストがインサイトを得ることが困難になります。データアナリストは、産業機器の性能を分析するために、未加工のデータストリームに直接含まれていない情報を必要とする場合があります。製造年、場所、機器の製造元などのメタデータは、パフォーマンス指標に影響を与える可能性があります。

AWS IoT SiteWise は、産業機器データの収集、整理、分析を簡素化するマネージド AWS サービスであり、AWS IoT SiteWise アセットモデリング機能を使用して産業機器からキャプチャされた未加工のデータストリームの状況をとらえるのに役立ちます。このブログシリーズのPart 1 では、架空の産業ユースケースに基づいて、お客様が AWS IoT SiteWise のアセットモデリング機能を使用して産業機器のメタデータを管理する方法を紹介します。また、AWS IoT SiteWise 組み込みの演算子と関数ライブラリを使用して、集計されたメトリクスを計算するリアルタイム分析を実行する方法についても説明します。Part 2 では、取り込んだデータを AWS IoT Analytics にエクスポートして、未加工のデータ、メタデータ、および集計されたデータを組み合わせて、観測されたパフォーマンス低下の根本原因を理解することで、複雑なバッチ分析を実行する方法を示します。

サンプルユースケース

はじめに、工業炉を遠隔監視することを目標とした単純な産業シナリオを考えてみましょう。あなたの会社はさまざまな生産拠点に、金属加工物の焼きなましのような、同じ工業プロセスを実行する炉を所有しています。そして、生産拠点によって、製造時間と品質が異なることに気づきます。
次のプロパティを使用して AWS IoT SiteWise で炉をモデル化し、AWS IoT SiteWise Edge を使用して、Modbus TCP などを介してそれぞれの炉からこれらのデータポイントを収集します。

炉のアセットモデル
プロパティ名 プロパティタイプ 単位 サンプルデータ
炉の場所 Location 属性 STRING Paris factory, Chicago factory
炉の製造元 Manufacturer 属性 STRING Furnace Corp, Heat&Metal Corp
炉の設定温度 Setpoint 属性 INT ˚C 760
炉の製造年 YearOfConstruction 属性 INT 1999
現在の消費電力 Power 測定値 DOUBLE kW 51
現在の炉温度 Temperature 測定値 DOUBLE ˚C 399
炉の状態 State 測定値 INT IDLE, HEATING, HOLDING, COOLING
前回の保持時間
Last Holding Cycle Time
変換 DOUBLE 継続時間 (秒) 4h5m3s
過去24時間の平均保持時間
Avg. Holding cycle time
メトリクス (1 日) DOUBLE 継続時間 (秒) 4h5m3s

あなたは異なる機種が混在していることが効率の問題に関連していることを疑い、すべての炉の加熱時間および保持時間を製造元と製造年別にグループ化して比較することにしました。次のセクションでは、AWS IoT SiteWise と AWS IoT Analytics を使用して目的のレポートを生成する手順を説明します。

AWS IoT SiteWise で産業用アセットを作成してモデル化する

まず、AWS IoT SiteWise での炉のアセットモデルの作成方法の概要を説明します。AWS IoT SiteWise で産業用アセットをモデル化する方法の詳細については、「産業用アセットのモデリング」を参照してください。

炉のアセットモデルを作成する

AWS マネジメントコンソールにサインインし、AWS IoT SiteWise コンソールに移動します。
ナビゲーションバーで、ビルド (Build)モデル (Model)を選択して新しいモデルを作成します。これを Furnace と名付け、前の表で説明した静的属性とデフォルト値を定義します。

次に、下図のようにアセットモデルの測定値を定義します。炉は 4 つの異なる処理状態 State で動作し、IDLE (待機) から HEATING (加熱)、そして HOLDING (保持)、COOLING (冷却) へと移行していきます。Temperature は現在の炉の温度を示し、Power は現在の消費電力 (kW) を示します。

次のステップでは、未加工の測定値を使って計算を実行する AWS IoT SiteWise 変換を定義します。ここでは、いくつかの高度なAWS IoT SiteWise 時間関数を使用して、HOLDING から COOLING への状態変化を検出し、HOLDING サイクルの時間を Last Holding Cycle Time というメトリクスに保存しましょう。以下の式は、State が変化した際、直前の値が HOLDING であった場合にトリガーされます: if(pretrigger(State) == "Holding",...。条件が成り立つ場合、現在の状態変更時のタイムスタンプから前回の状態変更時のタイムスタンプを引いて、保持時間を計算します: timestamp(State) - timestamp(pretrigger(State))。AWS IoT SiteWise 時間関数の詳細については、「時間関数」を参照してください。

炉のオペレーターは、保持サイクルの持続時間の経時変化を監視することに興味があるかもしれません。そのために、Last Holding Cycle Time の平均を 5 分ごとに集計する最後のメトリクスを作成しましょう。実際のシナリオでは、より長い期間にわたる変動を比較するために、日次での集計の方が適しているかもしれません。

AWS IoT SiteWise を使用すると、ユーザーはアセットモデル階層を定義して、生産工程におけるそれぞれのアセットモデルに論理的な関連付けを作成できます。最後のステップとして、工場を表す Factory モデルを作成し、Furance モデルを指す階層定義を作成します。これにより、工場は階層構造を通じて、ある生産拠点に配置された複数の炉のグループを表せます。この階層は後ほどAWS IoT SiteWise Monitor で、工場内の炉のパフォーマンスメトリクスをダッシュボードで視覚化する際に使用します。

炉のアセットを作成する

ナビゲーションバーでビルド (Build)アセット (Assets) を選択し、アセットの作成 (Create asset) を選択して、Furnace モデルに基づいてアセットを作成します。たとえば、Paris Factory という名前の Factory アセットを 1 つ作成し、4 つの Furnace アセットを作成してアタッチして、静的なアセット属性に任意のランダム値を入力します。

これでアセットのモデリングと作成は終了し、AWS IoT SiteWise によってキャプチャされたデータの分析を開始できます。次のセクションでは、AWS IoT SiteWise に組み込まれている時系列最適化データストアを活用して、炉をリアルタイムに監視する方法を説明します。

AWS IoT SiteWise を使用してニアリアルタイムのデータ分析を行う

AWS IoT SiteWise アセットをテストするには、炉の温度、電力、および状態の各測定値のサンプルデータを生成する必要があります。このブログ記事では、実際の Modbus データソースに接続するのではなく、ラップトップで実行できる Python ベースのデータシミュレーター https://github.com/aws-samples/sitewise-iiot-data-simulator を使用します。README ファイルの指示に従って、シミュレーターをインストールして実行します。

AWS IoT SiteWise Monitor は、アセットモデルで定義した測定値、変換、メトリクスを視覚化する簡単な方法です。次のスクリーンキャプチャは、工場内の2つの炉のパフォーマンスを比較するための運用ダッシュボードの外観を示しています。AWS IoT SiteWise Monitor では、アセットモデルプロパティをダッシュボードにドラッグアンドドロップして、ノーコードでフルマネージド型ウェブアプリケーションを作成できます。このブログ記事では、独自のダッシュボードを設計するのは読者の裁量に任されています。手がかりとして、下図のダッシュボード作成に使用したウィジェットのいくつかを紹介します。このダッシュボードは、タイムラインウィジェットを使用して現在および以前の状態遷移を視覚化し、折れ線グラフを使用して温度と消費電力をプロットし、棒グラフを使用して最後の保持サイクル時間を表示しています。いくつかの KPI ウィジェットにより、オペレーターは炉の主要な KPI を一目で見ることができます。AWS IoT SiteWise Monitor ダッシュボードのセットアップ方法の詳細については、「AWS IoT SiteWise Monitor の開始方法」を参照してください。

AWS IoT SiteWise Monitor ダッシュボードを使用すると、Avg. Holding cycle time メトリクスは、Furnace001 (87 秒) が Furnace002 (76.5 秒) よりも長いことを明確に認識することができます。この保持時間は、パリ工場の全炉の平均 (82 秒) と比較しても長くなっています。しかし、この不一致の根本原因を理解するには、より詳細な分析が必要です。

クリーンアップ

継続的な課金が発生しないように、炉データシミュレーターを必ず停止してください。

まとめ

以上で、このブログシリーズの第 1 部は終わりです。このパートでは、AWS IoT SiteWise を使用して未加工の産業データストリームを強化して、リアルタイム分析を実行して産業プロセスの境界を検出し、サイクル期間や移動平均などのプロセスレベルメトリクスを計算する方法を確認しました。ダッシュボードでは、Avg. Holding cycle time の差異の原因を直接把握できません。そのため、このシリーズの 2 番目のブログ投稿ではこの点をさらに深く掘り下げます。第 2 部では、AWS IoT SiteWise のコールド階層ストレージ機能を活用して、収集した履歴データを Amazon S3 にエクスポートし、AWS IoT Analytics を使用して根本原因分析を実行して、Furnace001 の低パフォーマンスの原因を理解する方法を紹介します。

著者について

Jan Borch は、アマゾン ウェブ サービス (AWS) の IoT プリンシパルスペシャリストソリューションアーキテクトであり、過去 10 年間、お客様が AWS で業界最高のクラウドソリューションを設計および構築するのを支援してきました。過去 5 年間、彼はクラウドと IoT の交点に焦点を当て、AWS IoT Prototyping チームを率いて革新的なコネクテッド IoT ソリューションをヨーロッパ、中東、アフリカの AWS のお客様と共同開発しました。最近では、戦略的な IoT ワークロードを AWS 上で稼働するお客様に焦点を移しました。

この記事はソリューションアーキテクトの岡本晋太朗が翻訳しました。