翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
診断問題コードのユースケース
重要
現在、特定の AWS IoT FleetWise 機能へのアクセスはゲートされています。詳細については、「AWSAWS IoT FleetWise でのリージョンと機能の可用性」を参照してください。
次のユースケースでは、 DTC_QUERY
関数がデモスクリプト
定期的なフェッチ
設定された間隔で DTC コレクションを取得します。
次の例は、すべての ECU のステータスマスクを持つすべての DTCsVehicle.DTC_INFO
に対して の定期的なシグナルフェッチを行うキャンペーンです。 ECUs 用に収集されたデータには条件がありますVehicle.DTC_INFO
。
{
"compression": "SNAPPY",
"spoolingMode": "TO_DISK",
"signalsToFetch": [
{
"fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
"signalFetchConfig": {
"timeBased": {
// The FleetWise Edge Agent will query the UDS module for all DTCs every five seconds.
"executionFrequencyMs": 5000
}
},
"actions": [
// Every five seconds, this action is called and its output is stored in the
// signal history buffer of Vehicle.DTC_INFO
"custom_function(\"DTC_QUERY\", -1, 2, -1)"
]
}
],
"signalsToCollect": [
{
"name": "Vehicle.ECU1.DTC_INFO"
}
],
"collectionScheme": {
"conditionBasedCollectionScheme": {
"conditionLanguageVersion": 1,
// Whenever a new DTC is filled into the signal, the data is ingested.
"expression": "!isNull($variable.`Vehicle.ECU1.DTC_INFO`)",
"minimumTriggerIntervalMs": 1000,
// Make sure that data is ingested only when there are new DTCs.
"triggerMode": "RISING_EDGE"
}
},
"dataDestinationConfigs": [
{
"s3Config":
{
"bucketArn": "bucket-arn",
"dataFormat": "PARQUET",
"prefix": "campaign-name",
"storageCompressionFormat": "GZIP"
}
}
]
}
条件駆動型フェッチ
条件が満たされたときに DTC コレクションを取得します。例えば、CAN シグナルが の場合Vehicle.Ignition == 1
、DTC データを取得してアップロードします。
次のキャンペーン例では、条件駆動型の シグナルフェッチVehicle.ECU1.DTC_INFO
を使用して、ECU-1 の recordNumber 1 で DTC ("AAA123") が保留になっているかどうかを確認します。 recordNumber このキャンペーンには、時間ベースのデータ収集とアップロードがあります。
{
"compression": "SNAPPY",
"spoolingMode": "TO_DISK",
"signalsToFetch": [
{
"fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
"signalFetchConfig": {
"conditionBased": {
// The action will only run when the ignition is on.
"conditionExpression": "$variable.`Vehicle.Ignition` == 1",
"triggerMode": "ALWAYS"
}
},
// The UDS module is only requested for the specific ECU address and the specific DTC Number/Status.
"actions": ["custom_function(\"DTC_QUERY\", 1, 2, 8, \"0xAAA123\")"]
}
],
"signalsToCollect": [
{
"name": "Vehicle.ECU1.DTC_INFO"
},
{
"name": "Vehicle.Ignition"
}
],
"collectionScheme": {
"timeBasedCollectionScheme": {
"periodMs": 10000
}
},
"dataDestinationConfigs": [
{
"s3Config":
{
"bucketArn": "bucket-arn",
"dataFormat": "PARQUET",
"prefix": "campaign-name",
"storageCompressionFormat": "GZIP"
}
}
]
}
オンデマンドフェッチ
フリートの特定の DTC を取得します。
オンデマンドのユースケースでは、定期的なフェッチで定義されているのと同じキャンペーンを使用できます。オンデマンド効果は、 AWS IoT FleetWise コンソールを使用してキャンペーンをデプロイした直後にキャンペーンを停止するか、次の CLI コマンドを実行することで実現されます。
-
command-name
をコマンド名に置き換えます。
aws iotfleetwise update-campaign \ --name
campaign-name
\ --action APPROVE
次に、DTC データが到着したらキャンペーンを停止します。
aws iotfleetwise update-campaign \ --name
campaign-name
\ --action SUSPEND
キャンペーンを再開して、DTC データフェッチを行うことができます。
aws iotfleetwise update-campaign \ --name
campaign-name
\ --action RESUME