AWS IoT FleetWise Word デコーダーマニフェストを作成する - AWS IoT FleetWise

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

AWS IoT FleetWise Word デコーダーマニフェストを作成する

重要

現在、特定の AWS IoT FleetWise Word 機能へのアクセスはゲートされています。詳細については、「AWSAWS IoT FleetWiseWord でのリージョンと機能の可用性」を参照してください。

AWS IoT FleetWise Word コンソールまたは API を使用して、車両モデルのデコーダーマニフェストを作成できます。

デコーダーマニフェストの作成 (コンソール)

AWS IoT FleetWise Word コンソールを使用して、車両モデルに関連付けられたデコーダーマニフェストを作成できます。

重要

AWS IoT FleetWise Wordコンソールを使用してデコーダーマニフェストでビジョンシステムデータシグナルを設定することはできません。代わりに、 AWS CLIを使用してください。ビジョンシステムデータはプレビューリリースであり、変更される可能性があります。

デコーダーマニフェストを作成するには
  1. AWS IoT FleetWise Word コンソールを開きます。

  2. ナビゲーションペインで、[車両モデル] を選択します。

  3. ターゲットの車両モデルを選択します。

  4. 車両モデルの概要ページで、[デコーダーマニフェストを作成] を選択し、次の操作を行います。

ステップ 1: デコーダーマニフェストを構成する

[一般的な情報] セクションで、次の操作を行います。

  1. デコーダーマニフェストの一意の名前を入力します。

  2. (オプション) 説明を入力します。

  3. [Next (次へ)] を選択します。

ネットワークインターフェイスを追加する

各デコーダーマニフェストには、少なくとも 1 つのネットワークインターフェイスが必要です。複数のネットワークインターフェイスをデコーダーマニフェストに追加できます。

ネットワークインターフェイスを作成するには
  1. ネットワークインターフェイスファイルをアップロードします。CAN プロトコル用の .dbc ファイル、Word ROS2 用の .json ファイル、またはカスタムインターフェイスをアップロードできます。

  2. ネットワークインターフェイスの名前を入力します。カスタムインターフェイスをアップロードした場合、名前は既に指定されています。

欠落しているシグナルをマッピングする

アップロードされたネットワークインターフェイスでペアになったシグナルデコーダーが欠落しているシグナルが車両モデルにある場合は、欠落しているシグナルをマッピングするデフォルトのカスタムデコーダーを作成できます。次のステップでシグナルを手動でマッピングできるため、これはオプションです。

デフォルトのカスタムデコーダーを作成するには
  1. 欠落しているシグナルのデフォルトのカスタムデコーダーを作成するを選択します。

  2. [Next (次へ)] を選択します。

ステップ 2: CAN インターフェイスをマッピングする

CAN シグナルを CAN シグナルデコーダーにマッピングできます。欠落シグナルのデフォルトのカスタムデコーダーの作成チェックボックスを選択した場合、デコーダーシグナルが欠落しているシグナルは、デフォルトのカスタムシグナルデコーダーに自動的にマッピングされます。

CAN シグナルをマッピングするには
  1. CAN シグナルマッピングで、シグナルデコーダーを選択します。

  2. [Next (次へ)] を選択します。

注記

ROS 2 またはカスタムインターフェイスを追加した場合は、デコーダーマニフェストを作成する前にマッピングを確認できます。

ステップ 3: 確認して作成する

デコーダーマニフェストの構成を確認し、[作成] を選択します。

デコーダーマニフェストの作成 (AWS CLI)

CreateDecoderManifest API オペレーションを使用して、デコーダーマニフェストを作成できます。次の例では AWS CLIを使用しています。

重要

デコーダーマニフェストを作成する前に車両モデルが必要です。すべてのデコーダーマニフェストは、車両モデルに関連付ける必要があります。詳細については、「AWS IoT FleetWise Word 車両モデルを作成する」を参照してください。

デコーダーマニフェストを作成するには、次のコマンドを実行します。

置換 decoder-manifest-configuration 設定を含む .json ファイルの名前。

aws iotfleetwise create-decoder-manifest --cli-input-json file://decoder-manifest-configuration.json
  • 置換 decoder-manifest-name は、作成するデコーダーマニフェストの名前に置き換えます。

  • 置換 vehicle-model-ARN 車両モデルの Amazon リソースネーム (ARN) を持つ 。

  • (オプション) を置き換える description デコーダーマニフェストを識別するのに役立つ説明を に含めます。

ブランチ、属性、センサー、アクチュエータの構成方法の詳細については、「AWS IoT FleetWise Wordネットワークインターフェイスとデコーダーシグナルを設定する」を参照してください。

{ "name": "decoder-manifest-name", "modelManifestArn": "vehicle-model-arn", "description": "description", "networkInterfaces": [ { "canInterface": { "name": "myNetworkInterface", "protocolName": "CAN", "protocolVersion": "2.0b" }, "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_INTERFACE" } ], "signalDecoders": [ { "canSignal": { "name": "Engine_Idle_Time", "factor": 1, "isBigEndian": true, "isSigned": false, "length": 24, "messageId": 271343712, "offset": 0, "startBit": 16 }, "fullyQualifiedName": "Vehicle.EngineIdleTime", "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_SIGNAL" }, { "canSignal": { "name": "Engine_Run_Time", "factor": 1, "isBigEndian": true, "isSigned": false, "length": 24, "messageId": 271343712, "offset": 0, "startBit": 40 }, "fullyQualifiedName": "Vehicle.EngineRunTime", "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_SIGNAL" } ] }
  • 置換 decoder-manifest-name は、作成するデコーダーマニフェストの名前に置き換えます。

  • 置換 vehicle-model-ARN 車両モデルの Amazon リソースネーム (ARN) を持つ 。

  • (オプション) を置き換える description デコーダーマニフェストを識別するのに役立つ説明を に含めます。

構造 (構造体) 内のプロパティノードの順序は、シグナルカタログと車両モデル (モデルマニフェスト) で定義されている順序と一致している必要があります。ブランチ、属性、センサー、アクチュエータの構成方法の詳細については、「AWS IoT FleetWise Wordネットワークインターフェイスとデコーダーシグナルを設定する」を参照してください。

{ "name": "decoder-manifest-name", "modelManifestArn": "vehicle-model-arn", "description": "description", "networkInterfaces": [{ "canInterface": { "name": "myNetworkInterface", "protocolName": "CAN", "protocolVersion": "2.0b" }, "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_INTERFACE" }, { "type": "VEHICLE_MIDDLEWARE", "interfaceId": "G1KzxkdnmV5Hn7wkV3ZL9", "vehicleMiddleware": { "name": "ROS2_test", "protocolName": "ROS_2" } }], "signalDecoders": [{ "canSignal": { "name": "Engine_Idle_Time", "factor": 1, "isBigEndian": true, "isSigned": false, "length": 24, "messageId": 271343712, "offset": 0, "startBit": 16 }, "fullyQualifiedName": "Vehicle.EngineIdleTime", "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_SIGNAL" }, { "canSignal": { "name": "Engine_Run_Time", "factor": 1, "isBigEndian": true, "isSigned": false, "length": 24, "messageId": 271343712, "offset": 0, "startBit": 40 }, "fullyQualifiedName": "Vehicle.EngineRunTime", "interfaceId": "Qq1acaenByOB3sSM39SYm", "type": "CAN_SIGNAL" }, { "fullyQualifiedName": "Vehicle.CompressedImageTopic", "type": "MESSAGE_SIGNAL", "interfaceId": "G1KzxkdnmV5Hn7wkV3ZL9", "messageSignal": { "topicName": "CompressedImageTopic:sensor_msgs/msg/CompressedImage", "structuredMessage": { "structuredMessageDefinition": [{ "fieldName": "header", "dataType": { "structuredMessageDefinition": [{ "fieldName": "stamp", "dataType": { "structuredMessageDefinition": [{ "fieldName": "sec", "dataType": { "primitiveMessageDefinition": { "ros2PrimitiveMessageDefinition": { "primitiveType": "INT32" } } } }, { "fieldName": "nanosec", "dataType": { "primitiveMessageDefinition": { "ros2PrimitiveMessageDefinition": { "primitiveType": "UINT32" } } } } ] } }, { "fieldName": "frame_id", "dataType": { "primitiveMessageDefinition": { "ros2PrimitiveMessageDefinition": { "primitiveType": "STRING" } } } } ] } }, { "fieldName": "format", "dataType": { "primitiveMessageDefinition": { "ros2PrimitiveMessageDefinition": { "primitiveType": "STRING" } } } }, { "fieldName": "data", "dataType": { "structuredMessageListDefinition": { "name": "listType", "memberType": { "primitiveMessageDefinition": { "ros2PrimitiveMessageDefinition": { "primitiveType": "UINT8" } } }, "capacity": 0, "listType": "DYNAMIC_UNBOUNDED_CAPACITY" } } } ] } } } ] }
  • 置換 decoder-manifest-name は、作成するデコーダーマニフェストの名前に置き換えます。

  • 置換 vehicle-model-ARN 車両モデルの Amazon リソースネーム (ARN) を持つ 。

  • (オプション) を置き換える description デコーダーマニフェストを識別するのに役立つ説明を に含めます。

ブランチ、属性、センサー、アクチュエータの構成方法の詳細については、「AWS IoT FleetWise Wordネットワークインターフェイスとデコーダーシグナルを設定する」を参照してください。

{ "name": "decoder-manifest-name", "modelManifestArn": "vehicle-model-arn", "description": "description", "networkInterfaces": [ { "interfaceId": "myCustomInterfaceId", "type": "CUSTOM_DECODING_INTERFACE", "customDecodingInterface": { "name": "myCustomInterface" } } ], "signalDecoders": [ { "customDecodingSignal": { "fullyQualifiedName": "Vehicle.actuator1", "interfaceId": "myCustomInterfaceId", "type": "CUSTOM_DECODING_SIGNAL", "customDecodingSignal": { "id": "Vehicle.actuator1" } } }, { "customDecodingSignal": { "fullyQualifiedName": "Vehicle.actuator2", "interfaceId": "myCustomInterfaceId", "type": "CUSTOM_DECODING_SIGNAL", "customDecodingSignal": { "id": "Vehicle.actuator2" } } } ] }
注記

デモスクリプトをダウンロードして、ビジョンシステムシグナルを含むデコーダーマニフェストを作成できます。詳細については、「ビジョンシステムデータデベロッパーガイド」を参照してください。

ビジョンシステムデータはプレビューリリースであり、変更される可能性があります。

カスタマーマネージド AWS KMS キーを使用して暗号化を有効にした場合は、ロールが API CreateDecoderManifest オペレーションを呼び出すことができるように、次のポリシーステートメントを含めます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:KMS_KEY_REGION:KMS_KEY_ACCOUNT_ID:key/KMS_KEY_ID" ] }, ] }