Amazon Web Services ブログ

SAP on AWS による製造不良のプロアクティブな検出と防止

この投稿は、Ganesh Suryanarayanan、Krishnakumar Ramadoss、Joseph Rosing、Manoj Muthukrishnan によって執筆されたものです。

はじめに

機械学習は、欠陥をより速く検出し(場合によっては予測し)、スケーラブルで低コストのソリューションによって従来のシックスシグマのビジネスプロセスの改善を補強することで、ますます品質の総コストを下げることができるようになっています。しかし、多くの産業用機械学習のユースケースと同様に、機械学習のインサイトは、誰かがそれに基づいて行動する程度にしか価値がありません。そのため、インサイトを既存の品質管理ワークフローやビジネスプロセスに統合することが重要です。このブログでは、Amazon Lookout for Vision を使用してコンピュータビジョンベースの欠陥検出を適用し、欠陥通知を SAP Quality Management(QM) に送信してこの統合を自動化し、ファーストパス歩留まり(FPY)、ロールスループット歩留まり(RTY)、および顧客満足度を改善する方法を詳しく説明します。品質管理におけるコンピュータビジョンの活用は、検査のサンプル数を増やすことができるため、歩留まりや不良品の削減に直結します。

Amazon Lookout for Vision

DafgardGeneral Electric などのお客様は、Amazon Lookout for Vision を利用して、コンピュータビジョンベースの検査を自動化し、規模を拡大しています。このマネージド・サービスは、コンピュータビジョンを使って、電子製品の部品の配置ミスや欠落、金属構造の表面欠陥や損傷、生産ラインの不規則性、さらにはシリコンウエハーの極小の欠陥まで特定することができます。その結果、お客様は、より高価な固定ビジョンシステムや一貫性のない手動検査ポイントを、より低コストのカメラと機械学習によって排除し、不具合を根本からキャッチして品質管理を向上させることができます。メリットや価格などの詳細は、こちらをご覧ください。

SAP Quality Management(QM)

SAP の中で、QM アプリケーションは品質計画、品質検査、品質管理に関連するタスクをサポートします。さらに、品質証明書の作成を管理し、是正処置計画によって問題を管理します。

SAP QM は、調達、生産、販売など、いくつかの主要なビジネスプロセスに不可欠な要素です。例えば、ベンダーから最初に納入された原材料の品質コンプライアンスを検証したり、生産中や生産後の原材料の品質記録を記録したりするために使用することができます。また、完成品を出荷する前に、顧客の品質仕様に適合していることを確認するためにも、QM は 使用されます。品質計画では、マスターデータ、検査計画、検査や校正のためのコード/クラス/特性/情報記録などを設定する。生産工程での品質検査を記録するために、ユーザーは検査ロットを作成し、物理的な検査を行い、検査結果を必要に応じて割り当てられた是正処置とともに記録します。営業、生産、調達の業務フロー例は以下の通りです。

販売

生産

調達

Amazon Lookout for Vision と SAP QM の連携

本ソリューションは 2 つのパートで構成されています。
AWS Look out for vision を使用した異常検知モデルのセットアップ。Lookout for Vision を使い始めるために、プロジェクトを作成し、データセットを作成し、モデルを訓練し、テスト画像で推論を実行します。最終的に、ソリューションの後のセクションで説明するように、モデルをホストして使用します。

ワークフローの設定と SAP との統合では、Amazon lookout for vision anomaly detection API を使用して、検査プロセスの一部として Lookout for Vision モデルを利用して不具合を特定し、SAP で適切なアクションを取りますが、次のセクションで掘り下げていきます。

本ソリューションは、以下のビルディングブロックから構成されています。

  1. 設備(カメラ):製造設備のカメラからの画像は、コンピュートをサポートするカメラから直接取り込むか、カメラから画像を収集し S3 にアップロードするクライアントアプリケーションを経由して取り込むかのどちらかになります。ここでは簡単のため、手動で S3 バケットに画像をアップロードすることにします。
  2.  S3 バケット:このバケットは、機材が撮影した画像の着地点として使用します。
  3. オーケストレーションと API 統合のための Lambda :このサンプルパッケージには、SAP と接続し、HTTP レイヤーを通じて OData サービスを消費するための Lambda レイヤーが含まれています。バケットに画像が着弾すると、S3 オブジェクトの通知により Lambda 関数が呼び出され、ビジョンに注目する呼び出しを行うことで画像が異常であるかどうかを検知し、推論結果を SAP に渡して不具合を作成する処理をオーケストレーションします。
  4.  Amazon Lookout for Vision の異常モデル :サンプルデータセットを用いて学習させた Amazon look out for vision モデルを、前項と同様にテストし、ホスティングして使用します。
  5.  SAP 統合のためのメタデータデータストア :メタデータを保存するために DynamoDB テーブルも使用します。
  6. シークレットマネージャー : Lambda 経由で OData サービスにアクセスするための SAP のクレデンシャル
  7.  SAP ゲートウェイ : OData API を公開するために SAP ゲートウェイが必要になります。
  8.  SAP S/4 HANA または SAP ECC。

ソリューションのデプロイ

このデプロイプロセスには、3 つの重要なステップがあります。最初のパートは、モデルのセットアップです。

Amazon Lookout for Vision を使用した異常検知モデルのセットアップ

コンソールまたは SDK を使用して、lookout for vision を使用して異常検出モデルを構築することができます。

今回はシンプルにするため、クラウド形成スタックを使用して Sagemaker notebook インスタンスを作成します。このインスタンスには、必要なサンプル基板画像と、look out for vision プロジェクトの作成、モデルのトレーニング、およびモデルのホストのための Jupyter ノートブックも付属しています。クラウド形成テンプレートとビジョンモデルをデプロイするための手順にアクセスするには、こちらのサンプルリポジトリの手順に従ってください。

SAP の設定
前提条件

  1.  VPC トラフィックが OData サービスにアクセスすることを許可されている組み込みゲートウェイを持つ SAP S/4 HANA システム
  2.  SAP ゲートウェイがハブ展開されている場合、SAP ゲートウェイシステムは VPC からアクセス可能である必要があります。
  3.  Notification タイプのマスターと構成データ、および必要に応じてその他の関連する QM 構成が設定されている必要があります。

SAP バックエンドシステムでは、OData サービスを有効にします。以下の OData サービスは、SAP S/4 HANA アプライアンスの一部として提供されており、このサンプル統合では、欠陥の作成と欠陥への画像の添付にこれらのサービスに依存します。

  1. トランザクション /IWFND/MAINT_SE を使用して、サービス API_DEFECT_SRV をアクティブにします。
  2. サービス  API_CV_ATTACHMENT_SRV を起動します。
  3. マテリアルマスタに検査が必要なマテリアルを作成する。ここでは、マテリアルマスタに作成されたマテリアル CB-FL-001 を使用します。
  4. 必要な権限を持つサービスユーザーを SAP に作成します。この権限には、バックエンドシステムにおけるOData サービスの開始権限と、不具合を作成するための業務権限が含まれている必要があります。

統合ソリューションの AWS デプロイと設定

前提条件

  • AWS Cloud Development Kit (CDK) は、サポートされている 5 つのプログラミング言語のうちの 1 つで、クラウド基盤をコードとして定義することができます。このサンプル統合ソリューションのビルディングブロックは、必要なリソースを作成するための CDK としてパッケージ化されており、簡単に導入することができます。 AWS CDK のインストール手順については、 AWS CDK のドキュメントを参照してください。
  • SAP の認証情報を格納するためのシークレットマネージャーリソースを作成します。これらの認証情報は、OData サービスにアクセスするために SAP と認証するためにAWS Lambda で使用されます。
  • 開発環境として AWS Cloud9 環境を用意します。こちらのAWS Cloud9 のセットアップ方法を参照して、インスタンスタイプを t2.micro、OS を Amazon Linux2 として EC2 環境を構築します。

デプロイメント

インテグレーション全体はパッケージ化されており、こちらのサンプルリポジトリからクローンすることができます。スタックのデプロイは AWS CloudFormation で確認することができます。デプロイに成功したサンプルは以下のように表示されます。

  1. 本スタックで作成した DynamoDB テーブルに、SAP に不具合を発生させるために必要なメタデータを以下のように保持します。
    DynamoDB項目
  2. DynamoDB Item を作成し、必要に応じて材料や工場を更新するために使用できる JSON のサンプルは次のとおりです。
{<br />"notiftype": "06",<br />"equipment": "CAM-01",<br />"DefectClass": "92",<br />"DefectCode": "1",<br />"DefectCodeCatalog": "9",<br />"plant": "1710",<br />"DefectCategory": "06",<br />"DefectCodeGroup": "QM-E",<br />"material": "CB-FL-001"<br />}

ソリューションのテスト

さて、ソリューションの展開に成功したので、テストを実行してみましょう。

  1. コンソールから、stack で作成された s3 バケットに移動します。
  2. 次のフォルダに移動します。このフォルダには、検査の一部として、機器によってキャプチャされた製品の画像が取り込まれる予定です。異常をシミュレートするために、モデル学習に使用したリポジトリの一部として公開されている追加回路基板データセットから、このフォルダに不良画像を手動でアップロードします。
  3. 異常をシミュレートするために、クローンした git リポジトリから、circuitboard>extra_images フォルダに移動し、以下のように extra_images-anomaly_5.jpg ファイルを s3 バケットにアップロードしてください。

    不具合画像 (extra_images-anomaly_5.jpg) は、通常の回路基板の画像と比較して、LED 電球の部品が欠落している。

  4.  S3 オブジェクトの通知により Lambda が起動し、Lambda 関数が look out for vision の呼び出しにより画像が異常かどうかを検出する処理をオーケストレーションし、その推論結果を SAP に戻して不具合を作成することになります。Lambda の呼び出しやログは、以下のように Lambda コンソールで確認することができます。

    Lambda から CloudWatch に書き込まれたログから、異常検知の一環として look out for vision モデルに画像が送られ、その推論結果が SAP OData サービスに引き渡されて SAP に欠陥が作成され、欠陥番号がログに残っていることがわかります。
  5.  SAP に作成された欠陥の検証を行います。Fiori launchpad を起動し、SAP が QM の一部として提供しているアプリ「manage defects」を検索し、Lambda 関数で作成された不具合を検索します。

クリーンアップ

このブログで作成したリソースが継続的に課金されないように、AWS アカウントのクリーンアップを忘れずに行いましょう。この CDK アプリで作成したリソースを全て削除するために、以下のコマンドを実行します。

cdk destroy

Lookout for vision のモデルやデータセットを削除するには、CloudFormation – Select your stack を選択し、Delete Stack を押してください。

まとめ

Amazon Lookout for Vision のメリットは、検査のばらつきを抑え、品質の歩留まりを向上させるために、コンピュータビジョンベースの品質検査を低い総コストでスケールさせることができることです。しかし、産業業務における機械学習のアウトプットは、機械学習の知見に基づいたアクションを起こした場合にのみ、価値ある結果をもたらします。変更管理の負担を軽減し、Lookout for Vision のインサイトに確実にアクションを起こすために、本ブログでは、SAP Quality management に Lookout for Vision の不具合を自動的に記録する方法を示しました。その結果、ユーザーは Lookout for Vision を既存の SAP QM 駆動の品質管理プロセスに統合し、コンピュータビジョンベースの機械学習の価値を加速させることができます。Amazon Lookout for Vision の詳細については、Amazon Lookout for Vision Resources のページをご覧ください。

翻訳は Partner SA 松本が担当しました。原文はこちらです。