OPC UA ソースをセットアップする - AWS IoT SiteWise

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

OPC UA ソースをセットアップする

AWS IoT SiteWise コンソールまたは SiteWise Edge ゲートウェイ機能を使用して、ローカル OPC UA サーバーを表す UA ソースを定義して SiteWise Edge OPC ゲートウェイに追加できます。

OPC UA ソースを設定する (コンソール)

コンソールを使用して、次の手順で OPC UA ソースを設定できます。

AWS IoT SiteWise コンソールを使用して OPC UA ソースを設定するには
  1. AWS IoT SiteWise コンソールに移動します。

  2. ナビゲーションペインで、[ Gateways] を選択します。

  3. SiteWise エッジゲートウェイを選択して OPC UA ソースを追加します。

  4. [Add data source] (データソースを追加する) を選択する。

  5. ソースの名前を入力します。

  6. データソースサーバーの [Local endpoint (ローカルエンドポイント) ] を入力します。エンドポイントには、IP アドレスまたはホスト名を指定することができます。また、ローカルエンドポイントにポート番号を追加することもできます。例えば、ローカルエンドポイントは次のようになります。 opc.tcp://203.0.113.0:49320

    注記

    SiteWise Edge ゲートウェイに Deployment type Industrial Edge デバイスの - 新しい があり、Edge アプリケーションと同じ Industrial Edge Device で実行されている AWS IoT SiteWise Edge OPC UA Server アプリケーションからデータを取り込む場合は、「」と入力しますopc.tcp://ie-opcua:48010

  7. (オプション) 選択用のノード ID には、ノードフィルターを追加して、 に取り込まれるデータストリームを制限します AWS クラウド。デフォルトでは、 SiteWise Edge ゲートウェイはサーバーのルートノードを使用してすべてのデータストリームを取り込みます。ノードフィルターを使用すると、 でモデル化するデータへのパスのみを含めることで、 SiteWise エッジゲートウェイの起動時間とCPU使用量を削減できます AWS IoT SiteWise。デフォルトでは、 SiteWise エッジゲートウェイは で始まるものを除くすべての OPC UA パスをアップロードします/Server/。OPC UA ノードフィルターを定義するには、ノードパスと *および ** ワイルドカード文字を使用できます。詳細については、「OPC UA ノードフィルターを使用する」を参照してください。

  8. 送信先 で、ソースデータの送信先を選択します。

    • AWS IoT SiteWise リアルタイム – データを AWS IoT SiteWise ストレージに直接送信するには、これを選択します。データをリアルタイムで取り込み、モニタリングし、エッジでデータを処理します。

    • AWS IoT SiteWise Amazon S3 を使用してバッファリング — Parquet 形式でデータを Amazon S3 に送信し、 AWS IoT SiteWise ストレージにインポートします。データをバッチで取り込み、履歴データを費用対効果の高い方法で保存するには、このオプションを選択します。任意の Amazon S3 バケットの場所と、Amazon S3 にデータをアップロードする頻度を設定できます。への取り込み後にデータを処理する方法を選択することもできます AWS IoT SiteWise。データと Amazon S3 の両方 SiteWiseで使用できるようにするか、Amazon S3 からデータを自動的に削除するかを選択できます。 Amazon S3

      • Amazon S3 バケットはステージングおよびバッファリングメカニズムであり、parquet 形式のファイルをサポートしています。

      • ストレージ に AWS IoT SiteWise データをインポート チェックボックスをオンにすると、データは最初に Amazon S3 にアップロードされ、次にストレージにアップロード AWS IoT SiteWise されます。

        • Amazon S3 からデータを削除するチェックボックスをオンにすると、データは SiteWise ストレージにインポートされた後に Amazon S3 から削除されます。

        • チェックボックスをオフにすると、Amazon S3 からデータを削除すると、データは Amazon S3 と SiteWise ストレージの両方に保存されます。

      • チェックボックスをオフにすると、データをストレージ に AWS IoT SiteWise インポートすると、データは Amazon S3 にのみ保存されます。 SiteWise ストレージにはインポートされません。

      AWS IoT SiteWise が提供するさまざまなストレージオプションの詳細については、データストレージの管理「」を参照してください。料金オプションの詳細については、AWS IoT SiteWise 「 の料金」を参照してください。

    • AWS IoT Greengrass ストリームマネージャー – AWS IoT Greengrass ストリームマネージャーを使用して、 の AWS クラウド チャネル AWS IoT Analytics、Amazon Kinesis Data Streams のストリーム、 のアセットプロパティ AWS IoT SiteWise、または Amazon Simple Storage Service (Amazon S3) のオブジェクトにデータを送信します。詳細については、「 AWS IoT Greengrass Version 2 デベロッパーガイド」の AWS IoT Greengrass 「 Core でデータストリームを管理する」を参照してください。

      AWS IoT Greengrass ストリームの名前を入力します。

    データソースを設定するときに、選択用のノード ID を使用してデータフローの送信先を決定します。

    • Amazon S3 を使用して同じデータがAWS IoT SiteWise リアルタイムとバッファリングの両方に発行される場合は、両方の送信先に発行する 2 つのデータソースを追加する必要があります。 AWS IoT SiteWise Amazon S3

    • データを分割して、その一部をAWS IoT SiteWise リアルタイム に発行し、もう一方の部分を AWS IoT SiteWise Amazon S3 を使用してバッファリングするには、次のデータエイリアスをフィルタリングする必要があります。

      /Alias01/Data1 /Alias02/Data1 /Alias03/Data1 /Alias03/Data2

      例えば、/**/Data1ノードフィルター、AWS IoT SiteWise リアルタイム を指すデータソースと、Amazon S3 を使用して/**/Data2バッファリングされた を指す別のデータソースを追加できます。 AWS IoT SiteWise Amazon S3

  9. 詳細設定ペインでは、次の操作を実行できます。

    1. ソースサーバーと SiteWise Edge ゲートウェイ間で転送中の接続とデータのメッセージセキュリティモードを選択します。このフィールドは、OPCUA セキュリティポリシーとメッセージセキュリティモードの組み合わせです。OPC UA サーバーに指定したものと同じセキュリティポリシーとメッセージセキュリティモードを選択します。

    2. ソースで認証が必要な場合は、認証設定リストから AWS Secrets Manager シークレットを選択します。 SiteWise Edge ゲートウェイは、このデータソースに接続するときに、このシークレットの認証情報を使用します。シークレットをデータソース認証に使用するには、 SiteWise エッジゲートウェイの AWS IoT Greengrass コンポーネントにシークレットをアタッチする必要があります。詳細については、「データソース認証の設定」を参照してください。

      ヒント

      データサーバーに、[Allow anonymous login (匿名ログインを許可) ] というオプションがある場合があります。このオプションが [はい] の場合、ソースは認証を必要としません。

    3. (オプション) データストリームプレフィックスを有効にする - オプション を選択して、データストリームプレフィックスをアクティブ化できます。

      1. データストリームプレフィックス を入力します。 SiteWise Edge ゲートウェイは、このソースからのすべてのデータストリームにこのプレフィックスを追加します。データストリームのプレフィックスを使用して、異なるソースから同じ名前を持つデータストリームを区別します。各データストリームは、アカウント内で一意の名前を持つ必要があります。

    4. (オプション) データ型変換オプションを選択すると、サポートされていない OPC UA データ型を に取り込む前に文字列に変換できます AWS IoT SiteWise。単純なデータ型の配列値をJSON文字列に変換し、 DateTime データ型を 8601 ISO 文字列に変換します。詳細については、「サポートされていないデータ型の変換」を参照してください。

    5. (オプション) プロパティグループ で新しいグループを追加 を選択します。

      1. プロパティグループの「名前」を入力します。

      2. [Properties] (プロパティ) の場合。

        1. ノードパス には、OPCUA ノードフィルターを追加して、 にアップロードされる OPC UA パスを制限します AWS IoT SiteWise。形式は、選択 のノード ID に似ています。

      3. [Group settings] (グループ設定) については、次のようにします。

        1. データ品質設定 で、 AWS IoT SiteWise コレクターが取り込むデータ品質のタイプを選択します。

        2. スキャンモード設定 ではスキャンモード を使用して標準のサブスクリプションプロパティを設定します。サブスクライブまたはポーリング を選択できます。スキャンモードの詳細については、 OPC UA でデータ取り込み範囲をフィルタリングする を参照してください。

          Subscribe
          すべてのデータポイントを送信するには
          1. Subscribe を選択し、以下を設定します。

            1. データ変更トリガー — データ変更アラートを開始する条件。

            2. サブスクリプションキューのサイズ — モニタリング対象項目の通知がキューに入れられる特定のメトリクスの OPC- UA サーバー上のキューの深さ。

            3. サブスクリプションの発行間隔 — サブスクリプションの作成時に指定された発行サイクルの間隔 (ミリ秒単位)。

            4. スナップショット間隔 - オプション — AWS IoT SiteWise Edge が安定したデータストリームを取り込むようにするためのスナップショット頻度のタイムアウト設定。

            5. スキャンレート — SiteWise Edge ゲートウェイがレジスタを読み取るレート。 AWS IoT SiteWise は、 SiteWise Edge ゲートウェイの最小許容スキャンレートを自動的に計算します。

            6. Timestamp – OPC UA データポイントに含めるタイムスタンプ。サーバーのタイムスタンプまたはデバイスのタイムスタンプを使用できます。

              注記

              タイムスタンプ設定にはプロパティグループを使用します。

          2. Deadband 設定 で、Deadband タイプ を設定します。デッドバンドタイプは、ソースが に送信するデータと AWS IoT SiteWise、破棄するデータを制御します。デッドバンド設定の詳細は、OPC UA でデータ取り込み範囲をフィルタリングする を参照してください。

            • なし — 関連付けられたサーバーは、このプロパティグループのすべてのデータポイントを送信します。

            • パーセンテージ — 関連付けられたサーバーは、データの範囲の指定されたパーセンテージから外れたデータのみを送信します。この範囲は、各ノードに定義されているエンジニアリングユニットの最小値と最大値に基づいてサーバーによって計算されます。サーバーがデッドバンドの割合をサポートしていない場合、または定義されたエンジニアリングユニットがない場合、ゲートウェイは以下に示す最小値と最大値を使用して範囲を計算します。

            • 絶対 – 関連付けられたサーバーは、特定の範囲外のデータのみを送信します。

            1. Deadband 値をデータ範囲のパーセンテージとしてデッドバンドに設定します。

            2. (オプション) 最小範囲 - オプション、最大範囲 - オプションを使用して、デッドバンド範囲の最小値と最大値を指定します

          Poll
          特定の間隔でデータポイントを送信するには
          • ポーリングを選択し、以下を設定します。

            1. スキャンレート – SiteWise Edge ゲートウェイがレジスタを読み取るレート。 AWS IoT SiteWise は、 SiteWise Edge ゲートウェイの最小許容スキャンレートを自動的に計算します。

            2. Timestamp – OPC UA データポイントに含めるタイムスタンプ。サーバーのタイムスタンプまたはデバイスのタイムスタンプを使用できます。

          注記

          デッドバンド設定は、スキャンモード設定サブスクライブ を選択した場合に適用されます。

  10. [Save] を選択します。

OPC UA ソースを設定する (CLI)

を使用して SiteWise Edge ゲートウェイの OPC UA データソースを定義できます AWS CLI。これを行うには、OPCUA 機能設定JSONファイルを作成し、 update-gateway-capability-configuration コマンドを使用して SiteWise Edge ゲートウェイ設定を更新します。すべての OPC UA ソースを 1 つの機能設定で定義する必要があります。

この機能には次の名前空間があります。

  • iotsitewise:opcuacollector:2

リクエストの構文

{ "sources": [ { "name": "string", "endpoint": { "certificateTrust": { "type": "TrustAny" | "X509", "certificateBody": "string", "certificateChain": "string", }, "endpointUri": "string", "securityPolicy": "NONE" | "BASIC128_RSA15" | "BASIC256" | "BASIC256_SHA256" | "AES128_SHA256_RSAOAEP" | "AES256_SHA256_RSAPSS", "messageSecurityMode": "NONE" | "SIGN" | "SIGN_AND_ENCRYPT", "identityProvider": { "type": "Anonymous" | "Username", "usernameSecretArn": "string" }, "nodeFilterRules": [ { "action": "INCLUDE", "definition": { "type": "OpcUaRootPath", "rootPath": "string" } } ] }, "measurementDataStreamPrefix": "string", "typeConversions": { "array": "JsonArray", "datetime": "ISO8601String" }, "destination": { "type": "StreamManager", "streamName": "string", "streamBufferSize": integer, }, "propertyGroups": [ { "name": "string", "nodeFilterRuleDefinitions": [ { "type": "OpcUaRootPath", "rootPath": "string" } ], "deadband": { "type": "PERCENT" | "ABSOLUTE", "value": double, "eguMin": double, "eguMax": double, "timeoutMilliseconds": integer }, "scanMode": { "type": "EXCEPTION" | "POLL", "rate": integer, "timestampToReturn": "SOURCE_TIME" | "SERVER_TIME" }, "dataQuality": { "allowGoodQuality": true | false, "allowBadQuality": true | false, "allowUncertainQuality": true | false }, "subscription": { "dataChangeTrigger": "STATUS" | "STATUS_VALUE" | "STATUS_VALUE_TIMESTAMP", "queueSize": integer, "publishingIntervalMilliseconds": integer, "snapshotFrequencyMilliseconds": integer } } ] } ] }

リクエスト本文

ソース

それぞれに次の情報が含まれている OPC UA ソース定義構造のリスト。

name

ソースの一意のわかりやすい名前。

エンドポイント

次の情報を含むエンドポイント構造。

certificateTrust

次の情報を含む証明書信頼ポリシー構造。

type

ソースに対する証明書信頼モード。以下のうちのひとつを選択します。

  • TrustAny – SiteWise Edge ゲートウェイは、OPCUA ソースに接続するときに証明書を信頼します。

  • X509 – SiteWise Edge ゲートウェイは、OPCUA ソースに接続するときに X.509 証明書を信頼します。このオプションを選択する場合は、certificateTrustcertificateBody を定義する必要があります。certificateTrustcertificateChain を定義することもできます。

certificateBody

(オプション) X.509 証明書の本文。

このフィールドは、certificateTrusttypeX509 を選択する場合に必須です。

certificateChain

(オプション) X.509 証明書の信頼チェーン。

このフィールドは、certificateTrusttypeX509 を選択した場合のみ使用されます。

endpointUri

OPC UA ソースのローカルエンドポイント。たとえば、ローカルエンドポイントは opc.tcp://203.0.113.0:49320 のようになります。

securityPolicy

OPC UA ソースから読み取られるメッセージを保護するために使用するセキュリティポリシー。以下のうちのひとつを選択します。

  • NONE – SiteWise Edge ゲートウェイは OPC UA ソースからのメッセージを保護しません。別のセキュリティポリシーを選択することをお勧めします。このオプションを選択する場合は、messageSecurityModeNONE を選択する必要もあります。

  • BASIC256_SHA256 - Basic256Sha256のセキュリティポリシーです。

  • AES128_SHA256_RSAOAEP - Aes128_Sha256_RsaOaepのセキュリティポリシーです。

  • AES256_SHA256_RSAPSS - Aes256_Sha256_RsaPssのセキュリティポリシーです。

  • BASIC128_RSA15 – (廃止) Basic128Rsa15 セキュリティポリシーは、セキュリティと見なされなくなったため、OPCUA 仕様では非推奨です。別のセキュリティポリシーを選択することをお勧めします。詳しくは、Basic128Rsa15をご覧ください。

  • BASIC256 – (廃止) Basic256 セキュリティポリシーは、セキュリティと見なされなくなったため、OPCUA 仕様では非推奨です。別のセキュリティポリシーを選択することをお勧めします。詳しくは、[Basic256]をご覧ください。

重要

NONE 以外のセキュリティポリシーを選択した場合、messageSecurityModeSIGN または SIGN_AND_ENCRYPT を選択する必要があります。Edge SiteWise ゲートウェイを信頼するようにソースサーバーを設定する必要があります。詳細については、「Edge ゲートウェイを信頼するように OPC UA SiteWise ソースサーバーを設定する」を参照してください。

messageSecurityMode

OPC UA ソースへの接続を保護するために使用するメッセージセキュリティモード。以下のうちのひとつを選択します。

  • NONE – SiteWise Edge ゲートウェイは OPC UA ソースへの接続を保護しません。他のメッセージセキュリティモードを選択することをお勧めします。このオプションを選択する場合は、securityPolicyNONE を選択する必要もあります。

  • SIGN – SiteWise Edge ゲートウェイと OPC UA ソース間で転送中のデータは署名されますが、暗号化されません。

  • SIGN_AND_ENCRYPT – ゲートウェイと OPC UA ソース間で転送中のデータは署名され、暗号化されます。

重要

メッセージセキュリティモードを NONE 以外を選択した場合、securityPolicyNONE以外を選択する必要があります。Edge SiteWise ゲートウェイを信頼するようにソースサーバーを設定する必要があります。詳細については、「Edge ゲートウェイを信頼するように OPC UA SiteWise ソースサーバーを設定する」を参照してください。

identityProvider

次の情報を含む ID プロバイダ構造。

type

ソースで必要な認証資格情報のタイプ。以下のうちのひとつを選択します。

  • Anonymous - ソースは接続に認証を必要としません。

  • Username - ソースに接続するには、ユーザー名とパスワードが必要です。このオプションを選択する場合は、identityProviderusernameSecretArn を定義する必要があります。

usernameSecretArn

(オプション) AWS Secrets Manager シークレットARNの 。 SiteWise Edge ゲートウェイは、このソースに接続するときに、このシークレットの認証情報を使用します。シークレットをソース認証に使用するには、 SiteWise エッジゲートウェイの IoT SiteWise コネクタにシークレットをアタッチする必要があります。詳細については、「データソース認証の設定」を参照してください。

このフィールドは、identityProvidertypeUsername を選択する場合に必須です。

nodeFilterRules

AWS クラウドに送信する OPC UA データストリームパスを定義するノードフィルタールール構造のリスト。ノードフィルターを使用すると、 でモデル化するデータへのパスのみを含めることで、 SiteWise エッジゲートウェイの起動時間とCPU使用量を削減できます AWS IoT SiteWise。デフォルトでは、 SiteWise エッジゲートウェイは で始まるものを除くすべての OPC UA パスをアップロードします/Server/。OPC UA ノードフィルターを定義するには、ノードパスと *および ** ワイルドカード文字を使用できます。詳細については、「OPC UA ノードフィルターを使用する」を参照してください。

リスト内の各構造には、次の情報が含まれている必要があります。

アクション

このノードフィルタルールのアクション。以下のオプションを選択できます。

  • INCLUDE – SiteWise Edge ゲートウェイには、このルールに一致するデータストリームのみが含まれます。

定義

次の情報を含むノードフィルタルール構造。

type

このルールのノードフィルタパスのタイプ。以下のオプションを選択できます。

  • OpcUaRootPath – SiteWise Edge ゲートウェイは、OPCUA パス階層のルートに対してこのノードフィルターパスを評価します。

rootPath

OPC UA パス階層のルートに対して評価するノードフィルターパス。このパスは / から始まる必要があります。

measurementDataStreamプレフィックス

ソースからのすべてのデータストリームの前に付加する文字列。 SiteWise Edge ゲートウェイは、このソースからのすべてのデータストリームにこのプレフィックスを追加します。データストリームのプレフィックスを使用して、異なるソースから同じ名前を持つデータストリームを区別します。各データストリームは、アカウント内で一意の名前を持つ必要があります。

typeConversions

サポートされていない OPC UA データ型で使用できる変換のタイプ。各データ型は文字列に変換されます。詳細については、「サポートされていないデータ型の変換」を参照してください。

配列

文字列に変換される単純な配列データ型。以下のオプションを選択できます。

  • JsonArray – 単純な配列データ型を文字列に変換することを選択することを示します。

datetime

文字列に変換される DateTime データ型。以下のオプションを選択できます。

  • ISO8601String – ISO8601 データ型を文字列に変換することを選択することを示します。

送信先

データストリームの送信先の構成。

type

デスティネーションの型。

streamName

ストリームの名前。ストリーム名は一意である必要があります。

streamBufferSize

ストリームのバッファサイズ。これは UA OPC ソースからのデータフローを管理するために重要です。

propertyGroups

(オプション) プロトコルが要求する deadbandscanMode を定義するプロパティグループのリストです。

name

プロパティグループの名前です。これは一意な識別子である必要があります。

デッドバンド

deadband 値は、データがクラウドに送信される前に発生する必要があるデータポイントの値の最小変更を定義します。これには、以下の情報が含まれています。

type

対応するデッドバンドの種類。以下のオプションを選択できます。

  • ABSOLUTE – データポイントがクラウドに送信されるのに十分な大きさであると見なすために必要な最小絶対変更を指定する固定値。

  • PERCENT – 最後に送信されたデータポイントの値に対する最小変更をパーセンテージで指定する動的値。このタイプのデッドバンドは、データ値が時間の経過とともに大幅に変化する場合に便利です。

value

デッドバンドの値。typeABSOLUTE のとき、この値は単位なしの 2 倍とななります。typePERCENT の場合、1100 の間の 2 倍の値となります。

eguMin

(オプション) PERCENT デッドバンドを使用する場合の工学単位の最小値。OPC UA サーバーにエンジニアリングユニットが設定されていない場合は、これを設定します。

eguMax

(オプション) PERCENT デッドバンドを使用する場合の工学単位の最大値。OPC UA サーバーにエンジニアリングユニットが設定されていない場合は、これを設定します。

timeoutMilliseconds

タイムアウトまでの時間をミリ秒単位で指定する。最小値は 100 です。

scanMode

次の情報を含む scanMode 構造体。

type

scanMode の対応型。有効な値は、POLL および EXCEPTION です。

レート

スキャンモードのサンプリング間隔。

timestampToReturn

タイムスタンプのソース。以下のオプションを選択できます。

  • SOURCE_TIME – デバイスからのタイムスタンプを使用します。

  • SERVER_TIME – サーバーのタイムスタンプを使用します。

nodeFilterRule定義

(オプション) プロパティグループに含めるノードパスのリスト。プロパティグループの重複があってはいけません。このフィールドに値を指定しなかった場合、グループにはルート下のすべてのパスが含まれ、追加のプロパティグループを作成することはできません。nodeFilterRuleDefinitions 構造体には、以下の情報が含まれています。

type

OpcUaRootPathは、サポートされている唯一のタイプです。これは、 の値が OPC UA ブラウジングスペースのルートに対する相対パスrootPathであることを指定します。

rootPath

プロパティグループに含めるパス (ルートからの相対パス) を指定したカンマ区切りのリスト。

機能の設定例

次の例では、JSONファイルに保存されているペイロードから OPC UA SiteWise Edge ゲートウェイ機能設定を定義します。

aws iotsitewise update-gateway-capability-configuration \ --capability-namespace "iotsitewise:opcuacollector:2" \ --capability-configuration file://opc-ua-configuration.json
例 : OPC UA ソース設定

次のopc-ua-configuration.jsonファイルは、基本で安全でない OPC UA ソース設定を定義します。

{ "sources": [ { "name": "Wind Farm #1", "endpoint": { "certificateTrust": { "type": "TrustAny" }, "endpointUri": "opc.tcp://203.0.113.0:49320", "securityPolicy": "NONE", "messageSecurityMode": "NONE", "identityProvider": { "type": "Anonymous" }, "nodeFilterRules": [] }, "measurementDataStreamPrefix": "" } ] }
例 : プロパティグループが定義された OPC UA ソース設定

次のopc-ua-configuration.jsonファイルは、定義されたプロパティグループを使用して、基本的で安全でない OPC UA ソース設定を定義します。

{ "sources": [ { "name": "source1", "endpoint": { "certificateTrust": { "type": "TrustAny" }, "endpointUri": "opc.tcp://10.0.0.9:49320", "securityPolicy": "NONE", "messageSecurityMode": "NONE", "identityProvider": { "type": "Anonymous" }, "nodeFilterRules": [ { "action": "INCLUDE", "definition": { "type": "OpcUaRootPath", "rootPath": "/Utilities/Tank" } } ] }, "measurementDataStreamPrefix": "propertyGroups", "propertyGroups": [ { "name": "Deadband_Abs_5", "nodeFilterRuleDefinitions": [ { "type": "OpcUaRootPath", "rootPath": "/Utilities/Tank/Temperature/TT-001" }, { "type": "OpcUaRootPath", "rootPath": "/Utilities/Tank/Temperature/TT-002" } ], "deadband": { "type":"ABSOLUTE", "value": 5.0, "timeoutMilliseconds": 120000 } }, { "name": "Polling_10s", "nodeFilterRuleDefinitions": [ { "type": "OpcUaRootPath", "rootPath": "/Utilities/Tank/Pressure/PT-001" } ], "scanMode": { "type": "POLL", "rate": 10000 } }, { "name": "Percent_Deadband_Timeout_90s", "nodeFilterRuleDefinitions": [ { "type": "OpcUaRootPath", "rootPath": "/Utilities/Tank/Flow/FT-*" } ], "deadband": { "type":"PERCENT", "value": 5.0, "eguMin": -100, "eguMax": 100, "timeoutMilliseconds": 90000 } } ] } ] }
例 : プロパティを含む OPC UA ソース設定

の次のJSON例では、次のプロパティを使用して OPC UA ソース設定opc-ua-configuration.jsonを定義します。

  • すべての証明書を信頼します。

  • メッセージの保護に BASIC256 セキュリティポリシーを使用します。

  • SIGN_AND_ENCRYPT モードを使用して接続をセキュリティ保護します。

  • Secrets Manager シークレットに保存されている認証資格情報を使用します。

  • パスが /WindFarm/2/WindTurbine/ で始まるものを除き、データストリームを除外します。

  • この「Wind Farm #2」と別のエリアの「Wind Farm #2」を区別するために、すべてのデータストリームパスの先頭に /Washington を追加します。

{ "sources": [ { "name": "Wind Farm #2", "endpoint": { "certificateTrust": { "type": "TrustAny" }, "endpointUri": "opc.tcp://203.0.113.1:49320", "securityPolicy": "BASIC256", "messageSecurityMode": "SIGN_AND_ENCRYPT", "identityProvider": { "type": "Username", "usernameSecretArn": "arn:aws:secretsmanager:region:123456789012:secret:greengrass-windfarm2-auth-1ABCDE" }, "nodeFilterRules": [ { "action": "INCLUDE", "definition": { "type": "OpcUaRootPath", "rootPath": "/WindFarm/2/WindTurbine/" } } ] }, "measurementDataStreamPrefix": "/Washington" } ] }
例 : 証明書の信頼を持つ OPC UA ソース設定

の次のJSON例では、次のプロパティを使用して OPC UA ソース設定opc-ua-configuration.jsonを定義します。

  • 指定された X.509 証明書を信頼します。

  • メッセージの保護に BASIC256 セキュリティポリシーを使用します。

  • SIGN_AND_ENCRYPT モードを使用して接続をセキュリティ保護します。

{ "sources": [ { "name": "Wind Farm #3", "endpoint": { "certificateTrust": { "type": "X509", "certificateBody": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----", "certificateChain": "-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w 0BAQUFADCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZ WF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIw EAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5 jb20wHhcNMTEwNDI1MjA0NTIxWhcNMTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBh MCVVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBb WF6b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMx HzAdBgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wgZ8wDQYJKoZIhvcNAQE BBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ21uUSfwfEvySWtC2XADZ4nB+BLYgVI k60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9TrDHudUZg3qX4waLG5M43q7Wgc/MbQ ITxOUSQv7c7ugFFDzQGBzZswY6786m86gpEIbb3OhjZnzcvQAaRHhdlQWIMm2nr AgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4nUhVVxYUntneD9+h8Mg9q6q+auN KyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0FkbFFBjvSfpJIlJ00zbhNYS5f6Guo EDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTbNYiytVbZPQUQ5Yaxu2jXnimvw 3rrszlaEXAMPLE= -----END CERTIFICATE-----" }, "endpointUri": "opc.tcp://203.0.113.2:49320", "securityPolicy": "BASIC256", "messageSecurityMode": "SIGN_AND_ENCRYPT", "identityProvider": { "type": "Anonymous" }, "nodeFilterRules": [] }, "measurementDataStreamPrefix": "" } ] }