

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Crie uma campanha de coleta de dados para códigos de problemas de diagnóstico
<a name="dtc-data-collection"></a>

**Importante**  
O acesso a determinados FleetWise recursos de AWS IoT está atualmente bloqueado. Para obter mais informações, consulte [AWS Disponibilidade de regiões e recursos na AWS IoT FleetWise](fleetwise-regions.md).

Este tópico descreve como criar uma campanha de coleta de dados para códigos de problemas de diagnóstico (DTC).

1. Defina um sinal personalizado no Edge. Você precisa definir as regras de decodificação para o sinal DTC no Edge como um sinal decodificado personalizado. Para obter mais informações, consulte [Tutorial: Configurar a coleta de dados independente da rede usando uma interface de decodificação personalizada](network-agnostic-data-collection.md).

1. Defina a função personalizada no Edge. Você precisa definir uma função personalizada para coletar sinais DTC no Edge em um tempo compilado.

   Para obter mais informações, consulte o [guia de funções personalizadas](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/custom-function-dev-guide.md ) e a [implementação da referência de coleta de dados do DTC](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-uds-dtc-dev-guide.md#dtc_query-function-implementation) no Guia do *Desenvolvedor do Edge Agent*.
**nota**  
Um exemplo de função personalizada `DTC_QUERY` definida é mostrado no [script de demonstração](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-uds-dtc-dev-guide.md).

1. Crie um catálogo de sinais que modele um sinal DTC como um tipo de string.

   ```
   [
    {
       "branch": {
           "fullyQualifiedName": "Vehicle",
           "description": "Vehicle"
           }
         },
         {
       "branch": {
           "fullyQualifiedName": "Vehicle.ECU1",
           "description": "Vehicle.ECU1"
           }
         },
         {
       "sensor": {
           "fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
           "description": "Vehicle.ECU1.DTC_INFO",
           "dataType": "STRING"
         }
      }
    ]
   ```

1. Crie e ative um modelo de veículo com o sinal DTC adicionado.

1. Crie e ative um manifesto do decodificador com o sinal DTC adicionado. O sinal DTC deve ser do tipo decodificador de `CUSTOM_DECODING_SIGNAL` sinal com um tipo de interface de `CUSTOM_DECODING_INTERFACE` rede.  
**Example decodificador de sinal**  

   ```
   [
     {
       "fullyQualifiedName": "Vehicle.ECU1.DTC_INFO",
       "interfaceId": "UDS_DTC",
       "type": "CUSTOM_DECODING_SIGNAL",
       "customDecodingSignal": {
         "id": "Vehicle.ECU1.DTC_INFO"
       }
     }
    ]
   ```  
**Example interface da rede**  

   ```
   [
     {
       "interfaceId": "UDS_DTC",
       "type": "CUSTOM_DECODING_INTERFACE",
       "customDecodingInterface": {
         "name": "NamedSignalInterface"
       }
     }
   ]
   ```
**nota**  
Os sinais da Controller Area Network (CAN) não suportam o tipo de dados de string.

1. Provisionar e criar veículos. Os veículos devem utilizar um modelo de veículo (manifesto do modelo) e um manifesto do decodificador que foram ativados nas etapas anteriores.

1. Crie e aprove a campanha. Você precisa criar uma campanha definindo sinais de DTC (opcionalmente com sinais de telemetria) e implantá-la em veículos.

1. Acesse os dados no destino definido. Os dados do DTC incluem`DTCCode`,`DTCSnapshot`, e `DTCExtendedDatastrings` como uma string bruta no destino de dados definido na campanha.